@font-face{font-family:Figtree;src:url(/fonts/Figtree-VariableFont_wght.ttf)format("truetype");font-weight:300 900;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/BarlowCondensed-SemiBold.ttf)format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/BarlowCondensed-Bold.ttf)format("truetype");font-weight:700;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Regular.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Medium.ttf)format("truetype");font-weight:500;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-SemiBold.ttf)format("truetype");font-weight:600;font-display:swap}:root{--font-ui:"Figtree", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-title:"Barlow Condensed", "Figtree", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--sidebar-w:232px;--rail-w:56px;--topbar-h:48px;--row-h:40px;--ctl-h:32px;--radius-ctl:6px;--radius-card:8px;--shadow-float:0 4px 12px #0000001f;--focus:0 0 0 2px var(--bg), 0 0 0 4px var(--info);--tabbar-h:60px}[data-theme=dark]{--shadow-float:0 4px 12px #0006}[data-density=compact]{--row-h:32px}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font:400 13px/1.45 var(--font-ui);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--info);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{box-shadow:var(--focus);border-radius:4px;outline:none}img,svg{display:block}h1,h2,h3,h4{margin:0;font-weight:600}p{margin:0}ul,ol{margin:0;padding:0}table{border-collapse:collapse}hr{border:0;border-top:1px solid var(--line);margin:12px 0}::selection{background:var(--info-soft)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.num{font-variant-numeric:tabular-nums}.muted{color:var(--ink-muted)}.faint{color:var(--ink-faint)}.small{font-size:12px}.tiny{font-size:11px}.strong{font-weight:600}.danger-ink{color:var(--danger-ink)}.caution-ink{color:var(--caution-ink)}.success-ink{color:var(--success)}.info-ink{color:var(--info)}.title{font-family:var(--font-title);font-weight:600}.caps{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-size:11px;font-weight:600}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.row{align-items:center;gap:8px;display:flex}.row-wrap{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.col{flex-direction:column;gap:8px;display:flex}.between{justify-content:space-between;align-items:center;gap:12px;display:flex}.grow{flex:auto;min-width:0}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (max-width:1024px){.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){.grid-2,.grid-3{grid-template-columns:1fr}}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100dvh;display:grid}.shell[data-collapsed=true]{grid-template-columns:var(--rail-w) minmax(0, 1fr)}@media (max-width:1279px){.shell:not([data-pinned=true]){grid-template-columns:var(--rail-w) minmax(0, 1fr)}.shell:not([data-pinned=true]) .sidebar{--collapsed:1}}@media (max-width:767px){.shell{display:block}}.sidebar{border-right:1px solid var(--line);background:var(--bg);flex-direction:column;height:100dvh;padding:10px 8px 12px;display:flex;position:sticky;top:0;overflow:hidden auto}@media (max-width:767px){.sidebar{display:none}}.sidebar .brand{align-items:center;gap:8px;height:32px;margin-bottom:8px;padding:0 6px;display:flex}.brand-word{font:800 20px/1 var(--font-ui);letter-spacing:-.02em}.brand-dot{background:var(--brand-orange);vertical-align:baseline;border-radius:50%;width:.23em;height:.23em;margin-left:.07em;display:inline-block}.tenant-switch{border-radius:var(--radius-ctl);border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;align-items:center;gap:8px;width:100%;margin-bottom:6px;padding:6px;display:flex}.tenant-switch:hover{border-color:var(--line-strong)}.tenant-tile{background:var(--brand-navy);width:28px;height:28px;color:var(--brand-offwhite);font:700 12px/1 var(--font-ui);border-radius:6px;flex:none;place-items:center;display:grid}.nav-group-label{margin:14px 8px 4px}.nav-item{height:32px;color:var(--ink);border-radius:6px;align-items:center;gap:10px;padding:0 8px;font-size:13px;font-weight:500;text-decoration:none;display:flex;position:relative}.nav-item:hover{background:var(--surface-2);text-decoration:none}.nav-item[aria-current=page]{background:var(--surface-2)}.nav-item svg{width:16px;height:16px;color:var(--ink-muted);flex:none}.nav-item .count{margin-left:auto}.sidebar-note{color:var(--ink-muted);margin:12px 8px 0;font-size:11px}.sidebar-foot{flex-direction:column;gap:2px;margin-top:auto;padding-top:12px;display:flex}.shell[data-collapsed=true] .sidebar .label,.shell[data-collapsed=true] .sidebar .nav-group-label,.shell[data-collapsed=true] .sidebar .sidebar-note,.shell[data-collapsed=true] .tenant-switch .label,.shell[data-collapsed=true] .brand-word{display:none}@media (max-width:1279px){.shell:not([data-pinned=true]) .sidebar .label,.shell:not([data-pinned=true]) .sidebar .nav-group-label,.shell:not([data-pinned=true]) .sidebar .sidebar-note,.shell:not([data-pinned=true]) .tenant-switch .label,.shell:not([data-pinned=true]) .brand-word{display:none}}.shell[data-collapsed=true] .nav-item .count{position:absolute;top:2px;right:2px;transform:scale(.8)}.main-col{flex-direction:column;min-width:0;min-height:100dvh;display:flex}.topbar{z-index:20;height:var(--topbar-h);background:var(--bg);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:0 16px 0 20px;display:flex;position:sticky;top:0}.topbar .spacer{flex:1}.clock{font:500 12px/1 var(--font-mono);color:var(--ink-muted);white-space:nowrap}.conn{color:var(--ink-muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}@media (max-width:767px){.topbar{padding:0 12px;padding-top:env(safe-area-inset-top);height:calc(var(--topbar-h) + env(safe-area-inset-top));gap:8px}.topbar .hide-narrow{display:none}}.main{flex:1;min-width:0;padding:20px 24px 32px}.main[data-bleed=true]{padding:0}@media (max-width:767px){.main{padding:12px 12px calc(var(--tabbar-h) + 24px + env(safe-area-inset-bottom))}.main[data-bleed=true]{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom))}}.page{max-width:1600px;margin:0 auto}.page[data-w=detail]{max-width:1280px}.page[data-w=form]{max-width:760px}.page[data-w=field]{max-width:640px}.crumbs{align-items:center;gap:6px;min-width:0;font-size:13px;display:flex}.crumbs a,.crumbs button.crumb{color:var(--ink-muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:4px;padding:2px 4px}.crumbs a:hover,.crumbs button.crumb:hover{color:var(--ink);background:var(--surface-2);text-decoration:none}.crumbs .sep{color:var(--ink-faint)}.crumbs .current{color:var(--ink);font-weight:500}.scope-pill{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:999px;align-items:center;gap:4px;height:24px;padding:0 8px;font-size:12px;display:inline-flex}@media (max-width:1023px){.crumbs .mid{display:none}.crumbs .ellipsis{display:inline}}.crumbs .ellipsis{color:var(--ink-muted);display:none}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.page-title{font:600 26px/32px var(--font-title);letter-spacing:.005em;flex-wrap:wrap;align-items:center;gap:10px;display:flex}.page-sub{color:var(--ink-muted);margin-top:2px;font-size:13px}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (max-width:767px){.page-title{font-size:24px;line-height:28px}.page-head{margin-bottom:12px}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);min-width:0}.card-head{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-height:40px;padding:8px 14px;display:flex}.card-head h2,.card-head h3{font-size:14px;font-weight:600}.card-head .meta{color:var(--ink-muted);font-size:13px}.card-head .end{align-items:center;gap:8px;margin-left:auto;display:flex}.card-body{padding:12px 14px}.card-body.flush{padding:0}.card+.card,.stack>*+*{margin-top:16px}.stack-12>*+*{margin-top:12px}.empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:160px;padding:24px;display:flex}.empty .e-title{font-size:14px;font-weight:500}.empty .e-line{color:var(--ink-muted);max-width:420px;font-size:13px}.empty .btn{margin-top:10px}.notice{border-radius:var(--radius-card);border:1px solid var(--line);background:var(--surface);align-items:flex-start;gap:10px;padding:10px 12px;font-size:13px;display:flex}.notice[data-tone=info]{background:var(--info-soft);border-color:#0000}.notice[data-tone=caution]{background:var(--caution-soft);border-color:var(--caution-ink)}.notice[data-tone=danger]{background:var(--danger-soft);border-color:var(--danger-ink)}.notice[data-tone=success]{background:var(--success-soft);border-color:#0000}.notice .n-title{font-weight:600}.kv{grid-template-columns:minmax(110px,max-content) 1fr;gap:6px 16px;font-size:13px;display:grid}.kv dt{color:var(--ink-muted)}.kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.btn{height:var(--ctl-h);border-radius:var(--radius-ctl);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn svg{width:16px;height:16px}.btn-primary{background:var(--orange);color:var(--on-orange);border-color:var(--orange);font-weight:600}.btn-primary:hover{background:var(--orange);filter:brightness(1.05)}.btn-strong{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn-strong:hover{background:var(--ink);opacity:.9}.btn-danger{color:var(--danger-ink);border-color:var(--danger-ink)}.btn-danger:hover{background:var(--danger-soft)}.btn-danger-fill{background:var(--danger);color:var(--on-danger);border-color:var(--danger);font-weight:600}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-2)}.btn-sm{height:28px;padding:0 10px;font-size:12px}.btn-lg{height:44px;padding:0 18px;font-size:15px}.btn-xl{border-radius:12px;height:56px;padding:0 22px;font-size:17px}.btn-block{width:100%}.icon-btn{border-radius:var(--radius-ctl);cursor:pointer;width:32px;height:32px;color:var(--ink-muted);background:0 0;border:1px solid #0000;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--surface-2);color:var(--ink)}.icon-btn svg{width:16px;height:16px}.search-btn{border:1px solid var(--line-strong);border-radius:var(--radius-ctl);background:var(--surface);min-width:220px;height:32px;color:var(--ink-muted);cursor:pointer;align-items:center;gap:8px;padding:0 10px;display:inline-flex}.search-btn kbd{margin-left:auto}@media (max-width:1023px){.search-btn{min-width:0}.search-btn .label,.search-btn kbd{display:none}}kbd{font:500 11px/1 var(--font-mono);border:1px solid var(--line);background:var(--surface-2);color:var(--ink-muted);border-radius:4px;padding:3px 5px}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field>label,.field .label{color:var(--ink-muted);font-size:12px;font-weight:500}.field .hint{color:var(--ink-muted);font-size:12px}.field .error{color:var(--danger-ink);font-size:12px}.input,.select,.textarea{height:var(--ctl-h);border-radius:var(--radius-ctl);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);width:100%;min-width:0;padding:0 10px}.textarea{resize:vertical;height:auto;min-height:72px;padding:8px 10px}.select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink-muted) 50%), linear-gradient(135deg, var(--ink-muted) 50%, transparent 50%);background-position:calc(100% - 14px),calc(100% - 9px);background-repeat:no-repeat;background-size:5px 5px;padding-right:28px}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger-ink)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{box-shadow:var(--focus)}.input-lg{height:44px;font-size:15px}.check{cursor:pointer;align-items:flex-start;gap:8px;font-size:13px;display:inline-flex}.check input{width:16px;height:16px;accent-color:var(--ink);flex:none;margin:1px 0 0}.switch{flex:none;width:34px;height:20px;display:inline-flex;position:relative}.switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch span{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:999px;width:100%;height:100%;transition:background .15s}.switch span:after{content:"";background:var(--ink-muted);border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:3px;left:3px}.switch input:checked+span{background:var(--ink);border-color:var(--ink)}.switch input:checked+span:after{background:var(--bg);transform:translate(14px)}.switch input:focus-visible+span{box-shadow:var(--focus)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}@media (max-width:767px){.form-grid{grid-template-columns:1fr}}.form-grid .span-2{grid-column:1/-1}.form-section{border-bottom:1px solid var(--line);padding:16px 0}.form-section:last-child{border-bottom:0}.form-section h3{font-size:14px;font-weight:600}.form-section .help{color:var(--ink-muted);margin:2px 0 12px;font-size:13px}.save-bar{z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);justify-content:flex-end;align-items:center;gap:8px;margin-top:16px;padding:10px 14px;display:flex;position:sticky;bottom:0}@media (max-width:767px){.save-bar{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom))}}.chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;white-space:nowrap;height:28px;color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;display:inline-flex}.chip:hover{background:var(--surface-2)}.chip:focus-within{box-shadow:var(--focus)}.chip[aria-pressed=true],.chip[data-on=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chip select{cursor:pointer;color:inherit;background:0 0;border:0;padding:0;font-size:12px}.tag{border:1px solid var(--line-strong);white-space:nowrap;height:22px;color:var(--ink);background:0 0;border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-size:12px;display:inline-flex}.tag[data-tone=dashed]{border-style:dashed}.badge{min-width:20px;height:20px;font:600 11px/1 var(--font-mono);background:var(--surface-2);color:var(--ink);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;display:inline-flex}.badge[data-tone=danger]{border:1px solid var(--danger-ink);color:var(--danger-ink);background:0 0;gap:3px}.seg{border:1px solid var(--line-strong);border-radius:var(--radius-ctl);background:var(--surface);display:inline-flex;overflow:hidden}.seg button{cursor:pointer;height:28px;color:var(--ink-muted);border:0;border-right:1px solid var(--line);background:0 0;padding:0 10px;font-size:12px;font-weight:500}.seg button:last-child{border-right:0}.seg button[aria-pressed=true]{background:var(--surface-2);color:var(--ink);box-shadow:inset 0 -2px 0 var(--orange)}.seg button:disabled{opacity:.5;cursor:not-allowed}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:4px;margin-bottom:16px;display:flex;overflow-x:auto}.tabs a,.tabs button{height:38px;color:var(--ink-muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:0 10px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.tabs a:hover,.tabs button:hover{color:var(--ink);text-decoration:none}.tabs [aria-selected=true],.tabs [aria-current=page]{color:var(--ink);border-bottom-color:var(--orange)}.tabs .count{font:500 11px/1 var(--font-mono);color:var(--ink-muted)}.table-wrap{overflow-x:auto}.table{width:100%;font-size:13px}.table th{text-align:left;height:32px;color:var(--ink-muted);border-bottom:1px solid var(--line);white-space:nowrap;background:var(--surface);padding:0 10px;font-size:12px;font-weight:500;position:sticky;top:0}.table td{height:var(--row-h);border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap;padding:0 10px}.table th:first-child,.table td:first-child{padding-left:14px}.table th:last-child,.table td:last-child{padding-right:14px}.table td.wrap{white-space:normal;padding-top:6px;padding-bottom:6px}.table .r{text-align:right;font-variant-numeric:tabular-nums}.table tbody tr:hover,.table tbody tr[aria-selected=true]{background:var(--surface-2)}.table tbody tr[data-href]{cursor:pointer}.table tbody tr[data-alert=true]{background:var(--surface-2)}.table tr.group td{background:var(--bg);text-transform:uppercase;letter-spacing:.06em;height:28px;color:var(--ink-muted);font-size:11px;font-weight:600}.table tbody tr:last-child td{border-bottom:0}.table-foot{border-top:1px solid var(--line);color:var(--ink-muted);justify-content:space-between;align-items:center;padding:8px 14px;font-size:12px;display:flex}.list-rows>*{border-bottom:1px solid var(--line);min-height:64px;color:var(--ink);align-items:center;gap:10px;padding:10px 14px;text-decoration:none;display:flex}.list-rows>:last-child{border-bottom:0}.list-rows>a:hover,.list-rows>button:hover{background:var(--surface-2);text-decoration:none}.list-rows>button{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border-width:0 0 1px}ul.list-rows{list-style:none}.list-rows .l-main{flex:1;min-width:0}.list-rows .l-title{align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:600;display:flex}.list-rows .l-sub{color:var(--ink-muted);margin-top:2px;font-size:12.5px}.list-rows .l-end{text-align:right;font:500 12px/1.3 var(--font-mono);color:var(--ink-muted);white-space:nowrap}.dot{vertical-align:middle;flex:none;width:8px;height:8px;display:inline-block}.dot[data-shape=diamond]{background:var(--danger);transform:rotate(45deg)scale(.85)}.dot[data-shape=triangle]{background:var(--caution);clip-path:polygon(50% 0,100% 100%,0 100%);width:11px;height:10px;filter:drop-shadow(0 0 0 var(--caution-ink));position:relative}.dot[data-shape=triangle]:before{content:"";background:var(--caution-ink);clip-path:polygon(50% 0,100% 100%,0 100%,0 100%,12% 88%,88% 88%,50% 16%,12% 88%,0 100%);position:absolute;inset:0}.dot[data-shape=circle]{background:var(--success);border-radius:50%}.dot[data-shape=ring]{border:2px solid var(--info);border-radius:50%}.dot[data-shape=ring-muted]{border:2px solid var(--ink-muted);border-radius:50%}.dot[data-shape=dashed]{border:2px dashed var(--info);border-radius:50%;width:10px;height:10px}.status{white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:inline-flex}.status[data-tone=danger]{color:var(--danger-ink);font-weight:600}.status-lg{font-size:14px;font-weight:600}.status-lg .dot{width:10px;height:10px}.hz{margin:0}.hz+.hz{margin-top:12px}.hz-body .hz-text{margin-top:6px;font-size:14px}.hz-body .hz-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.hz-compact{--hz-bw:4px;--hz-r:12px}.hz-compact .hz-body{padding:10px 12px}.hz-rows>*+*{border-top:1px solid var(--line)}.hz-row{flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;display:flex}.hz-row .grow{min-width:200px}.banner-slot{padding:10px 24px 0}@media (max-width:767px){.banner-slot{padding:8px 12px 0}}.alert-banner{--hz-bw:4px;--hz-r:12px}.alert-banner .hz-body{cursor:pointer;align-items:center;gap:12px;padding:8px 10px 8px 12px;display:flex}.alert-banner .ab-text{flex:1;min-width:0}.alert-banner .ab-title{color:var(--danger-ink);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.alert-banner .ab-sub{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.alert-banner .ab-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}@media (max-width:767px){.alert-banner .hz-body{flex-wrap:wrap}.alert-banner .ab-actions{justify-content:flex-start;width:100%}.alert-banner .ab-sub{white-space:normal}}.alert-chip{border:1.5px solid var(--danger-ink);height:28px;color:var(--danger-ink);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.alert-chip .cd{background:var(--danger-ink);height:2px;transition:width 1s linear;position:absolute;bottom:0;left:0}.alert-chip .cd-text{font-weight:500;display:none}@media (prefers-reduced-motion:reduce){.alert-chip .cd{display:none}.alert-chip .cd-text{display:inline}}.al-rows{list-style:none}.al-rows li{border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:12px 16px;display:flex}.al-rows li[data-locked=true]{box-shadow:inset 0 0 0 2px var(--danger-ink);border-bottom:0;border-radius:8px;margin:6px 8px}.al-rows .al-main{flex-direction:column;gap:3px;width:100%;display:flex}.al-rows .al-main:hover{text-decoration:none}.al-resolved summary{cursor:pointer;padding:12px 16px}.diamond{background:currentColor;flex:none;width:9px;height:9px;display:inline-block;transform:rotate(45deg)}.scrim{z-index:60;background:#0f172059;position:fixed;inset:0}.panel-right{z-index:61;background:var(--surface);border-left:1px solid var(--line);width:min(400px,100vw);box-shadow:var(--shadow-float);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.panel-right .p-head{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:14px 16px;display:flex}.panel-right .p-body{flex:1;overflow-y:auto}.panel-right .p-foot{border-top:1px solid var(--line);color:var(--ink-muted);padding:10px 16px;font-size:12px}@media (max-width:767px){.panel-right{border-left:0;border-top:1px solid var(--line);width:100%;max-height:85dvh;padding-bottom:env(safe-area-inset-bottom);border-radius:16px 16px 0 0;top:auto;left:0}.panel-right:before{content:"";background:var(--line-strong);border-radius:3px;width:36px;height:5px;margin:8px auto 0;display:block}}dialog.dialog{border:1px solid var(--line);background:var(--surface);width:min(520px,100vw - 24px);color:var(--ink);box-shadow:var(--shadow-float);border-radius:12px;padding:0}dialog.dialog[data-size=lg]{width:min(760px,100vw - 24px)}dialog.dialog::backdrop{background:#0f172073}.dialog .d-head{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:14px 16px;display:flex}.dialog .d-head h2{font:600 20px/1.2 var(--font-title)}.dialog .d-body{max-height:70dvh;padding:16px;overflow-y:auto}.dialog .d-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}@media (max-width:767px){dialog.dialog{border-radius:16px 16px 0 0;width:100vw;max-width:100vw;margin:auto 0 0}.dialog .d-foot .btn{flex:1;height:48px}}.menu{z-index:70;background:var(--surface);border:1px solid var(--line);min-width:200px;box-shadow:var(--shadow-float);border-radius:8px;padding:4px;position:absolute}.menu button,.menu a{cursor:pointer;text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:7px 10px;font-size:13px;text-decoration:none;display:flex}.menu button:hover,.menu a:hover,.menu [data-active=true]{background:var(--surface-2);text-decoration:none}.menu .m-label{padding:6px 10px 2px}.menu hr{margin:4px 0}.toasts{z-index:90;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}@media (max-width:767px){.toasts{bottom:calc(var(--tabbar-h) + 12px + env(safe-area-inset-bottom));width:calc(100vw - 24px)}}.toast{pointer-events:auto;background:var(--ink);min-height:40px;color:var(--bg);box-shadow:var(--shadow-float);border-radius:10px;align-items:center;gap:10px;max-width:560px;padding:8px 8px 8px 14px;font-size:13px;display:flex}.toast[data-tone=danger]{background:var(--danger);color:var(--on-danger)}.toast .btn{color:inherit;background:0 0;border-color:currentColor}.toast .icon-btn{color:inherit}.cmdk{z-index:80;background:var(--surface);border:1px solid var(--line);width:min(640px,100vw - 24px);box-shadow:var(--shadow-float);border-radius:12px;position:fixed;top:12vh;left:50%;overflow:hidden;transform:translate(-50%)}.cmdk input{border:0;border-bottom:1px solid var(--line);background:0 0;outline:none;width:100%;height:48px;padding:0 16px;font-size:15px}.cmdk .results{max-height:56vh;padding:6px;overflow-y:auto}.cmdk .group{padding:8px 10px 4px}.cmdk .item{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:8px 10px;display:flex}.cmdk .item[data-active=true]{background:var(--surface-2)}.cmdk .item .end{color:var(--ink-muted);margin-left:auto;font-size:12px}.tabbar{display:none}@media (max-width:767px){.tabbar{z-index:40;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--line);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{color:var(--ink-muted);flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:44px;font-size:11px;font-weight:500;text-decoration:none;display:flex;position:relative}.tabbar a svg{width:22px;height:22px}.tabbar a[aria-current=page]{color:var(--ink)}.tabbar a[aria-current=page]:before{content:"";background:var(--orange);border-radius:0 0 3px 3px;height:3px;position:absolute;top:0;left:25%;right:25%}.tabbar .badge{min-width:16px;height:16px;padding:0 4px;font-size:10px;position:absolute;top:4px;left:calc(50% + 6px)}}.sos-btn{background:var(--danger);height:32px;color:var(--on-danger);font:700 13px/1 var(--font-ui);letter-spacing:.06em;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.sos-btn:hover{filter:brightness(1.08)}.swipe{background:var(--surface-2);border:2px solid var(--line-strong);touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:999px;height:64px;position:relative;overflow:hidden}.swipe .fill{background:var(--orange-soft);border-radius:999px;position:absolute;inset:0 auto 0 0}.swipe .label{color:var(--ink);pointer-events:none;text-align:center;justify-content:center;align-items:center;font-size:17px;font-weight:600;display:flex;position:absolute;top:0;bottom:0;right:16px}.swipe .thumb{background:var(--orange);width:60px;height:60px;color:var(--on-orange);cursor:grab;touch-action:none;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:0;box-shadow:0 1px 3px #0003}.swipe .thumb:active{cursor:grabbing}.swipe .thumb svg{width:26px;height:26px}.swipe[data-tone=danger]{background:repeating-linear-gradient(45deg, var(--hz-danger-red) 0 8px, var(--hz-danger-white) 8px 16px);border:0;padding:0}.swipe[data-tone=danger] .track-inner{background:var(--surface);border-radius:999px;position:absolute;inset:4px}.swipe[data-tone=danger] .thumb{background:var(--danger);color:var(--on-danger);top:2px;left:2px}.swipe[data-tone=danger] .fill{background:var(--danger-soft);inset:4px auto 4px 4px}.swipe[data-state=done] .thumb{background:var(--success);color:#fff}.swipe .ring{pointer-events:none;border-radius:50%;position:absolute;inset:-4px}.swipe-alt{text-align:center;margin-top:8px}.swipe-alt button{color:var(--info);cursor:pointer;background:0 0;border:0;min-height:44px;padding:8px;font-size:14px}.vcard{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:10px;padding:16px;display:flex}.vcard .v-cap{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-size:12px;font-weight:500}.vcard .v-colour{align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.vcard .swatch{border:2px solid var(--line-strong);border-radius:50%;flex:none;width:24px;height:24px}.vcard .v-type{margin-left:auto}.vcard .v-model{font:700 34px/1.05 var(--font-title)}.vcard .v-model .yr{color:var(--ink-muted)}.vcard .v-plate{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.plate{color:#111;font:600 36px/1 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;background:#fff;border:3px solid #111;border-radius:4px;padding:6px 14px;display:inline-block}.plate-sm{letter-spacing:.04em;border-width:1.5px;border-radius:3px;padding:1px 6px;font-size:12px}.plate-region{font:600 16px/1 var(--font-mono);color:var(--ink-muted)}.vcard .v-sms{font:500 13px/1.4 var(--font-mono);background:var(--surface-2);overflow-wrap:anywhere;border-radius:6px;padding:8px 10px}.vcard .v-actions{flex-wrap:wrap;gap:8px;display:flex}.vcard[data-compact=true] .v-model{font-size:24px}.vcard[data-compact=true] .plate{border-width:2px;padding:4px 10px;font-size:22px}.combo{position:relative}.combo .listbox{z-index:30;background:var(--surface);border:1px solid var(--line);max-height:300px;box-shadow:var(--shadow-float);border-radius:8px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.combo [role=option]{cursor:pointer;border-radius:6px;flex-direction:column;padding:7px 10px;display:flex}.combo [role=option][aria-selected=true],.combo [role=option][data-active=true]{background:var(--surface-2)}.combo [role=option] .o-sub{color:var(--ink-muted);font-size:12px}.combo .divider{background:var(--line);height:1px;margin:4px 0}.kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;display:grid}@media (max-width:1279px){.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:767px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);min-width:0;padding:10px 12px}.kpi .k-label{color:var(--ink-muted);font-size:12px}.kpi .k-value{font:600 28px/34px var(--font-title);font-variant-numeric:tabular-nums}.kpi .k-sub{color:var(--ink-muted);font-size:12px}.kpi svg{width:100%;height:26px;margin-top:4px}.chart{width:100%;height:220px}.chart text{font:400 11px var(--font-mono);fill:var(--ink-muted)}.chart .grid line{stroke:var(--line);stroke-dasharray:3 3}.chart .series{fill:none;stroke:var(--info);stroke-width:2px}.chart .area{fill:var(--info);opacity:.12}.chart .target{stroke:var(--ink-muted);stroke-dasharray:4 4}.chart .bar{fill:var(--ink-muted)}.chart .bar-info{fill:var(--info)}.heat{font:400 10px var(--font-mono);color:var(--ink-muted);grid-template-columns:36px repeat(24,minmax(0,1fr));gap:2px;display:grid}.heat .cell{background:var(--info);border-radius:2px;height:16px}.riskbar{background:var(--surface-2);vertical-align:middle;border-radius:3px;width:60px;height:6px;display:inline-block;overflow:hidden}.riskbar span{background:var(--ink-muted);height:100%;display:block}.riskbar[data-band=elevated] span,.riskbar[data-band=high] span{background:var(--caution)}.riskbar[data-band=extreme] span{background:var(--danger)}.meter{background:var(--surface-2);border-radius:4px;height:8px;overflow:hidden}.meter span{background:var(--orange);height:100%;display:block}.map-frame{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--map-land);min-height:240px;position:relative;overflow:hidden}.map-frame[data-bleed=true]{border:0;border-radius:0}.map-canvas{position:absolute;inset:0}.map-credit{z-index:5;background:color-mix(in srgb, var(--surface) 88%, transparent);max-width:100%;color:var(--ink-muted);cursor:pointer;text-align:right;white-space:nowrap;text-overflow:ellipsis;border:0;border-top-left-radius:6px;padding:2px 8px;font-size:11px;position:absolute;bottom:0;right:0;overflow:hidden}.map-credit .date{font-family:var(--font-mono)}.map-ctrls{z-index:5;flex-direction:column;gap:6px;display:flex;position:absolute;top:10px;right:10px}.map-ctrls .icon-btn{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-float)}.map-legend{z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;gap:12px;max-width:calc(100% - 20px);padding:6px 10px;font-size:12px;display:flex;position:absolute;bottom:26px;left:10px}.map-legend span{align-items:center;gap:6px;display:inline-flex}.layers-btn{z-index:6;position:absolute;top:10px;left:10px}.layer-panel{z-index:7;background:var(--surface);border:1px solid var(--line);width:304px;max-height:calc(100% - 44px);box-shadow:var(--shadow-float);border-radius:10px;font-size:13px;position:absolute;top:10px;left:10px;overflow-y:auto}@media (max-width:767px){.layer-panel{border-radius:16px 16px 0 0;width:100%;max-height:70%;inset:auto 0 0}}.layer-panel .lp-head{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:10px 12px;display:flex}.layer-panel .lp-sec{border-bottom:1px solid var(--line);padding:10px 12px}.layer-panel .lp-group summary{cursor:pointer;align-items:center;gap:8px;padding:8px 12px;font-weight:600;list-style:none;display:flex}.layer-panel .lp-group summary::-webkit-details-marker{display:none}.layer-panel .lp-layer{align-items:flex-start;gap:10px;padding:6px 12px 6px 28px;display:flex}.layer-panel .lp-layer .sw{border-radius:2px;flex:none;width:14px;height:10px;margin-top:4px}.layer-panel .lp-layer .age{color:var(--ink-muted);font-size:11.5px}.map-chip{font:500 11px/1 var(--font-mono);background:var(--surface);color:var(--ink);border:1px solid var(--line);white-space:nowrap;border-radius:4px;padding:3px 5px}.marker{cursor:pointer;width:16px;height:16px}.marker .shape{width:14px;height:14px;box-shadow:0 0 0 2px var(--surface)}.marker[data-group=overdue] .shape{background:var(--danger);transform:rotate(45deg)scale(.85)}.marker[data-group=at_risk] .shape{background:var(--caution);clip-path:polygon(50% 0,100% 100%,0 100%);box-shadow:none;outline:1px solid var(--caution-ink)}.marker[data-group=on_track] .shape{background:var(--success);border-radius:50%}.marker[data-group=dead_zone] .shape{border:2px dashed var(--info);background:var(--surface);border-radius:50%}.marker-wrap{flex-direction:column;align-items:center;gap:3px;display:flex}.marker-btn{cursor:pointer;background:0 0;border:0;padding:0}.marker-btn[data-selected=true] .map-chip{background:var(--ink);color:var(--bg);border-color:var(--ink)}.marker-btn:focus-visible{box-shadow:var(--focus);border-radius:4px}.map-stop{background:var(--surface);border:2px solid var(--ink);width:18px;height:18px;font:600 10px/1 var(--font-mono);color:var(--ink);border-radius:50%;place-items:center;display:grid}.map-stop[data-kind=waypoint]{border-width:2px;width:10px;height:10px}.map-stop[data-kind=origin]{background:var(--ink)}.map-stop[data-kind=destination]{background:var(--ink);border-radius:3px}.linkish{color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0}.linkish:hover{text-decoration:underline}.linkish:disabled{color:var(--ink-muted);cursor:default;text-decoration:none}.maplibregl-canvas:focus-visible{box-shadow:inset 0 0 0 2px var(--info);outline:none}.two-col{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.two-col-wide{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:16px;display:grid}@media (max-width:1100px){.two-col,.two-col-wide{grid-template-columns:1fr}}.split-queue{grid-template-columns:340px minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (max-width:1023px){.split-queue{grid-template-columns:1fr}.split-queue[data-detail=true]>:first-child,.split-queue[data-detail=false]>:last-child{display:none}}@media (min-width:1024px){.hide-wide{display:none!important}}.live-map{height:calc(100dvh - var(--topbar-h));grid-template-columns:300px minmax(0,1fr) 312px;display:grid}.live-map[data-drawer=false]{grid-template-columns:300px minmax(0,1fr)}.live-map .lm-list{border-right:1px solid var(--line);background:var(--surface);overflow-y:auto}.live-map .lm-drawer{border-left:1px solid var(--line);background:var(--surface);padding:12px;overflow-y:auto}.live-map .map-frame{border:0;border-radius:0;min-height:0}@media (max-width:1100px){.live-map,.live-map[data-drawer=false]{grid-template-columns:minmax(0,1fr)}.live-map .lm-list{display:none}.live-map .lm-drawer{z-index:8;border-left:0;border-top:1px solid var(--line);max-height:55%;box-shadow:var(--shadow-float);border-radius:16px 16px 0 0;position:absolute;bottom:0;left:0;right:0}}@media (max-width:767px){.live-map{height:calc(100dvh - var(--topbar-h) - var(--tabbar-h) - env(safe-area-inset-bottom) - env(safe-area-inset-top));position:relative}}.settings-layout{grid-template-columns:200px minmax(0,760px);align-items:start;gap:24px;display:grid}.settings-nav{top:calc(var(--topbar-h) + 20px);flex-direction:column;gap:2px;display:flex;position:sticky}@media (max-width:900px){.settings-layout{grid-template-columns:1fr}.settings-nav{flex-direction:row;position:static;overflow-x:auto}.settings-nav .nav-item{white-space:nowrap}}.avatar{background:var(--surface-2);width:28px;height:28px;color:var(--ink);font:600 11px/1 var(--font-mono);border-radius:50%;flex:none;place-items:center;display:inline-grid}.swatch-sm{border:1.5px solid var(--line-strong);border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);color:var(--ink);flex-direction:column;gap:8px;min-width:0;padding:14px;text-decoration:none;display:flex}a.tile:hover{border-color:var(--line-strong);text-decoration:none}.tile .t-head{align-items:center;gap:10px;display:flex}.tile .t-name{font-weight:600}.builder-item{border-bottom:1px solid var(--line);grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px 0;display:grid}.builder-item:last-child{border-bottom:0}.builder-item .handle{flex-direction:column;gap:2px;padding-top:6px;display:flex}.rank-row{border-bottom:1px solid var(--line);grid-template-columns:32px minmax(0,200px) minmax(0,1fr) 72px 72px;align-items:center;gap:10px;padding:8px 14px;font-size:13px;display:grid}.rank-row:last-child{border-bottom:0}.rank-row .bar{background:var(--surface-2);border-radius:3px;height:8px;overflow:hidden}.rank-row .bar span{background:var(--ink-muted);height:100%;display:block}.rank-row[data-low=true]{color:var(--ink-muted)}.code-block{font:500 12px/1.5 var(--font-mono);background:var(--surface-2);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:6px;padding:10px 12px;overflow-x:auto}.field-screen{font-size:15px}.field-screen .card-head h2{font-size:16px}.field-screen .btn{min-height:44px;font-size:15px}.field-title{font:700 28px/1.1 var(--font-title)}.data-xl{font:600 3.5rem/1 var(--font-mono);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.data-lg{font:600 2rem/1 var(--font-mono);font-variant-numeric:tabular-nums}.checkin-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px}.checkin-card[data-state=due_soon]{border-color:var(--caution-ink)}.checkin-card[data-state=due_now]{border:2px solid var(--ink)}.checkin-card .ci-label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:500}.ci-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.ci-actions .btn{border-radius:12px;height:56px;font-size:17px}.check-item{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:56px;padding:12px 0;display:flex}.check-item:last-child{border-bottom:0}.yesno{border:1px solid var(--line-strong);border-radius:10px;flex:none;display:inline-flex;overflow:hidden}.yesno button{background:var(--surface);cursor:pointer;border:0;min-width:64px;height:44px;font-size:15px;font-weight:600}.yesno button+button{border-left:1px solid var(--line)}.yesno button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.skeleton{background:linear-gradient(90deg, var(--surface-2) 0, var(--line) 50%, var(--surface-2) 100%);background-size:200% 100%;border-radius:6px;animation:1.4s ease-in-out infinite sk}@keyframes sk{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.spinner{border:2px solid var(--line);border-top-color:var(--ink-muted);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.offline-bar{background:var(--caution-soft);color:var(--ink);border-bottom:1px solid var(--caution-ink);align-items:center;gap:8px;padding:6px 24px;font-size:12.5px;display:flex}.timeline{list-style:none}.timeline li{border-bottom:1px solid var(--line);grid-template-columns:92px 16px minmax(0,1fr);gap:8px;padding:8px 0;font-size:13px;display:grid}.timeline li:last-child{border-bottom:0}.timeline .t-time{font:500 12px/1.4 var(--font-mono);color:var(--ink-muted)}.timeline .t-dot{padding-top:5px}.timeline .t-sub{color:var(--ink-muted);font-size:12px}.tiers{list-style:none}.tiers li{border-bottom:1px solid var(--line);padding:10px 0}.tiers li:last-child{border-bottom:0}.steps{counter-reset:step;list-style:none}.steps li{counter-increment:step;border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:8px 0;display:flex}.steps li:before{content:counter(step);background:var(--surface-2);width:22px;height:22px;font:600 11px/1 var(--font-mono);border-radius:50%;flex:none;place-items:center;display:grid}.auth-page{place-items:center;min-height:100dvh;padding:24px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:14px;width:min(420px,100%);padding:28px 24px;display:flex}.auth-card .brand{align-items:center;gap:10px;display:flex}.auth-card .brand-word{font-size:26px}@media print{.sidebar,.topbar,.tabbar,.banner-slot,.toasts,.page-actions{display:none!important}.shell{display:block}.main{padding:0}}@media (forced-colors:active){.dot{forced-color-adjust:none}.btn-primary{border:2px solid buttontext}}
