:root{--hue:250}:root,[style*=--hue]{--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--bg:oklch(98.4% .004 var(--hue));--surface:oklch(100% 0 0);--sunken:oklch(96.2% .008 var(--hue));--line:oklch(91% .012 var(--hue));--line-strong:oklch(84% .02 var(--hue));--text:oklch(23% .02 var(--hue));--text-2:oklch(47% .02 var(--hue));--text-3:oklch(53% .015 var(--hue));--accent:oklch(54% .17 var(--hue));--accent-strong:oklch(45% .17 var(--hue));--accent-soft:oklch(94.5% .04 var(--hue));--accent-ink:oklch(99% .01 var(--hue));--ok:oklch(62% .15 155);--ok-soft:oklch(95% .05 155);--warn:oklch(70% .15 70);--warn-soft:oklch(96% .05 80);--bad:oklch(60% .2 25);--bad-soft:oklch(95% .04 25);--muted-dot:oklch(75% .01 var(--hue));--radius:12px;--radius-sm:8px;--shadow:0 1px 2px oklch(20% .02 var(--hue) / 6%), 0 8px 24px -12px oklch(20% .04 var(--hue) / 18%);--ring:0 0 0 3px oklch(60% .16 var(--hue) / 35%);--rail-w:276px;color-scheme:light}@media (prefers-color-scheme:dark){:root,[style*=--hue]{--bg:oklch(17% .012 var(--hue));--surface:oklch(21% .014 var(--hue));--sunken:oklch(19% .012 var(--hue));--line:oklch(29% .018 var(--hue));--line-strong:oklch(37% .025 var(--hue));--text:oklch(94% .01 var(--hue));--text-2:oklch(76% .015 var(--hue));--text-3:oklch(68% .015 var(--hue));--accent:oklch(72% .14 var(--hue));--accent-strong:oklch(80% .12 var(--hue));--accent-soft:oklch(30% .06 var(--hue));--accent-ink:oklch(18% .03 var(--hue));--ok-soft:oklch(30% .06 155);--warn-soft:oklch(32% .06 70);--bad-soft:oklch(30% .07 25);--muted-dot:oklch(45% .01 var(--hue));--shadow:0 1px 2px oklch(0% 0 0/.3), 0 10px 30px -12px oklch(0% 0 0/.55);color-scheme:dark}}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--text);font:15px/1.55 var(--font);font-feature-settings:"tnum" 1, "cv11" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3{letter-spacing:-.015em;margin:0;line-height:1.2}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}code,.mono{font-family:var(--mono);font-size:.86em}code{background:var(--sunken);color:var(--text-2);border-radius:5px;padding:.05em .35em}:focus-visible{box-shadow:var(--ring);border-radius:6px;outline:none}.muted{color:var(--text-3)}.block{display:block}.warn{color:oklch(from var(--warn) calc(l - .12) c h)}.row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.icon{flex:none}.eyebrow{font:600 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 6px}.lede{max-width:62ch;color:var(--text-2);margin:8px 0 0}.error{color:var(--bad);margin:12px 0 0}.error.banner{border:1px solid oklch(from var(--bad) l c h / 30%);border-radius:var(--radius-sm);background:var(--bad-soft);padding:10px 14px}.notice.banner{border:1px solid oklch(from var(--warn) l c h / 40%);border-radius:var(--radius-sm);background:var(--warn-soft);margin:12px 0 0;padding:10px 14px}.btn{border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);cursor:pointer;border:1px solid #0000;align-items:center;gap:8px;padding:8px 14px;font-weight:600;transition:background-color .12s,border-color .12s;display:inline-flex}.btn:hover{background:var(--accent-strong)}.btn.ghost{border-color:var(--line-strong);color:var(--text);background:0 0}.btn.ghost:hover{background:var(--sunken)}.btn:disabled,.icon-btn:disabled{opacity:.5;cursor:progress}.icon-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-2);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;padding:0;display:inline-grid}.icon-btn:hover{background:var(--sunken);color:var(--text)}.link{color:var(--accent);font-weight:600}.link:hover{text-underline-offset:3px;text-decoration:underline}kbd{border:1px solid var(--line-strong);font:11px var(--mono);color:var(--text-3);border-bottom-width:2px;border-radius:5px;padding:1px 6px}.chip,.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.chip{background:var(--sunken);color:var(--text-2);border:1px solid var(--line)}.chip.role-owner{background:var(--accent-soft);color:var(--accent-strong);border-color:#0000}.chip.role-admin{color:var(--accent-strong);border-color:oklch(from var(--accent) l c h / 40%)}.chip.role-auditor{border-style:dashed}.pill{text-transform:capitalize}.pill.ok,.pill.operational{background:var(--ok-soft);color:oklch(from var(--ok) calc(l - .12) c h)}.pill.warn,.pill.degraded{background:var(--warn-soft);color:oklch(from var(--warn) calc(l - .2) c h)}.pill.neutral{background:var(--sunken);color:var(--text-2)}@media (prefers-color-scheme:dark){.pill.ok,.pill.operational{color:oklch(from var(--ok) calc(l + .15) c h)}.pill.warn,.pill.degraded{color:oklch(from var(--warn) calc(l + .1) c h)}.warn{color:var(--warn)}}.status{background:var(--ok);border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.status-degraded{background:var(--warn);box-shadow:0 0 0 3px oklch(from var(--warn) l c h / 25%)}.status-paused{background:var(--muted-dot)}.kind{flex:none;width:9px;height:9px;display:inline-block}.kind-platform{border:1.5px dashed var(--text-3);border-radius:2px}.kind-org{background:var(--accent);border-radius:2px}.kind-region{border:2px solid var(--accent);border-radius:50%}.kind-location{background:var(--accent);border-radius:50%;width:7px;height:7px}.avatar{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-strong);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:inline-grid}.avatar.sm{width:28px;height:28px;font-size:11px}.avatar.ghost{background:var(--sunken)}.mark-outer{fill:none;stroke:var(--accent);stroke-width:2px}.mark-mid{fill:none;stroke:var(--accent);stroke-width:2px;opacity:.6}.mark-core{fill:var(--accent)}.mark-logo{object-fit:contain;border-radius:6px}.gateway{background:radial-gradient(60rem 30rem at 50% -10%, var(--accent-soft), transparent 70%), var(--bg);align-content:center;justify-items:center;gap:24px;min-height:100vh;padding:40px 16px;display:grid}.gateway-mark{letter-spacing:-.02em;align-items:center;gap:10px;font-size:17px;font-weight:700;display:flex}.gateway-card{border:1px solid var(--line);background:var(--surface);width:min(640px,100%);box-shadow:var(--shadow);border-radius:18px;padding:32px}.gateway-card.narrow{text-align:center;width:min(440px,100%)}.gateway-card.narrow .btn{margin-top:20px}.gateway-card h1{font-size:26px}.gateway-foot{text-align:center;max-width:46ch;color:var(--text-3);margin:0;font-size:12.5px}.identity-list,.workspace-list{gap:8px;margin:24px 0 0;padding:0;list-style:none;display:grid}.workspace-list{margin-bottom:20px}.identity,.workspace{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:left;cursor:pointer;grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px;width:100%;padding:12px 14px;transition:border-color .12s,transform .12s,background-color .12s;display:grid}.identity:hover,.workspace:hover{border-color:var(--accent);background:var(--sunken)}.identity:active,.workspace:active{transform:scale(.995)}.identity-main,.workspace-main{min-width:0;display:grid}.identity-main span,.workspace-main span{color:var(--text-3);font-size:12.5px}.identity-grants{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.grant{color:var(--text-2);align-items:center;gap:5px;font-size:12px;display:inline-flex}.tenant-dot{border-radius:2px;width:8px;height:8px}.workspace-badge{background:oklch(58% .15 var(--hue));color:#fff;letter-spacing:-.02em;border-radius:11px;place-items:center;width:40px;height:40px;font-weight:700;display:grid}.workspace-scope{color:var(--text-3);justify-items:end;gap:2px;font-size:12px;display:grid}.shell{grid-template-columns:var(--rail-w) minmax(0, 1fr);min-height:100vh;display:grid}.rail{border-right:1px solid var(--line);background:var(--sunken);scrollbar-width:thin;flex-direction:column;gap:18px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.rail-head{align-items:center;gap:8px;display:flex}.brand{border-radius:10px;flex:none;place-items:center;width:40px;height:40px;display:grid}.brand:hover{background:var(--surface)}.tenant-switch{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);text-align:left;cursor:pointer;flex:1;grid-template-columns:1fr auto;align-items:center;min-width:0;padding:6px 10px;display:grid}.tenant-switch:hover{border-color:var(--accent)}.tenant-switch .icon{color:var(--text-3);grid-area:1/2/span 2}.tenant-name,.tenant-meta{grid-column:1}.tenant-name{white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.tenant-meta{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.rail-nav{gap:2px;display:grid}.rail-nav a{border-radius:var(--radius-sm);color:var(--text-2);align-items:center;gap:10px;padding:7px 10px;font-weight:500;display:flex;position:relative}.rail-nav a:hover{background:var(--surface);color:var(--text)}.rail-nav a[data-status=active]{background:var(--surface);color:var(--accent-strong);box-shadow:0 1px 2px oklch(20% .02 var(--hue) / 8%);font-weight:650}.rail-nav a[data-status=active]:before{background:var(--accent);content:"";border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-12px}.rail-section{flex:1}.rail-label{font:600 10.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:0 10px 6px}.scope-rail ul{margin:0;padding:0;list-style:none}.scope-rail ul ul{border-left:1px dashed var(--line-strong);margin-left:21px;padding-left:8px}.scope-branch{align-items:center;display:flex}.scope-branch .scope-node{flex:1;min-width:0}.twisty{width:22px;height:22px;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:0;transition:transform .15s;display:grid}.twisty.open{transform:rotate(90deg)}.scope-node{color:var(--text-2);border-radius:7px;align-items:center;gap:8px;padding:5px 8px;font-size:13px;display:flex}a.scope-node:hover{background:var(--surface);color:var(--text)}.scope-node[aria-current=true]{background:var(--accent-soft);color:var(--accent-strong);font-weight:650}.scope-node.locked{color:var(--text-3);opacity:.7;cursor:not-allowed}.scope-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.scope-code{font:10.5px var(--mono);color:var(--text-3)}.stage{min-width:0;position:relative}.stage:after{inset:0 0 0 var(--rail-w);border:3px solid oklch(from var(--accent) l c h / 55%);pointer-events:none;content:"";border-left-width:0;position:fixed}.stage[data-tenant]:before{z-index:3;background:oklch(from var(--accent) l c h / 85%);color:var(--accent-ink);font:600 10px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;pointer-events:none;content:"tenant · " attr(data-tenant);border-radius:6px 6px 0 0;padding:3px 10px;position:fixed;bottom:0;right:18px}.topbar{z-index:2;border-bottom:1px solid var(--line);background:oklch(from var(--bg) l c h / 82%);backdrop-filter:saturate(1.4)blur(12px);align-items:center;gap:12px;min-height:60px;padding:10px 28px;display:flex;position:sticky;top:0}.menu-btn{display:none}.lens{scrollbar-width:none;flex:1;align-items:center;min-width:0;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.lens li{flex:none;align-items:center;display:flex}.lens li+li:before{background:var(--line-strong);content:"";width:16px;height:1px;margin:0 4px}.lens-step{border-radius:var(--radius-sm);border:1px solid #0000;grid-template-columns:auto auto;align-items:center;column-gap:7px;padding:4px 10px;display:grid}a.lens-step:hover{border-color:var(--line-strong);background:var(--surface)}.lens-step .kind{grid-row:span 2}.lens-kind{font:600 9.5px/1.1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.lens-name{white-space:nowrap;font-weight:600;line-height:1.2}.lens-step.current{border-color:oklch(from var(--accent) l c h / 40%);background:var(--accent-soft)}.lens-step.current .lens-name{color:var(--accent-strong)}.search-btn{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-3);cursor:pointer;align-items:center;gap:8px;padding:6px 8px 6px 12px;display:flex}.search-btn:hover{border-color:var(--line-strong);color:var(--text-2)}.lang-switch{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-2);font:inherit;cursor:pointer;padding:5px 8px;font-size:12.5px}.lang-switch:hover{border-color:var(--line-strong)}.who{align-items:center;gap:10px;display:flex}.who-main{justify-items:start;font-size:12.5px;line-height:1.3;display:grid}.page{gap:20px;max-width:1240px;padding:28px 28px 64px;animation:.22s ease-out page-in;display:grid}@keyframes page-in{0%{opacity:0;transform:translateY(4px)}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head h1{font-size:28px}.page-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.page-actions .btn{white-space:nowrap}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;padding:18px 20px}.panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.panel-head h2{align-items:center;gap:8px;font-size:14px;font-weight:650;display:flex}.panel-head h2 .icon{color:var(--accent)}.grid.two{grid-template-columns:1.4fr 1fr;gap:20px;display:grid}.stats{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;display:grid;overflow:hidden}.stat{background:var(--surface);gap:4px;min-width:0;padding:16px 18px;display:grid}.stat-label{color:var(--text-3);font-size:12px}.stat-value{overflow-wrap:anywhere;letter-spacing:-.02em;font-size:clamp(18px,5vw,26px);font-weight:700}.stat-foot{color:var(--text-2);font-size:12px}.posture{gap:8px;display:flex}.posture>span{border:1px solid var(--line);background:var(--surface);color:var(--text-2);border-radius:999px;padding:6px 12px;font-size:12.5px}.posture strong{color:var(--text)}.bars{align-items:flex-end;gap:3px;height:120px;display:flex}.bars span{height:var(--h);background:linear-gradient(to top, var(--accent), oklch(from var(--accent) l c h / 55%));border-radius:3px 3px 1px 1px;flex:1;min-height:3px;transition:height .3s}.bars span:hover{background:var(--accent-strong)}.axis{color:var(--text-3);justify-content:space-between;margin-top:6px;font-size:11.5px;display:flex}.spark{width:100%;display:block;overflow:visible}.spark-line{fill:none;stroke:var(--accent);stroke-width:1.6px}.spark-area{fill:oklch(from var(--accent) l c h / 12%)}.spark-dot{fill:var(--accent)}.ring{transform:rotate(-90deg)scaleY(-1)}.ring circle{fill:none;stroke-width:3.4px}.ring-track{stroke:var(--sunken)}.ring-fill{stroke:var(--accent);stroke-linecap:round}.ring-fill.hot{stroke:var(--warn)}.hotspots,.feed{gap:4px;margin:0;padding:0;list-style:none;display:grid}.hotspot{border-radius:var(--radius-sm);grid-template-columns:auto minmax(0,9rem) 1fr auto;align-items:center;gap:10px;padding:6px 8px;display:grid}.hotspot:hover{background:var(--sunken)}.hotspot-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hotspot-bar{background:linear-gradient(to right, var(--accent) var(--w), var(--sunken) var(--w));border-radius:3px;height:6px}.services{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.service{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--sunken);gap:8px;padding:14px;display:grid}.service-head{flex-direction:row-reverse;justify-content:space-between;align-items:center;display:flex}.service-p95{color:var(--text-2)}.feed-item{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto 6rem;align-items:center;gap:12px;padding:8px 4px;display:grid}.feed-item:last-child{border-bottom:0}.feed-item time{text-align:right;font-size:12px}.cat{border-radius:2px;flex:none;width:8px;height:8px;display:inline-block;transform:rotate(45deg)}.cat-access{background:oklch(62% .15 250)}.cat-config{background:oklch(65% .15 300)}.cat-billing{background:oklch(70% .14 150)}.cat-integration{background:oklch(72% .13 200)}.cat-security{background:oklch(64% .19 25)}.legend{color:var(--text-2);flex-wrap:wrap;gap:14px;font-size:12.5px;display:flex}.legend>span{align-items:center;gap:6px;display:inline-flex}.sites{grid-template-columns:minmax(0,1.2fr) minmax(360px,1fr);align-items:start;gap:20px;display:grid}.sites-map{grid-template-rows:auto 1fr;height:clamp(420px,100vh - 140px,760px);display:grid;position:sticky;top:16px}.sites-map-empty{margin:10px 2px 0}.site-map{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--sunken);min-height:0;position:relative;overflow:hidden}.site-map-canvas{font:inherit;background:var(--sunken);position:absolute;inset:0}.site-map.placing .site-map-canvas{cursor:crosshair}.site-map .leaflet-tile-pane{filter:saturate(.55)contrast(.95)}@media (prefers-color-scheme:dark){.site-map .leaflet-tile-pane{filter:invert()hue-rotate(180deg)saturate(.4)brightness(.85)contrast(.9)}}.site-map-banner{z-index:500;background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;position:absolute;top:12px;left:50%;transform:translate(-50%)}.site-map-fit{z-index:500;background:var(--surface);box-shadow:var(--shadow);position:absolute;top:12px;right:12px}.site-map .leaflet-control-zoom a{background:var(--surface);color:var(--text);border-color:var(--line)}.site-map .leaflet-control-attribution{background:oklch(from var(--surface) l c h / 85%);color:var(--text-2)}.site-map .leaflet-control-attribution a{color:var(--text-2)}.site-pin{background:0 0;border:0;place-items:center;display:grid}.pin{background:var(--ok);border:2.5px solid #fff;border-radius:50%;width:14px;height:14px;transition:transform .12s;box-shadow:0 1px 4px oklch(0% 0 0/.35)}.pin-closed{background:var(--text-3)}.pin-paused{background:repeating-linear-gradient(-45deg, var(--muted-dot) 0 3px, var(--text-3) 3px 6px)}.pin.selected{box-shadow:0 0 0 5px oklch(from var(--accent) l c h / 30%), 0 1px 4px oklch(0% 0 0/.35);transform:scale(1.45)}.site-pin:hover .pin{transform:scale(1.25)}.site-tip{border:1px solid var(--line);background:var(--surface);color:var(--text);font:12.5px var(--font);box-shadow:var(--shadow);border-radius:6px;padding:4px 8px}.site-tip:before{display:none}.site-tip .mono{color:var(--text-3);font-size:10.5px}.sites-list .filter input{width:15rem}.site-groups{gap:14px;display:grid}.site-groups.nested{border-left:2px solid var(--line);margin:8px 0 0 10px;padding-left:12px}.site-group{gap:6px;display:grid}.site-group.locked{opacity:.6}.site-group-head{align-items:baseline;gap:8px;padding:2px 4px 4px;font-size:13px;display:flex}.site-group-level{color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:650}.site-group-name{font-weight:650}a.site-group-name:hover,.site-group.focused>.site-group-head .site-group-name{color:var(--accent)}.site-group-count{background:var(--sunken);color:var(--text-2);border-radius:999px;margin-left:auto;padding:0 7px;font-size:11.5px;font-weight:600}.site-empty{margin:0;padding:4px}.site{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);transition:border-color .12s,box-shadow .12s}.site:hover{border-color:var(--line-strong)}.site.focused{box-shadow:inset 3px 0 0 var(--accent)}.site.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), var(--shadow)}.site[data-status=paused] .site-name{color:var(--text-2)}.site.locked .site-name{color:var(--text-3)}.site-row{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.site-row>.icon{color:var(--text-3);transition:transform .12s}.site.selected .site-row>.icon{transform:rotate(90deg)}.site-main,.site-side{gap:2px;min-width:0;display:grid}.site-side{text-align:right;justify-items:end}.site-name{white-space:nowrap;text-overflow:ellipsis;font-weight:650;overflow:hidden}.site-code{color:var(--text-3);font-size:10.5px;font-weight:600}.site-sub{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:8px;font-size:12.5px;display:flex;overflow:hidden}.site-flag{background:var(--warn-soft);color:var(--text-2);border-radius:999px;flex:none;padding:0 6px;font-size:11px;font-weight:600}.site-state{white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:inline-flex}.site-state.is-closed,.site-state.is-paused{color:var(--text-2)}.site-local{white-space:nowrap;align-items:center;gap:4px;font-size:11.5px;display:inline-flex}.site-detail{border-top:1px solid var(--line);gap:12px;padding:4px 12px 12px;display:grid}.site-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:10px 0 0;display:grid}.site-facts dt{color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:650}.site-facts dd{overflow-wrap:anywhere;margin:2px 0 0;font-size:13px}.site-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.site-actions .inline-form input[type=text]{width:13rem;min-width:0}.site-detail .hint{margin:0}@media (width<=1080px){.sites{grid-template-columns:minmax(0,1fr)}.sites-map{height:380px;position:static}}@media (width<=560px){.sites-list .panel-head{flex-wrap:wrap}.sites-list .filter,.sites-list .filter input{width:100%}.site-row{grid-template-columns:minmax(0,1fr) auto}.site-side{text-align:left;grid-area:2/1;justify-items:start}.site-row>.icon{grid-area:1/2/span 2}.site-facts{grid-template-columns:minmax(0,1fr)}}.filter{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-3);align-items:center;gap:8px;padding:5px 10px;display:flex}.filter:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.filter input{width:14rem;color:var(--text);background:0 0;border:0;outline:0}.table-wrap{margin:0 -20px;padding:0 20px;overflow-x:auto}.table,.matrix{border-collapse:collapse;width:100%}.table th,.matrix thead th{border-bottom:1px solid var(--line);color:var(--text-3);text-align:left;white-space:nowrap;padding:8px 10px;font-size:11.5px;font-weight:600}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px}.table tbody tr:hover{background:var(--sunken)}.table tr:last-child td{border-bottom:0}.table .num{text-align:right}.table tr.dim{opacity:.6}.person{align-items:center;gap:10px;display:flex}.person .muted{font-size:12px}select,input[type=number],input[type=text],input[type=url]{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:6px 10px}select:focus,input[type=number]:focus,input[type=text]:focus,input[type=url]:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.role-select{padding:3px 8px;font-size:12.5px}.inherited{gap:8px;margin:0;padding:0;list-style:none;display:grid}.inherited li{align-items:center;gap:10px;display:flex}.matrix th[scope=row]{border-bottom:1px solid var(--line);text-align:left;padding:8px 10px;font-weight:500}.matrix th[scope=row] code{margin-left:6px;font-size:11px}.matrix td{border-bottom:1px solid var(--line);text-align:center}.matrix .mine{background:oklch(from var(--accent) l c h / 7%)}.matrix thead .mine{color:var(--accent-strong)}.matrix .yes{background:var(--accent-soft);width:22px;height:22px;color:var(--accent-strong);border-radius:6px;place-items:center;display:inline-grid}.matrix .no{color:var(--text-3)}.settings{margin:0;padding:0;list-style:none;display:grid}.setting{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr) minmax(170px,auto);align-items:center;gap:20px;padding:14px 0;transition:opacity .15s;display:grid}.setting:last-child{border-bottom:0}.setting.busy{opacity:.55}.setting-main{gap:2px;display:grid}.setting-main .muted{font-size:12.5px}.setting-key{justify-self:start;margin-top:2px;font-size:10.5px}.cascade{margin:0;padding:0;list-style:none;display:flex}.cascade li{border:1px solid var(--line);background:var(--bg);min-width:0;color:var(--text-3);border-left-width:0;flex:1;grid-template-columns:auto 1fr;align-items:center;column-gap:6px;padding:6px 10px 6px 8px;font-size:11.5px;display:grid;position:relative}.cascade li:first-child{border-left-width:1px;border-radius:8px 0 0 8px}.cascade li:last-child{border-radius:0 8px 8px 0}.cascade li .kind{opacity:.45;grid-row:span 2}.cascade-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cascade-value{font-family:var(--mono);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cascade li.set{color:var(--text-2)}.cascade li.set .kind{opacity:1}.cascade li.shadowed .cascade-value{text-decoration:line-through;text-decoration-color:var(--text-3)}.cascade li.wins{z-index:1;border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong);border-left-width:1px;margin-left:-1px}.cascade li.wins .cascade-value{font-weight:700}.setting-edit{justify-content:flex-end;align-items:center;gap:6px;display:flex}.setting-edit select,.setting-edit input[type=text]{width:12rem;min-width:0}@media (width<=560px){.stat{padding:14px}.settings .setting{grid-template-columns:minmax(0,1fr);gap:10px}.setting .cascade{grid-row:auto}.setting-edit{justify-content:flex-start}.setting-edit select,.setting-edit input[type=text]{flex:auto;width:auto}}.unit-input{color:var(--text-3);align-items:center;gap:6px;font-size:12px;display:flex}.unit-input input{text-align:right;width:7.5rem}.toggle{background:var(--line-strong);cursor:pointer;border:0;border-radius:999px;flex:none;width:40px;height:22px;padding:0;transition:background-color .15s;position:relative}.toggle span{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px oklch(0% 0 0/.25)}.toggle[aria-checked=true]{background:var(--accent)}.toggle[aria-checked=true] span{transform:translate(18px)}.toggle:disabled{cursor:not-allowed;opacity:.5}.chain{border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12.5px;display:inline-flex}.chain.ok{background:var(--ok-soft);color:oklch(from var(--ok) calc(l - .15) c h)}.chain.broken{background:var(--bad-soft);color:var(--bad)}@media (prefers-color-scheme:dark){.chain.ok{color:oklch(from var(--ok) calc(l + .15) c h)}}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.chips{flex-wrap:wrap;flex:1;gap:6px;display:flex}.chip-toggle{border:1px solid var(--line);color:var(--text-3);text-transform:capitalize;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:7px;padding:4px 11px;font-size:12.5px;display:inline-flex}.chip-toggle.on{border-color:var(--line-strong);background:var(--surface);color:var(--text)}.chip-toggle:not(.on) .cat{opacity:.3}.empty{text-align:center;padding:24px 0}.ledger-day h3{z-index:1;background:var(--surface);color:var(--text-3);font:600 11px var(--mono);letter-spacing:.06em;margin:14px 0 4px;padding:6px 0;position:sticky;top:60px}.ledger{margin:0;padding:0;list-style:none;position:relative}.ledger:before{background:linear-gradient(var(--line-strong), var(--line));content:"";width:2px;position:absolute;top:12px;bottom:12px;left:3px}.ledger-entry{grid-template-columns:auto 3rem 1fr auto;align-items:start;gap:12px;padding:8px 0;display:grid;position:relative}.ledger-entry .cat{margin-top:6px}.ledger-entry time{padding-top:1px}.ledger-main{min-width:0}.ledger-main .block{font-size:12px}.hashes{border:1px solid var(--line);color:var(--text-2);border-radius:6px;align-items:center;gap:3px;padding:2px 8px;font-size:11px;display:inline-flex}.cards{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);align-content:start;gap:10px;padding:14px;transition:border-color .15s,background-color .15s;display:grid}.card.on{border-color:oklch(from var(--accent) l c h / 45%);background:var(--surface)}.card header{align-items:center;gap:10px;display:flex}.card header strong{flex:1}.card p{margin:0;font-size:13px}.card .pill{justify-self:start}.card-logo{background:var(--sunken);width:32px;height:32px;color:var(--text-2);border-radius:9px;place-items:center;font-weight:800;display:grid}.card.on .card-logo{background:var(--accent);color:var(--accent-ink)}.meters{gap:4px;display:grid}.meter{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) 3.5rem minmax(120px,.8fr);align-items:center;gap:16px;padding:10px 0;display:grid}.meter:last-child{border-bottom:0}.meter-main{display:grid}.meter-main .muted{font-size:12.5px}.meter-pct{text-align:right;font-weight:700}.usage-meter{border-bottom:0;grid-template-columns:auto minmax(0,1fr) 3.5rem}.usage-bar{background:var(--line);border-radius:999px;height:8px;margin:4px 0 12px;position:relative}.usage-fill{border-radius:inherit;background:var(--accent);height:100%;display:block}.usage-fill.hot{background:var(--warn)}.usage-mark{background:var(--text-2);width:2px;position:absolute;top:-3px;bottom:-3px}.notice-list,.change-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.notice-list li,.change-list li{border-bottom:1px solid var(--line);align-items:baseline;gap:12px;padding:8px 0;display:flex}.notice-list li>span:first-child,.change-list li>span:first-child{flex:1}.notice-list li.dim{opacity:.6}.banner p{margin:0 0 6px}.banner .row{gap:8px}.billing-banner{margin:12px 24px 0}.subhead{margin:20px 0 6px;font-size:14px}.invoice-detail{border:1px solid var(--line);border-radius:var(--radius-sm);margin-top:12px;padding:12px}.rail-label.nav-group{margin:14px 10px 6px}.page.wide{max-width:none}.stack{align-content:start;gap:20px;display:grid}.nowrap{white-space:nowrap}.bad{color:var(--bad)}.good{color:var(--ok)}.btn.small{padding:4px 10px;font-size:12.5px}.row.start{justify-content:flex-start;align-items:center}.hint{font-size:12px}.segmented{border:1px solid var(--line);background:var(--sunken);border-radius:10px;padding:3px;display:inline-flex}.segmented>a,.segmented>button{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:5px 12px;font-size:13px;font-weight:600}.segmented>[aria-selected=true]{background:var(--surface);color:var(--accent-strong);box-shadow:0 1px 2px oklch(20% .02 var(--hue) / 10%)}.status-pill{white-space:nowrap;border-radius:999px;padding:1px 9px;font-size:11.5px;font-weight:650;display:inline-flex}.status-pill.warn{background:var(--warn-soft);color:oklch(from var(--warn) calc(l - .22) c h)}.status-pill.neutral{background:var(--accent-soft);color:var(--accent-strong)}.status-pill.live{background:var(--accent);color:var(--accent-ink)}.status-pill.ok{background:var(--ok-soft);color:oklch(from var(--ok) calc(l - .14) c h)}.status-pill.bad{background:var(--bad-soft);color:var(--bad)}.status-pill.muted{background:var(--sunken);color:var(--text-3);text-decoration:line-through}.pill.bad{background:var(--bad-soft);color:var(--bad)}.kind-badge{font:600 10px/1.6 var(--mono);letter-spacing:.04em;text-transform:uppercase;vertical-align:1px;border:1px solid;border-radius:4px;padding:0 6px;display:inline-flex}.k-appointment{color:oklch(58% .14 250)}.k-class{color:oklch(58% .16 300)}.k-rental{color:oklch(58% .13 200)}.k-visit{color:oklch(58% .13 150)}.k-plan{color:oklch(60% .14 70)}.desk,.alerts,.mini-list,.attendees,.ranked{margin:0;padding:0;list-style:none;display:grid}.desk-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;display:flex}.desk-row:last-child{border-bottom:0}.desk-main{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;grid-template-columns:5.5rem minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:9px 4px;display:grid}.desk-main:hover{background:var(--sunken)}.desk-time{color:var(--accent-strong);font-weight:600}.desk-row.late .desk-time{color:var(--bad)}.desk-who{min-width:0}.desk-who .block{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.alert{border-radius:var(--radius-sm);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 8px;display:grid}.alert:hover{background:var(--sunken)}.alert-dot{background:var(--accent);border-radius:50%;width:9px;height:9px}.alert[data-tone=warn] .alert-dot{background:var(--warn)}.alert[data-tone=bad] .alert-dot{background:var(--bad);box-shadow:0 0 0 3px oklch(from var(--bad) l c h / 20%)}.alert .block{font-size:12.5px}.day-nav{align-items:center;gap:4px;display:flex}.site-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.site-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:4px;padding:16px;transition:border-color .12s,transform .12s,box-shadow .12s;display:grid}.site-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-1px)}.site-head{align-items:center;gap:8px;display:flex}.site-head strong{flex:1}.site-num{letter-spacing:-.02em;font-size:30px;font-weight:700}.timeline-panel{padding:0;overflow-x:auto}.timeline{min-width:calc(var(--label-w) + var(--hours) * 96px);--label-w:190px;position:relative}.tl-row{grid-template-columns:var(--label-w) 1fr;border-bottom:1px solid var(--line);min-height:46px;display:grid}.tl-row.down .tl-track{background:repeating-linear-gradient(-45deg, var(--sunken) 0 6px, transparent 6px 12px)}.tl-head{z-index:2;background:var(--surface);min-height:30px;position:sticky;top:0}.tl-label{border-right:1px solid var(--line);align-content:center;padding:4px 14px;font-size:13px;line-height:1.25;display:grid}.tl-label .muted{font-size:11.5px}.tl-track{background-image:linear-gradient(to right, var(--line) 1px, transparent 1px);background-size:calc(100% / var(--hours)) 100%;position:relative}.tl-hour{color:var(--text-3);font-size:10.5px;position:absolute;top:8px;transform:translate(-50%)}.tl-hour:first-child{padding-left:4px;transform:none}.tl-group{border-bottom:1px solid var(--line);background:var(--sunken);font:600 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:0;padding:6px 14px}.tl-bar{border:0;border-left:3px solid var(--accent);background:color-mix(in oklab, var(--accent) 14%, var(--surface));min-width:6px;color:var(--text);white-space:nowrap;cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:0 8px;font-size:12px;display:flex;position:absolute;top:5px;bottom:5px;overflow:hidden}.tl-down{background:repeating-linear-gradient(-45deg, color-mix(in oklab, var(--bad) 16%, transparent) 0 6px, transparent 6px 12px);pointer-events:none;position:absolute;top:0;bottom:0}.tl-bar.clash{outline:2px dashed var(--bad);outline-offset:-2px}.tl-bar:hover,.tl-bar.picked{z-index:1;box-shadow:var(--ring)}.tl-bar strong{text-overflow:ellipsis;overflow:hidden}.tl-sub{color:var(--text-2);text-overflow:ellipsis;overflow:hidden}.tl-bar.s-requested{border-left-color:var(--warn);background:var(--warn-soft);border-style:dashed}.tl-bar.s-checked_in{background:color-mix(in oklab, var(--accent) 30%, var(--surface))}.tl-bar.s-completed{border-left-color:var(--ok);background:var(--sunken);color:var(--text-2)}.tl-bar.s-no_show{border-left-color:var(--bad);background:var(--bad-soft)}.tl-fill{background:linear-gradient(to right, oklch(from var(--accent) l c h / 35%) var(--fill), transparent var(--fill)), var(--surface);font:600 10.5px var(--mono);border-radius:999px;padding:0 6px}.tl-now{background:var(--bad);pointer-events:none;width:2px;position:absolute;top:0;bottom:0}.drawer{z-index:30;border-left:1px solid var(--line-strong);background:var(--surface);width:min(440px,100vw);box-shadow:-20px 0 60px -30px oklch(10% .05 var(--hue) / 45%);flex-direction:column;gap:16px;padding:22px;animation:.18s ease-out slide-in;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}@keyframes slide-in{0%{opacity:0;transform:translate(24px)}}.drawer-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.drawer-head h2{font-size:21px}.drawer-head p.muted{margin:4px 0 0}.drawer-head .eyebrow{align-items:center;gap:6px;display:flex}.drawer-sub{color:var(--text-2);margin:0 0 8px;font-size:13px}.facts{grid-template-columns:8rem 1fr;gap:6px 12px;margin:0;display:grid}.facts dt{color:var(--text-3)}.facts dd{margin:0}.intake{border:1px dashed oklch(from var(--accent) l c h / 45%);border-radius:var(--radius-sm);gap:10px;padding:14px;display:grid}.intake h3{justify-content:space-between;margin:0;font-size:14px;display:flex}.intake p{margin:0}.pay-box{border:1px solid var(--line);border-radius:var(--radius-sm);gap:10px;padding:14px;display:grid}.pay-box h3{justify-content:space-between;align-items:center;gap:8px;margin:0;font-size:14px;display:flex}.pay-box p{margin:0}.pay-list{margin:0;padding:0;font-size:13px;list-style:none;display:grid}.pay-list:empty{display:none}.pay-list li{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:6px 12px;padding:8px 0;display:grid}.pay-list li.dim{opacity:.55}.pay-list .row-actions{text-align:left;flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.pay-list .row-actions:empty{display:none}.settle{border-radius:var(--radius-sm);background:var(--sunken);grid-column:1/-1;gap:8px;padding:10px 12px;display:grid}.settle .inline-form input[type=number]{width:7rem}.settle .hint{flex-basis:100%;margin:0}.table tr.settle-row td{padding-top:0}.mini-list li>.row-actions{text-align:left;flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.money-history h4{color:var(--text-2);margin:0 0 4px;font-size:12.5px}.money-log{margin:0 0 8px;padding:0;font-size:13px;list-style:none;display:grid}.money-log li{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:6px 0;display:grid}.money-log li.dim{opacity:.55}.seat-bar{background:linear-gradient(to right, var(--accent) var(--fill), var(--sunken) var(--fill));border-radius:3px;height:6px}.attendees{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:4px 12px;max-height:180px;font-size:13px;overflow-y:auto}.mini-list li{border-bottom:1px solid var(--line);grid-template-columns:6rem 1fr auto;align-items:center;gap:10px;padding:6px 0;font-size:13px;display:grid}.profile-flags{flex-wrap:wrap;gap:8px;display:flex}.flag{border-radius:var(--radius-sm);align-items:center;gap:8px;padding:4px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.flag.ok{background:var(--ok-soft);color:oklch(from var(--ok) calc(l - .14) c h)}.flag.warn{background:var(--warn-soft);color:oklch(from var(--warn) calc(l - .22) c h)}.flag.bad{background:var(--bad-soft);color:var(--bad)}.form{gap:14px;display:grid}.form label{gap:6px;display:grid}.form label>input:not([type=checkbox],[type=radio]),.form label>select{width:100%;min-width:0}.form label.row{flex-wrap:nowrap;align-items:flex-start;display:flex}.form label.row>input{flex:none;margin-top:3px}.form-label{color:var(--text-2);font-size:12.5px;font-weight:600}.form input[type=search],.form input[type=date]{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:6px 10px}.form select[size]{padding:4px}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.form .btn{justify-content:center}.requirements{border:0;margin:0;padding:0}.table tr.clickable{cursor:pointer}.table tr.picked td{background:var(--accent-soft)}.row-actions{text-align:right;white-space:nowrap}.row-actions .btn+.btn{margin-left:4px}td.warn{color:oklch(from var(--warn) calc(l - .15) c h);font-weight:600}.card.offer{background:var(--surface)}.card.offer:not(.on){opacity:.6}.card.offer header{flex-wrap:wrap}.price{color:var(--accent-strong);font-size:15px;font-weight:700}.rule{border-radius:var(--radius-sm);background:var(--sunken);color:var(--text-2);padding:6px 10px;font-size:12.5px!important}.offer-stats{grid-template-columns:auto 1fr;gap:2px 12px;margin:0;font-size:12.5px;display:grid}.offer-stats dt{color:var(--text-3)}.offer-stats dd{text-align:right;margin:0}.card.offer footer{justify-content:space-between;align-items:center;font-size:12px;display:flex}.util{grid-template-columns:9rem auto;align-items:center;gap:10px;display:grid}.util-bar{background:linear-gradient(to right, var(--accent) var(--w), var(--sunken) var(--w));border-radius:4px;height:7px}.util-bar.low{background:linear-gradient(to right, var(--warn) var(--w), var(--sunken) var(--w))}.util-bar.high{background:linear-gradient(to right, var(--bad) var(--w), var(--sunken) var(--w))}.delta{letter-spacing:0;vertical-align:4px;margin-left:8px;font-size:12px;font-weight:650}.delta.good{color:var(--ok)}.delta.bad{color:var(--bad)}.delta.flat{color:var(--text-3)}.ranked li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,12rem) 1fr 6rem 3rem;align-items:center;gap:10px;padding:7px 0;font-size:13px;display:grid}.ranked li:last-child{border-bottom:0}.ranked .mono{text-align:right}.ranked-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.toaster{z-index:60;pointer-events:none;gap:8px;display:grid;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.toast{background:var(--text);min-width:260px;max-width:min(520px,100vw - 32px);color:var(--bg);box-shadow:var(--shadow);pointer-events:auto;border-radius:10px;align-items:center;gap:10px;padding:8px 8px 8px 14px;font-size:13.5px;animation:.16s ease-out pop;display:flex}.toast.ok .icon{color:var(--ok)}.toast span{flex:1}.toast .icon-btn{width:26px;height:26px;color:inherit;opacity:.7}.btn.danger,.btn.ghost.danger{border-color:var(--bad);background:var(--bad);color:#fff}.lifecycle{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.lifecycle li{align-items:center;gap:6px;display:inline-flex}.lifecycle .arrow{color:var(--line-strong)}.lifecycle .side{border-left:1px solid var(--line);margin-left:8px;padding-left:12px}.slots-empty{border-radius:var(--radius-sm);background:var(--warn-soft);color:oklch(from var(--warn) calc(l - .22) c h);padding:10px 12px;font-size:13px}.palette-backdrop{z-index:50;background:oklch(15% .02 var(--hue) / 40%);backdrop-filter:blur(3px);place-items:start center;padding:12vh 16px 16px;animation:.12s ease-out fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.palette{border:1px solid var(--line-strong);background:var(--surface);width:min(620px,100%);box-shadow:0 30px 80px -20px oklch(10% .05 var(--hue) / 50%);border-radius:16px;animation:.14s cubic-bezier(.2,.9,.3,1.2) pop;overflow:hidden}@keyframes pop{0%{opacity:0;transform:scale(.97)translateY(-6px)}}.palette-input{border-bottom:1px solid var(--line);color:var(--text-3);align-items:center;gap:10px;padding:14px 16px;display:flex}.palette-input input:focus-visible,.filter input:focus-visible{box-shadow:none}.palette-input input{color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:16px}.palette ul{max-height:50vh;margin:0;padding:6px;list-style:none;overflow-y:auto}.palette li[role=option]{color:var(--text-2);cursor:pointer;border-radius:9px;grid-template-columns:auto auto 1fr auto;align-items:center;gap:10px;padding:9px 12px;display:grid}.palette li.active{background:var(--accent-soft);color:var(--accent-strong)}.palette-label{color:var(--text);font-weight:600}.palette-hint{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.palette-group{font:600 10px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.palette-empty{text-align:center;color:var(--text-3);padding:20px}.boundary{border:1px dashed var(--line-strong);background:var(--surface);text-align:center;border-radius:18px;justify-items:center;gap:10px;max-width:460px;margin:64px auto;padding:32px;display:grid}.boundary p{color:var(--text-2);margin:0 0 8px}.boundary-glyph{background:var(--accent-soft);width:52px;height:52px;color:var(--accent-strong);border-radius:50%;place-items:center;display:grid}.skeleton-stack{gap:12px;display:grid}.skeleton{border-radius:var(--radius);background:linear-gradient(90deg, var(--sunken) 0%, var(--line) 50%, var(--sunken) 100%) 0 0 / 200% 100%;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (width<=1080px){.grid.two{grid-template-columns:1fr}.setting{grid-template-columns:1fr auto}.cascade{grid-area:2/1/auto/-1}.who-main{display:none}}@media (width<=820px){:root{--rail-w:0px}.shell{grid-template-columns:minmax(0,1fr)}.rail{z-index:20;width:min(300px,86vw);box-shadow:var(--shadow);transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.shell.nav-open .rail{transform:none}.menu-btn{display:inline-grid}.topbar{padding:8px 16px}.search-btn span,.search-btn kbd{display:none}.page{padding:20px 16px 56px}.page-head h1{font-size:23px}.identity,.workspace{grid-template-columns:auto 1fr auto}.identity-grants,.workspace-scope{grid-column:2/-1;justify-content:flex-start;justify-items:start}.identity>.icon,.workspace>.icon{display:none}.gateway-card{padding:22px 18px}.feed-item{grid-template-columns:auto 1fr}.feed-item>.muted{grid-column:2}.meter{grid-template-columns:auto minmax(0,1fr) auto}.meter .spark{grid-column:1/-1}.form-row{grid-template-columns:1fr}.desk-main{grid-template-columns:4.5rem minmax(0,1fr)}.desk-main .status-pill{display:none}.ranked li{grid-template-columns:minmax(0,1fr) 5rem}.ranked .hotspot-bar,.ranked li>:last-child{display:none}.filter input{width:100%}.ledger-entry{grid-template-columns:auto 3rem 1fr}.hashes{grid-column:3;justify-self:start}}.setup{border:1px solid oklch(from var(--accent) l c h / 40%);border-radius:var(--radius);background:linear-gradient(135deg, var(--accent-soft), var(--surface) 60%);padding:18px 20px}.setup header{align-items:center;gap:12px;margin-bottom:12px;display:flex}.setup-bar{background:linear-gradient(to right, var(--accent) var(--w), var(--sunken) var(--w));border-radius:3px;flex:1;height:6px}.setup ol{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.setup li{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);gap:10px;padding:10px 12px;display:flex}.setup li a:hover strong{color:var(--accent-strong)}.setup li .block{font-size:12.5px}.setup li.done{opacity:.65}.setup li.done strong{text-decoration:line-through}.setup-tick{background:var(--accent-soft);width:22px;height:22px;color:var(--accent-strong);border-radius:50%;flex:none;place-items:center;display:grid}.setup-tick .dot{border:2px solid var(--accent);border-radius:50%;width:8px;height:8px}.narrow-form{width:min(440px,100%)}.link-btn{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.link-btn:hover{text-decoration:underline}.switch-mode{color:var(--text-2);margin:16px 0 6px}.signout{color:var(--text-3);align-items:center;gap:6px;margin-top:16px;display:inline-flex}.form input[type=email],.form input[type=password]{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:8px 10px}.choice-pick{border:0;gap:6px;margin:0;padding:0;display:grid}.choice-card{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;gap:2px;padding:10px 12px 10px 38px;display:grid;position:relative}.choice-card input{accent-color:var(--accent);position:absolute;top:12px;left:12px}.choice-card.on{border-color:var(--accent);background:var(--accent-soft)}.more-options>summary{cursor:pointer;color:var(--text-2);font-size:13px;font-weight:600}.more-options[open]>summary{margin-bottom:12px}.tree-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.inline-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-form input[type=text]{min-width:14rem}.scope-leaf{padding-left:22px}.empty-note{color:var(--text-2);margin:0}.create-business{margin-top:18px}.tenant-switch:has(.tenant-logo){grid-template-columns:auto 1fr auto;column-gap:8px}.tenant-switch:has(.tenant-logo) .tenant-name,.tenant-switch:has(.tenant-logo) .tenant-meta{grid-column:2}.tenant-switch:has(.tenant-logo) .icon{grid-column:3}.tenant-logo{object-fit:contain;border-radius:6px;grid-area:1/1/span 2;width:28px;height:28px}.role-editor .perm-list{gap:6px;display:grid}.role-editor .perm-list label{align-items:center;gap:8px;display:flex}.role-editor .perm-list input:disabled+span{color:var(--text-3)}.tenant-logo.preview{border:1px solid var(--line);width:48px;height:48px}.admin-shell{min-height:100vh}.admin-shell>.page{margin:0 auto}.admin-top .spacer{flex:1}.admin-title{letter-spacing:-.01em;font-size:15px}.table tr.admin-expand>td{background:var(--sunken);padding:4px 12px 16px 28px}.admin-businesses{background:var(--surface)}.admin-pager{justify-content:space-between;margin-top:12px}.admin-inline{flex-wrap:nowrap;gap:6px}.admin-inline input{min-width:180px}.admin-form{max-width:760px}.admin-window{align-items:center;gap:10px}.admin-window .pill{font-variant-numeric:tabular-nums}.admin-status{align-items:flex-end;margin-bottom:12px}.admin-status .grow{flex:1}.admin-policy{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.admin-diff{overflow-wrap:anywhere;max-width:420px;font-size:12px}@media (width<=720px){.admin-inline{flex-wrap:wrap}.admin-window .muted{display:none}}.invoice-page{max-width:860px}.invoice-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.invoice-bar .row-actions{flex-wrap:wrap;gap:8px;display:flex}.invoice-doc{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);gap:28px;padding:clamp(20px,5vw,48px);display:grid}.inv-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.inv-logo{object-fit:contain;max-width:160px;max-height:56px;margin-bottom:8px;display:block}.inv-business{font-size:18px;display:block}.inv-title{justify-items:end;gap:6px;display:grid}.inv-title h1{letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:28px}@media (width<=560px){.inv-title{justify-items:start}}.inv-stamp{letter-spacing:.08em;text-transform:uppercase;border:1.5px solid;border-radius:4px;padding:2px 10px;font-size:12px;font-weight:700}.inv-stamp-paid{color:oklch(52% .13 150)}.inv-stamp-open{color:oklch(58% .14 70)}.inv-stamp-void{color:oklch(55% .02 0)}.inv-void .inv-lines,.inv-void .inv-totals{opacity:.55;text-decoration:line-through}.inv-meta{flex-wrap:wrap;justify-content:space-between;gap:20px;display:flex}.inv-meta .eyebrow{margin:0 0 4px}.inv-facts,.inv-totals{grid-template-columns:auto auto;align-content:start;gap:4px 0;margin:0;display:grid}.inv-facts dt,.inv-totals dt{color:var(--text-2);padding-right:24px}.inv-facts dd,.inv-totals dd{text-align:right;margin:0}.inv-totals{justify-self:end;min-width:min(100%,280px)}.inv-totals .inv-total{border-top:1px solid var(--line-strong);color:inherit;padding-top:8px;font-size:17px;font-weight:700}.inv-foot p{margin:0;font-size:13px}@media print{@page{margin:16mm}body:has(.invoice-doc)>:not(:has(.invoice-doc)),body:has(.invoice-doc) :has(.invoice-doc)>:not(:has(.invoice-doc),.invoice-doc){display:none!important}body:has(.invoice-doc),body:has(.invoice-doc) :has(.invoice-doc){background:#fff;max-width:none;min-height:0;margin:0;padding:0;animation:none;display:block}.stage:has(.invoice-doc):before,.stage:has(.invoice-doc):after{display:none}.invoice-doc{color:#000;background:#fff;border:0;padding:0}.invoice-doc .muted,.inv-facts dt,.inv-totals dt{color:#444}.no-print{display:none!important}.inv-lines tr{break-inside:avoid}}.paylink{gap:8px;display:grid}.paylink-url,.copy-field{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.paylink-url input,.copy-field input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-width:0;font-family:var(--mono);flex:16rem;padding:6px 10px;font-size:12.5px}.paylink .hint{margin:0}.paylink-qr{justify-items:start;gap:6px;display:grid}.qr{background:#fff;border-radius:6px;max-width:100%;height:auto;display:block}.claim-actions{margin:10px 0 4px}.claim-list{margin:0;padding:0;list-style:none;display:grid}.claim{border-top:1px solid var(--line);grid-template-columns:auto 1fr;gap:4px 12px;padding:10px 0;display:grid}.claim.stale{box-shadow:inset 3px 0 0 var(--bad);padding-left:10px}.claim-pick input{width:18px;height:18px;margin-top:2px}.claim-main{gap:4px;min-width:0;display:grid}.claim-top,.claim-facts{flex-wrap:wrap;align-items:baseline;gap:4px 14px;font-size:13px;display:flex}.claim-note{margin:0;font-size:13px}.claim-problems{color:oklch(from var(--warn) calc(l - .15) c h);margin:2px 0 0;padding-left:18px;font-size:13px}.ways{border:0;gap:8px;margin:0;padding:0;display:grid}.provider-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:12px;margin-top:12px;display:grid}.provider-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);align-content:start;gap:10px;min-width:0;padding:14px;display:grid}.provider-card.connected{border-color:oklch(from var(--ok) l c h / 45%)}.provider-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.provider-card .hint{margin:0}.provider-facts{grid-template-columns:max-content 1fr;gap:4px 12px;margin:0;font-size:13px;display:grid}.provider-facts dt{color:var(--text-3)}.provider-facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.webhook-step{border:1px dashed var(--line-strong);border-radius:8px;padding:10px 12px}.pay{background:var(--bg);min-height:100vh}.pay-frame{background:var(--bg);min-height:100vh;color:var(--text);align-content:start;gap:14px;padding:16px 12px 40px;display:grid}.pay-frame>*,.pay-frame>.banner{width:min(560px,100%);margin:0 auto}.pay-brand{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:4px 2px;display:grid}.pay-logo,.pay-initial{object-fit:contain;border-radius:10px;width:40px;height:40px}.pay-initial{background:var(--accent);color:var(--accent-ink);place-items:center;font-size:18px;font-weight:700;display:grid}.pay-business{font-size:16px}.pay-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;gap:12px;padding:20px;display:grid}.pay-card>*{margin:0}.pay-center{text-align:center;justify-items:center}.pay>.pay-card{width:min(560px,100% - 24px);margin:16px auto}.pay-glyph{background:var(--accent-soft);width:48px;height:48px;color:var(--accent-strong);border-radius:50%;place-items:center;display:grid}.pay-glyph.ok{background:var(--ok-soft);color:var(--ok)}.pay-glyph.bad{background:var(--bad-soft);color:var(--bad)}.pay-owed h1{gap:2px;margin:0;display:grid}.pay-owed-label{font-size:14px;font-weight:500}.pay-amount{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(32px,9vw,44px);font-weight:750}.pay-h2{font-size:16px}.pay-lines summary{color:var(--text-2);cursor:pointer;font-size:13.5px}.pay-lines ul,.pay-claims{margin:8px 0 0;padding:0;list-style:none;display:grid}.pay-lines li,.pay-claims li{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;font-size:14px;display:flex}.pay-lines .pay-total{font-weight:700}.pay-tabs{border:1px solid var(--line);background:var(--sunken);scrollbar-width:none;border-radius:12px;gap:6px;padding:3px;display:flex;overflow-x:auto}.pay-tabs>button{min-height:40px;color:var(--text-2);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1 0 auto;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:14px;font-weight:600;display:inline-flex}.pay-tabs>[aria-selected=true]{background:var(--surface);color:var(--accent-strong);box-shadow:0 1px 2px oklch(20% .02 var(--hue) / 12%)}.pay-way{gap:12px;display:grid}.pay-way>*{margin:0}.btn.pay-go{justify-content:center;width:100%;min-height:48px;font-size:16px}.pay-qr{text-align:center;justify-items:center;gap:10px;display:grid}.pay-qr>*{margin:0}.pay-qr-code{background:#fff;border-radius:12px;padding:10px}.pay-qr-code img,.pay-more img,.pay-account-qr img{max-width:100%;height:auto;image-rendering:pixelated;display:block}.pay-qr-amount{font-size:22px;font-weight:700}.pay-banner{border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent-strong);justify-content:center;align-items:center;gap:8px;margin:0;padding:10px 14px;font-size:14px;display:flex}.banner.pay-ok{border:1px solid oklch(from var(--ok) l c h / 40%);border-radius:var(--radius-sm);background:var(--ok-soft);padding:10px 14px}.banner ul{margin:6px 0 0;padding-left:18px}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}.pay-code{border:1px dashed var(--accent);background:var(--accent-soft);border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:12px 14px;display:flex}.pay-code strong{letter-spacing:.06em;color:var(--accent-strong);font-size:22px}.pay-code .hint{flex-basis:100%}.pay-account{border:1px solid var(--line);border-radius:12px;gap:8px;padding:12px 14px;display:grid}.pay-account>*{margin:0}.pay-account-qr{justify-items:center;gap:4px;margin:0;display:grid}.pay-dl{grid-template-columns:max-content 1fr;gap:4px 12px;margin:0;font-size:14px;display:grid}.pay-dl dt{color:var(--text-3)}.pay-dl dd{overflow-wrap:anywhere;align-items:center;gap:4px;min-width:0;margin:0;display:flex}.btn.small.pay-copy{padding:2px 6px}.pay-form input,.pay-form select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:44px;padding:8px 10px;font-size:16px}.pay-more summary{color:var(--text-2);cursor:pointer;font-size:13px}.pay-foot{color:var(--text-3);text-align:center;justify-items:center;gap:6px;font-size:12.5px;display:grid}.pay-foot p{margin:0}.pay-powered{align-items:center;gap:6px;display:inline-flex}.pay-powered .mark{width:16px;height:16px}@media (width<=560px){.pay-card{border-radius:14px;padding:16px}.pay .form-row,.provider-facts,.pay-dl{grid-template-columns:1fr}}.owner-home{gap:20px;width:min(1120px,100%);display:grid}.owner-home-head h1{font-size:26px}.gateway-card.wide{width:100%}.business-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.business-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:14px;align-content:start;gap:12px;padding:18px;display:grid}.business-card-head{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid}.business-reasons{gap:4px;margin:0;padding-left:18px;font-size:13px;display:grid}.money-tiles{border-radius:var(--radius);background:var(--sunken);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;padding:10px 12px;display:grid}.money-currency{color:var(--text-3);grid-column:1/-1;font-size:12px}.money-tile{gap:2px;min-width:0;display:grid}.money-tile strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.owner-home-split{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.export-form{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.export-form.compact .form-label{font-size:11px}@media (width<=760px){.owner-home-split{grid-template-columns:minmax(0,1fr)}.money-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
