@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/static/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/static/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/static/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/static/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/static/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/static/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/static/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/static/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/static/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/static/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/static/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/static/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--font-sans:"Inter Variable", Inter, "Inter var", "Segoe UI Variable Text", "Segoe UI", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono Variable", "JetBrains Mono", "Cascadia Code", "Fira Code", ui-monospace, SFMono-Regular, Menlo, monospace;--fs-xs:11px;--fs-sm:12px;--fs-md:13px;--fs-base:14px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:26px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.25;--lh-normal:1.5;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--sp-8:40px;--r-xs:4px;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-pill:999px;--dur-fast:.12s;--dur-base:.18s;--ease:cubic-bezier(.2, 0, .2, 1);--transition:color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);--rail-w:208px;--rail-collapsed:60px;--topbar-h:52px;--row-py:9px;--row-px:14px;--control-h:32px}:root[data-density=compacta]{--row-py:6px;--row-px:10px;--control-h:28px}:root[data-density=confortavel]{--row-py:13px;--row-px:18px;--control-h:38px}:root,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#f4f6fa;--surface-1:#fff;--surface-2:#f8fafc;--surface-3:#eef2f8;--surface-inset:#f5f8fc;--border-subtle:#eaeff6;--border-default:#dbe2ec;--border-strong:#c2ccda;--text-primary:#0b1220;--text-secondary:#3a4657;--text-muted:#6b7688;--text-inverse:#fff;--accent-base:#2563eb;--accent-hover:#1d4ed8;--accent-active:#1e40af;--accent-soft:#2563eb17;--accent-soft-hover:#2563eb26;--accent-border:#2563eb4d;--fg-on-accent:#fff;--signal-base:#b45309;--signal-soft:#b453091a;--signal-border:#b4530947;--success:#15803d;--success-soft:#15803d1a;--success-border:#15803d47;--warning:#a16207;--warning-soft:#a162071a;--warning-border:#a1620747;--severe:#c2410c;--severe-soft:#c2410c1a;--severe-border:#c2410c47;--danger:#b42318;--danger-soft:#b4231817;--danger-border:#b4231842;--danger-border-strong:#b4231873;--info:#1d5fa8;--info-soft:#1d5fa817;--info-border:#1d5fa842;--row-hover:#2563eb0d;--row-selected:#2563eb17;--overlay:#0b122061;--shadow-sm:0 1px 2px #0b12200f;--shadow-md:0 4px 12px #0b122017, 0 1px 3px #0b12200d;--shadow-lg:0 16px 40px #0b122029, 0 2px 8px #0b122012;--focus-ring:0 0 0 3px #2563eb47}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#0b1220;--surface-1:#111a2b;--surface-2:#172234;--surface-3:#1f2c42;--surface-inset:#0e1728;--border-subtle:#1e293b;--border-default:#2a3a54;--border-strong:#3b4e6e;--text-primary:#e8edf6;--text-secondary:#b4c1d6;--text-muted:#7e8ca6;--text-inverse:#0b1220;--accent-base:#3b82f6;--accent-hover:#60a5fa;--accent-active:#93c5fd;--accent-soft:#3b82f626;--accent-soft-hover:#3b82f638;--accent-border:#3b82f65c;--fg-on-accent:#06152e;--signal-base:#de9a4c;--signal-soft:#de9a4c24;--signal-border:#de9a4c52;--success:#5cbf83;--success-soft:#5cbf8321;--success-border:#5cbf834d;--warning:#dfc05f;--warning-soft:#dfc05f24;--warning-border:#dfc05f52;--severe:#ee9455;--severe-soft:#ee945524;--severe-border:#ee945552;--danger:#f0736a;--danger-soft:#f0736a21;--danger-border:#f0736a4d;--danger-border-strong:#f0736a80;--info:#79ade4;--info-soft:#79ade421;--info-border:#79ade44d;--row-hover:#3b82f614;--row-selected:#3b82f626;--overlay:#020610a8;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 14px #00000073;--shadow-lg:0 18px 46px #00000094;--focus-ring:0 0 0 3px #3b82f65c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#0b1220;--surface-1:#111a2b;--surface-2:#172234;--surface-3:#1f2c42;--surface-inset:#0e1728;--border-subtle:#1e293b;--border-default:#2a3a54;--border-strong:#3b4e6e;--text-primary:#e8edf6;--text-secondary:#b4c1d6;--text-muted:#7e8ca6;--text-inverse:#0b1220;--accent-base:#3b82f6;--accent-hover:#60a5fa;--accent-active:#93c5fd;--accent-soft:#3b82f626;--accent-soft-hover:#3b82f638;--accent-border:#3b82f65c;--fg-on-accent:#06152e;--signal-base:#de9a4c;--signal-soft:#de9a4c24;--signal-border:#de9a4c52;--success:#5cbf83;--success-soft:#5cbf8321;--success-border:#5cbf834d;--warning:#dfc05f;--warning-soft:#dfc05f24;--warning-border:#dfc05f52;--severe:#ee9455;--severe-soft:#ee945524;--severe-border:#ee945552;--danger:#f0736a;--danger-soft:#f0736a21;--danger-border:#f0736a4d;--danger-border-strong:#f0736a80;--info:#79ade4;--info-soft:#79ade421;--info-border:#79ade44d;--row-hover:#3b82f614;--row-selected:#3b82f626;--overlay:#020610a8;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 14px #00000073;--shadow-lg:0 18px 46px #00000094;--focus-ring:0 0 0 3px #3b82f65c}}:root{--bg:var(--canvas);--surface:var(--surface-1);--surface2:var(--surface-2);--surface3:var(--surface-3);--border:var(--border-default);--border-hover:var(--border-strong);--text:var(--text-primary);--dim:var(--text-muted);--accent:var(--accent-base);--accent-dim:var(--accent-soft);--accent-glow:var(--accent-soft-hover);--green:var(--success);--green-dim:var(--success-soft);--yellow:var(--warning);--yellow-dim:var(--warning-soft);--red:var(--danger);--red-dim:var(--danger-soft);--red-border:var(--danger-border);--red-border-h:var(--danger-border-strong);--blue:var(--info);--blue-dim:var(--info-soft);--subtle-bg:var(--surface-2);--subtle-border:var(--border-subtle);--zebra:transparent;--hover-tint:var(--row-hover);--modal-shadow:var(--shadow-lg);--radius:var(--r-sm);--radius-lg:var(--r-md);--radius-xl:var(--r-lg);--shadow:var(--shadow-md);--sidebar-w:var(--rail-w);--sidebar-collapsed:var(--rail-collapsed)}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-normal);background:var(--canvas);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums;overflow:hidden}input,select,textarea,button{font-family:inherit;font-size:inherit}::selection{background:var(--accent-soft-hover);color:var(--text-primary)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:var(--r-pill);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--border-strong);background-clip:content-box}:focus{outline:none}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--r-xs);outline:none}a{color:inherit}.mono{font-family:var(--font-mono);font-size:var(--fs-sm);font-variant-ligatures:none}.dim{color:var(--text-muted)}.dim-sm{color:var(--text-muted);font-size:var(--fs-sm)}.num{font-variant-numeric:tabular-nums}.app{height:100vh;display:flex}.sidebar{width:var(--rail-w);background:var(--surface-2);border-right:1px solid var(--border-subtle);z-index:50;transition:width var(--dur-base) var(--ease), transform var(--dur-base) var(--ease);flex-direction:column;flex-shrink:0;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden}.sidebar-brand{height:var(--topbar-h);padding:0 var(--sp-4);align-items:center;gap:var(--sp-3);border-bottom:1px solid var(--border-subtle);flex-shrink:0;display:flex}.logo-mark-wrap{flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.logo-mark-img{width:26px;height:26px}.sidebar-brand h1{font-size:var(--fs-base);font-weight:var(--fw-semibold);letter-spacing:-.01em;white-space:nowrap}.brand-lockup{flex-direction:column;justify-content:center;min-width:0;line-height:1.08;display:flex}.brand-attrib{font-size:10px;font-weight:var(--fw-semibold);letter-spacing:.02em;color:var(--text-muted);white-space:nowrap}.brand-attrib span{color:var(--accent-base)}.collapse-toggle{top:calc(var(--topbar-h) + 14px);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--r-sm);cursor:pointer;width:22px;height:22px;color:var(--text-muted);z-index:51;transition:var(--transition), left var(--dur-base) var(--ease);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;padding:0;display:flex;position:fixed;transform:translate(-50%)}.collapse-toggle:hover{color:var(--accent-base);border-color:var(--accent-border)}.sidebar-nav{padding:var(--sp-3) var(--sp-2);flex:1;overflow-y:auto}.nav-section{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:var(--fw-semibold);padding:var(--sp-4) var(--sp-3) var(--sp-2);white-space:nowrap;overflow:hidden}.nav-item{align-items:center;gap:var(--sp-3);padding:7px var(--sp-3);border-radius:var(--r-sm);color:var(--text-secondary);cursor:pointer;font-size:var(--fs-md);font-weight:var(--fw-medium);white-space:nowrap;transition:var(--transition);border:1px solid #0000;margin-bottom:1px;text-decoration:none;display:flex;position:relative;overflow:hidden}.nav-item:hover{background:var(--surface-3);color:var(--text-primary)}.nav-item.active{background:var(--accent-soft);color:var(--accent-base);font-weight:var(--fw-semibold)}.nav-item.active:before{content:"";background:var(--accent-base);border-radius:0 2px 2px 0;width:3px;height:16px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav-item svg{stroke:currentColor;fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:16px;height:16px}.nav-badge{background:var(--surface-3);color:var(--text-secondary);font-size:var(--fs-xs);border-radius:var(--r-pill);font-weight:var(--fw-semibold);text-align:center;min-width:20px;margin-left:auto;padding:1px 7px}.nav-item.active .nav-badge{background:var(--accent-soft-hover);color:var(--accent-base)}.sidebar-user{border-top:1px solid var(--border-subtle);padding:var(--sp-2);flex-shrink:0}.sidebar-user-card{align-items:center;gap:var(--sp-3);padding:var(--sp-2);border-radius:var(--r-sm);transition:var(--transition);display:flex}.sidebar-user-card:hover{background:var(--surface-3)}.sidebar-avatar{background:var(--accent-base);width:28px;height:28px;color:var(--fg-on-accent);border-radius:var(--r-sm);font-size:var(--fs-xs);font-weight:var(--fw-bold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-user-info{flex:1;min-width:0;overflow:hidden}.sidebar-user-name{font-size:var(--fs-md);font-weight:var(--fw-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-user-role{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-status-dot{background:var(--success);border-radius:50%;flex-shrink:0;width:6px;height:6px}.sidebar-logout-wrap{padding:0 var(--sp-2) var(--sp-2);flex-shrink:0}.sidebar-logout{align-items:center;gap:var(--sp-3);padding:7px var(--sp-3);border-radius:var(--r-sm);color:var(--text-muted);font-size:var(--fs-md);font-weight:var(--fw-medium);transition:var(--transition);white-space:nowrap;text-decoration:none;display:flex;overflow:hidden}.sidebar-logout:hover{background:var(--danger-soft);color:var(--danger)}.sidebar-logout svg{stroke:currentColor;fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:16px;height:16px}.sidebar-version{padding:0 var(--sp-4) var(--sp-3);color:var(--text-muted);letter-spacing:.04em;font-size:10px}.sidebar.collapsed{width:var(--rail-collapsed)}.sidebar.collapsed .sidebar-brand{justify-content:center;padding:0}.sidebar.collapsed .sidebar-brand h1,.sidebar.collapsed .sidebar-brand .brand-lockup{display:none}.sidebar.collapsed .nav-section{background:var(--border-subtle);height:1px;margin:var(--sp-3) var(--sp-3);padding:0;font-size:0}.sidebar.collapsed .nav-item{justify-content:center;gap:0;padding:8px 0}.sidebar.collapsed .nav-item span,.sidebar.collapsed .nav-badge{display:none}.sidebar.collapsed .nav-item:after{content:attr(data-tip);background:var(--text-primary);color:var(--canvas);font-size:var(--fs-sm);font-weight:var(--fw-medium);border-radius:var(--r-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease);z-index:100;box-shadow:var(--shadow-md);padding:4px 9px;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)}.sidebar.collapsed .nav-item:hover:after{opacity:1}.sidebar.collapsed .sidebar-user-card{padding:var(--sp-2) 0;justify-content:center}.sidebar.collapsed .sidebar-user-info,.sidebar.collapsed .sidebar-status-dot,.sidebar.collapsed .sidebar-version{display:none}.sidebar.collapsed .sidebar-logout{justify-content:center}.sidebar.collapsed .sidebar-logout span{display:none}.mobile-toggle{z-index:45;background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--r-sm);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;transition:var(--transition);justify-content:center;align-items:center;display:none;position:fixed;top:10px;left:10px}.mobile-toggle:hover{background:var(--surface-3);color:var(--text-primary)}.topbar{height:var(--topbar-h);align-items:center;gap:var(--sp-3);padding:0 var(--sp-6);background:var(--surface-1);border-bottom:1px solid var(--border-subtle);flex-shrink:0;display:flex}.breadcrumb{align-items:center;gap:var(--sp-2);font-size:var(--fs-md);min-width:0;display:flex}.breadcrumb .crumb{color:var(--text-muted);white-space:nowrap}.breadcrumb .crumb-sep{color:var(--border-strong)}.breadcrumb .crumb-current{color:var(--text-primary);font-weight:var(--fw-semibold);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.topbar-right{align-items:center;gap:var(--sp-2);margin-left:auto;display:flex}.topbar-action{min-width:30px;height:30px;padding:0 var(--sp-2);justify-content:center;align-items:center;gap:var(--sp-2);border-radius:var(--r-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition);font-size:var(--fs-sm);background:0 0;border:1px solid #0000;display:inline-flex}.topbar-action:hover{background:var(--surface-3);color:var(--text-primary)}.topbar-action svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.kbd{font-family:var(--font-mono);color:var(--text-muted);border:1px solid var(--border-default);border-radius:var(--r-xs);background:var(--surface-2);padding:1px 5px;font-size:10px}.main{margin-left:var(--rail-w);height:100vh;transition:margin-left var(--dur-base) var(--ease);flex-direction:column;flex:1;display:flex;overflow:hidden}.sidebar.collapsed~.main{margin-left:var(--rail-collapsed)}.content{padding:var(--sp-6) var(--sp-6) var(--sp-8);flex:1;overflow-y:auto}.content-inner{max-width:1560px;margin:0 auto}.content-title{font-size:var(--fs-xl);font-weight:var(--fw-semibold);letter-spacing:-.015em;margin-bottom:var(--sp-5)}.page-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);margin-bottom:var(--sp-5);flex-wrap:wrap;display:flex}.page-head h2{font-size:var(--fs-xl);font-weight:var(--fw-semibold);letter-spacing:-.015em}.page-head p{font-size:var(--fs-md);color:var(--text-muted);margin-top:2px}.page-head-actions{align-items:center;gap:var(--sp-2);display:flex}.toolbar{gap:var(--sp-2);margin-bottom:var(--sp-3);flex-wrap:wrap;align-items:center;display:flex}.toolbar select,.toolbar input{background:var(--surface-1);border:1px solid var(--border-default);color:var(--text-primary);height:var(--control-h);padding:0 var(--sp-3);border-radius:var(--r-sm);font-size:var(--fs-md);transition:var(--transition)}.toolbar select:focus,.toolbar input:focus{border-color:var(--accent-base);box-shadow:var(--focus-ring)}.toolbar-right{gap:var(--sp-2);align-items:center;margin-left:auto;display:flex}.btn{height:var(--control-h);padding:0 var(--sp-4);justify-content:center;align-items:center;gap:var(--sp-2);border-radius:var(--r-sm);cursor:pointer;font-size:var(--fs-md);font-weight:var(--fw-medium);white-space:nowrap;transition:var(--transition), box-shadow var(--dur-fast) var(--ease);border:1px solid #0000;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent-base);color:var(--fg-on-accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:active:not(:disabled){background:var(--accent-active)}.btn-ghost{background:var(--surface-1);color:var(--text-secondary);border-color:var(--border-default)}.btn-ghost:hover:not(:disabled){background:var(--surface-3);color:var(--text-primary);border-color:var(--border-strong)}.btn-quiet{color:var(--text-secondary);background:0 0;border-color:#0000}.btn-quiet:hover:not(:disabled){background:var(--surface-3);color:var(--text-primary)}.btn-danger{color:var(--danger);border-color:var(--danger-border);background:0 0}.btn-danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger-border-strong)}.btn-sm{height:26px;padding:0 var(--sp-3);font-size:var(--fs-sm)}.btn-xs{height:22px!important;padding:0 var(--sp-2)!important;font-size:var(--fs-xs)!important}.btn svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:15px;height:15px}.btn-icon{border-radius:var(--r-sm);cursor:pointer;width:26px;height:26px;color:var(--text-muted);transition:var(--transition);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{background:var(--surface-3);color:var(--text-primary);border-color:var(--border-default)}.btn-icon svg{stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;fill:none;stroke:currentColor;width:15px;height:15px}.btn-icon-edit:hover{color:var(--info);border-color:var(--info-border)}.btn-icon-warn:hover{color:var(--warning);border-color:var(--warning-border)}.btn-icon-del:hover{color:var(--danger);border-color:var(--danger-border)}.card{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:var(--sp-5)}.card-head{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.card-title{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em}.table-wrap{border:1px solid var(--border-subtle);border-radius:var(--r-md);background:var(--surface-1);overflow:auto}table{border-collapse:collapse;width:100%;font-size:var(--fs-md)}thead th{background:var(--surface-1);z-index:2;padding:var(--sp-3) var(--row-px);text-align:left;font-weight:var(--fw-semibold);color:var(--text-muted);font-size:var(--fs-sm);letter-spacing:.01em;border-bottom:1px solid var(--border-default);white-space:nowrap;position:sticky;top:0}tbody td{padding:var(--row-py) var(--row-px);border-bottom:1px solid var(--border-subtle);vertical-align:middle;color:var(--text-primary)}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background-color var(--dur-fast) var(--ease)}tbody tr[data-clickable=true]{cursor:pointer}tbody tr:hover{background:var(--row-hover)}tbody tr[data-selected=true]{background:var(--row-selected)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.empty{text-align:center;padding:var(--sp-8) var(--sp-5);color:var(--text-muted);font-size:var(--fs-md);cursor:default}.pager{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-1);font-size:var(--fs-sm);color:var(--text-muted);display:flex}.badge{align-items:center;gap:var(--sp-1);padding:2px var(--sp-2);border-radius:var(--r-xs);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.01em;margin-right:var(--sp-1);white-space:nowrap;border:1px solid #0000;display:inline-flex}.badge-info{background:var(--info-soft);color:var(--info);border-color:var(--info-border)}.badge-warn,.badge-warning{background:var(--warning-soft);color:var(--warning);border-color:var(--warning-border)}.badge-error,.badge-danger{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-border)}.badge-ok,.badge-success{background:var(--success-soft);color:var(--success);border-color:var(--success-border)}.badge-idle,.badge-default,.badge-neutral{background:var(--surface-3);color:var(--text-muted);border-color:var(--border-subtle)}.badge-accent{background:var(--accent-soft);color:var(--accent-base);border-color:var(--accent-border)}.badge-fraud{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-border-strong)}.fraud-indicator{border-radius:var(--r-xs);background:var(--danger-soft);width:18px;height:18px;color:var(--danger);font-size:var(--fs-xs);font-weight:var(--fw-bold);border:1px solid var(--danger-border-strong);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.section-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);margin-bottom:var(--sp-4);color:var(--text-primary);align-items:center;gap:var(--sp-2);letter-spacing:-.01em;display:flex}.form-card{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:var(--sp-5);margin-bottom:var(--sp-5)}.form-grid{gap:var(--sp-4);margin-bottom:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.form-group{gap:var(--sp-2);flex-direction:column;display:flex}.form-group label{font-size:var(--fs-sm);color:var(--text-secondary);font-weight:var(--fw-medium)}.form-group input,.form-group select,.form-group textarea{background:var(--surface-1);border:1px solid var(--border-default);color:var(--text-primary);padding:8px var(--sp-3);border-radius:var(--r-sm);font-size:var(--fs-base);transition:var(--transition), box-shadow var(--dur-fast) var(--ease)}.form-group textarea{font-family:var(--font-mono);font-size:var(--fs-sm);line-height:1.6}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:var(--border-strong)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent-base);box-shadow:var(--focus-ring)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{opacity:.55;cursor:not-allowed;background:var(--surface-2)}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}input[type=checkbox],input[type=radio]{accent-color:var(--accent-base)}.perm-check{align-items:center;gap:var(--sp-2);font-size:var(--fs-md);color:var(--text-secondary);cursor:pointer;padding:7px var(--sp-3);border:1px solid var(--border-default);border-radius:var(--r-sm);transition:var(--transition);display:flex}.perm-check:hover{border-color:var(--border-strong);background:var(--surface-2)}.perm-check input[type=checkbox]{cursor:pointer;width:14px;height:14px}.api-key-box{background:var(--surface-inset);border:1px solid var(--border-default);border-radius:var(--r-sm);padding:var(--sp-3);font-family:var(--font-mono);font-size:var(--fs-sm);word-break:break-all;margin:var(--sp-2) 0;cursor:pointer;transition:var(--transition);-webkit-user-select:all;user-select:all;color:var(--text-primary)}.api-key-box:hover{border-color:var(--accent-border);background:var(--accent-soft)}.ca-status{padding:var(--sp-3) var(--sp-4);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--r-md);margin-bottom:var(--sp-4);align-items:center;gap:var(--sp-3);display:flex}.drawer-overlay{background:var(--overlay);z-index:800;display:none;position:fixed;inset:0}.drawer-overlay.show{animation:fadeIn var(--dur-base) var(--ease);display:block}.drawer{background:var(--surface-1);border-left:1px solid var(--border-default);z-index:801;width:560px;max-width:94vw;transition:transform var(--dur-base) var(--ease);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.drawer.show{transform:translate(0)}.drawer-header{padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:var(--sp-3);flex-shrink:0;display:flex}.drawer-header h3{font-size:var(--fs-lg);font-weight:var(--fw-semibold);letter-spacing:-.01em}.drawer-body{padding:var(--sp-5);flex:1;overflow-y:auto}.drawer-field{margin-bottom:var(--sp-4)}.drawer-field .df-label{font-size:var(--fs-sm);color:var(--text-muted);font-weight:var(--fw-medium);margin-bottom:3px}.drawer-field .df-value{font-size:var(--fs-base);color:var(--text-primary);word-break:break-word}.drawer-field .df-value.mono{font-family:var(--font-mono);font-size:var(--fs-sm)}.drawer-field .df-value.code-block{background:var(--surface-inset);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:var(--sp-3);white-space:pre-wrap;font-family:var(--font-mono);font-size:var(--fs-sm);max-height:240px;color:var(--text-secondary);line-height:1.6;overflow-y:auto}.drawer-divider{background:var(--border-subtle);height:1px;margin:var(--sp-5) 0}.timeline{padding-left:var(--sp-6);margin-top:var(--sp-2);position:relative}.timeline:before{content:"";background:var(--border-default);width:1px;position:absolute;top:6px;bottom:6px;left:7px}.tl-item{margin-bottom:var(--sp-3);padding:var(--sp-2) var(--sp-3);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--r-sm);transition:var(--transition);position:relative}.tl-item:hover{border-color:var(--border-strong)}.tl-item:before{content:"";background:var(--info);width:7px;height:7px;box-shadow:0 0 0 3px var(--surface-1);border-radius:50%;position:absolute;top:13px;left:-22px}.tl-item.warn:before{background:var(--warning)}.tl-item.error:before{background:var(--danger)}.tl-item.ok:before{background:var(--success)}.tl-time{font-size:var(--fs-xs);color:var(--text-muted);font-family:var(--font-mono)}.tl-event{font-size:var(--fs-md);font-weight:var(--fw-medium);margin-top:2px}.tl-detail{font-size:var(--fs-sm);color:var(--text-secondary);word-break:break-word;margin-top:3px}.toast{top:var(--sp-4);right:var(--sp-4);background:var(--surface-1);border:1px solid var(--border-default);border-left:3px solid var(--accent-base);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-5);font-size:var(--fs-md);z-index:999;max-width:420px;box-shadow:var(--shadow-lg);font-weight:var(--fw-medium);color:var(--text-primary);display:none;position:fixed}.toast.show{animation:slideDown var(--dur-base) var(--ease);display:block}.modal-bg{background:var(--overlay);z-index:900;padding:var(--sp-5);justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-bg.show{animation:fadeIn var(--dur-base) var(--ease);display:flex}.modal{background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--r-lg);padding:var(--sp-6);width:520px;max-width:100%;max-height:88vh;box-shadow:var(--shadow-lg);animation:modalIn var(--dur-base) var(--ease);flex-direction:column;display:flex}.modal h3{font-size:var(--fs-xl);font-weight:var(--fw-semibold);letter-spacing:-.015em;margin-bottom:4px}.modal-desc{font-size:var(--fs-md);color:var(--text-muted);line-height:var(--lh-normal);margin:0}.modal-sep{background:var(--border-subtle);height:1px;margin:var(--sp-5) 0}.modal-body{flex:1;min-height:0;overflow-y:auto}.modal .form-grid{gap:var(--sp-4);margin-bottom:0}.modal .actions{gap:var(--sp-2);margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:1px solid var(--border-subtle);flex-shrink:0;justify-content:flex-end;display:flex}.tabs-nav{gap:var(--sp-1);border-bottom:1px solid var(--border-default);margin:0 0 var(--sp-5);display:flex}.tab-btn{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);color:var(--text-muted);font-size:var(--fs-base);font-weight:var(--fw-medium);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;display:inline-flex}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--accent-base);border-bottom-color:var(--accent-base);font-weight:var(--fw-semibold)}.tab-count{font-size:var(--fs-xs);background:var(--surface-3);color:var(--text-secondary);border-radius:var(--r-pill);padding:1px 7px}.tab-btn.active .tab-count{background:var(--accent-soft);color:var(--accent-base)}.card-grid{gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.entity-card{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:var(--sp-5);transition:var(--transition)}.entity-card:hover{border-color:var(--border-strong)}.entity-card.inactive{opacity:.6}.entity-card-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-2);display:flex}.entity-card-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text-primary);margin-bottom:var(--sp-2);letter-spacing:-.01em}.entity-card-meta{margin:var(--sp-3) 0;gap:var(--sp-1);font-size:var(--fs-md);flex-direction:column;display:flex}.entity-card-meta .k{color:var(--text-muted);font-size:var(--fs-sm);margin-right:var(--sp-2)}.entity-card-meta .v{color:var(--text-secondary);word-break:break-all}.entity-card-section{border-top:1px solid var(--border-subtle);padding-top:var(--sp-3);margin-top:var(--sp-1)}.entity-card-section-head{margin-bottom:var(--sp-2);font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}.cred-row{align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--border-subtle);font-size:var(--fs-md);display:flex}.cred-row:last-child{border-bottom:none}.cred-label{color:var(--text-secondary);font-weight:var(--fw-medium)}.cred-hint{background:var(--surface-inset);border:1px solid var(--border-subtle);border-radius:var(--r-xs);padding:1px var(--sp-2);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs)}.empty-hint{color:var(--text-muted);font-size:var(--fs-md);padding:var(--sp-7);text-align:center;border:1px dashed var(--border-default);border-radius:var(--r-md);grid-column:1/-1}.skeleton{background:linear-gradient(90deg, var(--surface-3) 25%, var(--surface-2) 50%, var(--surface-3) 75%);border-radius:var(--r-xs);background-size:200% 100%;animation:1.4s linear infinite shimmer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes modalIn{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:none}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=900px){.sidebar{box-shadow:var(--shadow-lg);transform:translate(-100%);width:var(--rail-w)!important}.sidebar.open{transform:translate(0)}.mobile-toggle{display:inline-flex}.main,.sidebar.collapsed~.main{margin-left:0}.collapse-toggle{display:none}.topbar{padding:0 var(--sp-4) 0 56px}.content{padding:var(--sp-4) var(--sp-4) var(--sp-7)}.drawer{width:100%}}.palette-bg{background:var(--overlay);z-index:950;padding:12vh var(--sp-4) var(--sp-4);animation:fadeIn var(--dur-fast) var(--ease);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.palette{background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--r-lg);width:560px;max-width:100%;max-height:62vh;box-shadow:var(--shadow-lg);animation:modalIn var(--dur-base) var(--ease);flex-direction:column;display:flex;overflow:hidden}.palette-input{align-items:center;gap:var(--sp-3);padding:var(--sp-4);border-bottom:1px solid var(--border-subtle);color:var(--text-muted);flex-shrink:0;display:flex}.palette-input input{color:var(--text-primary);font-size:var(--fs-lg);background:0 0;border:none;outline:none;flex:1}.palette-input input::placeholder{color:var(--text-muted)}.palette-list{padding:var(--sp-2);margin:0;list-style:none;overflow-y:auto}.palette-item{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);cursor:pointer;text-align:left;color:var(--text-secondary);font-size:var(--fs-base);background:0 0;border:none;display:flex}.palette-item[data-active=true]{background:var(--accent-soft);color:var(--accent-base)}.palette-item-label{font-weight:var(--fw-medium);flex:1}.palette-item-hint{font-size:var(--fs-sm);color:var(--text-muted)}.palette-empty{padding:var(--sp-6);text-align:center;color:var(--text-muted);font-size:var(--fs-md)}.login-page{background:var(--canvas);grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid;overflow-y:auto}.login-aside{background:var(--surface-2);border-right:1px solid var(--border-subtle);padding:var(--sp-8) clamp(var(--sp-6), 6vw, 72px);justify-content:center;gap:var(--sp-7);flex-direction:column;display:flex}.login-brand{align-items:center;gap:var(--sp-3);color:var(--accent-base);display:flex}.login-brand span{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text-primary);letter-spacing:-.01em}.login-headline{font-size:clamp(26px,3.2vw,38px);font-weight:var(--fw-semibold);letter-spacing:-.025em;max-width:15ch;line-height:1.15}.login-lede{font-size:var(--fs-lg);color:var(--text-secondary);max-width:46ch;line-height:1.6}.login-points{gap:var(--sp-4);border-top:1px solid var(--border-subtle);padding-top:var(--sp-6);flex-direction:column;display:flex}.login-point{gap:var(--sp-3);align-items:flex-start;display:flex}.login-point-icon{color:var(--accent-base);flex-shrink:0;margin-top:2px}.login-point strong{font-size:var(--fs-base);font-weight:var(--fw-semibold);display:block}.login-point p{font-size:var(--fs-md);color:var(--text-muted);margin-top:1px}.login-panel{padding:var(--sp-8) clamp(var(--sp-6), 5vw, 64px);flex-direction:column;justify-content:center;display:flex}.login-panel-inner{width:100%;max-width:380px;margin:0 auto}.login-panel h2{font-size:var(--fs-xl);font-weight:var(--fw-semibold);letter-spacing:-.015em}.login-panel>.login-panel-inner>p.login-sub{font-size:var(--fs-md);color:var(--text-muted);margin-top:var(--sp-2);margin-bottom:var(--sp-6)}.login-error{background:var(--danger-soft);border:1px solid var(--danger-border);color:var(--danger);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);font-size:var(--fs-md);margin-bottom:var(--sp-5);line-height:1.5}.login-btn{justify-content:center;align-items:center;gap:var(--sp-3);background:var(--accent-base);width:100%;height:42px;color:var(--fg-on-accent);border-radius:var(--r-sm);font-size:var(--fs-base);font-weight:var(--fw-semibold);cursor:pointer;transition:var(--transition);border:none;text-decoration:none;display:inline-flex}.login-btn:hover{background:var(--accent-hover)}.login-foot{margin-top:var(--sp-6);padding-top:var(--sp-4);border-top:1px solid var(--border-subtle);font-size:var(--fs-sm);color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}.login-theme-toggle{border:1px solid var(--border-default);border-radius:var(--r-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;justify-content:center;align-items:center;display:inline-flex}.login-theme-toggle:hover{color:var(--text-primary);border-color:var(--border-strong)}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-aside{border-right:none;border-bottom:1px solid var(--border-subtle);padding:var(--sp-7) var(--sp-5);gap:var(--sp-5)}.login-points{display:none}.login-panel{padding:var(--sp-7) var(--sp-5) var(--sp-8)}}.stat-grid{gap:var(--sp-4);display:grid}.stat-tile{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:var(--sp-4);gap:var(--sp-2);text-align:left;flex-direction:column;min-width:0;display:flex}.stat-tile-action{cursor:pointer;transition:var(--transition);font:inherit;color:inherit}.stat-tile-action:hover{border-color:var(--border-strong);background:var(--surface-2)}.stat-tile-head{align-items:center;gap:var(--sp-2);color:var(--text-muted);min-width:0;display:flex}.stat-tile-label{font-size:var(--fs-md);font-weight:var(--fw-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.stat-tile-value{font-size:var(--fs-2xl);font-weight:var(--fw-semibold);letter-spacing:-.02em;color:var(--text-primary);font-variant-numeric:tabular-nums;line-height:1.1}.stat-tile-value[data-tone=success]{color:var(--success)}.stat-tile-value[data-tone=warning]{color:var(--warning)}.stat-tile-value[data-tone=danger]{color:var(--danger)}.stat-tile-value[data-tone=accent]{color:var(--accent-base)}.stat-tile-caption{font-size:var(--fs-sm);color:var(--text-muted)}.delta{font-size:var(--fs-sm);font-weight:var(--fw-medium);align-items:center;gap:3px;display:inline-flex}.delta-up{color:var(--success)}.delta-down{color:var(--danger)}.delta-flat{color:var(--text-muted)}.delta-caption{color:var(--text-muted);font-weight:var(--fw-regular);margin-left:2px}.dist-row{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);display:flex}.dist-label{font-size:var(--fs-sm);color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;width:30px}.dist-track{background:var(--surface-3);border-radius:var(--r-pill);flex:1;height:6px;overflow:hidden}.dist-fill{border-radius:var(--r-pill);height:100%;transition:width var(--dur-base) var(--ease);background:var(--accent-base)}.dist-fill[data-tone=success]{background:var(--success)}.dist-fill[data-tone=warning]{background:var(--warning)}.dist-fill[data-tone=severe]{background:var(--severe)}.dist-fill[data-tone=signal]{background:var(--signal-base)}.dist-fill[data-tone=danger]{background:var(--danger)}.dist-count{font-size:var(--fs-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums;width:28px}.sparkline{display:block;overflow:visible}.sparkline-line{fill:none;stroke:var(--accent-base);stroke-width:2px;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.sparkline-area{fill:var(--accent-soft);stroke:none}.sparkline[data-tone=danger] .sparkline-line{stroke:var(--danger)}.sparkline[data-tone=danger] .sparkline-area{fill:var(--danger-soft)}.sparkline[data-tone=severe] .sparkline-line{stroke:var(--severe)}.sparkline[data-tone=severe] .sparkline-area{fill:var(--severe-soft)}.sparkline[data-tone=warning] .sparkline-line{stroke:var(--warning)}.sparkline[data-tone=warning] .sparkline-area{fill:var(--warning-soft)}.inventory-row{align-items:center;gap:var(--sp-3);padding:var(--sp-3) 0;border-bottom:1px solid var(--border-subtle);cursor:pointer;text-align:left;width:100%;color:inherit;transition:var(--transition);background:0 0;border-top:none;border-left:none;border-right:none;display:flex}.inventory-row:last-child{border-bottom:none}.inventory-row:hover{color:var(--accent-base)}.inventory-row .inv-icon{color:var(--text-muted);display:flex}.inventory-row:hover .inv-icon{color:var(--accent-base)}.inventory-row .inv-label{font-size:var(--fs-base);color:var(--text-secondary);flex:1}.inventory-row:hover .inv-label{color:var(--text-primary)}.inventory-row .inv-value{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text-primary);font-variant-numeric:tabular-nums}.range-picker{align-items:center;gap:var(--sp-1);flex-wrap:wrap;display:flex}.range-preset{height:var(--control-h);padding:0 var(--sp-3);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--r-sm);color:var(--text-secondary);font-size:var(--fs-md);font-weight:var(--fw-medium);cursor:pointer;transition:var(--transition)}.range-preset:hover{border-color:var(--border-strong);color:var(--text-primary)}.range-preset[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-base)}.range-dates{align-items:center;gap:var(--sp-2);height:var(--control-h);padding:0 var(--sp-3);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--r-sm);color:var(--text-muted);display:flex}.range-dates input{color:var(--text-primary);font-size:var(--fs-md);cursor:pointer;background:0 0;border:none;outline:none;width:106px;font-family:inherit}.range-sep{color:var(--border-strong)}.risk-circle{border-radius:var(--r-sm);width:24px;height:24px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;border:1px solid;justify-content:center;align-items:center;line-height:1;display:inline-flex}.th-sort{align-items:center;gap:var(--sp-1);cursor:pointer;color:inherit;font:inherit;-webkit-user-select:none;user-select:none;transition:var(--transition);background:0 0;border:none;padding:0;display:inline-flex}.th-sort:hover{color:var(--text-primary)}.th-sort[data-active=true]{color:var(--accent-base)}.th-sort svg{opacity:.45}.th-sort[data-active=true] svg{opacity:1}.pager-size{height:26px;padding:0 var(--sp-2);font-size:var(--fs-sm);color:var(--text-secondary);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--r-sm);cursor:pointer;font-family:inherit}.pager-size:hover{border-color:var(--border-strong)}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.btn-icon:disabled:hover{color:var(--text-muted);background:0 0;border-color:#0000}.filter-bar{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:var(--sp-4);margin-bottom:var(--sp-4);gap:var(--sp-4);flex-direction:column;display:flex}.filter-bar-top{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.filter-search{align-items:center;gap:var(--sp-2);min-width:0;height:var(--control-h);padding:0 var(--sp-3);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--r-sm);color:var(--text-muted);transition:var(--transition);flex:260px;display:flex}.filter-search:focus-within{border-color:var(--accent-base);box-shadow:var(--focus-ring)}.filter-search input{min-width:0;color:var(--text-primary);font-size:var(--fs-base);background:0 0;border:none;outline:none;flex:1}.filter-search input::placeholder{color:var(--text-muted)}.btn[data-active]{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-base)}.filter-count{font-size:10px;font-weight:var(--fw-bold);border-radius:var(--r-pill);background:var(--accent-base);color:var(--fg-on-accent);padding:1px 6px}.filter-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));display:grid}.filter-field{gap:var(--sp-1);flex-direction:column;min-width:0;display:flex}.filter-field label{font-size:var(--fs-sm);color:var(--text-muted);font-weight:var(--fw-medium)}.filter-input{width:100%;height:var(--control-h);padding:0 var(--sp-3);background:var(--surface-1);border:1px solid var(--border-default);color:var(--text-primary);border-radius:var(--r-sm);font-size:var(--fs-md);transition:var(--transition);font-family:inherit}.filter-input:hover{border-color:var(--border-strong)}.filter-input:focus{border-color:var(--accent-base);box-shadow:var(--focus-ring);outline:none}.filter-chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--sp-2);padding:3px var(--sp-2) 3px var(--sp-3);border-radius:var(--r-pill);background:var(--accent-soft);border:1px solid var(--accent-border);color:var(--accent-base);font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;transition:var(--transition);display:inline-flex}.chip:hover{background:var(--accent-soft-hover)}.combobox{min-width:0;position:relative}.combobox-control{align-items:center;gap:var(--sp-1);height:var(--control-h);padding:0 var(--sp-2) 0 var(--sp-3);background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--r-sm);cursor:pointer;color:var(--text-muted);transition:var(--transition);display:flex}.combobox-control:hover{border-color:var(--border-strong)}.combobox-control:focus-within{border-color:var(--accent-base);box-shadow:var(--focus-ring)}.combobox-control input{min-width:0;color:var(--text-primary);font-size:var(--fs-md);cursor:pointer;background:0 0;border:none;outline:none;flex:1;font-family:inherit}.combobox-control input::placeholder{color:var(--text-muted)}.combobox-clear{cursor:pointer;color:var(--text-muted);border-radius:var(--r-xs);transition:var(--transition);background:0 0;border:none;padding:2px;display:flex}.combobox-clear:hover{color:var(--text-primary);background:var(--surface-3)}.combobox-caret{color:var(--text-muted);flex-shrink:0}.combobox-list{z-index:120;background:var(--surface-1);border:1px solid var(--border-default);border-radius:var(--r-sm);box-shadow:var(--shadow-md);max-height:240px;padding:var(--sp-1);margin:0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.combobox-option{align-items:center;gap:var(--sp-2);width:100%;padding:6px var(--sp-2);cursor:pointer;border-radius:var(--r-xs);font-size:var(--fs-md);color:var(--text-primary);text-align:left;background:0 0;border:none;font-family:inherit;display:flex}.combobox-option[data-active]{background:var(--surface-3)}.combobox-option[data-selected]{color:var(--accent-base);font-weight:var(--fw-semibold)}.combobox-option-all{color:var(--text-muted);font-style:italic}.combobox-option-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.combobox-check{border-radius:var(--r-xs);border:1.5px solid var(--border-strong);width:15px;height:15px;color:var(--fg-on-accent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.combobox-check[data-checked]{background:var(--accent-base);border-color:var(--accent-base)}.combobox-empty{padding:var(--sp-3);font-size:var(--fs-sm);color:var(--text-muted);text-align:center}.detail-field{padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border-subtle);min-width:0}.detail-field-label{font-size:var(--fs-sm);color:var(--text-muted);font-weight:var(--fw-medium);margin-bottom:2px}.detail-field-value{font-size:var(--fs-md);color:var(--text-primary);word-break:break-word}.detail-field-value.mono{font-family:var(--font-mono);font-size:var(--fs-sm)}.detail-field-value.code{font-family:var(--font-mono);font-size:var(--fs-sm);background:var(--surface-inset);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:var(--sp-2);white-space:pre-wrap;word-break:break-word;max-height:220px;color:var(--text-secondary);line-height:1.55;overflow-y:auto}.tlv{border-top:1px solid var(--border-subtle);padding:var(--sp-4) 0 var(--sp-2)}.tlv-head{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);display:flex}.tlv-head h4{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--text-primary)}.tlv-list{margin:0;padding:0;list-style:none}.tlv-item{gap:var(--sp-2);border-radius:var(--r-sm);transition:var(--transition);border:1px solid #0000;display:flex}.tlv-item[data-clickable]{cursor:pointer}.tlv-item[data-clickable]:hover{background:var(--row-hover)}.tlv-item[data-current]{background:var(--accent-soft);border-color:var(--accent-border)}.tlv-item[data-acknowledged]{opacity:.55}.tlv-rail{flex-direction:column;flex-shrink:0;align-items:center;width:16px;display:flex}.tlv-dot{background:var(--success);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:11px}.tlv-dot[data-tone=muted]{background:var(--text-muted)}.tlv-dot[data-tone=danger],.tlv-dot[data-tone=fraud]{background:var(--danger)}.tlv-dot[data-tone=warning]{background:var(--warning)}.tlv-line{background:var(--border-default);flex:1;width:1px;margin-top:3px}.tlv-body{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-2) var(--sp-2) 0;flex:1;min-width:0;display:flex}.tlv-time{color:var(--text-muted);width:58px;font-size:var(--fs-xs);flex-shrink:0}.tlv-event{align-items:center;gap:var(--sp-1);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--accent-base);flex-shrink:0;display:inline-flex}.tlv-event[data-tone=muted]{color:var(--text-muted)}.tlv-event[data-tone=danger],.tlv-event[data-tone=fraud]{color:var(--danger)}.tlv-event[data-tone=warning]{color:var(--warning)}.tlv-detail{font-size:var(--fs-sm);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.field-hint{font-size:var(--fs-sm);color:var(--text-muted)}.field-error{font-size:var(--fs-sm);color:var(--danger)}.state-block{align-items:center;gap:var(--sp-3);padding:var(--sp-8) var(--sp-5);text-align:center;border:1px dashed var(--border-default);border-radius:var(--r-md);color:var(--text-muted);flex-direction:column;display:flex}.state-icon{color:var(--text-muted);display:flex}.state-block[data-tone=danger]{border-color:var(--danger-border)}.state-block[data-tone=danger] .state-icon{color:var(--danger)}.state-title{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-primary)}.state-desc{font-size:var(--fs-md);color:var(--text-muted);max-width:46ch}.list-error{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--danger);flex-wrap:wrap;display:flex}.inline-copy{gap:var(--sp-2);margin:var(--sp-3) 0;flex-direction:column;display:flex}.inline-copy-label{font-size:var(--fs-sm);color:var(--text-muted);font-weight:var(--fw-medium)}.inline-copy-row{align-items:flex-start;gap:var(--sp-2);background:var(--surface-inset);border:1px solid var(--border-default);border-radius:var(--r-sm);padding:var(--sp-3);display:flex}.inline-copy-value{min-width:0;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-primary);word-break:break-all;-webkit-user-select:all;user-select:all;flex:1;line-height:1.6}.inline-copy[data-multiline] .inline-copy-value{white-space:pre-wrap}.inline-copy[data-multiline] .inline-copy-row{align-items:flex-start}.stat-tile-value[data-tone=severe]{color:var(--severe)}.badge-severe{background:var(--severe-soft);color:var(--severe);border-color:var(--severe-border)}.alert-grid{gap:var(--sp-2);flex:1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.alert-cell{gap:var(--sp-1);padding:var(--sp-3);background:var(--surface-2);border-radius:var(--r-sm);cursor:pointer;text-align:left;min-width:0;color:var(--text-muted);font:inherit;transition:var(--transition);border:1px solid #0000;flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.alert-cell:hover{border-color:var(--border-strong);background:var(--surface-3)}.alert-cell-head{align-items:center;gap:var(--sp-2);font-size:var(--fs-md);font-weight:var(--fw-medium);color:var(--text-secondary);min-width:0;display:flex}.alert-cell-value{font-size:var(--fs-xl);font-weight:var(--fw-semibold);letter-spacing:-.02em;color:var(--text-muted);font-variant-numeric:tabular-nums;line-height:1.1}.alert-cell-quiet{font-size:var(--fs-sm);color:var(--text-muted);opacity:.75}.alert-cell[data-tone]{background:var(--surface-1)}.alert-cell[data-tone=warning]{border-color:var(--warning-border);background:var(--warning-soft)}.alert-cell[data-tone=warning] .alert-cell-head,.alert-cell[data-tone=warning] .alert-cell-value{color:var(--warning)}.alert-cell[data-tone=danger]{border-color:var(--danger-border);background:var(--danger-soft)}.alert-cell[data-tone=danger] .alert-cell-head,.alert-cell[data-tone=danger] .alert-cell-value{color:var(--danger)}.alert-cell[data-tone]:hover{border-color:currentColor}@media (width<=420px){.alert-grid{grid-template-columns:1fr}}.card-fill{flex-direction:column;display:flex}.login-form{gap:var(--sp-4);margin-bottom:var(--sp-4);flex-direction:column;display:flex}.login-form .form-group input{height:40px}.login-divider{align-items:center;gap:var(--sp-3);margin:var(--sp-4) 0;color:var(--text-muted);font-size:var(--fs-sm);display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.login-btn:disabled{opacity:.55;cursor:not-allowed}.login-btn-secondary{background:var(--surface-1);color:var(--text-primary);border:1px solid var(--border-default)}.login-btn-secondary:hover{background:var(--surface-3)}.sidebar-action{cursor:pointer;width:100%;font:inherit;text-align:left;color:var(--text-secondary);background:0 0;border:none}.sidebar-action:hover{background:var(--surface-3);color:var(--text-primary)}.sidebar.collapsed .sidebar-action{justify-content:center}
