:root{--accent:oklch(.6 .2 22);--accent-strong:oklch(.56 .19 22);--accent-deep:oklch(.5 .18 22);--accent-soft:oklch(.95 .025 22);--accent-border:oklch(.85 .09 22);--warn:oklch(.62 .15 55);--ok-text:#2f7d51;--ok-bg:#e3f3e9;--info-text:#1f5f9e;--info-bg:#e4eefa;--sidebar-bg:#15171e;--mono:ui-monospace,Menlo,monospace}#__nuxt,body,html{min-height:100vh}body{background:var(--bg,#f2f3f6);color:var(--text,#17191f);font-family:Golos Text,Segoe UI,system-ui,sans-serif;font-optical-sizing:auto;margin:0;-webkit-font-smoothing:antialiased}.app{--bg:#f2f3f6;--surface:#fff;--surface-2:#f2f3f5;--border:#eef0f3;--border-2:#e2e5ea;--text:#17191f;--text-2:#565e6a;--text-3:#7b828c;--text-4:#9aa1ab;--hover:#f6f7f9;--shadow:0 1px 2px rgba(20,22,30,.05),0 10px 30px rgba(20,22,30,.05);background:var(--bg);color:var(--text);transition:background .25s ease,color .25s ease}.app[data-theme=dark]{--bg:#0f1116;--surface:#191c23;--surface-2:#23272f;--border:#272b34;--border-2:#2e333d;--text:#eef1f6;--text-2:#b6bcc7;--text-3:#8b919d;--text-4:#6f7684;--hover:#20242d;--shadow:0 1px 2px rgba(0,0,0,.35),0 12px 34px rgba(0,0,0,.4)}a{color:var(--accent-strong);text-decoration:none}a:hover{color:var(--accent-deep);text-decoration:underline}::-moz-selection{background:#ffdfdd;background:oklch(.93 .04 22)}::selection{background:#ffdfdd;background:oklch(.93 .04 22)}input:focus,select:focus,textarea:focus{outline:2px solid oklch(.72 .12 22);outline-offset:-1px}@keyframes fadein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.fadein{animation:fadein .25s ease}.shell{display:flex;min-height:100vh}.mainarea{flex:1;max-width:1120px;min-width:0;padding:28px 36px 48px}.mainarea,.sidebar{box-sizing:border-box}.sidebar{background:var(--sidebar-bg);display:flex;flex-direction:column;flex-shrink:0;height:100vh;position:sticky;top:0;width:240px}.sidebar .brand{padding:22px 20px 16px}.sidebar .brand img{display:block;width:130px}.sidebar .brand .sub{color:#7d8391;font-size:11px;margin-top:8px}.sidenav{display:flex;flex-direction:column;gap:2px;padding:8px 12px}.sidenav .navsec{color:#5b6170;font-size:10.5px;font-weight:700;letter-spacing:.8px;padding:16px 12px 5px;text-transform:uppercase}.sidenav button{align-items:center;background:none;border:none;border-radius:10px;color:#9aa1ab;cursor:pointer;display:flex;font:600 13.5px Golos Text,sans-serif;justify-content:space-between;padding:9px 12px;text-align:left}.sidenav button:hover{background:#ffffff12}.sidenav button.active{background:#ffffff1a;color:#fff}.sidetheme{margin-top:auto;padding:12px 16px 4px}.sidetheme .seg{background:#ffffff0f;border-radius:999px;display:flex;padding:3px}.sidetheme .seg button{background:none;border:none;border-radius:999px;color:#c6cbd4;cursor:pointer;flex:1;font:600 12px Golos Text,sans-serif;padding:7px 8px;transition:.15s}.sidetheme .seg button.active{background:#fff;color:#15171e}.sidefoot{border-top:1px solid hsla(0,0%,100%,.08);gap:10px;padding:14px 20px 16px}.sidefoot,.sidefoot .avatar{align-items:center;display:flex}.sidefoot .avatar{background:#2a2d38;border-radius:50%;color:#c6cbd4;flex-shrink:0;font-size:13px;font-weight:600;height:32px;justify-content:center;width:32px}.sidefoot .who{flex:1;min-width:0}.sidefoot .who .name{color:#f2f3f6;font-size:13px;font-weight:600}.sidefoot .who .mail,.sidefoot .who .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidefoot .who .mail{color:#7d8391;font-size:11px}.sidefoot .exit{background:none;border:none;border-radius:6px;color:#7d8391;cursor:pointer;flex-shrink:0;font:600 11.5px Golos Text,sans-serif;padding:4px 6px}.sidefoot .exit:hover{background:#ffffff12;color:#f2f3f6}h1.page{font-size:26px;font-weight:800;letter-spacing:-.8px;margin:0}.page-head{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:8px}.page-head.spaced{margin-bottom:22px}.page-sub{color:var(--text-3);font-size:13.5px;line-height:1.55;margin:0 0 20px;max-width:680px}.mono{font-family:var(--mono)}.card{background:var(--surface);border-radius:18px;box-shadow:var(--shadow)}.card.pad{padding:18px 20px}.card.pad-lg{padding:20px 24px}.stat-label{color:var(--text-4);font-size:11px;font-weight:600;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.stat-value{font-size:32px;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-1.2px}.stat-value.big{font-size:40px;letter-spacing:-1.5px}.stat-sub{color:var(--text-3);font-size:12.5px;margin-top:4px}.card-title{font-size:14px;font-weight:700}.btn{align-items:center;background:var(--surface);border:none;border-radius:999px;color:var(--text);cursor:pointer;display:inline-flex;font:600 13.5px Golos Text,sans-serif;gap:8px;justify-content:center;padding:10px 18px;transition:.15s}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){filter:brightness(.95)}.btn-outline{background:var(--surface);border:1px solid var(--border-2);color:var(--text)}.btn-outline:hover:not(:disabled){background:var(--hover)}.btn-danger-outline{background:var(--surface);border:1px solid var(--accent-border);color:var(--accent-deep)}.btn-danger-outline:hover:not(:disabled){background:#fff1f1;background:oklch(.97 .02 22)}.btn-danger{background:#b0524a;color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(.95)}.btn-warn{background:var(--warn);color:#fff}.btn-green{background:#14874e;color:#fff}.btn-sm{font-size:12.5px;padding:7px 14px}.btn-link{background:none;border:none;color:var(--accent-strong);cursor:pointer;font:600 13px Golos Text,sans-serif;padding:0}.btn-link:hover{text-decoration:underline}.btn-link.muted{color:var(--text-3)}.btn-link.muted:hover{color:var(--text);text-decoration:none}.btn-link.danger{color:#a3554c}.input{background:var(--surface);border:1px solid var(--border-2);border-radius:12px;box-sizing:border-box;color:var(--text);font:14px Golos Text,sans-serif;padding:11px 14px;width:100%}.input::-moz-placeholder{color:var(--text-4)}.input::placeholder{color:var(--text-4)}select.input{border-radius:11px;font-size:13.5px;padding:10px}.field-label{color:var(--text-2);display:block;font-size:12.5px;font-weight:600;margin-bottom:6px}.field-label .opt{color:var(--text-4);font-weight:400}.field-error{color:var(--accent-deep);font-size:12px;margin:6px 0 0}.badge{border-radius:20px;display:inline-block;font-size:11.5px;font-weight:600;padding:3px 10px;white-space:nowrap}.badge-green{background:var(--ok-bg);color:var(--ok-text)}.badge-blue{background:var(--info-bg);color:var(--info-text)}.badge-red{background:var(--accent-soft);color:var(--accent-deep)}.badge-grey{background:var(--surface-2);color:var(--text-2)}.badge-mono{border-radius:5px;font-family:var(--mono);font-size:11px;padding:2px 8px}.gtable{overflow:hidden}.gtable .gt-head,.gtable .gt-row{align-items:center;-moz-column-gap:16px;column-gap:16px;display:grid;padding:0 20px}.gtable .gt-head{color:var(--text-4);font-size:10.5px;font-weight:700;letter-spacing:.9px;text-transform:uppercase}.gtable .gt-head>div{padding:12px 0}.gtable .gt-row{border-top:1px solid var(--border);font-size:13.5px}.gtable .gt-row>div{min-width:0;padding:13px 0}.gtable .gt-row:hover{background:var(--hover)}.gtable .gt-empty{border-top:1px solid var(--border);color:var(--text-4);font-size:13.5px;padding:22px 20px}.t-right{text-align:right}.cell-mono{color:var(--text-4);font-family:var(--mono);font-size:12px}.cell-dim{color:var(--text-3)}.cell-strong{font-weight:600}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f111680;display:flex;inset:0;justify-content:center;position:fixed;z-index:50}.modal{animation:fadein .2s ease;background:var(--surface);border-radius:20px;box-shadow:0 24px 70px #00000059;box-sizing:border-box;color:var(--text);max-width:calc(100vw - 28px);padding:26px 28px;width:440px}.modal-title{font-size:17px;font-weight:700;margin-bottom:8px}.modal-sub{color:var(--text-3);font-size:13px;line-height:1.5;margin-bottom:16px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.toast{animation:fadein .2s ease;background:#15171e;border-radius:999px;bottom:24px;box-shadow:0 12px 34px #00000059;color:#f2f3f6;font-size:13.5px;font-weight:500;left:50%;max-width:min(90vw,560px);padding:12px 20px;position:fixed;transform:translate(-50%);z-index:60}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.codeblock{background:#15171e;border-radius:12px;color:#d9dde3;font:12.5px/1.65 ui-monospace,Menlo,monospace;margin:0;overflow-x:auto;padding:16px 18px}.codeblock.soft{background:var(--surface-2);color:var(--text-2);font-size:12px;line-height:1.7}.spinner{animation:spin .7s linear infinite;border:2px solid hsla(0,0%,100%,.35);border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;vertical-align:-3px;width:16px}.spinner.dark{border-color:var(--border-2);border-top-color:var(--text-3)}@keyframes spin{to{transform:rotate(1turn)}}.notice{align-items:center;border-radius:12px;display:flex;font-size:13.5px;gap:12px;margin-bottom:20px;padding:12px 16px}.notice-warn{background:#fdf3ec;border:1px solid #f2ddc9;color:#6b4f33}.app[data-theme=dark] .notice-warn{background:#2a2118;border-color:#4a3a26;color:#e0c9a8}.notice .dot{background:var(--warn);border-radius:50%;flex-shrink:0;height:8px;width:8px}.empty-state{color:var(--text-4);font-size:13.5px;padding:28px 20px;text-align:center}@media(max-width:860px){.shell{flex-direction:column}.sidebar{align-items:center;flex-direction:row;flex-wrap:wrap;height:auto;padding:8px 12px;position:sticky;top:0;width:100%;z-index:40}.sidebar .brand{padding:6px 8px}.sidenav{flex-direction:row;flex-wrap:nowrap;gap:4px;order:3;overflow-x:auto;padding:4px 0;width:100%;-webkit-overflow-scrolling:touch}.sidenav .navsec{display:none}.sidenav button{flex:0 0 auto;white-space:nowrap}.sidetheme{margin-left:auto;order:2;padding:0;width:auto}.sidefoot{display:none}.mainarea{max-width:100%;padding:16px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.gtable{overflow-x:auto}.gtable .gt-head,.gtable .gt-row{min-width:660px}}
