:root{color-scheme:light;--bg: #f6f7f9;--surface: #ffffff;--surface-2: #eef1f5;--text: #1a1f29;--muted: #5a6474;--border: #d5dae2;--accent: var(--brand-accent, #1f5fbf);--accent-text: #ffffff;--focus: #b35c00;--ok: #1b7a3a;--ok-bg: #e3f4e8;--warn: #8a5a00;--warn-bg: #fdf1d6;--bad: #b3261e;--bad-bg: #fbe5e3;--info: #1f5fbf;--info-bg: #e3edfb;--code-bg: #f0f2f5;--shadow: 0 1px 2px rgb(0 0 0 / .08);--radius: 6px;--font: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, "Cascadia Mono", Consolas, monospace}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #12151b;--surface: #1b2029;--surface-2: #232a35;--text: #e6e9ef;--muted: #9aa4b5;--border: #353e4c;--accent: #6aa5ff;--accent-text: #0b1220;--focus: #ffb454;--ok: #6fd18f;--ok-bg: #173323;--warn: #f2c25b;--warn-bg: #3a2e12;--bad: #ff8a80;--bad-bg: #3d1d1b;--info: #8ab8ff;--info-bg: #1a2a44;--code-bg: #151a22}}:root[data-theme=dark]{color-scheme:dark;--bg: #12151b;--surface: #1b2029;--surface-2: #232a35;--text: #e6e9ef;--muted: #9aa4b5;--border: #353e4c;--accent: #6aa5ff;--accent-text: #0b1220;--focus: #ffb454;--ok: #6fd18f;--ok-bg: #173323;--warn: #f2c25b;--warn-bg: #3a2e12;--bad: #ff8a80;--bad-bg: #3d1d1b;--info: #8ab8ff;--info-bg: #1a2a44;--code-bg: #151a22}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 var(--font)}h1{font-size:1.5rem;margin:0 0 .25rem}h2{font-size:1.15rem;margin:1rem 0 .5rem}h3{font-size:1rem;margin:1rem 0 .4rem}a{color:var(--accent)}code,.mono{font-family:var(--mono);font-size:.92em}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link{position:absolute;left:.5rem;top:-3rem;background:var(--surface);padding:.5rem 1rem;z-index:100}.skip-link:focus{top:.5rem}.muted{color:var(--muted)}.small{font-size:.85rem}.empty{color:var(--muted);padding:1rem 0}button,.button{font:inherit;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);padding:.4rem .9rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.3rem;min-height:2.25rem}button:hover:not(:disabled),.button:hover{background:var(--surface-2)}button:disabled{opacity:.55;cursor:not-allowed}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}button.primary:hover:not(:disabled),.button.primary:hover{filter:brightness(1.08);background:var(--accent)}button.danger{background:var(--bad-bg);color:var(--bad);border-color:var(--bad)}button.small,.button.small{padding:.15rem .55rem;min-height:1.9rem;font-size:.85rem}button.link{border:none;background:none;color:var(--accent);padding:0;min-height:0;text-decoration:underline}button.link.current{font-weight:700;text-decoration:none}button.wide{width:100%;justify-content:center}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.35rem .5rem;max-width:100%}input[type=checkbox],input[type=radio]{width:1.05rem;height:1.05rem;accent-color:var(--accent)}textarea{width:100%}[aria-invalid=true]{border-color:var(--bad);border-width:2px}.shell{display:grid;grid-template-columns:15rem 1fr;grid-template-rows:auto 1fr;grid-template-areas:"top top" "nav main";min-height:100vh}.topbar{grid-area:top;display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.eval-banner{background:#b3261e;color:#fff;padding:.6rem .9rem;border-radius:6px;margin:0 0 1rem;font-size:.95rem}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.brand{white-space:nowrap;display:inline-flex;align-items:center;gap:.5rem;font-weight:700}.brand-large{font-size:1.3rem}.brand-mark{color:var(--accent);font-size:1.3em}.tenant-switcher{display:inline-flex;gap:.4rem;align-items:center}.user{font-size:.9rem}.nav-toggle{display:none}.sidenav{grid-area:nav;background:var(--surface);border-right:1px solid var(--border);padding:.75rem .5rem}.sidenav ul{list-style:none;margin:0;padding:0}.sidenav a{display:flex;gap:.6rem;align-items:center;padding:.45rem .7rem;border-radius:var(--radius);color:var(--text);text-decoration:none}.sidenav a:hover{background:var(--surface-2)}.sidenav a[aria-current=page]{background:var(--info-bg);color:var(--info);font-weight:600;box-shadow:inset 3px 0 0 var(--accent)}.nav-icon{width:1.2rem;text-align:center}.content{grid-area:main;padding:1.25rem 1.5rem 3rem;min-width:0}.content:focus{outline:none}@media(max-width:900px){.shell{grid-template-columns:1fr;grid-template-areas:"top" "main"}.nav-toggle{display:inline-flex}.sidenav{display:none;position:fixed;top:3.2rem;left:0;bottom:0;width:16rem;z-index:20;box-shadow:var(--shadow);overflow-y:auto}.sidenav.open{display:block}.content{padding:1rem}.user{display:none}.topbar{flex-wrap:wrap;gap:.5rem;padding:.4rem .75rem}.topbar-right{gap:.4rem}.tenant-switcher>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.table th,.table td{padding:.4rem .45rem}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.page-header p{margin:0}.actions,.actions-inline,.form-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.actions-inline{margin:.75rem 0}.form-actions{justify-content:flex-end;margin-top:1rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;box-shadow:var(--shadow);margin-bottom:1rem;min-width:0}.card>h2:first-child{margin-top:0}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(22rem,1fr));gap:1rem}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:0 1rem}.split{display:grid;grid-template-columns:12rem 1fr;gap:1.5rem}@media(max-width:700px){.split,.grid-2{grid-template-columns:1fr}}.stack>*+*{margin-top:1rem}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1rem;margin-bottom:1rem}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.8rem 1rem;display:flex;flex-direction:column}.stat-label{color:var(--muted);font-size:.85rem}.stat-value{font-size:1.8rem;font-weight:700}ul.plain{list-style:none;padding:0;margin:.25rem 0}ul.plain li{padding:.2rem 0}.inline-list{list-style:none;display:flex;flex-wrap:wrap;gap:.3rem;padding:0;margin:0}.checklist li{display:flex;gap:.5rem;align-items:center}.checklist.columns{columns:2 14rem}.radio-row{display:flex;gap:1rem;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:.2rem;margin:.5rem 0;min-width:0}.field.checkbox{flex-direction:row;align-items:center;gap:.5rem}.field label{font-weight:600;font-size:.9rem}.field.checkbox label{font-weight:400}.req{color:var(--muted);font-weight:400;font-size:.85em}.hint{color:var(--muted);font-size:.85rem;margin:0}.error-text{color:var(--bad);font-size:.88rem;margin:.15rem 0}.error-list{list-style:none;padding:0;margin:.4rem 0}fieldset{border:1px solid var(--border);border-radius:var(--radius);padding:.5rem 1rem 1rem;margin:.75rem 0;min-width:0}legend{font-weight:600;padding:0 .3rem}.filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;margin-bottom:.75rem}.filters label{display:flex;flex-direction:column;font-size:.85rem;font-weight:600;gap:.15rem}.saved-views{margin-bottom:.75rem}.saved-views summary{cursor:pointer}.clauses{padding-left:1.2rem}.clause{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;margin:.35rem 0}.param-row,.grant-row{border-top:1px solid var(--border);padding-top:.5rem;margin-top:.5rem}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:.5rem 0}.table th,.table td{text-align:left;padding:.5rem .65rem;border-bottom:1px solid var(--border);vertical-align:top}.table th{background:var(--surface-2);font-size:.85rem;font-weight:600}.table.compact th,.table.compact td{padding:.3rem .5rem;font-size:.9rem}.table tr[aria-selected=true] td{background:var(--info-bg)}.row-actions{white-space:nowrap;display:flex;gap:.3rem}.table[aria-busy=true]{opacity:.7}.pager{display:flex;gap:1rem;align-items:center;justify-content:flex-end;margin:.5rem 0}.badge{display:inline-flex;align-items:center;gap:.2rem;border-radius:999px;padding:.05rem .55rem;font-size:.8rem;font-weight:600;border:1px solid currentColor;white-space:nowrap}.badge-ok{color:var(--ok);background:var(--ok-bg)}.badge-warn{color:var(--warn);background:var(--warn-bg)}.badge-bad{color:var(--bad);background:var(--bad-bg)}.badge-info{color:var(--info);background:var(--info-bg)}.badge-neutral{color:var(--muted);background:var(--surface-2)}.notice{border-radius:var(--radius);border:1px solid;border-left-width:5px;padding:.6rem .9rem;margin:.75rem 0}.notice p{margin:.3rem 0}.notice-info{background:var(--info-bg);border-color:var(--info)}.notice-warn{background:var(--warn-bg);border-color:var(--warn)}.notice-success{background:var(--ok-bg);border-color:var(--ok)}.notice-error{background:var(--bad-bg);border-color:var(--bad)}.loading{display:flex;gap:.5rem;align-items:center;color:var(--muted)}.spinner{width:1rem;height:1rem;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}.kv{display:grid;grid-template-columns:minmax(9rem,max-content) 1fr;gap:.25rem 1rem;margin:.5rem 0}.kv>div{display:contents}.kv dt{color:var(--muted);font-size:.88rem}.kv dd{margin:0;overflow-wrap:anywhere}.kv .kv{grid-column:1 / -1}.tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--border);overflow-x:auto;margin-bottom:.75rem}.tabs [role=tab]{border:none;border-bottom:3px solid transparent;border-radius:0;background:none;white-space:nowrap}.tabs [role=tab][aria-selected=true]{border-bottom-color:var(--accent);font-weight:700;color:var(--accent)}.tabpanel:focus-visible{outline-offset:4px}.code{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem;overflow:auto;max-height:32rem;font:.85rem/1.45 var(--mono);white-space:pre}.diff-body div{display:grid;grid-template-columns:3rem 3rem 1.3rem 1fr}.diff-ln{color:var(--muted);text-align:right;padding-right:.5rem;user-select:none}.diff-add{background:var(--ok-bg)}.diff-del{background:var(--bad-bg)}.diff-sign{font-weight:700}.diff-skip{color:var(--muted);font-style:italic;display:block!important}.diff-add-text{color:var(--ok);font-weight:600}.diff-del-text{color:var(--bad);font-weight:600}.flags{padding-left:0;list-style:none}.flags li{margin:.3rem 0}.dialog-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:flex-start;justify-content:center;padding:6vh 1rem;z-index:50;overflow-y:auto}.dialog{background:var(--surface);color:var(--text);border-radius:8px;padding:1.25rem 1.5rem;width:min(40rem,100%);box-shadow:0 10px 30px #0000004d}.dialog h2{margin-top:0}.dialog-footer{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.toasts{position:fixed;bottom:1rem;right:1rem;display:flex;flex-direction:column;gap:.5rem;z-index:60}.toast{background:var(--surface);border:1px solid var(--border);border-left:5px solid var(--info);padding:.6rem .9rem;border-radius:var(--radius);box-shadow:var(--shadow);display:flex;gap:.5rem;align-items:center;max-width:26rem}.toast-success{border-left-color:var(--ok)}.toast-error{border-left-color:var(--bad)}.login,.center-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:2rem;width:min(26rem,100%);box-shadow:var(--shadow)}.login-card h1{font-size:1.25rem;margin:1rem 0}.breakglass{margin-top:1.5rem;border-top:1px solid var(--border);padding-top:1rem}.danger-zone{border-color:var(--bad)}.child-row td{background:var(--surface-2)}.child-row td:nth-child(3){padding-left:1.5rem}tr[aria-current=true] td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.steps{display:flex;gap:1rem;list-style:none;padding:0;margin:0 0 1rem;flex-wrap:wrap}.steps li{padding:.25rem .6rem;border-bottom:3px solid var(--border)}.steps li[aria-current=step]{border-bottom-color:var(--accent)}.ring-list{display:grid;gap:.75rem}.brand-preview{border:2px solid var(--border);border-radius:var(--radius);padding:.75rem;margin:.75rem 0}progress{width:100%;height:.8rem}
