@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Unbounded:wght@300;400;500;600;700&display=swap');

:root{

  --navy:#0D172D; --blue:#2563EB; --teal:#007D89; --teal-600:#006571; --green:#6FAF34;
  --teal-700:#00525C; --lime:#78C03C;
  --grad:linear-gradient(90deg,#0C486C 0%,#00A8B4 52%,#78C03C 100%);

  --grad-btn:linear-gradient(92deg,#007D89 0%,#007D89 100%);
  --grad-btn-hover:linear-gradient(92deg,#006571 0%,#006571 100%);
  --grad-soft:linear-gradient(120deg,#DCEFF1,#EAF6F7 55%,#EEF7E6);

  --deep:#0C486C; --deep-2:#062638;

  --ink:#0D172D; --ink-2:#3C465D;
  --paper:#E6E9EF; --surface:#FFFFFF; --surface-2:#F6F7FA;
  --line:rgba(13,23,45,.16); --line-2:rgba(13,23,45,.07);

  --scrollbar-thumb:rgba(13,23,45,.32); --scrollbar-thumb-hover:rgba(13,23,45,.48);

  --muted:#5B6478; --muted-2:#5F6678;

  --teal-tint:#E3F3F5; --navy-tint:#E7E9EF; --green-tint:#EEF7E6;
  --pos:#0E7A37; --neg:#C0272C; --warn:#E8A13A; --info:#007D89;

  --warn-ink:#9A6200;
  --pos-tint:rgba(23,163,74,.10); --neg-tint:rgba(229,72,77,.10); --warn-tint:rgba(232,161,58,.13);

  --fill-strong:#0D172D; --fill-strong-hover:#26324D; --on-fill-strong:#FFFFFF;

  --voff-rule:#B5791E;

  --btn-shadow:0 1px 2px rgba(13,23,45,.07), 0 4px 10px -4px rgba(13,23,45,.14);
  --btn-shadow-hover:0 2px 4px rgba(13,23,45,.09), 0 8px 18px -6px rgba(13,23,45,.20);

  --on-accent:#FFFFFF;

  --accent-strong:#007D89;

  --btn-primary:var(--grad-btn);
  --btn-primary-hover:var(--grad-btn-hover);
  --btn-primary-ink:#FFFFFF;

  --r-sm:8px; --r:12px; --r-lg:30px; --r-xl:30px;

  --r-card:16px;

  --r-pill:999px;

  --fs-2xs:10px;
  --fs-xs:11px;
  --fs-sm:12px;
  --fs-base:14px;
  --fs-md:16px;
  --fs-lg:19px;
  --fs-xl:23px;
  --fs-2xl:30px;
  --fs-3xl:46px;

  --shadow:none;
  --shadow-lg:0 20px 50px rgba(13,23,45,.05);
  --tile-shadow:0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -4px rgba(0,0,0,.1);

  --card-shadow:0 1px 2px rgba(13,23,45,.06), 0 4px 8px -4px rgba(13,23,45,.10);
  --card-shadow-hover:0 1px 2px rgba(13,23,45,.07), 0 10px 20px -8px rgba(13,23,45,.18);
  --sb-w:254px;
}

:root[data-theme="dark"]{
  --navy:#C3CADB; --blue:#7FA6FF; --teal:#4FCAD4; --teal-600:#7DD8DF; --green:#93CC5A;
  --teal-700:#9FE3E8; --lime:#A6DB6E;
  --grad-soft:linear-gradient(120deg,#122C3A,#123A42 55%,#1D3320);

  --grad-btn:linear-gradient(92deg,#1FB5C2 0%,#1FB5C2 100%);
  --grad-btn-hover:linear-gradient(92deg,#3CC3CE 0%,#3CC3CE 100%);
  --ink:#E9EDF7; --ink-2:#C3CADB;
  --paper:#070C18; --surface:#111A2E; --surface-2:#18223B;
  --line:rgba(255,255,255,.10); --line-2:rgba(255,255,255,.06);

  --scrollbar-thumb:rgba(255,255,255,.30); --scrollbar-thumb-hover:rgba(255,255,255,.46);

  --muted:#9AA3BC; --muted-2:#8B94AE;
  --teal-tint:rgba(79,202,212,.16); --navy-tint:rgba(255,255,255,.07); --green-tint:rgba(120,192,60,.16);
  --pos:#8FE388; --neg:#FF8B8B; --warn:#EDB25A; --info:#4FCAD4; --warn-ink:#EDB25A;
  --pos-tint:rgba(51,192,106,.14); --neg-tint:rgba(240,101,106,.14); --warn-tint:rgba(237,178,90,.16);

  --fill-strong:#E9EDF7; --fill-strong-hover:#FFFFFF; --on-fill-strong:#070C18;

  --voff-rule:#EDB25A;
  --btn-shadow:0 0 0 1px rgba(255,255,255,.07), 0 4px 12px rgba(0,0,0,.40);
  --btn-shadow-hover:0 0 0 1px rgba(255,255,255,.14), 0 8px 20px rgba(0,0,0,.55);
  --on-accent:#0D172D; --accent-strong:#1FB5C2;
  --btn-primary:var(--grad-btn); --btn-primary-hover:var(--grad-btn-hover); --btn-primary-ink:#0D172D;
  --shadow:0 1px 2px rgba(0,0,0,.4); --shadow-lg:0 6px 24px rgba(0,0,0,.35);
}

*{box-sizing:border-box; margin:0; padding:0}

html{-webkit-text-size-adjust:100%; text-size-adjust:100%}
html,body{background:var(--paper); color:var(--ink);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',
    'Noto Sans Arabic','IBM Plex Sans Arabic','Segoe UI Historic',Tahoma,'Geeza Pro',sans-serif;
  -webkit-font-smoothing:antialiased; line-height:1.45; font-size:14px}
.disp{font-family:'Unbounded',sans-serif}
.tnum{font-variant-numeric:tabular-nums}

.bidi{unicode-bidi:plaintext; text-align:start}
.bidi-soft{unicode-bidi:plaintext}

[dir=rtl],.bidi:lang(ar){line-height:1.75}

[dir=rtl] .tnum,[dir=rtl] time{direction:ltr; unicode-bidi:isolate; display:inline-block}

[dir=rtl] ul,[dir=rtl] ol{padding-left:0; padding-right:1.15em}
a{color:inherit; text-decoration:none}
button{font-family:inherit}

::-webkit-scrollbar{width:14px; height:14px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb); border-radius:10px; border:3px solid transparent; background-clip:padding-box}
::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}

html{scrollbar-width:thin; scrollbar-color:var(--scrollbar-thumb) transparent}

.brand{display:flex; align-items:center; gap:11px}
.brand .mark{width:36px; height:36px; flex:none; display:block}
.brand .wm{font-family:'Unbounded',sans-serif; font-weight:500; font-size:19px; letter-spacing:.01em;
  background:var(--grad); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent}
.brand .wm .tm{font-size:9px; vertical-align:super; -webkit-text-fill-color:var(--muted-2)}
.brand-logo-img{height:auto; width:auto; max-width: 150px; display:block}
.brand .tagline{font-size:10px; color:var(--muted); letter-spacing:.02em}

.app{display:flex; min-height:100vh}

.sidebar{width:var(--sb-w); flex:none; background:linear-gradient(160deg,#091122,#182748);
  color:#fff; border-right:0;
  position:sticky; top:0; height:100vh; display:flex; flex-direction:column; overflow:hidden}

.sidebar .nav-item{color:rgba(255,255,255,.80)}
.sidebar .nav-item:hover{background:rgba(255,255,255,.08); color:#fff}
.sidebar .nav-item.active{background:rgba(255,255,255,.12); color:#fff; font-weight:600}
.sidebar .nav-item.active::before{background:var(--green)}
.sidebar .nav-item.active .ic{color:var(--green); opacity:1}
.sidebar .nav-group .gl{color:rgba(255,255,255,.62)}
.sidebar .nav-group + .nav-group{border-top-color:rgba(255,255,255,.10)}
.sidebar .nav-item.locked:hover{background:rgba(255,255,255,.08)}
.sidebar .nav-item.locked .lockic{color:rgba(255,255,255,.55)}
.sidebar .nav-item.locked:hover .lockic{color:var(--green)}

.sidebar .nav-item .cnt{background:var(--green); color:#0D172D; border-color:transparent}
.sidebar .nav-item.active .cnt{background:var(--green); color:#0D172D}
.sidebar .nav-item .cnt.hot{background:var(--neg); color:#fff}

.sidebar .switcher{background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.14)}
.sidebar .switcher:hover{border-color:rgba(255,255,255,.30); box-shadow:none}
.sidebar .switcher .cl-badge{background:rgba(255,255,255,.16); color:var(--on-fill-strong)}
.sidebar .switcher .cl-name{color:#fff}
.sidebar .switcher .cl-sub,.sidebar .switcher .chev{color:rgba(255,255,255,.62)}

.sidebar .switch-menu,.sidebar .lock-pop{color:var(--ink)}
.sidebar .switch-menu .switch-head{color:var(--muted)}
.sidebar .switch-menu .cl-badge{background:var(--fill-strong); color:var(--on-fill-strong)}
.sidebar .switch-item:hover{background:var(--surface-2)}

.sidebar .switcher .cl-badge.cl-logo{background:#fff; border-color:rgba(255,255,255,.30)}
.sidebar .switch-menu .cl-badge.cl-logo{background:#fff; border-color:var(--line)}

.sidebar .sb-foot{border-top-color:rgba(255,255,255,.10)}
.sidebar .am-card{background:rgba(255,255,255,.07)}
.sidebar .am-card:hover{box-shadow:none; background:rgba(255,255,255,.11)}
.sidebar .am-card .am-nm{color:#fff}
.sidebar .am-card .am-role,.sidebar .am-card .msg{color:rgba(255,255,255,.62)}

.sidebar .staff-link{background:rgba(255,255,255,.10); color:rgba(255,255,255,.92)}
.sidebar .staff-link:hover{background:rgba(255,255,255,.18); color:#fff}
.sidebar .staff-link.staff{background:rgba(255,255,255,.16); color:var(--on-fill-strong)}

.sidebar .sb-toggle{color:rgba(255,255,255,.62)}
.sidebar .sb-toggle:hover{background:rgba(255,255,255,.10); color:#fff; border-color:transparent}
.sidebar .nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.30); border-color:transparent}
.sidebar .nav::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.46)}
.sidebar .nav{scrollbar-color:rgba(255,255,255,.30) transparent}

html[data-sidebar="collapsed"] .sidebar .nav-item.active{background:rgba(255,255,255,.14); box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
html[data-sidebar="collapsed"] .sidebar .nav-item .cnt{background:var(--green)}
html[data-sidebar="collapsed"] .sidebar .nav-group + .nav-group{border-top-color:rgba(255,255,255,.10)}
html[data-sidebar="collapsed"] .sidebar .am-card:hover,
html[data-sidebar="collapsed"] .sidebar .staff-link:hover{background:rgba(255,255,255,.08)}

.sb-top{padding:16px 16px 10px}

.sb-toggle{position:absolute; top:12px; right:10px; z-index:2; width:26px; height:26px; padding:0;
  display:flex; align-items:center; justify-content:center; cursor:pointer;
  border:1px solid transparent; border-radius:8px; background:transparent; color:var(--muted-2);
  transition:background .12s ease, color .12s ease, border-color .12s ease}
.sb-toggle:hover{background:var(--surface-2); color:var(--ink); border-color:var(--line)}
.sb-toggle svg{width:15px; height:15px}

html[data-sidebar="collapsed"]{--sb-w:60px}

html[data-sidebar="collapsed"] .sidebar{width:60px}
html[data-sidebar="collapsed"] .sb-toggle{top:10px; right:auto; left:50%; transform:translateX(-50%); width:30px; height:28px}
html[data-sidebar="collapsed"] .sb-toggle svg{transform:scaleX(-1)}

html[data-sidebar="collapsed"] .brandwrap .wm,
html[data-sidebar="collapsed"] .brandwrap .brand,
html[data-sidebar="collapsed"] .switcher > div,
html[data-sidebar="collapsed"] .switcher .chev,
html[data-sidebar="collapsed"] .nav-group .gl,
html[data-sidebar="collapsed"] .nav-item > span:not(.cnt),
html[data-sidebar="collapsed"] .am-card > div,
html[data-sidebar="collapsed"] .am-card .msg,
html[data-sidebar="collapsed"] .lockic{display:none}

html[data-sidebar="collapsed"] .staff-link{font-size:0}
html[data-sidebar="collapsed"] .staff-link .ic{font-size:initial}

html[data-sidebar="collapsed"] .sb-top{padding:44px 8px 8px}
html[data-sidebar="collapsed"] .brandwrap{justify-content:center; gap:0}
html[data-sidebar="collapsed"] .brand-logo-img{max-width:30px; max-height:30px; object-fit:contain; margin:0 auto}

html[data-sidebar="collapsed"] .switcher{margin-top:10px; padding:0; border:0; background:none; justify-content:center}
html[data-sidebar="collapsed"] .switcher:hover{border:0; box-shadow:none}
html[data-sidebar="collapsed"] .switcher .cl-badge{width:30px; height:30px}
html[data-sidebar="collapsed"] .switch-menu{left:auto; right:-4px; width:230px}

html[data-sidebar="collapsed"] .nav{padding:4px 6px 10px}
html[data-sidebar="collapsed"] .nav-group{margin-top:6px}
html[data-sidebar="collapsed"] .nav-group + .nav-group{border-top:1px solid var(--line-2); padding-top:6px}
html[data-sidebar="collapsed"] .nav-item{justify-content:center; gap:0; padding:0; height:38px; border-radius:9px}
html[data-sidebar="collapsed"] .nav-item .ic{width:18px; height:18px}

html[data-sidebar="collapsed"] .nav-item .cnt{position:absolute; top:5px; right:7px; min-width:7px; width:7px; height:7px;
  padding:0; font-size:0; border-radius:50%; background:var(--teal)}
html[data-sidebar="collapsed"] .nav-item .cnt.hot{background:var(--neg)}
html[data-sidebar="collapsed"] .nav-item.active{background:var(--teal-tint); box-shadow:inset 0 0 0 1px rgba(0,125,137,.22)}

html[data-sidebar="collapsed"] .sb-foot{padding:8px 6px; gap:4px; align-items:stretch}
html[data-sidebar="collapsed"] .am-card,
html[data-sidebar="collapsed"] .staff-link{display:flex; justify-content:center; align-items:center;
  height:38px; padding:0; width:100%; border-radius:9px; border:0; background:transparent; box-shadow:none}
html[data-sidebar="collapsed"] .am-card:hover,
html[data-sidebar="collapsed"] .staff-link:hover{background:var(--surface-2); transform:none; box-shadow:none}
html[data-sidebar="collapsed"] .staff-link .ic{width:18px; height:18px}
html[data-sidebar="collapsed"] .am-card .av{width:28px; height:28px; font-size:11px}

html[data-sidebar="collapsed"] .staff-link.staff{background:var(--fill-strong); color:var(--on-fill-strong)}
html[data-sidebar="collapsed"] .staff-link.staff:hover{background:var(--fill-strong-hover); filter:none}

html[data-sidebar="collapsed"] .nav-lock .lock-pop{display:none}

.switcher{margin-top:14px; display:flex; align-items:center; gap:10px; padding:9px 11px;
  border:1px solid var(--line); border-radius:var(--r); cursor:pointer; background:var(--surface)}
.switcher:hover{border-color:var(--muted-2)}
.switcher .cl-badge{width:27px; height:27px; border-radius:7px; background:var(--fill-strong); color:var(--on-fill-strong);
  display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; flex:none; font-family:'Unbounded',sans-serif}
.switcher .cl-name{font-size:13.5px; font-weight:600; line-height:1.1}
.switcher .cl-sub{font-size:11px; color:var(--muted-2)}
.switcher .chev{margin-left:auto; color:var(--muted-2)}

.switch-wrap{position:relative}
.switch-wrap>summary{list-style:none; cursor:pointer}
.switch-wrap>summary::-webkit-details-marker{display:none}
.switch-wrap[open]>summary{border-color:var(--teal)}
.switch-wrap[open] .chev{transform:rotate(180deg)}
.switch-menu{position:absolute; z-index:40; left:0; right:0; margin-top:6px; padding:6px;
  background:var(--surface); border:1px solid var(--line); border-radius:12px;
  box-shadow:0 10px 30px rgba(20,32,43,.14); max-height:320px; overflow:auto}
.switch-head{font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:var(--muted-2); padding:7px 9px 5px}
.switch-item{display:flex; align-items:center; gap:9px; padding:8px 9px; border-radius:8px;
  font-size:13px; color:var(--ink); text-decoration:none}
.switch-item:hover{background:var(--surface-2)}
.switch-item.on{font-weight:600}

.switch-item .cl-badge{width:28px; height:22px; border-radius:6px; background:var(--fill-strong); color:var(--on-fill-strong);
  display:flex; align-items:center; justify-content:center; font-size:9.5px; font-weight:700; flex:none}

.cl-badge.cl-logo{background:var(--surface); border:1px solid var(--line); padding:2px; overflow:hidden}
.cl-badge.cl-logo img{width:100%; height:100%; object-fit:contain; display:block}

.cl-badge img{max-width:100%; max-height:100%}

.cl-badge.cl-row{width:24px; height:24px; display:inline-flex; align-items:center; justify-content:center;
  vertical-align:middle; margin-right:8px; border-radius:6px; color:#fff; font-size:10px; font-weight:700; flex:none}

.switch-tick{margin-left:auto; color:var(--teal-600); font-weight:700}
.switch-back{margin-top:4px; border-top:1px solid var(--line-2); border-radius:0 0 8px 8px;
  color:var(--teal-600); font-weight:600}

.switch-nm{min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.switch-more{margin-top:4px; border-top:1px solid var(--line-2); padding-top:4px}
.switch-more>summary{list-style:none; cursor:pointer}
.switch-more>summary::-webkit-details-marker{display:none}
.switch-more-btn{color:var(--muted); font-weight:600; font-size:12.5px}
.switch-more-btn .chev{margin-left:auto; transition:transform .15s ease}
.switch-more[open] .switch-more-btn .chev{transform:rotate(180deg)}
.switch-count{font-size:10.5px; font-weight:700; color:var(--muted); background:var(--surface-2); border:1px solid var(--line-2);
  border-radius:999px; padding:1px 7px}
.switch-more .switch-item:not(.switch-more-btn){opacity:.78}
.switch-more .switch-item:not(.switch-more-btn):hover, .switch-more .switch-item.on{opacity:1}
.switch-tag{margin-left:auto; font-size:10px; font-weight:600; color:var(--muted); background:var(--surface-2);
  border:1px solid var(--line-2); border-radius:999px; padding:1px 7px; white-space:nowrap}
.switch-tag + .switch-tick{margin-left:6px}

.nav{flex:1; overflow-y:auto; padding:6px 12px 12px}
.nav-group{margin-top:13px}
.nav-group .gl{font-size:10.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--muted-2); padding:0 10px 6px}
.nav-item{display:flex; align-items:center; gap:11px; padding:8px 10px; border-radius:9px; color:var(--muted);
  font-weight:500; font-size:13.5px; cursor:pointer; position:relative}
.nav-item:hover{background:var(--surface-2); color:var(--ink)}
.nav-item.active{background:var(--teal-tint); color:var(--navy); font-weight:600}
.nav-item.active::before{content:""; position:absolute; left:-12px; top:8px; bottom:8px; width:3px; border-radius:0 3px 3px 0; background:var(--teal)}
.nav-item .ic{width:16px; height:16px; flex:none; opacity:.9}
.nav-item .cnt{margin-left:auto; font-size:11px; font-weight:700; color:var(--muted); background:var(--surface-2);
  border:1px solid var(--line); padding:1px 7px; border-radius:var(--r-pill)}
.nav-item.active .cnt{background:#fff; border-color:transparent; color:var(--teal-600)}
:root[data-theme="dark"] .nav-item.active .cnt{background:var(--teal); color:var(--on-accent)}
.nav-item .cnt.hot{background:var(--neg); color:#fff; border-color:transparent}

.sb-foot{padding:12px; border-top:1px solid var(--line); display:flex; flex-direction:column; gap:8px}
.am-card{display:flex; align-items:center; gap:10px; padding:9px 10px; border-radius:var(--r); background:var(--surface-2)}
.am-card .av{width:30px; height:30px; border-radius:50%; background:linear-gradient(135deg,#0D172D,#007D89); color:#fff; display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; flex:none}
.am-card .am-nm{font-size:12.5px; font-weight:600; line-height:1.15}
.am-card .am-role{font-size:11px; color:var(--muted)}
.am-card .msg{margin-left:auto; color:var(--muted); cursor:pointer}
.staff-link{display:flex; align-items:center; gap:9px; padding:9px 10px; border-radius:var(--r); font-size:12.5px;
  font-weight:600; color:var(--navy); background:var(--navy-tint); cursor:pointer}
.staff-link.staff{color:var(--on-fill-strong); background:var(--fill-strong)}

.main{flex:1; min-width:0; display:flex; flex-direction:column}

.topbar{position:sticky; top:0; z-index:20; height:68px; background:color-mix(in srgb,var(--paper) 96%, transparent);
  backdrop-filter:blur(10px); border-bottom:0; display:flex; align-items:center; gap:14px; padding:0 30px}
.search{flex:1; max-width:440px; display:flex; align-items:center; gap:9px; padding:8px 13px; background:var(--surface);
  border:0; border-radius:var(--r-pill); color:var(--muted-2); font-size:13px; cursor:text;
  box-shadow:0 1px 2px rgba(13,23,45,.05), 0 4px 12px -6px rgba(13,23,45,.12)}
.search kbd{margin-left:auto; font-size:10.5px; background:var(--surface-2); border:1px solid var(--line); border-radius:5px; padding:1px 6px; color:var(--muted); font-family:inherit}

.search{position:relative}
.search input{flex:1; min-width:0; border:0; outline:0; background:transparent; padding:0;
  font:inherit; font-size:13px; color:var(--ink)}
.search input::placeholder{color:var(--muted-2)}
.search input::-webkit-search-cancel-button{-webkit-appearance:none}
.search:focus-within{box-shadow:0 0 0 3px var(--teal-tint)}

.sres{position:absolute; top:calc(100% + 7px); left:0; right:0; z-index:800; max-height:min(70vh,520px);
  overflow-y:auto; background:var(--surface); border:1px solid var(--line); border-radius:12px;
  box-shadow:var(--shadow-lg,0 18px 46px rgba(11,32,39,.16)); padding:6px}
.sres .sgrp{font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:var(--muted-2); padding:9px 11px 5px}
.sres a{display:block; padding:8px 11px; border-radius:8px; text-decoration:none; color:inherit}
.sres a:hover,.sres a.on{background:var(--surface-2)}
.sres .st{font-size:13px; font-weight:600; color:var(--ink); line-height:1.35}
.sres .ss{font-size:11.5px; color:var(--muted); margin-top:2px}
.sres .smsg{padding:14px 12px; font-size:12.5px; color:var(--muted); text-align:center}
.tb-right{margin-left:auto; display:flex; align-items:center; gap:8px}
.live{display:flex; align-items:center; gap:7px; font-size:12px; font-weight:600; color:var(--teal-600); background:var(--teal-tint); padding:6px 11px; border-radius:var(--r-pill)}
.live .pulse{width:7px; height:7px; border-radius:50%; background:var(--teal); position:relative}
.live .pulse::after{content:""; position:absolute; inset:-4px; border-radius:50%; border:2px solid var(--green); opacity:.55}

.live.off{color:var(--muted); background:var(--surface-2)}
.live.off .pulse{background:var(--muted-2)}
.live.off .pulse::after{display:none}
.tb-icon{width:38px; height:38px; border-radius:50%; border:0; background:var(--surface);
  box-shadow:0 1px 2px rgba(13,23,45,.05), 0 4px 12px -6px rgba(13,23,45,.12);
  display:flex; align-items:center; justify-content:center; color:var(--muted); cursor:pointer; position:relative}
.tb-icon:hover{color:var(--ink); background:var(--surface-2)}
.tb-icon .badge{position:absolute; top:-3px; right:-3px; width:8px; height:8px; border-radius:50%; background:var(--neg); border:2px solid var(--paper)}

.menu-btn{display:none; flex:none; margin-right:4px}
.sb-backdrop{display:none}
.tb-ava{width:36px; height:36px; border-radius:50%; background:var(--fill-strong); color:var(--on-fill-strong); font-weight:700; font-size:13px; display:flex; align-items:center; justify-content:center; cursor:pointer}

@media(max-width:640px){
  .topbar{padding:0 14px; gap:8px}
  .tb-right{gap:4px}
  .live{display:none}
  .search kbd{display:none}

  .search{min-width:0}
}

.ava-wrap{position:relative}
.ava-wrap>summary{list-style:none}
.ava-wrap>summary::-webkit-details-marker{display:none}
.ava-wrap[open]>summary{box-shadow:0 0 0 3px var(--teal-tint)}
.ava-menu{position:absolute; z-index:80; right:0; top:calc(100% + 8px); width:230px; padding:6px;
  background:var(--surface); border:1px solid var(--line); border-radius:12px;
  box-shadow:0 12px 32px rgba(16,24,40,.16)}
.ava-head{padding:9px 10px 10px; border-bottom:1px solid var(--line-2); margin-bottom:6px}
.ava-nm{font-size:13px; font-weight:600; color:var(--ink); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.ava-em{font-size:11.5px; color:var(--muted-2); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.ava-item{display:flex; align-items:center; gap:9px; padding:9px 10px; border-radius:8px;
  font-size:13px; font-weight:500; color:var(--ink); text-decoration:none}
.ava-item:hover{background:var(--surface-2)}
.ava-item svg{color:var(--muted-2); flex:none}
.ava-out{color:var(--neg)} .ava-out svg{color:var(--neg)}

.notif-wrap>summary{cursor:pointer}
.notif-bell, .msg-bell{position:relative}

.notif-bell .badge.on, .msg-bell .badge.on{position:absolute; top:-3px; right:-3px; min-width:16px; height:16px;
  padding:0 4px; border-radius:var(--r-pill); background:var(--neg); color:#fff;
  font-size:9.5px; font-weight:700; line-height:16px; text-align:center;
  border:2px solid var(--surface); box-sizing:content-box}
.notif-menu{width:330px; max-height:min(70vh,460px); overflow:auto}

@media(max-width:400px){
  .ava-menu, .notif-menu{width:calc(100vw - 24px); max-width:330px}
}
.notif-none{padding:14px 10px; font-size:12px; color:var(--muted-2); line-height:1.55}
.notif-item{display:flex; gap:9px; padding:9px 10px; border-radius:8px; text-decoration:none;
  color:var(--ink); align-items:flex-start}
.notif-item:hover{background:var(--surface-2)}

.notif-item.unread{background:var(--teal-tint)}
.notif-item.unread .notif-t{font-weight:600}
.notif-tx{display:flex; flex-direction:column; gap:2px; min-width:0}
.notif-t{font-size:12.5px; line-height:1.4; color:var(--ink)}
.notif-m{font-size:11px; color:var(--muted-2)}

.notif-dot{width:7px; height:7px; border-radius:50%; flex:none; margin-top:5px; background:var(--muted-2)}
.notif-dot.pos{background:var(--pos)} .notif-dot.neg{background:var(--neg)}
.lnk{background:none; border:0; padding:0; font:inherit; font-size:11.5px; font-weight:600;
  color:var(--teal-600); cursor:pointer}
.lnk:hover{text-decoration:underline}

.notif-menu{width:420px; max-height:min(76vh,600px); padding:0; overflow:hidden; display:flex; flex-direction:column}

@media(max-width:600px){ .notif-menu{position:fixed; left:12px; right:12px; top:64px; width:auto; max-width:none; max-height:calc(100dvh - 84px)} }
.nf-head{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:16px 18px 14px; border-bottom:1px solid var(--line)}
.nf-h{font-size:17px; font-weight:700; color:var(--ink)}
.nf-gear{display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border:1px solid var(--line); border-radius:9px; color:var(--ink-2)}
.nf-gear:hover{background:var(--surface-2); color:var(--ink)}
.nf-list{overflow:auto; flex:1; min-height:0}
.nf-list .notif-none{padding:22px 18px}
.nf-item{display:flex; flex-direction:column; gap:5px; padding:14px 18px; border-bottom:1px solid var(--line-2); text-decoration:none; color:var(--ink)}
.nf-item:hover{background:var(--surface-2)}
.nf-r1{display:flex; align-items:baseline; justify-content:space-between; gap:12px}
.nf-t{font-size:13.5px; font-weight:500; line-height:1.4; color:var(--ink); position:relative; min-width:0}
.nf-item.unread .nf-t{font-weight:700}
.nf-dot{position:absolute; left:-11px; top:6px; width:6px; height:6px; border-radius:50%; background:var(--accent-strong)}
.nf-dot.pos{background:var(--pos)} .nf-dot.neg{background:var(--neg)}
.nf-when{font-size:12px; color:var(--muted-2); white-space:nowrap; flex:none}
.nf-b{font-size:12.5px; line-height:1.45; color:var(--ink-2); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
.nf-m{font-size:12px; color:var(--muted-2); display:flex; align-items:center; gap:8px; flex-wrap:wrap}

.nf-more{display:inline-flex; align-items:center; gap:5px; font-size:11.5px; font-weight:700; line-height:1;
  color:var(--btn-primary-ink, #fff); background:var(--btn-primary, #12A150); border-radius:999px; padding:4px 9px 4px 8px; white-space:nowrap}
.nf-more::before{content:''; width:12px; height:12px; flex:none; background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 3.5A1.5 1.5 0 013.5 2h7A1.5 1.5 0 0112 3.5v4A1.5 1.5 0 0110.5 9H6l-2.6 2V9h0A1.5 1.5 0 012 7.5zM13.5 6H14a1 1 0 011 1v4a1 1 0 01-1 1h-.5v2l-2.4-2H8a1 1 0 01-1-1v-.5h3.5A2.5 2.5 0 0013 8z' fill='black'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 3.5A1.5 1.5 0 013.5 2h7A1.5 1.5 0 0112 3.5v4A1.5 1.5 0 0110.5 9H6l-2.6 2V9h0A1.5 1.5 0 012 7.5zM13.5 6H14a1 1 0 011 1v4a1 1 0 01-1 1h-.5v2l-2.4-2H8a1 1 0 01-1-1v-.5h3.5A2.5 2.5 0 0013 8z' fill='black'/%3E%3C/svg%3E") center/contain no-repeat}
.nf-more[hidden]{display:none}

.nf-more.is-quiet{color:var(--ink-2); background:var(--surface-2); box-shadow:inset 0 0 0 1px var(--line); font-weight:600}
.nf-foot{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 14px; border-top:1px solid var(--line); background:var(--surface)}
.nf-all{display:inline-flex; align-items:center; gap:7px; padding:7px 12px; border:1px solid var(--line); border-radius:8px; background:var(--surface-2); color:var(--ink-2); font:inherit; font-size:12.5px; font-weight:500; cursor:pointer}
.nf-all:hover{color:var(--ink); border-color:var(--ink-2)}
.nf-see{font-size:12.5px; font-weight:600; color:var(--accent-strong); text-decoration:none}
.nf-see:hover{text-decoration:underline}

.nlist{display:flex; flex-direction:column}
.nrow{display:flex; gap:11px; align-items:flex-start; padding:12px 4px; text-decoration:none;
  color:var(--ink); border-top:1px solid var(--line-2)}
.nlist>.nrow:first-child{border-top:0}
.nrow:hover{background:var(--surface-2)}

.nrow.was-new{border-left:2px solid var(--teal); padding-left:10px; border-radius:0}
.nrow-b{display:flex; flex-direction:column; gap:3px; min-width:0; flex:1}
.nrow-t{font-size:13px; font-weight:600; line-height:1.4}
.nrow-d{font-size:12px; color:var(--muted); line-height:1.55}
.nrow-m{font-size:11px; color:var(--muted-2); display:flex; align-items:center; gap:5px; flex-wrap:wrap}
.nrow .notif-dot{margin-top:6px}

.nlist>.ngroup{border-top:1px solid var(--line-2)}
.nlist>.ngroup:first-child{border-top:0}
.ngroup>.nrow{border-top:0}
.nmore{margin:-4px 0 10px 27px}
.nmore>summary{display:inline-flex; align-items:center; gap:6px; cursor:pointer; list-style:none; font-size:11.5px; font-weight:700;
  color:var(--btn-primary-ink, #fff); background:var(--btn-primary, #12A150); border-radius:999px; padding:4px 11px}
.nmore>summary::-webkit-details-marker{display:none}
.nmore>summary::after{content:''; width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px); transition:transform .15s ease}
.nmore[open]>summary::after{transform:rotate(-135deg) translate(-1px,-1px)}
.nmore-list{display:flex; flex-direction:column; margin-top:8px; border-left:2px solid var(--line); padding-left:12px; gap:10px}
.nmore-row{display:flex; flex-direction:column; gap:2px}
.nmore-row.was-new{border-left:2px solid var(--teal); margin-left:-14px; padding-left:12px}
.nmore-t{font-size:12px; font-weight:600; color:var(--ink)}
.nmore-d{font-size:12px; color:var(--muted); line-height:1.5}
.nmore-m{font-size:11px; color:var(--muted-2)}

.content{padding:24px; max-width:1460px; width:100%; margin:0 auto}

.pg-head{display:flex; align-items:flex-start; gap:20px; margin-bottom:26px; flex-wrap:wrap}
.pg-head .eyebrow{font-size:11.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--teal-600); margin-bottom:6px}
.pg-head .greet,.pg-head h1{font-family:'Unbounded',sans-serif; font-size:30px; font-weight:400; letter-spacing:-.022em; line-height:1.15}
.pg-head .sub{color:var(--muted); font-size:13.5px; margin-top:4px; max-width:680px}
.pg-head .sub b{color:var(--pos); font-weight:600}

.pg-head .sub b.down{color:var(--neg)}
.pg-head .ph-right{margin-left:auto; display:flex; align-items:center; gap:10px}

@media(max-width:480px){
  .pg-head .ph-right{flex-wrap:wrap; row-gap:8px}
}

.seg{display:inline-flex; background:var(--surface); border:1px solid var(--line); border-radius:10px; padding:3px}
.seg button{border:0; background:transparent; font-size:12.5px; font-weight:600; color:var(--muted); padding:6px 13px; border-radius:7px; cursor:pointer}
.seg button.on{background:var(--fill-strong); color:var(--on-fill-strong)}

.btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:13px; font-weight:600;
  padding:9px 14px; border-radius:10px; border:1px solid var(--line); background:var(--surface); color:var(--ink); cursor:pointer}
.btn:hover{border-color:var(--muted-2)}
.btn .ic{width:15px; height:15px}

[aria-busy="true"]{cursor:wait; opacity:.75}
.btn-spin{width:13px; height:13px; border-radius:50%; flex:none;
  border:2px solid currentColor; border-right-color:transparent; opacity:.6;
  animation:btn-spin .7s linear infinite}
@keyframes btn-spin{to{transform:rotate(360deg)}}

.btn-primary{background:var(--btn-primary); color:var(--btn-primary-ink); border-color:transparent}
.btn-primary:hover{background:var(--btn-primary-hover)}
.btn-teal{background:var(--accent-strong); color:var(--on-accent); border-color:var(--accent-strong)}

.btn-grad{background:linear-gradient(90deg,#0D172D,#007D89); color:#fff; border:0}
.btn-sm{font-size:12.5px; padding:8px 12px}
.btn-ghost{background:transparent}

.chip{display:inline-flex; align-items:center; gap:4px; font-size:11.5px; font-weight:700; padding:3px 8px; border-radius:var(--r-pill)}
.chip.pos{background:var(--pos-tint); color:var(--pos)} .chip.neg{background:var(--neg-tint); color:var(--neg)}
.chip.warn{background:var(--warn-tint); color:#B5791E} .chip.flat{background:var(--surface-2); color:var(--muted)}
.chip.teal{background:var(--teal-tint); color:var(--teal-600)} .chip.navy{background:var(--navy-tint); color:var(--navy)}

.filter-row .chip{text-decoration:none; color:var(--muted); background:var(--surface-2);
  border-color:var(--line); padding:5px 11px; cursor:pointer; transition:background .12s, border-color .12s}
.filter-row .chip:hover{border-color:var(--muted-2); color:var(--ink)}
.filter-row .chip.teal{background:var(--teal-tint); color:var(--teal-600); border-color:transparent}
.filter-row .chip.teal:hover{color:var(--teal-600)}

.tag{font-size:11px; font-weight:700; padding:3px 9px; border-radius:var(--r-pill)}
.tag.pending{background:var(--warn-tint); color:#B5791E} .tag.paid{background:var(--pos-tint); color:var(--pos)}
.tag.open{background:var(--teal-tint); color:var(--teal-600)} .tag.draft{background:var(--surface-2); color:var(--muted)}
.tag.overdue{background:var(--neg-tint); color:var(--neg)}
.pri{font-size:10.5px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; padding:2px 8px; border-radius:var(--r-pill)}
.pri.high{background:var(--neg-tint); color:var(--neg)} .pri.med{background:var(--warn-tint); color:#B5791E} .pri.low{background:var(--surface-2); color:var(--muted)}
.dot{width:7px;height:7px;border-radius:50%;display:inline-block}

.card{background:var(--surface); border:0; border-radius:var(--r-card); box-shadow:var(--card-shadow)}
.card-h{display:flex; align-items:center; gap:10px; padding:20px 22px 0}

.card-h + .rangebar{margin-top:16px}
.card-h h3{font-family:'Unbounded',sans-serif; font-size:17px; font-weight:400; letter-spacing:-.01em}
.card-h .hint{font-size:12px; color:var(--muted-2)}

.bh-score .score-hero{flex-direction:column; align-items:stretch; gap:22px; flex:none}

.bh-score .sh-left{display:flex; flex-direction:row; align-items:flex-end;
  justify-content:space-between; gap:24px; flex-wrap:wrap}
.bh-score .sh-fig{flex:0 0 auto; min-width:0}
.bh-score .sh-say{flex:1 1 220px; min-width:0; display:flex; flex-direction:column;
  align-items:flex-start; gap:12px; padding-bottom:2px}
.bh-score .sh-say .rr-meta{max-width:34ch}
.bh-score .sh-say .vd-act{margin:0}

.bh-score .breakdown{flex:none; grid-auto-rows:auto}
.bh-score .bd{display:block}

@media(max-width:900px){
  .bh-score .sh-left{flex-direction:column; align-items:flex-start}
  .bh-score .sh-say{flex:0 0 auto}
}

.bh-case-list{display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px; padding-top:12px; align-content:start}

.bh-case-list > .rr-meta{grid-column:1 / -1}

.bh-said{display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden}

.bh-case-list .bubble{display:flex; flex-direction:column}
.bh-case-list .bubble > .rr-meta:last-child{margin-top:auto}

@media(max-width:1100px){ .bh-case-list{grid-template-columns:1fr} }

.bh-claim{font-size:13.5px; font-weight:600; color:var(--ink); line-height:1.45}

.bh-said{margin-top:7px; font-size:12px; line-height:1.55; color:var(--muted)}
.bh-none{font-size:13px; color:var(--muted); font-style:italic}

.bh-engines{font-weight:600; font-size:var(--fs-sm); display:inline-flex; align-items:center; gap:6px; flex-wrap:wrap}
.bh-engines .bh-plus{color:var(--muted-2); font-weight:400; margin:0 1px}

.bh-stale{color:var(--muted-2); font-style:italic}

.card-h-stack{flex-wrap:wrap; row-gap:2px}
.card-h-stack h3{flex:0 0 auto; white-space:nowrap}
.card-h-stack .hint{flex:1 0 100%; order:3; line-height:1.45}
.card-h-stack .rr-end{margin-left:auto}

@media (max-width: 720px){ .card-h-stack h3{white-space:normal} }

.fold>summary{list-style:none; cursor:pointer; padding-bottom:20px;
  border-radius:var(--r-card); transition:background .12s ease}
.fold>summary::-webkit-details-marker{display:none}
.fold>summary:hover{background:var(--surface-2)}
.fold>summary:focus-visible{outline:none; box-shadow:var(--ring)}

.fold[open]>summary{padding-bottom:14px; background:transparent}
.fold[open]>summary:hover{background:var(--surface-2)}

.fold-x{flex:0 0 auto; margin-left:12px; color:var(--muted-2); display:inline-flex;
  transition:transform .15s ease}
.fold[open] .fold-x{transform:rotate(180deg)}
.fold>summary:hover .fold-x{color:var(--ink)}
.card-h .more{margin-left:auto; color:var(--teal-600); font-size:12.5px; font-weight:600; cursor:pointer}
.card-p{padding:22px}

.grid{display:grid; gap:16px}
.g-2{grid-template-columns:repeat(2,minmax(0,1fr))} .g-3{grid-template-columns:repeat(3,minmax(0,1fr))} .g-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g-main{grid-template-columns:minmax(0,1fr) 336px; align-items:start}
.col{display:flex; flex-direction:column; gap:16px}

.kpis{display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:24px}
.kpi{padding:20px 22px}

.kpi .top{display:flex; align-items:center; gap:8px; margin-bottom:12px}
.kpi .top .lbl{margin-right:auto}
.kpi .top .ihelp{order:9}

.kpis{display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0;
  background:var(--surface); border:1px solid var(--line); border-radius:8px;
  box-shadow:0 0 1px 0 rgba(13,23,45,.07), 0 1px 3px 0 rgba(13,23,45,.07)}
.kpi{background:transparent; border:0; border-right:1px solid var(--line-2);
  border-radius:0; box-shadow:none; padding:18px 20px 19px; position:relative}
.kpi:last-child{border-right:0}

.r-good .meter>span{background:#0E7A37}
.r-ok .meter>span{background:#B8770B}
.r-bad .meter>span{background:#C0272C}

.t-up  {background:#EFF7F2}
.t-down{background:#FBF1F1}
.t-up .meter,.t-down .meter{background:rgba(13,23,45,.08)}

:root[data-theme="dark"] .t-up  {background:#183A26}
:root[data-theme="dark"] .t-down{background:#572325}
.kpis .kpi:first-child{border-radius:8px 0 0 8px}
.kpis .kpi:last-child{border-radius:0 8px 8px 0}

.card.strip{background:var(--surface); box-shadow:none;
  border:1px solid var(--line); border-radius:8px; overflow:visible}
.card.strip .cell{padding:17px 20px; border-right:1px solid var(--line-2)}
.card.strip .cell:last-child{border-right:0}
.card.strip .cl{color:var(--muted); font-size:11.5px}
.card.strip .cv{font-size:21px; margin-top:5px}

.k-violet{--k:#007D89} .k-lime{--k:#78C03C}

.kpi .lbl{font-size:12px; color:var(--muted); font-weight:500}
.kpi .val{font-family:'Unbounded',sans-serif; font-weight:400; font-size:30px; letter-spacing:-.02em; line-height:1}
.kpi .val small{font-size:15px; color:var(--muted-2); font-weight:500}
.kpi .foot{font-size:11.5px; color:var(--muted-2); margin-top:9px}
.meter{height:6px; background:var(--surface-2); border-radius:var(--r-pill); overflow:hidden; margin-top:13px}
.meter>span{display:block; height:100%; border-radius:var(--r-pill); background:var(--teal)}

.meter>span.grad{background:var(--teal)}
.spark{margin-top:11px; display:block}
.stack{height:8px; border-radius:var(--r-pill); overflow:hidden; display:flex; margin-top:14px}
.stack i{display:block; height:100%}
.legend-s{display:flex; gap:14px; margin-top:10px; font-size:11.5px; color:var(--muted); flex-wrap:wrap}
.legend-s span{display:flex; align-items:center; gap:5px}
.sd{width:8px; height:8px; border-radius:2px; display:inline-block}

.strip{display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); overflow:hidden}
.strip .cell{padding:19px 22px; border-right:1px solid var(--line-2)}
.strip .cell:last-child{border-right:0}
.strip .cl{font-size:11.5px; color:var(--muted); font-weight:500}
.strip .cv{font-family:'Unbounded',sans-serif; font-size:27px; font-weight:400; margin-top:7px; letter-spacing:-.01em; display:flex; align-items:baseline; gap:7px}
.strip .cv .mini{font-size:11px; font-weight:700}
.mini.pos{color:var(--pos)} .mini.neg{color:var(--neg)} .mini.muted{color:var(--muted-2)}

.plat{padding:6px 18px 14px}
.plat-row{display:grid; grid-template-columns:170px minmax(0,1fr) 66px; align-items:center; gap:14px; padding:9px 0; border-bottom:1px solid var(--line-2)}
.plat-row:last-child{border-bottom:0}
.plat-name{display:flex; align-items:center; gap:10px; min-width:0}
.mono{width:27px; height:27px; border-radius:7px; background:var(--surface-2); border:1px solid var(--line); display:flex; align-items:center; justify-content:center; font-size:9.5px; font-weight:700; color:var(--ink-2); flex:none}

.emk{width:27px; height:27px; border-radius:7px; background:var(--surface-2);
  border:1px solid var(--line); display:inline-flex; align-items:center;
  justify-content:center; flex:none; vertical-align:middle}
.emk-sm{width:20px; height:20px; border-radius:5px}
.emk-lg{width:32px; height:32px; border-radius:8px}

.emk-bare{background:none; border:0; width:auto; height:auto; margin-right:5px}

.lgi .emk-bare, .fc-n .emk-bare{margin-right:4px}
.lgi .emk-bare svg, .fc-n .emk-bare svg{vertical-align:-3px}

.emk-img{display:block; object-fit:contain}

.emk-svg{display:inline-flex; color:var(--ink)}
.emk-svg svg{width:var(--emk-g,17px); height:var(--emk-g,17px); display:block}
.emk-abbr{font-size:9.5px; font-weight:700; color:var(--ink-2); letter-spacing:.02em}
.emk-sm .emk-abbr{font-size:8px}
.plat-name .nm{font-size:13px; font-weight:600; white-space:nowrap}
.plat-name .mc{font-size:11px; color:var(--muted-2)}
.bar{height:8px; background:var(--surface-2); border-radius:var(--r-pill); overflow:hidden}
.bar>span{display:block; height:100%; background:var(--teal); border-radius:var(--r-pill)}
.bar>span.grad{background:var(--teal)}
.plat-val{text-align:right; font-family:'Unbounded',sans-serif; font-weight:400; font-size:15px}
.plat-val .d{font-size:10.5px; font-weight:700; display:block; margin-top:1px}
.d.pos{color:var(--pos)} .d.neg{color:var(--neg)} .d.flat{color:var(--muted-2)}

.chart{width:100%; height:auto; display:block}

.chart.c-sm{height:144px} .chart.c-md{height:176px} .chart.c-lg{height:190px}
.legend{display:flex; gap:18px; margin-bottom:6px; font-size:12px; color:var(--muted); flex-wrap:wrap}
.legend span{display:flex; align-items:center; gap:7px}
.lg{width:16px; height:0; border-top:2.5px solid var(--teal)} .lg.navy{border-color:var(--navy)} .lg.dash{border-top:2px dashed var(--muted-2)}
.axis-x{display:flex; justify-content:space-between; font-size:11px; color:var(--muted-2); margin-top:8px}

.rangebar{display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px;
  padding:11px 18px; border-bottom:1px solid var(--line); background:var(--surface-2)}
.rangebar .presets{display:inline-flex; gap:4px; background:var(--surface);
  border:1px solid var(--line); border-radius:10px; padding:3px}
.rangebar .rp{font-size:12px; font-weight:600; color:var(--muted); padding:5px 11px;
  border-radius:7px; text-decoration:none; white-space:nowrap}
.rangebar .rp:hover{background:var(--surface-2); color:var(--ink)}
.rangebar .rp.on{background:var(--fill-strong); color:var(--on-fill-strong)}
.rangebar .custom{display:inline-flex; align-items:center; gap:7px; margin-left:auto; flex-wrap:wrap}
.rangebar .custom label{font-size:12px; color:var(--muted-2)}
.rangebar .custom input[type=date]{font-family:inherit; font-size:12.5px; color:var(--ink);
  background:var(--surface); border:1px solid var(--line); border-radius:9px; padding:6px 9px}
.rangebar .custom input[type=date]:focus{outline:none; border-color:var(--teal)}
.rangebar .rp.clear{border:1px solid var(--line); background:var(--surface)}
@media (max-width:720px){ .rangebar .custom{margin-left:0} }

.tbl{width:100%; border-collapse:separate; border-spacing:0; font-size:13px}
.tbl th{text-align:left; font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--muted-2); padding:11px 14px; border-bottom:1px solid var(--line); white-space:nowrap}
.tbl td{padding:12px 14px; border-bottom:1px solid var(--line-2); vertical-align:middle}
.tbl tr:last-child td{border-bottom:0}
.tbl tbody tr:hover{background:var(--surface-2)}

.tbl.kw-split .kw-grp td{background:var(--surface-2); padding-top:9px; padding-bottom:9px; font-size:12.5px; color:var(--ink)}
.tbl.kw-split .kw-more td{padding-top:8px; padding-bottom:10px; font-size:12.5px}
.tbl.kw-split tbody tr.kw-more:hover{background:transparent}

.tbl tbody tr:target{background:var(--surface-2); box-shadow:inset 3px 0 0 var(--teal-600)}
.tbl .num{font-variant-numeric:tabular-nums; font-family:'Unbounded',sans-serif; font-weight:600}
.tbl .strong{font-weight:600}

.tbl-frozen{max-height:70vh; overflow:auto}
.tbl-frozen .tbl th{position:sticky; top:0; z-index:2; background:var(--surface)}

.rowact-cell{text-align:right; white-space:nowrap; width:1%}
.rowact{display:inline-flex; gap:6px; justify-content:flex-end}
.rowact-b{display:inline-flex; align-items:center; gap:6px; padding:6px 10px; border-radius:8px;
  border:1px solid var(--line); background:var(--surface); color:var(--muted);
  font-size:12px; font-weight:600; text-decoration:none; line-height:1;
  transition:border-color .12s ease, color .12s ease, background .12s ease}
.rowact-b:hover{border-color:var(--teal); color:var(--teal-600); background:var(--teal-tint)}
.rowact-b svg{width:14px; height:14px; flex:none}

@media (max-width:1180px){
  .rowact-b{padding:7px}
  .rowact-b span{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap}
}

.rank{display:inline-flex; width:24px; height:24px; border-radius:7px; background:var(--surface-2); align-items:center; justify-content:center; font-family:'Unbounded',sans-serif; font-weight:400; font-size:12px}
.rank.win{background:var(--pos-tint); color:var(--pos)} .rank.lose{background:var(--neg-tint); color:var(--neg)}

.rank.unsure{background:transparent; color:var(--muted-2); border:1px dashed var(--line-2); font-style:italic}
.unsure-note{color:var(--muted-2); font-size:10.5px; margin-top:3px; letter-spacing:.01em}
.unsure-why{color:var(--muted-2); display:inline-block; max-width:42ch; line-height:1.45}
.unsure-note[title], .kw-nf[title]{cursor:help; text-decoration:underline dotted; text-underline-offset:3px}

.tabs{display:flex; gap:4px; border-bottom:1px solid var(--line); margin-bottom:0}
.tab{padding:11px 14px; font-size:13px; font-weight:600; color:var(--muted); cursor:pointer; border-bottom:2px solid transparent; margin-bottom:-1px}

@media(max-width:480px){
  .tabs{overflow-x:auto; -webkit-overflow-scrolling:touch}
  .tab{white-space:nowrap; flex:0 0 auto}
}
.tab:hover{color:var(--ink)}
.tab.on{color:var(--navy); border-bottom-color:var(--teal)}
.tab .pilln{font-size:11px; background:var(--surface-2); border-radius:var(--r-pill); padding:1px 7px; margin-left:6px; color:var(--muted)}

.recs{display:flex; flex-direction:column; gap:10px}
.rec{display:flex; gap:13px; padding:14px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface)}
.rec .ricon{width:32px; height:32px; border-radius:9px; flex:none; display:flex; align-items:center; justify-content:center}
.rec.alert .ricon{background:var(--neg-tint); color:var(--neg)}
.rec.opp .ricon{background:var(--teal-tint); color:var(--teal-600)}
.rec.content .ricon{background:var(--warn-tint); color:#B5791E}
.rec.win .ricon{background:var(--pos-tint); color:var(--pos)}
.rec .rtitle{font-size:13px; font-weight:600; margin-bottom:3px}
.rec .rbody{font-size:12.5px; color:var(--muted); line-height:1.5}
.rec .rmeta{display:flex; align-items:center; gap:10px; margin-top:9px; flex-wrap:wrap}
.rec .act{font-size:12px; font-weight:600; color:var(--teal-600); cursor:pointer; margin-left:auto}

.rr .rr-lbl{font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--muted-2)}
.rr .rr-title{font-size:15px; font-weight:600; margin-top:9px; font-family:'Unbounded',sans-serif}
.rr .rr-meta{font-size:12.5px; color:var(--muted); margin-top:4px}
.rr-actions{display:flex; gap:8px; margin-top:14px}

.rr-3{display:grid; grid-template-columns:repeat(var(--rr-n,3),minmax(0,1fr)); gap:12px; margin-top:12px}

@media(max-width:420px){ .rr-3{grid-template-columns:1fr} }
.rr-3-v{font-family:'Unbounded',sans-serif; font-weight:400; font-size:26px; letter-spacing:-.02em; line-height:1}
.rr-3-v small{font-size:13px; color:var(--muted-2); margin-left:1px}
.rr-3-l{font-size:12px; color:var(--muted); margin-top:6px}
.row-between{display:flex; align-items:center; justify-content:space-between}

@media(max-width:640px){
  .row-between{flex-wrap:wrap; row-gap:8px}
}
.inv-amt{font-family:'Unbounded',sans-serif; font-size:26px; font-weight:400; letter-spacing:-.01em}

.feed{padding:6px 18px 8px}
.fi{display:flex; gap:11px; padding:11px 0; border-bottom:1px solid var(--line-2)}
.fi:last-child{border-bottom:0}
.fav{width:28px; height:28px; border-radius:50%; flex:none; display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; color:#fff}

.av-stack{display:flex; align-items:center}
.av-stack>span{margin-left:-8px; border:2px solid var(--paper); box-sizing:content-box; position:relative}
.av-stack>span:first-child{margin-left:0}
.av-stack>*{position:relative}
.av-stack>*:nth-child(1){z-index:5} .av-stack>*:nth-child(2){z-index:4}
.av-stack>*:nth-child(3){z-index:3} .av-stack>*:nth-child(4){z-index:2}
.av-stack>*:nth-child(5){z-index:1}
.av-more{margin-left:-8px; width:20px; height:20px; border-radius:50%; flex:none;
  border:2px solid var(--paper); box-sizing:content-box; background:var(--surface-2);
  color:var(--muted-2); font-size:9.5px; font-weight:700;
  display:flex; align-items:center; justify-content:center}
.fi .ft{font-size:12.5px; line-height:1.45} .fi .ft b{font-weight:600}
.fi .ftime{font-size:11px; color:var(--muted-2); margin-top:2px}
.feed-foot{padding:12px 18px; border-top:1px solid var(--line); text-align:center; font-size:12.5px; font-weight:600; color:var(--teal-600); cursor:pointer}

.timeline{display:flex; flex-direction:column; gap:0}
.tl-month{display:grid; grid-template-columns:120px minmax(0,1fr); gap:20px; padding:18px 0; border-bottom:1px solid var(--line-2)}
.tl-month:last-child{border-bottom:0}
.tl-label{font-family:'Unbounded',sans-serif; font-weight:600; font-size:14px}
.tl-label .sub{font-size:11.5px; color:var(--muted-2); font-weight:400; margin-top:3px}

@media(max-width:480px){
  .tl-month{grid-template-columns:1fr; gap:8px}
  .tl-label{display:flex; align-items:baseline; gap:8px}
  .tl-label .sub{margin-top:0}
}
.tl-items{display:flex; flex-direction:column; gap:9px}
.tl-item{display:flex; align-items:center; gap:12px; padding:11px 13px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface)}
.tl-check{width:20px; height:20px; border-radius:6px; flex:none; display:flex; align-items:center; justify-content:center; font-size:11px; color:#fff}
.tl-check.done{background:var(--pos)} .tl-check.prog{background:var(--teal)} .tl-check.todo{background:var(--surface-2); border:1px solid var(--line)}
.tl-item .ti-name{font-size:13px; font-weight:600} .tl-item .ti-meta{font-size:11.5px; color:var(--muted-2)}

.tl-item > div{min-width:0}
.tl-prog{margin-left:auto; display:flex; align-items:center; gap:10px}

@media(max-width:600px){
  .tl-item{flex-wrap:wrap}
  .tl-prog{margin-left:0; width:100%; flex-wrap:wrap; row-gap:6px}
}
.pbar{width:90px; height:6px; background:var(--surface-2); border-radius:var(--r-pill); overflow:hidden}
.pbar>span{display:block; height:100%; background:var(--teal); border-radius:var(--r-pill)}

.cal{display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--r); overflow:hidden}
.cal-dow{background:var(--surface-2); padding:8px 10px; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.03em; color:var(--muted); text-align:center}
.cal-day{background:var(--surface); min-height:92px; padding:7px 7px 8px; display:flex; flex-direction:column; gap:4px}
.cal-day.out{background:var(--surface-2); opacity:.55}
.cal-daynum{font-size:12px; font-weight:600; color:var(--muted-2); line-height:1}

.cal-day.today .cal-daynum{color:#fff; background:var(--teal); width:19px; height:19px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center}
.cal-evs{display:flex; flex-direction:column; gap:3px; overflow:hidden}
.cal-ev{display:block; font-size:10.5px; line-height:1.4; padding:2px 6px; border-radius:6px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; text-decoration:none}

.cal-ev.cal-upcoming{background:var(--teal-tint); color:var(--teal-700); font-weight:600}
.cal-ev.cal-past{background:var(--surface-2); color:var(--muted); border:1px solid var(--line-2)}
.cal-more{font-size:10px; color:var(--muted-2); padding:0 6px}
@media (max-width:760px){
  .cal-day{min-height:58px} .cal-dow{font-size:9.5px; padding:6px 3px}
  .cal-ev{font-size:9.5px}
}

@media (max-width:420px){
  .cal-day{min-height:44px; padding:4px 3px 5px} .cal-dow{padding:5px 2px}
  .cal-daynum{font-size:10.5px}
}

.kanban{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; align-items:start}
.kcol{background:var(--surface-2); border:1px solid var(--line); border-radius:var(--r-lg); padding:12px;
  display:flex; flex-direction:column}

.kcol-b{overflow-y:auto; overscroll-behavior:contain;
  max-height:clamp(320px, 52vh, 620px);

  padding-inline-end:4px; margin-inline-end:-4px}
.kcol-h{display:flex; align-items:center; gap:8px; padding:2px 4px 10px; font-size:12.5px; font-weight:700}
.kcol-h .kc{font-size:11px; color:var(--muted); background:var(--surface); border:1px solid var(--line); padding:0 7px; border-radius:var(--r-pill); margin-left:auto}
.kcard{background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:12px; margin-bottom:9px; box-shadow:var(--shadow)}
.kcard:last-child{margin-bottom:0}
.kcard .kt{font-size:12.5px; font-weight:600; line-height:1.4; margin-bottom:9px}
.kcard .kmeta{display:flex; align-items:center; gap:8px; flex-wrap:wrap}
.ktag{font-size:10px; font-weight:700; padding:2px 7px; border-radius:5px; letter-spacing:.03em; text-transform:uppercase}
.ktag.seo{background:var(--teal-tint); color:var(--teal-600)} .ktag.geo{background:var(--navy-tint); color:var(--navy)}
.ktag.content{background:var(--warn-tint); color:#B5791E} .ktag.tech{background:var(--surface-2); color:var(--muted)} .ktag.links{background:var(--green-tint); color:#3F7A17}
:root[data-theme="dark"] .ktag.content{color:#F2B45A} :root[data-theme="dark"] .ktag.links{color:#A6DB6E}
.kav{width:22px; height:22px; border-radius:50%; color:#fff; font-size:9.5px; font-weight:700; display:flex; align-items:center; justify-content:center; margin-left:auto}

.chat{display:flex; flex-direction:column; gap:14px; padding:18px}
.msg-row{display:flex; gap:11px; max-width:78%}
.msg-row.me{align-self:flex-end; flex-direction:row-reverse}
.msg-av{width:30px; height:30px; border-radius:50%; flex:none; color:#fff; font-size:11px; font-weight:700; display:flex; align-items:center; justify-content:center}

.bubble{background:var(--surface-2); border:0; border-radius:14px; padding:12px 15px; font-size:13px; line-height:1.5}

.quote-more{margin-top:10px}
.quote-more>summary{cursor:pointer; list-style:none; display:inline-flex; align-items:center; gap:5px;
  font-size:11.5px; font-weight:600; color:var(--teal-600)}
.quote-more>summary::-webkit-details-marker{display:none}
.quote-more>summary::before{content:'+'; font-size:13px; line-height:1}
.quote-more[open]>summary::before{content:'–'}
.quote-more>summary:hover{text-decoration:underline; text-underline-offset:2px}

.quote-more .qm-hide,.quote-more[open] .qm-show{display:none}
.quote-more[open] .qm-hide{display:inline}

.quote-more-body{margin-top:9px; background:var(--surface); border:1px solid var(--line);
  border-radius:12px; padding:13px 15px; max-height:min(58vh,420px); overflow:auto;
  overscroll-behavior:contain; font-size:12.5px; line-height:1.7; color:var(--ink)}

.ansdoc{line-height:1.7}
.ansdoc>*+*{margin-top:10px}
.ansdoc .ad-p{margin:0}

.ansdoc .ad-h{font-family:'Unbounded',sans-serif; font-weight:400; letter-spacing:-.01em;
  font-size:13.5px; color:var(--ink); margin-top:17px}
.ansdoc>.ad-h:first-child{margin-top:0}
.ansdoc .ad-h1{font-size:14.5px}
.ansdoc .ad-h2{font-size:13.5px}

.ansdoc .ad-h3{font-family:inherit; font-weight:700; font-size:12.5px; letter-spacing:0; margin-top:13px}

.ansdoc ul.ad-l{margin:0; padding:0; list-style:none}
.ansdoc ul.ad-l>li{position:relative; padding-inline-start:15px}
.ansdoc ul.ad-l>li::before{content:''; position:absolute; inset-inline-start:3px; top:.62em;
  width:4px; height:4px; border-radius:50%; background:var(--teal-600); opacity:.7}
.ansdoc ol.ad-l{margin:0; padding-inline-start:1.35em}
.ansdoc ol.ad-l>li::marker{color:var(--muted); font-weight:600; font-size:.92em}
.ansdoc .ad-l>li+li{margin-top:5px}

.ansdoc ul.ad-l>li.ad-sub{padding-inline-start:31px}
.ansdoc ul.ad-l>li.ad-sub::before{inset-inline-start:17px; top:.82em;
  width:6px; height:1.5px; border-radius:0; background:var(--muted-2); opacity:1}
.ansdoc ol.ad-l>li.ad-sub{margin-inline-start:16px}
.ansdoc .ad-q{margin:0; padding-inline-start:11px; border-inline-start:2px solid var(--line); color:var(--muted)}
.ansdoc .ad-hr{border:0; border-top:1px dashed var(--line); margin:13px 0}
.ansdoc a{color:var(--teal-600); text-decoration:underline; text-underline-offset:2px; word-break:break-word}
.ansdoc b{font-weight:700; color:var(--ink)}
.ansdoc code{background:var(--surface-3, rgba(13,23,45,.06)); border-radius:4px; padding:1px 5px;
  font-size:.92em; font-family:ui-monospace,'SFMono-Regular',Menlo,monospace}
.msg-row.me .bubble{background:var(--fill-strong); color:var(--on-fill-strong); border-color:var(--fill-strong)}
.msg-time{font-size:10.5px; color:var(--muted-2); margin-top:4px}

.goal{padding:16px 18px}
.goal .g-top{display:flex; align-items:baseline; justify-content:space-between; margin-bottom:6px}
.goal .g-name{font-size:14px; font-weight:600}
.goal .g-val{font-family:'Unbounded',sans-serif; font-weight:400; font-size:15px}
.gbar{height:10px; background:var(--surface-2); border-radius:var(--r-pill); overflow:hidden; margin-top:10px}
.gbar>span{display:block; height:100%; border-radius:var(--r-pill); background:var(--teal)}
.goal .g-foot{font-size:11.5px; color:var(--muted-2); margin-top:8px}
.goal .g-foot b{color:var(--pos)}

.score-hero{display:flex; align-items:center; gap:26px; flex-wrap:wrap}
.score-num{font-family:'Unbounded',sans-serif; font-weight:400; font-size:64px; letter-spacing:-.03em; line-height:1}
.score-num small{font-size:22px; color:var(--muted-2)}
.breakdown{display:grid; grid-template-columns:repeat(var(--bd-cols,4),minmax(0,1fr)); gap:12px; flex:1; min-width:280px}

@media(max-width:1100px){ .breakdown{--bd-cols:2 !important} }

@media(max-width:820px){
  .score-hero{flex-direction:column; align-items:stretch}
  .score-hero > *{flex:none; width:100%}
}
.bd{padding:12px 13px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); position:relative}

.bd .bl{font-size:11px; color:var(--muted); font-weight:500;
  display:flex; align-items:center; justify-content:space-between; gap:8px}
.bd .bl .ihelp{flex:none; margin-left:auto}
.bd .bv{font-family:'Unbounded',sans-serif; font-weight:400; font-size:19px; margin-top:5px}
.bd .bm{height:4px; background:var(--surface-2); border-radius:var(--r-pill); margin-top:8px; overflow:hidden}
.bd .bm>span{display:block; height:100%; background:var(--teal); border-radius:var(--r-pill)}

.info{position:relative; display:inline-block; vertical-align:middle}
.info>summary{list-style:none; cursor:help; width:15px; height:15px; border-radius:50%;
  border:1px solid var(--line); background:var(--surface-2); color:var(--muted-2);
  font-size:10px; font-weight:700; line-height:13px; text-align:center; display:inline-block;
  font-family:'Unbounded',sans-serif; user-select:none}
.info>summary::-webkit-details-marker{display:none}
.info>summary:hover{border-color:var(--muted-2); color:var(--ink)}
.info[open]>summary{background:var(--fill-strong); color:var(--on-fill-strong); border-color:var(--fill-strong)}
.info-pop{position:absolute; z-index:20; top:22px; right:0; width:260px; max-width:min(260px, calc(100vw - 24px)); padding:12px 14px;
  background:var(--surface); border:1px solid var(--line); border-radius:var(--r);
  box-shadow:var(--shadow-lg); font-size:12px; line-height:1.6; color:var(--muted);
  font-weight:400; text-align:left; white-space:normal}

.info-pop b{color:var(--ink)}
.info-pop .src{display:block; margin-top:8px; padding-top:8px; border-top:1px solid var(--line);
  font-size:11px; color:var(--muted-2)}
.info-left .info-pop{right:auto; left:0}

.note{display:flex; gap:11px; align-items:flex-start; padding:13px 15px; margin-bottom:16px;
  background:var(--surface-2); border:1px solid var(--line); border-radius:var(--r);
  font-size:12.5px; line-height:1.65; color:var(--muted)}
.note .ic{flex:none; width:19px; height:19px; border-radius:50%; background:var(--fill-strong); color:var(--on-fill-strong);
  font-size:11px; font-weight:700; line-height:19px; text-align:center;
  font-family:'Unbounded',sans-serif}
.note b{color:var(--ink)}

.folders{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px}
@media (max-width:1180px){ .folders{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (max-width:860px){ .folders{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:520px){ .folders{grid-template-columns:1fr} }

.folder{display:block; position:relative; padding:18px 16px 15px; background:var(--surface); border:1px solid var(--line);
  border-radius:var(--r-lg); box-shadow:var(--shadow); text-decoration:none; color:var(--ink);
  transition:border-color .12s, box-shadow .12s, transform .12s}
.folder:hover{border-color:var(--teal); box-shadow:var(--shadow-lg); transform:translateY(-1px)}
.folder .fico{color:var(--teal); width:46px; height:46px; margin-bottom:11px}
.folder .fico svg{width:46px; height:46px; display:block}

.folder .fbadge{position:absolute; top:14px; right:14px; white-space:nowrap}

.folder .fname{font-weight:600; font-size:14px; line-height:1.35; margin-bottom:5px;
  display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
.folder .fmeta{font-size:11.5px; color:var(--muted-2)}
.folder .chip{margin-top:10px}

.dz{border:1.5px dashed var(--line-2); border-radius:var(--r); padding:18px; text-align:center;
  cursor:pointer; transition:background .12s,border-color .12s; background:var(--surface-2)}
.dz:hover{border-color:var(--teal)}
.dz.over{border-color:var(--teal); background:var(--teal-tint)}
.dz.busy{opacity:.65; pointer-events:none}
.dz.failed{border-color:var(--neg)}
.dz .dz-msg{font-size:12.5px; color:var(--muted); font-weight:600}
.dz .dz-sub{font-size:11.5px; color:var(--muted-2); margin-top:3px}
.dz input[type=file]{display:none}

.dz-form{position:absolute; width:1px; height:1px; margin:-1px; padding:0; border:0;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap}

.filelist{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:12px; align-items:stretch}
@media (max-width:1400px){ .filelist{grid-template-columns:repeat(3, minmax(0,1fr))} }
@media (max-width:1050px){ .filelist{grid-template-columns:repeat(2, minmax(0,1fr))} }
@media (max-width:620px){ .filelist{grid-template-columns:1fr} }

.filerow{display:flex; flex-direction:column; gap:4px; padding:14px 15px 13px;
  border:1px solid var(--line); border-radius:var(--r); background:var(--surface);
  box-shadow:var(--shadow); transition:border-color .12s ease, box-shadow .12s ease}
.filerow:hover{border-color:var(--muted-2); box-shadow:var(--shadow-lg)}
.filerow .fr-top{display:flex; align-items:flex-start; justify-content:space-between; gap:8px}
.filerow .ftype{flex:none; width:42px; height:34px; border-radius:8px; color:#fff; font-size:9.5px;
  font-weight:700; display:flex; align-items:center; justify-content:center; letter-spacing:.02em}

.filerow .fname{margin-top:9px; font-size:13.5px; font-weight:600; line-height:1.35;
  display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
.filerow .fr-meta{overflow:hidden; text-overflow:ellipsis; white-space:nowrap}

.filerow .fr-act{display:flex; gap:7px; margin-top:auto; padding-top:11px}
.filerow .fr-act .btn{flex:1; justify-content:center}

.filerow .icon-btn{opacity:.4; transition:opacity .12s ease}
.filerow:hover .icon-btn,.filerow .icon-btn:focus{opacity:1}

.rowtools{display:flex; flex-wrap:wrap; align-items:flex-start; gap:10px; margin-bottom:16px}
.rowtools>details{flex:1 1 100%}
.rowtools>details:not([open]){flex:0 0 auto}

.doc{display:flex; align-items:center; gap:12px; padding:13px 14px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface)}
.doc .dic{width:36px; height:36px; border-radius:9px; background:var(--surface-2); display:flex; align-items:center; justify-content:center; color:var(--teal-600); flex:none}
.doc .dn{font-size:13px; font-weight:600} .doc .dm{font-size:11.5px; color:var(--muted-2)}

.ntf-ask{position:fixed; right:18px; bottom:18px; z-index:80; width:min(340px, calc(100vw - 36px));
  background:var(--surface); border:1px solid var(--line); border-inline-start:3px solid var(--teal);
  border-radius:var(--r-lg); box-shadow:var(--shadow-lg); padding:14px 15px}
.ntf-ask-t{font-size:13px; font-weight:700; color:var(--ink); margin-bottom:5px}
.ntf-ask-b{font-size:12px; line-height:1.6; color:var(--muted)}
.ntf-ask-a{display:flex; gap:8px; margin-top:12px}

.intg{display:flex; align-items:center; gap:12px; padding:15px; border:1px solid var(--line); border-radius:var(--r-lg); background:var(--surface)}
.intg .ilogo{width:40px; height:40px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:13px; color:#fff; flex:none; font-family:'Unbounded',sans-serif}
.intg .inm{font-size:13.5px; font-weight:600} .intg .ist{font-size:11.5px; color:var(--muted-2)}

.divider{height:1px; background:var(--line); margin:0}
.muted{color:var(--muted)} .center{text-align:center}
.foot-note{text-align:center; color:var(--muted-2); font-size:11.5px; margin:26px 0 6px}
.section-title{font-family:'Unbounded',sans-serif; font-size:17px; font-weight:400; margin:4px 0 2px}

@media(max-width:1180px){
  .g-main{grid-template-columns:1fr} .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .strip{grid-template-columns:repeat(3,minmax(0,1fr))} .g-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kanban{grid-template-columns:repeat(2,minmax(0,1fr))} .breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .sidebar{display:none} .g-2,.g-3{grid-template-columns:1fr} .kpis{grid-template-columns:1fr}
  .strip{grid-template-columns:repeat(2,minmax(0,1fr))} .kanban{grid-template-columns:1fr}
  .menu-btn{display:flex}
}

@media(max-width:480px){
  .kanban{grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:82%;
    overflow-x:auto; scroll-snap-type:x proximity; -webkit-overflow-scrolling:touch;
    padding-bottom:6px}
  .kcol{scroll-snap-align:start}
}

:root{

  --paper:#F4F8F9;
  --line:#E2EAEC; --line-2:#EFF4F5;
  --shadow:0 1px 2px rgba(14,33,41,.04), 0 2px 6px rgba(14,33,41,.04);
  --shadow-md:0 6px 18px rgba(14,33,41,.07), 0 2px 6px rgba(14,33,41,.04);
  --shadow-hover:0 16px 38px rgba(14,33,41,.12), 0 6px 12px rgba(14,33,41,.06);
  --ring:0 0 0 3px rgba(0,125,137,.24);

  --sb-w:256px;
}

:root[data-theme="dark"]{

  --card-shadow:0 0 0 1px rgba(255,255,255,.06), 0 8px 24px rgba(0,0,0,.45);
  --card-shadow-hover:0 0 0 1px rgba(255,255,255,.10), 0 14px 32px rgba(0,0,0,.55);

  --kpi-up:#183A26;   --kpi-up-line:#2A5B3C;
  --kpi-down:#572325; --kpi-down-line:#7A3639;
  --shadow-md:0 8px 22px rgba(0,0,0,.45);
  --shadow-hover:0 18px 44px rgba(0,0,0,.6);
  --ring:0 0 0 3px rgba(79,202,212,.34);
}
html{scroll-behavior:smooth}
body{letter-spacing:-.006em; font-feature-settings:"cv05","ss01"}
.disp,.pg-head h1,.pg-head .greet{letter-spacing:-.022em}
.section-title,.score-num,.inv-amt,.kpi .val,.strip .cv,.rr-title{letter-spacing:-.02em}
.eyebrow{font-size:11px; color:var(--teal-600)}

.card{border:0}
a.card,.card.is-link{transition:box-shadow .2s ease, transform .2s cubic-bezier(.2,.6,.2,1)}
a.card:hover,.card.is-link:hover{box-shadow:var(--card-shadow-hover); transform:translateY(-2px)}
.tile,.doc,.intg{transition:box-shadow .2s ease, transform .2s cubic-bezier(.2,.6,.2,1), border-color .2s ease}
.tile:hover,.doc:hover,.intg:hover{box-shadow:var(--shadow-lg); transform:translateY(-2px); border-color:transparent}
.rec{transition:box-shadow .2s ease, border-color .2s ease}
.rec:hover{border-color:var(--muted-2)}
.kbd,kbd{font-feature-settings:normal}

.nav-item{transition:background .15s ease, color .15s ease}
.switcher{transition:border-color .15s, box-shadow .15s}
.sb-foot .am-card{transition:background .18s ease}

.topbar{box-shadow:none; border-bottom:0}
.tb-icon,.tb-ava,.btn{transition:transform .16s cubic-bezier(.2,.6,.2,1), box-shadow .16s ease, border-color .16s ease, background .16s ease}
.tb-ava{box-shadow:var(--shadow)}

.btn{box-shadow:none}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0)}

.btn-primary{box-shadow:none}
.btn-primary:hover{filter:none; box-shadow:0 6px 18px rgba(0,125,137,.28)}
.btn-primary:active{background:var(--teal-700); box-shadow:none}
.btn-primary[disabled],.btn-primary:disabled,.btn-primary.is-off{
  background:#CDD1DB; color:#FFFFFF; box-shadow:none; cursor:not-allowed; transform:none}
.btn-grad{box-shadow:none}
:root[data-theme="dark"] .btn-primary:active{background:#008C99}
:root[data-theme="dark"] .btn-primary[disabled],
:root[data-theme="dark"] .btn-primary:disabled,
:root[data-theme="dark"] .btn-primary.is-off{background:#2A2438; color:#9A93AC}

a:focus-visible,button:focus-visible,input:focus-visible{outline:none; box-shadow:var(--ring)}
.input:focus{outline:none; border-color:var(--teal); box-shadow:var(--ring)}

.skip-link{position:fixed; top:-100px; left:12px; z-index:9500;
  background:var(--surface); color:var(--ink); padding:10px 16px;
  border-radius:var(--r-sm); box-shadow:var(--card-shadow-hover);
  font-size:var(--fs-sm); font-weight:600; text-decoration:none;
  transition:top .12s ease}
.skip-link:focus{top:12px; outline:none; box-shadow:var(--ring), var(--card-shadow-hover)}
::selection{background:rgba(0,125,137,.18)}

.kpi .val{font-size:34px}
.chip{border:1px solid transparent} .chip.flat{border-color:var(--line)}

.flatbar{display:inline-block; vertical-align:middle; width:.75em; height:2.5px;
  border-radius:2px; background:currentColor; opacity:.5}

.chip.flat .flatbar{opacity:.7}
.tbl th{font-size:10.5px; letter-spacing:.07em}
.tbl tbody tr{transition:background .13s ease}
.card-h h3{letter-spacing:-.012em; font-size:17px; font-weight:400}
.pg-head .greet,.pg-head h1{font-size:30px; font-weight:400}

.msgs{display:flex; height:calc(100vh - 61px); background:var(--surface); border-radius:var(--r-card); overflow:hidden; box-shadow:var(--card-shadow)}

.bento > .msgs{height:clamp(480px, calc(100vh - 240px), 900px)}
.chat-list{width:320px; flex:none; border-right:1px solid var(--line-2); display:flex; flex-direction:column; background:var(--surface)}
.chat-list .clh{padding:18px 16px 14px; border-bottom:1px solid var(--line)}
.chat-list .clh .row-between h2{font-family:'Unbounded',sans-serif; font-size:19px; font-weight:600; letter-spacing:-.01em}
.chat-search{margin-top:13px; display:flex; align-items:center; gap:8px; padding:9px 12px; background:var(--surface-2); border:1px solid var(--line); border-radius:10px; color:var(--muted-2); font-size:12.5px}
.seg-mini{display:flex; gap:4px; margin-top:12px}
.seg-mini button{flex:1; border:1px solid var(--line); background:var(--surface); border-radius:8px; font-size:11.5px; font-weight:600; color:var(--muted); padding:6px; cursor:pointer; font-family:inherit}
.seg-mini button.on{background:var(--fill-strong); color:var(--on-fill-strong); border-color:var(--fill-strong)}
.chat-items{flex:1; overflow-y:auto; padding:8px}
.chat-item{display:flex; gap:12px; padding:11px; border-radius:12px; cursor:pointer; align-items:center; border:1px solid transparent}
.chat-item:hover{background:var(--surface-2)}
.chat-item.active{background:var(--teal-tint); border-color:rgba(0,125,137,.2)}
.avatar{width:42px; height:42px; border-radius:50%; flex:none; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:700; font-size:14px; position:relative; font-family:'Unbounded',sans-serif}
.avatar .presence{position:absolute; right:-1px; bottom:-1px; width:12px; height:12px; border-radius:50%; border:2.5px solid var(--surface)}

.ava-img{width:100%; height:100%; object-fit:cover; border-radius:inherit; display:block}

.ch-guide{stroke:var(--muted-2); stroke-width:1; stroke-dasharray:3 3; opacity:.55; pointer-events:none}
.ch-read{position:absolute; top:6px; z-index:6; pointer-events:none;
  background:var(--surface); border:1px solid var(--line); border-radius:10px;
  box-shadow:var(--shadow-lg, 0 12px 28px -10px rgba(13,23,45,.25));
  padding:8px 10px; min-width:132px; font-size:11.5px; line-height:1.5}
.ch-read .ch-d{font-weight:700; color:var(--ink); margin-bottom:4px}
.ch-read .ch-f{font-weight:500; color:var(--muted-2)}

.ch-read .ch-na{font-weight:500; opacity:.6; font-size:.92em}
.ch-read .ch-r{display:flex; align-items:center; gap:7px}
.ch-read .ch-r i{width:8px; height:8px; border-radius:2px; flex:none}
.ch-read .ch-r span{color:var(--muted); margin-right:auto}
.ch-read .ch-r b{color:var(--ink); font-weight:700}

svg.chart{cursor:crosshair}

.chart .ax{stroke:var(--line); stroke-width:1; vector-effect:non-scaling-stroke}

.axis-x .rep{color:var(--muted-2); opacity:.5}

.vd-l1, .vd-l2{display:block}

.bubble a, .ans a{color:var(--teal-600); text-decoration:underline; text-underline-offset:2px; word-break:break-word}
.bubble code, .ans code{background:var(--surface-3, rgba(13,23,45,.06)); border-radius:4px; padding:1px 5px; font-size:.92em; font-family:ui-monospace,'SFMono-Regular',Menlo,monospace}
.bubble b, .ans b{font-weight:700; color:var(--ink)}
.presence.on{background:#17A34A} .presence.away{background:#E8A13A} .presence.off{background:#8FA1A7}
.chat-item .ci-body{flex:1; min-width:0}
.chat-item .ci-top{display:flex; justify-content:space-between; align-items:baseline; gap:8px}
.chat-item .ci-name{font-weight:600; font-size:13.5px}
.chat-item .ci-time{font-size:11px; color:var(--muted-2); flex:none}
.chat-item .ci-prev{font-size:12px; color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.chat-item .ci-unread{background:var(--teal); color:#fff; font-size:10.5px; font-weight:700; min-width:19px; height:19px; border-radius:var(--r-pill); display:flex; align-items:center; justify-content:center; padding:0 5px; flex:none}
.chat-role{font-size:10.5px; color:var(--muted-2); font-weight:600}
.chat-main{flex:1; display:flex; flex-direction:column; min-width:0}
.chat-head{height:66px; flex:none; box-shadow:inset 0 -1px 0 var(--line); display:flex; align-items:center; gap:13px; padding:0 22px}
.chat-head .ch-name{font-weight:600; font-size:15px}
.chat-head .ch-status{font-size:12px; color:var(--muted)}
.chat-head .ch-status .presence{position:static; display:inline-block; width:8px; height:8px; border:0; margin-right:5px; vertical-align:middle}
.chat-head .ch-actions{margin-left:auto; display:flex; gap:8px}
.chat-scroll{flex:1; overflow-y:auto; padding:24px 26px; display:flex; flex-direction:column; gap:3px; background:var(--paper)}
.day-sep{align-self:center; font-size:11px; color:var(--muted-2); background:var(--surface); border:1px solid var(--line); padding:4px 13px; border-radius:var(--r-pill); font-weight:600; margin:12px 0}

.m{max-width:72%; display:flex; flex-direction:row; align-items:flex-start; gap:9px; margin-top:14px}
.m.me{align-self:flex-end; flex-direction:row-reverse}
.m .mcol{display:flex; flex-direction:column; gap:3px; min-width:0}
.m.me .mcol{align-items:flex-end}
.m .mface{flex:0 0 auto}
.m .mface .avatar{width:28px; height:28px; font-size:11px}

.m .mwho{font-size:11.5px; font-weight:600; color:var(--muted); padding:0 5px;
  display:flex; gap:6px; align-items:baseline}
.m .mwho .mrole{font-weight:500; color:var(--muted-2); font-size:10.5px}
.m .mb{padding:11px 15px; border-radius:16px; font-size:13.5px; line-height:1.5; box-shadow:var(--shadow)}
.m.them .mb{background:var(--surface); border:1px solid var(--line); border-bottom-left-radius:5px}
.m.me .mb{background:var(--btn-primary); color:var(--btn-primary-ink); border-bottom-right-radius:5px}

.m.cont{margin-top:4px}
.m.cont .mwho{display:none}
.m.cont .mface{visibility:hidden}

.m .mgone{display:flex; align-items:center; gap:9px; padding:9px 13px; border:1px dashed var(--line); border-radius:12px;
  background:var(--surface); font-size:12.5px; color:var(--muted)}
.m .mgone b{color:var(--ink); font-weight:600}
.m .mgone .mretry{margin-left:auto; border:1px solid var(--line); background:var(--surface-2); color:var(--ink);
  border-radius:8px; padding:3px 10px; font:inherit; font-weight:600; cursor:pointer}
.m .mgone .mretry:hover{border-color:var(--muted)}

.m .mmeta{font-size:10.5px; color:var(--muted-2); padding:0 5px; display:flex; align-items:center; gap:7px}
.m.me .mmeta{flex-direction:row-reverse}
.m .medited{font-style:italic; opacity:.8; cursor:default}

.macts{align-self:center; display:flex; gap:2px; flex:0 0 auto;
  opacity:0; transition:opacity .13s ease}
.m:hover .macts, .macts:focus-within{opacity:1}
.mact{appearance:none; background:none; border:0; cursor:pointer; padding:5px; line-height:0;
  border-radius:9px; color:var(--muted-2); display:grid; place-items:center;
  transition:background .13s ease, color .13s ease}
.mact:hover{background:var(--surface-2); color:var(--ink)}
.mact-danger:hover{background:rgba(196,55,47,.12); color:#C4372F}
.mact:focus-visible{outline:2px solid var(--teal, #00A7B9); outline-offset:1px}
.mact[disabled]{cursor:default; opacity:.45}

@media (hover: none){ .macts{opacity:.65} }

.medit-box{width:min(420px, 62vw); min-height:62px; resize:vertical; font:inherit; font-size:13.5px;
  line-height:1.5; padding:10px 13px; border-radius:16px; border:1px solid var(--teal, #00A7B9);
  background:var(--surface); color:var(--ink); outline:none; box-shadow:var(--shadow)}
.medit-row{display:flex; gap:7px; align-items:center; font-size:11px; color:var(--muted-2)}
.m.me .medit-row{flex-direction:row-reverse}
.medit-row .btn{padding:5px 12px; font-size:11.5px}
.m .mfile{display:flex; align-items:center; gap:10px; padding:10px 13px; border:1px solid var(--line); border-radius:12px; background:var(--surface); font-size:12.5px; box-shadow:var(--shadow)}

.m .mvoice{width:230px; max-width:100%; display:block; border-radius:20px}

.m .mimg{display:block; max-width:280px; border-radius:16px; overflow:hidden; box-shadow:var(--shadow); line-height:0}
.m .mimg img{display:block; max-width:100%; max-height:340px; width:auto; height:auto; border-radius:inherit}
.m .mimg{cursor:zoom-in}

.mlb{position:fixed; inset:0; width:auto; height:auto; max-width:none; max-height:none; margin:0; padding:0; border:0;
  background:transparent; color:#fff; overflow:hidden; display:none; flex-direction:column}
.mlb[open]{display:flex}
.mlb::backdrop{background:rgba(7,12,24,.95)}
.mlb-bar{flex:none; display:flex; align-items:center; gap:16px; padding:14px 18px; background:rgba(7,12,24,.85); box-shadow:0 1px 0 rgba(255,255,255,.06)}
.mlb-who{flex:1; min-width:0; display:flex; flex-direction:column; gap:2px}
.mlb-who b, .mlb-who span{white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.mlb-who b{font-size:14px; font-weight:600}
.mlb-who span{font-size:12.5px; color:rgba(255,255,255,.68)}
.mlb-acts{flex:none; display:flex; align-items:center; gap:6px}
.mlb-count{font-size:12.5px; color:rgba(255,255,255,.68); margin-right:10px; font-variant-numeric:tabular-nums}
.mlb-btn, .mlb-nav{border:0; color:#fff; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; text-decoration:none; transition:background .12s ease}
.mlb-btn{width:38px; height:38px; border-radius:10px; background:rgba(255,255,255,.08)}
.mlb-nav{position:absolute; top:50%; transform:translateY(-50%); width:46px; height:46px; border-radius:50%; background:rgba(255,255,255,.1)}
.mlb-btn:hover, .mlb-nav:hover{background:rgba(255,255,255,.2)}
.mlb-btn:focus-visible, .mlb-nav:focus-visible{outline:2px solid #fff; outline-offset:2px}
.mlb-nav[hidden]{display:none}
.mlb-prev{left:18px}
.mlb-next{right:18px}
.mlb-stage{flex:1; min-height:0; position:relative; display:flex; align-items:center; justify-content:center; padding:0 80px 28px}
.mlb-img{display:block; max-width:100%; max-height:100%; width:auto; height:auto; border-radius:8px; box-shadow:0 18px 60px rgba(0,0,0,.5)}
@keyframes mlbIn{from{opacity:0; transform:scale(.97)} to{opacity:1; transform:none}}
@media (prefers-reduced-motion:no-preference){ .mlb[open] .mlb-img{animation:mlbIn .16s ease-out} }
@media (max-width:640px){
  .mlb-bar{padding:10px 12px; gap:10px}
  .mlb-count{display:none}
  .mlb-stage{padding:0 10px 16px}
  .mlb-nav{width:40px; height:40px; background:rgba(0,0,0,.5)}
  .mlb-prev{left:6px}
  .mlb-next{right:6px}
}
.rec-dot{width:9px; height:9px; border-radius:50%; background:#E23D3D; display:inline-block; animation:recPulse 1.2s ease-in-out infinite; flex:none}
@keyframes recPulse{0%,100%{opacity:1}50%{opacity:.3}}
.composer{flex:none; box-shadow:inset 0 1px 0 var(--line); padding:15px 22px; display:flex; align-items:center; gap:12px; background:var(--surface)}
.composer .cbox{flex:1; min-width:0; display:flex; align-items:center; gap:10px; background:var(--surface-2); border:1px solid var(--line); border-radius:12px; padding:12px 15px; color:var(--muted-2); font-size:13.5px}

.composer .cbtn{width:40px; height:40px; border-radius:11px; border:1px solid var(--line); background:var(--surface); color:var(--muted); display:flex; align-items:center; justify-content:center; cursor:pointer; flex:none}
.chat-ctx{width:296px; flex:none; box-shadow:inset 1px 0 0 var(--line); padding:24px 22px; overflow-y:auto; background:var(--surface)}
.ctx-hero{display:flex; flex-direction:column; align-items:center; text-align:center; gap:4px; padding-bottom:20px; border-bottom:1px solid var(--line)}
.ctx-hero .avatar{width:64px; height:64px; font-size:20px; margin-bottom:8px}
@media(max-width:1180px){.chat-ctx{display:none}}

#composerBar{align-items:flex-end}
.composer .ceditor{flex-direction:column; align-items:stretch; gap:6px; padding:6px 12px 10px; color:var(--ink); cursor:text}
.composer .ceditor:focus-within{border-color:var(--teal, #00A7B9)}
.cfmt{display:flex; align-items:center; gap:2px; overflow-x:auto; scrollbar-width:none; flex-wrap:nowrap;
  margin:0 -4px; padding-bottom:5px; border-bottom:1px solid var(--line)}
.cfmt::-webkit-scrollbar{display:none}
.cfb{appearance:none; flex:none; width:28px; height:28px; display:grid; place-items:center; border:0; border-radius:7px;
  background:none; color:var(--muted); cursor:pointer; transition:background .12s ease, color .12s ease}
.cfb:hover{background:var(--surface); color:var(--ink)}
.cfb.is-on{background:var(--surface); color:var(--ink); box-shadow:inset 0 0 0 1px var(--line)}
.cfb:focus-visible{outline:2px solid var(--teal, #00A7B9); outline-offset:1px}
.cfsep{flex:none; width:1px; height:16px; background:var(--line); margin:0 4px}
.cfmt.is-linking .cfb, .cfmt.is-linking .cfsep{display:none}
.cfmt-link{display:flex; align-items:center; gap:6px; flex:1; min-width:0}
.cfmt-link[hidden]{display:none}
.cfmt-url{flex:1; min-width:120px; height:28px; border:1px solid var(--line); border-radius:7px; padding:0 9px;
  background:var(--surface); color:var(--ink); font:inherit; font-size:12.5px; outline:none}
.cfmt-url:focus{border-color:var(--teal, #00A7B9)}
.cfmt-link .btn{padding:4px 11px; font-size:11.5px}
.crich{min-height:21px; max-height:180px; overflow-y:auto; outline:none; color:var(--ink); font-size:13.5px;
  line-height:1.55; white-space:normal; overflow-wrap:anywhere; text-align:start; overflow-x:hidden}
.crich:empty::before{content:attr(data-placeholder); color:var(--muted-2); pointer-events:none}
.crich.is-disabled{opacity:.6}
.medit-box.crich{max-height:260px; resize:none; overflow-y:auto; white-space:normal}

.m .mb{overflow-wrap:anywhere; text-align:start}
.m .mb p, .crich p{margin:0}
.m .mb ul, .m .mb ol, .crich ul, .crich ol{margin:2px 0; padding-inline-start:20px}
.m .mb li, .crich li{margin:1px 0}

.m .mb li:dir(rtl), .crich li:dir(rtl){list-style-position:inside}
.m .mb ul:dir(rtl) > li:dir(rtl), .m .mb ol:dir(rtl) > li:dir(rtl), .crich ul:dir(rtl) > li:dir(rtl), .crich ol:dir(rtl) > li:dir(rtl){list-style-position:outside}
.m .mb code, .crich code{font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size:.88em;
  padding:1px 5px; border-radius:5px; background:rgba(127,127,127,.16)}
.m .mb pre, .crich pre{margin:4px 0; padding:9px 11px; border-radius:9px; background:rgba(127,127,127,.14);
  overflow-x:auto; white-space:pre-wrap; font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size:12.5px; line-height:1.5}
.m .mb pre code, .crich pre code{padding:0; background:none; font-size:inherit}
.m .mb a{color:inherit; text-decoration:underline; text-underline-offset:2px}
.m.them .mb a, .crich a{color:var(--teal, #0E8194)}
.crich a{text-decoration:underline; text-underline-offset:2px; cursor:text}

@media(max-width:600px){

  #composerBar.has-text #chatMicBtn{display:none}
}

.content.flush{padding:0;max-width:none}
.flash{position:fixed;bottom:24px;right:24px;z-index:60;display:flex;flex-direction:column;gap:8px;max-width:min(460px,calc(100vw - 320px))}
.flash .fl{padding:11px 15px;border-radius:10px;font-size:13px;font-weight:600;line-height:1.5;box-shadow:var(--shadow-md);border:1px solid var(--line);background:var(--surface);white-space:pre-wrap;overflow-wrap:anywhere;max-height:40vh;overflow:auto}

.flash .fl.ok{background:var(--surface);color:var(--pos);border-left:3px solid var(--pos)}
.flash .fl.err{background:var(--surface);color:var(--neg);border-left:3px solid var(--neg)}
@media(max-width:820px){.sidebar.open{display:flex;position:fixed;z-index:70;height:100vh;width:260px}}

@media(max-width:820px){.sidebar.open + .sb-backdrop{display:block; position:fixed; inset:0; z-index:65; background:rgba(9,17,34,.45)}}

.addbox{box-shadow:var(--card-shadow); margin-bottom:16px}

.addbox.nosum>summary{display:none}
.addbox.nosum:not([open]){margin:0; padding:0; box-shadow:none; background:none}
.addbox>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;padding:9px 14px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}
.addbox>summary::-webkit-details-marker{display:none}
.addbox>summary:hover{border-color:var(--muted-2)}
.addbox[open]>summary{background:var(--fill-strong);color:var(--on-fill-strong);border-color:var(--fill-strong)}
.addform{margin-top:12px;padding:18px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow);display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.addform{align-items:flex-end}

.fld{display:flex;flex-direction:column;gap:6px;min-width:0}
.fld>label,.addform label{font-size:11.5px;font-weight:600;color:var(--muted);display:block}
.fld input,.fld select,.fld textarea,
.addform input,.addform select,.addform textarea{
  padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);
  font-size:13.5px;color:var(--ink);font-family:inherit;width:100%;max-width:100%}
.fld input:focus,.fld select:focus,.fld textarea:focus,
.addform input:focus,.addform select:focus,.addform textarea:focus{outline:none;border-color:var(--teal);box-shadow:var(--ring)}

.fld select,.addform select{
  appearance:none; -webkit-appearance:none; -moz-appearance:none; padding-right:32px;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%237B8A99' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 11px center}
.fld select[multiple]{background-image:none; padding-right:12px}
.fld input[type=checkbox],.fld input[type=radio]{width:auto}
.fld input[type=file]{padding:8px 10px;font-size:12.5px;background:var(--surface-2)}
.fld select[multiple]{padding:6px;height:auto}
.fld input::placeholder,.addform input::placeholder{color:var(--muted-2)}
.fld input:disabled,.fld select:disabled{background:var(--surface-2);color:var(--muted-2)}

.formrow{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}
.formrow .actions{flex:1 1 100%;display:flex;gap:10px;align-items:center;margin-top:2px}

.picker{
  appearance:none; -webkit-appearance:none; -moz-appearance:none;
  font-family:inherit; font-size:12.5px; font-weight:600; color:var(--ink); line-height:1.25;
  padding:8px 32px 8px 12px; border-radius:10px; border:1px solid var(--line);
  background-color:var(--surface); cursor:pointer; max-width:230px;
  text-overflow:ellipsis; white-space:nowrap;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%237B8A99' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 12px center}
.picker:hover{border-color:var(--muted-2)}
.picker:focus{outline:none; border-color:var(--teal); box-shadow:var(--ring)}
.picker-sm{font-size:12.5px; padding:8px 30px 8px 12px; background-position:right 10px center}

.picker-wrap{display:inline-flex; align-items:center; gap:8px}
.picker-wrap>label{font-size:11.5px; font-weight:600; color:var(--muted); white-space:nowrap}

.editrow{padding:5px 0;border-bottom:1px solid var(--line-2)}
.editrow:last-child{border-bottom:0}
.minisel{padding:3px 6px;border:1px solid var(--line);border-radius:7px;background:var(--surface);
  font-size:11.5px;color:var(--muted);font-family:inherit;cursor:pointer}
.minisel:focus{outline:none;border-color:var(--teal)}
.editrow details[open]>summary{color:var(--teal-600)}
.editform{display:flex;flex-direction:column;gap:9px;padding:12px;margin-top:8px;
  border:1px solid var(--line);border-radius:10px;background:var(--surface-2);min-width:240px}
.editform button{align-self:flex-start}

.gset-pop{position:absolute; right:0; top:calc(100% + 6px); z-index:20;
  width:300px; max-width:calc(100vw - 32px); box-shadow:var(--shadow-lg); background:var(--surface)}
.gset-people{max-height:170px; overflow:auto; border:1px solid var(--line);
  border-radius:9px; background:var(--surface); padding:4px 0}
.gset-p{display:flex; align-items:center; gap:9px; padding:6px 10px; cursor:pointer; font-size:12.5px}
.gset-p input{width:15px; height:15px; flex:none; accent-color:var(--teal)}
.gset-p:hover{background:var(--surface-2)}

.gset > summary{list-style:none}
.gset > summary::-webkit-details-marker{display:none}

@media(max-width:480px){
  .editform{position:fixed !important; left:12px; right:12px; top:auto; bottom:12px;
    width:auto; min-width:0; max-height:70vh; overflow-y:auto; z-index:800 !important}
}

.code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;
  background:var(--surface-2);border:1px solid var(--line);border-radius:6px;
  padding:2px 6px;color:var(--ink-2);white-space:nowrap}
.code.wrap{white-space:normal;word-break:break-all}

@media(max-width:480px){
  .code{white-space:normal; overflow-wrap:anywhere}
}
.icon-btn{width:26px;height:26px;border-radius:7px;border:1px solid var(--line);background:var(--surface);color:var(--muted-2);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1}
.icon-btn:hover{color:var(--neg);border-color:var(--neg)}

.icon-btn.act:hover{color:var(--teal-600); border-color:var(--teal-600)}

.is-busy{position:relative; cursor:progress; color:transparent !important}
.is-busy > *{visibility:hidden}
.is-busy::after{
  content:""; position:absolute; top:50%; left:50%; width:13px; height:13px; margin:-7px 0 0 -7px;
  border:2px solid var(--muted-2); border-right-color:transparent; border-radius:50%;
  animation:voctos-spin .6s linear infinite;
}
@keyframes voctos-spin{to{transform:rotate(360deg)}}

@media (prefers-reduced-motion: reduce){ .is-busy::after{animation-duration:2.4s} }
.icon-btn.on{color:#fff; background:var(--teal); border-color:var(--teal)}
.icon-btn.on:hover{color:#fff; border-color:var(--teal)}

.row-acts{display:flex; align-items:center; gap:6px; justify-content:flex-end}
.row-acts form{display:flex; margin:0}

tr.prow-on > td{background:var(--teal-tint)}
tr.prow-on > td:first-child{box-shadow:inset 3px 0 0 var(--teal)}

tr.prow-ans > td{background:var(--teal-tint); padding:0 0 16px 0}
tr.prow-ans .prow-inner{background:var(--surface); border:1px solid var(--line); border-radius:var(--r-card); margin:0 14px; padding:16px 18px}

.prow-link{color:inherit; text-decoration:none}
.prow-link:hover{color:var(--teal-600); text-decoration:underline; text-underline-offset:2px}

.chev{transition:transform .16s ease; flex:none}
.chev-open{transform:rotate(90deg)}

.chev-inline{margin-right:7px; color:var(--muted-2); vertical-align:-1px}
.prow-link:hover .chev-inline{color:var(--teal-600)}
@media (prefers-reduced-motion: reduce){ .chev{transition:none} }

.prow-run .icon-btn:hover{color:var(--teal-600); border-color:var(--teal-600)}
.prow-run .icon-btn[disabled]{opacity:.55; cursor:default}
.prow-run .icon-btn[disabled]:hover{color:var(--muted-2); border-color:var(--line)}

.fold{border-top:1px solid var(--line)}
.fold-sum{
  display:flex; align-items:center; gap:9px; cursor:pointer; user-select:none;
  padding:12px 24px; font-size:13.5px; color:var(--ink);
  list-style:none;
}
.fold-sum::-webkit-details-marker{display:none}
.fold-sum:hover{background:var(--surface-2)}
.fold-sum:focus-visible{outline:2px solid var(--teal); outline-offset:-2px}
.fold-sum .chev{color:var(--muted-2)}
.fold[open] > .fold-sum .chev{transform:rotate(90deg)}
.fold-hint{color:var(--muted-2); font-size:12.5px; margin-left:auto}
@media (max-width:640px){ .fold-hint{display:none} }

.gkind-r{position:absolute; opacity:0; width:1px; height:1px; pointer-events:none}
.gkind{display:flex; gap:10px; flex-wrap:wrap; margin:0 0 16px}
.gkind label{
  flex:1; min-width:190px; cursor:pointer; padding:11px 14px;
  border:1px solid var(--line); border-radius:10px; background:var(--surface);
  display:flex; flex-direction:column; gap:2px; transition:border-color .12s ease, background .12s ease;
}
.gkind label b{font-size:13.5px; font-weight:600; color:var(--ink)}
.gkind label span{font-size:12px; color:var(--muted-2)}
.gkind label:hover{border-color:var(--line-2)}
#gk-metric:checked ~ .gkind label[for="gk-metric"],
#gk-mile:checked   ~ .gkind label[for="gk-mile"]{
  border-color:var(--teal); background:var(--teal-tint); box-shadow:inset 0 0 0 1px var(--teal);
}

.gkind-r:focus-visible ~ .gkind label[for="gk-metric"],
.gkind-r:focus-visible ~ .gkind label[for="gk-mile"]{outline:2px solid var(--teal); outline-offset:2px}

.gfields{display:flex; gap:12px; flex-wrap:wrap; align-items:flex-end}
#gk-metric:checked ~ .gfields .only-mile{display:none}
#gk-mile:checked   ~ .gfields .only-metric{display:none}
.fld .opt{font-weight:400; color:var(--muted-2); font-size:11px; margin-left:4px}

.g-when{margin:10px 0 0; font-size:13px; color:var(--muted); }
.g-chip{
  font-size:11.5px; font-weight:600; padding:3px 9px; border-radius:var(--r-pill);
  background:var(--surface-2); color:var(--muted);
}
.g-chip.achieved{background:var(--teal-tint); color:var(--teal-600)}
.g-chip.at_risk{background:var(--warn-tint); color:var(--warn-ink)}
.inline-form{display:inline}
.viewbar{background:var(--navy-tint);color:var(--navy);font-size:12.5px;font-weight:600;padding:9px 24px;display:flex;align-items:center;gap:9px;box-shadow:inset 0 -1px 0 var(--line)}
.viewbar a{margin-left:auto;color:var(--teal-600);font-weight:600}
.ic{width:30px; height:30px;}

.rte{border:1px solid var(--line); border-radius:10px; background:var(--surface); overflow:hidden}
.rte:focus-within{border-color:var(--teal); box-shadow:var(--ring)}
.rte-bar{display:flex; align-items:center; gap:4px; flex-wrap:wrap; padding:6px 8px;
  background:var(--surface-2); border-bottom:1px solid var(--line)}
.rte-btn{font-size:12px; font-weight:600; line-height:1; color:var(--ink-2); cursor:pointer;
  background:transparent; border:1px solid transparent; border-radius:7px; padding:6px 9px; font-family:inherit}
.rte-btn:hover{background:var(--surface); border-color:var(--line)}
.rte-btn.on{background:var(--fill-strong); color:var(--on-fill-strong); border-color:var(--fill-strong)}
.rte-area{min-height:200px; max-height:460px; overflow:auto; padding:14px 16px;
  font-size:14px; line-height:1.65; color:var(--ink); outline:none}
.rte-area:empty::before{content:attr(data-placeholder); color:var(--muted-2)}
.rte-area>*:first-child{margin-top:0}
.rte-area p{margin:0 0 10px}
.rte-area h2{font-size:19px; font-weight:700; margin:18px 0 8px; line-height:1.3}
.rte-area h3{font-size:16px; font-weight:700; margin:15px 0 7px; line-height:1.35}
.rte-area ul,.rte-area ol{margin:0 0 10px; padding-left:22px}
.rte-area li{margin:3px 0}
.rte-area a{color:var(--teal-600); text-decoration:underline}
.rte-area blockquote{margin:10px 0; padding:6px 0 6px 14px; border-left:3px solid var(--teal);
  color:var(--ink-2); font-style:italic}
.rte-area code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size:12.5px;
  background:var(--surface-2); padding:1px 5px; border-radius:5px}
.rte .rte-source{width:100%; min-height:220px; padding:14px 16px; border:0; outline:none;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size:12.5px;
  line-height:1.6; color:var(--ink); background:var(--surface); resize:vertical}

.money{font-family:'Unbounded',sans-serif;font-variant-numeric:tabular-nums;font-weight:600}
.saving{color:var(--pos);font-weight:700}
.burn{color:var(--neg);font-weight:700}

.flag{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;
  letter-spacing:.03em;text-transform:uppercase;padding:2px 8px;border-radius:var(--r-pill)}
.flag.waste{background:var(--neg-tint);color:var(--neg)}
.flag.winner{background:var(--pos-tint);color:var(--pos)}
.flag.watch{background:var(--warn-tint);color:#B5791E}
.flag.scale{background:var(--teal-tint);color:var(--teal-600)}
tr.is-waste td:first-child{box-shadow:inset 3px 0 0 var(--neg)}
tr.is-winner td:first-child{box-shadow:inset 3px 0 0 var(--pos)}

.qs{display:inline-flex;width:22px;height:22px;border-radius:6px;align-items:center;justify-content:center;
  font-family:'Unbounded',sans-serif;font-weight:400;font-size:11.5px}
.qs.good{background:var(--pos-tint);color:var(--pos)}
.qs.ok{background:var(--warn-tint);color:#B5791E}
.qs.bad{background:var(--neg-tint);color:var(--neg)}

.chan{font-size:10px;font-weight:700;padding:2px 7px;border-radius:5px;letter-spacing:.03em;text-transform:uppercase}
.chan.search{background:var(--teal-tint);color:var(--teal-600)}
.chan.pmax{background:var(--navy-tint);color:var(--navy)}
.chan.shopping{background:var(--green-tint);color:#3F7A17}
.chan.display{background:var(--surface-2);color:var(--muted)}
.chan.social{background:var(--warn-tint);color:#B5791E}
.chan.video{background:var(--neg-tint);color:var(--neg)}

.pace{position:relative;height:34px;background:var(--surface-2);border:1px solid var(--line);
  border-radius:10px;overflow:hidden;margin-top:14px}
.pace .spent{position:absolute;inset:0 auto 0 0;background:var(--teal);border-radius:9px 0 0 9px}
.pace .fore{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,
  var(--neg-tint),var(--neg-tint) 6px,transparent 6px,transparent 12px);border-left:0}
.pace .mark{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--ink);opacity:.55}
.pace .mark::after{content:attr(data-label);position:absolute;top:-19px;left:50%;transform:translateX(-50%);
  font-size:10px;font-weight:700;color:var(--muted);white-space:nowrap}
.pace-legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:22px;font-size:11.5px;color:var(--muted)}
.pace-legend span{display:flex;align-items:center;gap:6px}

.rsa{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden;box-shadow:var(--shadow)}
.rsa-h{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line-2)}
.rsa-h .rsa-t{font-size:13px;font-weight:600}
.rsa-h .rsa-m{font-size:11.5px;color:var(--muted-2)}
.rsa-body{padding:16px}

.serp{border:1px solid var(--line);border-radius:var(--r);padding:13px 15px;background:var(--surface-2)}
.serp .sp-badge{font-size:10.5px;font-weight:700;color:var(--ink-2);border:1px solid var(--muted-2);
  border-radius:4px;padding:0 5px;margin-right:7px}
.serp .sp-url{font-size:12px;color:var(--muted)}
.serp .sp-title{font-size:16px;color:#1a4fd8;line-height:1.3;margin:4px 0 3px}
:root[data-theme="dark"] .serp .sp-title{color:#7fa9ff}
.serp .sp-desc{font-size:12.5px;color:var(--muted);line-height:1.5}
.asset-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.asset{font-size:11.5px;padding:4px 9px;border-radius:7px;background:var(--surface-2);
  border:1px solid var(--line);color:var(--ink-2)}
.asset.low{border-color:var(--neg);color:var(--neg)}
.rsa-foot{display:flex;align-items:center;gap:9px;padding:12px 16px;border-top:1px solid var(--line-2);background:var(--surface-2)}
.rsa-foot .btn{box-shadow:none}

.wastecard{background:linear-gradient(120deg,var(--neg-tint),transparent 70%);
  border:1px solid rgba(229,72,77,.25)}
.oppcard{background:linear-gradient(120deg,var(--teal-tint),transparent 70%);
  border:1px solid rgba(0,125,137,.25)}
.bigmoney{font-family:'Unbounded',sans-serif;font-weight:400;font-size:34px;letter-spacing:-.02em;line-height:1}

.disclaim{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);padding:17px 19px}
.disclaim .dh{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;margin-bottom:4px}
.disclaim .dh svg{color:var(--muted);flex:none}
.disclaim .dsub{font-size:12px;color:var(--muted-2);margin-bottom:13px}
.disclaim ol{list-style:none;counter-reset:d;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:11px 22px}
.disclaim li{counter-increment:d;position:relative;padding-left:26px;font-size:12.5px;color:var(--muted);line-height:1.6}
.disclaim li::before{content:counter(d);position:absolute;left:0;top:1px;width:18px;height:18px;border-radius:6px;
  background:var(--surface);border:1px solid var(--line);color:var(--ink-2);font-size:10.5px;font-weight:700;
  display:flex;align-items:center;justify-content:center}
.disclaim li b{color:var(--ink)}
@media(max-width:900px){ .disclaim ol{grid-template-columns:1fr} }

.modelled{font-size:11.5px;color:var(--muted-2);line-height:1.55;margin-top:12px;padding-top:11px;
  border-top:1px dashed var(--line)}

.ruleline{display:flex;gap:8px;align-items:flex-start;margin-top:9px;padding:8px 10px;border-radius:8px;
  background:var(--surface-2);border:1px solid var(--line-2);font-size:11.5px;color:var(--muted);line-height:1.55}
.ruleline b{color:var(--ink-2);font-weight:600;flex:none}

.metricsel{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-family:inherit;font-size:12px;
  font-weight:500;color:var(--muted);background:transparent;border:1px solid transparent;border-radius:7px;
  padding:2px 20px 2px 6px;margin-left:-6px;cursor:pointer;max-width:170px;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%2393A1AC' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 5px center}
.metricsel:hover{border-color:var(--line);background-color:var(--surface-2)}
.metricsel:focus{outline:none;border-color:var(--teal);box-shadow:var(--ring)}
.metricsel option:disabled{color:var(--muted-2)}

.kpi.locked .val{color:var(--muted-2)}
.kpi.locked .meter>span{background:var(--line)}
.lockwhy{font-size:11.5px;color:var(--muted);line-height:1.5;margin-top:9px}
.lockwhy a{color:var(--teal-600);font-weight:600}

.spend-list{display:flex;flex-direction:column;margin-top:15px}
.schan{border-top:1px solid var(--line-2)}
.schan:first-child{border-top:0}
.schan>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:9px;padding:9px 2px;
  font-size:12.5px;border-radius:8px}
.schan>summary::-webkit-details-marker{display:none}
.schan>summary:hover{background:var(--surface-2)}
.schan .sn{font-weight:600;flex:1;min-width:0}
.schan .sv{font-family:'Unbounded',sans-serif;font-weight:400;font-variant-numeric:tabular-nums}
.schan .sp{color:var(--muted-2);font-size:11.5px;width:40px;text-align:right}
.schan .chev{color:var(--muted-2);transition:transform .18s ease;flex:none}
.schan[open]>summary .chev{transform:rotate(180deg)}
.skids{padding:2px 0 10px 22px;display:flex;flex-direction:column;gap:1px}
.skid{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:8px;font-size:12.5px;color:var(--ink-2)}
.skid:hover{background:var(--surface-2);color:var(--ink)}
.skid .kn{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.skid .kv{font-family:'Unbounded',sans-serif;font-weight:600;font-variant-numeric:tabular-nums;flex:none}
.skid .go{color:var(--muted-2);flex:none}
.skid:hover .go{color:var(--teal-600)}
.subnote{font-size:11px;color:var(--muted-2);line-height:1.55;padding:8px 10px;margin:4px 0 2px;
  background:var(--surface-2);border:1px solid var(--line-2);border-radius:8px}
.subnote b{color:var(--ink-2)}

tr.linked{cursor:pointer}
tr.linked td:first-child a{color:inherit}
tr.linked:hover td:first-child a{color:var(--teal-600);text-decoration:underline}

.article-body{max-width:72ch; font-size:15.5px; line-height:1.75; color:var(--ink)}
.article-body > *:first-child{margin-top:0}
.article-body p{margin:0 0 1.1em}
.article-body h2{font-family:'Unbounded',sans-serif; font-size:22px; font-weight:400;
  letter-spacing:-.02em; margin:1.9em 0 .6em}
.article-body h3{font-size:17px; font-weight:700; margin:1.6em 0 .5em}
.article-body h4{font-size:15px; font-weight:700; margin:1.4em 0 .4em; color:var(--ink-2)}
.article-body ul,.article-body ol{margin:0 0 1.1em; padding-left:1.3em}
.article-body li{margin:0 0 .45em}
.article-body a{color:var(--teal-600); font-weight:600; text-decoration:underline; text-underline-offset:2px}
.article-body blockquote{margin:1.4em 0; padding:2px 0 2px 18px; box-shadow:inset 3px 0 0 var(--line);
  color:var(--muted); font-style:italic}
.article-body code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.9em;
  background:var(--surface-2); padding:2px 6px; border-radius:5px}
.article-body pre{background:var(--surface-2); padding:14px 16px; border-radius:var(--r);
  overflow-x:auto; margin:0 0 1.1em}
.article-body pre code{background:none; padding:0}

.row-open{color:inherit; text-decoration:none}
.row-open:hover{color:var(--teal-600); text-decoration:underline; text-underline-offset:2px}

.crumb{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted-2);margin-bottom:9px}
.crumb a{color:var(--teal-600);font-weight:600}

.isbar{display:flex;height:26px;border-radius:9px;overflow:hidden;margin-top:12px;border:1px solid var(--line)}
.isbar i{display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;color:#fff}

.staffonly{border:1px dashed var(--navy);background:var(--navy-tint);border-radius:var(--r-lg);padding:14px 16px}
.staffonly .so-l{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--navy)}

@media(max-width:1180px){ .g-main{grid-template-columns:1fr} }

.nav-lock{position:relative}
.nav-item.locked{opacity:.55}
.nav-item.locked:hover{opacity:.95; background:var(--surface-2)}
.nav-item.locked .lockic{margin-left:auto; flex:none; color:var(--muted-2)}
.nav-item.locked:hover .lockic{color:var(--teal-600)}

.lock-pop{
  position:absolute; left:0; right:0; top:calc(100% + 5px); z-index:60;
  background:var(--surface); border:1px solid var(--line); border-radius:12px;
  box-shadow:0 12px 32px rgba(16,24,40,.16); padding:12px 13px;
  opacity:0; visibility:hidden; transform:translateY(-4px);
  transition:opacity .14s ease, transform .14s ease, visibility .14s;
}
.nav-lock:hover .lock-pop, .nav-lock:focus-within .lock-pop{opacity:1; visibility:visible; transform:translateY(0)}
.lock-pop .lp-h{display:flex; align-items:center; gap:7px; font-size:12px; font-weight:700; color:var(--ink); margin-bottom:6px}
.lock-pop .lp-h svg{color:var(--muted-2); flex:none}
.lock-pop .lp-b{font-size:11.5px; color:var(--muted); line-height:1.55}

.locked-hero{background:var(--grad-soft); border-color:var(--line)}
.locked-hero .lh-inner{display:flex; gap:30px; padding:34px 32px; align-items:flex-start; flex-wrap:wrap}
.locked-hero .lh-lock{width:112px; height:112px; flex:none; border-radius:26px;
  background:var(--surface); border:1px solid var(--line); box-shadow:var(--shadow-md);
  display:flex; align-items:center; justify-content:center; color:var(--navy)}
.locked-hero .lh-lock svg{width:62px; height:62px}
.locked-hero .lh-body{flex:1; min-width:280px}
.locked-hero .lh-title{font-family:'Unbounded',sans-serif; font-size:19px; font-weight:600; letter-spacing:-.015em}
.locked-hero .lh-sub{font-size:13.5px; color:var(--ink-2); line-height:1.65; margin-top:8px; max-width:640px}
@media(max-width:640px){ .locked-hero .lh-inner{padding:24px 20px; gap:20px} .locked-hero .lh-lock{width:80px;height:80px;border-radius:20px} .locked-hero .lh-lock svg{width:44px;height:44px} }

.rangepick{position:relative}
.rangepick>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;
  font-size:12.5px;font-weight:600;color:var(--ink);padding:8px 12px;border-radius:10px;
  border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);white-space:nowrap}
.rangepick>summary::-webkit-details-marker{display:none}
.rangepick>summary:hover{border-color:var(--muted-2)}
.rangepick[open]>summary{border-color:var(--teal);box-shadow:var(--ring)}
.rangepick>summary svg{color:var(--muted);flex:none}
.rangepick .rp-chev{transition:transform .18s ease}
.rangepick[open] .rp-chev{transform:rotate(180deg)}

.rangepick .rp-dot{width:6px;height:6px;border-radius:50%;background:var(--warn);flex:none}

.rp-menu{position:absolute;z-index:60;right:0;top:calc(100% + 6px);width:270px;padding:8px;
  background:var(--surface);border:1px solid var(--line);border-radius:12px;
  box-shadow:0 14px 36px rgba(16,24,40,.16)}

@media(max-width:480px){

  .rp-menu{position:fixed; left:12px; right:12px; top:auto; bottom:12px; width:auto; max-width:none; max-height:70vh; overflow-y:auto}
}
.rp-head{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--muted-2);padding:7px 9px 5px}
.rp-item{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:8px;
  font-size:12.5px;color:var(--ink);text-decoration:none}
.rp-item:hover{background:var(--surface-2)}
.rp-item.on{font-weight:600;background:var(--teal-tint);color:var(--navy)}
.rp-tick{margin-left:auto;color:var(--teal-600);font-weight:700}
.rp-custom{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;padding:4px 9px 2px}
.rp-custom label{display:flex;flex-direction:column;gap:4px;flex:1 1 108px;
  font-size:11px;font-weight:600;color:var(--muted)}
.rp-custom input{padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);
  font-size:12.5px;color:var(--ink);font-family:inherit;width:100%}
.rp-custom input:focus{outline:none;border-color:var(--teal);box-shadow:var(--ring)}
.rp-custom button{flex:1 1 100%;margin-top:2px}
.rp-foot{padding:9px 9px 4px;margin-top:4px;border-top:1px solid var(--line-2);
  font-size:11px;color:var(--muted-2);line-height:1.5}
.rp-foot b{color:#B5791E}

.periodonly{font-size:10px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;
  color:var(--muted-2);border:1px solid var(--line);border-radius:var(--r-pill);padding:1px 7px;white-space:nowrap}

.tbl th.sortable{padding:0}
.tbl th.sortable>a{
  display:block; padding:11px 14px; color:inherit; text-decoration:none;
  font:inherit; letter-spacing:inherit; text-transform:inherit; white-space:nowrap;
}
.tbl th.sortable>a:hover{color:var(--ink); background:var(--surface-2)}
.tbl th.sortable.on>a{color:var(--ink)}
.tbl th.sortable .sarrow{margin-inline-start:5px; font-size:10px; line-height:1}
.tbl th.sortable.on .sarrow{color:var(--teal)}

.staff-only{border-color:var(--accent-strong, var(--line))}
.chg-forms{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:0}
.chg-forms>.chg-form:first-child{border-inline-end:1px solid var(--line)}
@media (max-width:900px){
  .chg-forms{grid-template-columns:1fr}
  .chg-forms>.chg-form:first-child{border-inline-end:0; border-bottom:1px solid var(--line)}
}
.chg-form{padding:16px 18px}
.chg-t{font-size:13px; font-weight:700; color:var(--ink); margin-bottom:10px}
.chg-grid{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px; margin-bottom:12px}
.chg-grid>label{display:flex; flex-direction:column; gap:4px; font-size:11.5px; font-weight:600; color:var(--muted)}
.chg-grid>label:first-child{grid-column:1 / -1}
.chg-grid .opt{font-weight:500; color:var(--muted-2); text-transform:none; letter-spacing:0}

@media(max-width:520px){ .chg-grid{grid-template-columns:1fr} .chg-grid>label:first-child{grid-column:auto} }

.chg-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:760px){ .chg-4{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media(max-width:420px){ .chg-4{grid-template-columns:1fr} }

.split-320{grid-template-columns:320px minmax(0,1fr)}
.split-200{grid-template-columns:200px minmax(0,1fr)}
@media(max-width:760px){ .split-320,.split-200{grid-template-columns:1fr} }

.bd-3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:700px){ .bd-3{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media(max-width:420px){ .bd-3{grid-template-columns:1fr} }

.inp{
  width:100%; box-sizing:border-box; font:inherit; font-size:12.5px; color:var(--ink);
  background:var(--card); border:1px solid var(--line); border-radius:8px; padding:8px 10px;
}
.inp:focus{outline:none; border-color:var(--teal); box-shadow:var(--ring)}

.filterbar{display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:12px}
.filterbar .fb-lbl{font-size:11.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:var(--muted-2); margin-right:2px}
.efilt{display:inline-flex; align-items:center; gap:6px; font:inherit; font-size:13px; font-weight:600;
  color:var(--muted); background:var(--surface); border:1px solid var(--line); border-radius:var(--r-pill);
  padding:6px 13px; cursor:pointer; transition:border-color .12s, color .12s, background .12s}
.efilt:hover{border-color:var(--teal); color:var(--ink)}
.efilt .pilln{background:var(--line-2); color:var(--muted); font-size:11.5px; padding:1px 7px; border-radius:var(--r-pill)}
.efilt.on{background:var(--teal-tint); border-color:var(--teal); color:var(--teal-600)}
.efilt.on .pilln{background:var(--teal); color:#fff}
.efilt:focus-visible{outline:none; box-shadow:0 0 0 3px var(--teal-tint)}

.idea{display:flex; gap:14px; align-items:flex-start; border:1px solid var(--line);
  border-radius:12px; padding:13px 15px; background:var(--surface)}
.idea-main{flex:1; min-width:0}
.idea-q{font-weight:600; font-size:14.5px; color:var(--ink); line-height:1.4}
.idea-ev{margin-top:9px; padding:9px 12px; border-left:3px solid var(--teal);
  background:var(--teal-tint); border-radius:0 8px 8px 0; font-size:13px;
  color:var(--ink); line-height:1.55}
.idea-act{display:flex; gap:7px; flex:none; padding-top:2px}
@media(max-width:700px){ .idea{flex-direction:column} .idea-act{width:100%} }

.lgi{cursor:pointer; user-select:none; transition:opacity .12s}
.lgi:not(.on){opacity:.38}
.lgi:not(.on) b, .lgi:not(.on) .mini{color:var(--muted-2) !important}
.lgi:focus-visible{outline:none; box-shadow:0 0 0 3px var(--teal-tint); border-radius:6px}

.axis-x .fut{color:var(--muted-2); opacity:.6; font-style:italic}
.fc-box{margin-top:14px; padding:12px 14px; border:1px dashed var(--line);
  border-radius:11px; background:var(--surface-2)}
.fc-h{display:flex; align-items:center; gap:9px; flex-wrap:wrap; font-size:13px; margin-bottom:9px}
.fc-rows{display:flex; flex-direction:column; gap:6px}
.fc-row{display:flex; align-items:center; gap:9px; flex-wrap:wrap; font-size:13px}
.fc-row .fc-n{font-weight:600; color:var(--ink); min-width:82px}
.fc-off [data-forecast]{display:none}

.grow-list{display:flex; flex-direction:column; gap:14px}
.grow-card{border-left:3px solid var(--teal)}
.gc-h{display:flex; align-items:flex-start; gap:10px; flex-wrap:wrap}
.gc-t{font-family:'Unbounded',sans-serif; font-size:17px; font-weight:600;
  margin:0 0 7px; color:var(--ink); display:inline-block; margin-right:9px}
.gc-pitch{margin-top:10px; font-size:14px; line-height:1.6; color:var(--ink); max-width:74ch}
.gc-ev{margin-top:14px; padding:12px 14px; border-radius:10px; background:var(--surface-2);
  border:1px solid var(--line)}
.gc-ev-h{font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:var(--muted-2); margin-bottom:9px}
.gc-ev-row{display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; padding:4px 0; font-size:13px}
.gc-ev-l{color:var(--muted); min-width:200px; flex:1}
.gc-ev-v{color:var(--ink); font-weight:600}
.gc-foot{margin-top:15px; padding-top:13px; border-top:1px solid var(--line-2);
  display:flex; gap:10px; align-items:center; flex-wrap:wrap}
.gc-form{display:flex; gap:9px; align-items:center; flex:1; flex-wrap:wrap}
.gc-form .input{flex:1; min-width:220px; padding:8px 11px; border:1px solid var(--line);
  border-radius:9px; background:var(--surface); font-size:13px; color:var(--ink); font-family:inherit}
.gc-form .input:focus{outline:none; border-color:var(--teal); box-shadow:0 0 0 3px var(--teal-tint)}
@media(max-width:640px){ .gc-ev-l{min-width:0} }

.nudge{display:flex; align-items:center; gap:12px; padding:12px 16px; margin-bottom:14px;
  border-left:3px solid var(--teal); background:var(--teal-tint); border-color:var(--teal);
  flex-wrap:wrap; font-size:13.5px}
.nudge-i{color:var(--teal-600); display:flex; flex:none}
.nudge-t{flex:1; min-width:220px; color:var(--ink); line-height:1.5}
.nudge-t b{font-weight:600}
.nudge-t .rr-meta{display:block; margin-top:2px}
.nudge-a{display:flex; gap:7px; flex:none}
@media(max-width:640px){ .nudge-a{width:100%} }

.alert-list{display:flex; flex-direction:column; margin-top:10px}
.alert-row{
  display:flex; align-items:flex-start; gap:10px; justify-content:space-between;
  padding:9px 0; border-bottom:1px solid var(--line);
}
.alert-row:last-child{border-bottom:0}
.alert-name{font-size:12.5px; color:var(--ink); font-weight:600; line-height:1.35}
.alert-sub{font-size:11px; font-weight:500; color:var(--muted); margin-top:2px; line-height:1.4}
.alert-row .chip{flex:none}

.ov-strip{display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:1px; background:var(--line);
  border:1px solid var(--line); border-radius:11px; overflow:hidden}
.ov{background:var(--surface); padding:11px 13px}
.ovl{font-size:11.5px; color:var(--muted); margin-bottom:5px}
.ovv{font-size:19px; font-weight:600; color:var(--ink); display:flex; align-items:center; gap:6px; flex-wrap:wrap}
.ov.pos-b{background:var(--pos-tint)}
.donut-pair{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px}
.donut-box{min-width:0}
.donut-key{display:flex; flex-direction:column; gap:5px; font-size:12px; color:var(--muted); min-width:0}
.donut-key span{display:flex; align-items:center; gap:7px}
.donut-key b{color:var(--ink); margin-left:auto}
@media(max-width:900px){ .ov-strip{grid-template-columns:repeat(3,minmax(0,1fr))} .donut-pair{grid-template-columns:1fr} }
@media(max-width:560px){ .ov-strip{grid-template-columns:repeat(2,minmax(0,1fr))} }

.ov-1{grid-template-columns:1fr}
.ov-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ov-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ov-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){ .ov-4{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media(max-width:700px){ .ov-3{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media(max-width:420px){ .ov-2,.ov-3,.ov-4{grid-template-columns:1fr} }

.cl-chips{display:flex; gap:4px; flex-wrap:wrap; max-width:250px}
.cl-pick{display:flex; flex-direction:column; gap:2px; max-height:230px; overflow-y:auto;
  border:1px solid var(--line); border-radius:9px; padding:6px}
.cl-opt{display:flex; align-items:center; gap:8px; padding:5px 7px; border-radius:7px;
  font-size:13px; color:var(--ink); cursor:pointer}
.cl-opt:hover{background:var(--surface-2)}
.cl-opt span{flex:1; min-width:0}
.cl-opt.is-am{cursor:default; opacity:.9}
.cl-opt input[type=checkbox]{flex:none}

.pos-grid{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:1px; background:var(--line);
  border:1px solid var(--line); border-radius:10px; overflow:hidden}
.pos-grid .pos-b{background:var(--pos-tint); padding:10px 12px}
.pos-grid .pl{font-size:11.5px; color:var(--muted); margin-bottom:3px}
.pos-grid .pv{font-size:20px; font-weight:600; color:var(--ink); line-height:1.1}

.side-donut{display:flex; gap:14px; align-items:center; flex-wrap:wrap}
.side-donut .donut-key{flex:1; min-width:130px; font-size:11.5px; gap:4px}
.src-list{display:flex; flex-direction:column}
.src-row{display:flex; align-items:center; gap:9px; padding:7px 0; font-size:13px;
  border-bottom:1px solid var(--line-2)}
.src-row:last-child{border-bottom:0}
.src-row .src-n{flex:1; min-width:0; color:var(--ink); overflow:hidden;
  text-overflow:ellipsis; white-space:nowrap}
.src-row b{color:var(--ink)}

.tour-root{position:fixed; inset:0; z-index:9000; pointer-events:none; display:none}
.tour-root.on{display:block}

.tour-veil{position:absolute; background:rgba(11,20,38,.55); pointer-events:auto;
  transition:top .18s ease, left .18s ease, width .18s ease, height .18s ease}
.tour-hole{position:absolute; border-radius:12px; pointer-events:none;
  box-shadow:0 0 0 2px var(--teal), 0 0 0 7px rgba(0,125,137,.20);
  transition:top .18s ease, left .18s ease, width .18s ease, height .18s ease}
.tour-pop{position:absolute; pointer-events:auto; background:var(--surface);
  border:1px solid var(--line); border-radius:14px; padding:16px 17px 13px;
  box-shadow:0 18px 50px rgba(11,20,38,.28); max-width:400px}

.tour-step{display:flex; align-items:baseline; justify-content:space-between; gap:12px;
  font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:var(--teal-600); margin:0 22px 7px 0}
.tour-count{color:var(--muted-2); font-weight:600; flex:none}
.tour-title{font-family:'Unbounded',sans-serif; font-size:16px; font-weight:600;
  margin:0 0 7px; color:var(--ink)}
.tour-body{margin:0; font-size:13.5px; line-height:1.62; color:var(--muted)}

.tour-pts{margin:10px 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:6px}
.tour-pts li{position:relative; padding-left:15px; font-size:12.5px; line-height:1.55; color:var(--muted-2)}
.tour-pts li::before{content:''; position:absolute; left:2px; top:7px; width:5px; height:5px;
  border-radius:50%; background:var(--teal)}
.tour-prog{height:3px; border-radius:3px; background:var(--line-2); margin:14px 0 0; overflow:hidden}
.tour-prog span{display:block; height:100%; width:0; border-radius:3px; background:var(--teal);
  transition:width .22s ease}
.tour-act{display:flex; align-items:center; gap:8px; margin-top:11px}

.tour-restart{border-color:transparent; color:var(--muted-2); box-shadow:none}
.tour-restart:hover{color:var(--ink); border-color:var(--line)}
.tour-hint{margin-top:9px; font-size:10.5px; color:var(--muted-2); text-align:right; letter-spacing:.02em}
.tour-x{width:24px; height:24px; padding:0; line-height:1;
  border:0; border-radius:7px; background:transparent; color:var(--muted-2); font-size:19px;
  cursor:pointer; display:flex; align-items:center; justify-content:center}
.tour-x:hover{background:var(--surface-2); color:var(--ink)}

.tour-pop::after{content:''; position:absolute; width:10px; height:10px; background:var(--surface);
  border:1px solid var(--line); transform:rotate(45deg)}
.tour-pop[data-side="bottom"]::after{top:-6px; left:26px; border-right:0; border-bottom:0}
.tour-pop[data-side="top"]::after{bottom:-6px; left:26px; border-left:0; border-top:0}
.tour-pop[data-side="right"]::after{left:-6px; top:26px; border-right:0; border-top:0}
.tour-pop[data-side="left"]::after{right:-6px; top:26px; border-left:0; border-bottom:0}
.tour-pop:not([data-side])::after,.tour-pop[data-side=""]::after{display:none}
@media(max-width:640px){ .tour-pop{max-width:calc(100vw - 24px)} .tour-hint{display:none} }

.tour-coach{pointer-events:none}
.tour-coach .tour-pop,.tour-coach .tour-pill{pointer-events:auto}
.tour-coach .tour-hole{box-shadow:0 0 0 2px var(--teal), 0 0 0 6px rgba(0,125,137,.16)}

.tour-coach .tour-pop{position:fixed; right:20px; bottom:20px; top:auto; left:auto;
  width:370px; max-width:calc(100vw - 32px); max-height:calc(100vh - 40px); overflow:auto}
.tour-coach .tour-pop::after{display:none}
.tour-coach.min .tour-pop{display:none}

.tour-pill{position:fixed; left:20px; bottom:20px; z-index:9001; pointer-events:auto;
  padding:9px 14px; border-radius:var(--r-pill); border:1px solid var(--line); cursor:pointer;
  background:var(--fill-strong); color:var(--on-fill-strong); font-size:12px; font-weight:600; font-family:inherit;
  box-shadow:0 10px 26px rgba(11,20,38,.24)}
.tour-pill:hover{filter:brightness(1.08)}
.tour-tools{position:absolute; top:8px; right:9px; display:flex; gap:2px}
.tour-min{width:24px; height:24px; padding:0; line-height:1; border:0; border-radius:7px;
  background:transparent; color:var(--muted-2); font-size:17px; cursor:pointer;
  display:flex; align-items:center; justify-content:center}
.tour-min:hover{background:var(--surface-2); color:var(--ink)}

.tour-do{margin-top:11px; padding:9px 11px; border-radius:9px; background:var(--teal-tint);
  border:1px solid rgba(0,125,137,.28); font-size:12.5px; line-height:1.55; color:var(--ink); font-weight:600}
@media(max-width:640px){
  .tour-coach .tour-pop{right:10px; left:10px; bottom:10px; width:auto}
  .tour-pill{left:10px; bottom:10px}
}

[hidden]{display:none !important}

.fnote{margin-top:6px; font-size:11.5px; line-height:1.6; color:var(--muted)}
.fnote .code{font-size:11px}

.fsrc{margin-top:9px; padding-top:8px; border-top:1px solid var(--line-2)}
.fsrc-h{font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  color:var(--muted-2); margin-bottom:5px}
.fsrc-h .rr-meta{font-weight:500; letter-spacing:0; text-transform:none}
.fsrc-l{margin:0; padding-left:18px; display:flex; flex-direction:column; gap:3px}
.fsrc-l li{font-size:11.5px; line-height:1.5; color:var(--muted-2)}
.fsrc-l a{color:var(--teal-600); text-decoration:none; word-break:break-word}
.fsrc-l a:hover{text-decoration:underline}
.fsrc-l .rr-meta{margin-left:6px}
.fsrc-ask{display:inline-block; margin-top:7px; font-size:11.5px; font-weight:600;
  color:var(--teal-600); text-decoration:none}
.fsrc-ask:hover{text-decoration:underline}

.fsrc-none{font-size:11.5px; line-height:1.55; color:var(--muted-2);
  border-left:2px solid var(--warn); padding:2px 0 2px 8px}

.gaccess{border-color:rgba(232,161,58,.45); background:var(--warn-tint); margin-bottom:16px}
.gaccess.done{border-color:rgba(63,122,23,.35); background:var(--green-tint)}
.ga-head{display:flex; gap:12px; align-items:flex-start}
.ga-ico{flex:none; width:32px; height:32px; border-radius:9px; display:flex; align-items:center;
  justify-content:center; background:var(--surface); color:#B5791E; box-shadow:var(--shadow)}
.gaccess.done .ga-ico{color:#3F7A17}

:root[data-theme="dark"] .gaccess.done .ga-ico{color:var(--green)}
.ga-ico svg{width:17px; height:17px}
.ga-t{font-size:14px; font-weight:600; color:var(--ink)}
.ga-s{font-size:12.5px; line-height:1.6; color:var(--muted); margin-top:3px}

.ga-addr{display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:14px 0 4px;
  padding:10px 12px; background:var(--surface); border:1px solid var(--line); border-radius:10px}
.ga-addr code{flex:1; min-width:200px; font-size:12.5px; color:var(--ink); word-break:break-all; user-select:all}
.ga-steps{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; margin-top:14px}
@media (max-width:820px){ .ga-steps{grid-template-columns:1fr} }
.ga-step{display:flex; gap:11px; padding:13px 14px; background:var(--surface);
  border:1px solid var(--line); border-radius:var(--r)}
.ga-step.ok{border-color:rgba(63,122,23,.35)}
.ga-n{flex:none; width:22px; height:22px; border-radius:50%; background:var(--fill-strong); color:var(--on-fill-strong);
  font-size:11.5px; font-weight:700; display:flex; align-items:center; justify-content:center}
.ga-step.ok .ga-n{background:#3F7A17}
.ga-st{font-size:13px; font-weight:600; color:var(--ink); margin-bottom:4px}
.ga-sb{font-size:12px; line-height:1.6; color:var(--muted)}
.ga-step .btn{margin-top:9px}
.ga-foot{margin-top:12px}

.flbl{display:flex; align-items:center; gap:6px; margin-bottom:6px}
.flbl>label{font-size:11.5px; font-weight:600; color:var(--muted); display:block}

.section-title.flbl{margin-bottom:0}
.section-title.flbl .ihelp,.flbl .rr-lbl+.ihelp{color:var(--muted-2)}

.ihelp{position:relative; display:inline-flex; align-items:center; color:var(--muted-2);
  cursor:help; border-radius:50%; outline:none; vertical-align:-0.17em}
.ihelp>svg{width:13px; height:13px; display:block}

.ihelp{margin-inline-start:4px}
.flbl > .ihelp,.ihelp-w > .ihelp,.kpi .top > .ihelp{margin-inline-start:0}
.ihelp:hover,.ihelp:focus-visible{color:var(--teal-600)}
.ihelp:focus-visible{box-shadow:var(--ring)}
.ihelp-pop{
  position:absolute; left:-8px; top:calc(100% + 7px); z-index:70; width:290px; max-width:70vw;
  background:var(--surface); border:1px solid var(--line); border-radius:11px;
  box-shadow:var(--shadow-lg); padding:11px 12px;

  font-size:12px; line-height:1.6; font-weight:400; color:var(--muted); text-transform:none;
  letter-spacing:0; white-space:normal;

  display:none;
}
.ihelp:hover .ihelp-pop,.ihelp:focus .ihelp-pop,.ihelp:focus-within .ihelp-pop{display:block}
.ihelp-pop b:first-child{display:block; color:var(--ink); font-size:12.5px; font-weight:700; margin-bottom:5px}

.ihelp-pop b{font-weight:600; color:var(--ink)}
.ihelp-pop b:first-child{font-weight:700}

.ihelp-w{position:relative; display:inline-flex; align-items:center; gap:5px;
  cursor:help; outline:none; border-radius:6px}
.ihelp-w > svg{width:13px; height:13px; flex:none; color:var(--muted-2)}
.ihelp-w:hover,.ihelp-w:focus-visible{color:var(--teal-600)}
.ihelp-w:hover > svg,.ihelp-w:focus-visible > svg{color:var(--teal-600)}
.ihelp-w:focus-visible{box-shadow:var(--ring)}
.ihelp-w > .ihelp-pop{display:none}
.ihelp-w:hover > .ihelp-pop,.ihelp-w:focus > .ihelp-pop,.ihelp-w:focus-within > .ihelp-pop{display:block}

.vdark .ihelp-pop{color:var(--muted)}
.vdark .ihelp-pop b{color:var(--ink)}
.ihelp-pop .code{font-size:10.5px}

.ihelp.ihelp-flip .ihelp-pop{left:auto; right:-8px}

.ihelp-w.ihelp-flip > .ihelp-pop{left:auto; right:-8px}

.grid.g-2 > div:nth-child(even) .ihelp-pop,
.kpis   > *:nth-last-child(-n+2) .ihelp-pop,
.ov-strip > *:nth-last-child(-n+2) .ihelp-pop,
.strip  > *:nth-last-child(-n+2) .ihelp-pop,
.bento  > *:nth-last-child(-n+2) .ihelp-pop,
.breakdown > *:nth-last-child(-n+2) .ihelp-pop{left:auto; right:-8px}
@media (max-width:760px){
  .grid.g-2 > div:nth-child(even) .ihelp-pop,
  .kpis > *:nth-last-child(-n+2) .ihelp-pop,
  .ov-strip > *:nth-last-child(-n+2) .ihelp-pop,
  .strip > *:nth-last-child(-n+2) .ihelp-pop,
  .bento > *:nth-last-child(-n+2) .ihelp-pop,
  .breakdown > *:nth-last-child(-n+2) .ihelp-pop{left:-8px; right:auto}

  .ihelp.ihelp-flip .ihelp-pop,
  .ihelp-w.ihelp-flip > .ihelp-pop{left:auto; right:-8px}
}

.pcl-grp{margin-bottom:16px}
.pcl-grp:last-child{margin-bottom:0}
.pcl-ghead{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:8px}
.pcl-gname{font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--muted)}

.pcl-all{display:flex; align-items:center; gap:5px; font-size:11px; font-weight:600; color:var(--muted-2); cursor:pointer; user-select:none}
.pcl-all:hover{color:var(--teal-600)}
.pcl-all input{width:13px; height:13px; accent-color:var(--teal); cursor:pointer}
.pcl-items{display:flex; flex-wrap:wrap; gap:7px}
.pcl-item{position:relative; display:inline-flex}
.pcl-item input{position:absolute; inset:0; opacity:0; margin:0; cursor:pointer}
.pcl-chip{
  display:flex; align-items:center; gap:6px; padding:7px 12px 7px 10px;
  border:1px solid var(--line); border-radius:var(--r-pill); background:var(--surface);
  font-size:12.5px; font-weight:500; color:var(--ink); white-space:nowrap;
  transition:background .12s,border-color .12s,color .12s,box-shadow .12s;
}

.pcl-tick{flex:none; width:15px; height:15px; border-radius:50%; border:1.5px solid var(--line);
  display:flex; align-items:center; justify-content:center; transition:background .12s,border-color .12s}
.pcl-tick svg{width:9px; height:9px; opacity:0; transform:scale(.5); transition:opacity .12s,transform .12s}
.pcl-item input:checked + .pcl-chip{background:var(--teal-tint); border-color:var(--teal); color:var(--teal-600)}
.pcl-item input:checked + .pcl-chip .pcl-tick{background:var(--teal); border-color:var(--teal)}
.pcl-item input:checked + .pcl-chip .pcl-tick svg{opacity:1; transform:scale(1)}
.pcl-item input:focus-visible + .pcl-chip{box-shadow:var(--ring)}
.pcl-item:hover .pcl-chip{border-color:var(--teal)}

.copy-prompt {
  border: 0; background: none; cursor: pointer;

  display: inline-flex; align-items: center; justify-content: center;
  width: 24px; height: 24px; margin: -4px 0; padding: 0;
  flex: none; vertical-align: middle;
  color: var(--muted-2); opacity: .45;
  transition: opacity .12s ease, color .12s ease;
}
.copy-prompt:hover { opacity: 1; color: var(--teal-600); text-decoration: underline; }
.copy-prompt:focus-visible { opacity: 1; color: var(--teal-600); outline: 2px solid var(--teal); outline-offset: 2px; border-radius: 3px; }

.vtiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:24px;row-gap:24px;padding-top:15px}

.vtile{position:relative;background:var(--vt);color:var(--vt-fg,#fff);
  border-radius:12px 0 12px 12px;padding:16px 18px 18px;min-height:126px;
  box-shadow:var(--tile-shadow);display:flex;flex-direction:column;
  align-items:flex-start;justify-content:space-between;
  transition:transform .18s cubic-bezier(.2,.6,.2,1), box-shadow .18s ease}
.vtile:hover{transform:translateY(-3px);box-shadow:0 18px 28px -8px rgba(13,23,45,.28)}

.vtile .vt-tab{position:absolute; right:0; top:-14px; width:38px; height:15px;
  background:var(--vt); border-radius:5px 12px 0 0;
  display:flex; align-items:center; justify-content:center; padding-bottom:1px}
.vtile .vt-arw{width:10px; height:10px; opacity:.8; transition:opacity .16s ease, transform .16s ease}
.vtile:hover .vt-arw{opacity:1; transform:translate(1px,-1px)}

.vt-white .vt-tab{box-shadow:inset 0 1px 0 rgba(13,23,45,.08), inset -1px 0 0 rgba(13,23,45,.08), inset 1px 0 0 rgba(13,23,45,.08)}

.vtile .vt-ic{width:34px;height:34px;border-radius:9px;flex:none;
  display:flex;align-items:center;justify-content:center;
  background:var(--vt-pl,rgba(255,255,255,.18))}
.vtile .vt-ic svg{width:19px;height:19px;display:block}

.vtile .vt-lb{font-family:'Unbounded',sans-serif;font-weight:400;font-size:15.5px;
  line-height:1.22;letter-spacing:-.018em;text-align:left}
.vtile .vt-lb .vt-w{display:block;font-family:'Inter',sans-serif;font-size:11.5px;
  font-weight:500;letter-spacing:0;opacity:.8;margin-top:5px}

.vt-blue{--vt:#2563EB} .vt-navy{--vt:#0F172A} .vt-slate{--vt:#64748B}
.vt-violet{--vt:#007D89}
.vt-yellow{--vt:#FDE047;--vt-fg:#0D172D;--vt-pl:rgba(13,23,45,.13)}
.vt-white{--vt:#FFFFFF;--vt-fg:#0D172D;--vt-pl:rgba(13,23,45,.07);
  box-shadow:var(--tile-shadow),inset 0 0 0 1px rgba(13,23,45,.08)}

.bento{display:grid; grid-template-columns:repeat(12,minmax(0,1fr));
  column-gap:24px; row-gap:16px}
.bento > *{min-width:0}

.bento > .b1{grid-column:span 1} .bento > .b2{grid-column:span 2} .bento > .b3{grid-column:span 3}
.bento > .b4{grid-column:span 4} .bento > .b5{grid-column:span 5} .bento > .b6{grid-column:span 6}
.bento > .b7{grid-column:span 7} .bento > .b8{grid-column:span 8} .bento > .b9{grid-column:span 9}
.bento > .b10{grid-column:span 10} .bento > .b11{grid-column:span 11} .bento > .b12{grid-column:span 12}

.bento > .card, .bento > .vdark, .bento > .vsum{display:flex; flex-direction:column}

.claim{font-family:'Unbounded',sans-serif; font-size:38px; font-weight:400;
  letter-spacing:-.028em; line-height:1.16; margin:10px 0 0}
.claim-sub{color:var(--muted); font-size:15px; margin:14px 0 0}

.claim-lede{font-size:17px; line-height:1.5; color:var(--ink); margin:13px 0 0; font-weight:400}

.claim-lede em{font-style:normal; font-weight:600; position:relative; white-space:nowrap; color:var(--ink)}
.claim-lede em::after{content:''; position:absolute; left:0; right:0; bottom:-.12em;
  height:.14em; border-radius:var(--r-pill);
  background:linear-gradient(90deg,#7B9412,#D4EE69 44%,#7B9412)}

.claim-lede + .claim-sub{margin-top:8px}

.claim-alert{display:flex; align-items:flex-start; gap:11px; margin:15px 0 0;
  padding:12px 15px 12px 13px; border:1px solid var(--line); border-left-width:3px;
  border-radius:11px; background:var(--surface); color:var(--ink);
  font-size:14.5px; line-height:1.5; box-shadow:var(--shadow-sm, 0 1px 2px rgba(13,23,45,.05))}
.claim-alert .ca-i{flex:none; margin-top:1px}
.claim-alert.pos {border-left-color:var(--pos);  background:var(--pos-tint)}
.claim-alert.pos  .ca-i{color:var(--pos)}
.claim-alert.neg {border-left-color:var(--neg);  background:var(--neg-tint)}
.claim-alert.neg  .ca-i{color:var(--neg)}
.claim-alert.warn{border-left-color:var(--warn); background:var(--warn-tint)}
.claim-alert.warn .ca-i{color:#B5791E}
.claim-alert.info{border-left-color:var(--teal); background:var(--teal-tint)}
.claim-alert.info .ca-i{color:var(--teal-600)}

:is(.vnotch,.vdark) .claim-alert.warn .ca-i{color:var(--warn)}

.vdark .vd-orbit{position:absolute; right:-70px; top:50%; transform:translateY(-50%);
  width:400px; height:400px; pointer-events:none}
@media(max-width:1080px){.vdark .vd-orbit{opacity:.34; right:-150px}}

.vring{width:132px; height:132px; flex:none}
.vring-t{font-family:'Unbounded',sans-serif; font-size:31px; font-weight:400}
.vsig{display:flex; flex-direction:column; gap:11px; flex:1 1 210px; min-width:0}
.vsig-r{display:grid; grid-template-columns:minmax(0,1fr) 44px; align-items:center;
  gap:8px; font-size:12.5px}
.vsig-r .n{color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.vsig-r .v{font-family:'Unbounded',sans-serif; font-size:13px; text-align:right}
.vsig-r .b{height:5px; border-radius:var(--r-pill); background:var(--surface-2);
  overflow:hidden; grid-column:1/-1}
.vsig-r .b i{display:block; height:100%; border-radius:var(--r-pill); background:var(--teal)}

.vspark{width:100%; height:44px; display:block; margin-top:auto; padding-top:12px}

.qbar{display:flex; align-items:center; gap:12px; flex-wrap:nowrap;
  margin:22px 0 0; padding:14px 18px; background:var(--surface);
  border-radius:var(--r-lg)}
.qbar-acts{display:flex; align-items:center; gap:9px; flex-wrap:nowrap;
  flex:0 1 auto; min-width:0}
.qact{display:inline-flex; align-items:center; gap:8px; padding:10px 15px;
  border-radius:10px; border:1px solid var(--line); background:var(--surface);
  font-size:13.5px; font-weight:500; color:var(--ink); white-space:nowrap;

  box-shadow:var(--btn-shadow);
  min-width:0;
  transition:border-color .14s ease, background .14s ease, box-shadow .14s ease}
.qact:hover{border-color:var(--ink); box-shadow:var(--btn-shadow-hover)}

.qact span{overflow:hidden; text-overflow:ellipsis; min-width:0}
.qact svg{color:var(--muted-2); flex:none}
.qact:hover svg{color:var(--ink)}

.qact b{font-weight:700; color:var(--teal-600)}

.qact.qact-lead{background:var(--fill-strong); border-color:var(--fill-strong); color:var(--on-fill-strong)}

.qact.qact-lead svg{color:color-mix(in srgb, var(--on-fill-strong) 72%, transparent)}

.qact.qact-lead:hover{background:var(--fill-strong-hover); border-color:var(--fill-strong-hover)}

.qmeet{display:flex; align-items:center; gap:13px; margin-left:auto; flex:none; min-width:0; max-width:46%;
  position:relative; border-radius:12px; padding:4px 6px; margin-right:-6px}
.qmeet:hover{background:var(--surface-2)}
.qmeet-b{display:block; min-width:0; color:inherit; text-decoration:none}

.qmeet-acts{display:none; position:absolute; right:0; bottom:calc(100% + 6px); z-index:12;
  gap:7px; padding:8px; background:var(--surface); border:1px solid var(--line);
  border-radius:12px; box-shadow:var(--shadow-lg, 0 12px 28px -10px rgba(13,23,45,.25))}
.qmeet:hover .qmeet-acts, .qmeet:focus-within .qmeet-acts{display:flex}
.qmeet .btn{box-shadow:var(--btn-shadow); flex:none}
.qmeet .btn:hover{box-shadow:var(--btn-shadow-hover)}

@media(max-width:1180px){
  .qbar{flex-wrap:wrap}
  .qbar-acts{flex-wrap:wrap}
  .qmeet{max-width:100%}
}
.qmeet-d{width:46px; height:46px; border-radius:12px; background:var(--teal-tint);
  color:var(--teal-600); display:flex; flex-direction:column; align-items:center;
  justify-content:center; flex:none; line-height:1.05}
.qmeet-d b{font-family:'Unbounded',sans-serif; font-size:17px; font-weight:400}
.qmeet-d span{font-size:9.5px; font-weight:600; text-transform:uppercase; letter-spacing:.06em}
.qmeet-t{font-size:13.5px; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.qmeet-m{font-size:11.5px; color:var(--muted-2)}
@media(max-width:900px){.qmeet{margin-left:0; width:100%; padding-top:12px;
  border-top:1px solid var(--line-2)}}

.pgr{display:flex; align-items:center; justify-content:space-between; gap:14px;
  flex-wrap:wrap; padding:12px 16px; border-top:1px solid var(--line-2)}
.pgr-n{font-size:12px; color:var(--muted)}
.pgr-n b{color:var(--ink); font-weight:600}
.pgr-b{display:flex; align-items:center; gap:10px}
.pgr-p{font-size:11.5px; color:var(--muted-2); white-space:nowrap}
.pgr .btn.is-off{opacity:.42; pointer-events:none}
@media (max-width:560px){ .pgr{justify-content:center} .pgr-p{display:none} }

.shelf-row{display:grid; column-gap:24px; row-gap:16px;
  grid-template-columns:repeat(min(var(--shelf-n,4), 6), minmax(0,1fr))}
.shelf-row > .card{display:flex; flex-direction:column}
@media (max-width:980px){ .shelf-row{grid-template-columns:repeat(min(var(--shelf-n,3), 3), minmax(0,1fr))} }
@media (max-width:640px){ .shelf-row{grid-template-columns:repeat(2, minmax(0,1fr)); column-gap:12px} }
.shelf-c{padding:18px 20px}

.shelf-c .cl{font-size:11.5px; color:var(--muted); font-weight:500;
  line-height:1.35; min-height:2.7em;
  display:flex; align-items:flex-start; justify-content:space-between; gap:8px}
.shelf-c .cl .ihelp{flex:none; margin-left:auto; margin-top:1px}
.shelf-c .cv{font-family:'Unbounded',sans-serif; font-size:25px; font-weight:400;
  letter-spacing:-.02em; margin-top:6px; display:flex; align-items:baseline; gap:6px}

.shelf-c .cv .mini{font-size:11px; font-weight:700; white-space:nowrap}

a.shelf-c{color:inherit; text-decoration:none; transition:box-shadow .12s ease, transform .12s ease}
a.shelf-c:hover{box-shadow:0 6px 18px rgba(16,24,40,.08); transform:translateY(-1px)}

.shelf-c.sc-violet{background:#EAF6F7; box-shadow:inset 0 0 0 1px #D3ECEF}
.shelf-c.sc-lime  {background:#EEF7E6; box-shadow:inset 0 0 0 1px #D7ECC6}
.shelf-c.sc-navy  {background:#E9ECF4; box-shadow:inset 0 0 0 1px #D8DEEB}
.shelf-c.sc-sky   {background:#E6F0FA; box-shadow:inset 0 0 0 1px #D1E3F4}
.shelf-c.sc-sand  {background:#FAEFE0; box-shadow:inset 0 0 0 1px #F0E0C9}
.shelf-c.sc-rose  {background:#FBE9EF; box-shadow:inset 0 0 0 1px #F4D6E0}

:root[data-theme="dark"] .shelf-c.sc-violet{background:#393144; box-shadow:inset 0 0 0 1px #544965}
:root[data-theme="dark"] .shelf-c.sc-lime  {background:#303720; box-shadow:inset 0 0 0 1px #4F5A35}
:root[data-theme="dark"] .shelf-c.sc-navy  {background:#2D3449; box-shadow:inset 0 0 0 1px #424C6C}
:root[data-theme="dark"] .shelf-c.sc-sky   {background:#1E3748; box-shadow:inset 0 0 0 1px #2E5570}
:root[data-theme="dark"] .shelf-c.sc-sand  {background:#3D3324; box-shadow:inset 0 0 0 1px #605039}
:root[data-theme="dark"] .shelf-c.sc-rose  {background:#403037; box-shadow:inset 0 0 0 1px #604852}

.rr-end{display:inline-flex; align-items:center; gap:7px; margin-left:auto; flex:none}

.noval{font-size:.42em; color:var(--muted-2); letter-spacing:0; vertical-align:.28em}
:is(.vnotch,.vdark) .noval{color:rgba(255,255,255,.45)}

.voff{background:var(--surface); border:0; border-radius:var(--r-lg);
  box-shadow:inset 4px 0 0 var(--voff-rule), var(--card-shadow);
  padding:20px 24px 20px 28px; display:flex; gap:26px; align-items:center; flex-wrap:wrap}

.voff::before{content:''; flex:none; width:30px; height:30px; border-radius:9px;
  background:var(--voff-rule);
  -webkit-mask:no-repeat center/17px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M8 5.2v3.4M8 11v.1' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3Ccircle cx='8' cy='8' r='6.4' stroke='black' stroke-width='1.5'/%3E%3C/svg%3E");
  mask:no-repeat center/17px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M8 5.2v3.4M8 11v.1' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3Ccircle cx='8' cy='8' r='6.4' stroke='black' stroke-width='1.5'/%3E%3C/svg%3E")}
.voff-h{font-size:14px; color:var(--ink); max-width:34ch; line-height:1.55; font-weight:500}
.voff-h b{color:var(--ink); font-weight:700}
.voff-i{display:flex; flex-direction:column; gap:5px; min-width:0}
.voff-i .n{font-size:12.5px; color:var(--muted); font-weight:600}

.voff-i a{display:inline-flex; align-items:center; gap:6px; align-self:flex-start;
  padding:7px 13px; border-radius:9px; background:var(--paper); color:var(--ink);
  font-size:12.5px; font-weight:600; box-shadow:var(--btn-shadow);
  transition:box-shadow .14s ease, transform .14s ease}
.voff-i a:hover{box-shadow:var(--btn-shadow-hover); transform:translateY(-1px); text-decoration:none}

.voff-info{--voff-rule:var(--info)}
.voff-info::before{
  -webkit-mask:no-repeat center/17px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='8' cy='8' r='6.4' stroke='black' stroke-width='1.5'/%3E%3Cpath d='M8 7.2v3.6' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3Ccircle cx='8' cy='4.9' r='.9' fill='black'/%3E%3C/svg%3E");
  mask:no-repeat center/17px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='8' cy='8' r='6.4' stroke='black' stroke-width='1.5'/%3E%3Cpath d='M8 7.2v3.6' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3Ccircle cx='8' cy='4.9' r='.9' fill='black'/%3E%3C/svg%3E")
}
.voff-info .voff-h{max-width:none; font-weight:400; color:var(--muted)}

.howbar{align-items:flex-start; padding-left:24px}
.howbar::before{content:none}
.howbar-h{font-size:10.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted-2); margin:1px 0 11px}
.howbar-g{display:grid; grid-template-columns:repeat(auto-fit,minmax(196px,1fr));
  gap:13px 22px; margin:0}

.how-c{padding-left:12px; border-left:2px solid var(--line); min-width:0}
.how-k{font-size:10px; font-weight:700; letter-spacing:.07em; text-transform:uppercase;
  color:var(--muted-2); line-height:1.5; margin-bottom:2px}
.how-d{margin:0; min-width:0}
.how-v{display:block; font-size:13.5px; font-weight:650; color:var(--ink); line-height:1.4}
.how-s{display:block; font-size:11.5px; color:var(--muted); line-height:1.5; margin-top:2px}
.how-why{margin:14px 0 0; padding-top:11px; border-top:1px solid var(--line-2);
  font-size:12px; color:var(--muted); line-height:1.55}

@media(max-width:1080px){

  .bento > .b1,.bento > .b2,.bento > .b3,.bento > .b4,.bento > .b5,.bento > .b6,
  .bento > .b7,.bento > .b8,.bento > .b9,.bento > .b10,.bento > .b11{grid-column:span 12}
  .claim{font-size:29px}
}

.vdark{position:relative; color:#fff;
  background:linear-gradient(160deg,#091122,#182748);
  border-radius:var(--r-lg); padding:32px}

.vd-deco{position:absolute; inset:0; overflow:hidden; border-radius:inherit; pointer-events:none; z-index:0}

.vdark::before{content:''; position:absolute; right:0; top:0;
  width:210px; height:210px; opacity:.14; pointer-events:none;
  background-image:radial-gradient(#fff 1.4px, transparent 1.4px);
  background-size:13px 13px;
  -webkit-mask:radial-gradient(circle at 100% 0, #000 40%, transparent 72%);
          mask:radial-gradient(circle at 100% 0, #000 40%, transparent 72%)}
.vdark > *{position:relative}
.vd-k{font-family:'Unbounded',sans-serif; font-size:11px; font-weight:500;
  letter-spacing:.14em; text-transform:uppercase; color:var(--lime)}
.vd-row{display:flex; align-items:flex-end; gap:16px; margin:14px 0 10px; flex-wrap:wrap}

.vd-num{font-family:'Unbounded',sans-serif; font-size:58px; font-weight:400;
  line-height:1; letter-spacing:-.03em; font-variant-numeric:tabular-nums}
.vd-num small{font-size:20px; font-weight:400; color:rgba(255,255,255,.55); margin-left:2px}
.vd-sub{color:rgba(255,255,255,.76); font-size:14px; line-height:1.6; max-width:56ch}
.vd-sub b{color:#fff}

.vd-act{display:flex; gap:10px; margin-top:20px; flex-wrap:wrap; align-items:center}
.vd-act .btn{background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.24); color:#fff}
.vd-act .btn:hover{background:rgba(255,255,255,.22); border-color:rgba(255,255,255,.4)}
.vd-act .btn svg{color:currentColor}

.vd-drow{margin:18px 0 14px}
.vd-d{font-size:12px; font-weight:600; padding:5px 11px; border-radius:var(--r-pill);
  background:rgba(120,192,60,.20); color:#A6DB6E; white-space:nowrap}
.vd-d.neg{background:rgba(252,165,165,.16); color:#FCA5A5}
.vd-d.flat{background:rgba(255,255,255,.12); color:rgba(255,255,255,.78)}

.vdark.vd-hero .vd-num{font-size:96px; font-weight:300; letter-spacing:-.045em}
.vdark.vd-hero .vd-num small{font-size:26px}
.vdark.vd-hero{min-height:330px}

.vdark.vd-cut{--nw:174px; --nh:46px; --ir:26px;
  border-radius:var(--r-lg) 0 var(--r-lg) var(--r-lg);
  padding-top:calc(var(--nh) + 14px)}

.vdark.vd-cut.vd-cut-sm{--nw:150px}
@media(max-width:760px){.vdark.vd-cut{--nw:150px}}
@media(max-width:760px){.vdark{padding:24px} .vd-num{font-size:46px}
  .vdark.vd-hero .vd-num{font-size:62px}}

.vnotch{--nw:174px; --nh:46px; --ir:26px;
  position:relative; background:var(--vn,#2563EB); color:#fff;
  border-radius:var(--r-lg) 0 var(--r-lg) var(--r-lg);
  padding:calc(var(--nh) + 14px) 32px 32px}

:is(.vnotch,.vdark) .vn-cut{position:absolute; top:0; right:0; width:var(--nw); height:var(--nh);
  background:var(--paper); border:0; border-bottom-left-radius:var(--ir);
  margin:0; padding:0; appearance:none; -webkit-appearance:none; cursor:pointer;
  display:flex; align-items:center; justify-content:center; gap:8px;
  font-family:'Unbounded',sans-serif; font-size:13.5px; font-weight:400;
  line-height:1; color:var(--ink); text-decoration:none; text-align:center}
:is(.vnotch,.vdark) .vn-cut:focus-visible{outline:none; box-shadow:inset 0 0 0 2px var(--teal)}
:is(.vnotch,.vdark) .vn-cut:hover{color:var(--teal)}
:is(.vnotch,.vdark) .vn-fillet{position:absolute; top:0; right:var(--nw); width:var(--ir); height:var(--ir);
  background:var(--paper);

  -webkit-mask:radial-gradient(circle var(--ir) at 0 var(--ir),#0000 92%,#000 100%);
          mask:radial-gradient(circle var(--ir) at 0 var(--ir),#0000 92%,#000 100%)}
:is(.vnotch,.vdark) h2,:is(.vnotch,.vdark) .vn-h{font-family:'Unbounded',sans-serif; font-size:23px; font-weight:400;
  margin:0 0 16px; line-height:1.28; color:#fff; max-width:24ch}

:is(.vnotch,.vdark) .vn-bar{background:rgba(0,0,0,.16); border-radius:14px; padding:14px 20px; font-size:14.5px}
:is(.vnotch,.vdark) .vn-meta{color:rgba(255,255,255,.74); font-size:13px}
.vn-navy{--vn:#0F172A}

:is(.vnotch,.vdark) .eyebrow{color:rgba(255,255,255,.72)}
:is(.vnotch,.vdark) .rr-meta,:is(.vnotch,.vdark) .sub{color:rgba(255,255,255,.72)}
:is(.vnotch,.vdark) .rr-meta b{color:#fff}
:is(.vnotch,.vdark) .score-num{color:#fff; -webkit-text-fill-color:#fff; background:none}
:is(.vnotch,.vdark) .score-num small{-webkit-text-fill-color:rgba(255,255,255,.66); color:rgba(255,255,255,.66)}
:is(.vnotch,.vdark) .chip{border-color:transparent; background:rgba(255,255,255,.14); color:#fff}
:is(.vnotch,.vdark) .chip.pos{color:#4ADE80}
:is(.vnotch,.vdark) .chip.neg{color:#FCA5A5}

:is(.vnotch,.vdark) .bd{background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12);
  border-radius:14px; padding:14px 15px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10)}
:is(.vnotch,.vdark) .bd .bl{color:rgba(255,255,255,.66)}

:is(.vnotch,.vdark) .bd .bv{color:#fff; font-size:23px; letter-spacing:-.02em; margin-top:7px}
:is(.vnotch,.vdark) .bd .bm{background:rgba(255,255,255,.14); height:5px; margin-top:10px}
:is(.vnotch,.vdark) .bd .bm>span{background:var(--green)}

.vd-fill .score-hero{flex:1; align-items:stretch}
.vd-fill .sh-left{display:flex; flex-direction:column; justify-content:space-between; gap:16px}

.vd-fill .breakdown{grid-auto-rows:minmax(0,1fr)}

.vd-fill .bd{display:flex; flex-direction:column; justify-content:center}

@media(max-width:900px){
  .vd-fill .score-hero{flex:none}
  .vd-fill .breakdown{grid-auto-rows:auto}
}

:is(.vnotch,.vdark) .score-meter{height:6px; border-radius:var(--r-pill); overflow:hidden;
  background:rgba(255,255,255,.14); margin-top:14px; max-width:230px}
:is(.vnotch,.vdark) .score-meter>span{display:block; height:100%; border-radius:var(--r-pill);
  background:linear-gradient(90deg,var(--green),#B4E283)}

:is(.vnotch,.vdark) .info>summary{background:rgba(255,255,255,.16); border-color:rgba(255,255,255,.30); color:#fff}
:is(.vnotch,.vdark) .info>summary:hover{background:rgba(255,255,255,.26); border-color:rgba(255,255,255,.6); color:#fff}
:is(.vnotch,.vdark) .info[open]>summary{background:#fff; color:var(--navy); border-color:#fff}
:is(.vnotch,.vdark) .ihelp{color:rgba(255,255,255,.72)}
:is(.vnotch,.vdark) .ihelp:hover,:is(.vnotch,.vdark) .ihelp:focus-visible{color:#fff}

:is(.vnotch,.vdark) .info-pop,:is(.vnotch,.vdark) .ihelp-pop{color:var(--ink)}
:is(.vnotch,.vdark) .info-pop b,:is(.vnotch,.vdark) .ihelp-pop b{color:var(--ink)}

:is(.vnotch,.vdark) .ov-strip{background:none; border:0; gap:14px; border-radius:0; overflow:visible}
:is(.vnotch,.vdark) .ov{background:rgba(255,255,255,.10); border-radius:14px; padding:14px 15px}
:is(.vnotch,.vdark) .ovl{color:rgba(255,255,255,.72)}
:is(.vnotch,.vdark) .ovv{color:#fff}
:is(.vnotch,.vdark) .muted{color:rgba(255,255,255,.62)}
:is(.vnotch,.vdark) .hint,:is(.vnotch,.vdark) .rr-meta{color:rgba(255,255,255,.72)}
:is(.vnotch,.vdark) a.strong,:is(.vnotch,.vdark) .strong{color:#fff}
:is(.vnotch,.vdark) .chip.flat{background:rgba(255,255,255,.12); border-color:transparent; color:#fff}
:is(.vnotch,.vdark) .vn-warn{color:var(--warn)}

:is(.vnotch,.vdark) .kpis{display:grid; gap:14px;
  background:none; border:0; box-shadow:none; border-radius:0}
:is(.vnotch,.vdark) .kpi{background:rgba(255,255,255,.10); border:0; border-radius:14px; padding:16px 17px; box-shadow:none}
:is(.vnotch,.vdark) .kpi .lbl{color:rgba(255,255,255,.72)}
:is(.vnotch,.vdark) .kpi .val{color:#fff}
:is(.vnotch,.vdark) .kpi .val small{color:rgba(255,255,255,.66)}
:is(.vnotch,.vdark) .kpi .foot,:is(.vnotch,.vdark) .lockwhy{color:rgba(255,255,255,.72)}
:is(.vnotch,.vdark) .lockwhy a{color:#fff; text-decoration:underline}
:is(.vnotch,.vdark) .kpi.locked .val{color:rgba(255,255,255,.5)}
:is(.vnotch,.vdark) .meter{background:rgba(255,255,255,.18)}
:is(.vnotch,.vdark) .meter>span{background:var(--green)}
:is(.vnotch,.vdark) .kpi.locked .meter>span{background:rgba(255,255,255,.3)}
:is(.vnotch,.vdark) .metricsel{background-color:rgba(255,255,255,.14); border-color:rgba(255,255,255,.22); color:#fff}
:is(.vnotch,.vdark) .metricsel:hover{background-color:rgba(255,255,255,.2); border-color:rgba(255,255,255,.35)}

:is(.vnotch,.vdark) .metricsel option{background:var(--surface); color:var(--ink)}
:is(.vnotch,.vdark) .periodonly{border-color:rgba(255,255,255,.3); color:rgba(255,255,255,.72)}
:is(.vnotch,.vdark) .divider{background:rgba(255,255,255,.14)}

:is(.vnotch,.vdark) .card{background:rgba(255,255,255,.10); border:0; box-shadow:none; color:inherit}

:is(.vnotch,.vdark) .tag{background:rgba(255,255,255,.14); color:#fff}
:is(.vnotch,.vdark) .tag.paid{background:rgba(74,222,128,.16); color:#4ADE80}
:is(.vnotch,.vdark) .tag.overdue{background:rgba(252,165,165,.16); color:#FCA5A5}
:is(.vnotch,.vdark) .tag.pending{background:rgba(232,161,58,.20); color:#F5C46A}
:is(.vnotch,.vdark) .tag.open{background:rgba(255,255,255,.16); color:#fff}
:is(.vnotch,.vdark) .modelled{color:rgba(255,255,255,.72); border-top-color:rgba(255,255,255,.16)}
:is(.vnotch,.vdark) .modelled b{color:#fff}

.kpis > *, .ov-strip > *, .strip > *, .breakdown > *, .vtiles > *,
.grid > *, .score-hero > *, .bento > *{min-width:0}

.ovv, .kpi .val, .strip .cv, .bd .bv{overflow-wrap:anywhere}

.content{overflow-x:clip; overflow-y:visible;

  overflow-wrap:anywhere}

.qgrp{border-top:1px solid var(--line-2)}
.qgrp:first-of-type{border-top:0}
.qgrp[open]{background:var(--surface-2); border-radius:12px; border-top-color:transparent}
.qgrp[open] + .qgrp{border-top-color:transparent}
.qgrp > summary{list-style:none; cursor:pointer; display:flex; align-items:center;
  gap:9px; flex-wrap:wrap; padding:11px 12px; border-radius:12px; user-select:none}
.qgrp > summary::-webkit-details-marker{display:none}
.qgrp > summary:hover{background:var(--surface-2)}
.qgrp[open] > summary:hover{background:transparent}
.qgrp > summary .q-l{font-weight:600; font-size:13.5px}
.qgrp > summary .q-chev{margin-left:auto; color:var(--muted-2); transition:transform .16s ease; flex:none}
.qgrp[open] > summary .q-chev{transform:rotate(180deg)}
.qgrp[open] > summary{border-bottom:1px solid var(--line-2); border-radius:12px 12px 0 0}

.q-body{padding:12px 14px 14px; display:flex; flex-direction:column; gap:14px}

.qgrp[open] .q-body > .bubble{background:var(--surface); border:1px solid var(--line)}

.q-meta{font-size:11px; color:var(--muted-2)}

.q-eng{display:inline-flex; gap:6px; flex-wrap:wrap}
.q-dot{display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:500;
  padding:1px 7px; border-radius:var(--r-pill); background:var(--surface-2); color:var(--muted-2)}
.qgrp[open] .q-dot{background:var(--surface)}
.q-dot::before{content:""; width:6px; height:6px; border-radius:50%; background:var(--muted-2); flex:none}
.q-dot.ok{color:var(--pos)}      .q-dot.ok::before{background:var(--pos)}
.q-dot.bad{color:var(--neg)}     .q-dot.bad::before{background:var(--neg)}

.ans > summary{list-style:none; cursor:pointer}
.ans > summary::-webkit-details-marker{display:none}

.ans .txt{display:block; position:relative; max-height:calc(4 * 1.7em); overflow:hidden}
.ans[open] .txt{max-height:none; overflow:visible}

.ans:not([open]):not(.no-clamp) .txt::after{content:''; position:absolute; inset-inline:0; bottom:0;
  height:1.7em; background:linear-gradient(to bottom,transparent,var(--surface-2)); pointer-events:none}
.qgrp[open] .q-body > .bubble .ans:not([open]):not(.no-clamp) .txt::after{
  background:linear-gradient(to bottom,transparent,var(--surface))}
.ans > summary::after{content:"Read the whole answer"; display:inline-block; margin-top:6px;
  font-size:11.5px; font-weight:600; color:var(--teal-600)}
.ans[open] > summary::after{content:"Show less"}
.ans > summary:hover::after{text-decoration:underline}

.ans.no-clamp > summary{cursor:default}
.ans.no-clamp > summary::after{display:none}

.fsrc-d > summary{list-style:none; cursor:pointer; font-size:11.5px; font-weight:600;
  color:var(--muted); display:inline-flex; align-items:center; gap:6px}
.fsrc-d > summary::-webkit-details-marker{display:none}
.fsrc-d > summary:hover{color:var(--ink)}
@media(max-width:1240px){.vtiles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.vtiles{grid-template-columns:repeat(2,minmax(0,1fr))} .vnotch{--nw:150px}}

.vchart-wrap{position:relative}
.vchart{display:block; cursor:crosshair; outline:none}

.vchart:focus-visible{outline:2px solid var(--teal-600); outline-offset:3px; border-radius:var(--r)}

.vc-cross{stroke:var(--teal-600); stroke-width:1; stroke-dasharray:3 3; opacity:0;
  transition:opacity .12s ease; pointer-events:none}
.vc-dot{fill:var(--surface); stroke:var(--teal-600); stroke-width:2.5; opacity:0;
  transition:opacity .12s ease; pointer-events:none}
.vchart.is-hovering .vc-cross{opacity:.5}
.vchart.is-hovering .vc-dot{opacity:1}

.vchart-tip{position:absolute; z-index:3; pointer-events:none;
  background:var(--surface); border-radius:var(--r);
  box-shadow:var(--card-shadow); padding:9px 12px; min-width:104px;
  white-space:nowrap}
.vchart-tip[hidden]{display:none}
.vchart-tip-k{font-size:11px; color:var(--muted); font-weight:600; letter-spacing:.01em}
.vchart-tip-v{font-family:'Unbounded',sans-serif; font-size:20px; font-weight:400;
  color:var(--ink); line-height:1.15; margin-top:2px; font-variant-numeric:tabular-nums}
.vchart-tip-d{display:inline-block; margin-top:4px; font-size:11.5px; font-weight:600;
  color:var(--muted-2)}
.vchart-tip-d.pos{color:var(--pos)}
.vchart-tip-d.neg{color:var(--neg)}

:root[data-theme="dark"] .vchart-tip{box-shadow:0 0 0 1px rgba(255,255,255,.12), 0 10px 28px rgba(0,0,0,.55)}

.tbl th .th-note{font-weight:500; letter-spacing:0; text-transform:none;
  color:var(--muted-2); margin-left:5px}

.legend .lg-since{font-weight:500; opacity:.72}

.spark-wrap{position:relative; margin-top:9px}
.ov .spark{display:block; width:100%; height:40px; overflow:visible;
  --spark:var(--blue); opacity:.95}

.ov .spark.dir-up{--spark:var(--pos)}
.ov .spark.dir-down{--spark:var(--neg)}
.ov .spark.dir-flat{--spark:var(--muted)}

.ov .spark .spark-base{stroke:currentColor; stroke-width:1; stroke-dasharray:3 3;
  opacity:.28; vector-effect:non-scaling-stroke}

.spark-cap{display:flex; align-items:baseline; justify-content:space-between; gap:8px;
  margin-top:5px; font-size:10.5px; line-height:1.35; color:var(--muted);
  font-variant-numeric:tabular-nums}
.spark-cap b{font-weight:600; white-space:nowrap}
.spark-cap .sc-up{color:var(--pos)} .spark-cap .sc-down{color:var(--neg)}
.spark-cap .sc-flat{color:var(--muted); font-weight:500}

.spark-none{margin-top:9px; min-height:40px; display:flex; align-items:center;
  font-size:11px; line-height:1.4; color:var(--muted); opacity:.8}
.ov .spark:focus-visible{outline:2px solid var(--blue); outline-offset:3px; border-radius:4px}

.vdark .ov .spark{--spark:#6BA6FF; opacity:.95}

.vdark .ov .spark.dir-up{--spark:#8FE388}
.vdark .ov .spark.dir-down{--spark:#FF8B8B}
.vdark .ov .spark.dir-flat{--spark:rgba(255,255,255,.55)}
.vdark .spark-cap{color:rgba(255,255,255,.66)}
.vdark .spark-cap .sc-up{color:#8FE388} .vdark .spark-cap .sc-down{color:#FF8B8B}
.vdark .spark-cap .sc-flat{color:rgba(255,255,255,.6)}
.vdark .spark-none{color:rgba(255,255,255,.6)}

.ov .spark .spark-end{opacity:.95}

.ov .spark .spark-line{fill:none; stroke:var(--spark); stroke-width:1.9;
  stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke}

.ov .spark .spark-glow{fill:none; stroke:var(--spark); stroke-width:5;
  stroke-linecap:round; opacity:.22; filter:blur(2.2px); vector-effect:non-scaling-stroke}

.ov .spark .spark-dot-mark{fill:var(--spark); opacity:.55}

.ov .spark .spark-line{stroke-dasharray:100; stroke-dashoffset:100;
  animation:spark-draw .9s cubic-bezier(.3,.05,.2,1) forwards}
.ov .spark .spark-area{opacity:0; animation:spark-fade .7s ease .35s forwards}
@keyframes spark-draw{to{stroke-dashoffset:0}}
@keyframes spark-fade{to{opacity:1}}

.ov .spark .spark-pulse{fill:none; stroke:var(--spark); stroke-width:1.5;
  opacity:.5; transform-origin:center; transform-box:fill-box;
  animation:spark-pulse 2.6s ease-out infinite}
@keyframes spark-pulse{
  0%{opacity:.55; transform:scale(1)}
  100%{opacity:0; transform:scale(2.8)}
}

@media (prefers-reduced-motion: reduce){
  .ov .spark .spark-line{animation:none; stroke-dashoffset:0}
  .ov .spark .spark-area{animation:none; opacity:1}
  .ov .spark .spark-pulse{animation:none; opacity:0}
}

.spark-wrap .vchart-tip{font-size:12px; padding:7px 9px; min-width:0; white-space:nowrap}
.ov .spark .vc-cross{stroke:var(--spark); stroke-width:1; opacity:0; stroke-dasharray:2 2}
.ov .spark .vc-dot{fill:var(--spark); stroke:var(--surface); stroke-width:1.5; opacity:0}
.ov .spark.is-hovering .vc-cross, .ov .spark.is-hovering .vc-dot{opacity:.85}
.vdark .ov .spark .vc-dot{stroke:#0D172D}

.card-h.cwv-h{align-items:center; gap:9px;
  margin:-22px -22px 18px; padding:13px 22px;
  background:linear-gradient(100deg,#0D172D 0%,#183A63 52%,#2A70B4 100%);
  color:#fff;
  border-radius:var(--r-card) var(--r-card) 0 0}

.card-h.cwv-h h3{margin:0; color:#fff}

:root[data-theme="dark"] .card-h.cwv-h{
  background:linear-gradient(100deg,#0A1524 0%,#14314F 52%,#1E5382 100%)}

.src-badge{display:inline-flex; align-items:center; gap:5px; cursor:help;
  padding:2px 8px 2px 6px; border-radius:var(--r-pill);

  background:rgba(13,23,45,.34); border:1px solid rgba(255,255,255,.28);
  font-size:11.5px; letter-spacing:.01em}

.card-h.cwv-h .src-badge{color:#fff}
.src-badge svg{flex:none; opacity:.85}

.cwv-h .chip{background:#fff}
.cwv-h .chip.pos{color:var(--pos)}
.cwv-h .chip.neg{color:var(--neg)}
.cwv-h .chip.warn{color:#8F5F15}
:root[data-theme="dark"] .cwv-h .chip{background:rgba(255,255,255,.94)}
:root[data-theme="dark"] .cwv-h .chip.pos{color:#0E7A37}
:root[data-theme="dark"] .cwv-h .chip.neg{color:#C0272C}

.cwv-h .src-badge svg{opacity:1}

.kw-tabs{display:flex; gap:6px; flex-wrap:wrap; padding:0 var(--pad,18px) 12px}
.kw-tab{display:inline-flex; align-items:center; gap:7px; padding:6px 12px; border-radius:999px;
  border:1px solid var(--line); background:var(--surface); color:var(--muted);
  font-size:12.5px; font-weight:600; text-decoration:none; transition:background .15s, color .15s, border-color .15s}
.kw-tab:hover{background:var(--surface-2); color:var(--ink)}
.kw-tab b{font-weight:700; font-size:11.5px; color:var(--muted-2)}
.kw-tab.on{background:var(--fill-strong); border-color:var(--fill-strong); color:var(--on-fill-strong)}
.kw-tab.on b{color:var(--on-fill-strong); opacity:.72}

.kw-open{display:inline-flex; align-items:center; gap:6px; padding:2px 0; border:0; background:none;
  font:inherit; font-weight:inherit; color:inherit; text-align:left; cursor:pointer; border-radius:6px}
.kw-open:hover{color:var(--teal-600)}
.kw-open:focus-visible{outline:2px solid var(--teal); outline-offset:3px}
.kw-open-i{opacity:0; flex:none; color:var(--teal-600); transition:opacity .15s}
.kw-open:hover .kw-open-i,.kw-open:focus-visible .kw-open-i{opacity:1}

.kwm[hidden]{display:none}
.kwm{position:fixed; inset:0; z-index:120; display:flex; align-items:center; justify-content:center; padding:24px}
.kwm-back{position:absolute; inset:0; background:rgba(7,12,24,.52); backdrop-filter:blur(2px)}
body.kwm-on{overflow:hidden}
.kwm-box{position:relative; width:min(760px,100%); max-height:88vh; overflow:auto;
  background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg);
  padding:22px 24px 24px; box-shadow:0 24px 60px rgba(7,12,24,.28)}
.kwm-x{position:absolute; top:14px; right:16px; width:30px; height:30px; border-radius:9px;
  border:1px solid var(--line); background:var(--surface); color:var(--muted); font-size:18px; line-height:1; cursor:pointer}
.kwm-x:hover{background:var(--surface-2); color:var(--ink)}
.kwm-box h3{margin:2px 0 0; font-size:21px; padding-right:34px}

.kwm-now{display:flex; align-items:center; gap:9px; flex-wrap:wrap; margin:12px 0 18px}
.kwm-now .noval{font-size:13px; vertical-align:0; font-weight:600}
.kwm-now-t{font-size:13px; color:var(--muted)}
.kwm-now-d{margin-left:auto}

.kwm-cap{display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap;
  margin-top:8px; font-size:12px; color:var(--muted-2)}
.kwm-key{display:inline-flex; align-items:center; gap:6px}
.kwm-key i{width:7px; height:7px; border-radius:2px; border:1.4px solid var(--muted-2); display:inline-block}
.kwm-none{padding:22px 0 6px; font-size:13px; color:var(--muted)}

.kwm-dot{fill:var(--teal)}
.kwm-miss{fill:none; stroke:var(--muted-2); stroke-width:1.4}

.kwm-h{margin:26px 0 10px; font-size:13.5px; font-weight:700; display:flex; align-items:center; gap:8px}
.kwm-h .hint{font-weight:600}
.kwm-log{width:100%}
.kwm-log .noval{font-size:12.5px; vertical-align:0}
.kwm-urls{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px}
.kwm-urls li{display:flex; align-items:center; gap:10px; justify-content:space-between;
  padding:9px 12px; border-radius:10px; background:var(--surface-2); font-size:12.5px}
.kwm-urls a{overflow:hidden; text-overflow:ellipsis; white-space:nowrap}

@media (max-width:640px){
  .kwm{padding:0}
  .kwm-box{max-height:100vh; border-radius:0; width:100%}
}

.kwm-gsc{fill:none; stroke:var(--violet,#7A5AF8); stroke-width:1.8; stroke-dasharray:5 4;
  stroke-linecap:round; stroke-linejoin:round; opacity:.85}
.kwm-legend{display:flex; flex-wrap:wrap; gap:14px; margin-top:10px; font-size:11.5px; color:var(--muted)}
.kwm-lg{display:inline-flex; align-items:center; gap:7px}
.kwm-lg em{font-style:normal; color:var(--muted-2)}
.kwm-lg i{width:16px; height:0; border-top-width:2.4px; border-top-style:solid; flex:none}
.kwm-lg i.sw-check{border-color:var(--teal)}
.kwm-lg i.sw-gsc{border-color:var(--violet,#7A5AF8); border-top-style:dashed; border-top-width:2px}
.kwm-lg i.sw-miss{width:7px; height:7px; border:1.4px solid var(--muted-2); border-radius:2px}
.kwm-src{margin-top:12px; padding:10px 12px; border-radius:10px; background:var(--surface-2);
  font-size:12px; color:var(--muted); line-height:1.5}

@media print {
  :root, :root[data-theme="dark"] {
    --paper:#fff; --surface:#fff; --surface-2:#F4F6F8; --ink:#0B2027;
    --line:#E2E8ED; --line-2:#EDF1F4; --muted:#5B6B73; --muted-2:#8A9AA3;
  }

  .sidebar, .topbar, .viewbar, .sb-backdrop, .skip-link, .qbar, .flash,
  .rowact-cell, .rowact, .addbox, form.inline-form, form.js-async-run,
  .tour-tip, #tour-config, .tb-icon, details.ava-wrap,

  details.rangepick, .pg-export-clone,

  a.vn-cut, a.more, a.btn, .feed-foot,

  .team-activity {
    display:none !important;
  }

  .app{display:block !important}
  .main{margin:0 !important; width:100% !important}
  .content{padding:16px 4px !important}

  .card, .vdark, .bento>*, .tbl tr,
  .side-donut, .voff-i, .plat-row, .src-row, .vd-row, .gc-ev-row, .fc-row,
  .msg-row, .alert-row, .kw-open-i, .ca-i, .kidea, .filerow, .fi, .qmeet,
  .notif-item { break-inside:avoid }

  .card, .vdark, .vsum { box-shadow:none !important; border:1px solid var(--line) }
  a[href]{ color:inherit; text-decoration:none }

  .tbl{ font-size:11px }
  [style*="overflow-x:auto"], [style*="overflow-x: auto"] { overflow:visible !important }
}

.kideas > .kidea-sum{cursor:pointer; list-style:none; user-select:none}
.kideas > .kidea-sum::-webkit-details-marker{display:none}
.kideas > .kidea-sum::marker{content:''}
.kideas > .kidea-sum:hover h3{color:var(--teal-600)}
.kideas > .kidea-sum:focus-visible{outline:2px solid var(--teal); outline-offset:-3px; border-radius:var(--r)}
.kidea-chev{color:var(--muted-2); transition:transform .18s ease; flex:none}
.kideas[open] > .kidea-sum .kidea-chev{transform:rotate(180deg)}
@media (prefers-reduced-motion:reduce){ .kidea-chev{transition:none} }

.kidea-list{display:flex; flex-direction:column}
.kidea{padding:14px var(--pad,18px); border-top:1px solid var(--line-2)}
.kidea:first-child{border-top:0}
.kidea:hover{background:var(--surface-2)}

.kidea-top{display:flex; align-items:center; gap:10px; flex-wrap:wrap}
.kidea-name{font-weight:700; font-size:14.5px}
.kidea-meta{font-size:12px; color:var(--muted-2)}
.kidea-meta b{color:var(--muted); font-weight:700}
.kidea-act{margin-inline-start:auto; display:flex; gap:6px; flex:none}

.kidea-q{margin:8px 0 0; padding-inline-start:11px; border-inline-start:2px solid var(--line);
  font-size:12.5px; line-height:1.6; color:var(--muted)}
.kidea-src{margin-top:5px; padding-inline-start:13px; font-size:11px; color:var(--muted-2)}

.btn-track{background:var(--teal-tint); color:var(--teal-600); border-color:transparent; font-weight:600}
.btn-track:hover{background:var(--teal); color:#fff; border-color:transparent}
.btn-quiet{background:transparent; color:var(--muted); border-color:transparent}
.btn-quiet:hover{background:var(--surface-2); color:var(--ink); border-color:var(--line)}

@media (max-width:640px){
  .kidea-act{margin-inline-start:0; width:100%}
}

.intg .ilogo-svg{display:inline-flex; color:#fff}
.intg .ilogo-svg svg{width:22px; height:22px; display:block}

.intg .ilogo-svg svg path,
.intg .ilogo-svg svg circle,
.intg .ilogo-svg svg rect,
.intg .ilogo-svg svg polygon{fill:#fff}
.intg .ilogo-img{display:block; width:22px; height:22px; object-fit:contain}

.intg .icon-btn{width:30px; height:30px; border-radius:9px}
.intg .ib-sum{display:inline-flex; align-items:center; justify-content:center; list-style:none; cursor:pointer}
.intg .ib-sum::-webkit-details-marker{display:none}
.intg .ib-sum::marker{content:''}
.intg .ib-go{color:var(--teal-600); background:var(--teal-tint); border-color:transparent}
.intg .ib-go:hover{background:var(--teal); color:#fff}

.prow-q > td{border-bottom:0; padding-bottom:6px}
.prow-q .prow-qt{font-weight:600; font-size:13.5px; line-height:1.45; max-width:none}

.prow-q > td.beatby-cell{border-bottom:1px solid var(--line-2); padding-bottom:12px}

.prow-m > td{padding-top:0; vertical-align:top}
.beatby-cell{max-width:230px; line-height:1.55}

tr.prow-alt:not(.prow-on) > td{background:var(--surface-2)}

.tbl-frozen .tbl tbody tr:hover{background:transparent}

.note-box,.cwv-note,.kw-band-note{
  margin-top:14px; padding:12px 14px; border-radius:11px;
  background:var(--teal-tint); border:1px solid var(--line);
  border-inline-start:3px solid var(--teal);
  font-size:12px; line-height:1.6; color:var(--muted)}
.note-box b,.cwv-note b,.kw-band-note b{color:var(--ink); font-weight:600}

.note-box.for-staff::before,.kw-band-note::before{
  content:'Staff only'; display:inline-block; margin-inline-end:8px; padding:1px 7px;
  border-radius:999px; background:var(--fill-strong); color:var(--on-fill-strong);
  font-size:10px; font-weight:700; letter-spacing:.03em; text-transform:uppercase;
  vertical-align:1px}

.crawl-row{display:flex; align-items:flex-start; gap:12px; padding:5px 0}
.crawl-main{flex:1 1 auto; min-width:0; overflow-wrap:anywhere}
.crawl-row > .chip{flex:none; margin-top:1px}

.ihelp.ihelp-up .ihelp-pop,
.ihelp-w.ihelp-up > .ihelp-pop{top:auto; bottom:calc(100% + 7px)}

.ihelp-pop{overflow-y:auto; overscroll-behavior:contain}

.kwm-peers{margin-top:22px; border-top:1px solid var(--line); padding-top:16px}
.kwm-peers-h{font-weight:650; font-size:13px; margin-bottom:10px}
.kwm-peers-c{border:1px solid var(--line); border-radius:10px; padding:8px 12px; margin-bottom:8px; background:var(--surface)}
.kwm-peers-c > summary{cursor:pointer; font-size:13px; list-style:none}
.kwm-peers-c > summary::-webkit-details-marker{display:none}
.kwm-peers-c > summary::before{content:'▸'; display:inline-block; width:14px; color:var(--muted-2)}
.kwm-peers-c[open] > summary::before{content:'▾'}
.kwm-peers-l{list-style:none; margin:10px 0 4px; padding:0}
.kwm-peers-l li{display:flex; align-items:center; gap:9px; padding:4px 0; font-size:13px; min-width:0}
.kwm-peers-l li > a,.kwm-peers-l li > span:not(.p):not(.chip){overflow:hidden; text-overflow:ellipsis; white-space:nowrap}

.kwm-peers-l .p{flex:0 0 26px; text-align:right; color:var(--muted-2); font-variant-numeric:tabular-nums}

.kwm-peers-l li.is-ours{font-weight:650}
.kwm-peers-l li.is-ours .p{color:var(--ink)}
.kwm-peers-f{margin-top:10px; font-size:12px}

.kw-tags{display:flex; flex-wrap:wrap; gap:5px; margin-top:5px}
.kw-tags .chip{font-size:11px; padding:1px 7px}

.kw-tagbox{margin-top:5px}
.kw-tagbox > summary{cursor:pointer; font-size:11.5px; color:var(--muted-2); list-style:none}
.kw-tagbox > summary::-webkit-details-marker{display:none}
.kw-tagbox > summary:hover{color:var(--ink)}
.kw-tagbox form{display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:7px}
.kw-tagbox select,.kw-tagbox input[type=text]{font:inherit; font-size:12px; padding:5px 8px; border-radius:8px; border:1px solid var(--line); background:var(--surface); color:var(--ink)}
.kw-tagbox input[type=text]{min-width:190px; flex:1 1 190px}

.kw-tags-bar{display:flex; flex-wrap:wrap; gap:6px; align-items:center;
  margin:10px 0 2px; padding:0 var(--pad,18px)}
.kw-tag-f{font-size:12px; padding:3px 10px; border-radius:999px; border:1px solid var(--line); color:var(--muted); text-decoration:none; white-space:nowrap}
.kw-tag-f:hover{color:var(--ink); border-color:var(--line-2)}
.kw-tag-f.on{background:var(--ink); color:var(--surface); border-color:var(--ink)}
.kw-tag-f b{font-weight:650; margin-left:4px}

.grp-toggle{display:inline-flex; align-items:center; gap:6px; font:inherit; font-size:13px; font-weight:600;
  color:var(--muted); background:var(--surface); border:1px solid var(--line); border-radius:var(--r-pill);
  padding:6px 13px; cursor:pointer; margin-left:auto;
  transition:border-color .12s, color .12s, background .12s}
.grp-toggle:hover{border-color:var(--teal); color:var(--ink)}
.grp-toggle:focus-visible{outline:none; box-shadow:0 0 0 3px var(--teal-tint)}
.grp-toggle.on{background:var(--teal-tint); border-color:var(--teal); color:var(--teal-600)}

.grp-toggle .gt-off{display:inline}
.grp-toggle .gt-on{display:none}
.grp-toggle.on .gt-off{display:none}
.grp-toggle.on .gt-on{display:inline}

.pdf-only{display:none}

.tbl.is-grouped tbody:not(.grp-body){display:none}
.tbl:not(.is-grouped) tbody.grp-body{display:none}
.tbl.is-grouped thead:not(.grp-head){display:none}
.tbl:not(.is-grouped) thead.grp-head{display:none}
.tbl-frozen .tbl thead.grp-head th{position:sticky; top:0; z-index:2; background:var(--surface)}

.grp-open{font:inherit; font-size:inherit; font-weight:600; color:var(--teal-600);
  background:none; border:0; padding:0; cursor:pointer; display:inline-flex; align-items:center; gap:8px;
  text-align:left}
.grp-open:hover{text-decoration:underline}
.grp-open:focus-visible{outline:none; box-shadow:0 0 0 3px var(--teal-tint); border-radius:4px}

.grp-mark{flex:0 0 auto; color:var(--muted-2); opacity:.75; transition:opacity .12s, color .12s}
.grp-open:hover .grp-mark{opacity:1; color:var(--teal-600)}
.grp-n{background:var(--line-2); color:var(--muted); font-size:11.5px; font-weight:700;
  padding:1px 7px; border-radius:var(--r-pill)}
.grp-note{color:var(--muted-2); font-size:12px}

.dompop{position:fixed; inset:0; z-index:80; display:flex; align-items:center; justify-content:center;
  padding:24px}
.dompop[hidden]{display:none}
.dompop-back{position:absolute; inset:0; background:rgba(12,20,32,.44)}
.dompop-card{position:relative; background:var(--surface); border:1px solid var(--line);
  border-radius:14px; box-shadow:0 24px 60px rgba(12,20,32,.24); width:min(880px,100%);
  max-height:84vh; display:flex; flex-direction:column; overflow:hidden}
.dompop-h{display:flex; align-items:flex-start; gap:14px; padding:16px 18px 13px;
  border-bottom:1px solid var(--line)}
.dompop-ht{flex:1; min-width:0}
.dompop-title{font-size:16px; font-weight:700; color:var(--ink); word-break:break-all}
.dompop-sub{margin-top:3px}
.dompop-x{flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center;
  width:30px; height:30px; border-radius:8px; border:1px solid var(--line); background:var(--surface);
  color:var(--muted); cursor:pointer}
.dompop-x:hover{border-color:var(--teal); color:var(--ink)}
.dompop-x:focus-visible{outline:none; box-shadow:0 0 0 3px var(--teal-tint)}

.dompop-b{overflow:auto; padding:4px 0 6px}

.dcite-list{list-style:none; margin:0; padding:0}
.dcite{padding:13px 18px; border-bottom:1px solid var(--line)}
.dcite:last-child{border-bottom:0}
.dcite:hover{background:var(--surface-2)}
.dcite-head{display:flex; align-items:baseline; gap:10px}

.dcite-url{flex:1 1 auto; min-width:0; font-size:13.5px; font-weight:600;
  color:var(--teal-600); overflow-wrap:anywhere; line-height:1.45}
.dcite-url:hover{text-decoration:underline}
.dcite-url.is-plain{color:var(--ink); font-weight:600}

.dcite-n{flex:0 0 auto; background:var(--line-2); color:var(--muted); font-size:11.5px;
  font-weight:700; padding:1px 7px; border-radius:var(--r-pill)}

.dcite-prompts{list-style:none; margin:7px 0 0; padding:0 0 0 13px;
  border-left:2px solid var(--line)}
.dprompt + .dprompt{margin-top:11px; padding-top:11px; border-top:1px dashed var(--line)}

.dprompt-q{font-size:13.5px; color:var(--ink); line-height:1.5}
.dprompt-meta{display:flex; align-items:center; flex-wrap:wrap; gap:7px 11px; margin-top:7px}
.dcite-eng{display:inline-flex; align-items:center; gap:7px; font-size:12.5px;
  font-weight:600; color:var(--muted)}

.dcite-when{font-size:12px; color:var(--muted-2); white-space:nowrap}
.dcite-chip{display:inline-flex; align-items:center}

.dcite-act{margin-left:auto}
.dcite-act .act{font-size:12.5px; white-space:nowrap}

body.pop-open{overflow:hidden}

@media (max-width:560px){
  .dompop{padding:0}
  .dompop-card{max-height:100vh; height:100%; width:100%; border-radius:0; border:0}
  .dcite{padding:12px 15px}
  .dcite-prompts{padding-left:10px}
  .dcite-act{margin-left:0; width:100%}
  .grp-toggle{margin-left:0}
}

.tbl th.c-brand, .tbl td.c-brand{width:1%; white-space:nowrap}
.tbl td.c-brand .c-brand-in{display:inline-flex; align-items:center; gap:7px}

.tbl td.c-brand .c-site-row{margin-top:7px; padding-left:15px; font-weight:400}

.tbl td.c-brand .chip{flex:0 0 auto}
.tbl td.c-brand .dot{flex:0 0 auto; margin:0}
.tbl td.c-brand .c-brand-n{font-weight:600}

.cmp-tbl th, .cmp-tbl td{padding-left:10px; padding-right:10px}

.c-site{display:inline-flex; align-items:center; gap:6px}
.c-site input[type="text"]{flex:0 1 auto; min-width:96px; max-width:170px}
.c-site .btn{flex:0 0 auto}
.c-site .chip{flex:0 0 auto; padding:1px 7px}

.tbl td.num, .tbl td .chip{white-space:nowrap}

@media (max-width:900px){

  .c-site{flex-wrap:wrap; gap:6px 6px}
  .c-site input[type="text"]{min-width:0}
}

.empty{text-align:center; padding:38px 20px}
.empty.empty-sm{padding:22px 16px}
.empty-t{font-weight:600; color:var(--ink); font-size:var(--fs-base)}
.empty-l{color:var(--muted); font-size:var(--fs-sm); line-height:1.55; max-width:56ch; margin:6px auto 0}
.empty-a{margin-top:14px}

.qact b.qn{display:inline-block; min-width:18px; padding:0 6px; margin-left:4px; border-radius:999px; background:var(--surface-2); color:var(--ink); font-size:11px; line-height:18px; text-align:center; font-weight:700}
.qact-lead b.qn{background:rgba(255,255,255,.18); color:inherit}

.kidea-far{border-top:1px solid var(--line); margin-top:4px}
.kidea-far > summary{cursor:pointer; padding:12px 18px; font-size:var(--fs-sm); color:var(--muted); list-style:none}
.kidea-far > summary::-webkit-details-marker{display:none}
.kidea-far > summary::before{content:'+ '; font-weight:700}
.kidea-far[open] > summary::before{content:'– '}
.sig-u{font-size:.62em; font-weight:600; opacity:.6; margin-left:1px}
.pe-legend{display:flex; flex-wrap:wrap; gap:6px 16px; padding:0 18px 12px; font-size:var(--fs-xs); color:var(--muted)}
.pe-legend .chip{margin-right:4px}

.bv, .vsig-r .v{white-space:nowrap}

.vsum{position:relative; background:var(--surface); border-radius:var(--r-card);
  padding:22px 24px; box-shadow:var(--card-shadow, 0 1px 2px rgba(13,23,45,.06)); border-top:3px solid var(--teal)}
.vsum .vd-k{font-family:inherit; font-size:12.5px; font-weight:600; letter-spacing:0; text-transform:none; color:var(--muted)}
.vsum .vd-row{margin:8px 0 6px; gap:12px}
.vsum .vd-num{font-size:40px; color:var(--ink)}
.vsum .vd-num small{color:var(--muted); font-size:16px}
.vsum .vd-sub{color:var(--muted); font-size:13.5px; line-height:1.55}
.vsum .vd-sub b{color:var(--ink)}
.vsum .vd-d{background:var(--pos-tint); color:var(--pos)}
.vsum .vd-d.neg{background:var(--neg-tint); color:var(--neg)}
.vsum .vd-d.flat{background:var(--surface-2); color:var(--muted)}
.vsum .vd-drow{margin:10px 0 8px}
.vsum .vd-deco, .vsum .vd-orbit, .vsum .vn-fillet{display:none}

.vsum .vn-cut{position:absolute; top:12px; right:16px; display:inline-flex; align-items:center; gap:7px;
  padding:8px 14px; border:0; border-radius:var(--r-pill); cursor:pointer; text-decoration:none;
  background:var(--btn-primary); color:var(--btn-primary-ink); font:600 13px/1 inherit;
  box-shadow:var(--btn-shadow)}
.vsum .vn-cut:hover{background:var(--btn-primary-hover); box-shadow:var(--btn-shadow-hover)}
.vsum .vn-cut:focus-visible{outline:2px solid var(--teal); outline-offset:2px}
.vsum .vn-cut svg{width:12px; height:12px}

.vsum:has(.vn-cut){padding-top:62px}
.vsum:has(.vn-cut)::after{content:''; position:absolute; left:24px; right:24px; top:52px; height:1px; background:var(--line-2)}
.vsum .ov-strip{margin-top:16px}
.vsum .bd .bm>span{background:var(--teal)}
@media(max-width:760px){ .vsum{padding:18px} .vsum .vd-num{font-size:34px}
  .vsum .vn-cut{position:static; margin-bottom:12px} .vsum:has(.vn-cut){padding-top:18px} .vsum:has(.vn-cut)::after{display:none} }

.vsum form:has(> .vn-cut){position:absolute !important; top:12px !important; right:16px !important; z-index:2}
.vsum form > .vn-cut{position:static}
@media(max-width:760px){ .vsum form:has(> .vn-cut){position:static !important} }

.ava-ic{width:55%; height:55%; display:block; margin:auto; color:#fff}
.i-inl{display:inline-block; vertical-align:-2px}

.minisel.st-pill{border-radius:var(--r-pill); border:0; font-weight:600; font-size:12px; padding:4px 26px 4px 11px;
  background-color:var(--surface-2); color:var(--ink); cursor:pointer}
.minisel.st-done{background-color:var(--pos-tint); color:var(--pos)}
.minisel.st-prog, .minisel.st-in_progress{background-color:var(--teal-tint); color:var(--teal-600)}
.minisel.st-review{background-color:var(--warn-tint); color:var(--voff-rule)}
.tl-item .tl-prog > details, .tl-item .tl-prog > .js-delete-form,
.kcard details, .kcard .js-delete-form{opacity:0; transition:opacity .15s ease}
.tl-item:hover .tl-prog > details, .tl-item:hover .tl-prog > .js-delete-form, .tl-item:focus-within .tl-prog > details, .tl-item:focus-within .tl-prog > .js-delete-form,
.kcard:hover details, .kcard:hover .js-delete-form, .kcard:focus-within details, .kcard:focus-within .js-delete-form,
.tl-prog > details[open], .kcard details[open]{opacity:1}
@media (hover:none){ .tl-item .tl-prog > details, .tl-item .tl-prog > .js-delete-form, .kcard details, .kcard .js-delete-form{opacity:1} }

.clamp2{display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}

.vsum .vd-act .btn{background:var(--surface); border-color:var(--line); color:var(--ink)}
.vsum .vd-act .btn:hover{background:var(--surface-2); border-color:var(--line)}

.content:has(.vdark :is(.vd-num,.score-num,.ovv)) .claim-lede,
.content:has(.vdark :is(.vd-num,.score-num,.ovv)) .claim-sub{display:none}
.content:has(.vdark :is(.vd-num,.score-num,.ovv)) h1.claim{margin-bottom:18px}

.aa-note{font-size:13px; color:var(--muted)}
.aa-note > summary{cursor:pointer; list-style:none; display:inline-flex; align-items:center; gap:7px; color:var(--teal-600); font-weight:600; padding:2px 0}
.aa-note > summary::-webkit-details-marker{display:none}
.aa-note > summary::before{content:"i"; width:16px; height:16px; border-radius:50%; border:1.5px solid currentColor; display:inline-grid; place-items:center; font-size:10px; font-weight:700; font-family:Georgia,serif}
.aa-note > summary::after{content:"▸"; font-size:10px}
.aa-note[open] > summary::after{content:"▾"}
.aa-note-b{margin-top:10px; padding:16px 20px; background:var(--surface); border-radius:var(--r-card); box-shadow:var(--card-shadow); color:var(--ink-2); line-height:1.65}

.shelf-c.sc-violet, .shelf-c.sc-lime, .shelf-c.sc-navy, .shelf-c.sc-sky, .shelf-c.sc-sand, .shelf-c.sc-rose{
  background:var(--surface) !important; box-shadow:var(--card-shadow) !important}
:root[data-theme="dark"] .shelf-c.sc-violet, :root[data-theme="dark"] .shelf-c.sc-lime, :root[data-theme="dark"] .shelf-c.sc-navy,
:root[data-theme="dark"] .shelf-c.sc-sky, :root[data-theme="dark"] .shelf-c.sc-sand, :root[data-theme="dark"] .shelf-c.sc-rose{
  background:var(--surface) !important; box-shadow:inset 0 0 0 1px var(--line-2) !important}

.how-c:first-child{border-left:0; padding-left:0}

.live{background:none !important; padding:0 6px !important; font-weight:500 !important; color:var(--muted) !important; text-decoration:none !important}
.live *, .live[title]{text-decoration:none !important}
.live .pulse{width:6px !important; height:6px !important; background:var(--pos) !important}
.live .pulse::after{display:none !important}
.live.off .pulse{background:var(--muted-2) !important}

.live .pulse{display:none !important}
.live{font-size:12.5px !important; padding:0 4px !important}

.c-alias{margin-top:4px; font-size:12px}
.c-alias > summary{cursor:pointer; color:var(--muted); list-style:none; display:inline-block}
.c-alias > summary::-webkit-details-marker{display:none}
.c-alias > summary:hover{color:var(--teal-600)}
.c-alias-f{display:flex; gap:6px; align-items:flex-start; margin-top:6px}
.c-alias-f textarea{min-width:240px; min-height:54px; font-size:12.5px; padding:6px 8px; border:1px solid var(--line); border-radius:var(--r-sm); resize:vertical; background:var(--surface); color:var(--ink)}

.eng-pick{border:0; padding:0; margin:0 0 10px; display:flex; flex-wrap:wrap; gap:6px}
.eng-pick legend{font-size:11px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; opacity:.7; margin-bottom:6px; padding:0; width:100%}
.eng-opt{display:inline-flex; align-items:center; gap:6px; font-size:12.5px; padding:5px 10px; border-radius:99px; border:1px solid var(--line); background:var(--surface); color:var(--ink); cursor:pointer; user-select:none}
.eng-opt input{accent-color:#007D89; margin:0}
.eng-opt:has(input:not(:checked)){opacity:.55}
.eng-note{font-size:11.5px; line-height:1.45; opacity:.8; margin-top:8px}

.sched-list{margin:0 0 8px; border:1px dashed var(--line); border-radius:12px; padding:8px 12px; background:var(--surface)}
.sched-h{font-size:var(--fs-xs); font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); margin-bottom:4px}
.sched-row{display:flex; align-items:center; gap:12px; padding:6px 0; border-top:1px solid var(--line); font-size:var(--fs-sm)}
.sched-row:first-of-type{border-top:0}
.sched-when{flex:none; font-weight:600; color:var(--teal-600); white-space:nowrap}
.sched-row.failed .sched-when{color:var(--neg)}
.sched-body{flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--ink)}
.sched-body em{color:var(--neg); font-style:normal}
.sched-acts{flex:none; display:flex; gap:4px}
.sched-acts .mact{width:auto; padding:3px 8px; line-height:1.4; font-size:var(--fs-xs); border-radius:7px}
.sched-panel{display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:8px; padding:10px 12px; border:1px solid var(--line); border-radius:12px; background:var(--surface)}
.sched-panel .input{padding:8px 10px; border:1px solid var(--line); border-radius:9px; background:var(--surface); color:var(--ink); font-size:var(--fs-sm)}
.sched-panel[hidden], .sched-list[hidden]{display:none}

.aibot-fab{position:fixed; right:22px; bottom:22px; z-index:60; width:52px; height:52px; border-radius:50%; border:0; cursor:pointer; background:var(--teal); color:#fff; display:grid; place-items:center; box-shadow:0 8px 24px rgba(11,20,40,.22)}
.aibot-fab:hover{filter:brightness(1.08)}
.aibot-panel{position:fixed; right:22px; bottom:86px; z-index:61; width:min(380px, calc(100vw - 32px)); height:min(560px, calc(100vh - 120px)); background:var(--surface); border:1px solid var(--line); border-radius:16px; box-shadow:0 18px 48px rgba(11,20,40,.22); display:flex; flex-direction:column; overflow:hidden}
.aibot-panel[hidden]{display:none}
.aibot-h{display:flex; justify-content:space-between; align-items:flex-start; gap:10px; padding:14px 16px; border-bottom:1px solid var(--line)}
.aibot-h b{display:block; font-size:var(--fs-base); color:var(--ink)} .aibot-h span{font-size:var(--fs-xs); color:var(--muted)}
.aibot-x{border:0; background:none; font-size:22px; line-height:1; cursor:pointer; color:var(--muted)}
.aibot-log{flex:1; overflow-y:auto; padding:14px 16px; display:flex; flex-direction:column; gap:10px}
.aibot-msg{max-width:88%; padding:9px 12px; border-radius:12px; font-size:var(--fs-sm); line-height:1.55; word-break:break-word}
.aibot-msg.me{align-self:flex-end; background:var(--teal); color:#fff; border-bottom-right-radius:4px}
.aibot-msg.bot{align-self:flex-start; background:var(--soft, #F3F6F9); color:var(--ink); border-bottom-left-radius:4px}
.aibot-msg.bot ul{margin:4px 0 4px 18px} .aibot-msg.bot p{margin:0 0 6px} .aibot-msg.bot p:last-child{margin:0}
.aibot-msg.err{background:var(--neg-tint, #FCEBEC); color:var(--neg)}
.aibot-rate{display:flex; gap:6px; margin-top:6px} .aibot-rate button{border:1px solid var(--line); background:var(--surface); border-radius:7px; cursor:pointer; font-size:12px; padding:1px 7px}
.aibot-rate button.on{border-color:var(--teal); color:var(--teal)}
.aibot-hint{font-size:var(--fs-xs); color:var(--muted); text-align:center}
.aibot-form{display:flex; gap:8px; padding:10px 12px; border-top:1px solid var(--line)}
.aibot-form textarea{flex:1; resize:none; border:1px solid var(--line); border-radius:10px; padding:8px 10px; font:inherit; font-size:var(--fs-sm); background:var(--surface); color:var(--ink); max-height:110px}
@media print{ .aibot{display:none} }

.segt{display:inline-flex; padding:3px; gap:2px; border-radius:var(--r-pill, 999px); background:var(--surface-2); border:1px solid var(--line)}
.segt-o{display:inline-flex; align-items:center; gap:6px; padding:6px 14px; border-radius:var(--r-pill, 999px); font-size:13px; font-weight:500; color:var(--ink-2); text-decoration:none; white-space:nowrap; transition:background .15s, color .15s, box-shadow .15s}
.segt-o:hover{color:var(--ink)}
.segt-o.on{background:var(--surface); color:var(--ink); font-weight:600; box-shadow:0 1px 3px rgba(16,24,40,.12)}
.segt-o.on svg{color:var(--accent-strong)}

.kw-tags .chip{display:inline-flex; align-items:center; gap:4px}
.kw-tag-x{display:inline; margin:0}
.kw-tag-x button{border:0; background:none; padding:0 0 0 2px; margin:0; font:inherit; font-size:13px; line-height:1; color:inherit; opacity:.55; cursor:pointer}
.kw-tag-x button:hover{opacity:1; color:var(--neg)}

.vtoast{position:fixed; right:24px; bottom:24px; z-index:2000; padding:11px 18px; border-radius:12px; background:var(--ink); color:var(--surface); font-size:13.5px; font-weight:600; box-shadow:0 10px 30px rgba(0,0,0,.25); opacity:0; transform:translateY(8px); transition:opacity .2s, transform .2s}
.vtoast.on{opacity:1; transform:none}
.vtoast::before{content:"✓"; margin-right:8px; color:var(--pos)}

.aip-tbl td:first-child, .aip-tbl th{white-space:nowrap}
.aip-tbl td:first-child span{overflow-wrap:normal}

@media(max-width:600px){ body:has(#notif-wrap[open]) .aibot-fab{display:none} }

.psel{display:inline-flex; align-items:center; justify-content:center; vertical-align:-3px;
  width:0; height:18px; margin-right:0; padding:0; border:0 solid var(--line); border-radius:50%;
  background:var(--surface); color:transparent; cursor:pointer; opacity:0; overflow:hidden; flex:none;
  transition:width .16s ease, margin .16s ease, opacity .16s ease, background .12s, border-color .12s, transform .12s}
.prow-q:hover .psel, .prow-q:focus-within .psel, .sel-mode .psel{width:18px; margin-right:9px; opacity:1; border-width:1.6px}
.prow-q:hover .psel:not([aria-pressed="true"]){border-color:var(--accent-strong)}
.sel-mode .psel:not([aria-pressed="true"]){border-color:color-mix(in srgb, var(--ink) 18%, transparent); background:transparent}
.sel-mode tr.prow-q:hover .psel:not([aria-pressed="true"]){border-color:var(--accent-strong); background:color-mix(in srgb, var(--accent-strong) 10%, transparent)}
.psel:hover{transform:scale(1.12)}
.psel[aria-pressed="true"]{background:var(--accent-strong); border-color:var(--accent-strong); color:#fff}
.sel-mode tr.prow-q, .sel-mode tr.prow-m{cursor:pointer; user-select:none}
tr.prow-sel > td{background:color-mix(in srgb, var(--accent-strong) 9%, transparent) !important}
tr.prow-q.prow-sel > td:first-child{box-shadow:inset 3px 0 0 var(--accent-strong)}
tr.prow-m.prow-sel > td:first-child{box-shadow:inset 3px 0 0 var(--accent-strong)}
.psel-end{display:inline-flex; align-items:center; gap:6px}
.psel-start{display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:8px;
  border:1px solid transparent; background:transparent; color:var(--muted); cursor:pointer; transition:background .12s, color .12s, border-color .12s}
.psel-start:hover{color:var(--accent-strong); background:color-mix(in srgb, var(--accent-strong) 10%, transparent)}
.psel-start:focus{outline:none} .psel-start:focus-visible{border-color:var(--accent-strong)}

.psel-bar{position:absolute; left:0; right:0; top:0; z-index:5; display:flex; align-items:center; gap:8px;
  min-height:64px; padding:10px 18px; border-radius:var(--r-lg, 16px) var(--r-lg, 16px) 0 0;
  background:color-mix(in srgb, var(--accent-strong) 9%, var(--surface)); border-bottom:1px solid color-mix(in srgb, var(--accent-strong) 25%, var(--line));
  animation:pselIn .18s ease}
@keyframes pselIn{from{opacity:0; transform:translateY(-6px)} to{opacity:1; transform:none}}
#tracked-prompts-card{position:relative}
.psel-count{font-size:14px; color:var(--ink); white-space:nowrap}
.psel-count b{font-size:17px; font-variant-numeric:tabular-nums; margin-right:2px}
.psel-hint{font-size:12px; color:var(--muted-2); white-space:nowrap}
.psel-push{flex:1}
.psel-a{display:inline-flex; align-items:center; gap:6px; border:1px solid transparent; border-radius:10px; padding:8px 14px;
  background:transparent; color:var(--ink-2); font:inherit; font-size:13px; font-weight:600; cursor:pointer; white-space:nowrap}
.psel-a.ghost{color:var(--accent-strong); padding:6px 8px}
.psel-a.ghost:hover{text-decoration:underline}
.psel-a.run{background:var(--accent-strong); color:#fff}
.psel-a.run:hover:not(:disabled){filter:brightness(1.08)}
.psel-a.del{border-color:color-mix(in srgb, var(--neg) 40%, var(--line)); color:var(--neg); background:var(--surface)}
.psel-a.del:hover:not(:disabled){background:var(--neg); color:#fff; border-color:var(--neg)}
.psel-a:disabled{opacity:.45; cursor:default}
.psel-x{display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:50%; border:0; background:transparent; color:var(--ink-2); cursor:pointer}
.psel-x:hover{background:color-mix(in srgb, var(--accent-strong) 14%, transparent)}
@media (max-width:600px){
  .psel-bar{padding:8px 10px; gap:4px; flex-wrap:wrap} .psel-hint{display:none} .psel-a{padding:7px 10px}
}
}
