:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f5f5f7;--surface:#fff;--surface-2:#ececf1;--ink:#1b1a22;--muted:#63616f;--line:#e3e2ea;--accent:#ffc700;--accent-ink:#17161e;--accent-soft:#ffc70029;--focus:#8a6d00;--danger:#c2372e;--ok-bg:#e2f2e7;--ok-fg:#1e6b3c;--warn-bg:#f7ecd4;--warn-fg:#7a5416;--err-bg:#f8e2e0;--err-fg:#96302a;--shadow:0 1px 2px #17161e0f, 0 4px 14px #17161e0d;--side-bg:#17161e;--side-ink:#d8d7de;--side-muted:#9c9aa8;--side-line:#2a2933;--side-active:#26242f}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#131218;--surface:#201f2a;--surface-2:#2a2936;--ink:#f2f2f5;--muted:#9d9caa;--line:#302f3c;--accent:#ffc700;--accent-ink:#17161e;--accent-soft:#ffc70021;--focus:#ffc700;--danger:#d9534a;--ok-bg:#1d3527;--ok-fg:#82c99b;--warn-bg:#37301b;--warn-fg:#d9a84e;--err-bg:#3c2321;--err-fg:#e09088;--shadow:0 1px 2px #0006, 0 4px 14px #00000040;--side-bg:#121118;--side-ink:#d8d7de;--side-line:#242330;--side-active:#201f2a}}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);margin:0;font-family:Rubik,Segoe UI,system-ui,sans-serif;font-size:14.5px;line-height:1.5}.center{place-items:center;min-height:100vh;display:grid}.muted{color:var(--muted)}.error{color:var(--err-fg);font-size:.9rem}.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:16px;width:min(380px,92vw);padding:32px 36px;display:flex}.card h1{letter-spacing:-.015em;margin:0;font-size:1.45rem}.card p{margin:0}.card label{color:var(--muted);flex-direction:column;gap:5px;font-size:.83rem;font-weight:500;display:flex}input,select{background:var(--bg);color:var(--ink);border:1px solid var(--line);font:inherit;border-radius:8px;padding:8px 11px}input:focus,select:focus{outline:2px solid var(--focus);outline-offset:1px;border-color:#0000}input:disabled,select:disabled{background:var(--surface-2);color:var(--muted);cursor:default}input::placeholder{color:var(--muted);opacity:1}button{background:var(--accent);color:var(--accent-ink);font:inherit;cursor:pointer;border:none;border-radius:999px;padding:8px 18px;font-weight:500;transition:filter .12s}button:hover:not(:disabled){filter:brightness(.94)}button:disabled{background:var(--surface-2);color:var(--muted);cursor:default}button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sidebar button:focus-visible{outline-color:#ffc700}button.ghost{color:var(--muted);border:1px solid var(--line);background:0 0;font-weight:400}button.ghost:hover:not(:disabled){color:var(--ink);border-color:var(--muted);filter:none}button.ghost:disabled{color:var(--muted);background:0 0}button.danger{background:var(--danger);color:#fff}.shell{min-height:100vh;display:flex}.sidebar{background:var(--side-bg);width:232px;color:var(--side-ink);flex-direction:column;flex:0 0 232px;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.brand{letter-spacing:.02em;color:#fff;align-items:center;gap:10px;padding:20px 20px 16px;font-size:1.05rem;font-weight:700;display:flex}.brand-sub{color:var(--side-muted);letter-spacing:0;font-weight:400}.brand-mark{background:radial-gradient(circle at 30%,#ff9800 0 42%,#0000 46%),radial-gradient(circle at 68%,#ffc700 0 46%,#0000 50%),#2a2933;border-radius:999px;flex:none;width:26px;height:15px}.sidebar nav{flex-direction:column;flex:1;padding:4px 12px 16px;display:flex}.nav-group{margin-top:14px}.nav-group-label{letter-spacing:.12em;text-transform:uppercase;color:var(--side-muted);padding:0 10px 6px;font-size:.68rem;font-weight:600}.nav-item{color:var(--side-ink);border-radius:8px;margin:1px 0;padding:7px 10px;font-size:.92rem;font-weight:500;text-decoration:none;transition:background .1s;display:block}a.nav-item:hover{background:var(--side-active);color:#fff}a.nav-item.active{background:var(--side-active);color:#ffc700;box-shadow:inset 3px 0 #ffc700}a.nav-item:focus-visible{outline-offset:-2px;outline:2px solid #ffc700}.nav-item.disabled{color:var(--side-muted);cursor:not-allowed}.side-user{border-top:1px solid var(--side-line);flex-direction:column;gap:8px;padding:14px 20px 16px;font-size:.8rem;display:flex}.side-user .who-mail{color:var(--side-ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.side-user .who-role{color:var(--side-muted);text-transform:capitalize}.side-user button{color:var(--side-ink);border:1px solid var(--side-line);background:0 0;padding:6px 12px;font-weight:500}.side-user button:hover{border-color:var(--side-muted);filter:none}.content{flex:1;min-width:0}main{padding:26px 32px 48px}main h2{letter-spacing:-.015em;margin:0 0 4px;font-size:1.3rem}main h3{margin:24px 0 8px;font-size:1.02rem}.who{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;margin-top:10px;font-size:.88rem}th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--line);white-space:nowrap;padding:7px 14px 7px 0;font-size:.7rem;font-weight:600}td{border-bottom:1px solid var(--line);vertical-align:top;padding:9px 14px 9px 0}tbody tr:last-child td{border-bottom:none}table.select-rows tbody tr{cursor:pointer}table.select-rows tbody tr:hover{background:var(--surface)}table.select-rows tbody tr:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}table.select-rows tbody tr.sel{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.chip{letter-spacing:.03em;white-space:nowrap;border-radius:99px;padding:2px 9px;font-size:.72rem;font-weight:600;display:inline-block}.chip-ok{background:var(--ok-bg);color:var(--ok-fg)}.chip-warn{background:var(--warn-bg);color:var(--warn-fg)}.chip-err{background:var(--err-bg);color:var(--err-fg)}.chip-muted{background:var(--surface-2);color:#5d6675}@media (prefers-color-scheme:dark){.chip-muted{color:var(--muted)}}.crud{grid-template-columns:minmax(0,1fr) 400px;align-items:start;gap:24px;display:grid}.crud-list{min-width:0}.crud-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.crud-head h2,.crud-head h3{margin:0}.crud-form{position:sticky;top:20px}.modal-overlay{z-index:40;background:#0f0e148c;justify-content:center;align-items:flex-start;padding:8vh 16px 16px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);color:var(--ink);border-radius:12px;flex-direction:column;gap:10px;width:min(480px,100%);max-height:84vh;padding:18px 20px;display:flex;overflow-y:auto;box-shadow:0 18px 48px #00000059}.form-shell{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;gap:12px;max-height:calc(100vh - 110px);padding:20px 22px;display:flex;overflow-y:auto}.form-shell>.crud-head{z-index:2;background:var(--surface);border-bottom:1px solid var(--line);margin:-20px -22px 0;padding:20px 22px 10px;position:sticky;top:-20px}.form-shell label{color:var(--muted);flex-direction:column;gap:4px;font-size:.8rem;font-weight:500;display:flex}.form-shell .hint{font-size:.73rem;font-weight:400}.form-actions{gap:8px;margin-top:6px;display:flex}.toggle{align-items:center;flex-direction:row!important;gap:8px!important}.form-actions .toggle{display:inline-flex}.toggle input{accent-color:var(--accent)}.refpicker{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.refpicker legend{color:var(--muted);padding:0 4px;font-size:.76rem;font-weight:500}.feed-row{gap:6px;display:flex}.feed-row input,.feed-row select{flex:1;min-width:0}.feed-row button{flex:none}.row3{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;margin:12px 0;padding:16px 20px}.panel h3{margin:0 0 8px}.panel ul{margin:4px 0;padding-left:1.2rem}.panel li{margin:4px 0}@media (width<=900px){.shell{flex-direction:column}.sidebar{flex:none;width:100%;height:auto;position:static}.sidebar nav{flex-flow:wrap;gap:2px 4px;padding:0 12px 10px}.nav-group{flex-wrap:wrap;align-items:center;margin:0;display:flex}.nav-group-label{display:none}.side-user{flex-direction:row;justify-content:space-between;align-items:center;padding:10px 16px}.crud{grid-template-columns:1fr}.crud-form{position:static}main{padding:18px 16px 40px}}
