:root{--accent: #7a4f64;--accent-dark: #5a3649;--mauve: #e1cbd5;--mauve-soft: #f5edf1;--bg: #fbf8f9;--surface: #ffffff;--line: #ebe6e9;--ink: #23262b;--ink-2: #3e4650;--muted: #5f6a76;--ok: #05603a;--ok-bg: #d1fadf;--warn: #93370d;--warn-bg: #fef0c7;--bad: #b42318;--bad-bg: #fee4e2;--info: #3e4650;--info-bg: #f5edf1;--demo: #5c4300;--demo-bg: #fff1c2;--demo-line: #f0d98a;--font-display: "Quicksand", system-ui, sans-serif;--font-body: "Varela Round", system-ui, sans-serif;--radius-card: 20px;--radius-control: 12px;--radius-pill: 999px;--gap: 16px}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:14px;line-height:1.45}h1,h2,h3{font-family:var(--font-display);color:var(--ink);margin:0}h1{font-weight:600;font-size:30px}h2{font-weight:600;font-size:18px}h3{font-weight:600;font-size:15px}a{color:var(--accent)}a:hover{color:var(--accent-dark)}.muted{color:var(--muted)}.num{font-variant-numeric:tabular-nums;text-align:right}.demo-banner{position:sticky;top:0;z-index:28;background:var(--demo-bg);color:var(--demo);border-bottom:1px solid var(--demo-line);padding:8px 24px;font-size:13px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}.demo-banner .live strong{font-weight:700}.demo-banner .narrow{display:none}.live-hint{margin:0;padding:8px 14px;border-radius:var(--radius-control);background:var(--ok-bg);color:var(--ok);font-size:14px}.demo-banner .tag{font-family:var(--font-display);font-weight:700;letter-spacing:.12em;background:var(--demo);color:var(--demo-bg);padding:2px 10px;border-radius:var(--radius-pill)}.demo-watermark{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;display:grid;place-items:center;font-family:var(--font-display);font-size:18vw;font-weight:700;color:var(--demo);opacity:.035;transform:rotate(-20deg);z-index:0}.topbar{position:relative;z-index:25;background:var(--surface);border-bottom:1px solid var(--line);padding:12px 24px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}.brand{display:flex;align-items:center;gap:8px;text-decoration:none}.brand img{height:30px;width:auto;display:block}.brand .word{font-family:var(--font-display);font-weight:700;font-size:24px;color:var(--ink);letter-spacing:-.01em}.brand .hub{font-family:var(--font-display);font-weight:500;font-size:24px;color:var(--accent)}.search{flex:1 1 320px;display:flex;align-items:center;gap:8px;background:var(--mauve-soft);border-radius:var(--radius-pill);padding:10px 16px;color:var(--muted)}.search input{border:0;background:transparent;font:inherit;color:var(--ink);flex:1;outline:none;min-width:0}.user{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.avatar{width:36px;height:36px;border-radius:50%;background:var(--mauve);color:var(--ink);display:grid;place-items:center;font-family:var(--font-display);font-weight:700}.btn{font:inherit;font-family:var(--font-display);font-weight:600;border-radius:var(--radius-pill);padding:10px 18px;min-height:44px;display:inline-flex;gap:8px;align-items:center;justify-content:center;cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--ink)}.btn:hover{border-color:var(--mauve)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-dark)}.btn:disabled{cursor:not-allowed;opacity:.6}.btn.small{min-height:32px;padding:6px 12px;font-size:13px}.layout{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:flex-start}.sidenav{flex:0 0 220px;box-sizing:border-box;padding:20px 12px 12px;display:flex;flex-direction:column;gap:2px;position:sticky;top:0;min-height:calc(100vh - 100px);max-height:100vh;overflow-y:auto}.sidenav a{text-decoration:none;color:var(--ink-2);padding:10px 14px;border-radius:var(--radius-control);display:flex;align-items:center;gap:12px;min-height:24px}.sidenav a svg{flex:none}.sidenav a:hover{background:var(--mauve-soft);color:var(--ink)}.sidenav a[aria-current=page]{background:var(--mauve-soft);color:var(--ink);font-weight:600}.sidenav hr{border:0;border-top:1px solid var(--line);margin:10px 14px}.sidenav .menugroup{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:14px 14px 4px}.sidenav .gear{flex:none;width:32px;height:32px;padding:0;border-radius:10px;border:1px solid var(--line);background:var(--surface);justify-content:center;min-height:0}.accountmenu .clockitem{display:flex;flex-direction:column;gap:2px}.accountmenu .clockitem .muted,.sheet .clockitem .muted{font-size:12px}.sidenav a.health{margin-top:12px;background:var(--warn-bg);color:var(--warn);font-size:13px}.menucount{margin-left:auto;min-width:20px;height:20px;padding:0 6px;box-sizing:border-box;border-radius:var(--radius-pill);background:var(--line);color:var(--ink-2);font-size:12px;font-weight:700;font-family:var(--font-display);display:inline-flex;align-items:center;justify-content:center}.menucount.late{background:var(--bad);color:#fff}.sidenav .foot{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);display:flex;align-items:center;gap:6px}.sidenav .fold{flex:none;width:32px;height:32px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);display:grid;place-items:center;cursor:pointer}.account{position:relative;flex:1;min-width:0}.account .who{width:100%;display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:6px 8px;border-radius:var(--radius-control);font:inherit;color:var(--ink);text-align:left;cursor:pointer}.account .who:hover{background:var(--mauve-soft)}.account .who .label{flex:1;min-width:0;display:flex;flex-direction:column;font-size:14px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.account .who .muted{font-size:12px}.account .avatar{flex:none}.accountmenu{position:absolute;bottom:calc(100% + 8px);left:0;z-index:30;min-width:200px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);box-shadow:0 8px 24px #23262b1f;padding:6px;display:flex;flex-direction:column}.accountmenu a,.accountmenu button{font:inherit;text-align:left;border:0;background:transparent;color:var(--ink);text-decoration:none;padding:10px 12px;border-radius:8px;cursor:pointer;min-height:20px}.accountmenu a:hover,.accountmenu button:hover{background:var(--mauve-soft)}.accountmenu hr{border:0;border-top:1px solid var(--line);margin:4px 0;width:100%}.signout{color:var(--bad)!important}.sidenav.folded{flex-basis:64px;padding-inline:8px}.sidenav.folded a{justify-content:center;padding:10px;position:relative}.sidenav.folded .label,.sidenav.folded .who>svg{display:none}.sidenav.folded .menucount{position:absolute;top:2px;right:2px;min-width:16px;height:16px;font-size:10px;padding:0 4px}.sidenav.folded hr{margin-inline:4px}.sidenav.folded .foot{flex-direction:column}.sidenav.folded .who{justify-content:center;padding:4px}@media (min-width: 761px) and (max-width: 1100px){.sidenav{flex-basis:64px;padding-inline:8px}.sidenav a{justify-content:center;padding:10px;position:relative}.sidenav .label,.sidenav .who>svg,.sidenav .fold{display:none}.sidenav .menucount{position:absolute;top:2px;right:2px;min-width:16px;height:16px;font-size:10px;padding:0 4px}.sidenav hr{margin-inline:4px}.sidenav .who{justify-content:center;padding:4px}}.bottombar{display:none}.sheetback{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#23262b73;display:flex;align-items:flex-end}.sheet{width:100%;max-height:90dvh;overflow-y:auto;box-sizing:border-box;background:var(--surface);border-radius:24px 24px 0 0;padding:12px 16px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:2px}.sheethead{display:flex;align-items:center;gap:12px;padding:4px 8px 12px}.sheethead .grow{flex:1}.sheethead .close{width:44px;height:44px;border-radius:50%;border:0;background:var(--mauve-soft);color:var(--ink-2);display:grid;place-items:center;cursor:pointer}.sheet .row{display:flex;align-items:center;gap:14px;min-height:48px;padding:0 8px;border-radius:var(--radius-control);border:0;background:transparent;font:inherit;font-size:16px;color:var(--ink);text-decoration:none;text-align:left;cursor:pointer}.sheet .row[aria-current=page]{background:var(--mauve-soft);font-weight:600}.sheet .row.health{background:var(--warn-bg);color:var(--warn);font-size:14px;margin:6px 0}.sheet hr{border:0;border-top:1px solid var(--line);margin:6px 8px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto;margin-bottom:-8px}.tabs a{text-decoration:none;color:var(--ink-2);padding:10px 16px;min-height:44px;display:inline-flex;align-items:center;gap:8px;border-bottom:3px solid transparent;white-space:nowrap;font-family:var(--font-display);font-weight:600}.tabs a:hover{color:var(--ink);border-bottom-color:var(--mauve)}.tabs a[aria-current=page]{color:var(--accent-dark);border-bottom-color:var(--accent)}.tabs .soon{font-size:11px;color:var(--muted);font-weight:400;font-family:var(--font-body)}.tabs .menucount{margin-left:0}.reminder{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;padding:10px 16px;border-radius:var(--radius-control);background:var(--mauve-soft);color:var(--ink)}.reminder.late{background:var(--bad-bg)}.reminder>span{flex:1 1 240px}.content{flex:999 1 560px;min-width:0;padding:24px 32px 48px;display:flex;flex-direction:column;gap:24px}.grid{display:grid;gap:var(--gap)}.grid.kpis{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.grid.halves{grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr))}@media (max-width: 760px){.sidenav{display:none}.bottombar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface);border-top:1px solid var(--line);padding:4px 4px calc(4px + env(safe-area-inset-bottom))}.bottombar a,.bottombar button{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:52px;justify-content:center;border:0;background:transparent;color:var(--ink-2);text-decoration:none;font:inherit;font-family:var(--font-display);font-weight:600;font-size:12px;cursor:pointer}.bottombar [aria-current=page]{color:var(--accent-dark)}.bottombar .menucount{position:absolute;top:2px;left:calc(50% + 6px);margin:0;min-width:18px;height:18px;font-size:11px}.demo-banner{padding:6px 16px}.demo-banner{gap:6px 10px}.demo-banner .wide{display:none}.demo-banner .narrow{display:inline}.content{padding:16px 16px 88px}.topbar{padding:12px 16px}}.page-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px}.page-head p{margin:6px 0 0;color:var(--muted)}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:20px 24px}.card.soft{background:var(--mauve-soft);border-color:var(--mauve)}.card>header{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:4px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius-pill);padding:2px;background:var(--surface)}.seg button{font:inherit;font-family:var(--font-display);font-weight:600;font-size:13px;border:0;background:transparent;color:var(--ink-2);border-radius:var(--radius-pill);padding:4px 12px;min-height:32px;cursor:pointer}.seg button[aria-pressed=true]{background:var(--accent);color:#fff}.seg button:not([aria-pressed=true]):hover{color:var(--ink)}.card>p.sub{margin:0 0 16px;color:var(--muted);font-size:13px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:20px}.kpi .label{color:var(--muted);font-size:13px}.kpi .value{font-family:var(--font-display);font-weight:700;font-size:32px;margin-top:6px}.kpi .note{margin-top:6px;font-size:13px;color:var(--muted)}.kpi .note.ok{color:var(--ok)}.kpi .note.warn{color:var(--warn)}.kpi .note.bad{color:var(--bad)}.badge{display:inline-block;border-radius:var(--radius-pill);padding:3px 10px;font-size:12px;background:var(--info-bg);color:var(--info);white-space:nowrap}.badge.ok{background:var(--ok-bg);color:var(--ok)}.badge.warn{background:var(--warn-bg);color:var(--warn)}.badge.bad{background:var(--bad-bg);color:var(--bad)}.badge.soon{background:var(--mauve-soft);color:var(--accent)}.table-wrap{overflow-x:auto}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th{color:var(--muted);font-weight:400;text-align:left;padding:8px}table.data th.num,table.data th[align=right]{text-align:right}table.data td{padding:10px 8px;border-top:1px solid var(--line);vertical-align:top}table.data th:first-child,table.data td:first-child{padding-left:0}table.data .sub{color:var(--muted)}.bar{height:10px;background:var(--mauve-soft);border-radius:var(--radius-pill);overflow:hidden}.bar>span{display:block;height:100%;background:var(--accent);border-radius:var(--radius-pill)}.ghost{color:var(--muted)}.signin{min-height:calc(100vh - 40px);display:grid;place-items:center;padding:16px;position:relative;z-index:1}.signin .card{max-width:380px;width:100%;text-align:center;display:grid;gap:16px;justify-items:center;padding:32px}.error{color:var(--bad)}.field{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 12px;min-height:44px;box-sizing:border-box}.field:focus{outline:2px solid var(--mauve);outline-offset:1px;border-color:var(--accent)}.field.small{min-height:36px;padding:6px 10px;width:6.5em;text-align:right}.toolbar .field[type=search]{flex:1 1 240px}label.check{display:inline-flex;gap:6px;align-items:center;color:var(--ink-2);font-size:14px}table.data tr.pick{cursor:pointer}table.data tr.pick:hover td,table.data tr[aria-selected=true] td{background:var(--mauve-soft)}table.data tfoot td{border-top:2px solid var(--line);font-weight:600}dl.facts{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0}dl.facts dt{color:var(--muted)}dl.facts dd{margin:0}ul.issues{margin:8px 0 0;padding-left:18px;color:var(--warn)}.stack{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--gap)}.linkbtn{font:inherit;font-family:var(--font-display);font-weight:600;color:var(--accent);background:none;border:0;padding:0;cursor:pointer;text-align:left}.linkbtn:hover{text-decoration:underline}.version{font:inherit;font-family:var(--font-display);font-weight:600;font-size:13px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px 12px;cursor:pointer;min-height:0}.version:hover{color:var(--accent);border-color:var(--accent)}.changes h3{margin:16px 0 6px;font-size:14px;color:var(--muted)}.changes:first-child h3{margin-top:0}.changes ul{margin:0;padding-left:20px}.changes li{margin:4px 0}.shot{display:grid;gap:8px;justify-items:start}.shot img,img.shot{max-width:100%;max-height:420px;border:1px solid var(--line);border-radius:var(--radius-control)}.prewrap{white-space:pre-wrap;margin:0}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:var(--ink);color:var(--surface);padding:12px 20px;border-radius:999px;box-shadow:0 12px 32px #23262b4d;z-index:20;font-size:14px}.toast a{color:inherit}.grid.main-side{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start}.grid.main-side>.stack{position:sticky;top:16px}@media (max-width: 1000px){.grid.main-side{grid-template-columns:1fr}.grid.main-side>.stack{position:static}}table.data td.num{white-space:nowrap}.formgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px var(--gap);margin-bottom:var(--gap)}.formgrid .formrow.wide{grid-column:1 / -1}.formrow{display:flex;flex-direction:column;gap:4px;font-size:13px;margin-bottom:12px}.formgrid .formrow{margin-bottom:0}.formrow>span:first-child{color:var(--muted)}.formrow .field{width:100%;box-sizing:border-box}.formrow .toolbar .field.small{width:0;flex:1 1 0;min-width:0}ul.issues label.check{align-items:flex-start}dialog.modal{border:1px solid var(--line);border-radius:var(--radius-card);padding:0;background:var(--surface);color:var(--ink);width:min(640px,calc(100vw - 32px));max-height:calc(100dvh - 48px);box-shadow:0 24px 64px #23262b38;display:flex;flex-direction:column}dialog.modal:not([open]){display:none}.peek{position:fixed;top:0;left:0;width:0;height:0;overflow:hidden;visibility:hidden}.peek dialog[open]{visibility:visible}dialog.modal.wide{width:min(1080px,calc(100vw - 32px))}dialog.modal::backdrop{background:#23262b52;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}dialog.modal>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 24px 8px}dialog.modal>header h2{margin:0}dialog.modal>header .sub{margin:4px 0 0;color:var(--muted);font-size:13px}dialog.modal .modal-body{padding:8px 24px;overflow:auto}dialog.modal>footer{padding:12px 24px 20px;border-top:1px solid var(--line);justify-content:flex-end}.modal-x{font:inherit;font-size:24px;line-height:1;width:44px;height:44px;flex:none;border-radius:var(--radius-pill);border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer}.modal-x:hover{border-color:var(--line);color:var(--ink)}.modal-x:focus-visible{outline:2px solid var(--mauve)}@media (max-width: 600px){dialog.modal,dialog.modal.wide{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border-radius:0}}fieldset.formrow{border:1px solid var(--line);border-radius:var(--radius-control);padding:12px;margin:0;gap:8px}.grid.kpis.three{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}.itemlink{color:var(--accent);font-weight:600;text-decoration:none}.itemlink:hover,.itemlink:focus-visible{text-decoration:underline}.titlelink{color:inherit;text-decoration:none}.titlelink:after{content:" ›";color:var(--accent)}.titlelink:hover,.titlelink:focus-visible{color:var(--accent);text-decoration:underline}.budgetbar{position:relative;height:14px;background:var(--mauve-soft);border-radius:var(--radius-pill)}.budgetbar>span{position:absolute;left:0;top:0;height:100%;border-radius:var(--radius-pill);background:var(--accent)}.budgetbar>.exp{opacity:.35}.budgetbar.ok>span{background:var(--ok)}.budgetbar.warn>span{background:#dc6803}.budgetbar.bad>span{background:var(--bad)}.budgetbar>i{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;background:var(--ink);border-radius:1px}td.tone-ok{color:var(--ok);font-weight:600}td.tone-warn{color:var(--warn);font-weight:600}td.tone-bad{color:var(--bad);font-weight:600}table.data tr.total td{font-weight:600;border-top:2px solid var(--line, #e4e0e3)}.budgetslider{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink-2);flex-wrap:wrap}.budgetslider input[type=range]{width:160px;accent-color:var(--accent)}.table-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}.table-tools .field{flex:1 1 240px;max-width:360px;min-height:36px;padding:6px 12px}table.data th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}table.data th.sortable:hover,table.data th.sortable:focus-visible{color:var(--ink)}table.data th.sortable:after{content:"↕";margin-left:4px;opacity:.35;font-size:11px}table.data th.sortable[aria-sort=ascending]:after{content:"↑";opacity:1}table.data th.sortable[aria-sort=descending]:after{content:"↓";opacity:1}:root{--series-1: #9b4f78;--series-2: #d9772b}.projection{margin:0 0 var(--gap)}.projection .legend{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--ink-2);margin-bottom:8px}.projection .legend span{display:inline-flex;align-items:center;gap:6px}.projection .sw{display:inline-block;width:16px;height:0;border-top:2px solid var(--series-1)}.projection .sw.s2{border-top:2px dashed var(--series-2)}.projection .sw.band{height:10px;border:0;border-radius:3px;background:var(--mauve-soft)}.projection .plot{position:relative}.projection svg{display:block;width:100%;height:auto;overflow:visible}.projection .grid{stroke:var(--line);stroke-width:1}.projection .axis{stroke:var(--muted);stroke-width:1}.projection .ref{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 4}.projection .tick{fill:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.projection .label{fill:var(--ink-2);font-size:11px;font-variant-numeric:tabular-nums}.projection .band{fill:var(--mauve-soft)}.projection .line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.projection .line.s1{stroke:var(--series-1)}.projection .line.s2{stroke:var(--series-2);stroke-dasharray:6 4}.projection .sw.prop{border-top:2px dashed var(--ok)}.projection .line.prop{stroke:var(--ok);stroke-dasharray:7 4;stroke-width:2.5}.projection .landing.prop{fill:var(--ok)}.projection .label.prop{fill:var(--ok);font-weight:600}.projection .landing{fill:var(--series-1);stroke:var(--surface);stroke-width:2}.projection .dot{stroke:var(--surface);stroke-width:2}.projection .dot.s1{fill:var(--series-1)}.projection .dot.s2{fill:var(--series-2)}.projection .cross{stroke:var(--muted);stroke-width:1}.projection .tip{position:absolute;top:0;transform:translate(-50%);pointer-events:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:8px 10px;font-size:12px;box-shadow:0 4px 12px #00000014;white-space:nowrap}.projection{--pt-sea: #12b76a;--pt-po: #f79009}.projection i.pt{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:-1px}.projection i.pt.sea,.projection circle.pt.sea{background:var(--pt-sea);fill:var(--pt-sea)}.projection i.pt.po,.projection circle.pt.po{background:var(--pt-po);fill:var(--pt-po)}.projection i.pt.advice{border:2px dashed var(--ok);background:var(--surface);width:8px;height:8px}.projection circle.pt{stroke:var(--surface);stroke-width:2}.projection circle.pt.advice{fill:var(--surface);stroke:var(--ok);stroke-width:2.5;stroke-dasharray:3 2}.projection .sw.target{height:10px;border:0;border-radius:3px;background:var(--ok-bg)}.projection .sw.bars{width:8px;height:10px;border:0;border-radius:2px;background:var(--accent);opacity:.4}.projection .sw.fc{width:6px;height:8px;border:1.5px dashed var(--accent);border-radius:2px;background:transparent}.projection rect.sold.past{fill:var(--accent);fill-opacity:.4}.projection rect.sold.ahead{fill:var(--mauve-soft);stroke:var(--accent);stroke-width:1.5;stroke-dasharray:3 2}.projection .label.bar{fill:var(--accent)}.projection .projhead{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:start;justify-content:space-between;margin-bottom:8px}.projection .projhead .legend{margin-bottom:0}.projection rect.target{fill:var(--ok-bg);opacity:.55}.projection rect.orders{fill:var(--accent);opacity:.85}.projection .line.held{stroke:var(--ink-2);stroke-width:2}.projection .sw.held{border-top:2px solid var(--ink-2)}.projection line.today{stroke:var(--ink-2);stroke-width:1;stroke-dasharray:3 3}.projection .sw.orders{width:8px;height:10px;border:0;border-radius:2px;background:var(--accent)}.projection .ptgroup{cursor:pointer;outline:none}.projection .ptgroup .hit{fill:transparent}.projection .ptgroup text{pointer-events:none}.projection .ptgroup:hover .hit,.projection .ptgroup:focus-visible .hit,.projection .ptgroup.on .hit{fill:var(--mauve-soft);stroke:var(--accent);stroke-width:1}.projection .pop{position:absolute;transform:translate(-50%,16px);z-index:2;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 12px;font-size:13px;box-shadow:0 6px 18px #0000001f;width:min(340px,90vw);display:grid;gap:8px}.projection .pophead{display:flex;justify-content:space-between;align-items:start;gap:8px}.projection .pophead .modal-x{width:32px;height:32px;font-size:18px;flex:none}.projection .poprow{display:grid;gap:4px;justify-items:start;border-top:1px solid var(--line);padding-top:8px}@media (max-width: 760px){.projection .pop{left:0!important;right:0;width:auto;transform:translateY(16px)}}.projection .tip .muted{color:var(--muted)}table.data th.col-product{min-width:260px}.pagebar{display:flex;align-items:flex-end;gap:12px}.pagebar>.tabs{flex:1;min-width:0}.pagebar>.howto{margin-left:auto;margin-bottom:4px}.guide{display:grid;grid-template-columns:240px 1fr;gap:var(--gap);align-items:start}.guide-nav{position:sticky;top:16px;display:grid;gap:2px;padding:16px 12px}.guide-nav a{display:flex;justify-content:space-between;gap:8px;padding:8px 12px;border-radius:var(--radius-control);color:var(--ink-2);text-decoration:none}.guide-nav a:hover{background:var(--mauve-soft);color:var(--ink)}.guide-nav a[aria-current=page]{background:var(--mauve-soft);color:var(--ink);font-weight:600}.guide-nav .soon{font-size:11px;color:var(--muted);font-weight:400}.guide-group{margin:12px 12px 4px;font-size:12px;color:var(--muted);font-family:var(--font-display);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.guide-nav>div:first-child .guide-group{margin-top:0}.guide-topic{max-width:760px}.guide-body{line-height:1.6}.guide-body h3{margin:20px 0 6px;font-family:var(--font-display)}.guide-body h4{margin:16px 0 4px;font-family:var(--font-display)}.guide-body ol,.guide-body ul{padding-left:22px;margin:6px 0}.guide-body li{margin:4px 0}.guide-tip{background:var(--mauve-soft);border-radius:var(--radius-control);padding:10px 14px}.guide-pager{display:flex;justify-content:space-between;gap:12px;margin-top:24px;padding-top:12px;border-top:1px solid var(--line)}a.btn{text-decoration:none}.guide-pick{display:none}@media (max-width: 760px){.guide{grid-template-columns:1fr}.guide-nav{display:none}.guide-pick{display:grid;gap:4px;margin-bottom:12px;font-size:13px;color:var(--muted)}}.callout{background:var(--mauve-soft);border-radius:var(--radius-control);padding:12px 16px;margin:0 0 12px}.callout .big{font-family:var(--font-display);font-weight:700;font-size:20px}.callout.warn{background:var(--warn-bg);color:var(--warn)}fieldset.formsection{border:0;border-top:1px solid var(--line);margin:0 0 8px;padding:12px 0 0;min-width:0}fieldset.formsection>legend{font-family:var(--font-display);font-weight:700;padding:0 8px 0 0}fieldset.formsection>p.muted{margin:0 0 12px;font-size:13px}.chip{font:inherit;font-family:var(--font-display);font-weight:600;font-size:13px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);border-radius:var(--radius-pill);padding:4px 12px;min-height:32px;cursor:pointer}.chip:hover{border-color:var(--mauve)}.chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.quicklog{display:grid;gap:8px;padding:0 0 14px;margin:0 0 12px;border-bottom:1px solid var(--line)}.quickrow{display:flex;gap:8px;align-items:center}.quickrow input{flex:1 1 auto;min-width:0}.quickrow select{flex:0 0 auto;width:auto}.contactacts{display:inline-flex;gap:4px;vertical-align:middle}.iconbtn{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-pill);background:var(--mauve-soft);color:var(--accent);text-decoration:none}.iconbtn:hover{background:var(--mauve);color:var(--accent-dark)}.maincontact,.withacts{display:inline-flex;align-items:center;gap:8px}.contactlist{list-style:none;margin:0;padding:0;display:grid;gap:10px}.contactlist li{display:flex;justify-content:space-between;align-items:center;gap:8px}.contactlist .sub{display:block;color:var(--muted);font-size:13px}.sidecol{display:grid;gap:var(--gap);align-content:start;min-width:0}svg.spark{display:block;width:100%;max-width:260px}svg.spark rect{fill:var(--mauve)}svg.spark rect.now{fill:var(--accent)}td svg.spark{max-width:120px;margin-top:4px;margin-left:auto}details.about>summary,details.fold>summary{cursor:pointer;font-family:var(--font-display);font-weight:700;padding:12px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);list-style-position:inside}details.about[open]>summary,details.fold[open]>summary{margin-bottom:var(--gap)}details.fold>summary .muted{font-family:var(--font-body);font-weight:400}.aboutbody{display:grid;gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr))}.field.inline{min-height:32px;padding:4px 8px;width:auto;font-size:13px}.field.inline.stage-ok{color:var(--ok)}.field.inline.stage-bad{color:var(--bad)}.field.inline.stage-soon{color:var(--accent)}.barlist{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}.barlist li{display:grid;grid-template-columns:minmax(0,9em) minmax(0,1fr) 3.5em;gap:10px;align-items:center;font-size:13px}.barlist li>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.barlist .budgetbar{height:10px}.board{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:12px;align-items:start;overflow-x:auto;padding-bottom:4px}.boardcol{background:var(--mauve-soft);border-radius:18px;padding:12px;display:grid;gap:10px;min-height:120px;border:2px solid transparent}.boardcol.over{border-color:var(--accent)}.boardcol>header{display:grid;gap:2px}.boardcol h3{margin:0;font-family:var(--font-display);font-size:15px}.boardcol>header .muted{font-size:12px}.deal{font:inherit;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:10px 12px;display:grid;gap:4px;font-size:13px;color:var(--ink);box-shadow:0 1px 2px #23262b0f;cursor:pointer}.deal[draggable=true]{cursor:grab}.deal:hover{border-color:var(--accent)}.deal .flags{display:flex;flex-wrap:wrap;gap:4px}.flags:empty{display:none}.boarddrops{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.boarddrop{border:2px dashed var(--mauve);border-radius:14px;padding:14px;text-align:center;font-size:13px;color:var(--muted)}.boarddrop.won.over{border-color:var(--ok);background:var(--ok-bg);color:var(--ok)}.boarddrop.lost.over{border-color:var(--bad);background:var(--bad-bg);color:var(--bad)}.monthbars{display:flex;align-items:flex-end;gap:14px;height:110px;overflow-x:auto}.monthbars>div{flex:0 0 52px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:3px;font-size:11px}.monthbars .b{width:40px;background:var(--accent);border-radius:4px 4px 0 0;max-height:70%}.monthbars .m{color:var(--muted)}.queue{list-style:none;margin:0 0 8px;padding:0}.queue li{display:grid;grid-template-columns:7.5em minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.queue li:last-child{border-bottom:0}.qwhat .sub{display:block;color:var(--muted);font-size:13px}.qacts{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.qtag{display:inline-block;justify-self:start;border-radius:var(--radius-pill);padding:3px 10px;font-size:12px;white-space:nowrap;background:var(--info-bg);color:var(--info)}.qtag.overdue{background:var(--bad-bg);color:var(--bad)}.qtag.today{background:var(--warn-bg);color:var(--warn)}.qtag.due{background:var(--ok-bg);color:var(--ok)}.search{position:relative}.searchhits{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;list-style:none;margin:0;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);box-shadow:0 8px 24px #23262b24;max-height:60vh;overflow-y:auto}.searchhits li{display:flex;gap:10px;align-items:baseline;padding:8px 10px;border-radius:8px;color:var(--ink)}.searchhits li.on{background:var(--mauve-soft)}.searchhits .kind{flex:0 0 4.5em;font-size:12px;color:var(--muted)}.searchhits .muted{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 760px){.queue li{grid-template-columns:1fr;gap:6px}.qacts{justify-content:flex-start}.quickrow{flex-wrap:wrap}.quickrow input{flex:1 1 100%}.quickrow select{flex:1 1 auto}.quicklog{position:sticky;top:0;z-index:2;background:var(--surface);padding-top:4px}.board{grid-template-columns:repeat(4,80vw);scroll-snap-type:x mandatory}.boardcol{scroll-snap-align:start}.iconbtn{width:40px;height:40px}.barlist li{grid-template-columns:minmax(0,7em) minmax(0,1fr) 3em}.search{flex-basis:100%;order:3}}input.field.qty{width:84px;text-align:right}table.data .sub .warn{color:var(--warn)}.worklist{position:sticky;bottom:12px;z-index:2;margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding:12px 16px;background:var(--ink);color:#fff;border-radius:18px;font-size:13px}.worklist .btn{margin-left:auto;background:#fff;color:var(--ink);border:0}.worklist .warnline{color:#fec84b}:root{--h-out: #b42318;--h-low: #f79009;--h-healthy: #12b76a;--h-over: #6b8fe8;--h-idle: #c3c8d0}.healthbar{display:grid;gap:6px}.healthsegs{display:flex;gap:3px;height:36px;border-radius:var(--radius-control);overflow:hidden}.healthsegs button{flex:1 1 0;min-width:0;border:0;padding:0 10px;font:inherit;font-family:var(--font-display);font-weight:700;font-size:12px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.healthsegs button:disabled{cursor:default}.healthsegs button[aria-pressed=true]{outline:3px solid var(--ink);outline-offset:-3px}.healthsegs .seg-out{background:var(--h-out);color:#fff}.healthsegs .seg-low{background:var(--h-low);color:#3d1d00}.healthsegs .seg-healthy{background:var(--h-healthy);color:#053321}.healthsegs .seg-over{background:var(--h-over);color:#0b1a5c}.healthsegs .seg-idle{background:var(--h-idle);color:var(--ink)}.cover{display:inline-flex;flex-direction:column;gap:2px}.cover .track{fill:var(--mauve-soft)}.cover .fill.h-out,.cover .fill.h-low{fill:var(--h-out)}.cover .fill.h-healthy{fill:var(--h-healthy)}.cover .fill.h-over{fill:var(--h-over)}.cover .fill.h-idle{fill:var(--h-idle)}.cover .tick{stroke:var(--ink);stroke-width:1.5}.locchip{display:inline-block;font-size:11px;background:var(--mauve-soft);color:var(--accent-dark);border-radius:8px;padding:2px 7px;margin:0 4px 2px 0;white-space:nowrap}.warntext{color:var(--warn)}svg.unitspark{display:block}svg.unitspark path{fill:none;stroke:var(--series-1);stroke-width:1.6;stroke-linejoin:round}svg.unitspark path.ahead{stroke-dasharray:3 3}.history{margin:0 0 var(--gap)}.history .legend{display:flex;gap:16px;font-size:13px;color:var(--ink-2);margin-bottom:8px}.history .legend span{display:inline-flex;align-items:center;gap:6px}.history .sw{display:inline-block;width:12px;height:12px;border-radius:3px}.history .sw.sold{background:var(--mauve)}.history .sw.ahead{border:2px dashed var(--series-1)}.history svg{display:block;width:100%;height:auto}.history .grid{stroke:var(--line)}.history .axis{stroke:var(--muted)}.history .tick{fill:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.history rect.sold{fill:var(--mauve)}.history rect.sold:hover{fill:var(--accent)}.history rect.ahead{fill:var(--surface);stroke:var(--series-1);stroke-width:1.5;stroke-dasharray:3 2}.history rect.ahead.nudged{fill:var(--mauve-soft)}.cardtabs{flex-wrap:wrap;margin:var(--gap) 0}.cardhead{display:flex;gap:12px;align-items:center;margin-bottom:8px}.pphoto{flex:none;width:64px;height:64px;border-radius:var(--radius-control);border:1px solid var(--line);background:var(--mauve-soft);padding:0;overflow:hidden;display:grid;place-items:center;font:inherit;font-size:11px;color:var(--accent);cursor:pointer}.pphoto img{width:100%;height:100%;object-fit:cover;display:block}div.pphoto{cursor:default;color:var(--muted)}.pphoto-big{display:block;max-width:100%;max-height:70vh;margin:0 auto;border-radius:var(--radius-control)}@media (min-width: 761px){.phoneonly{display:none!important}}.stockcards{list-style:none;margin:0;padding:0;display:grid;gap:8px}.stockcards button{width:100%;text-align:left;font:inherit;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 12px;display:grid;gap:2px;cursor:pointer}.stockcards .top{display:flex;justify-content:space-between;gap:8px;align-items:baseline}@media (max-width: 760px){.wideonly{display:none!important}.phoneonly{display:grid}}.grid.kpis.six{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.grid.thirds{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));align-items:start}.kpi.tap{display:block;color:inherit;text-decoration:none;transition:border-color .15s}.kpi.tap:hover{border-color:var(--mauve)}.kpi.tap:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.kpi .trend{margin-top:4px;font-size:13px;color:var(--muted)}.up{color:var(--ok)}.down{color:var(--bad)}svg.tilespark{display:block;margin-top:6px}svg.tilespark polyline{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}svg.tilespark circle{fill:var(--accent);stroke:var(--surface);stroke-width:2}.minihealth{display:flex;gap:2px;height:8px;margin-top:10px;border-radius:var(--radius-pill);overflow:hidden}.minihealth>span{min-width:3px}.minihealth .seg-out{background:var(--h-out)}.minihealth .seg-low{background:var(--h-low)}.minihealth .seg-healthy{background:var(--h-healthy)}.minihealth .seg-over{background:var(--h-over)}.minihealth .seg-idle{background:var(--h-idle)}.needsyou{display:grid;gap:10px;padding:16px 20px}.needsyou h2{margin:0;font-size:15px}.cues{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.cue{display:flex;flex-direction:column;gap:2px;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);text-decoration:none;font-size:13px}.cue b{font-family:var(--font-display);font-size:22px}.cue:hover{border-color:var(--mauve)}.cue.warn{background:var(--warn-bg);border-color:#f5d37a;color:var(--warn)}.cue.bad{background:var(--bad-bg);border-color:#f6b8b2;color:var(--bad)}.cuesmore{display:none}.headlines{margin:0;padding-left:18px;display:grid;gap:2px;font-size:14px;color:var(--ink-2)}details.how>summary{cursor:pointer;color:var(--accent);font-family:var(--font-display);font-weight:600;font-size:13px;margin-bottom:8px}details.how>p.sub{margin:0 0 12px;color:var(--muted);font-size:13px}.barlist li.total{font-weight:700}.barlist li.total .sub{font-weight:400;color:var(--muted)}.onlynarrow{display:none}.agebar{display:flex;gap:2px;height:28px;border-radius:var(--radius-control);overflow:hidden;margin:4px 0 12px;font-family:var(--font-display);font-weight:700;font-size:11px}.agebar>span{display:flex;align-items:center;padding:0 8px;white-space:nowrap;overflow:hidden;min-width:4px}.agebar .age-current{background:var(--h-healthy);color:#053321}.agebar .age-d1_30{background:#fdb022;color:#3d1d00}.agebar .age-d31_60{background:#f97066;color:#3b0a05}.agebar .age-d61_90{background:#d92d20;color:#fff}.agebar .age-d90{background:#7a271a;color:#fff}.weeklist{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:13px}.weeklist li{display:grid;grid-template-columns:4.5em minmax(0,1fr) auto;gap:8px;align-items:baseline}.weeklist .when{color:var(--muted)}.salesmonths svg{display:block}.salesmonths .axis line{stroke:var(--line)}.salesmonths text{font-size:11px;fill:var(--muted)}.salesmonths .hit{fill:transparent}.salesmonths .ly{fill:var(--mauve);opacity:.55}.salesmonths .act{fill:var(--accent)}.salesmonths .exp{fill:var(--accent);opacity:.35}.salesmonths .budget{fill:none;stroke:var(--ink);stroke-width:2;stroke-dasharray:5 4}.salesmonths .cursor{stroke:var(--ink-2);stroke-width:1}.chartfoot{min-height:20px;font-size:13px;color:var(--ink-2);margin-top:4px}.chartfoot .legend{display:flex;flex-wrap:wrap;gap:4px 14px;color:var(--muted)}.sw{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px}.sw.act{background:var(--accent)}.sw.exp{background:var(--accent);opacity:.35}.sw.ly{background:var(--mauve)}.sw.budget{height:0;width:14px;border-top:2px dashed var(--ink);border-radius:0;vertical-align:3px}.showing{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin:0 0 12px;padding:8px 14px;border-radius:var(--radius-control);background:var(--mauve-soft);font-size:13px}@media (max-width: 760px){.grid.kpis.six{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.grid.kpis.six .kpi{padding:12px 14px;border-radius:16px}.grid.kpis.six .kpi .value{font-size:22px;margin-top:2px}.grid.kpis.six .kpi .note,.grid.kpis.six .kpi .trend{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.grid.kpis.six svg.tilespark{width:100%}.cues{grid-template-columns:1fr;gap:6px}.cue{flex-direction:row-reverse;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:12px}.cue b{font-size:17px}.cues:not(.all) .cue:nth-of-type(n+5){display:none}.cuesmore{display:block;padding:4px 2px;font-size:13px}.onlywide{display:none}.onlynarrow{display:grid}.barlist li{grid-template-columns:minmax(0,7em) minmax(0,1fr) 3.5em}.salesmonths text{font-size:17px}}.badge.demo{background:#fff1c2;color:#5c4300;font-size:11px;font-family:var(--font-display);font-weight:700;vertical-align:middle}.listchips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 var(--gap)}.listchip{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:96px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.listchip:hover{border-color:var(--mauve)}.listchip .lab{font-size:12px;color:var(--muted)}.listchip b{font-family:var(--font-display);font-size:18px;line-height:1.2}.listchip .note{font-size:12px;color:var(--muted)}.listchip.on{border-color:var(--accent);background:var(--mauve-soft);box-shadow:inset 0 0 0 1px var(--accent)}.listchip.warn b{color:var(--warn)}.listchip.bad b{color:var(--bad)}.listchip:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.listchips.slim{gap:6px}.listchips.slim .listchip{flex-direction:row;align-items:center;gap:6px;min-width:0;min-height:40px;padding:6px 14px;border-radius:var(--radius-pill)}.listchips.slim .listchip .lab{font-size:13px;color:var(--ink-2)}.listchips.slim .listchip b{font-size:14px}.listchips.slim .listchip .note{display:none}.steps{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);font-family:var(--font-display);font-weight:600;font-size:12px;color:var(--muted)}.steps li{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.steps li:before{content:"";position:absolute;top:10px;left:-50%;width:100%;height:2px;background:var(--line)}.steps li:first-child:before{display:none}.steps .dot{position:relative;z-index:1;width:22px;height:22px;box-sizing:border-box;border-radius:50%;border:2px solid var(--line);background:var(--surface)}.steps li.done{color:var(--ok)}.steps li.done .dot{background:var(--ok);border-color:var(--ok)}.steps li.done:before,.steps li.now:before{background:var(--ok)}.steps li.now{color:var(--ink)}.steps li.now .dot{border-color:var(--accent);box-shadow:0 0 0 4px var(--mauve-soft)}.nextstep{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;padding:12px 14px;margin:0 0 12px;border-radius:var(--radius-control);background:var(--mauve-soft)}.nextstep .btn.primary{font-size:15px;padding:10px 20px}.nextstep .more{margin-left:auto;display:flex;flex-wrap:wrap;gap:8px}.badges{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.bulkbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 10px;padding:8px 12px;border-radius:var(--radius-control);background:var(--mauve-soft);font-size:13px}.bulkbar .linkbtn{margin-left:auto}td.tick,th.tick{width:28px}td.tick input,th.tick input{width:18px;height:18px}.history{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:13px}.history li{display:grid;grid-template-columns:9.5em minmax(0,1fr);gap:10px}.history .when{color:var(--muted)}.daygroup{margin:14px 0 6px;font-family:var(--font-display);font-weight:700;font-size:14px}.daygroup.late{color:var(--bad)}.listcards{list-style:none;margin:0;padding:0;display:grid;gap:8px}.listcards>li{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);padding:10px 12px;display:grid;gap:6px}.listcards .top{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.listcards .top b{font-family:var(--font-display);white-space:nowrap}.listcards .meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12px;color:var(--muted)}.listcards .acts{display:flex;gap:8px}.listcards .acts .btn{flex:1;min-height:44px}.listcards .open{font:inherit;font-family:var(--font-display);font-weight:700;color:var(--accent);background:none;border:0;padding:0;text-align:left;cursor:pointer}@media (max-width: 760px){.listchips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.listchip{flex:0 0 auto;min-width:84px;padding:6px 12px}.listchip b{font-size:16px}.history li{grid-template-columns:1fr;gap:0}.nextstep .more{margin-left:0}}.agebar>button{display:flex;align-items:center;padding:0 8px;white-space:nowrap;overflow:hidden;min-width:4px;border:0;font:inherit;cursor:pointer}.agebar>button.dim{opacity:.35}.agebar>button.on{box-shadow:inset 0 0 0 2px var(--ink)}.agebar.pickable{height:36px}.custgroup td{background:var(--surface-2, var(--surface));font-weight:600}.custgroup .acts{display:inline-flex;gap:6px;margin-left:8px}.customise{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.customise li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface)}.customise .btn.small{min-width:44px;min-height:36px}.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}.chips .field{width:auto;min-width:140px}.setgroups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}.setgroups section{display:flex;flex-direction:column;gap:8px}.setgroups h2{font-family:var(--font-display);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0}.settile{display:flex;align-items:center;gap:12px;width:100%;font:inherit;text-align:left;color:var(--ink);text-decoration:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:12px 14px;min-height:56px;cursor:pointer}.settile:hover{border-color:var(--mauve)}.settile.alert{background:var(--warn-bg);border-color:var(--warn-bg)}.settile .grow{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.settile .grow strong{font-family:var(--font-display)}.settile .chev{color:var(--muted);font-size:20px}.rolecards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin:0 0 16px}.rolelevels{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;margin:0 0 8px}.rolelevels>div{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:3px 0;border-bottom:1px solid var(--line)}.rolelevels dt{color:var(--ink-2);font-size:13px}.rolelevels dd{margin:0}.rolepick{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}.rolepick button{font:inherit;text-align:left;display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 12px;min-height:44px;cursor:pointer;color:var(--ink)}.rolepick button span{font-size:12px;color:var(--muted)}.rolepick button:hover{border-color:var(--mauve)}.rolepick button[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--mauve-soft)}.accesssum{display:grid;gap:4px;margin:0}.custombar{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.conncards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.conn{display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);border-radius:var(--radius-control);padding:12px 14px;background:var(--surface)}.conn.alert{border-color:var(--warn);background:var(--warn-bg)}.conn .sub{margin:0}.connhead{display:flex;justify-content:space-between;align-items:center;gap:8px}.connhead strong{font-family:var(--font-display)}.connfoot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:auto}.bringrow{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.bringrow .grow{flex:1 1 auto;min-width:0}.accessbanner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}.invpreview{border:1px solid var(--line);border-radius:var(--radius-control);background:#fff;color:#222;padding:14px 16px;font-size:12px;margin:0 0 16px}.invhead{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.invhead img{max-height:48px;max-width:160px}.invname{font-family:var(--font-display);font-size:18px}.invaddr{text-align:right}.invbody{margin:12px 0;padding:14px 0;border-top:1px dashed #ccc;border-bottom:1px dashed #ccc;color:#888;text-align:center;letter-spacing:.05em}.invfoot{display:grid;gap:6px}.invpreview .gap{color:var(--warn);background:var(--warn-bg);border-radius:4px;padding:0 4px}@media (max-width: 760px){.setgroups,.rolelevels{grid-template-columns:1fr}.invhead{flex-direction:column}.invaddr{text-align:left}.accessbanner{flex-direction:column;align-items:flex-start}}.acctkpis .kpi .value{font-size:26px}.acctkpis .kpi .budgetbar{height:8px;margin-top:8px}.acctcols{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:var(--gap);align-items:start}.acctcols>.col{display:grid;gap:var(--gap);align-content:start;min-width:0}.monthchart{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;height:190px;align-items:stretch}.monthchart>div{display:grid;grid-template-rows:1fr auto;gap:4px;min-width:0}.monthchart .bars{position:relative;border-bottom:1px solid var(--line)}.monthchart .bars>span{position:absolute;left:10%;right:10%;bottom:0;border-radius:4px 4px 0 0}.monthchart .bars .exp{background:var(--mauve)}.monthchart .bars .sold{background:var(--accent)}.monthchart .bars .sold.ok{background:var(--ok)}.monthchart .bars .sold.warn{background:#dc6803}.monthchart .bars .sold.bad{background:var(--bad)}.monthchart .bars>i{position:absolute;left:0;right:0;height:2px;margin-bottom:-1px;background:var(--ink);border-radius:1px}.monthchart .m{font-size:11px;color:var(--muted);text-align:center}.monthchart .now .m{color:var(--ink);font-weight:700}.chartkey{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:12px;margin:10px 0 0}.chartkey .key{display:inline-block;width:12px;height:12px;border-radius:3px}.chartkey .key.sold{background:var(--accent)}.chartkey .key.exp{background:var(--mauve)}.chartkey .key.line{height:2px;background:var(--ink)}.catbar{display:block;height:10px;background:var(--mauve-soft);border-radius:var(--radius-pill);overflow:hidden}.catbar>span{display:block;height:100%;background:var(--accent);border-radius:var(--radius-pill)}.opplist{list-style:none;margin:0;padding:0;display:grid;gap:10px}.opplist .sub{display:block;color:var(--muted);font-size:13px}.hubroll{margin:12px 0 8px;font-size:13px}.moremenu{position:relative}.moremenu>summary{list-style:none;cursor:pointer}.moremenu>summary::-webkit-details-marker{display:none}.moremenu>summary:after{content:" ▾"}.moremenu .menu{position:absolute;right:0;top:calc(100% + 4px);z-index:20;display:grid;min-width:220px;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);box-shadow:0 12px 32px #23262b24}.moremenu .menu button{font:inherit;text-align:left;border:0;background:none;padding:10px 12px;border-radius:8px;cursor:pointer;color:var(--ink);min-height:44px}.moremenu .menu button:hover{background:var(--mauve-soft)}details.phonefold>.card{margin-top:8px}@media (max-width: 1000px){.acctcols{display:flex;flex-direction:column}.acctcols>.col{display:contents}.a-chart{order:1}.a-follow{order:2}.a-activity{order:3}.a-buy{order:4}.a-orders{order:5}.a-invoices{order:6}.a-contacts{order:7}}@media (max-width: 760px){.acctkpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.acctkpis .kpi{padding:12px}.acctkpis .kpi .value{font-size:20px}.acctkpis .kpi .note{font-size:12px}.monthchart{gap:3px;height:130px}.monthchart .m{font-size:9px}.page-head .moremenu .menu{left:auto;right:0}.a-buy{gap:8px}}.linkish{background:none;border:0;padding:0;font:inherit;color:var(--accent);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.previewdot{display:inline-block;width:8px;height:8px;margin-left:8px;border-radius:50%;background:#dcb85a;vertical-align:1px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.previewtag{margin-left:8px;padding:1px 8px;border-radius:var(--radius-pill);background:var(--demo-bg);color:var(--demo);font-size:11px;font-weight:700;font-family:var(--font-display);vertical-align:1px}.callout.preview{background:var(--demo-bg);color:var(--ink);display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}.callout.preview b{color:var(--demo);font-family:var(--font-display)}.facts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 16px;margin:0;font-size:14px}.facts dt{color:var(--muted)}.facts dd{margin:0}.marks td.mark{text-align:center;font-family:var(--font-display);font-weight:700}.mark.ok{color:var(--ok)}.mark.warn{color:var(--warn)}.mark.bad{color:var(--bad)}.mark.info{color:var(--info)}.mark.none{color:var(--muted);font-weight:400}.checklist{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:14px}.checklist li{display:grid;grid-template-columns:1.5em minmax(0,1fr);gap:8px}.timeline{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:14px}.timeline .when{display:block;color:var(--muted);font-size:12px}.board.wide{grid-template-columns:repeat(6,minmax(200px,1fr))}.viewasbar{position:sticky;top:0;z-index:29;background:var(--warn-bg);color:var(--warn);border-bottom:1px solid var(--warn);padding:8px 24px;font-size:14px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between}ul.viewaslist{list-style:none;margin:12px 0 0;padding:0;max-height:50vh;overflow-y:auto}ul.viewaslist li{display:flex;align-items:center;gap:12px;padding:8px 0;border-top:1px solid var(--line)}ul.viewaslist li .grow{flex:1;min-width:0;overflow-wrap:anywhere}@media (max-width: 760px){.viewasbar{padding:6px 16px;font-size:13px}}
