/* ==========================================================================
   Oogle client portal: design system for the "oogle" Blesta client template.
   Loads after Bootstrap 4.6 (application.min.css). Tokens follow oogle.net V9.
   Sections: 1 fonts, 2 tokens, 3 base, 4 shell, 5 components, 6 dashboard,
   7 sign-in, 8 plugin pages, 9 responsive, 10 motion and print.
   ========================================================================== */

/* 1. Fonts (self-hosted copies of the oogle.net V9 files) */
@font-face{font-family:"Archivo";src:url(../fonts/archivo-var.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"DM Mono";src:url(../fonts/dm-mono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Archivo Fallback";src:local("Arial");size-adjust:104%;ascent-override:90%;descent-override:22%;line-gap-override:0%}

/* 2. Tokens ------------------------------------------------------------- */
:root{
  /* brand (oogle.net V9) */
  --og-ink:#09101C;--og-navy:#07111F;--og-navy-2:#0A1729;--og-navy-3:#0E1E33;--og-navy-4:#14263E;--og-navy-5:#1A3050;
  --og-blue:#0E61D1;--og-blue-deep:#0A47A2;--og-blue-lift:#2A72DC;--og-blue-light:#6FB2F7;--og-blue-pale:#A9CFFB;--og-cyan:#00BFFF;--og-cyan-soft:#7FDFFF;
  --og-snow:#EAF1FA;--og-snow-2:#B4C6DC;--og-snow-3:#93A9C4;

  /* type */
  --og-font:"Archivo","Archivo Fallback",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --og-mono:"DM Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --og-fs-page:clamp(1.875rem,1.45rem + 1vw,2.25rem);   /* 28-36 */
  --og-fs-section:clamp(1.375rem,1.3rem + .3vw,1.625rem); /* 22-26 */
  --og-fs-card:1.1875rem;   /* 19 */
  --og-fs-body:1rem;        /* 16 */
  --og-fs-ui:.96875rem;     /* 15.5: nav, buttons, labels, tables */
  --og-fs-sm:.90625rem;     /* 14.5: secondary copy */
  --og-fs-xs:.84375rem;     /* 13.5: metadata, used sparingly */
  --og-fs-kpi:clamp(1.875rem,1.6rem + 1vw,2.5rem);      /* 30-40 */
  --og-w-text:420;--og-w-mid:540;--og-w-semi:620;--og-w-bold:720;--og-w-heavy:820;

  /* space (4px grid) */
  --og-s1:4px;--og-s2:8px;--og-s3:12px;--og-s4:16px;--og-s5:20px;--og-s6:24px;--og-s7:32px;--og-s8:40px;--og-s9:48px;--og-s10:64px;

  /* radius */
  --og-r-chip:6px;--og-r-control:10px;--og-r-input:12px;--og-r-card:16px;--og-r-panel:22px;--og-r-pill:999px;

  /* motion */
  --og-e-out:cubic-bezier(.16,1,.3,1);--og-e-io:cubic-bezier(.65,0,.35,1);
  --og-t-tap:90ms;--og-t-state:160ms;--og-t-panel:200ms;--og-t-enter:280ms;

  /* layout */
  --og-sb-w:264px;--og-sb-rail:76px;--og-bar-h:68px;--og-content-max:1360px;--og-gutter:clamp(16px,2.6vw,40px);

  /* sidebar: dark in both modes */
  --og-sb-bg:#07111F;--og-sb-bg-2:#0A1729;--og-sb-line:rgba(148,180,222,.12);--og-sb-text:rgba(226,236,248,.74);--og-sb-text-hi:#FFFFFF;
  --og-sb-muted:rgba(180,198,220,.56);--og-sb-hover:rgba(255,255,255,.055);--og-sb-active:rgba(42,114,220,.22);--og-sb-icon:#8FB6E6;

  color-scheme:light;
  /* light content theme */
  --og-bg:#F2F5F9;--og-bg-tint:#E9EFF6;
  --og-scroll-shadow:rgba(9,16,28,.16);--og-surface:#FFFFFF;--og-surface-2:#F7F9FC;--og-surface-3:#EFF3F9;--og-surface-raised:#FFFFFF;
  --og-line:#DDE4EE;--og-line-2:#C6D2E2;--og-line-soft:#E8EDF4;
  --og-text:#09101C;--og-text-2:#3D4C63;--og-text-3:#56657A;--og-text-4:#6A788C;
  --og-accent:#0E61D1;--og-accent-hover:#0A47A2;--og-accent-text:#0E61D1;--og-accent-film:rgba(14,97,209,.07);--og-accent-film-2:rgba(14,97,209,.13);--og-on-accent:#FFFFFF;
  --og-focus:rgba(14,97,209,.42);
  --og-ok:#0B7A55;--og-ok-film:rgba(11,122,85,.10);--og-warn:#8F5908;--og-warn-film:rgba(162,101,11,.11);--og-fault:#B32D1D;--og-fault-film:rgba(179,45,29,.09);--og-info:#0A55B8;--og-info-film:rgba(14,97,209,.08);
  --og-shadow-1:0 1px 2px rgba(9,16,28,.05);
  --og-shadow-2:0 1px 2px rgba(9,16,28,.04),0 10px 28px -16px rgba(9,16,28,.20);
  --og-shadow-3:0 4px 10px rgba(9,16,28,.05),0 28px 64px -28px rgba(9,16,28,.34);
  --og-highlight:inset 0 1px 0 rgba(255,255,255,.9);
  --og-input-bg:#FFFFFF;--og-input-line:#B9C6D8;
  --og-row-hover:#F5F8FC;--og-th:#F7F9FC;
  --og-chart-grid:rgba(20,55,105,.10);--og-chart-1:#0E61D1;--og-chart-2:#7DB4F0;--og-chart-3:#00A3DA;--og-chart-4:#B9C9DD;
  --og-skeleton:linear-gradient(90deg,#EEF2F7 0%,#F7F9FC 50%,#EEF2F7 100%);
}
[data-theme="dark"]{
  color-scheme:dark;
  --og-bg:#0A1322;--og-bg-tint:#0D1828;
  --og-scroll-shadow:rgba(0,0,0,.55);--og-surface:#0F1B2D;--og-surface-2:#132238;--og-surface-3:#172941;--og-surface-raised:#14243A;
  --og-line:#1E3350;--og-line-2:#294869;--og-line-soft:#182B44;
  --og-text:#EAF1FA;--og-text-2:#BCCBDF;--og-text-3:#97ABC4;--og-text-4:#8399B4;
  --og-accent:#2A72DC;--og-accent-hover:#3C82EA;--og-accent-text:#7DB9F8;--og-accent-film:rgba(111,178,247,.09);--og-accent-film-2:rgba(111,178,247,.16);--og-on-accent:#FFFFFF;
  --og-focus:rgba(127,223,255,.55);
  --og-ok:#3FD39B;--og-ok-film:rgba(63,211,155,.12);--og-warn:#E9AE45;--og-warn-film:rgba(233,174,69,.12);--og-fault:#FF8A73;--og-fault-film:rgba(255,138,115,.12);--og-info:#7DB9F8;--og-info-film:rgba(111,178,247,.10);
  --og-shadow-1:0 1px 2px rgba(0,0,0,.30);
  --og-shadow-2:0 1px 0 rgba(255,255,255,.02),0 14px 34px -18px rgba(0,0,0,.70);
  --og-shadow-3:0 22px 60px -24px rgba(0,0,0,.80);
  --og-highlight:inset 0 1px 0 rgba(255,255,255,.045);
  --og-input-bg:#0B1626;--og-input-line:#2B4566;
  --og-row-hover:#132338;--og-th:#122036;
  --og-chart-grid:rgba(155,195,240,.12);--og-chart-1:#4C93F0;--og-chart-2:#2C4F7C;--og-chart-3:#38CBF5;--og-chart-4:#36507A;
  --og-skeleton:linear-gradient(90deg,#122036 0%,#18293F 50%,#122036 100%);
}

/* 3. Base ---------------------------------------------------------------- */
/* Stock sets html{font-size:.95rem}; the type scale is specified against a 16px rem */
html{font-size:100%}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--og-bar-h) + 16px)}
body.og-body{margin:0;font-family:var(--og-font);font-size:var(--og-fs-body);font-weight:var(--og-w-text);line-height:1.6;color:var(--og-text);background:var(--og-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"ss01"}
.og-body h1,.og-body h2,.og-body h3,.og-body h4,.og-body h5,.og-body h6,.og-body .h1,.og-body .h2,.og-body .h3,.og-body .h4,.og-body .h5,.og-body .h6{font-family:var(--og-font);color:var(--og-text);font-weight:var(--og-w-heavy);letter-spacing:-.018em;line-height:1.18}
.og-body h1,.og-body .h1{font-size:var(--og-fs-page)}
.og-body h2,.og-body .h2{font-size:var(--og-fs-section)}
.og-body h3,.og-body .h3{font-size:1.375rem}
.og-body h4,.og-body .h4{font-size:var(--og-fs-card);letter-spacing:-.012em}
.og-body h5,.og-body .h5{font-size:1.0625rem;letter-spacing:-.006em}
.og-body h6,.og-body .h6{font-size:var(--og-fs-ui);letter-spacing:0}
.og-body p{margin-bottom:1rem}
.og-body a{color:var(--og-accent-text);text-decoration-thickness:1px;text-underline-offset:3px;transition:color var(--og-t-state)}
.og-body a:hover{color:var(--og-accent-hover)}
[data-theme="dark"] .og-body a:hover{color:var(--og-cyan-soft)}
.og-body hr{border-top-color:var(--og-line)}
.og-body strong,.og-body b{font-weight:var(--og-w-bold)}
.og-body small,.og-body .small{font-size:var(--og-fs-xs)}
.og-body code,.og-body pre,.og-body kbd{font-family:var(--og-mono)}
.og-body code{color:var(--og-accent-text);background:var(--og-accent-film);padding:.1em .35em;border-radius:5px}
.og-body pre{color:var(--og-text);background:var(--og-surface-2);border:1px solid var(--og-line);border-radius:var(--og-r-input);padding:var(--og-s4)}
.og-body ::selection{background:rgba(14,97,209,.22)}
.og-body .text-muted,.og-body .help-block,.og-body .form-text{color:var(--og-text-3)!important}
.og-body .text-primary{color:var(--og-accent-text)!important}
.og-body .text-success{color:var(--og-ok)!important}
.og-body .text-danger{color:var(--og-fault)!important}
.og-body .text-warning{color:var(--og-warn)!important}
.og-body .text-info{color:var(--og-info)!important}
.og-body .text-dark,.og-body .text-body{color:var(--og-text)!important}
.og-body .text-secondary{color:var(--og-text-3)!important}
.og-body .bg-light,.og-body .bg-white{background-color:var(--og-surface-2)!important;color:var(--og-text)}
.og-body .border,.og-body .border-top,.og-body .border-bottom,.og-body .border-left,.og-body .border-right{border-color:var(--og-line)!important}
.og-body address{font-style:normal;line-height:1.65}
.og-body :focus{outline:none}
.og-body :focus-visible{outline:2px solid var(--og-accent);outline-offset:2px;box-shadow:0 0 0 4px var(--og-focus);border-radius:inherit}
[data-theme="dark"] .og-body :focus-visible{outline-color:var(--og-cyan)}
.og-num,.og-body .card-value{font-variant-numeric:tabular-nums lining-nums}
.og-sr,.og-body .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.og-skip{position:fixed;top:12px;left:12px;z-index:1100;padding:10px 16px;border-radius:var(--og-r-control);background:var(--og-accent);color:#fff!important;font-weight:var(--og-w-bold);transform:translateY(-160%);transition:transform var(--og-t-state) var(--og-e-out)}
.og-skip:focus{transform:none}
.og-icon{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.og-icon--sm{width:16px;height:16px}
.og-icon--lg{width:24px;height:24px}
.og-preload *,.og-preload *::before,.og-preload *::after{transition:none!important;animation:none!important}

/* 4. Shell --------------------------------------------------------------- */
.og-app{min-height:100vh}

/* 4a. Sidebar */
.og-sb{position:fixed;inset:0 auto 0 0;z-index:1040;width:var(--og-sb-w);display:flex;flex-direction:column;color:var(--og-sb-text);
  background:radial-gradient(120% 50% at 0% 0%,rgba(14,97,209,.20),transparent 60%),linear-gradient(180deg,var(--og-sb-bg) 0%,var(--og-sb-bg-2) 100%);
  border-right:1px solid var(--og-sb-line);transition:width var(--og-t-panel) var(--og-e-out),transform var(--og-t-enter) var(--og-e-out)}
.og-sb::before{content:"";position:absolute;inset:0 0 auto 0;height:220px;pointer-events:none;opacity:.55;
  background-image:linear-gradient(rgba(111,178,247,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(111,178,247,.06) 1px,transparent 1px);background-size:22px 22px;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent);mask-image:linear-gradient(180deg,#000,transparent)}
.og-sb__head{position:relative;display:flex;align-items:center;height:var(--og-bar-h);padding:0 18px 0 22px;flex:none}
.og-sb__brand{display:flex;align-items:center;height:44px;min-width:0;border-radius:var(--og-r-control);color:#fff}
.og-sb__logo{display:block;height:42px;width:auto;transition:opacity var(--og-t-state)}
.og-sb__mark{display:none;width:38px;height:auto}
.og-sb .og-sb__close{display:none;margin-left:auto}
.og-sb__nav{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:10px 12px 16px;scrollbar-width:thin;scrollbar-color:rgba(148,180,222,.25) transparent}
.og-sb__section{margin:18px 12px 8px;font-family:var(--og-mono);font-size:.71875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--og-sb-muted);white-space:nowrap}
.og-sb__section:first-child{margin-top:4px}
.og-nav,.og-nav__sub{list-style:none;margin:0;padding:0}
.og-nav__item{position:relative;margin:2px 0}
.og-nav__link{position:relative;display:flex;align-items:center;gap:13px;width:100%;min-height:46px;padding:0 12px;border:0;border-radius:var(--og-r-control);background:transparent;
  color:var(--og-sb-text)!important;font:inherit;font-size:var(--og-fs-ui);font-weight:var(--og-w-mid);letter-spacing:.002em;text-align:left;text-decoration:none!important;white-space:nowrap;cursor:pointer;
  transition:background-color var(--og-t-state),color var(--og-t-state)}
.og-nav__link .og-icon{color:var(--og-sb-icon);transition:color var(--og-t-state),transform var(--og-t-state) var(--og-e-out)}
.og-nav__link:hover{background:var(--og-sb-hover);color:var(--og-sb-text-hi)!important}
.og-nav__link:hover .og-icon{color:#fff}
.og-nav__link:focus-visible{outline:2px solid var(--og-cyan);outline-offset:-2px;box-shadow:none}
.og-nav__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;transition:opacity var(--og-t-state)}
.og-nav__chev{width:16px;height:16px;opacity:.6;transition:transform var(--og-t-panel) var(--og-e-out),opacity var(--og-t-state)}
.og-nav__group.is-open>.og-nav__toggle .og-nav__chev{transform:rotate(90deg);opacity:.9}
.og-nav__item.is-active>.og-nav__link{background:linear-gradient(90deg,rgba(42,114,220,.30),rgba(42,114,220,.10));color:#fff!important;box-shadow:inset 0 0 0 1px rgba(111,178,247,.16)}
.og-nav__item.is-active>.og-nav__link .og-icon{color:#fff}
.og-nav__item.is-active>.og-nav__link::before{content:"";position:absolute;left:-12px;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:linear-gradient(180deg,var(--og-cyan),var(--og-blue-lift))}
.og-nav__group.has-active>.og-nav__toggle{color:#fff!important}
.og-nav__group.has-active>.og-nav__toggle .og-icon{color:var(--og-blue-light)}
.og-nav__sub{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--og-t-panel) var(--og-e-out),visibility 0s linear var(--og-t-panel);visibility:hidden}
.og-nav__sub>.og-nav__subinner{overflow:hidden;min-height:0}
.og-nav__sublist{list-style:none;margin:0;padding:2px 0 6px}
.og-nav__group.is-open>.og-nav__sub{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows var(--og-t-panel) var(--og-e-out),visibility 0s}
.og-nav__subinner{position:relative;padding:0}
.og-nav__subinner::before{content:"";position:absolute;left:21px;top:4px;bottom:10px;width:1px;background:var(--og-sb-line)}
.og-nav__sublink{position:relative;display:flex;align-items:center;min-height:40px;margin:1px 0;padding:0 12px 0 45px;border-radius:var(--og-r-control);color:var(--og-sb-text)!important;font-size:var(--og-fs-sm);font-weight:var(--og-w-mid);text-decoration:none!important;white-space:nowrap;transition:background-color var(--og-t-state),color var(--og-t-state)}
.og-nav__sublink:hover{background:var(--og-sb-hover);color:#fff!important}
.og-nav__sublink.is-active{color:#fff!important;background:rgba(42,114,220,.16)}
.og-nav__sublink.is-active::before{content:"";position:absolute;left:18px;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:2px;background:var(--og-cyan);box-shadow:0 0 0 3px rgba(0,191,255,.14)}
.og-nav__flyhead{display:none}
.og-sb__foot{flex:none;padding:12px;border-top:1px solid var(--og-sb-line);background:linear-gradient(180deg,transparent,rgba(0,0,0,.14))}
.og-sb__foot .og-nav__link{min-height:42px;font-size:var(--og-fs-sm)}
.og-sb__collapse{margin-top:6px;color:var(--og-sb-muted)!important}
.og-sb__collapse .og-icon{transition:transform var(--og-t-panel) var(--og-e-out)}
.og-sb__staff{display:block;margin:0 0 10px;padding:10px 12px;border-radius:var(--og-r-control);background:rgba(233,174,69,.12);border:1px solid rgba(233,174,69,.30);color:#F6D79A!important;font-size:var(--og-fs-xs);font-weight:var(--og-w-semi);line-height:1.35;text-decoration:none!important;white-space:normal}
.og-sb__staff:hover{background:rgba(233,174,69,.2)}

/* collapsed rail (desktop only) */
@media (min-width:1024px){
  [data-sb="collapsed"] .og-sb{width:var(--og-sb-rail)}
  [data-sb="collapsed"] .og-sb__head{padding:0;justify-content:center}
  [data-sb="collapsed"] .og-sb__logo{display:none}
  [data-sb="collapsed"] .og-sb__mark{display:block}
  [data-sb="collapsed"] .og-sb__nav{padding:10px 14px;overflow:visible}
  [data-sb="collapsed"] .og-sb__section{height:1px;margin:14px 8px;font-size:0;background:var(--og-sb-line)}
  [data-sb="collapsed"] .og-sb__section:first-child{display:none}
  [data-sb="collapsed"] .og-nav__link{justify-content:center;padding:0;gap:0}
  [data-sb="collapsed"] .og-nav__label,[data-sb="collapsed"] .og-nav__chev{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);opacity:0}
  [data-sb="collapsed"] .og-nav__item.is-active>.og-nav__link::before{left:-14px}
  [data-sb="collapsed"] .og-nav__group.has-active>.og-nav__toggle{background:var(--og-sb-active)}
  [data-sb="collapsed"] .og-nav__sub{display:block;position:fixed;left:calc(var(--og-sb-rail) + 8px);top:var(--og-fly-top,80px);z-index:1060;min-width:224px;padding:8px;border-radius:14px;
    background:#0C1A2C;border:1px solid rgba(148,180,222,.18);box-shadow:0 24px 48px -16px rgba(0,0,0,.6);opacity:0;visibility:hidden;transform:translateX(-6px);
    transition:opacity var(--og-t-state) var(--og-e-out),transform var(--og-t-state) var(--og-e-out),visibility 0s linear var(--og-t-state)}
  [data-sb="collapsed"] .og-nav__group.is-fly>.og-nav__sub{opacity:1;visibility:visible;transform:none;transition:opacity var(--og-t-state) var(--og-e-out),transform var(--og-t-state) var(--og-e-out),visibility 0s}
  [data-sb="collapsed"] .og-nav__sublist{padding:0}
  [data-sb="collapsed"] .og-nav__subinner::before{display:none}
  [data-sb="collapsed"] .og-nav__flyhead{display:block;padding:6px 12px 8px;font-family:var(--og-mono);font-size:.71875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--og-sb-muted)}
  [data-sb="collapsed"] .og-nav__sublink{padding-left:14px}
  [data-sb="collapsed"] .og-nav__sublink.is-active::before{display:none}
  [data-sb="collapsed"] .og-sb__foot{padding:12px 14px}
  [data-sb="collapsed"] .og-sb__collapse .og-icon{transform:rotate(180deg)}
  [data-sb="collapsed"] .og-sb__staff{padding:8px;font-size:0;text-align:center}
  [data-sb="collapsed"] .og-sb__staff::before{content:"!";font-size:14px;font-weight:800}
}
.og-tip{position:fixed;z-index:1070;left:0;top:0;padding:7px 11px;border-radius:8px;background:#0C1A2C;border:1px solid rgba(148,180,222,.22);color:#fff;font-size:var(--og-fs-xs);font-weight:var(--og-w-semi);white-space:nowrap;pointer-events:none;box-shadow:0 12px 28px -12px rgba(0,0,0,.6);opacity:0;transform:translateX(-4px);transition:opacity var(--og-t-state),transform var(--og-t-state) var(--og-e-out)}
.og-tip.is-on{opacity:1;transform:none}
.og-tip--below{transform:translateY(-4px)}

/* 4b. Main column */
.og-main{min-width:0;margin-left:var(--og-sb-w);transition:margin-left var(--og-t-panel) var(--og-e-out);display:flex;flex-direction:column;min-height:100vh}
@media (min-width:1024px){[data-sb="collapsed"] .og-main{margin-left:var(--og-sb-rail)}}

/* 4c. Toolbar */
.og-bar{position:sticky;top:0;z-index:1020;display:flex;align-items:center;gap:var(--og-s3);height:var(--og-bar-h);padding:0 var(--og-gutter);
  background:color-mix(in srgb,var(--og-bg) 82%,transparent);border-bottom:1px solid transparent;transition:border-color var(--og-t-state),background-color var(--og-t-state),box-shadow var(--og-t-state)}
.og-bar::before{content:"";position:absolute;inset:0;z-index:-1;-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px)}
.og-bar.is-stuck{border-bottom-color:var(--og-line);box-shadow:0 8px 24px -20px rgba(9,16,28,.5)}
.og-bar .og-bar__menu{display:none}
.og-crumbs{display:flex;align-items:center;gap:8px;min-width:0;margin:0;padding:0;list-style:none;font-size:var(--og-fs-sm);color:var(--og-text-3)}
.og-crumbs li{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}
.og-crumbs li+li::before{content:"";width:6px;height:6px;border-top:1.5px solid var(--og-line-2);border-right:1.5px solid var(--og-line-2);transform:rotate(45deg);margin-right:2px}
.og-crumbs a{color:var(--og-text-3)!important;text-decoration:none}
.og-crumbs a:hover{color:var(--og-text)!important}
.og-crumbs [aria-current]{color:var(--og-text);font-weight:var(--og-w-semi);overflow:hidden;text-overflow:ellipsis}
.og-bar__end{display:flex;align-items:center;gap:8px;margin-left:auto}
.og-iconbtn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;min-width:42px;padding:0 12px;border:1px solid var(--og-line);border-radius:var(--og-r-pill);
  background:var(--og-surface);color:var(--og-text-2)!important;font:inherit;font-size:var(--og-fs-sm);font-weight:var(--og-w-semi);text-decoration:none!important;cursor:pointer;box-shadow:var(--og-shadow-1);
  transition:background-color var(--og-t-state),border-color var(--og-t-state),color var(--og-t-state),transform var(--og-t-tap)}
.og-iconbtn:hover{border-color:var(--og-line-2);color:var(--og-text)!important;background:var(--og-surface-2)}
.og-iconbtn:active{transform:scale(.97)}
.og-iconbtn--round{width:42px;padding:0}
.og-theme-toggle .og-i-sun{display:none}
[data-theme="dark"] .og-theme-toggle .og-i-sun{display:block}
[data-theme="dark"] .og-theme-toggle .og-i-moon{display:none}
.og-theme-toggle .og-icon{transition:transform var(--og-t-enter) var(--og-e-out)}
.og-theme-toggle:hover .og-icon{transform:rotate(-14deg)}
.og-acct{position:relative}
.og-acct__btn{padding:0 10px 0 5px}
.og-avatar{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;flex:none;background:linear-gradient(135deg,var(--og-blue-lift),var(--og-blue-deep));color:#fff;font-size:.8125rem;font-weight:var(--og-w-bold);letter-spacing:.02em}
.og-acct__name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--og-text)}
.og-acct__btn .og-icon--sm{opacity:.6;transition:transform var(--og-t-state)}
.og-acct.show .og-acct__btn .og-icon--sm{transform:rotate(180deg)}
.og-menu.dropdown-menu{min-width:260px;margin-top:8px!important}
.og-menu__head{display:flex;align-items:center;gap:12px;padding:10px 12px 12px;margin-bottom:6px;border-bottom:1px solid var(--og-line)}
.og-menu__who{min-width:0;line-height:1.3}
.og-menu__who strong{display:block;font-size:var(--og-fs-ui);color:var(--og-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.og-menu__who span{display:block;font-size:var(--og-fs-xs);color:var(--og-text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.og-lang{position:relative}

/* 4d. Content */
.og-content{flex:1 0 auto;width:100%;max-width:calc(var(--og-content-max) + 2 * var(--og-gutter));margin:0 auto;padding:var(--og-s6) var(--og-gutter) var(--og-s9)}
.og-content>.row,.og-content .og-page>.row{margin-left:-12px;margin-right:-12px}
.og-content .row>[class*="col-"]{padding-left:12px;padding-right:12px}
.og-page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--og-s4);margin:var(--og-s2) 0 var(--og-s6)}
.og-page-head__eyebrow{display:block;margin-bottom:10px;font-family:var(--og-mono);font-size:.78125rem;letter-spacing:.14em;text-transform:uppercase;color:var(--og-accent-text)}
.og-page-title{margin:0;font-size:var(--og-fs-page)!important;font-weight:var(--og-w-heavy);letter-spacing:-.026em;line-height:1.08}
.og-page-head__sub{margin:10px 0 0;color:var(--og-text-3);font-family:var(--og-mono);font-size:var(--og-fs-sm);letter-spacing:.02em}
.og-subnav{display:flex;gap:4px;margin:0 0 var(--og-s6);padding:4px;border:1px solid var(--og-line);border-radius:14px;background:var(--og-surface);box-shadow:var(--og-shadow-1);overflow-x:auto;scrollbar-width:none;width:max-content;max-width:100%}
.og-subnav::-webkit-scrollbar{display:none}
.og-subnav a{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:10px;color:var(--og-text-2)!important;font-size:var(--og-fs-ui);font-weight:var(--og-w-mid);text-decoration:none!important;white-space:nowrap;transition:background-color var(--og-t-state),color var(--og-t-state)}
.og-subnav a:hover{background:var(--og-surface-2);color:var(--og-text)!important}
.og-subnav a.is-active{background:var(--og-accent-film-2);color:var(--og-accent-text)!important;font-weight:var(--og-w-semi)}
.og-subnav .og-icon{width:17px;height:17px}

/* 4e. Footer */
.og-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;width:100%;max-width:calc(var(--og-content-max) + 2 * var(--og-gutter));margin:0 auto;padding:var(--og-s5) var(--og-gutter) var(--og-s7);color:var(--og-text-3);font-size:var(--og-fs-xs)}
.og-foot__links{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;list-style:none}
.og-foot a{color:var(--og-text-3)!important;text-decoration:none}
.og-foot a:hover{color:var(--og-text)!important;text-decoration:underline}
.og-foot__inner{display:flex;align-items:center;gap:10px}
.og-foot__dot{width:6px;height:6px;border-radius:1px;background:var(--og-blue)}

/* 5. Components ------------------------------------------------------------ */

/* 5a. Cards and panels */
/* Blesta's application.css pins these with !important */
.og-body .card-blesta,.og-body .panel-blesta,.og-body .well,.og-body .border{border:1px solid var(--og-line)!important}
.og-body .card-blesta,.og-body .panel-blesta{border-radius:var(--og-r-card)!important;margin-bottom:var(--og-s6)!important}
.og-body .card-blesta>.card-header,.og-body .panel .card-blesta>.panel-heading{margin:0;width:auto;color:var(--og-text);background:transparent;border-bottom:1px solid var(--og-line);padding:16px 22px}
.og-body .card-blesta>.list-group .list-group-item:last-child{border-radius:0!important}
.og-body .card,.og-body .panel,.og-body .panel-blesta{position:relative;margin-bottom:var(--og-s6);border:1px solid var(--og-line);border-radius:var(--og-r-card);background:var(--og-surface);box-shadow:var(--og-shadow-2),var(--og-highlight);color:var(--og-text);overflow:hidden}
.og-body .card .card,.og-body .card .panel{box-shadow:none;margin-bottom:var(--og-s4)}
.og-body .card-header,.og-body .panel-heading{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-height:64px;padding:16px 22px;background:transparent;border-bottom:1px solid var(--og-line);color:var(--og-text);font-size:var(--og-fs-card);font-weight:var(--og-w-bold);letter-spacing:-.012em;line-height:1.3}
.og-body .card-header h3,.og-body .card-header h4,.og-body .card-header h5{margin:0;font-size:inherit;font-weight:inherit}
.og-body .card-header>.float-right,.og-body .card-header>.btn-group{margin-left:auto;float:none!important}
.og-body .card-body,.og-body .panel-body{padding:22px}
.og-body .card-content{padding:0}
.og-body .card-footer,.og-body .panel-footer{padding:14px 22px;background:var(--og-surface-2);border-top:1px solid var(--og-line);color:var(--og-text-2)}
.og-body .card-blesta>.card-content>.card-body:first-child{padding-top:18px}
.og-body .card-nav{margin:-4px 0 16px}
.og-body .card-title{font-size:var(--og-fs-card);font-weight:var(--og-w-bold)}
.og-body .card .table-responsive{margin:0}
.og-body .card-body>.table-responsive:first-child,.og-body .card-body>.table:first-child{margin-top:-8px}
.og-body .well,.og-body .bg-light.p-3,.og-body .card.p-3{background:var(--og-surface-2)!important;border:1px solid var(--og-line);border-radius:var(--og-r-input)}

/* 5b. Buttons */
.og-body .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border:1px solid transparent;border-radius:var(--og-r-pill);font-family:var(--og-font);font-size:var(--og-fs-ui);font-weight:var(--og-w-bold);letter-spacing:.004em;line-height:1.2;white-space:nowrap;vertical-align:middle;
  transition:background-color var(--og-t-state),border-color var(--og-t-state),color var(--og-t-state),box-shadow var(--og-t-state),transform var(--og-t-tap) var(--og-e-out)}
.og-body .btn:active{transform:translateY(1px) scale(.985)}
.og-body .btn:focus,.og-body .btn.focus{box-shadow:none}
.og-body .btn:focus-visible{outline:2px solid var(--og-accent);outline-offset:2px;box-shadow:0 0 0 5px var(--og-focus)}
.og-body .btn.btn-block{display:flex;width:100%}
.og-body .btn-sm,.og-body .btn-group-sm>.btn{min-height:36px;padding:0 14px;font-size:.9375rem}
.og-body .btn-xs{min-height:30px;padding:0 11px;font-size:var(--og-fs-xs);gap:6px}
.og-body .btn-lg{min-height:52px;padding:0 26px;font-size:1.03125rem}
.og-body .btn-primary,.og-body .btn-success,.og-body .btn-info{background:var(--og-accent);border-color:var(--og-accent);color:var(--og-on-accent)!important;box-shadow:0 1px 0 rgba(255,255,255,.14) inset,0 8px 20px -10px rgba(14,97,209,.75)}
.og-body .btn-primary:hover,.og-body .btn-success:hover,.og-body .btn-info:hover,.og-body .btn-primary:not(:disabled):not(.disabled):active{background:var(--og-accent-hover);border-color:var(--og-accent-hover);color:#fff!important;box-shadow:0 1px 0 rgba(255,255,255,.14) inset,0 12px 26px -12px rgba(14,97,209,.85)}
.og-body .btn-secondary,.og-body .btn-light,.og-body .btn-default,.og-body .btn-outline-primary,.og-body .btn-outline-secondary{background:var(--og-surface);border-color:var(--og-line-2);color:var(--og-text)!important;box-shadow:var(--og-shadow-1)}
.og-body .btn-secondary:hover,.og-body .btn-light:hover,.og-body .btn-default:hover,.og-body .btn-outline-primary:hover,.og-body .btn-outline-secondary:hover,.og-body .btn-light:not(:disabled):not(.disabled):active,.og-body .btn-light:not(:disabled):not(.disabled).active,.og-body .btn-secondary:not(:disabled):not(.disabled).active{background:var(--og-surface-2);border-color:var(--og-accent);color:var(--og-accent-text)!important}
.og-body .btn-light.active,.og-body .btn-secondary.active{background:var(--og-accent-film-2)!important;border-color:var(--og-accent)!important;color:var(--og-accent-text)!important}
.og-body .btn-danger,.og-body .btn-outline-danger{background:var(--og-surface);border-color:color-mix(in srgb,var(--og-fault) 45%,var(--og-line));color:var(--og-fault)!important}
.og-body .btn-danger:hover,.og-body .btn-outline-danger:hover{background:var(--og-fault);border-color:var(--og-fault);color:#fff!important}
[data-theme="dark"] .og-body .btn-danger:hover{color:#1B0A06!important}
.og-body .btn-warning{background:var(--og-warn-film);border-color:color-mix(in srgb,var(--og-warn) 40%,transparent);color:var(--og-warn)!important}
.og-body .btn-link{min-height:auto;padding:0;border:0;border-radius:4px;background:none;box-shadow:none;color:var(--og-accent-text)!important;font-weight:var(--og-w-semi)}
.og-body .btn-link:hover{text-decoration:underline}
.og-body .btn.disabled,.og-body .btn:disabled{opacity:.5;box-shadow:none;cursor:not-allowed}
.og-body .btn .fas,.og-body .btn .far,.og-body .btn .fa{font-size:.92em;opacity:.9}
.og-body .btn-group>.btn{border-radius:0}
.og-body .btn-group>.btn:first-child{border-radius:var(--og-r-pill) 0 0 var(--og-r-pill)}
.og-body .btn-group>.btn:last-child{border-radius:0 var(--og-r-pill) var(--og-r-pill) 0}
.og-body .btn-group>.btn+.btn{margin-left:-1px}
/* Blesta puts ul.dropdown-menu last, so :last-child misses the toggle: round by siblings instead */
.og-body .btn-group>.btn+.btn:not(:has(+ .btn)){border-radius:0 var(--og-r-pill) var(--og-r-pill) 0}
.og-body .btn-group>.btn:first-child:not(:has(+ .btn)){border-radius:var(--og-r-pill)}
.og-body .btn-group>.btn+.dropdown-toggle{padding-left:10px;padding-right:12px}
.og-body .dropdown-toggle::after{border:0;width:8px;height:8px;margin-left:2px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:translateY(-2px) rotate(45deg);vertical-align:middle}

/* 5c. Forms */
.og-body label,.og-body .control-label,.og-body .col-form-label{margin-bottom:7px;color:var(--og-text);font-size:var(--og-fs-ui);font-weight:var(--og-w-semi);line-height:1.4}
.og-body .form-group{margin-bottom:var(--og-s5)}
.og-body .form-control,.og-body .custom-select,.og-body select.form-control,.og-body input[type="text"]:not(.btn),.og-body input[type="email"],.og-body input[type="password"],.og-body input[type="number"],.og-body input[type="tel"],.og-body input[type="url"],.og-body input[type="search"],.og-body input[type="date"],.og-body textarea,.og-body select{
  min-height:48px;padding:11px 15px;border:1px solid var(--og-input-line);border-radius:var(--og-r-input);background-color:var(--og-input-bg);color:var(--og-text);font-family:var(--og-font);font-size:var(--og-fs-body);line-height:1.4;box-shadow:inset 0 1px 1px rgba(9,16,28,.03);
  transition:border-color var(--og-t-state),box-shadow var(--og-t-state),background-color var(--og-t-state)}
.og-body input[type="checkbox"],.og-body input[type="radio"]{min-height:0;box-shadow:none;accent-color:var(--og-accent);width:18px;height:18px;vertical-align:-3px;margin-right:6px}
.og-body textarea.form-control,.og-body textarea{min-height:132px;line-height:1.55}
.og-body .form-control::placeholder,.og-body textarea::placeholder,.og-body input::placeholder{color:var(--og-text-4);opacity:1}
.og-body .form-control:hover,.og-body .custom-select:hover,.og-body select:hover{border-color:var(--og-line-2)}
[data-theme="dark"] .og-body .form-control:hover{border-color:#3A5A80}
.og-body .form-control:focus,.og-body .custom-select:focus,.og-body select:focus,.og-body textarea:focus,.og-body input:focus{border-color:var(--og-accent);background-color:var(--og-input-bg);color:var(--og-text);box-shadow:0 0 0 4px var(--og-focus);outline:none}
.og-body select,.og-body .custom-select,.og-body select.form-control{-webkit-appearance:none;appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2356657A' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px}
[data-theme="dark"] .og-body select,[data-theme="dark"] .og-body .custom-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2397ABC4' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E")}
.og-body select[multiple]{background-image:none;padding-right:15px}
.og-body .form-control:disabled,.og-body .form-control[readonly]{background:var(--og-surface-2);color:var(--og-text-3)}
.og-body .form-control-sm,.og-body .input-sm{min-height:40px;padding:8px 12px;font-size:var(--og-fs-ui);border-radius:10px}
.og-body .is-invalid,.og-body .has-error .form-control{border-color:var(--og-fault)!important}
.og-body .is-invalid:focus{box-shadow:0 0 0 4px var(--og-fault-film)!important}
.og-body .invalid-feedback,.og-body .has-error .help-block{color:var(--og-fault)!important;font-size:var(--og-fs-sm);font-weight:var(--og-w-mid)}
.og-body .input-group{flex-wrap:nowrap}
.og-body .input-group>.form-control{min-width:0}
.og-body .input-group-text{min-height:48px;padding:0 14px;border-color:var(--og-input-line);background:var(--og-surface-2);color:var(--og-text-2);font-size:var(--og-fs-ui);border-radius:var(--og-r-input)}
.og-body .input-group>.form-control:not(:last-child),.og-body .input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}
.og-body .input-group>.form-control:not(:first-child),.og-body .input-group>.input-group-append>.input-group-text,.og-body .input-group>.input-group-append>.btn{border-top-left-radius:0;border-bottom-left-radius:0}
.og-body .input-group-append>.btn{min-height:48px;border-radius:0 var(--og-r-input) var(--og-r-input) 0}
.og-body .checkbox,.og-body .radio,.og-body .form-check{margin-bottom:8px}
.og-body .checkbox label,.og-body .radio label,.og-body .form-check-label{display:inline-flex;align-items:flex-start;gap:4px;font-weight:var(--og-w-text);color:var(--og-text);cursor:pointer}
.og-body .custom-control-label::before{border-color:var(--og-input-line);background:var(--og-input-bg)}
.og-body .custom-control-input:checked~.custom-control-label::before{background:var(--og-accent);border-color:var(--og-accent)}
.og-body fieldset{margin-bottom:var(--og-s6)}
.og-body legend{font-size:var(--og-fs-card);font-weight:var(--og-w-bold);color:var(--og-text)}
.og-body .form-group .btn+.btn,.og-body .card-footer .btn+.btn{margin-left:8px}
.og-body .float-right>.btn+.btn{margin-left:8px}

/* 5d. Tables */
.og-body .table{margin-bottom:0;color:var(--og-text);font-size:var(--og-fs-ui);border-collapse:separate;border-spacing:0}
.og-body .table th,.og-body .table td{background-color:transparent!important;color:var(--og-text);padding:15px 18px;border-top:1px solid var(--og-line-soft);vertical-align:middle}
.og-body .table thead th{position:relative;padding-top:12px;padding-bottom:12px;border-top:0;border-bottom:1px solid var(--og-line);background:var(--og-th)!important;color:var(--og-text-3);font-size:var(--og-fs-xs);font-weight:var(--og-w-semi);letter-spacing:.045em;text-transform:uppercase;white-space:nowrap}
.og-body .table thead th a{color:inherit!important;text-decoration:none}
.og-body .table thead th a:hover{color:var(--og-text)!important}
.og-body .table thead th a.asc::after,.og-body .table thead th a.desc::after{content:"";display:inline-block;width:0;height:0;margin-left:7px;vertical-align:2px;border-left:4px solid transparent;border-right:4px solid transparent}
.og-body .table thead th a.asc::after{border-bottom:5px solid var(--og-accent-text)}
.og-body .table thead th a.desc::after{border-top:5px solid var(--og-accent-text)}
.og-body .table tbody tr:first-child td{border-top:0}
.og-body .table-striped tbody tr:nth-of-type(odd),.og-body .table-striped-alt tbody tr{background:transparent}
.og-body .table tbody tr{transition:background-color var(--og-t-state)}
.og-body .table tbody tr:hover{background:var(--og-row-hover)}
.og-body .table td a:not(.btn){font-weight:var(--og-w-semi)}
.og-body .table .btn-group{flex-wrap:nowrap}
.og-body .table tfoot td,.og-body .table tfoot th{background:var(--og-surface-2)!important;font-weight:var(--og-w-semi)}
.og-body .table-curved{border:0;border-radius:0}
.og-body .table-curved td,.og-body .table-curved th,.og-body .table-curved tbody>tr>td:first-child{border-left:0!important}
.og-body .table-curved td{border-top-color:var(--og-line-soft)}
.og-body .table-responsive{border-radius:inherit;-webkit-overflow-scrolling:touch;
  /* Scroll shadows: covers move with the content, shadows stay at the edges, so a shadow shows only where more columns are hidden */
  background:linear-gradient(90deg,var(--og-surface) 30%,transparent) left/48px 100% no-repeat local,linear-gradient(270deg,var(--og-surface) 30%,transparent) right/48px 100% no-repeat local,
  radial-gradient(farthest-side at 0 50%,var(--og-scroll-shadow),transparent) left/16px 100% no-repeat scroll,radial-gradient(farthest-side at 100% 50%,var(--og-scroll-shadow),transparent) right/16px 100% no-repeat scroll}
.og-body .table .subtable,.og-body .table tr.expand_details>td{background:var(--og-surface-2)!important}
.og-body .table tr.expand{cursor:pointer}
@media (max-width:1599.98px){.og-body .table th,.og-body .table td{padding-left:14px;padding-right:14px}.og-body .table thead th{white-space:normal}}
.og-body .table tr.expand td:last-of-type::after{margin-right:-14px;margin-top:9px;color:var(--og-text-3);font-size:11px;transition:color var(--og-t-state)}
.og-body .table tr.expand:hover td:last-of-type::after{color:var(--og-accent-text)}
.og-body .table td.text-right,.og-body .table th.text-right{font-variant-numeric:tabular-nums}
.og-body .card>.table-responsive>.table,.og-body .card-body>.table-responsive>.table{min-width:560px}
.og-body .card-body>.table-responsive{margin-left:-22px;margin-right:-22px;width:auto}
.og-body .card-body>.table-responsive:last-child{margin-bottom:-22px}
.og-body .card-body>.table-responsive .table th:first-child,.og-body .card-body>.table-responsive .table td:first-child{padding-left:22px}
.og-body .card-body>.table-responsive .table th:last-child,.og-body .card-body>.table-responsive .table td:last-child{padding-right:22px}

/* 5e. Badges and status */
.og-body .badge{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:0 10px;border-radius:var(--og-r-pill);font-size:var(--og-fs-xs);font-weight:var(--og-w-semi);letter-spacing:.01em;line-height:1;vertical-align:middle;
  background:var(--og-surface-3);color:var(--og-text-2);border:1px solid var(--og-line)}
.og-body .badge::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.85}
.og-body .badge:empty::before{display:none}
.og-body .nav .badge,.og-body .btn .badge,.og-body .card-nav .badge{min-height:22px;padding:0 8px;font-size:.78125rem}
.og-body .nav .badge::before,.og-body .btn .badge::before,.og-body .card-nav .badge::before{display:none}
.og-body .badge-success,.og-body .badge-paid,.og-body .badge-active{background:var(--og-ok-film);color:var(--og-ok);border-color:color-mix(in srgb,var(--og-ok) 24%,transparent)}
.og-body .badge-danger{background:var(--og-fault-film);color:var(--og-fault);border-color:color-mix(in srgb,var(--og-fault) 24%,transparent)}
.og-body .badge-warning{background:var(--og-warn-film);color:var(--og-warn);border-color:color-mix(in srgb,var(--og-warn) 26%,transparent)}
.og-body .badge-info,.og-body .badge-primary{background:var(--og-info-film);color:var(--og-accent-text);border-color:color-mix(in srgb,var(--og-accent) 24%,transparent)}
.og-body .badge-secondary,.og-body .badge-light,.og-body .badge-dark,.og-body .badge-default{background:var(--og-surface-3);color:var(--og-text-2);border-color:var(--og-line)}

/* 5f. Alerts */
.og-body .alert{position:relative;display:block;margin-bottom:var(--og-s5);padding:16px 48px 16px 52px;border:1px solid var(--og-line);border-radius:14px;background:var(--og-surface);color:var(--og-text);font-size:var(--og-fs-ui);line-height:1.55;box-shadow:var(--og-shadow-1)}
.og-body .alert::before{content:"";position:absolute;left:18px;top:17px;width:20px;height:20px;border-radius:50%;background:currentColor;-webkit-mask:var(--og-alert-icon) center/contain no-repeat;mask:var(--og-alert-icon) center/contain no-repeat}
.og-body .alert strong{font-weight:var(--og-w-bold)}
.og-body .alert a:not(.btn){color:inherit;text-decoration:underline;font-weight:var(--og-w-semi)}
.og-body .alert .btn{margin:10px 8px 0 0;min-height:38px;font-size:var(--og-fs-sm)}
.og-body .alert .close{position:absolute;top:10px;right:10px;width:32px;height:32px;padding:0;border-radius:8px;color:inherit;opacity:.55;text-shadow:none;font-size:22px;line-height:1;font-weight:400}
.og-body .alert .close:hover{opacity:1;background:rgba(127,140,160,.12)}
.og-body .alert-info{--og-alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 0a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm1 15H9V9h2v6Zm0-8H9V5h2v2Z'/%3E%3C/svg%3E");background:var(--og-info-film);border-color:color-mix(in srgb,var(--og-accent) 22%,transparent);color:var(--og-text)}
.og-body .alert-info::before{color:var(--og-accent-text)}
.og-body .alert-success{--og-alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 0a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm-1.2 14.4L4.4 10l1.4-1.4 3 3 6.4-6.4 1.4 1.4-7.8 7.8Z'/%3E%3C/svg%3E");background:var(--og-ok-film);border-color:color-mix(in srgb,var(--og-ok) 24%,transparent);color:var(--og-text)}
.og-body .alert-success::before{color:var(--og-ok)}
.og-body .alert-warning{--og-alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 0 0 18h20L10 0Zm1 15H9v-2h2v2Zm0-4H9V7h2v4Z'/%3E%3C/svg%3E");background:var(--og-warn-film);border-color:color-mix(in srgb,var(--og-warn) 28%,transparent);color:var(--og-text)}
.og-body .alert-warning::before{color:var(--og-warn);border-radius:0}
.og-body .alert-danger{--og-alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 0a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm1 15H9v-2h2v2Zm0-4H9V5h2v6Z'/%3E%3C/svg%3E");background:var(--og-fault-film);border-color:color-mix(in srgb,var(--og-fault) 26%,transparent);color:var(--og-text)}
.og-body .alert-danger::before{color:var(--og-fault)}
.og-body .alert.w-100{width:100%}

/* 5g. Tabs, pills, list groups */
.og-body .nav-tabs{gap:4px;margin-bottom:var(--og-s5);border-bottom:1px solid var(--og-line);flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.og-body .nav-tabs::-webkit-scrollbar{display:none}
.og-body .nav-tabs .nav-link,.og-body .nav-tabs>li>a{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 14px;border:0;border-radius:10px 10px 0 0;background:none;color:var(--og-text-3);font-size:var(--og-fs-ui);font-weight:var(--og-w-semi);white-space:nowrap;text-decoration:none;transition:color var(--og-t-state)}
.og-body .nav-tabs .nav-link::after,.og-body .nav-tabs>li>a::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;border-radius:2px;background:var(--og-accent-text);transform:scaleX(0);transition:transform var(--og-t-panel) var(--og-e-out)}
.og-body .nav-tabs .nav-link:hover{color:var(--og-text)}
.og-body .nav-tabs .nav-link.active,.og-body .nav-tabs .active>a,.og-body .nav-tabs>li.current>a{color:var(--og-text);background:none}
.og-body .nav-tabs .nav-link.active::after,.og-body .nav-tabs .active>a::after,.og-body .nav-tabs>li.current>a::after{transform:none}
.og-body .card-links{display:flex;flex-wrap:wrap;gap:4px;padding:0;margin:0;font-size:var(--og-fs-ui)}
.og-body .card-links>li{display:block;color:var(--og-text-2)}
.og-body .card-links>li+li:before{content:none}
.og-body .card-links>li>a,.og-body .nav-pills>li>a:not(.nav-link){display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border-radius:var(--og-r-pill);background:transparent;color:var(--og-text-2)!important;font-weight:var(--og-w-semi);text-decoration:none;transition:background-color var(--og-t-state),color var(--og-t-state)}
.og-body .card-links>li>a:hover,.og-body .nav-pills>li>a:not(.nav-link):hover{background:var(--og-surface-2);color:var(--og-text)!important}
.og-body .card-links>li.active>a,.og-body .nav-pills>li.active>a{background:var(--og-accent-film-2)!important;color:var(--og-accent-text)!important}
.og-body .card-links .badge{min-width:22px;padding:2px 7px;border-radius:var(--og-r-pill);background:var(--og-surface-3,var(--og-surface-2));color:var(--og-text-2);font-size:var(--og-fs-xs);font-weight:var(--og-w-semi)}
.og-body .card-links>li.active .badge{background:var(--og-accent);color:#fff}
.og-body .card-nav .nav,.og-body .nav-pills{gap:4px;flex-wrap:wrap}
.og-body .nav-pills .nav-link,.og-body .card-nav .nav-link{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border-radius:var(--og-r-pill);color:var(--og-text-2);font-size:var(--og-fs-sm);font-weight:var(--og-w-semi);text-decoration:none;transition:background-color var(--og-t-state),color var(--og-t-state)}
.og-body .nav-pills .nav-link:hover,.og-body .card-nav .nav-link:hover{background:var(--og-surface-2);color:var(--og-text)}
.og-body .nav-pills .nav-link.active,.og-body .card-nav .nav-link.active,.og-body .card-nav .current .nav-link,.og-body .card-nav li.active>a{background:var(--og-accent-film-2);color:var(--og-accent-text)}
.og-body .list-group{border-radius:var(--og-r-input)}
.og-body .list-group-item{padding:13px 18px;border-color:var(--og-line);background:var(--og-surface);color:var(--og-text);font-size:var(--og-fs-ui)}
.og-body .list-group-item-action{color:var(--og-text-2)}
.og-body .list-group-item-action:hover,.og-body .list-group-item-action:focus{background:var(--og-surface-2);color:var(--og-text)}
.og-body .list-group-item.active{z-index:1;background:var(--og-accent-film-2);border-color:var(--og-line);color:var(--og-accent-text);font-weight:var(--og-w-semi)}
.og-body .tab-content>.tab-pane{animation:og-fade var(--og-t-enter) var(--og-e-out)}

/* 5h. Dropdowns, popovers, tooltips */
.og-body .dropdown-menu{min-width:220px;padding:6px;border:1px solid var(--og-line);border-radius:14px;background:var(--og-surface-raised);color:var(--og-text);font-size:var(--og-fs-ui);box-shadow:var(--og-shadow-3)}
.og-body .dropdown-menu.show{animation:og-pop var(--og-t-state) var(--og-e-out)}
.og-body .dropdown-item{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 12px;border-radius:9px;color:var(--og-text-2);font-weight:var(--og-w-mid);white-space:nowrap}
.og-body .dropdown-item .og-icon,.og-body .dropdown-item .fas,.og-body .dropdown-item .far{color:var(--og-text-3);width:18px;text-align:center}
.og-body .dropdown-item:hover,.og-body .dropdown-item:focus{background:var(--og-accent-film);color:var(--og-text)}
.og-body .dropdown-item:hover .og-icon{color:var(--og-accent-text)}
.og-body .dropdown-item.active,.og-body .dropdown-item:active{background:var(--og-accent-film-2);color:var(--og-accent-text)}
.og-body .dropdown-item--danger:hover{background:var(--og-fault-film);color:var(--og-fault)}
.og-body .dropdown-item--danger:hover .og-icon{color:var(--og-fault)}
.og-body .dropdown-divider{margin:6px 4px;border-top-color:var(--og-line)}
.og-body .dropdown-header{padding:8px 12px 4px;font-family:var(--og-mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--og-text-3)}
.og-body .popover{border:1px solid var(--og-line);border-radius:12px;background:var(--og-surface-raised);box-shadow:var(--og-shadow-3);font-family:var(--og-font)}
.og-body .popover-header{background:var(--og-surface-2);border-bottom-color:var(--og-line);color:var(--og-text);font-weight:var(--og-w-bold)}
.og-body .popover-body{color:var(--og-text-2);font-size:var(--og-fs-sm)}
.og-body .tooltip-inner{padding:7px 11px;border-radius:8px;background:#0C1A2C;font-family:var(--og-font);font-size:var(--og-fs-xs);font-weight:var(--og-w-semi)}

/* 5i. Modal */
.og-body .modal-backdrop{background:#030812}
.og-body .modal-backdrop.show{opacity:.62}
.og-body .modal-content{border:1px solid var(--og-line);border-radius:var(--og-r-panel);background:var(--og-surface-raised);color:var(--og-text);box-shadow:0 40px 90px -30px rgba(0,0,0,.6);overflow:hidden}
.og-body .modal.fade .modal-dialog{transform:translateY(14px) scale(.985);transition:transform var(--og-t-enter) var(--og-e-out)}
.og-body .modal.show .modal-dialog{transform:none}
.og-body .modal-header{align-items:center;padding:20px 24px;border-bottom-color:var(--og-line)}
.og-body .modal-header h5,.og-body .modal-title{margin:0;font-size:var(--og-fs-card);font-weight:var(--og-w-bold)}
.og-body .modal-header .close{width:36px;height:36px;margin:-6px -8px -6px auto;padding:0;border-radius:10px;color:var(--og-text-2);opacity:.7;text-shadow:none;font-weight:400}
.og-body .modal-header .close:hover{opacity:1;background:var(--og-surface-2)}
.og-body .modal-body{padding:24px;font-size:var(--og-fs-body)}
.og-body .modal-footer{gap:8px;padding:16px 24px;background:var(--og-surface-2);border-top-color:var(--og-line)}
.og-body .modal-footer>*{margin:0}

/* 5j. Pagination, progress, misc */
.og-body .pagination{gap:4px;flex-wrap:wrap;margin:18px 0 4px}
.og-body .pagination .page-link,.og-body div.pagination ul.pagination li a{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border:1px solid var(--og-line);border-radius:10px!important;background:var(--og-surface);color:var(--og-text-2);font-weight:var(--og-w-semi);font-size:var(--og-fs-sm)}
.og-body .pagination .page-link:hover{background:var(--og-surface-2);color:var(--og-text);border-color:var(--og-line-2)}
.og-body .pagination .page-item.active .page-link,.og-body div.pagination ul.pagination li.active a{background:var(--og-accent);border-color:var(--og-accent);color:#fff}
.og-body .pagination .page-item.disabled .page-link{background:transparent;color:var(--og-text-4)}
.og-body .progress{height:10px;border-radius:var(--og-r-pill);background:var(--og-surface-3);overflow:hidden}
.og-body .progress-bar{background:linear-gradient(90deg,var(--og-blue),var(--og-blue-lift))}
.og-body .breadcrumb{background:none;padding:0}
.og-body .close{color:var(--og-text);text-shadow:none}
.og-body .fa-spinner{color:var(--og-accent-text)}
.og-body .table .fa-check,.og-body .table .fa-check-circle{color:var(--og-ok)}
.og-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 24px;text-align:center;color:var(--og-text-2)}
.og-empty__icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:6px;border-radius:16px;background:var(--og-accent-film);color:var(--og-accent-text);box-shadow:inset 0 0 0 1px var(--og-accent-film-2)}
.og-empty__icon .og-icon{width:26px;height:26px}
.og-empty h3,.og-empty h4{margin:0;font-size:var(--og-fs-card)!important}
.og-empty p{max-width:44ch;margin:0;color:var(--og-text-3);font-size:var(--og-fs-sm)}
.og-empty .btn{margin-top:10px}
/* Blesta's "no results" alert inside a card body reads as an empty state */
.og-body .card-body>.alert-info:only-child,.og-body .card-content>.card-body>.alert-info:only-child{margin:6px 0;padding:34px 24px 30px;border:1px dashed var(--og-line-2);background:var(--og-surface-2);box-shadow:none;text-align:center;color:var(--og-text-2)}
.og-body .card-body>.alert-info:only-child::before,.og-body .card-content>.card-body>.alert-info:only-child::before{position:static;display:block;width:24px;height:24px;margin:0 auto 10px;color:var(--og-accent-text)}
.og-body .card-body>.alert-info:only-child .close{display:none}
.og-skel{display:block;height:14px;border-radius:7px;background:var(--og-skeleton);background-size:200% 100%;animation:og-shimmer 1.4s linear infinite}

/* 5b. Remaining stock surfaces: every hard-coded light colour in application.min.css that the rules
   above do not already tokenise (found with preview/qa/darksweep.py against ?page=kit) */
.og-body .table,.og-body table{border-color:var(--og-line-soft)}
.og-body .custom-file-label{background:var(--og-input-bg);border-color:var(--og-input-line);color:var(--og-text);border-radius:var(--og-r-input)}
.og-body .custom-file-label::after{background:var(--og-surface-2);border-left-color:var(--og-line);color:var(--og-text-2);border-radius:0 var(--og-r-input) var(--og-r-input) 0}
.og-body mark,.og-body .mark{padding:.1em .3em;border-radius:4px;background:color-mix(in srgb,#FFC53D 28%,transparent);color:inherit}
.og-body .progress{background:var(--og-surface-3);border-radius:var(--og-r-pill)}
.og-body .progress-bar{background:var(--og-accent);color:#fff}
.og-body .title,.og-body .header{background:transparent;color:var(--og-text)}
.og-body .img-thumbnail{background:var(--og-surface);border-color:var(--og-line)}
.og-body .dropdown-item-text{color:var(--og-text-2)}
.og-body .pagination .page-item.disabled .page-link,.og-body div.pagination ul.pagination li.disabled a{background:transparent!important;color:var(--og-text-3)!important}
.og-body .card-steps .nav-tabs li a{color:var(--og-text-2)}
.og-body .card-steps .nav-tabs li.active a,.og-body .card-steps a.active{color:var(--og-accent-text)}
.og-body .datepicker{background:var(--og-surface-raised);color:var(--og-text)}
.og-body .datepicker table tr td.day:hover,.og-body .datepicker table tr td.focused,.og-body .datepicker table tr td span:hover{background:var(--og-surface-3)}
.og-body .datepicker table tr td.today{background:color-mix(in srgb,#FFC53D 30%,transparent);color:var(--og-text)}
.og-body .datepicker table tr td.range,.og-body .datepicker table tr td.highlighted{background:var(--og-accent-film);color:var(--og-text);border-radius:0}
.og-body .datepicker table tr td.active,.og-body .datepicker table tr td.selected,.og-body .datepicker table tr td span.active{background:var(--og-accent)!important;color:#fff!important;text-shadow:none}
.og-body .datepicker .datepicker-switch:hover,.og-body .datepicker .next:hover,.og-body .datepicker .prev:hover,.og-body .datepicker tfoot tr th:hover{background:var(--og-surface-3)}
.og-body .dropzone{background:var(--og-surface-2);border:1px dashed var(--og-line-strong,var(--og-line));border-radius:var(--og-r-card);color:var(--og-text-2)}
.og-body .col-border{border-color:var(--og-line)}
.og-body .form-control-plaintext{color:var(--og-text);font-size:var(--og-fs-body)}
.og-body .list-group.list-options .list-group-item{color:var(--og-text)!important;font-weight:var(--og-w-mid)}
.og-body .list-group.list-options .list-group-item:hover{background:var(--og-surface-2);color:var(--og-text)!important}
.og-body .list-group.list-options .list-group-item.active{background:var(--og-accent-film)!important;color:var(--og-accent-text)!important;font-weight:var(--og-w-semi)}
.og-body .custom-file,.og-body .custom-file-input{height:48px}
.og-body .custom-file-label{height:48px;padding:12px 15px;line-height:1.5}
.og-body .custom-file-label::after{height:46px;padding:12px 15px;line-height:1.5}
.og-body .progress{height:20px;font-size:var(--og-fs-xs)}
/* Legacy .label classes share the badge tokens */
.og-body .label{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:var(--og-r-pill);border:1px solid var(--og-line);background:var(--og-surface-3)!important;color:var(--og-text-2)!important;font-size:var(--og-fs-xs);font-weight:var(--og-w-semi);vertical-align:middle}
.og-body .label-success{background:var(--og-ok-film)!important;color:var(--og-ok)!important;border-color:color-mix(in srgb,var(--og-ok) 24%,transparent)}
.og-body .label-danger{background:var(--og-fault-film)!important;color:var(--og-fault)!important;border-color:color-mix(in srgb,var(--og-fault) 24%,transparent)}
.og-body .label-warning{background:var(--og-warn-film)!important;color:var(--og-warn)!important;border-color:color-mix(in srgb,var(--og-warn) 26%,transparent)}
.og-body .label-info,.og-body .label-primary{background:var(--og-info-film)!important;color:var(--og-accent-text)!important;border-color:color-mix(in srgb,var(--og-accent) 24%,transparent)}
.og-body caption,.og-body figcaption,.og-body .figure-caption,.og-body .blockquote-footer,.og-body .breadcrumb-item.active{color:var(--og-text-3)}

/* 6. Dashboard ------------------------------------------------------------- */
.og-hero{position:relative;margin:0 0 var(--og-s6);padding:clamp(26px,3.2vw,40px) clamp(24px,3.4vw,44px);border-radius:var(--og-r-panel);color:#fff;overflow:hidden;isolation:isolate;
  background:radial-gradient(70% 140% at 100% 0%,rgba(14,97,209,.55),transparent 60%),radial-gradient(40% 80% at 78% 110%,rgba(0,191,255,.16),transparent 70%),linear-gradient(135deg,#0A1729,#07111F 60%);
  box-shadow:0 30px 60px -36px rgba(7,17,31,.75),inset 0 1px 0 rgba(255,255,255,.06);border:1px solid rgba(111,178,247,.12)}
.og-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.9;background-image:linear-gradient(rgba(111,178,247,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(111,178,247,.07) 1px,transparent 1px);background-size:40px 40px;background-position:-1px -1px;-webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 85%);mask-image:linear-gradient(90deg,transparent 30%,#000 85%)}
.og-hero__px{position:absolute;right:0;top:0;bottom:0;width:min(46%,520px);z-index:-1;pointer-events:none}
.og-hero__px i{position:absolute;width:40px;height:40px;background:rgba(14,97,209,.35);box-shadow:inset 0 0 0 1px rgba(111,178,247,.18)}
.og-hero__px i:nth-child(2n){background:rgba(0,191,255,.20)}
.og-hero__px i:nth-child(3n){background:rgba(42,114,220,.18)}
.og-hero__eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-family:var(--og-mono);font-size:.78125rem;letter-spacing:.16em;text-transform:uppercase;color:var(--og-cyan)}
.og-hero__eyebrow::before{content:"";width:28px;height:2px;background:var(--og-cyan)}
.og-hero h1{margin:0 0 10px;max-width:22ch;color:#fff!important;font-size:clamp(1.875rem,1.4rem + 1.6vw,2.625rem)!important;font-weight:var(--og-w-heavy);letter-spacing:-.03em;line-height:1.05}
.og-hero__lede{max-width:56ch;margin:0;color:rgba(226,236,248,.80);font-size:1.0625rem;line-height:1.6}
.og-hero__meta{display:flex;flex-wrap:wrap;gap:8px 10px;margin:18px 0 0;padding:0;list-style:none}
.og-hero__meta li{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0 12px;border-radius:var(--og-r-pill);background:rgba(255,255,255,.06);border:1px solid rgba(148,180,222,.18);color:rgba(234,241,250,.88);font-size:var(--og-fs-sm);font-weight:var(--og-w-mid)}
.og-hero__meta .og-icon{width:16px;height:16px;color:var(--og-blue-light)}
.og-hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.og-hero .btn-primary{box-shadow:0 12px 26px -12px rgba(14,97,209,.9)}
.og-hero .og-btn-ghost{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.26)!important;color:#fff!important;box-shadow:none!important}
.og-hero .og-btn-ghost:hover{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.5)!important}
.og-dash{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--og-s6);align-items:start}
.og-dash__main{min-width:0}
.og-dash__aside{min-width:0;position:sticky;top:calc(var(--og-bar-h) + 20px)}
.og-dash .right_content>.alert{margin-bottom:var(--og-s6)}

/* KPI cards (Blesta client cards) */
.og-dash__main{container-type:inline-size}
.og-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--og-s4);margin:0 0 var(--og-s6)}
@container (min-width:700px){.og-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}
.og-kpis:empty{display:grid;min-height:132px}
.og-kpis:empty::before{content:"";grid-column:1/-1;border-radius:var(--og-r-card);background:var(--og-skeleton);background-size:200% 100%;animation:og-shimmer 1.4s linear infinite;opacity:.6}
.og-kpi{position:relative;display:flex;flex-direction:column;gap:14px;min-height:132px;padding:20px 20px 18px;border:1px solid var(--og-line);border-radius:var(--og-r-card);background:var(--og-surface);box-shadow:var(--og-shadow-2),var(--og-highlight);color:var(--og-text)!important;text-decoration:none!important;overflow:hidden;
  transition:transform var(--og-t-panel) var(--og-e-out),box-shadow var(--og-t-panel) var(--og-e-out),border-color var(--og-t-state);animation:og-rise var(--og-t-enter) var(--og-e-out) both;animation-delay:calc(var(--i,0) * 60ms)}
.og-kpi{container-type:inline-size}
/* Long values (currency) shrink with the card so they never overflow; short counts stay full size */
.og-kpi__value.og-kpi__value--long{font-size:max(1.5rem,min(var(--og-fs-kpi),21cqi))}
.og-kpi::after{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,var(--og-blue),var(--og-cyan));opacity:0;transition:opacity var(--og-t-state)}
a.og-kpi:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--og-accent) 40%,var(--og-line));box-shadow:var(--og-shadow-3)}
a.og-kpi:hover::after{opacity:1}
.og-kpi__top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.og-kpi__label{color:var(--og-text-2);font-size:var(--og-fs-sm);font-weight:var(--og-w-semi);line-height:1.3}
.og-kpi__icon{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:12px;background:var(--og-accent-film);color:var(--og-accent-text);box-shadow:inset 0 0 0 1px var(--og-accent-film-2)}
.og-kpi__value{margin-top:auto;font-size:var(--og-fs-kpi);white-space:nowrap;font-weight:var(--og-w-heavy);letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.og-kpi__foot{display:flex;align-items:center;gap:6px;color:var(--og-text-3);font-size:var(--og-fs-xs);font-weight:var(--og-w-mid)}
a.og-kpi .og-kpi__foot{color:var(--og-accent-text)}
a.og-kpi .og-kpi__foot .og-icon{width:14px;height:14px;transition:transform var(--og-t-state) var(--og-e-out)}
a.og-kpi:hover .og-kpi__foot .og-icon{transform:translateX(3px)}
.og-kpi--html{padding:0}

/* Account aside */
.og-acctcard .card-body{padding:20px}
.og-acctcard__id{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.og-acctcard__id .og-avatar{width:44px;height:44px;font-size:1rem}
.og-acctcard__name{font-weight:var(--og-w-bold);font-size:var(--og-fs-body);line-height:1.3}
.og-acctcard__num{font-family:var(--og-mono);font-size:var(--og-fs-xs);color:var(--og-text-3);letter-spacing:.04em}
.og-acctcard dl{margin:0;display:grid;gap:12px}
.og-acctcard dt{font-size:var(--og-fs-xs);font-weight:var(--og-w-semi);color:var(--og-text-3);text-transform:uppercase;letter-spacing:.06em}
.og-acctcard dd{margin:2px 0 0;font-size:var(--og-fs-ui);color:var(--og-text);overflow-wrap:anywhere}
.og-links{margin:0;padding:6px;list-style:none}
.og-links a{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 12px;border-radius:10px;color:var(--og-text-2)!important;font-size:var(--og-fs-ui);font-weight:var(--og-w-mid);text-decoration:none!important;transition:background-color var(--og-t-state),color var(--og-t-state)}
.og-links a:hover{background:var(--og-surface-2);color:var(--og-text)!important}
.og-links a .og-icon{color:var(--og-accent-text)}
.og-links a .og-links__go{margin-left:auto;width:16px;height:16px;color:var(--og-text-4);transition:transform var(--og-t-state) var(--og-e-out)}
.og-links a:hover .og-links__go{transform:translateX(3px);color:var(--og-accent-text)}
.og-help{padding:20px;border-radius:var(--og-r-card);background:linear-gradient(160deg,var(--og-accent-film-2),var(--og-accent-film));border:1px solid color-mix(in srgb,var(--og-accent) 18%,var(--og-line))}
.og-help h2{margin:0 0 6px;font-size:var(--og-fs-card)!important}
.og-help p{margin:0 0 14px;color:var(--og-text-2);font-size:var(--og-fs-sm)}
.og-help a.og-help__phone{display:inline-flex;align-items:center;gap:8px;margin-top:12px;color:var(--og-text)!important;font-weight:var(--og-w-semi);font-size:var(--og-fs-sm);text-decoration:none}

/* Dashboard widgets (Blesta widgets inside .right_content) */
.og-dash .right_content .card-blesta{animation:og-rise var(--og-t-enter) var(--og-e-out) both}
.og-dash .right_content>div[id^="widget_container_"]:empty{min-height:180px;margin-bottom:var(--og-s6);border-radius:var(--og-r-card);background:var(--og-skeleton);background-size:200% 100%;animation:og-shimmer 1.4s linear infinite;opacity:.55}
.og-body .card-blesta .card-header .btn-group .btn,.og-body .card-blesta .card-header .float-right .btn{min-height:36px}

/* Activity widget (oogle_portal plugin) */
.og-body .og-activity>.card-content{padding:0}
.og-activity__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0}
.og-activity__panel{grid-column:span 12;padding:20px 22px 22px;border-top:1px solid var(--og-line-soft)}
.og-activity__panel:first-child{border-top:0}
@media (min-width:1280px){
  .og-activity__panel--half{grid-column:span 6}
  .og-activity__panel--half+.og-activity__panel--half{border-left:1px solid var(--og-line-soft)}
  .og-activity__panel--half:nth-child(n+2){border-top:1px solid var(--og-line-soft)}
}
.og-activity__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 16px;margin-bottom:14px}
.og-activity__title{margin:0;font-size:1.125rem!important;font-weight:var(--og-w-bold)}
.og-activity__sub{margin:2px 0 0;color:var(--og-text-3);font-size:var(--og-fs-xs)}
.og-activity__total{font-size:var(--og-fs-section);font-weight:var(--og-w-heavy);letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1;text-align:right}
.og-activity__total small{display:block;color:var(--og-text-3);font-size:var(--og-fs-xs);font-weight:var(--og-w-mid);letter-spacing:0}
.og-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 10px;padding:0;list-style:none;font-size:var(--og-fs-xs);color:var(--og-text-2);font-weight:var(--og-w-mid)}
.og-legend li{display:inline-flex;align-items:center;gap:7px}
.og-legend i{width:10px;height:10px;border-radius:3px;background:var(--c)}
.og-chart{position:relative;width:100%;--og-chart-h:240px}
.og-chart--line{--og-chart-h:200px}
.og-chart__frame{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:var(--og-chart-h) auto;column-gap:12px;padding-top:8px}
.og-chart__y{position:relative;min-width:34px}
.og-chart__y span{position:absolute;right:0;transform:translateY(-50%);color:var(--og-text-3);font-size:var(--og-fs-xs);font-weight:var(--og-w-mid);font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap}
.og-chart__plot{position:relative;min-width:0}
.og-chart__plot svg{display:block;width:100%;height:100%;overflow:visible}
.og-chart__x{grid-column:2;position:relative;height:30px;container-type:inline-size}
.og-chart__x span{position:absolute;top:10px;transform:translateX(-50%);color:var(--og-text-3);font-size:var(--og-fs-xs);font-weight:var(--og-w-mid);line-height:1;white-space:nowrap}
.og-chart__x--points span:first-child{transform:none}
.og-chart__x--points span:last-child{transform:translateX(-100%)}
@container (max-width:460px){.og-chart__x--bands span:nth-child(even){visibility:hidden}}
.og-chart .og-c-grid{stroke:var(--og-chart-grid);stroke-width:1;vector-effect:non-scaling-stroke;shape-rendering:crispEdges}
.og-chart .og-c-bar{transition:opacity var(--og-t-state)}
.og-chart .og-c-paid{fill:var(--og-chart-1)}
.og-chart .og-c-due{fill:var(--og-chart-2)}
.og-chart .og-c-col:hover .og-c-bar{opacity:.82}
.og-chart .og-c-hit{fill:transparent}
.og-chart .og-c-col:hover .og-c-hit{fill:var(--og-accent-film)}
.og-chart .og-c-line{fill:none;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.og-chart .og-c-line--a{stroke:var(--og-chart-1)}
.og-chart .og-c-line--b{stroke:var(--og-chart-3);stroke-dasharray:5 5}
.og-chart .og-c-area{fill:url(#og-area-grad)}
.og-chart .og-c-dot{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}
.og-chart .og-c-dot--a{stroke:var(--og-chart-1);stroke-width:9}
.og-chart .og-c-dot--b{stroke:var(--og-chart-3);stroke-width:7}
.og-chart .og-c-col:hover .og-c-dot{stroke-width:12}
.og-chart.is-drawing .og-c-bar{transform-box:fill-box;transform-origin:50% 100%;animation:og-grow 640ms var(--og-e-out) both;animation-delay:calc(var(--i,0) * 35ms)}
.og-chart--line.is-drawing .og-chart__plot{animation:og-reveal 900ms var(--og-e-out) both}
.og-chart__data{margin-top:6px;font-size:var(--og-fs-sm)}
.og-chart__data summary{display:inline-flex;align-items:center;gap:6px;min-height:32px;color:var(--og-accent-text);font-weight:var(--og-w-semi);cursor:pointer;border-radius:6px}
.og-chart__data .og-chart__table{width:100%;margin-top:8px;border-collapse:collapse;font-size:var(--og-fs-sm)}
.og-chart__data .og-chart__table caption{caption-side:top;padding:0 0 6px;color:var(--og-text-3);font-size:var(--og-fs-xs)}
.og-chart__data .og-chart__table th,.og-chart__data .og-chart__table td{padding:8px 10px;border-top:1px solid var(--og-line-soft);text-align:right;font-variant-numeric:tabular-nums}
.og-chart__data .og-chart__table th[scope="row"],.og-chart__data .og-chart__table thead th:first-child{text-align:left;font-weight:var(--og-w-mid)}
.og-chart__data .og-chart__table thead th{color:var(--og-text-3);font-size:var(--og-fs-xs);font-weight:var(--og-w-semi);border-top:0}
.og-chart__tip{position:absolute;z-index:5;left:0;top:0;min-width:168px;padding:10px 12px;border-radius:10px;background:var(--og-surface-raised);border:1px solid var(--og-line);box-shadow:var(--og-shadow-3);color:var(--og-text);font-size:var(--og-fs-xs);pointer-events:none;opacity:0;transform:translate(-50%,calc(-100% - 10px));transition:opacity var(--og-t-state)}
.og-chart__tip.is-on{opacity:1}
.og-chart__tip strong{display:block;margin-bottom:4px;font-size:var(--og-fs-sm)}
.og-chart__tip span{display:flex;justify-content:space-between;gap:14px;color:var(--og-text-2)}
.og-chart__tip span b{color:var(--og-text);font-variant-numeric:tabular-nums}
.og-bars{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.og-bars li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;font-size:var(--og-fs-sm)}
.og-bars__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--og-text);font-weight:var(--og-w-mid)}
.og-bars__n{font-weight:var(--og-w-bold);font-variant-numeric:tabular-nums}
.og-bars__track{grid-column:1/-1;height:8px;border-radius:var(--og-r-pill);background:var(--og-surface-3);overflow:hidden}
.og-bars__fill{display:block;height:100%;width:var(--w);border-radius:inherit;background:linear-gradient(90deg,var(--og-blue),var(--og-blue-light));transform-origin:left;animation:og-growx 700ms var(--og-e-out) both}
.og-activity__empty{display:flex;align-items:center;gap:16px;padding:6px 0}
.og-activity__empty .og-empty__icon{margin:0;width:48px;height:48px;border-radius:14px}
.og-activity__empty p{margin:0;color:var(--og-text-2);font-size:var(--og-fs-sm)}
.og-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:0;padding:0;list-style:none;counter-reset:og-step}
.og-steps a{position:relative;display:flex;flex-direction:column;gap:6px;height:100%;padding:18px 18px 16px;border:1px solid var(--og-line);border-radius:14px;background:var(--og-surface-2);color:var(--og-text)!important;text-decoration:none!important;transition:border-color var(--og-t-state),transform var(--og-t-panel) var(--og-e-out),box-shadow var(--og-t-panel)}
.og-steps a:hover{border-color:color-mix(in srgb,var(--og-accent) 45%,var(--og-line));transform:translateY(-2px);box-shadow:var(--og-shadow-2)}
.og-steps a::before{counter-increment:og-step;content:"0" counter(og-step);font-family:var(--og-mono);font-size:.75rem;letter-spacing:.1em;color:var(--og-accent-text)}
.og-steps strong{font-size:var(--og-fs-ui)}
.og-steps span{color:var(--og-text-3);font-size:var(--og-fs-sm);line-height:1.5}

/* 7. Sign-in, reset and other header-less pages ---------------------------- */
.og-auth{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100vh}
.og-auth__brand{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(28px,4vw,56px);color:#fff;overflow:hidden;isolation:isolate;
  background:radial-gradient(80% 60% at 100% 0%,rgba(14,97,209,.5),transparent 60%),radial-gradient(60% 50% at 0% 100%,rgba(0,191,255,.12),transparent 70%),linear-gradient(160deg,#0A1729,#07111F 55%)}
.og-auth__brand::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(111,178,247,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(111,178,247,.07) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(90% 80% at 70% 30%,#000,transparent);mask-image:radial-gradient(90% 80% at 70% 30%,#000,transparent)}
.og-auth__brand .og-hero__px{width:62%}
.og-auth__logo{display:block;height:46px;width:auto}
.og-auth__copy{max-width:30rem}
.og-auth__copy h2{margin:0 0 16px;color:#fff!important;font-size:clamp(2.125rem,1.4rem + 2.6vw,3.5rem)!important;font-weight:880;letter-spacing:-.035em;line-height:1}
.og-auth__copy p{margin:0;color:rgba(226,236,248,.8);font-size:1.0625rem;line-height:1.6}
.og-auth__list{display:grid;gap:12px;margin:26px 0 0;padding:0;list-style:none}
.og-auth__list li{display:flex;align-items:center;gap:12px;color:rgba(234,241,250,.9);font-size:var(--og-fs-ui)}
.og-auth__list .og-icon{width:18px;height:18px;color:var(--og-cyan)}
.og-auth__fine{color:rgba(180,198,220,.7);font-size:var(--og-fs-xs)}
.og-auth__fine a{color:rgba(226,236,248,.9)!important}
.og-auth__main{position:relative;display:flex;flex-direction:column;background:var(--og-bg)}
.og-auth__top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px clamp(20px,3vw,36px)}
.og-auth__top .og-auth__mobilelogo{display:none!important}
.og-auth__body{flex:1;display:flex;align-items:center;justify-content:center;padding:12px clamp(20px,4vw,56px) 40px}
.og-auth__body>.row{width:100%;max-width:470px;margin:0}
.og-auth__body>.row>[class*="col"]{flex:0 0 100%;max-width:100%;margin:0!important;padding:0}
.og-auth__body h2{margin:0 0 6px;font-size:0}
.og-auth__body h2 .fas,.og-auth__body h2 .fa{display:none}
.og-auth__body h4{margin:0 0 8px;font-size:clamp(1.75rem,1.5rem + .9vw,2.125rem)!important;font-weight:var(--og-w-heavy);letter-spacing:-.028em}
.og-auth__body h4+p,.og-auth__body .row.login p{color:var(--og-text-2);font-size:var(--og-fs-body)}
.og-auth__body .panel-blesta,.og-auth__body .card{margin-top:22px;border-radius:var(--og-r-panel);box-shadow:var(--og-shadow-3),var(--og-highlight)}
.og-auth__body .panel-body,.og-auth__body .card-body{padding:28px}
.og-auth__body .panel-footer,.og-auth__body .card-footer{padding:16px 28px;text-align:center}
.og-auth__links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 10px;border-top:1px solid var(--og-line-soft);background:var(--og-surface-2)}
.og-auth__links a{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border-radius:var(--og-r-control);color:var(--og-text-2)!important;font-size:var(--og-fs-sm);font-weight:var(--og-w-semi);text-decoration:none!important;
  transition:background-color var(--og-t-state),color var(--og-t-state)}
.og-auth__links a+a{position:relative}
.og-auth__links a+a::before{content:"";position:absolute;left:-6px;top:50%;width:3px;height:3px;margin-top:-1.5px;border-radius:50%;background:var(--og-line-2)}
.og-auth__links a:hover{background:var(--og-surface-3);color:var(--og-accent-text)!important}
.og-auth__links a:focus-visible{outline:2px solid var(--og-accent);outline-offset:2px}
.og-auth__links .og-icon{width:16px;height:16px;transition:transform var(--og-t-state) var(--og-e-out)}
.og-auth__links a:hover .og-icon{transform:translateX(-2px)}
@media (max-width:479.98px){.og-auth__links{flex-direction:column;gap:2px}.og-auth__links a+a::before{display:none}}
.og-auth__body .btn-success,.og-auth__body .btn-primary,.og-auth__body button[type="submit"]{width:100%;min-height:50px;font-size:var(--og-fs-body)}
.og-auth__body .form-group .float-right a,.og-auth__body a.float-right{font-size:var(--og-fs-sm)}
.og-auth__body .cf-turnstile,.og-auth__body .h-captcha,.og-auth__body .g-recaptcha{margin:4px 0 16px}
.og-auth__foot{padding:0 clamp(20px,3vw,36px) 22px;color:var(--og-text-3);font-size:var(--og-fs-xs);text-align:center}
.og-auth__foot a{color:var(--og-text-3)!important}

/* 8. Plugin pages ------------------------------------------------------------ */
/* Support Manager: tickets, replies, departments */
.og-body .ticket_reply,.og-body .ticket-reply,.og-body .reply{border-radius:var(--og-r-card)}
.og-body .support_manager .well,.og-body #support_manager .well{background:var(--og-surface-2)}
.og-body .client-reply,.og-body .staff-reply{border:1px solid var(--og-line);border-radius:var(--og-r-card);background:var(--og-surface)}
.og-body .rating-star{color:var(--og-warn)}
.og-body .department,.og-body .departments .card{transition:transform var(--og-t-panel) var(--og-e-out),box-shadow var(--og-t-panel),border-color var(--og-t-state)}
.og-body a .card:hover,.og-body .departments a:hover .card{transform:translateY(-2px);box-shadow:var(--og-shadow-3);border-color:color-mix(in srgb,var(--og-accent) 40%,var(--og-line))}
.og-body .tickets .card-header,.og-body .ticket .card-header{font-size:var(--og-fs-ui)}
.og-body .ck-editor .ck-editor__main>.ck-editor__editable,.og-body .ck.ck-editor__main>.ck-editor__editable{min-height:180px;background:var(--og-input-bg)!important;color:var(--og-text)!important;border-color:var(--og-input-line)!important;border-radius:0 0 var(--og-r-input) var(--og-r-input)!important}
.og-body .ck.ck-toolbar{background:var(--og-surface-2)!important;border-color:var(--og-input-line)!important;border-radius:var(--og-r-input) var(--og-r-input) 0 0!important}
[data-theme="dark"] .og-body .ck.ck-toolbar .ck-button{color:var(--og-text)!important}
[data-theme="dark"] .og-body .ck.ck-toolbar .ck-button:hover{background:var(--og-surface-3)!important}
.og-body .card-header .badge{font-size:var(--og-fs-xs)}
/* CMS portal page and knowledge base */
.og-body .plugin-cmsclient-main-index .title{display:none}
.og-body .knowledgebase .list-group-item{display:flex;align-items:center;gap:8px}
/* Order forms */
.og-body .order .package-boxes .card,.og-body .package-block{border-radius:var(--og-r-card)}

/* Without JavaScript every group stays open and the drawer becomes a plain menu */
html:not(.og-js) .og-nav__sub{grid-template-rows:1fr;visibility:visible}
html:not(.og-js) .og-sb__collapse,html:not(.og-js) .og-theme-toggle,html:not(.og-js) .og-bar__menu{display:none!important}
.og-kpi:nth-child(2){--i:1}.og-kpi:nth-child(3){--i:2}.og-kpi:nth-child(4){--i:3}.og-kpi:nth-child(5){--i:4}

/* 9. Responsive -------------------------------------------------------------- */
@media (max-width:1279.98px){
  .og-dash{grid-template-columns:minmax(0,1fr)}
  .og-dash__aside{position:static;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--og-s6);align-items:start}
  .og-dash__aside>*{margin-bottom:0!important}
}
@media (max-width:1023.98px){
  :root{--og-bar-h:62px}
  .og-sb{width:min(86vw,300px);transform:translateX(-102%);box-shadow:none;visibility:hidden;transition:transform var(--og-t-enter) var(--og-e-out),visibility 0s linear var(--og-t-enter)}
  .og-sb.is-open{transform:none;visibility:visible;box-shadow:24px 0 60px -20px rgba(0,0,0,.6);transition:transform var(--og-t-enter) var(--og-e-out),visibility 0s}
  .og-sb .og-sb__close{display:inline-flex;background:transparent;border-color:rgba(148,180,222,.24);color:#fff!important;box-shadow:none}
  .og-sb__close:hover{background:rgba(255,255,255,.08);color:#fff!important}
  .og-sb__collapse{display:none!important}
  .og-main{margin-left:0}
  .og-bar .og-bar__menu{display:inline-flex}
  .og-scrim{position:fixed;inset:0;z-index:1030;background:rgba(3,8,18,.55);opacity:0;visibility:hidden;transition:opacity var(--og-t-enter),visibility 0s linear var(--og-t-enter);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
  .og-scrim.is-on{opacity:1;visibility:visible;transition:opacity var(--og-t-enter),visibility 0s}
  .og-auth{grid-template-columns:minmax(0,1fr)}
  .og-auth__brand{display:none}
  [data-theme="light"] .og-auth__top .og-auth__mobilelogo--light,[data-theme="dark"] .og-auth__top .og-auth__mobilelogo--dark{display:block!important;height:34px;width:auto}
}
@media (min-width:1024px){.og-scrim{display:none}}
@media (max-width:1023.98px){html:not(.og-js) .og-sb{position:relative;width:100%;transform:none;visibility:visible}html:not(.og-js) .og-sb__nav{overflow:visible}}
@media (max-width:767.98px){
  :root{--og-gutter:16px}
  .og-content{padding-top:var(--og-s4)}
  .og-acct__name,.og-bar__support span{display:none}
  .og-bar__support{width:42px;padding:0}
  .og-crumbs li:not(:last-child){display:none}
  .og-page-head{margin-bottom:var(--og-s5)}
  .og-body .card-header,.og-body .panel-heading{padding:14px 16px;min-height:56px}
  .og-body .card-body,.og-body .panel-body{padding:16px}
  .og-body .card-footer{padding:12px 16px}
  .og-body .card-body>.table-responsive{margin-left:-16px;margin-right:-16px}
  .og-body .card-body>.table-responsive:last-child{margin-bottom:-16px}
  .og-body .card-body>.table-responsive .table th:first-child,.og-body .card-body>.table-responsive .table td:first-child{padding-left:16px}
  .og-body .table th,.og-body .table td{padding:13px 14px}
  .og-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .og-kpi{min-height:118px;padding:16px}
  .og-kpi__icon{width:34px;height:34px;border-radius:10px}
  .og-hero__actions{display:grid;grid-template-columns:1fr 1fr}
  .og-hero__actions .btn{justify-content:center;min-width:0}
  .og-hero__actions .btn:first-child{grid-column:1/-1}
  .og-hero__px{display:none}
  .og-foot{flex-direction:column;align-items:flex-start}
  .og-body .card-header>.float-right,.og-body .card-header>.btn-group{margin-left:0}
  .og-body .modal-dialog{margin:12px}
  .og-body .form-group .btn+.btn{margin-left:0;margin-top:8px}
  .og-body .float-right>.btn{margin-top:4px}
  .og-activity__head{flex-direction:column}
  .og-activity__total{text-align:left}
  .og-chart{--og-chart-h:200px}
  .og-chart--line{--og-chart-h:170px}
}
@media (max-width:374.98px){.og-kpis{grid-template-columns:minmax(0,1fr)}}

/* 10. Motion, reduced motion, print ------------------------------------------ */
@keyframes og-fade{from{opacity:0}to{opacity:1}}
@keyframes og-fadein{from{opacity:0}to{opacity:1}}
@keyframes og-pop{from{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}
@keyframes og-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes og-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes og-growx{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes og-draw{to{stroke-dashoffset:0}}
@keyframes og-reveal{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes og-draw-dashed{0%{stroke-dasharray:var(--len) var(--len);stroke-dashoffset:var(--len)}99%{stroke-dasharray:var(--len) var(--len);stroke-dashoffset:0}100%{stroke-dasharray:5 5;stroke-dashoffset:0}}
@keyframes og-shimmer{from{background-position:200% 0}to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:1ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}
}
@media print{
  .og-sb,.og-bar,.og-foot,.og-scrim,.og-skip{display:none!important}
  .og-main{margin:0!important}
  body.og-body{background:#fff;color:#000}
  .og-body .card{box-shadow:none;border-color:#ccc}
}

/* Theme switch: a 200ms cross-fade (view transitions only; reduced motion switches instantly in JS) */
::view-transition-old(root),::view-transition-new(root){animation-duration:200ms;animation-timing-function:var(--og-e-io)}
/* The transition overlay must not take the pointer: clicks during the fade reach the page and hover state stays put */
::view-transition{pointer-events:none}

/* 9. Ticket view (Support Manager's stock client_tickets_reply markup; classes added by oogle.js) */
/* 9a. Heading: the page head carries subject and number, so the widget title and the summary line step back */
.og-ticket #client_ticket_reply>.card-header{display:none}
.og-ticket #client_ticket_reply .card.bg-light>.row>.col-md-12:first-child{display:none}
#client_ticket_reply>.card-content>.card-body,#client_ticket_reply>.card-body{padding:clamp(16px,2vw,24px)}
#client_ticket_reply .card.bg-light{margin-bottom:var(--og-s5)!important;padding:16px 20px!important;border:1px solid var(--og-line-soft);border-radius:var(--og-r-card);background:var(--og-surface-2)!important;box-shadow:none}
#client_ticket_reply .card.bg-light>.row{row-gap:12px}
#client_ticket_reply .card.bg-light label{display:block;margin:0 0 4px;color:var(--og-text-3);font-family:var(--og-mono);font-size:.75rem;font-weight:var(--og-w-mid);letter-spacing:.1em;text-transform:uppercase}
#client_ticket_reply .card.bg-light p{margin:0;color:var(--og-text);font-size:var(--og-fs-ui);font-weight:var(--og-w-semi)}

/* 9b. Composer: one card (Blesta turns the whole form into the drop zone, so the form is the card) */
#client_ticket_reply #create_ticket,#client_ticket_reply #create_ticket.dropzone{position:relative;margin:0 0 var(--og-s6);padding:clamp(16px,2vw,22px);border:1px solid var(--og-line);border-radius:var(--og-r-card);background:var(--og-surface);box-shadow:var(--og-shadow-2);min-height:0}
#create_ticket>.form-group:first-child>label{display:block;margin:0 0 12px;color:var(--og-text);font-size:var(--og-fs-card);font-weight:var(--og-w-heavy);letter-spacing:-.012em}
#create_ticket .form-group{margin-bottom:16px}
#create_ticket::after{content:"";display:table;clear:both}
#create_ticket .form-group:has(>.custom_fields:empty){display:none}
#client_ticket_reply #create_ticket+.clearfix+hr{display:none}
/* Upload: a quiet row rather than the legacy dashed block; drag-over and focus are clearly shown */
#create_ticket .dz-message{display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;margin:0;padding:12px 16px;border:1.5px dashed var(--og-line-2);border-radius:var(--og-r-input);background:var(--og-surface-2);color:var(--og-text-2);font-size:var(--og-fs-sm);font-weight:var(--og-w-semi);cursor:pointer;
  transition:border-color var(--og-t-state),background-color var(--og-t-state),color var(--og-t-state)}
#create_ticket .dz-message .fas{color:var(--og-accent-text);opacity:1;margin:0!important}
#create_ticket .dz-message:hover,#create_ticket.dz-drag-hover .dz-message{border-color:var(--og-accent);background:var(--og-accent-film);color:var(--og-text)}
#create_ticket .dz-message:focus-visible{outline:2px solid var(--og-accent);outline-offset:2px}
#create_ticket .dropzone-previews:not(:empty){margin-top:10px}
#create_ticket [data-toggle="collapse"]{min-height:40px;font-size:var(--og-fs-sm)}
#create_ticket [data-toggle="collapse"] .fas{transition:transform var(--og-t-panel) var(--og-e-out)}
#create_ticket [data-toggle="collapse"][aria-expanded="true"] .fas{transform:rotate(180deg)}
#create_ticket .collapsing{transition-duration:var(--og-t-panel);transition-timing-function:var(--og-e-out)}
#create_ticket #recipients-section .card{box-shadow:none;border-color:var(--og-line-soft);background:var(--og-surface-2)}
/* Actions: two separate buttons of one height and radius; Reply primary, Close a red outline */
#client_ticket_reply #create_ticket .btn-group.float-right{float:none!important;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;width:100%;margin-top:4px;padding-top:16px;border-top:1px solid var(--og-line-soft)}
#client_ticket_reply #create_ticket .btn-group>.btn{flex:0 0 auto;min-height:46px;margin:0!important;padding:0 22px;border-radius:var(--og-r-pill)!important;font-size:var(--og-fs-ui)}
#client_ticket_reply #create_ticket .btn-group>.btn[value="reply"]{background:var(--og-accent);border-color:var(--og-accent);color:var(--og-on-accent)!important;box-shadow:0 1px 0 rgba(255,255,255,.14) inset,0 8px 20px -10px rgba(14,97,209,.75)}
#client_ticket_reply #create_ticket .btn-group>.btn[value="reply"]:hover{background:var(--og-accent-hover);border-color:var(--og-accent-hover)}
#client_ticket_reply #create_ticket .btn-group>.btn[value="close"]{background:transparent;border:1px solid color-mix(in srgb,var(--og-fault) 55%,var(--og-line));color:var(--og-fault)!important;box-shadow:none}
#client_ticket_reply #create_ticket .btn-group>.btn[value="close"]:hover{background:var(--og-fault-film);border-color:var(--og-fault);color:var(--og-fault)!important}
#client_ticket_reply #create_ticket .btn-group>.btn .fas{font-size:.9em}
@media (max-width:575.98px){
  #client_ticket_reply #create_ticket .btn-group>.btn{flex:1 1 0;min-height:48px;padding:0 14px}
}

/* 9c. Editor (Toast UI, bundled in app.min.js). Bootstrap's global border-box shrank its writing area by its
   36px of padding; it is sized content-box as the editor expects. Focus shows on the frame, not the editable. */
.og-body .toastui-editor-defaultUI{border:1px solid var(--og-input-line);border-radius:var(--og-r-input);background:var(--og-input-bg);font-family:var(--og-font);overflow:hidden;transition:border-color var(--og-t-state),box-shadow var(--og-t-state)}
.og-body .toastui-editor-defaultUI:focus-within{border-color:var(--og-accent);box-shadow:0 0 0 4px var(--og-focus)!important}
.og-body .toastui-editor-defaultUI .ProseMirror{box-sizing:content-box;font-family:var(--og-font);font-size:var(--og-fs-body);line-height:1.6;color:var(--og-text)}
.og-body .toastui-editor-defaultUI .ProseMirror:focus,.og-body .toastui-editor-defaultUI .ProseMirror:focus-visible{outline:0;box-shadow:none!important}
.og-body .toastui-editor-defaultUI-toolbar{padding:6px 10px;border-bottom:1px solid var(--og-line);border-radius:0;background:var(--og-surface-2)}
.og-body .toastui-editor-toolbar{background:var(--og-surface-2)}
.og-body .toastui-editor-defaultUI-toolbar button{border:1px solid transparent;border-radius:8px;background-color:transparent;transition:background-color var(--og-t-state),border-color var(--og-t-state)}
.og-body .toastui-editor-defaultUI-toolbar button:not(:disabled):hover{border-color:var(--og-line);background-color:var(--og-surface)}
.og-body .toastui-editor-defaultUI-toolbar button.active{border-color:var(--og-line-2);background-color:var(--og-surface)}
.og-body .toastui-editor-defaultUI-toolbar button.fas{color:var(--og-text-2)}
.og-body .toastui-editor-toolbar-divider{background-color:var(--og-line)}
.og-body .toastui-editor-main,.og-body .toastui-editor-md-container,.og-body .toastui-editor-ww-container{background:var(--og-input-bg)}
.og-body .toastui-editor-md-container .toastui-editor-md-preview{background:var(--og-input-bg)}
.og-body .toastui-editor-md-splitter{background-color:var(--og-line)}
.og-body .toastui-editor-md-tab-container{background:transparent;border-bottom:0}
.og-body .toastui-editor-md-tab-container .tab-item{height:32px;margin-top:2px;border:1px solid transparent;border-radius:8px 8px 0 0;background:transparent;color:var(--og-text-3);font-family:var(--og-font);font-size:var(--og-fs-xs);font-weight:var(--og-w-semi)}
.og-body .toastui-editor-md-tab-container .tab-item.active{border-color:var(--og-line);border-bottom-color:var(--og-input-bg);background:var(--og-input-bg);color:var(--og-text)}
.og-body .toastui-editor-mode-switch{height:34px;border-top:1px solid var(--og-line);background:var(--og-surface-2)}
.og-body .toastui-editor-mode-switch .tab-item{height:26px;margin:0 0 0 4px;border:1px solid transparent;border-radius:0 0 8px 8px;background:transparent;color:var(--og-text-3);font-family:var(--og-font);font-size:var(--og-fs-xs);font-weight:var(--og-w-semi);transition:background-color var(--og-t-state),color var(--og-t-state)}
.og-body .toastui-editor-mode-switch .tab-item:hover{color:var(--og-text)}
.og-body .toastui-editor-mode-switch .tab-item.active{border-color:var(--og-line);border-top-color:var(--og-input-bg);background:var(--og-input-bg);color:var(--og-text)}
.og-body .toastui-editor-contents{font-family:var(--og-font);font-size:var(--og-fs-body);color:var(--og-text)}
.og-body .toastui-editor-contents :is(p,ul,ol,li,h1,h2,h3,h4,h5,h6,td,th,strong,em,del){color:inherit}
.og-body .toastui-editor-contents :is(ul,ol)>li::before{background-color:var(--og-text-3)}
.og-body .toastui-editor-contents :is(h1,h2){border-bottom-color:var(--og-line)}
.og-body .toastui-editor-contents blockquote{border-left-color:var(--og-line-2)}
.og-body .toastui-editor-contents blockquote p{color:var(--og-text-2)}
.og-body .toastui-editor-contents pre,.og-body .toastui-editor-contents code{background:var(--og-surface-3);color:var(--og-text)}
.og-body .toastui-editor-contents table{border-color:var(--og-line)}
.og-body .toastui-editor-contents :is(td,th){border-color:var(--og-line)}
.og-body .toastui-editor-contents th{background:var(--og-surface-3)}
.og-body .toastui-editor-defaultUI .ProseMirror-placeholder,.og-body .toastui-editor-defaultUI .placeholder{color:var(--og-text-4)}
.og-body .toastui-editor-popup,.og-body .toastui-editor-dropdown-toolbar,.og-body .toastui-editor-context-menu{border:1px solid var(--og-line);border-radius:var(--og-r-control);background:var(--og-surface-raised);color:var(--og-text);box-shadow:var(--og-shadow-3)}
.og-body .toastui-editor-popup-body label,.og-body .toastui-editor-popup-body{color:var(--og-text-2)}
.og-body .toastui-editor-popup-body input[type="text"]{height:38px;min-height:38px}
[data-theme="dark"] .og-body .toastui-editor-toolbar-icons:not(.fas){filter:invert(.88) hue-rotate(180deg) brightness(1.1)}
[data-theme="dark"] .og-body .toastui-editor-md-container .toastui-editor :is(.toastui-editor-md-heading,.toastui-editor-md-strong,.toastui-editor-md-meta){color:var(--og-text)}
[data-theme="dark"] .og-body .toastui-editor-md-container .toastui-editor :is(.toastui-editor-md-delimiter,.toastui-editor-md-marked-text,.toastui-editor-md-thematic-break){color:var(--og-text-3)}
[data-theme="dark"] .og-body .toastui-editor-md-code,[data-theme="dark"] .og-body .toastui-editor-md-code-block-line-background{background-color:var(--og-surface-3)}

/* 9d. Conversation: one card per message, avatar outside the card, role in words and icon as well as colour */
#client_ticket_reply .og-msg{display:grid;grid-template-columns:44px minmax(0,1fr);gap:0 14px;margin:0 0 18px;padding:0}
#client_ticket_reply .og-msg>[class*="col-"]{flex:none;width:auto;max-width:none;padding:0}
#client_ticket_reply .og-msg>.og-msg__aside{grid-column:1;padding-top:2px;border:0}
#client_ticket_reply .og-msg__aside>p,#client_ticket_reply .og-msg__aside>img{display:none}
.og-av{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;overflow:hidden;background:var(--og-surface-3);color:var(--og-text-2);font-size:.9375rem;font-weight:var(--og-w-bold);letter-spacing:.02em;box-shadow:0 0 0 1px var(--og-line) inset}
.og-av--staff{background:linear-gradient(145deg,#2A72DC,#0E4FB0);color:#fff;box-shadow:0 0 0 2px var(--og-surface),0 0 0 3px color-mix(in srgb,var(--og-accent) 55%,transparent)}
.og-av--ai{background:var(--og-accent-film-2);color:var(--og-accent-text)}
.og-av .og-icon{width:20px;height:20px}
.og-av>.og-av__img{position:absolute;inset:0;display:block!important;width:100%!important;height:100%;object-fit:cover;border:0!important;border-radius:50%;padding:0!important}
#client_ticket_reply .og-msg>.og-msg__card{grid-column:2;position:relative;min-width:0;padding:16px 20px 18px;border:1px solid var(--og-line);border-radius:4px var(--og-r-card) var(--og-r-card) var(--og-r-card);background:var(--og-surface);
  box-shadow:0 1px 2px rgba(9,16,28,.04),0 8px 22px -16px rgba(9,16,28,.28);font-size:var(--og-fs-body);line-height:1.65;overflow-wrap:anywhere}
#client_ticket_reply .og-msg--staff .og-msg__card{border-color:color-mix(in srgb,var(--og-accent) 26%,var(--og-line));background:color-mix(in srgb,var(--og-accent) 5%,var(--og-surface))}
#client_ticket_reply .og-msg--staff .og-msg__card::before{content:"";position:absolute;left:-1px;top:12px;bottom:12px;width:3px;border-radius:0 3px 3px 0;background:linear-gradient(180deg,var(--og-cyan),var(--og-accent))}
#client_ticket_reply .og-msg--ai .og-msg__card{border-style:dashed;border-color:color-mix(in srgb,var(--og-accent) 30%,var(--og-line))}
[data-theme="dark"] #client_ticket_reply .og-msg--customer .og-msg__card{background:var(--og-surface-raised)}
[data-theme="dark"] #client_ticket_reply .og-msg--staff .og-msg__card{background:color-mix(in srgb,#2A72DC 13%,var(--og-surface));border-color:color-mix(in srgb,#6FB2F7 30%,var(--og-line))}
[data-theme="dark"] #client_ticket_reply .og-msg__card{box-shadow:0 1px 0 rgba(255,255,255,.02) inset,0 10px 26px -18px rgba(0,0,0,.8)}
.og-msg__head{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0 0 10px;line-height:1.3}
.og-msg__name{color:var(--og-text);font-size:var(--og-fs-ui);font-weight:var(--og-w-bold)}
.og-msg__title{color:var(--og-text-3);font-size:var(--og-fs-xs)}
.og-msg__time{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:var(--og-text-3);font-size:var(--og-fs-xs);font-variant-numeric:tabular-nums;white-space:nowrap}
.og-msg__sep{opacity:.6}
.og-role{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px 0 7px;border:1px solid var(--og-line);border-radius:var(--og-r-pill);background:var(--og-surface-2);color:var(--og-text-2);font-size:.78125rem;font-weight:var(--og-w-semi);letter-spacing:.01em;white-space:nowrap}
.og-role .og-icon{width:14px;height:14px}
.og-role--staff{border-color:color-mix(in srgb,var(--og-accent) 35%,transparent);background:var(--og-accent-film-2);color:var(--og-blue-deep)}
[data-theme="dark"] .og-role--staff{color:var(--og-accent-text)}
.og-role--ai{border-style:dashed;color:var(--og-accent-text)}
/* Message content */
#client_ticket_reply .og-msg__card>:is(p,ul,ol,blockquote,pre,table,h1,h2,h3,h4,h5,h6){margin:0 0 .75em}
#client_ticket_reply .og-msg__card>:is(p,ul,ol,blockquote,pre,table):last-child{margin-bottom:0}
#client_ticket_reply .og-msg__card :is(ul,ol){padding-left:1.35em}
#client_ticket_reply .og-msg__card li+li{margin-top:.25em}
#client_ticket_reply .og-msg__card blockquote{padding:2px 0 2px 14px;border-left:3px solid var(--og-line-2);color:var(--og-text-2)}
#client_ticket_reply .og-msg__card blockquote p{margin:0}
#client_ticket_reply .og-msg__card pre:focus-visible{outline-offset:1px}
#client_ticket_reply .og-msg__card pre{max-width:100%;overflow:auto;padding:12px 14px;border-radius:var(--og-r-control);background:var(--og-surface-3);border-color:var(--og-line-soft);font-size:.875rem;line-height:1.55;overflow-wrap:normal;white-space:pre}
#client_ticket_reply .og-msg__card code{font-family:var(--og-mono);font-size:.875em}
#client_ticket_reply .og-msg__card :not(pre)>code{padding:.1em .35em;border-radius:5px;background:var(--og-surface-3);color:var(--og-text)}
#client_ticket_reply .og-msg__card a{overflow-wrap:anywhere}
#client_ticket_reply .og-msg__card img{max-width:100%;height:auto}
#client_ticket_reply .og-msg__card table{display:block;max-width:100%;overflow-x:auto}
/* Attachments: chips under the message */
#client_ticket_reply .og-msg__rule{display:none}
#client_ticket_reply .og-msg__files{margin-top:14px;padding-top:12px;border-top:1px solid var(--og-line-soft)}
#client_ticket_reply .og-msg__files p{display:flex;flex-wrap:wrap;gap:8px;margin:0}
#client_ticket_reply .og-msg__files a{display:inline-flex;align-items:center;gap:7px;max-width:100%;min-height:34px;padding:0 12px;border:1px solid var(--og-line);border-radius:var(--og-r-pill);background:var(--og-surface);color:var(--og-text)!important;font-size:var(--og-fs-sm);font-weight:var(--og-w-semi);text-decoration:none;overflow-wrap:anywhere;
  transition:border-color var(--og-t-state),background-color var(--og-t-state),transform var(--og-t-state) var(--og-e-out)}
#client_ticket_reply .og-msg__files a .fas{color:var(--og-text-3)}
#client_ticket_reply .og-msg__files a:hover{border-color:var(--og-accent);background:var(--og-accent-film);transform:translateY(-1px)}
#client_ticket_reply .image-attachments{margin-top:12px}
#client_ticket_reply .image-attachments img{border-radius:var(--og-r-control);border:1px solid var(--og-line);cursor:zoom-in;transition:transform var(--og-t-state) var(--og-e-out),box-shadow var(--og-t-state)}
#client_ticket_reply .image-attachments img:hover{transform:translateY(-2px);box-shadow:var(--og-shadow-2)}

/* 9e. Status events: a compact line in the timeline, not a banner. Text, time and author are Blesta's, unchanged */
#client_ticket_reply .og-event{display:flex;align-items:center;gap:12px;flex:none;max-width:none;margin:0 0 18px;padding:0 0 0 58px}
#client_ticket_reply .og-event::before,#client_ticket_reply .og-event::after{content:"";flex:1 1 0;height:1px;background:var(--og-line-soft)}
#client_ticket_reply .og-event::before{flex:0 0 12px}
#client_ticket_reply .og-event>.alert{flex:0 1 auto;margin:0;padding:5px 14px 5px 32px;border:1px solid var(--og-line-soft);border-radius:var(--og-r-pill);background:var(--og-surface-2);color:var(--og-text-2);font-size:var(--og-fs-xs);line-height:1.45}
#client_ticket_reply .og-event>.alert::before{left:11px;top:50%;width:14px;height:14px;margin-top:-7px}
#client_ticket_reply .og-event>.alert p{margin:0}
#client_ticket_reply .og-event>.alert em{color:var(--og-text-3);font-style:normal}
#client_ticket_reply .og-event>.alert em::before{content:"· ";opacity:.7}

@media (max-width:767.98px){
  #client_ticket_reply .og-msg{grid-template-columns:38px minmax(0,1fr);gap:0 10px}
  .og-av{width:38px;height:38px;font-size:.84375rem}
  #client_ticket_reply .og-msg>.og-msg__card{padding:14px 15px 15px}
  .og-msg__time{margin-left:0;width:100%}
  #client_ticket_reply .og-event{padding-left:0}
  #client_ticket_reply .og-event::before{flex:1 1 0}
}
