:root,[data-theme=light]{color-scheme:light;--bg:#f4f6fb;--bg-grad:linear-gradient(180deg,#eef2f9,#f4f6fb 240px);--surface:#ffffff;--surface-2:#f8f9fc;--surface-hover:#fafbfd;--border:#e4e8f0;--border-strong:#d4dae5;--text:#111827;--muted:#5b6474;--faint:#8a93a3;--input-bg:#f3f5f9;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-soft:#e6eefc;--danger:#dc2626;--danger-hover:#b91c1c;--danger-text:#b91c1c;--danger-soft:#fde8e8;--success:#16a34a;--success-text:#15803d;--success-soft:#dcfce7;--tag-bg:#e0eaff;--tag-text:#1d4ed8;--backdrop:rgba(30,41,59,0.38);--shadow:0 1px 2px rgba(16,24,40,0.04),0 4px 18px rgba(16,24,40,0.07);--shadow-lg:0 10px 40px rgba(16,24,40,0.18)}[data-theme=dark]{color-scheme:dark;--bg:#0b0e14;--bg-grad:radial-gradient(1200px 500px at 0% 0%,#121a2a 0%,rgba(11,14,20,0) 60%),#0b0e14;--surface:#121722;--surface-2:#161c28;--surface-hover:#151b27;--border:#232b3a;--border-strong:#2e3849;--text:#e7eaf0;--muted:#a0a8b7;--faint:#727c8e;--input-bg:#0b0f17;--primary:#4f8cff;--primary-hover:#6a9dff;--primary-soft:#1b2740;--danger:#dc2626;--danger-hover:#ef4444;--danger-text:#f87171;--danger-soft:rgba(239,68,68,0.16);--success:#22c55e;--success-text:#4ade80;--success-soft:rgba(34,197,94,0.14);--tag-bg:rgba(79,140,255,0.18);--tag-text:#8fb4ff;--backdrop:rgba(3,6,12,0.6);--shadow:0 1px 2px rgba(0,0,0,0.3),0 6px 20px rgba(0,0,0,0.25);--shadow-lg:0 14px 48px rgba(0,0,0,0.55)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:var(--bg-grad);background-color:var(--bg);background-attachment:fixed;color:var(--text);font-family:Noto Sans,Segoe UI,system-ui,-apple-system,Helvetica Neue,Arial,sans-serif;font-size:13px;line-height:1.45;-webkit-font-smoothing:antialiased}.mono,.mono-input,code{font-family:ui-monospace,SFMono-Regular,DejaVu Sans Mono,Menlo,Consolas,Liberation Mono,monospace}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 16px;border-radius:8px;border:1px solid transparent;font-size:13px;font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .15s,border-color .15s,opacity .15s}.btn:disabled{cursor:not-allowed;opacity:.4}.btn-sm{height:28px;padding:0 10px;font-size:12px}.btn-block{width:100%}.btn-primary{background:var(--primary);color:#fff}.btn-primary:not(:disabled):hover{background:var(--primary-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:not(:disabled):hover{background:var(--danger-hover)}.btn-outline{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.btn-outline:not(:disabled):hover,.icon-btn{background:var(--surface-2)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;border:1px solid var(--border-strong);color:var(--muted);cursor:pointer}.icon-btn:hover{color:var(--text)}.icon-btn.ghost{border-color:transparent;background:transparent}.icon-btn.ghost:hover{background:var(--surface-2)}.link-btn{border:0;background:none;color:var(--primary);cursor:pointer;padding:0;font-size:14px}.link-btn:hover{text-decoration:underline}.link-btn-muted{color:var(--muted);font-size:12.5px}.logo{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:9px;font-weight:800;letter-spacing:.02em}.logo-lg{width:32px;height:32px;border-radius:8px;font-size:12px}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:24px;height:48px;padding:0 26px;background:var(--surface);border-bottom:1px solid var(--border)}[data-theme=dark] .topbar{background:rgba(14,18,27,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.brand{display:flex;align-items:center;gap:9px}.brand-name{font-weight:700;font-size:14px}.tabs{display:flex;gap:4px}.tab{height:28px;padding:0 11px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:13px;cursor:pointer}.tab.active,.tab:hover{color:var(--text)}.tab.active{background:var(--primary-soft)}.topbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}.avatar{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface-2);font-size:10px;font-weight:700}.user-name{color:var(--muted);font-size:13px}.role-pill{padding:1px 8px;border:1px solid var(--border-strong);border-radius:999px;color:var(--muted);font-size:9.5px;letter-spacing:.06em}.container{max-width:780px;margin:0 auto;padding:22px 24px 40px}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}[data-theme=light] .card{border-color:transparent}.toolbar{display:flex;justify-content:flex-end;margin:12px 0 -4px}.section-title{margin:24px 2px 10px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-top:18px}.section-head .section-title{margin:0 2px 4px}.section-head .btn{margin-bottom:-2px}.footnote{margin-top:32px;color:var(--faint);font-size:11px;text-align:center}.banner{margin-bottom:14px;padding:10px 14px;border-radius:10px;background:var(--danger-soft);color:var(--danger-text);font-size:13px}.login-notice{margin:0 0 12px;padding:8px 12px;border-radius:8px;background:var(--tag-bg);font-size:12.5px}.banner-warn{display:flex;gap:12px;align-items:center;justify-content:space-between}.empty-card{display:grid;grid-gap:12px;gap:12px;padding:28px;color:var(--muted);text-align:center}.account-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px 16px 22px;border-left:4px solid var(--success)!important}.account-card.killed{border-left-color:var(--danger)!important}.account-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.account-label{color:var(--muted);font-size:19px}.account-name,.account-select{font-family:ui-monospace,SFMono-Regular,DejaVu Sans Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:19px;font-weight:700}.account-select{width:auto;min-width:262px;height:30px;min-height:0;padding:0 34px 0 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a93a3' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.account-line .btn-sm{margin-left:8px}.status-line{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:8px}.status-meta{color:var(--muted);font-size:12px}.account-actions{display:flex;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.chip .dot{width:5px;height:5px;border-radius:50%;background:currentColor}.chip-success{background:var(--success-soft);color:var(--success-text)}.chip-danger{background:var(--danger-soft);color:var(--danger-text)}.chip-muted{background:var(--surface-2);color:var(--muted);border:1px solid var(--border)}.chip.pulse .dot{animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 0 0 currentColor}50%{opacity:.45;box-shadow:0 0 0 3px transparent}}@media (prefers-reduced-motion:reduce){.chip.pulse .dot{animation:none}}.tag{padding:1px 6px;border-radius:5px;background:var(--tag-bg);color:var(--tag-text);font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.table-card{margin-top:18px;overflow:visible}table{width:100%;border-collapse:separate;border-spacing:0}th{padding:10px 16px;background:var(--surface-2);border-bottom:1px solid var(--border);color:var(--muted);font-size:10.5px;font-weight:700;letter-spacing:.05em;text-align:left;text-transform:uppercase}thead tr th:first-child{border-top-left-radius:14px}thead tr th:last-child{border-top-right-radius:14px}td{padding:13px 16px;border-bottom:1px solid var(--border);vertical-align:middle}tbody tr:last-child td{border-bottom:0}.right{text-align:right}.muted{color:var(--muted)}.edit-col{width:64px;text-align:center}.var-cell{position:relative}.var-key{display:flex;align-items:center;gap:8px}.var-key code,.var-key-text{font-size:12.5px;font-weight:700}.var-label{margin-top:2px;color:var(--muted);font-size:12px}.info-btn{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;padding:0;border:1px solid var(--border-strong);border-radius:50%;background:var(--surface-2);color:var(--muted);font-family:Georgia,Times New Roman,serif;font-size:9px;font-style:italic;font-weight:700;line-height:1;cursor:pointer}.info-btn.open,.info-btn:hover{border-color:var(--primary);color:var(--primary)}.value-num{display:inline-flex;align-items:baseline;gap:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.value-num strong{font-size:13.5px}.unit{font-size:12px}.unit,.value-text{color:var(--muted)}.value-text.not-set{font-style:italic}.changed{margin-top:3px;color:var(--faint);font-size:10.5px}.audit td{font-size:13px}.audit .time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.audit .reason{max-width:200px}.audit .audit-text{max-width:220px;white-space:normal}.empty{padding:22px 16px;color:var(--muted);text-align:center}.popover{position:absolute;top:calc(100% + 6px);left:56px;z-index:30;width:272px;padding:12px 14px;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-lg);font-size:12px}.popover-title{font-size:13px;font-weight:700}.popover-key{margin-bottom:10px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,DejaVu Sans Mono,Menlo,Consolas,monospace;font-size:11px}.popover dl{display:grid;grid-template-columns:82px 1fr;grid-gap:7px 10px;gap:7px 10px;margin:0}.popover dt{color:var(--muted)}.popover dd{margin:0}.popover-actions{display:flex;justify-content:flex-end;margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.backdrop{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--backdrop);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog{width:352px;max-width:100%;padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-lg)}.dialog h2{margin:0 0 12px;font-size:15px}.dialog-desc{margin:0 0 14px;color:var(--muted);font-size:12.5px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.field{display:grid;grid-gap:6px;gap:6px;margin-bottom:12px}.field>span{color:var(--muted);font-size:11.5px;font-weight:700}[data-theme=light] .field>span{color:#374151}.field-row{display:flex;gap:8px;align-items:flex-end}.field-row>input{flex:1 1}.field-row .field{margin-bottom:0}.field.grow{flex:1 1}input,select,textarea{width:100%;min-height:31px;padding:6px 10px;border:1px solid var(--border);border-radius:7px;background:var(--input-bg);font-size:12.5px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--faint)}input:focus,select:focus,textarea:focus{border-color:var(--primary);outline:none}.field-row select{width:84px}.field-row .field select{width:96px}.unit-fixed{padding:0 4px 7px;color:var(--muted);font-size:12.5px}.form-error{margin:4px 0 0;color:var(--danger-text);font-size:12.5px}.toast{position:fixed;bottom:22px;left:50%;z-index:60;padding:10px 16px;border-radius:10px;background:var(--text);color:var(--surface);box-shadow:var(--shadow-lg);font-size:13px;transform:translateX(-50%)}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}.login-theme{position:fixed;top:14px;right:14px}.login-card{width:304px;max-width:100%;padding:26px 26px 24px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-lg)}.login-card h1{margin:16px 0 10px;font-size:17px}.login-sub{margin:0 0 14px;color:var(--muted);font-size:12px}.login-card .btn{margin-top:2px}.login-note{margin:16px 0 0;color:var(--faint);font-size:10.5px}@media (max-width:640px){.topbar{gap:12px;padding:0 12px}.brand-name,.role-pill,.user-name{display:none}.account-card{flex-direction:column;align-items:flex-start}.account-select{min-width:0}.popover{left:0}}