:root{
  /* Markiverse brand, sampled from the logo: blue #1B6FA3 (wordmark), green #8AB04E (swoosh), orange #E5562A + yellow #FDC232 (mark) */
  --brand-blue:#1B6FA3; --brand-green:#8AB04E; --brand-orange:#E5562A; --brand-yellow:#FDC232; --brand-navy:#0D3550;
  --ground:#EEF4F8; --surface:#FFFFFF; --ink:#0D2B42; --ink2:#34495A; --muted:#5A6B78; --line:#DCE4EA; --line2:#EAF0F4;
  --side:#0D2B42; --side2:#174A6E; --side-ink:#D2E2EE; --side-muted:#8FB0C7;
  --accent:#1B6FA3; --accent-ink:#145A86; --accent-bg:#E6F1F8;
  --green:#5E8A2C; --amber:#B4500A; --red:#C4372C;
  --g-bg:#EDF5E1; --g-ink:#43691C; --a-bg:#FCEBDD; --a-ink:#8F3F07; --r-bg:#FBE4E2; --r-ink:#9A1C13; --n-bg:#ECF1F4; --n-ink:#34495A;
  --radius:14px;
}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--ground);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}
a{color:var(--accent-ink)} a:hover{color:var(--brand-navy)}
.num,.mono{font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace;font-variant-numeric:tabular-nums}

/* ---------- shell ---------- */
.shell{min-height:100vh;display:flex;flex-wrap:wrap}
.side{flex:1 1 248px;max-width:100%;background:#fff;color:var(--ink2);border-right:1px solid var(--line);padding:24px 14px 18px;display:flex;flex-direction:column;gap:2px}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:0 10px 18px;margin-bottom:6px;border-bottom:1px solid var(--line2)}
.logo-plate{display:block}
.logo-plate img{display:block;width:160px;height:auto}
.brand-sub{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.login-brand{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.login-brand img{display:block;width:170px;height:auto}
.brand b{display:inline;color:var(--brand-navy);font-size:15px;font-weight:700;letter-spacing:.02em}
.brand span{font-size:12px;color:var(--muted)}
.side .sec{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:16px 10px 6px}
.side a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:var(--ink2);text-decoration:none;font-size:14px;font-weight:500;min-height:24px}
.side a:hover{background:var(--accent-bg);color:var(--brand-navy)}
.side a.on{background:var(--accent-bg);color:var(--brand-blue);font-weight:600;box-shadow:inset 3px 0 0 var(--brand-blue)}
.side a .dot{width:8px;height:8px;border-radius:50%;flex:none}
.side a .badge{margin-left:auto;background:var(--brand-orange);color:#fff;border-radius:999px;font-size:11px;font-weight:700;padding:1px 7px}
.side .who{margin-top:auto;padding:16px 10px 0;border-top:1px solid var(--line2);font-size:13px;color:var(--muted)}
.side .who strong{display:block;color:var(--ink);font-weight:600}
.side .who a{display:inline;padding:0;color:var(--accent-ink);text-decoration:underline}
.side .who a:hover{background:none}
main{flex:999 1 560px;min-width:0;padding:30px 40px 64px}
.wrap{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:20px}

/* ---------- type & layout ---------- */
h1{margin:0;font-size:28px;letter-spacing:-.02em;line-height:1.15}
h2{margin:0;font-size:17px;letter-spacing:-.01em}
.sub{color:var(--muted);font-size:14px;margin-top:6px}
.eyebrow{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:600}
.head{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-end}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;min-width:0}
.card.flush{padding:0;overflow:hidden}
.card-h{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line2)}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.between{justify-content:space-between}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.muted{color:var(--muted)} .small{font-size:13px} .strong{font-weight:600}

/* ---------- pills & flashes ---------- */
.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;line-height:1.4}
.ok{background:var(--g-bg);color:var(--g-ink)} .warn{background:var(--a-bg);color:var(--a-ink)} .bad{background:var(--r-bg);color:var(--r-ink)} .neu{background:var(--n-bg);color:var(--n-ink)}
.p1{background:var(--ink);color:#fff} .p2{background:var(--accent-bg);color:var(--accent-ink)} .p3{background:var(--n-bg);color:var(--n-ink)}
.tpl{background:#F1EFFA;color:#3B2F8A}
.flash{border-radius:12px;padding:12px 16px;font-size:14px;font-weight:600}
.flash.ok{border:1px solid #9FCFB4} .flash.bad{border:1px solid #E7A9A3}
.fb{font-size:13px;line-height:1.5;border-radius:10px;padding:10px 12px}
.fb.ok{background:var(--g-bg);color:var(--g-ink)} .fb.bad{background:var(--r-bg);color:#7A1610} .fb.warn{background:var(--a-bg);color:#6E3105} .fb.neu{background:var(--ground);color:var(--n-ink)}

/* ---------- tables ---------- */
table{border-collapse:collapse;width:100%;font-size:14px}
th{text-align:left;font-size:12px;color:var(--muted);font-weight:600;padding:10px 14px;border-bottom:1px solid var(--line);white-space:nowrap;background:#F6F9FB}
td{padding:11px 14px;border-bottom:1px solid var(--line2);vertical-align:middle}
tr:last-child td{border-bottom:0}
.scroll{overflow-x:auto}

/* ---------- forms ---------- */
input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],select,textarea{font:inherit;border:1px solid #C9D6DF;border-radius:9px;padding:9px 11px;background:#FAFCFD;color:var(--ink);min-height:40px;max-width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px;background:#fff}
input.small{width:96px} input.tiny{width:76px}
textarea{width:100%;resize:vertical}
label.f{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:10px;background:var(--brand-blue);color:#fff;font:inherit;font-weight:600;font-size:14px;border:0;cursor:pointer;text-decoration:none;white-space:nowrap}
.btn:hover{background:var(--accent-ink);color:#fff}
.btn.ghost{background:#fff;color:var(--ink);border:1px solid #C9D6DF}
.btn.ghost:hover{background:var(--n-bg)}
.btn.accent{background:var(--accent)} .btn.accent:hover{background:var(--accent-ink)}
.btn.sm{min-height:36px;padding:0 12px;font-size:13px;border-radius:8px}
.btn[disabled],.btn.off{background:#D9D7D0;color:var(--muted);cursor:not-allowed;border:0}

/* ---------- stat tiles ---------- */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.stat .v{font-size:26px;font-weight:600;font-family:"IBM Plex Mono",monospace;letter-spacing:-.02em;margin-top:4px}
.stat .v small{font-size:14px;color:var(--muted);font-weight:500}

/* ---------- GPT cards ---------- */
.gpt{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.gpt.s-done{border:2px solid var(--green)} .gpt.s-red{border:2px solid var(--red)} .gpt.s-amber{border:2px solid var(--amber)}
.ghead{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line2);background:#F6F9FB}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.col{padding:18px 20px;display:flex;flex-direction:column;gap:10px;border-right:1px solid var(--line2);min-width:0}
.col:last-child{border-right:0}
.ctitle{display:flex;align-items:center;gap:10px;font-weight:600;font-size:15px}
.letter{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex:none;background:var(--ink);color:#fff}
.letter.off{background:var(--n-bg);color:#9A9EA8} .letter.r{background:var(--red)} .letter.a{background:var(--amber)}
.calcrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;font-size:13px;color:var(--n-ink);padding:5px 0;border-bottom:1px solid #F1EFEA}
.calcrow input[type=text].wide{flex:1 1 200px}
.lock{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border:1px solid #C9C6BD;border-radius:6px;background:var(--n-bg);color:var(--n-ink);font-family:"IBM Plex Mono",monospace;font-weight:600;font-size:13px}
.goalline{font-size:15px;font-weight:600}
.box{border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:#F6F9FB;font-size:14px}
.q{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;padding:6px 0;border-top:1px solid #F1EFEA}
.yn{display:inline-flex;border:1px solid #C9D6DF;border-radius:8px;overflow:hidden;flex:none}
.yn label{display:flex;align-items:center;cursor:pointer;position:relative}
.yn input{position:absolute;opacity:0;width:1px;height:1px}
.yn span{padding:7px 14px;font-size:13px;font-weight:600;color:var(--muted)}
.yn input:checked+span{background:var(--ink);color:#fff}
.yn input.no:checked+span{background:var(--red)}
.yn input:focus-visible+span{outline:2px solid var(--accent)}
.t{display:flex;gap:10px;align-items:baseline;font-size:13px;padding:7px 0;border-top:1px solid #F1EFEA}
.cad{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);width:62px;flex:none}
.locked{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;border:1px dashed #C9D6DF;border-radius:10px;padding:24px 16px;color:var(--muted);font-size:13px;background:#F6F9FB;min-height:110px}

/* ---------- calendar ---------- */
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.cal .dow{font-size:12px;color:var(--muted);font-weight:600;text-align:center;padding:4px 0}
.day{border-radius:10px;min-height:78px;padding:8px;font-size:13px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--ink)}
.day .d{font-weight:700}
.day.green{background:#DCEFE4;border-color:#9FCFB4} .day.amber{background:#FBE7D3;border-color:#EBB98E} .day.red{background:#F9DCD9;border-color:#E7A9A3}
.day.leave,.day.grey{background:var(--n-bg);color:var(--muted)} .day.off{background:transparent;border-style:dashed;color:#9A9EA8} .day.future,.day.none{background:#fff;color:var(--muted)} .day.today{outline:2px solid var(--accent)}
.day.blank{border:0;background:transparent}
a.day:hover{border-color:var(--ink)}
.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;color:var(--muted)}
.sw{display:inline-block;width:12px;height:12px;border-radius:4px;vertical-align:-1px;margin-right:6px}
.heat{border-collapse:separate;border-spacing:3px;width:auto}
.heat td,.heat th{padding:0;border:0;text-align:center;background:none}
.heat th{font-size:11px;padding:2px;color:var(--muted);font-weight:600}
.heat td.c{width:22px;height:22px;border-radius:5px}
.heat td.name{text-align:left;padding-right:14px;white-space:nowrap;font-size:14px}
.c.green{background:#5BAF85} .c.amber{background:#E8A15F} .c.red{background:#D9655B} .c.leave,.c.grey{background:#CFCCC4} .c.off{background:transparent} .c.future,.c.none{background:#ECEAE4} .c.today{background:#ECEAE4;box-shadow:inset 0 0 0 2px var(--accent)}

/* ---------- department & company ---------- */
.dept-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit}
a.dept-card:hover{border-color:var(--ink);color:inherit}
.bar{height:8px;border-radius:99px;background:var(--n-bg);overflow:hidden}
.bar>i{display:block;height:100%;border-radius:99px}
.people{display:flex;flex-direction:column}
.person{display:grid;grid-template-columns:minmax(180px,1.1fr) minmax(0,3fr) auto;gap:16px;align-items:start;padding:14px 20px;border-bottom:1px solid var(--line2)}
.person:last-child{border-bottom:0}
.goal-mini{display:flex;gap:8px;align-items:baseline;font-size:13px;padding:3px 0}
.avatar{width:32px;height:32px;border-radius:50%;background:var(--n-bg);color:var(--n-ink);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex:none}

/* ---------- login ---------- */
.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--side)}
.login .panel{background:#fff;border-radius:18px;padding:32px;width:100%;max-width:440px;display:flex;flex-direction:column;gap:16px}
.login-form{display:flex;flex-direction:column;gap:14px}
.login-form input{width:100%}
.login-form .btn{width:100%;margin-top:4px}
.sso{display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px;border:1px solid #C9D6DF;border-radius:10px;background:#fff;font:inherit;font-weight:600;font-size:14px;color:var(--ink);width:100%;cursor:pointer}
.sso:hover{background:var(--n-bg)}
details.quick summary{cursor:pointer;font-size:13px;color:var(--muted);font-weight:600;padding:6px 0}
details.quick .list{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
details.quick button{text-align:left;background:var(--ground);border:1px solid var(--line);border-radius:8px;padding:8px 10px;font:inherit;font-size:13px;cursor:pointer;min-height:40px}
details.quick button:hover{border-color:var(--ink)}

@media (max-width:760px){
  main{padding:20px 16px 48px}
  .person{grid-template-columns:1fr}
  .day{min-height:56px;padding:6px}
  .side{flex-basis:100%}
}

/* ---------- month settings ---------- */
table.settings td{padding:12px 16px}
table.settings tr.grp td{border-top:2px solid var(--line)}
table.settings tbody tr:first-child td{border-top:0}
.sf{display:inline-flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);font-weight:600}
.sfi{display:inline-flex;align-items:center;gap:4px}
.sfi em{font-style:normal;color:var(--muted);font-size:13px}
.sf input{width:110px;font-family:"IBM Plex Mono",monospace;font-weight:600;text-align:right;min-height:38px}
.sf.empty input{background:#FFF6EC;border-color:#EBB98E}
details.acc{border-top:1px solid var(--line2)}
details.acc summary{display:flex;align-items:center;gap:12px;padding:14px 20px;cursor:pointer;list-style:none;min-height:24px}
details.acc summary::-webkit-details-marker{display:none}
details.acc summary::before{content:"▸";color:var(--muted);font-size:12px;width:12px}
details.acc[open] summary::before{content:"▾"}
details.acc summary:hover{background:#F6F9FB}
details.acc table.settings{border-top:1px solid var(--line2);background:#FDFCFA}
details.acc:first-child{border-top:0}
details.add-lever{border-top:1px dashed var(--line)}
details.add-lever summary{padding:12px 20px;cursor:pointer;font-weight:600;color:var(--accent-ink);list-style:none;font-size:14px}
details.add-lever summary::-webkit-details-marker{display:none}
details.add-lever summary:hover{background:var(--accent-bg)}
table.levers input.lv{width:64px;font-family:"IBM Plex Mono",monospace;font-weight:600;text-align:right;min-height:38px}
table.levers td{padding:10px 6px}
table.levers .goal-cell{color:var(--accent-ink);width:76px;min-width:0;text-align:right;padding-right:14px}
table.levers th.goal-h{width:76px;white-space:nowrap;text-align:right;padding-right:14px}
table.levers input.lv-name{width:170px;font-weight:600}
table.levers input.lv-metric{width:140px}
table.levers select.lv-owner{width:136px}
table.levers tr:last-child input.lv-name::placeholder{color:var(--accent-ink);font-weight:600}
.qdef{padding:14px 20px 4px;font-size:13px}
.qdef textarea{font-weight:400;max-width:820px}
/* editable targets */
.tedit{display:flex;flex-direction:column;gap:8px}
.tedit .thead{display:none}
.tedit .trow{display:grid;grid-template-columns:96px 60px 1fr auto;gap:6px;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--line)}
.tedit .trow [name^=w]{grid-column:1/-1;grid-row:1;font-weight:500}
.tedit input[type=text],.tedit select{width:100%;min-width:0;font:inherit;font-size:13px;padding:6px 7px;border:1px solid var(--line);border-radius:7px;background:#fff}
.tedit .tx{font-size:12px;display:flex;gap:4px;align-items:center;white-space:nowrap;color:var(--muted)}

/* send bar stays visible */
.sendbar{position:sticky;bottom:12px;z-index:5;box-shadow:0 6px 24px rgba(0,0,0,.12)}

/* per-card send / approve */
.cardsend{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-end;padding:12px 20px;border-top:1px solid var(--line);background:#F6F9FB}
.cardsend label.small{display:flex;gap:6px;align-items:center}
.cardsend.approve{justify-content:flex-start}
.cardsend.approve input[type=text]{flex:1 1 220px;font:inherit;font-size:13px;padding:7px 9px;border:1px solid var(--line);border-radius:7px}

/* weekly-only people: days inside a week */
.day.week{background:#fff;color:var(--muted)} .c.week{background:#ECEAE4}

/* review & dashboard */
.rv-verdict{display:flex;gap:16px;align-items:center}
.rv-big .pill{font-size:16px;padding:6px 14px}
.rv-three{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.rv-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.rv-h{font-size:15px;margin-bottom:8px;padding-left:10px;border-left:4px solid var(--line)}
.rv-h.ok{border-color:#5BAF85}.rv-h.bad{border-color:#D9655B}.rv-h.warn{border-color:#E8A15F}
.rv-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.45}
.rv-bar{height:8px;background:var(--n-bg,#ECEAE4);margin:0 20px 12px;border-radius:99px;overflow:hidden}
.rv-bar span{display:block;height:100%;border-radius:99px}.rv-bar .ok{background:#5BAF85}.rv-bar .bad{background:#D9655B}
table.dash td{vertical-align:middle}
@media print{.side,.noprint,.flash{display:none!important}.shell{display:block}main{padding:0}.card{break-inside:avoid;box-shadow:none}body{background:#fff}}

/* speedometer */
.gauges{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin-top:10px}
.gauge-card{border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;background:#F6F9FB}
.gauge-svg{width:100%;max-width:240px;align-self:center;overflow:visible}
.g-track{fill:none;stroke:#ECEAE4;stroke-width:16}
.g-zone{fill:none;stroke-width:16;opacity:.9}.g-zone.bad{stroke:#E39189}.g-zone.warn{stroke:#EDBE8A}.g-zone.ok{stroke:#7CC29F}
.g-tick{font:500 9px "IBM Plex Mono",monospace;fill:#8A8F98}
.g-needle{transform-origin:100px 100px;transform:rotate(var(--a));animation:g-sweep 1.4s cubic-bezier(.25,1.35,.45,1) both}
.g-needle line{stroke:#1D2433;stroke-width:4;stroke-linecap:round}.g-needle circle{fill:#1D2433}
.g-needle.idle{opacity:.25;animation:none;transform:rotate(-90deg)}
@keyframes g-sweep{from{transform:rotate(-90deg)}to{transform:rotate(var(--a))}}
@media (prefers-reduced-motion:reduce){.g-needle{animation:none}}
.g-read{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:-6px}
.g-num{font:600 28px "IBM Plex Mono",monospace;letter-spacing:-.02em}
.g-sub{text-align:center;line-height:1.45}
.g-work{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center}
.g-bar{height:6px;background:#ECEAE4;border-radius:99px;overflow:hidden}.g-bar span{display:block;height:100%;border-radius:99px}
.g-bar .ok{background:#5BAF85}.g-bar .warn{background:#E8A15F}.g-bar .bad{background:#D9655B}
.g-in{display:flex;gap:8px;align-items:center;justify-content:center}

.tabs{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.tabs a{padding:6px 14px;font-size:13px;font-weight:600;color:var(--muted);text-decoration:none;background:#fff}
.tabs a.on{background:#1D2433;color:#fff}
.trend{display:flex;flex-direction:column;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.trow{display:grid;grid-template-columns:64px 1fr;gap:10px;align-items:center}
.tl{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{display:inline-flex;gap:6px;align-items:center;font-size:12px;padding:4px 9px;border-radius:99px;border:1px solid transparent}
.chip b{font-family:"IBM Plex Mono",monospace;font-weight:600}
.chip.ok{background:#DCEFE4;border-color:#9FCFB4}.chip.warn{background:#FBE7D3;border-color:#EBB98E}.chip.bad{background:#F9DCD9;border-color:#E7A9A3}.chip.neu{background:#F1EFEA;color:var(--muted)}

.g-range{gap:8px;flex-wrap:wrap}.g-range label{display:flex;gap:6px;align-items:center}
.g-range input[type=date]{font:inherit;font-size:13px;padding:5px 8px;border:1px solid var(--line);border-radius:7px;background:#fff}
.g-presets{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px}
.g-presets a{font-size:12px;font-weight:600;padding:5px 11px;border-radius:99px;border:1px solid var(--line);color:var(--ink,#1D2433);text-decoration:none;background:#fff}
.g-presets a.on{background:#1D2433;color:#fff;border-color:#1D2433}
.g-bars{margin-top:14px}.g-bars svg{width:100%;height:auto;display:block}
.g-bars .bar.ok{fill:#7CC29F}.g-bars .bar.warn{fill:#EDBE8A}.g-bars .bar.bad{fill:#E39189}.g-bars .bar.neu{fill:#DDD9D0}
.g-100{stroke:#1D2433;stroke-dasharray:4 4;opacity:.35}
.g-bars .g-xl{font-size:13px}

.g-bars svg{max-height:150px}.g-bars .small{margin-top:6px}

.team-g{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:18px;align-items:start;margin-top:10px}
@media (max-width:800px){.team-g{grid-template-columns:1fr}}
.team-split{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.team-list ul{margin-top:6px}

.prep{opacity:.75;border:1px dashed var(--line);border-radius:9px;padding:6px 10px;background:#F6F9FB}

.btn.mv{padding:4px 9px;min-width:0;margin-right:2px}

.add-acc{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:14px 20px;border-top:1px solid var(--line);background:#F6F9FB}
.add-acc input[type=text]{flex:1 1 260px;font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:8px}
.add-acc label{display:flex;gap:6px;align-items:center}

.em-grid{display:flex;flex-direction:column;gap:10px;margin:10px 0}
.em-grid label{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.em-grid input[type=time]{font:inherit;padding:5px 8px;border:1px solid var(--line);border-radius:7px}
details.mail{border:1px solid var(--line);border-radius:9px;padding:8px 12px;margin-top:8px;background:#F6F9FB}
details.mail pre{white-space:pre-wrap;font-size:13px;margin:8px 0 0}
.fb pre{white-space:pre-wrap;background:#fff;border:1px solid var(--line);border-radius:7px;padding:8px;margin:8px 0;font-size:12px}

/* team split */
tr.split-line td{padding:0 12px 10px 18px;border-top:none}
.split-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.split-p{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;padding:6px 10px;background:#fff}
.split-p.on{border-color:#9FCFB4;background:#F3FAF6}
.split-p span{flex:1}
.split-p input.lv{width:70px}
.team-split-box{margin-top:8px}
/* Team share questions */
.share-q{display:block;margin-top:6px;color:var(--bad,#b42318)}
.split-cell .share-q{font-size:12px}
.split-cell .share-q input{display:block;width:100%;margin-top:4px}
.share-ask{margin-top:8px}
.share-ask summary{cursor:pointer;font-size:13px;color:var(--accent,#2f5bd3)}
.share-form{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.share-form textarea{width:100%}
.lu{margin-right:6px}.lu.yes{color:var(--ok,#067647)}.lu.no{color:var(--muted,#667085)}
.ok-t{color:var(--ok,#067647)}
.split-cell{display:flex;flex-direction:column;gap:3px}
.split-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:10px}
.split-foot .small{flex:1;max-width:720px}
.split-foot .btn{flex:none}
a.pill{text-decoration:none}

/* ================= Markiverse theme =================
   Colours from the logo. One loud idea: chunky G·P·T tiles + navy offset "pop" edges on cards and main buttons. */
:root{ --pop:#0D2B42; --radius:18px; }
h1,h2,h3,.ctitle,.brand b,.gpt .ghead strong{font-family:"Bricolage Grotesque","DM Sans",system-ui,sans-serif}
h1{font-size:34px;font-weight:800;letter-spacing:-.03em;line-height:1.05;color:var(--ink)}
h2{font-size:19px;font-weight:700;letter-spacing:-.015em}
.eyebrow{text-transform:none;letter-spacing:0;font-size:13px;font-weight:600;color:var(--brand-blue)}
.side .sec{text-transform:none;letter-spacing:0;font-size:12px;color:var(--muted);padding:18px 10px 6px}
main{background:var(--ground)}

/* Sidebar: white, so the logo sits naturally */
.side a.on{background:var(--brand-blue);color:#fff;box-shadow:none}
.side a.on .badge{background:#fff;color:var(--brand-orange)}
.side a:hover:not(.on){background:#E6F1F8;color:var(--ink)}

/* Cards: crisp navy edge + offset pop */
.card,.gpt{border:2px solid var(--pop);border-radius:var(--radius);box-shadow:4px 4px 0 var(--pop)}
.card-h,.ghead{border-bottom:2px solid var(--line2)}
.ghead{background:#F7FAFC}
.gpt.s-done{border-color:var(--pop);box-shadow:4px 4px 0 var(--brand-green)}
.gpt.s-red{border-color:var(--red);box-shadow:4px 4px 0 var(--brand-orange)}
.gpt.s-amber{border-color:var(--pop);box-shadow:4px 4px 0 var(--brand-yellow)}

/* The G · P · T tiles in logo colours */
.letter{width:34px;height:34px;border-radius:11px;font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:17px;border:2px solid var(--pop);box-shadow:2px 2px 0 var(--pop);transform:rotate(-4deg)}
.cols>.col:nth-child(1) .letter{background:var(--brand-blue);color:#fff}
.cols>.col:nth-child(2) .letter{background:var(--brand-orange);color:#fff;transform:rotate(3deg)}
.cols>.col:nth-child(3) .letter{background:var(--brand-green);color:var(--pop);transform:rotate(-2deg)}
.cols>.col .letter.off{background:#fff;color:#9AAAB6;border-color:#C9D6DF;box-shadow:none;transform:none}
.cols>.col .letter.r{background:#fff;color:var(--red);border-color:var(--red);box-shadow:2px 2px 0 var(--red)}
.cols>.col .letter.a{background:var(--brand-yellow);color:var(--pop)}

/* Buttons: primary pops, ghost stays quiet */
.btn{border-radius:12px;border:2px solid var(--pop);box-shadow:3px 3px 0 var(--pop);transition:transform .08s ease,box-shadow .08s ease}
.btn:hover{background:var(--brand-blue);transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--pop)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--pop)}
.btn.ghost{border:2px solid #C9D6DF;box-shadow:none}
.btn.ghost:hover{border-color:var(--pop);background:#fff;transform:none;box-shadow:none}
.btn.off,.btn:disabled{background:#DCE4EA;color:#7A8C99;border-color:#C9D6DF;box-shadow:none;transform:none}
.btn.sm{min-height:36px}

/* Pills: chunkier */
.pill{border-radius:999px;padding:4px 11px;font-weight:700}
.p1{background:var(--brand-orange);color:#fff}
.p2{background:var(--brand-yellow);color:var(--pop)}

/* Inputs */
input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],select,textarea{border:2px solid #C9D6DF;border-radius:11px;background:#fff}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-blue);box-shadow:0 0 0 3px #CFE3F1}
:focus-visible{outline:3px solid var(--brand-yellow);outline-offset:2px}

/* Login on navy with a yellow edge */
.login .panel{border:2px solid var(--pop);box-shadow:8px 8px 0 var(--brand-yellow)}

@media (prefers-reduced-motion: reduce){.btn{transition:none}.btn:hover,.btn:active{transform:none}}
.sso{border:2px solid #C9D6DF;border-radius:12px}.sso:hover{border-color:var(--pop)}

/* ---------- Sidebar in the logo's dominant blue; the hexagon's colours mark each group ---------- */
:root{ --side:#155E8E; --side2:#1B6FA3; }
.side{background:var(--side);color:#E3EFF7;border-right:0}
.side .brand{border-bottom:0;padding:2px 10px 14px;gap:12px}
.side .logo{display:block;width:160px;height:auto}
.hexbar{display:flex;gap:4px;width:160px}
.hexbar i{flex:1;height:5px;border-radius:3px}
.hexbar i:nth-child(1){background:var(--brand-orange)} .hexbar i:nth-child(2){background:var(--brand-yellow)}
.hexbar i:nth-child(3){background:var(--brand-green)} .hexbar i:nth-child(4){background:#5FA8DA}
.side .brand b{color:#fff}
.side .brand span{color:#B7D3E7}
.side .sec{font-size:13px;font-weight:700;padding:20px 10px 6px}
.side .sec.c-orange{color:#FFA27A} .side .sec.c-yellow{color:#FDC232} .side .sec.c-green{color:#B5D67A}
.side .sec.c-sky{color:#A8D5F2} .side .sec.c-white{color:#fff}
.side a{color:#E3EFF7}
.side a:hover:not(.on){background:rgba(255,255,255,.12);color:#fff}
.side a.on{background:#fff;color:var(--brand-navy);font-weight:700;box-shadow:inset 4px 0 0 var(--brand-orange),3px 3px 0 var(--brand-navy)}
.side a .dot{box-shadow:0 0 0 2px #fff}
.side a .badge{background:var(--brand-orange);color:#fff}
.side a.on .badge{background:var(--brand-orange);color:#fff}
.side .who{border-top:1px solid rgba(255,255,255,.18);color:#B7D3E7}
.side .who strong{color:#fff}
.side .who a{color:#fff}
/* page title gets the logo's green swoosh */
.head h1{padding-bottom:8px;background:no-repeat left bottom/180px 7px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 7'%3E%3Cpath d='M2 6 Q90 -2 178 4' fill='none' stroke='%238AB04E' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E")}
.brief-preview{margin-top:12px;border:2px solid var(--line);border-radius:12px;padding:16px;background:#fff;overflow-x:auto}
a.sso{text-decoration:none}
/* My GPT: jump to a client */
.jump{display:flex;flex-wrap:wrap;gap:8px;align-items:center;position:sticky;top:8px;z-index:5;padding:10px 14px}
.jump .chip{background:#E6F0F7;border-color:#B9D3E6;color:#0D2B42;text-decoration:none;font-size:13px}
.jump .chip:hover{background:#1B6FA3;color:#fff}
.grouph{margin:18px 0 -4px;color:#0D2B42;scroll-margin-top:72px}
/* Targets: the work line on top with Remove beside it; how often + number below */
.tedit .trow [name^=w]{grid-column:1/4;grid-row:1}
.tedit textarea{width:100%;min-width:0;font:inherit;font-size:13px;line-height:1.35;padding:6px 7px;border:1px solid var(--line);border-radius:7px;background:#fff;resize:vertical}
.tedit .trow .tx{grid-column:4;grid-row:1}
/* Targets grouped as Daily / Weekly / Monthly, opening and closing */
.tgroup{border:1px solid var(--line2);border-radius:10px;background:#fff;margin:0 0 8px}
.tgroup>summary{cursor:pointer;list-style:none;display:flex;gap:8px;align-items:center;padding:10px 12px;font-weight:600}
.tgroup>summary::-webkit-details-marker{display:none}
.tgroup>summary::before{content:"▸";color:#1B6FA3;transition:transform .15s}
.tgroup[open]>summary::before{transform:rotate(90deg)}
.tgroup>summary .cad{color:#0D2B42}
.tgroup-body{padding:4px 12px 10px;display:flex;flex-direction:column;gap:8px}
.tgroup.math{background:#F3F8FC}
.tgroup .mline{font-size:13px;line-height:1.45;padding:6px 0;border-bottom:1px dashed var(--line2)}
.tgroup .mline:last-child{border-bottom:0}
.tgroup-add{padding:4px 0}
/* Priority picker */
.prio-pick{display:flex;flex-direction:column;gap:8px}
.prio-opt{display:flex;gap:10px;align-items:flex-start;text-align:left;font:inherit;padding:10px 12px;border:1px solid var(--line2);border-radius:10px;background:#fff;cursor:pointer}
.prio-opt:hover:not([disabled]){border-color:#1B6FA3}
.prio-opt.on{border-color:#1B6FA3;background:#E6F0F7;box-shadow:inset 3px 0 0 #1B6FA3}
.prio-opt[disabled]{opacity:.55;cursor:not-allowed}
/* Today: expected vs actual */
table.checkin td.exp{font-weight:700;color:var(--ink)}
.behind{color:var(--r-ink);font-weight:600}
.ahead{color:var(--g-ink);font-weight:600}
.exp .small{font-family:"DM Sans",system-ui,sans-serif;font-weight:500;display:block}
/* Goal + Targets get the width; Priority is a pill in the card header (21 Oct 2026) */
.cols.two{grid-template-columns:minmax(260px,1fr) minmax(320px,2fr)}
@media (max-width:760px){.cols.two{grid-template-columns:1fr}}
.cols.two>.col:nth-child(2) .letter:not(.off):not(.r):not(.a){background:var(--brand-green);color:var(--pop);transform:rotate(-2deg)}
.prio-chip{position:relative;display:inline-block}
.prio-chip>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.prio-chip>summary::-webkit-details-marker{display:none}
.prio-chip .caret{font-size:11px;color:var(--muted)}
.prio-chip .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.prio-menu{position:absolute;z-index:20;top:calc(100% + 6px);left:0;width:min(340px,80vw);display:flex;flex-direction:column;gap:6px;padding:10px;background:#fff;border:1px solid var(--line2);border-radius:12px;box-shadow:0 10px 28px rgba(13,43,66,.16)}
/* One-time targets: a deadline beside the number */
.tedit .trow .due{display:none;grid-column:3;grid-row:2;align-items:center;gap:6px;color:var(--muted)}
.tedit .trow:has(select option[value=Once]:checked) .due{display:flex}
.tedit .trow .due input{font:inherit;font-size:13px;padding:5px 6px;border:1px solid var(--line);border-radius:7px}
.pill.overdue{background:#FDE7E3;color:#9A1C13;border-color:#F3B7AC}
/* Promised keywords */
.kw-setup{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.kw-setup label{display:flex;flex-direction:column;gap:4px}
.kw-setup .grow{flex:1 1 260px}
.kw-setup input,.kw-setup select,.kw-add textarea,.kw-paste textarea,.kw-why input{font:inherit;font-size:13px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:#fff;width:100%}
.kw-add textarea,.kw-paste textarea{margin:8px 0 6px}
.kw-add>summary,.kw-paste>summary{cursor:pointer}
.kw-paste{padding:0 20px 16px}
.kw-progress{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline}
.kw-b{white-space:nowrap}
tr.kw-drop td{background:#FFF4F1}
.kw-why{display:flex;flex-direction:column;gap:6px;min-width:240px}
.kw-why label{display:flex;gap:6px;align-items:center}
.kw-why input[type=date]{width:auto}
.kw-file{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:8px 0 2px}
.kw-file label.btn{cursor:pointer}
.kw-page{font:inherit;font-size:13px;padding:5px 7px;border:1px solid var(--line);border-radius:7px;width:100%;min-width:180px}
.kw-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.kw-two>div:last-child{grid-column:1/-1}
.kw-two textarea{font:inherit;font-size:13px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;width:100%;margin-top:6px}
@media (max-width:760px){.kw-two{grid-template-columns:1fr}}
.kw-choices{display:flex;flex-direction:column;gap:4px}
.kw-choices label{display:flex;gap:6px;align-items:baseline}
/* ---------- Growth-lever cards, redesigned (25 Oct 2026) ---------- */
.sumline{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.sumline .chip{background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;color:var(--ink2)}
.sumline .chip b{font-family:"IBM Plex Mono",monospace;color:var(--ink)}
h2.cli{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:22px 0 10px;scroll-margin-top:72px}
.gcard{background:#fff;border:2px solid var(--pop);border-radius:16px;box-shadow:5px 5px 0 var(--line);margin-bottom:14px;overflow:hidden}
.gcard[open]{box-shadow:6px 6px 0 var(--brand-green)}
.gcard>summary{list-style:none;cursor:pointer}
.gcard>summary::-webkit-details-marker{display:none}
.gh{display:grid;grid-template-columns:28px minmax(200px,1.4fr) minmax(300px,2.4fr) auto 22px;gap:16px;align-items:center;padding:16px 20px}
.gh .n{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;color:var(--muted)}
.gh .t{display:block;border:0;padding:0;font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:17px;line-height:1.2}
.gh .goal{font-size:13px;color:var(--ink2);margin-top:3px}
.pill.sm{font-size:11px;padding:1px 8px}
.gh .chev:after{content:"▾";color:var(--muted);font-size:16px}
.gcard[open] .gh .chev:after{content:"▴"}
.mt{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mt.empty{display:block}
.mtile{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#FBFCFD;min-width:0}
.mtile .v{display:flex;align-items:baseline;gap:4px}
.mtile .tn{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:20px;line-height:1;color:var(--brand-blue)}
.mtile small{font-size:12px;color:var(--ink2);font-weight:700}
.mtile.k1 .tn{color:var(--brand-orange)} .mtile.k2 .tn{color:var(--g-ink)}
.mtile .l{font-size:11.5px;color:var(--muted);margin-top:3px;line-height:1.25;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.gbody{border-top:2px solid var(--line2);padding:0 20px 14px}
.goalband{display:grid;grid-template-columns:1.1fr 2fr;margin:0 -20px;border-bottom:1px solid var(--line2)}
.goalband .gleft{padding:16px 20px;border-right:1px solid var(--line2);display:flex;flex-direction:column;gap:6px}
.goalband .big{font-family:"Bricolage Grotesque",sans-serif;font-size:22px;font-weight:800;line-height:1.2;letter-spacing:-.02em}
.goalband .sub{color:var(--muted);font-size:13px}
.qinfo>summary{cursor:pointer;font-size:13px;color:var(--accent-ink);list-style:none}
.qinfo .info{display:inline-flex;width:16px;height:16px;border-radius:50%;background:var(--accent-bg);font-size:11px;font-weight:700;align-items:center;justify-content:center}
.cprow{display:flex;margin-top:8px}
.cp{flex:1;text-align:center;font-size:12px;position:relative;color:var(--ink2)}
.cp .dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--brand-blue);background:#fff;margin:0 auto 4px;position:relative;z-index:1}
.cp:not(:last-child):after{content:"";position:absolute;top:6px;left:50%;width:100%;height:2px;background:var(--line)}
.cp b{display:block;font-family:"IBM Plex Mono",monospace;font-size:13px;color:var(--ink)}
.tabs3{display:flex;flex-wrap:wrap;align-items:center;gap:4px;border-bottom:2px solid var(--line2);margin:0 -20px;padding:0 20px}
.tabs3>input{position:absolute;opacity:0;pointer-events:none}
.tabs3>label{padding:10px 14px;font-weight:700;font-size:14px;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;display:flex;gap:8px;align-items:center}
.tabs3>label .c{background:var(--n-bg);color:var(--n-ink);border-radius:999px;font-size:12px;padding:1px 8px}
.tabs3>input:checked+label{color:var(--ink);border-color:var(--brand-blue)}
.tabs3>input:checked+label .c{background:var(--brand-blue);color:#fff}
.tabs3>input:focus-visible+label{outline:2px solid var(--brand-blue);outline-offset:2px}
.tabs3 .edit{margin-left:auto;font-size:13px;font-weight:600;color:var(--accent-ink);border:1px solid var(--line);border-radius:8px;padding:5px 12px;background:#fff;text-decoration:none}
.tabs3 .panels{flex-basis:100%;order:9;margin:0 -20px;padding:0 20px}
.tabs3 .panels>.p{display:none}
.tabs3>input:nth-of-type(1):checked~.panels>.p:nth-child(1),.tabs3>input:nth-of-type(2):checked~.panels>.p:nth-child(2),
.tabs3>input:nth-of-type(3):checked~.panels>.p:nth-child(3),.tabs3>input:nth-of-type(4):checked~.panels>.p:nth-child(4){display:block}
.gbody .grp{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-blue);margin:14px 0 4px}
.gbody .r{display:grid;grid-template-columns:110px 1fr auto;gap:14px;align-items:center;padding:8px 4px;border-bottom:1px solid var(--line2)}
.gbody .r .num{display:flex;justify-content:flex-end;align-items:baseline;gap:5px}
.gbody .r .tn{font-family:"IBM Plex Mono",monospace;font-size:19px;font-weight:600}
.gbody .r small{font-size:12px;color:var(--muted);font-weight:600}
.gbody .r .wk{font-size:14.5px}
.tag{font-size:11px;font-weight:700;padding:2px 8px;border-radius:6px;background:var(--accent-bg);color:var(--accent-ink);white-space:nowrap}
.tag.t-aimer{background:#FDF1D6;color:#8A5A00}.tag.t-crm{background:var(--g-bg);color:var(--g-ink)}.tag.t-googleads,.tag.t-google{background:#E8F0FE;color:#1A56C4}
.gbody .sh{background:#FAF7FE;border:1px dashed #CDB8EC;border-radius:12px;padding:10px 14px;margin-top:14px;font-size:13.5px;color:var(--ink2)}
.gbody .foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 0 0;font-size:13px;color:var(--muted)}
.hadd{display:inline}.hadd>summary{display:inline;cursor:pointer;color:var(--accent-ink)}
.hadd .mline{margin-top:6px;color:var(--ink2)}
.gcard.plan{background:#FAF7FE;border-color:#5B2E91}
.gcard.plan .t{color:#5B2E91}
.plan-h{grid-template-columns:28px 1fr auto 22px}
.gcard .share-ask>summary{cursor:pointer;font-size:13px;color:var(--accent-ink)}
@media (max-width:860px){.gh{grid-template-columns:24px 1fr auto 18px}.gh .mt{grid-column:1/-1;order:9}.goalband{grid-template-columns:1fr}.goalband .gleft{border-right:0;border-bottom:1px solid var(--line2)}.gbody .r{grid-template-columns:84px 1fr}.gbody .r .tag{display:none}}
.gh>div{border:0!important;box-shadow:none!important}
tr.clirow td{background:#F3F7FA;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:6px 12px}
.pill.plan-pill{background:#F1E9FB;color:#5B2E91;font-size:11px;padding:1px 8px}

/* ---------- Goal tree (agreed 25 Oct 2026, mock-up V3) ---------- */
.gtr{--gl:#DCE4EB;--mut:#5B7183;--mut2:#8AA0B2}
.gtr-top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.gtr-top h1{margin:2px 0 4px}
.eyebrow-o{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#E5562A}
.gtr-seg{display:flex;background:#fff;border:1px solid var(--gl);border-radius:10px;padding:3px}
.gtr-seg a{padding:6px 13px;border-radius:8px;font-weight:600;font-size:13px;color:var(--mut);text-decoration:none}
.gtr-seg a.on{background:#0D2B42;color:#fff}
.gtr-kpis{display:grid;grid-template-columns:1.3fr repeat(4,1fr);background:#fff;border:1px solid var(--gl);border-radius:16px;margin-bottom:14px;overflow:hidden}
.gtr-kpis .kpi{padding:14px 18px;border-right:1px solid #EDF1F5}.gtr-kpis .kpi:last-child{border-right:0}
.gtr-kpis .v{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:26px;line-height:1;letter-spacing:-.02em}
.gtr-kpis .v small{font-size:14px;font-weight:700;color:var(--mut2);margin-left:3px}
.gtr-kpis .v.gbad{color:#B8401C;background:none}.gtr-kpis .v.warnc{color:#8A5A00}.gtr-kpis .v.sm{font-size:20px;line-height:1.15}
.gtr-kpis .l{font-size:12.5px;color:var(--mut);margin-top:6px}
.gtr-kpis .kpi.lead{background:#0D2B42;color:#fff}.gtr-kpis .kpi.lead .l{color:#A9C3D6}
.gtr-attn{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#FFF8F5;border:1px solid #F6CDBE;border-radius:12px;padding:10px 14px;margin-bottom:14px;font-size:13px}
.gtr-attn b{color:#B8401C;margin-right:4px}
.gtr-attn .chip{background:#fff;border:1px solid #F2B8A3;border-radius:999px;padding:4px 12px;font-weight:600;color:#7A2E15;text-decoration:none}
.gtr-attn .chip.y{border-color:#F1D28A;color:#7A5200}
.gtr-attn .go{margin-left:auto;font-size:12px;color:var(--mut2)}
.gtr-canvas{position:relative;background:#fff;border:1px solid var(--gl);border-radius:18px;padding:22px 24px 26px;overflow-x:auto}
.gtr-links{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.gtr-heads{display:flex;gap:36px;margin-bottom:10px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mut2)}
.gtr .d0{flex:0 0 168px}.gtr .d1{flex:0 0 160px}.gtr .d2{flex:0 0 300px}.gtr .d3{flex:1 1 360px;min-width:340px}.gtr .d23{flex:1 1 auto;min-width:340px}
.gtr-canvas[data-view="person"] .d2{flex:0 0 380px}
.gtr-row{display:flex;align-items:center;gap:36px;position:relative}
.gtr-kids{display:flex;flex-direction:column;gap:14px;flex:1;min-width:0}
.gtr-branch .gtr-fold{display:none}.gtr-branch.folded .gtr-fold{display:flex}.gtr-branch.folded .gtr-full{display:none}
.gtr-full{display:flex;flex-direction:column;gap:14px}
.gtr-rootcard{background:#0D2B42;color:#fff;border-radius:16px;padding:16px}
.gtr-rootcard .n{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:17px;margin-top:10px}
.gtr-rootcard .r{font-size:12.5px;color:#A9C3D6;margin-top:2px}
.gtr-rootcard .line{border-top:1px solid rgba(255,255,255,.14);margin-top:12px;padding-top:10px;font-size:12.5px;color:#D7E4EE;line-height:1.5}
.gtr-av{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:800;color:#fff;flex:none}
.gtr-av.lg{width:42px;height:42px;background:#FDC232;color:#0D2B42;font-size:15px;font-family:"Bricolage Grotesque",sans-serif}
.gtr-av.sm{width:26px;height:26px}
.gtr-av.q{background:#fff;border:1.5px dashed #E5562A;color:#E5562A}
.gtr-client{border:1px solid var(--gl);border-radius:12px;padding:11px 13px;background:#FBFCFD;display:flex;align-items:center;gap:10px}
.gtr-client .dot{width:10px;height:10px;border-radius:3px;flex:none}
.gtr-client .nm{font-weight:700}.gtr-client .ct{font-size:12px;color:var(--mut2)}
.gtr-lever{border:1px solid var(--gl);border-radius:14px;padding:13px 15px;background:#fff;box-shadow:0 1px 0 #EDF1F5;transition:box-shadow .3s}
.gtr-lever .h{display:flex;align-items:center;gap:8px;justify-content:space-between}
.gtr-lever .nm{font-weight:700;font-size:14.5px}
.gtr-lever .pr{font-size:11px;font-weight:700;padding:2px 7px;border-radius:6px;background:#EEF4FA;color:#1B6FA3}
.gtr-lever .pr.p1{background:#FDECE6;color:#B8401C}.gtr-lever .pr.p3{background:#EEF1F4;color:#5B7183}
.gtr-lever .g{display:flex;align-items:baseline;gap:6px;margin-top:6px}
.gtr-lever .g b{font-family:"Bricolage Grotesque",sans-serif;font-size:25px;font-weight:800;letter-spacing:-.02em;line-height:1}
.gtr-lever .g span{color:var(--mut);font-size:13px}
.gtr-lever .own{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--mut);margin-top:4px}
.gtr-mini{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:9.5px;font-weight:800;color:#fff}
.gtr-bar{display:flex;height:10px;border-radius:6px;overflow:hidden;margin-top:11px;background:#EDF1F5}
.gtr-bar i{display:block;height:100%;border-right:2px solid #fff}.gtr-bar i:last-child{border-right:0}
.gtr-bar i.gap,.gtr-keys i.hatch{background:repeating-linear-gradient(135deg,#F7C9B9 0 4px,#FDECE6 4px 8px)}
.gtr-lever .foot{display:flex;justify-content:space-between;gap:8px;font-size:12px;margin-top:8px;color:var(--mut)}
.gtr-lever .ok,.gtr-foldbox .ok{color:#4E7A1F;font-weight:700}.gtr-lever .warn{color:#B8401C;font-weight:700}
.gtr-lever.hot{box-shadow:inset 4px 0 0 #E5562A,0 0 0 3px #FDECE6;border-color:#F2B8A3}
.gtr-lever.hotY{box-shadow:inset 4px 0 0 #E8B13A,0 0 0 3px #FFF4D6;border-color:#F1D28A}
.gtr-lever.pulse{box-shadow:0 0 0 6px #FDC232}
.gtr-done{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:12px;color:var(--mut)}
.gtr-done div{flex:0 0 90px;height:6px;border-radius:4px;background:#EDF1F5;overflow:hidden}.gtr-done i{display:block;height:100%;background:#4E7A1F}
.gtr-people{display:flex;flex-direction:column;gap:7px}
.gtr-person{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1px solid #EDF1F5;border-radius:11px;padding:7px 12px;background:#fff;color:inherit;text-decoration:none}
a.gtr-person:hover{border-color:#B9CCDB;background:#F9FBFD}
.gtr-person.cross{border-style:dashed;border-color:#CDB8EC;background:#FCFAFF}
.gtr-person.un{border-color:#F2B8A3;background:#FFF8F5;color:#B8401C}
.gtr-pn{font-weight:600;min-width:0}
.gtr-pn small{display:block;font-weight:500;color:var(--mut2);font-size:11.5px}
.gtr-person.un .gtr-pn small{color:#C4704F}
.gtr-tag{font-size:10.5px;font-weight:700;color:#5B2E91;background:#F1E9FB;border-radius:5px;padding:1px 6px;margin-left:6px;white-space:nowrap}
.gtr-num{font-family:"IBM Plex Mono",monospace;font-weight:600;font-size:15px;text-align:right}
.gtr-num small{display:block;font-family:"DM Sans",sans-serif;font-size:11px;color:var(--mut2);font-weight:500}
.gtr-st{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;text-align:center;white-space:nowrap}
.gtr-st.live{background:#EEF6E3;color:#4E7A1F}.gtr-st.ask{background:#FFF4D6;color:#8A5A00}.gtr-st.lock,.gtr-st.neu{background:#EEF1F4;color:#5B7183}.gtr-st.open{background:#FDECE6;color:#B8401C}
.gtr-foldbox{flex:1;border:1px dashed var(--gl);border-radius:12px;padding:11px 15px;background:#FBFCFD;display:flex;align-items:center;gap:14px}
.gtr-foldbox>div{flex:1;min-width:0}
.gtr-foldbox .nowrap{white-space:nowrap;font-size:13px}
.gtr-foldbox .fopen{white-space:nowrap;font-size:12.5px;font-weight:700;color:#1B6FA3;border:1px solid var(--gl);border-radius:8px;padding:5px 12px;background:#fff;cursor:pointer}
.gtr-expand{display:flex;justify-content:flex-end;margin-top:14px}
.gtr-keys{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;color:var(--mut);margin-top:10px}
.gtr-keys i{display:inline-block;width:14px;height:8px;border-radius:3px;margin-right:6px;vertical-align:middle}
.gtr-keys i.cross{border:1.5px dashed #CDB8EC;background:#FCFAFF}
.gtr.embed .gtr-kpis{grid-template-columns:repeat(5,1fr)}
.goalpath{font-size:12px;color:var(--muted,#5B7183);font-weight:600;letter-spacing:.01em}
@media (max-width:900px){.gtr-kpis{grid-template-columns:1fr 1fr}.gtr-kpis .kpi.lead{grid-column:1 / -1}}
.gtr-kids>.gtr-node,.gtr-fold>.gtr-node{flex:none;width:100%;min-width:340px}
.gtr-fold{width:100%}
.gtr-canvas{min-width:0}.gtr-pn{overflow:hidden;text-overflow:ellipsis}
.gtr-toggle{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:12px;position:relative}
.gtr-toggle .gtr-client{flex:1;min-width:0;padding-right:62px;transition:border-color .15s,box-shadow .15s}
.gtr-toggle:hover .gtr-client,.gtr-toggle:focus-visible .gtr-client{border-color:#9DB6C9;box-shadow:0 2px 8px rgba(13,43,66,.08)}
.gtr-toggle[aria-expanded="true"] .gtr-client{border-color:#0D2B42;background:#fff}
.gtr-chev{position:absolute;right:11px;top:50%;transform:translateY(-50%);font-size:11px;color:#5B7183;transition:transform .2s}
.gtr-toggle[aria-expanded="true"] .gtr-chev{transform:translateY(-50%) rotate(90deg)}
.gtr-flag{position:absolute;right:26px;top:50%;transform:translateY(-50%);font-size:10.5px;font-weight:700;border-radius:999px;padding:2px 7px;white-space:nowrap}
.gtr-flag.bad{background:#FDECE6;color:#B8401C}.gtr-flag.ok{background:#EEF6E3;color:#4E7A1F}
.gtr .d1{flex:0 0 220px}
.gtr-branch.folded .gtr-kids{display:none}
.gtr-branch.folded{gap:0}
.gtr-kids>.gtr-full{gap:14px}
.gtr-rootrow>.gtr-kids{gap:10px}
.gtr-expand{align-items:center;gap:12px}

/* ---------- Growth levers: client → service → lever (agreed 26 Oct 2026) ---------- */
.lv-kpis{grid-template-columns:1.3fr repeat(3,1fr)!important;margin-top:4px}
.lv-tools{margin:2px 0 12px}
.lv-tools .btn.on{background:#FFF8F5;border-color:#F2B8A3;color:#B8401C}
details.lv-client>summary{display:flex;align-items:center;gap:12px;padding:15px 20px;cursor:pointer}
.lv-cname{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:18px}
.tag-fix{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:#FDECE6;color:#B8401C;white-space:nowrap}
.tag-ok{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:#EEF6E3;color:#4E7A1F;white-space:nowrap}
.lv-settings{margin:0 20px 10px;border:1px solid var(--line2);border-radius:10px;padding:8px 12px;background:#FBFCFD}
.lv-settings>summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--muted)}
table.lv-tree tbody.svc-grp tr.svc-h td{background:#F7F9FB;padding:9px 12px;border-top:1px solid var(--line2)}
.svc-line{display:flex;align-items:center;gap:10px}
.svc-tg{width:24px;height:24px;border-radius:6px;border:1px solid #0D2B42;background:#0D2B42;color:#fff;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .15s}
.svc-grp.closed .svc-tg{background:#fff;color:#5B7183;border-color:#DCE4EB;transform:rotate(-90deg)}
.svc-dot{width:11px;height:11px;border-radius:3px;display:inline-block}
.svc-name{font-weight:800;font-size:15px;cursor:pointer}
.svc-tot{margin-left:auto;font-size:13px;color:#33495B;white-space:nowrap}
.svc-tot b{font-family:"Bricolage Grotesque",sans-serif}
.svc-grp.closed tr:not(.svc-h){display:none}
table.lv-tree td.lv-first{padding-left:40px;position:relative}
table.lv-tree td.lv-first:before{content:"";position:absolute;left:22px;top:0;bottom:0;border-left:2px solid #E3E9EE}
table.lv-tree td.lv-first:after{content:"";position:absolute;left:22px;top:24px;width:12px;border-top:2px solid #E3E9EE}
table.lv-tree tr.lastrow td.lv-first:before{bottom:calc(100% - 24px)}
table.lv-tree tbody.lv-new td.lv-first:before,table.lv-tree tbody.lv-new td.lv-first:after{display:none}
.lv-sub{display:flex;gap:6px;margin-top:5px}
table.levers input.lv-svc{width:96px;font-size:12px;min-height:30px;padding:4px 8px;color:var(--muted)}
table.levers .lv-sub input.lv-metric{font-size:12px;min-height:30px;padding:4px 8px}
table.lv-tree tr.need td{background:#FFFBF9}
table.lv-tree tr.need td.lv-first{box-shadow:inset 3px 0 0 #E5562A}
.lv-miss{font-family:"DM Sans",sans-serif;font-size:12px;font-weight:700;color:#B8401C;white-space:nowrap}
table.lv-tree tr.split-line td{padding-left:40px}
tr.svc-add td{padding:4px 12px 10px 40px!important}
.linkbtn{all:unset;cursor:pointer;color:#1B6FA3;font-weight:700;font-size:13px}
.linkbtn:hover{text-decoration:underline}
.lv-foot{padding:12px 20px;border-top:1px solid var(--line2)}
.lv-help{padding:0 20px 14px;max-width:760px}
.lv-savebar{position:sticky;bottom:14px;z-index:20;display:flex;justify-content:space-between;align-items:center;background:#0D2B42;color:#fff;border-radius:14px;padding:12px 18px;margin-top:14px;box-shadow:0 8px 24px rgba(13,43,66,.25)}
.lv-savebar[hidden]{display:none}
.lv-savebar .btn{background:#FDC232;color:#0D2B42;border-color:#FDC232;font-weight:800}
body.lv-only table.lv-tree tbody.svc-grp tr.lv-row:not(.need),body.lv-only table.lv-tree tbody.svc-grp tr.lv-row:not(.need)+tr.split-line{display:none}
table.lv-tree input.lv-name{width:150px}
table.lv-tree .lv-sub input.lv-metric{width:104px}
table.lv-tree input.lv-svc{width:86px}
table.lv-tree select.lv-owner{width:118px}
table.lv-tree input.lv{width:54px}
table.lv-tree td{padding:8px 4px}
table.lv-tree .goal-cell{width:auto}
table.lv-tree th{white-space:nowrap}
table.lv-tree input.lv-name{width:204px}
table.lv-tree .lv-sub input.lv-metric{width:112px}
table.lv-tree select.lv-owner{width:130px}
table.lv-tree .lv-miss{white-space:normal;display:inline-block;max-width:96px;line-height:1.25;text-align:right}

/* Levels that read at a glance: client (big, navy band) · service (coloured chip, tinted row) · lever (plain, indented) */
details.lv-client{border-left:6px solid var(--cc,#1B6FA3)}
details.lv-client>summary{padding:16px 20px;gap:14px}
.lv-cmark{width:34px;height:34px;border-radius:10px;background:var(--cc,#1B6FA3);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:17px;flex:none}
.lv-cname{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:22px;letter-spacing:-.01em;color:#0D2B42}
details.lv-client[open]>summary{background:#0D2B42;color:#fff}
details.lv-client[open]>summary .lv-cname{color:#fff}
details.lv-client[open]>summary .muted{color:#A9C3D6!important}
details.lv-client[open]>summary .pill.neu{background:rgba(255,255,255,.12);color:#fff}
table.lv-tree tbody.svc-grp tr.svc-h td{background:color-mix(in srgb,var(--sc) 9%,white);border-top:2px solid color-mix(in srgb,var(--sc) 30%,white);padding:10px 12px}
.svc-name{display:inline-block;background:var(--sc,#8AA0B2);color:#fff;font-weight:800;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;padding:4px 11px;border-radius:7px}
.svc-tg{background:#fff;color:var(--sc);border-color:color-mix(in srgb,var(--sc) 45%,white)}
.svc-grp.closed .svc-tg{background:#fff;color:#5B7183;border-color:#DCE4EB}
.svc-grp.closed .svc-h td{border-bottom:1px solid var(--line2)}
table.lv-tree td.lv-first:before,table.lv-tree td.lv-first:after{border-color:color-mix(in srgb,var(--sc) 35%,white)}
table.lv-tree input.lv-name{font-size:14px;font-weight:600;color:#33495B;border-color:transparent;background:transparent;padding-left:6px}
table.lv-tree input.lv-name:hover,table.lv-tree input.lv-name:focus{border-color:#DCE4EB;background:#fff}
table.lv-tree tr.lv-newrow input.lv-name{border-color:#DCE4EB;background:#fff}
table.lv-tree .lv-sub input{border-color:transparent;background:transparent;color:#8AA0B2}
table.lv-tree .lv-sub input:hover,table.lv-tree .lv-sub input:focus{border-color:#DCE4EB;background:#fff}
table.lv-tree tr.lv-row td{background:#fff}
table.lv-tree tr.need td{background:#FFFBF9}
table.lv-tree input.lv-name{font-size:15px;color:#0D2B42}
table.lv-tree select.lv-pick{display:block;width:100%;max-width:330px;margin-bottom:6px;font-weight:600;border:1.5px solid #1B6FA3;color:#0D2B42;background:#fff}
table.lv-tree tr.lv-newrow td{background:#F4F9FD!important}
table.lv-tree tr.lv-newrow:not(.lv-typing):not(.lv-picked) input.lv-name,table.lv-tree tr.lv-newrow:not(.lv-typing):not(.lv-picked) .lv-sub{display:none}
table.lv-tree tr.lv-newrow.lv-picked input.lv-name{border-color:transparent;background:transparent;font-weight:700}
table.lv-tree tr.lv-newrow.lv-typing .lv-sub input{border-color:#DCE4EB;background:#fff;color:#33495B}
table.lv-tree tr.lv-newrow td.lv-first{box-shadow:inset 3px 0 0 #1B6FA3}
.svc-name .svc-acc{text-transform:none;letter-spacing:0;font-weight:600;opacity:.92;margin-right:2px}

/* Activities picker under each lever (agreed 26 Oct 2026) */
table.lv-tree tr.acts-line td{padding:2px 12px 10px 40px;background:#fff}
.lv-acts>summary{cursor:pointer;font-size:13px;color:#33495B;list-style:none}
.lv-acts>summary::-webkit-details-marker{display:none}
.lv-acts>summary b{color:#0D2B42}
.lv-acts[open]>summary{margin-bottom:8px}
.acts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;background:#FBFCFD;border:1px solid var(--line2);border-radius:12px;padding:12px}
.acts-h{font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--sc,#1B6FA3);margin-bottom:6px}
.act{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;line-height:1.35;padding:5px 4px;border-radius:7px;white-space:normal}
.act:hover{background:#fff}
.act input{margin-top:2px;flex:none}
.act span{flex:1}
.act small{display:block;color:#8AA0B2;font-size:11px}
.act i{font-style:normal;color:#E8B13A;font-size:12px}
.acts-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px}

/* "Your next step" (agreed 26 Oct 2026) */
.ns-card{background:#0D2B42;color:#fff;border-radius:18px;padding:18px 22px;position:relative;overflow:hidden;margin-bottom:14px}
.ns-card:after{content:"";position:absolute;right:-50px;top:-50px;width:170px;height:170px;border-radius:50%;background:rgba(253,194,50,.12);pointer-events:none}
.ns-card.ns-done{background:#EEF6E3;color:#2F5214}.ns-card.ns-done:after{display:none}
.ns-k{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#FDC232}
.ns-done .ns-k{color:#4E7A1F}
.ns-t{font-family:"Bricolage Grotesque",sans-serif;font-size:21px;font-weight:800;line-height:1.25;margin:6px 0 4px;max-width:90%}
.ns-s{color:#A9C3D6;font-size:13px;max-width:90%}.ns-done .ns-s{color:#4E7A1F}
.ns-row{display:flex;gap:10px;align-items:center;margin-top:14px;position:relative;z-index:1;flex-wrap:wrap}
.ns-btn{all:unset;cursor:pointer;background:#FDC232;color:#0D2B42;font-weight:800;border-radius:10px;padding:9px 16px;font-size:14px;text-decoration:none}
.ns-btn:hover{background:#ffd457}
.ns-btn2{border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:10px;padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none}
.ns-then{margin-left:auto;color:#A9C3D6;font-size:12px}
.ns-chk{background:#fff;border:1px solid #DCE4EB;border-radius:16px;padding:14px 18px;margin-bottom:14px}
.ns-chk-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.ns-chk-h span{font-size:12px;color:#5B7183}
.ns-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ns-st{border-radius:12px;padding:10px 12px;font-size:12.5px;border:1px solid #E3E9EE;line-height:1.35}
.ns-st b{display:block}
.ns-st .n{display:inline-flex;width:20px;height:20px;border-radius:50%;align-items:center;justify-content:center;font-size:11px;font-weight:800;margin-bottom:6px}
.ns-st.done{background:#F2F8EC;border-color:#D6E8C4}.ns-st.done .n{background:#4E7A1F;color:#fff}
.ns-st.now{background:#FFF8E6;border-color:#F1D28A;box-shadow:0 0 0 2px #FDF0C6}.ns-st.now .n{background:#FDC232;color:#0D2B42}
.ns-st.later{color:#8AA0B2}.ns-st.later .n{background:#EEF1F4;color:#8AA0B2}
.ns-line{display:flex;align-items:center;gap:12px;background:#0D2B42;color:#fff;border-radius:12px;padding:9px 12px 9px 16px;margin-bottom:14px}
.ns-lk{font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#FDC232}
.ns-lt{flex:1;font-weight:600}
.ns-line .ns-btn{padding:6px 12px;font-size:13px}
.today-more{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:#FBFCFD;border:1px dashed #DCE4EB;border-radius:12px;font-size:13px;color:#5B7183}
@media (max-width:700px){.ns-steps{grid-template-columns:1fr}.ns-then{margin-left:0}}

/* Today as a working day (agreed 26 Oct 2026) */
.tn-head{align-items:flex-end}
.tn-next{text-align:right;font-size:13px;max-width:420px}
.tn-next a{color:#0D2B42;text-decoration:none}
.tn-sec{background:#fff;border:1px solid #DCE4EB;border-radius:18px;margin-top:18px;overflow:hidden;display:block}
.tn-h{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:16px 22px 12px;border-bottom:1px solid #EEF2F5}
.tn-h h2{margin:0;font-family:"Bricolage Grotesque",sans-serif;font-size:20px}
.tn-hs{font-size:12.5px;color:#5B7183}.tn-hs.r{text-align:right}
.tn-plan .tn-h{background:#0D2B42;color:#fff;border-bottom:0}
.tn-plan .tn-h h2{color:#fff}.tn-plan .tn-hs{color:#A9C3D6}
.tn-phase{display:flex;gap:10px;flex-wrap:wrap;padding:10px 22px;background:#F7F9FB;border-bottom:1px solid #EEF2F5;font-size:12.5px;color:#33495B}
.tn-phase i{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:5px}
table.tn-t{width:100%;border-collapse:collapse}
.tn-t th{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#8AA0B2;text-align:left;padding:10px 22px;background:#FAFBFC}
.tn-t td{padding:12px 22px;border-top:1px solid #F0F3F6;vertical-align:middle}
.tn-t.sm td,.tn-t.sm th{padding:9px 16px}
.tn-t .r{text-align:right}
.tn-t tr.clirow td{background:#F7F9FB;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#5B7183;padding:7px 22px}
.tn-w{font-weight:600}.tn-w small{display:block;font-weight:500;color:#8AA0B2;font-size:12px;margin-top:2px}
.tn-exp{font-family:"Bricolage Grotesque",sans-serif;font-size:22px;font-weight:800;white-space:nowrap}
.tn-exp small{font-family:"DM Sans",sans-serif;font-size:12px;color:#8AA0B2;font-weight:500;margin-left:4px}
input.tn-box{width:90px;height:38px;border:1.5px solid #B9CCDB;border-radius:10px;text-align:right;font-family:"IBM Plex Mono",monospace;font-size:15px;padding:0 10px}
input.tn-box.sm{width:72px;height:34px}
input.tn-box:focus{border-color:#1B6FA3;outline:none;box-shadow:0 0 0 3px #DCEBF6}
.tn-cu,.tn-ok,.tn-bad,.tn-neu{display:inline-block;font-size:11.5px;font-weight:700;border-radius:999px;padding:3px 10px;white-space:nowrap}
.tn-cu{background:#FFF4D6;color:#8A5A00}.tn-ok{background:#EEF6E3;color:#4E7A1F}.tn-bad{background:#FDECE6;color:#B8401C}.tn-neu{background:#EEF1F4;color:#5B7183}
.tn-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 22px;background:#FBFCFD;border-top:1px solid #EEF2F5}
.tn-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.tn-note{font-size:12.5px;color:#5B7183;padding:10px 16px 14px}
.tn-bar{height:8px;border-radius:5px;background:#EDF1F5;overflow:hidden;width:110px;display:inline-block;vertical-align:middle;margin-right:8px}
.tn-bar i{display:block;height:100%;background:#1B6FA3}
.tn-behind{color:#B8401C;font-weight:700}
.tn-days{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.tn-days i{width:24px;height:24px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:10.5px;font-weight:700;color:#fff}
.tn-days .g{background:#6C9235}.tn-days .a{background:#E8B13A}.tn-days .rd{background:#D2553A}.tn-days .lv{background:#8AA0B2}.tn-days .o{background:#DCE4EB;color:#5B7183}
@media (max-width:900px){.tn-grid{grid-template-columns:1fr}}

/* Today · Backlog calendar (agreed 26 Oct 2026, mock-up V1) */
.tn-grid.one{grid-template-columns:1fr}
.tn-backlog{margin-top:18px}
.tn-bl{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
.tn-bl-l{border-right:1px solid #EEF2F5;min-width:0}
@media (max-width:980px){.tn-bl{grid-template-columns:1fr}.tn-bl-l{border-right:0;border-bottom:1px solid #EEF2F5}}
.tc{padding:14px 18px 16px;min-width:0}
.tc-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}
.tc-h b{font-size:15px}
.tc-sum{font-size:12.5px;color:#33495B;background:#F4F7FA;border:1px solid #E3E9EE;border-radius:10px;padding:8px 12px;margin-bottom:12px}
.tc-sum.bad{background:#FDF3EF;border-color:#F6D3C6}.tc-sum.bad b{color:#B8401C}
.tc-sum.ok{background:#F2F8EC;border-color:#D6E8C4}.tc-sum.ok b{color:#4E7A1F}
.tc-grid{display:grid;gap:6px}
.tc-dow{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8AA0B2;text-align:center}
.tc-d{position:relative;min-height:48px;border-radius:10px;font-size:13px}
.tc-d>summary,.tc-d:not(details){list-style:none;height:100%;min-height:48px;box-sizing:border-box;padding:6px 8px;display:flex;flex-direction:column;justify-content:space-between;border-radius:10px}
.tc-d>summary::-webkit-details-marker{display:none}
details.tc-d>summary{cursor:pointer}
.tc-d small{font-size:10px;font-weight:700;display:inline-flex;align-items:center;gap:3px;white-space:nowrap}
.tc-d small svg{width:9px;height:9px}
.tc-blank{background:transparent}
.tc-pre{background:repeating-linear-gradient(135deg,#F4F6F8 0 6px,#EBEFF3 6px 12px);color:#A9B8C5}
.tc-fut{background:#fff;border:1px solid #E3E9EE;color:#8AA0B2}
.tc-today{background:#0D2B42;color:#fff}.tc-today small{color:#FDC232}
.tc-lv>summary,.tc-lv{background:#E3E9EE;color:#5B7183}
.tc-ok>summary{background:#E9F3DD;color:#3F6A14;box-shadow:inset 0 0 0 1px #CFE3B5}
.tc-part>summary{background:#FFF1CF;color:#8A5A00;box-shadow:inset 0 0 0 1px #F1D28A}
.tc-miss>summary{background:#FBE3DB;color:#9E3518;box-shadow:inset 0 0 0 1px #F2C2B2}
.tc-fix>summary{background:#fff;color:#B8401C;outline:2px dashed #D2553A;outline-offset:-2px}
.tc-wk>summary{background:#F4F7FA;color:#5B7183;box-shadow:inset 0 0 0 1px #E3E9EE}
details.tc-d[open]>summary{box-shadow:0 0 0 3px #FDC232}
details.tc-d>summary:hover{filter:brightness(.97)}
.tc-pop{position:absolute;z-index:20;top:calc(100% + 8px);left:-4px;width:280px;background:#0D2B42;color:#fff;border-radius:14px;padding:14px 16px;box-shadow:0 14px 30px rgba(13,43,66,.25);font-size:12.5px}
.tc-right .tc-pop{left:auto;right:-4px}
.tc-pt{font-family:"Bricolage Grotesque",sans-serif;font-size:16px;font-weight:800;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tc-pt .pill{font-family:"DM Sans",sans-serif;font-size:10.5px}
.tc-ps{color:#A9C3D6;margin:4px 0 8px;line-height:1.45}
.tc-r{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-top:1px solid rgba(255,255,255,.1)}
.tc-r span:last-child{white-space:nowrap;font-weight:700}
.tc-yes{color:#B9DB8C}.tc-no{color:#F6A88E}
.tc-go{margin-top:10px;background:#FDC232;color:#0D2B42;border-color:#FDC232;font-weight:800}
.tc-link{display:inline-block;margin-top:8px;color:#FDC232;font-weight:700}
.tc-leg{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:14px;font-size:11.5px;color:#5B7183}
.tc-leg i{display:inline-block;width:12px;height:12px;border-radius:4px;margin-right:5px;vertical-align:-2px}
.tc-leg .ok{background:#E9F3DD;box-shadow:inset 0 0 0 1px #CFE3B5}.tc-leg .part{background:#FFF1CF;box-shadow:inset 0 0 0 1px #F1D28A}
.tc-leg .miss{background:#FBE3DB;box-shadow:inset 0 0 0 1px #F2C2B2}.tc-leg .fix{outline:2px dashed #D2553A;outline-offset:-2px}
.tc-leg .lv{background:#E3E9EE}.tc-leg .pre{background:repeating-linear-gradient(135deg,#F4F6F8 0 3px,#DCE3E9 3px 6px)}
.tc-note{font-size:12px;color:#5B7183;margin-top:8px}
.tn-backlog{overflow:visible}.tn-backlog>.tn-h{border-radius:18px 18px 0 0}
