:root{color-scheme:light;--bg:#f5f7fa;--panel:#fff;--ink:#202733;--muted:#677487;--line:#e3e8ef;--accent:#2263e5;--soft:#edf3ff;--green:#237957;--warn:#995113;--warn-bg:#fff6e9;--chart:#cbd4e0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);background:var(--bg);font-size:13px}
body[data-theme=dark]{color-scheme:dark;--bg:#121418;--panel:#1b1f25;--ink:#eff2f7;--muted:#a1adbd;--line:#303640;--accent:#82acff;--soft:#202e46;--green:#73cfa6;--warn:#f5bd76;--warn-bg:#33291e;--chart:#475469}
button,input,select{font:inherit;color:inherit}
button,.button{cursor:pointer;border:1px solid var(--line);border-radius:7px;background:var(--panel);padding:8px 11px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600;color:var(--ink)}
button:hover,.button:hover{border-color:var(--accent)}button:disabled{opacity:.45;cursor:default}.primary{background:#2263e5;color:white;border-color:#2263e5}
.workspace{max-width:1840px;min-height:100vh;margin:auto;display:grid;grid-template-columns:190px minmax(0,1fr)}
aside{padding:25px 14px;border-right:1px solid var(--line);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}
.brand{display:flex;align-items:center;gap:8px;color:var(--ink);text-decoration:none;font-size:20px;font-weight:750;letter-spacing:-.6px}.brand span{font-size:9px;color:var(--muted);font-weight:600;border:1px solid var(--line);padding:3px 4px;border-radius:4px;letter-spacing:0}
nav{display:grid;gap:5px;margin-top:35px}nav button{justify-content:flex-start;border:0;background:transparent;text-align:left;padding:11px 10px;font-size:12px}nav button[aria-current=page]{color:var(--accent);background:var(--soft)}
.aside-note{margin-top:auto;font-size:11px;color:var(--muted);line-height:1.6}.aside-note p{margin:5px 0 12px}.aside-note button{font-size:11px;padding:6px 9px;background:transparent}.private-dot{display:inline-block;width:6px;height:6px;border-radius:100%;background:var(--green);margin-right:6px}
main{min-width:0;padding:26px 26px 20px}
header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.eyebrow{font-size:9px;font-weight:750;letter-spacing:1.6px;color:var(--muted);margin:0 0 7px}h1{font-size:27px;letter-spacing:-.8px;margin:0}h2{font-size:13px;letter-spacing:-.1px;margin:0}h3{font-size:11px;margin:15px 0 5px;color:var(--muted)}
.muted,small{color:var(--muted);line-height:1.55}#freshness{margin:5px 0 0;font-size:11px}.toolbar{display:flex;align-items:end;gap:7px}.toolbar button{font-size:11px;height:34px}
label{display:grid;gap:5px;font-size:10px;font-weight:600;color:var(--muted)}select,input{border:1px solid var(--line);border-radius:6px;padding:8px;background:var(--panel);font-size:12px;min-width:0}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:16px;min-width:0;margin-bottom:14px}
.panel-head{display:flex;align-items:center;gap:7px;margin-bottom:12px;min-height:20px}.panel-head h2{margin-right:auto}.scope{display:block;color:var(--muted);font-size:10px;line-height:1.4;font-weight:400}.panel-head .scope{white-space:nowrap}.open-section{padding:1px 4px;border:0;background:transparent;color:var(--muted);font-size:15px}
.help{position:relative;flex:0 0 auto;font-weight:400}.help>summary{list-style:none;cursor:pointer;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:16px;height:16px;color:var(--muted);font-size:10px;font-weight:600;font-style:normal}.help>summary::-webkit-details-marker{display:none}.help[open]>summary{border-color:var(--accent);color:var(--accent)}.help-text{position:absolute;z-index:20;top:24px;right:-3px;width:280px;max-width:calc(100vw - 45px);padding:13px;background:var(--panel);border:1px solid var(--line);border-radius:9px;box-shadow:0 7px 28px #0002;font-size:12px;line-height:1.6;color:var(--ink);text-align:left}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.metrics-six{grid-template-columns:repeat(6,minmax(0,1fr))}.metric{margin:0;padding:15px 14px}.metric-head{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:12px}.metric .label{font-size:11px;color:var(--muted);line-height:1.3}.metric strong{display:block;font-size:27px;font-weight:660;letter-spacing:-.8px;font-variant-numeric:tabular-nums;line-height:1.2}.metric strong.metric-empty{font-size:17px;font-weight:500;letter-spacing:-.2px}.metric>.scope{margin-top:7px}
.snapshot-strip{display:flex;gap:19px;flex-wrap:wrap;padding:0 2px 15px;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}
.two-col,.three-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.two-col>.panel,.three-col>.panel{margin:0}.stack{display:grid;gap:14px}.stack>.panel,.stack>.two-col{margin:0}
.stat-list{margin:0;display:grid}.stat-list>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.stat-list>div:last-child{border:0;padding-bottom:0}.stat-list dt{color:var(--muted);font-size:12px}.stat-list dd{margin:0;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.table-wrap{overflow:auto;max-height:360px;scrollbar-width:thin}table{border-collapse:collapse;width:100%;font-size:11px;text-align:left;white-space:nowrap}th{font-weight:600;color:var(--muted);background:var(--panel);position:sticky;top:0}td,th{padding:9px 10px;border-bottom:1px solid var(--line)}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0}td{font-variant-numeric:tabular-nums}tbody tr:last-child td{border:0}
.empty{color:var(--muted);font-size:12px;line-height:1.6;padding:15px 0}.footnote{color:var(--muted);font-size:11px;line-height:1.6;margin:12px 0 0}.inline-note{font-size:10px;color:var(--muted);margin:0 0 9px}
.details-panel{border:1px solid var(--line);background:var(--panel);border-radius:9px;padding:12px 15px;margin-bottom:12px}.details-panel>summary{cursor:pointer;font-size:12px;font-weight:600}.details-panel .footnote{padding-left:18px}.details-panel .footnote li+li{margin-top:7px}.detail-grid{margin-top:15px;display:grid;gap:12px}.detail-grid>.panel{margin:0}
.attention{width:100%;justify-content:flex-start;margin-bottom:14px;background:var(--warn-bg);color:var(--warn);border-color:color-mix(in srgb,var(--warn) 24%,transparent);font-size:12px;text-align:left}
.chart-legend{color:var(--muted);font-size:10px;margin-bottom:12px}.cohort-row{display:grid;grid-template-columns:78px minmax(35px,1fr) 70px;gap:12px;align-items:center;margin:13px 0;font-size:11px;font-variant-numeric:tabular-nums}.cohort-row>span{color:var(--muted)}.cohort-row strong{text-align:right;font-weight:500}.cohort-track{position:relative;height:17px}.cohort-total,.cohort-active{position:absolute;left:0;height:6px;border-radius:2px}.cohort-total{top:0;background:var(--chart)}.cohort-active{top:10px;background:var(--accent)}
.imports{margin-top:14px}.imports details+details{border-top:1px solid var(--line);margin-top:17px;padding-top:17px}summary{cursor:pointer;font-size:12px;font-weight:600}.import-controls,form{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:17px 0}.import-controls button{font-size:11px}.file-label input{max-width:260px;font-size:11px}.imports .table-wrap{max-height:250px;margin-bottom:12px}.imports p{font-size:12px}.error{color:#cd493f}.success{color:var(--green)}#notice:not(:empty){padding:11px 14px;margin-bottom:15px;border:1px solid var(--line);border-radius:8px;font-size:12px}footer{font-size:10px;color:var(--muted);line-height:1.6;margin-top:18px}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
/* The signed-out page remains a standalone login card. */
body:not([data-authenticated=true]) .workspace{display:block;max-width:none}body:not([data-authenticated=true]) main{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:28px 20px}body:not([data-authenticated=true]) #notice:not(:empty){width:100%;max-width:440px}
.sign-in{width:100%;max-width:440px;margin:0;padding:42px 32px;text-align:center}.login-brand{justify-content:center;margin-bottom:32px;font-size:24px}.sign-in h1{font-size:28px;letter-spacing:-.8px}.sign-in p{color:var(--muted);font-size:14px;line-height:1.6;margin:14px auto 26px;max-width:300px}.sign-in .primary{width:100%;min-height:44px}.sign-in small{display:block;margin-top:18px;font-size:11px}
@media(max-width:1380px){.metrics-six{grid-template-columns:repeat(3,minmax(0,1fr))}.three-col .panel-head{flex-wrap:wrap}.three-col .panel-head h2{flex:1}.three-col .panel-head .scope{order:5;width:100%}}
@media(max-width:1050px){.workspace{grid-template-columns:170px minmax(0,1fr)}main{padding:23px 18px}.brand{font-size:18px}.brand span{display:none}.two-col{grid-template-columns:1fr}.three-col{grid-template-columns:1fr 1fr}.three-col>.panel:last-child{grid-column:1/-1}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-six{grid-template-columns:repeat(3,minmax(0,1fr))}.toolbar{flex-wrap:wrap}}
@media(max-width:720px){.workspace{display:block}aside{position:static;height:auto;padding:16px;border-right:0;border-bottom:1px solid var(--line)}nav{display:flex;overflow:auto;margin-top:16px;scrollbar-width:thin}nav button{white-space:nowrap}.aside-note{display:none}main{padding:20px 14px}header{align-items:flex-start;gap:10px}.toolbar{justify-content:flex-end}.toolbar button{padding:7px}.metrics-six{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col{grid-template-columns:1fr}.three-col>.panel:last-child{grid-column:auto}.three-col .panel-head .scope{order:0;width:auto}.panel{padding:14px}.metric strong{font-size:25px}.snapshot-strip{gap:9px 16px}.metric:nth-child(odd) .help-text{right:auto;left:-95px}.help-text{width:250px}}
@media(max-width:480px){.sign-in{padding:32px 24px}.sign-in h1{font-size:26px}header{flex-direction:column}.toolbar{justify-content:flex-start}.panel-head{flex-wrap:wrap}.panel-head h2{min-width:90px}.panel-head .scope{font-size:9px}.stat-list dd{font-size:14px}.cohort-row{gap:8px}}
@media(prefers-reduced-motion:no-preference){button,.button{transition:background .12s,border-color .12s}}

.metric-link{padding:0;border:0;background:transparent;text-align:left;justify-content:flex-start;font-weight:400}.metric-link:hover{color:var(--accent)}
.attention{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:7px 12px;border-width:1px;border-style:solid;border-radius:8px}.attention button{padding:3px 0;border:0;background:transparent;color:var(--warn);font-size:12px;font-weight:500}
.users-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px}.users-search{display:flex;flex:1 1 250px;gap:6px;margin:0}.users-search input{flex:1;min-width:120px}.users-internal{display:flex;align-items:center;gap:6px;font-size:11px;white-space:nowrap}.users-internal input,.column-choices input{accent-color:var(--accent)}
.users-columns{position:relative}.users-columns>summary{padding:8px 11px;border:1px solid var(--line);border-radius:7px;font-size:12px;list-style:none}.users-columns>summary::-webkit-details-marker{display:none}.column-choices{position:absolute;right:0;top:40px;z-index:25;background:var(--panel);padding:12px;border:1px solid var(--line);border-radius:9px;box-shadow:0 7px 28px #0002;display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:280px}.column-choices label{display:flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap;color:var(--ink)}
.users-scope{display:flex;gap:15px;flex-wrap:wrap;align-items:center;margin-bottom:12px;font-size:10px;color:var(--muted)}.users-scope strong{color:var(--ink);font-size:13px}.users-table{max-height:calc(100vh - 310px);min-height:160px}.users-table th{z-index:1;padding-top:0}.users-table th button{padding:9px 0;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:11px;white-space:nowrap}.users-table th[aria-sort=ascending] button,.users-table th[aria-sort=descending] button{color:var(--accent)}.users-table td{padding-top:13px;padding-bottom:13px}.users-table td:first-child{max-width:250px;white-space:normal;overflow-wrap:anywhere;min-width:180px}.users-table td strong{font-weight:600}.users-table td small{display:block;font-size:10px;margin-top:5px}.user-tag{display:inline-block;border-radius:5px;padding:4px 6px;background:var(--bg);font-size:10px;font-weight:600}.payment-paid{color:var(--green)}.payment-attention{background:var(--warn-bg);color:var(--warn)}.payment-not_paid{color:var(--muted)}.users-pager{display:flex;align-items:center;gap:7px;margin-top:14px;font-size:11px;color:var(--muted)}.users-pager span{margin-right:auto}.users-pager button{font-size:11px;padding:7px 9px}
@media(max-width:720px){.users-table{max-height:60vh}.users-tools{gap:8px}.users-tools{position:relative}.users-tools select{flex:1 0 160px}.users-search{flex-basis:100%}.users-columns{position:static}.column-choices{left:0;right:0;top:100%;min-width:0}.users-scope{gap:8px 12px}}

.priority-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.priority-card{margin:0;display:flex;flex-direction:column;padding:17px;min-height:214px}.priority-featured{grid-column:span 2;border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:linear-gradient(125deg,var(--soft),var(--panel) 75%)}.priority-head{display:flex;align-items:start;gap:8px;margin-bottom:7px}.priority-head h2{flex:1;min-width:0}.priority-title{display:block;padding:0;border:0;background:transparent;text-align:left;font-size:13px;line-height:1.4;font-weight:650}.priority-title:hover{color:var(--accent)}.priority-value{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:19px 0 12px}.priority-value strong{font-size:30px;letter-spacing:-1px;line-height:1;font-weight:650;font-variant-numeric:tabular-nums}.priority-featured .priority-value strong{font-size:46px;color:var(--accent)}.priority-value>span{font-size:11px;color:var(--muted);line-height:1.4}.priority-card .stat-list{margin-top:auto}.priority-card .stat-list>div{padding:7px 0}.priority-card .stat-list dt,.priority-card .stat-list dd{font-size:11px;line-height:1.4}.priority-card .stat-list dd{font-weight:600}.priority-card>small{margin-top:10px;font-size:10px}.priority-note{color:var(--muted);font-size:11px;line-height:1.6;margin:8px 0}.priority-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:5px}.priority-pair .priority-value{display:block;margin-bottom:10px}.priority-pair .priority-value>span{display:block;margin-top:7px}.priority-pair small{font-size:10px}.priority-featured .stat-list{grid-template-columns:1fr 1fr;gap:20px}.priority-featured .stat-list>div{border:0}.priority-card .help-text{width:270px}
@media(max-width:1200px){.priority-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.priority-featured{grid-column:span 2}.priority-grid>.priority-card:last-child{grid-column:span 2}.priority-card{min-height:205px}}
@media(max-width:600px){.priority-grid{grid-template-columns:1fr}.priority-featured,.priority-grid>.priority-card:last-child{grid-column:auto}.priority-card{min-height:0}.priority-featured .stat-list{grid-template-columns:1fr;gap:0}.priority-value strong{font-size:32px}.priority-card .help-text{right:-8px}}
