@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;1,9..40,400&family=DM+Mono:wght@400;500&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font: "DM Sans", system-ui, sans-serif;--mono: "DM Mono", monospace;--radius: 10px;--radius-sm: 6px;--sidebar-w: 224px;--topbar-h: 56px;--trans: .16s ease;--bg: #f5f4f1;--surface: #ffffff;--surface-2: #f9f8f6;--border: rgba(0,0,0,.08);--border-md: rgba(0,0,0,.14);--text-1: #1a1918;--text-2: #6b6964;--text-3: #a8a5a0;--teal: #1D9E75;--teal-bg: #e1f5ee;--teal-text: #0f6e56;--amber-bg: #faeeda;--amber-text: #854f0b;--amber-border:#f0c97a;--red-bg: #fcebeb;--red-text: #a32d2d;--red-border: #f7c1c1;--blue-bg: #e6f1fb;--blue-text: #185fa5;--blue-border:#b5d4f4;--green-bg: #eaf3de;--green-text: #3b6d11;--green-border:#c0dd97;--chart-block: #e53e3e;--chart-flag: #dd6b20;--chart-review: #2b6cb0;--chart-open: #276749;--unread-bg: #eef4ff;--unread-bg-hover: #ddeaff}@media (prefers-color-scheme: dark){html:not([data-theme]){--bg: #141413;--surface: #1e1d1c;--surface-2: #252422;--border: rgba(255,255,255,.08);--border-md: rgba(255,255,255,.14);--text-1: #f0ede8;--text-2: #9a9590;--text-3: #5c5955;--teal-bg: #0a2e22;--teal-text: #5dcaa5;--amber-bg: #2a1e08;--amber-text: #f0c97a;--amber-border:#5c3a0a;--red-bg: #2a0f0f;--red-text: #f09595;--red-border: #5c1f1f;--blue-bg: #0c1e35;--blue-text: #85b7eb;--blue-border:#1a3a5c;--green-bg: #0f200a;--green-text: #97c459;--green-border:#264010;--chart-block: #fc5c5c;--chart-flag: #f6ad55;--chart-review: #63b3ed;--chart-open: #68d391;--unread-bg: #0f1f3a;--unread-bg-hover: #162848}}html[data-theme=dark]{--bg: #141413;--surface: #1e1d1c;--surface-2: #252422;--border: rgba(255,255,255,.08);--border-md: rgba(255,255,255,.14);--text-1: #f0ede8;--text-2: #9a9590;--text-3: #5c5955;--teal-bg: #0a2e22;--teal-text: #5dcaa5;--amber-bg: #2a1e08;--amber-text: #f0c97a;--amber-border:#5c3a0a;--red-bg: #2a0f0f;--red-text: #f09595;--red-border: #5c1f1f;--blue-bg: #0c1e35;--blue-text: #85b7eb;--blue-border:#1a3a5c;--green-bg: #0f200a;--green-text: #97c459;--green-border:#264010;--chart-block: #fc5c5c;--chart-flag: #f6ad55;--chart-review: #63b3ed;--chart-open: #68d391;--unread-bg: #0f1f3a;--unread-bg-hover: #162848}html[data-theme=light]{--bg: #f5f4f1;--surface: #ffffff;--surface-2: #f9f8f6;--border: rgba(0,0,0,.08);--border-md: rgba(0,0,0,.14);--text-1: #1a1918;--text-2: #6b6964;--text-3: #a8a5a0;--teal-bg: #e1f5ee;--teal-text: #0f6e56;--amber-bg: #faeeda;--amber-text: #854f0b;--amber-border:#f0c97a;--red-bg: #fcebeb;--red-text: #a32d2d;--red-border: #f7c1c1;--blue-bg: #e6f1fb;--blue-text: #185fa5;--blue-border:#b5d4f4;--green-bg: #eaf3de;--green-text: #3b6d11;--green-border:#c0dd97}html,body{height:100%}body{font-family:var(--font);font-size:14px;line-height:1.5;background:var(--bg);color:var(--text-1);-webkit-font-smoothing:antialiased}.hidden{display:none!important}#screen-login,#screen-app{display:flex}#screen-otp,#screen-login{min-height:100vh;align-items:center;justify-content:center;background:var(--bg)}.login-wrap{width:360px}.login-logo{text-align:center;margin-bottom:2.5rem}.login-logo-img{height:48px;width:auto}@media (prefers-color-scheme: dark){html:not([data-theme]) .login-logo-img{filter:invert(1)}}html[data-theme=dark] .login-logo-img{filter:invert(1)}.login-card{background:var(--surface);border:.5px solid var(--border-md);border-radius:var(--radius);padding:2rem}.login-card h1{font-size:16px;font-weight:500;margin-bottom:.25rem}.login-card p{font-size:13px;color:var(--text-2);margin-bottom:1.5rem}.form-field{margin-bottom:1rem}.form-field label{display:block;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);margin-bottom:5px}.form-field input{width:100%;padding:9px 11px;border:.5px solid var(--border-md);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-1);font-family:var(--font);font-size:14px;outline:none;transition:border-color var(--trans)}.form-field input:focus{border-color:var(--teal)}.form-field select{width:100%;padding:9px 11px;border:.5px solid var(--border-md);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-1);font-family:var(--font);font-size:14px;outline:none;transition:border-color var(--trans);cursor:pointer}.form-field select:focus{border-color:var(--teal)}.btn-full{width:100%;padding:10px;background:var(--text-1);color:var(--surface);border:none;border-radius:var(--radius-sm);font-family:var(--font);font-size:14px;font-weight:500;cursor:pointer;margin-top:.5rem;transition:opacity var(--trans)}.btn-full:hover{opacity:.82}.btn-full:disabled{opacity:.4;cursor:not-allowed}.pw-wrap{position:relative}.pw-wrap input{padding-right:38px}.pw-eye{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;padding:0;cursor:pointer;color:var(--text-3);line-height:1;display:flex;align-items:center}.pw-eye:hover{color:var(--text-1)}.login-error{font-size:12px;color:var(--red-text);margin-top:.75rem;text-align:center;min-height:16px}#screen-app{flex-direction:column;min-height:100vh}.topbar{height:var(--topbar-h);background:var(--surface);border-bottom:.5px solid var(--border);display:flex;align-items:center;padding:0 1.25rem;gap:10px;flex-shrink:0;position:sticky;top:0;z-index:10}.topbar-brand{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;letter-spacing:-.2px;text-decoration:none;color:var(--text-1)}.topbar-logo-icon{height:22px;width:auto;flex-shrink:0}@media (prefers-color-scheme: dark){html:not([data-theme]) .topbar-logo-icon{filter:invert(1)}}html[data-theme=dark] .topbar-logo-icon{filter:invert(1)}.topbar-sep{width:.5px;height:18px;background:var(--border-md);margin:0 4px}.topbar-tenant{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-2)}.topbar-tenant-dot{width:7px;height:7px;border-radius:50%;background:var(--teal)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}.lang-switcher{display:flex;background:var(--surface-2);border:.5px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.lang-switcher button{padding:4px 10px;border:none;background:transparent;font-family:var(--font);font-size:12px;color:var(--text-2);cursor:pointer;transition:all var(--trans)}.lang-switcher button.active{background:var(--text-1);color:var(--surface)}.avatar{width:30px;height:30px;border-radius:50%;background:var(--blue-bg);color:var(--blue-text);font-size:11px;font-weight:500;display:flex;align-items:center;justify-content:center;cursor:default;border:none}.btn-ghost{padding:5px 10px;border:.5px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-2);font-family:var(--font);font-size:12px;cursor:pointer;transition:all var(--trans)}.btn-ghost:hover{border-color:var(--border-md);color:var(--text-1)}.notify-toast{display:flex;align-items:center;gap:10px;padding:8px 20px;font-size:13px;flex-shrink:0;z-index:20}.notify-error{background:var(--red-bg);color:var(--red-text);border-bottom:1px solid var(--red-border)}.notify-success{background:var(--green-bg);color:var(--green-text);border-bottom:1px solid var(--green-border)}.notify-close{margin-left:auto;background:none;border:none;cursor:pointer;color:inherit;font-size:14px;line-height:1;padding:2px 4px;opacity:.7}.notify-close:hover{opacity:1}.impersonation-banner{display:flex;align-items:center;gap:10px;background:var(--amber-bg);border-bottom:1px solid var(--amber-border);color:var(--amber-text);padding:6px 20px;font-size:12px;flex-shrink:0}.app-body{display:flex;flex:1;min-height:0}.sidebar{width:var(--sidebar-w);background:var(--surface);border-right:.5px solid var(--border);padding:1rem 0;flex-shrink:0;position:sticky;top:var(--topbar-h);height:calc(100vh - var(--topbar-h));overflow-y:auto}.nav-group{padding:0 .75rem;margin-bottom:1.25rem}.nav-group-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);padding:0 .5rem;margin-bottom:3px}.nav-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:13.5px;color:var(--text-2);transition:all var(--trans);-webkit-user-select:none;user-select:none;border:none;background:none;width:100%;text-align:left;font-family:var(--font)}.nav-item:hover{background:var(--surface-2);color:var(--text-1)}.nav-item.active,a.nav-item.router-link-active,a.nav-item.router-link-exact-active{background:var(--surface-2);color:var(--text-1);font-weight:500}a.nav-item{text-decoration:none}.nav-item svg{width:15px;height:15px;flex-shrink:0;opacity:.65}.nav-item.active svg,a.nav-item.router-link-active svg,a.nav-item.router-link-exact-active svg{opacity:1}.nav-badge{margin-left:auto;font-size:10px;font-weight:600;line-height:1;padding:2px 6px;border-radius:10px;background:var(--chart-block);color:#fff;min-width:18px;text-align:center}.main{flex:1;padding:1.75rem;overflow-y:auto;min-width:0}.page{display:block}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem}.page-title{font-size:18px;font-weight:500;letter-spacing:-.3px}.page-sub{font-size:12px;color:var(--text-3);margin-top:3px}.page-actions{display:flex;gap:8px;align-items:center}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:1.5rem}.metric{background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem}.metric-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);margin-bottom:6px}.metric-value{font-size:28px;font-weight:500;letter-spacing:-.5px;line-height:1}.metric-delta{font-size:11px;color:var(--text-3);margin-top:5px}.metric-delta.up{color:var(--teal)}.metric-delta.dn{color:var(--red-text)}.panel{background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius);margin-bottom:1rem}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.1rem;border-bottom:.5px solid var(--border)}.panel-title{font-size:13px;font-weight:500}.row-2{display:grid;grid-template-columns:1fr 300px;gap:1rem;margin-bottom:1rem}.badge{display:inline-flex;align-items:center;font-size:10px;font-weight:500;padding:2px 8px;border-radius:10px;letter-spacing:.03em;white-space:nowrap}.badge-block{background:var(--red-bg);color:var(--red-text);border:.5px solid var(--red-border)}.badge-flag{background:var(--amber-bg);color:var(--amber-text);border:.5px solid var(--amber-border)}.badge-review{background:var(--blue-bg);color:var(--blue-text);border:.5px solid var(--blue-border)}.badge-allow{background:var(--green-bg);color:var(--green-text);border:.5px solid var(--green-border)}.badge-open{background:var(--surface-2);color:var(--text-2);border:.5px solid var(--border)}.badge-confirmed{background:var(--red-bg);color:var(--red-text);border:.5px solid var(--red-border)}.badge-dismissed{background:var(--green-bg);color:var(--green-text);border:.5px solid var(--green-border)}.badge-blocked{background:var(--red-bg);color:var(--red-text);border:.5px solid var(--red-border)}.badge-admin{background:var(--blue-bg);color:var(--blue-text);border:.5px solid var(--blue-border)}.badge-superadmin{background:#f3e8ff;color:#7c3aed;border:.5px solid #d8b4fe}@media (prefers-color-scheme: dark){html:not([data-theme]) .badge-superadmin{background:#2e1065;color:#c4b5fd;border-color:#5b21b6}}html[data-theme=dark] .badge-superadmin{background:#2e1065;color:#c4b5fd;border-color:#5b21b6}.conf-bar{display:flex;align-items:center;gap:6px}.conf-track{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden;min-width:50px}.conf-fill{height:100%;border-radius:2px}.conf-num{font-size:11px;font-family:var(--mono);color:var(--text-2);min-width:30px;text-align:right}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:8px 1.1rem;border-bottom:.5px solid var(--border);white-space:nowrap}.data-table td{padding:10px 1.1rem;font-size:12.5px;border-bottom:.5px solid var(--border);vertical-align:middle}.data-table tbody tr{cursor:pointer;transition:background var(--trans)}.data-table tbody tr:hover td{background:var(--surface-2)}.data-table tbody tr:last-child td{border-bottom:none}.alert-row-abuse td:first-child{border-left:3px solid var(--amber-border)}.alert-row-abuse:hover td{background:var(--amber-bg)}.alert-row-unread td{font-weight:700;background:var(--unread-bg)}.alert-row-unread td:first-child{border-left:3px solid var(--blue-text)}.alert-row-unread:hover td{background:var(--unread-bg-hover)!important}.alert-row-unread .td-name-sub{color:var(--text-2)}.td-name-main{font-weight:500}.td-name-sub{font-size:11px;color:var(--text-3);margin-top:1px}.td-mono{font-family:var(--mono);font-size:11px;color:var(--text-3)}.filter-row{display:flex;gap:6px;padding:.75rem 1.1rem;border-bottom:.5px solid var(--border);flex-wrap:wrap}.filter-pill{padding:4px 11px;border:.5px solid var(--border);border-radius:12px;background:transparent;font-family:var(--font);font-size:11px;color:var(--text-2);cursor:pointer;transition:all var(--trans)}.filter-pill.active{background:var(--text-1);color:var(--surface);border-color:transparent}.filter-pill:hover:not(.active){border-color:var(--border-md);color:var(--text-1)}.search-row{display:flex;align-items:center;gap:8px;padding:.75rem 1.1rem;border-bottom:.5px solid var(--border)}.search-icon{color:var(--text-3);flex-shrink:0}.search-input{flex:1;border:none;background:transparent;color:var(--text-1);font-family:var(--font);font-size:13px;outline:none}.search-input::placeholder{color:var(--text-3)}.btn{padding:7px 13px;border:.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-2);font-family:var(--font);font-size:12px;cursor:pointer;transition:all var(--trans)}.btn:hover{border-color:var(--border-md);color:var(--text-1)}.btn-primary{background:var(--text-1);color:var(--surface);border-color:transparent}.btn-primary:hover{opacity:.82;color:var(--surface)}.btn-danger{background:var(--red-bg);color:var(--red-text);border-color:var(--red-border)}.btn-danger:hover{opacity:.8}.btn-success{background:var(--green-bg);color:var(--green-text);border-color:var(--green-border)}.btn-success:hover{opacity:.8}.bar-chart{display:flex;align-items:flex-end;gap:4px;height:80px;padding:1rem 1.1rem .75rem}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.bar-fill{width:100%;border-radius:3px 3px 0 0;transition:opacity var(--trans);min-height:3px}.bar-fill:hover{opacity:.65}.bar-lbl{font-size:9px;color:var(--text-3)}.donut-section{padding:1.25rem 1.1rem 1rem}.donut-legend-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;padding:5px 0;border-bottom:.5px solid var(--border)}.donut-legend-row:last-child{border-bottom:none}.donut-legend-lbl{display:flex;align-items:center;gap:7px;color:var(--text-2)}.donut-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.donut-val{font-family:var(--mono);font-weight:500}.player-avatar{width:28px;height:28px;border-radius:50%;background:var(--blue-bg);color:var(--blue-text);font-size:10px;font-weight:500;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:50;align-items:center;justify-content:center}.modal-backdrop.open{display:flex}.modal{background:var(--surface);border:.5px solid var(--border-md);border-radius:var(--radius);width:500px;max-width:95vw;max-height:90vh;overflow-y:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:.5px solid var(--border);position:sticky;top:0;background:var(--surface)}.modal-title{font-size:14px;font-weight:500}.modal-sub{font-size:11px;color:var(--text-3);margin-top:2px}.modal-close{background:none;border:none;cursor:pointer;color:var(--text-2);font-size:20px;line-height:1;padding:2px 4px}.modal-close:hover{color:var(--text-1)}.modal-foot{display:flex;gap:8px;padding:.9rem 1.25rem;border-top:.5px solid var(--border)}.signal-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:.5px solid var(--border);font-size:12px}.signal-row:last-child{border-bottom:none}.signal-name{font-family:var(--mono);font-size:11px;color:var(--text-2);min-width:115px}.signal-detail{flex:1;color:var(--text-2);font-size:11px}.diff-table{width:100%;border-collapse:collapse;margin-bottom:.75rem;font-size:12px}.diff-table thead th{padding:4px 8px 6px;border-bottom:1px solid var(--border);font-weight:600;font-size:11px}.diff-field-col{width:90px}.diff-mid-col{width:64px;text-align:center}.diff-val-col{width:calc((100% - 154px)/2)}.diff-player-lbl{display:block;font-weight:600;font-size:12px;color:var(--text-1)}.diff-pid{display:block;font-family:var(--mono);font-size:10px;color:var(--text-3)}.diff-row{border-bottom:1px solid var(--border)}.diff-row:last-child{border-bottom:none}.diff-row--exact{background:#16a34a0d}.diff-row--fuzzy{background:#eab3080f}.diff-row--weak{background:#eab30808}.diff-field{padding:7px 8px;color:var(--text-3);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.diff-val{padding:7px 8px;font-family:var(--mono);color:var(--text-2);word-break:break-all}.diff-val--match{color:var(--text-1);font-weight:500}.diff-mid{padding:7px 4px;text-align:center}.diff-badge{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border-radius:4px;font-weight:700;font-size:12px;line-height:1}.diff-badge--exact{background:#16a34a26;color:#16a34a}.diff-badge--fuzzy{background:#eab3082e;color:#ca8a04}.diff-badge--weak{background:#eab3081a;color:#ca8a04}.settings-card{background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem;max-width:560px}.settings-section-title{font-size:13px;font-weight:500;margin-bottom:.9rem}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:.5px solid var(--border)}.settings-row:last-child{border-bottom:none}.settings-row-lbl{font-size:13px}.settings-row-sub{font-size:11px;color:var(--text-3);margin-top:2px}.toggle{width:34px;height:18px;border-radius:9px;background:var(--border-md);position:relative;cursor:pointer;transition:background var(--trans);border:none;flex-shrink:0}.toggle.on{background:var(--teal)}.toggle:after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:#fff;top:3px;left:3px;transition:left var(--trans)}.toggle.on:after{left:19px}.secret-display{font-family:var(--mono);font-size:12px;color:var(--text-2);background:var(--surface-2);border:.5px solid var(--border);border-radius:var(--radius-sm);padding:6px 10px;word-break:break-all}.spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--teal);border-radius:50%;animation:spin .6s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-3);font-size:13px}@media (max-width: 700px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.row-2{grid-template-columns:1fr}.sidebar{display:none}.main{padding:1rem}}html[data-font=sm] body,html[data-font=sm] .topbar-brand{font-size:15px}html[data-font=sm] .topbar-tenant{font-size:14px}html[data-font=sm] .btn-ghost{font-size:13px}html[data-font=sm] .sidebar-logo{font-size:15px}html[data-font=sm] .nav-group-label{font-size:11px}html[data-font=sm] .nav-item{font-size:14px}html[data-font=sm] .nav-badge{font-size:11px}html[data-font=sm] .page-title{font-size:19px}html[data-font=sm] .page-sub{font-size:13px}html[data-font=sm] .metric-value{font-size:30px}html[data-font=sm] .metric-label,html[data-font=sm] .metric-delta{font-size:12px}html[data-font=sm] .panel-title{font-size:14px}html[data-font=sm] .badge{font-size:11px}html[data-font=sm] .filter-pill,html[data-font=sm] .filter-select{font-size:12px}html[data-font=sm] .filter-search input{font-size:13px}html[data-font=sm] .search-input{font-size:14px}html[data-font=sm] .data-table th{font-size:11px}html[data-font=sm] .data-table td{font-size:14px}html[data-font=sm] .td-name-sub,html[data-font=sm] .td-mono{font-size:12px}html[data-font=sm] .pager-btn,html[data-font=sm] .pager-info{font-size:13px}html[data-font=sm] .pager-size{font-size:12px}html[data-font=sm] .btn{font-size:13px}html[data-font=sm] .btn-full,html[data-font=sm] .modal-title{font-size:15px}html[data-font=sm] .modal-sub,html[data-font=sm] .form-field label{font-size:12px}html[data-font=sm] .form-field input,html[data-font=sm] .form-field select{font-size:15px}html[data-font=sm] .settings-section-title,html[data-font=sm] .settings-row-lbl{font-size:14px}html[data-font=sm] .settings-row-sub,html[data-font=sm] .conf-num{font-size:12px}html[data-font=sm] .donut-legend-row{font-size:13px}html[data-font=sm] .bar-lbl{font-size:10px}html[data-font=sm] .empty-state{font-size:14px}html[data-font=sm] .section-label{font-size:11px}html[data-font=md] body,html[data-font=md] .topbar-brand{font-size:17px}html[data-font=md] .topbar-tenant{font-size:16px}html[data-font=md] .btn-ghost{font-size:14px}html[data-font=md] .sidebar-logo{font-size:17px}html[data-font=md] .nav-group-label{font-size:12px}html[data-font=md] .nav-item{font-size:15.5px}html[data-font=md] .nav-badge{font-size:12px}html[data-font=md] .page-title{font-size:21px}html[data-font=md] .page-sub{font-size:14px}html[data-font=md] .metric-value{font-size:32px}html[data-font=md] .metric-label,html[data-font=md] .metric-delta{font-size:13px}html[data-font=md] .panel-title{font-size:15px}html[data-font=md] .badge{font-size:12px}html[data-font=md] .filter-pill,html[data-font=md] .filter-select{font-size:13px}html[data-font=md] .filter-search input{font-size:14px}html[data-font=md] .search-input{font-size:15px}html[data-font=md] .data-table th{font-size:12px}html[data-font=md] .data-table td{font-size:15.5px}html[data-font=md] .td-name-sub,html[data-font=md] .td-mono{font-size:13px}html[data-font=md] .pager-btn,html[data-font=md] .pager-info{font-size:14px}html[data-font=md] .pager-size{font-size:13px}html[data-font=md] .btn{font-size:14px}html[data-font=md] .btn-full,html[data-font=md] .modal-title{font-size:17px}html[data-font=md] .modal-sub,html[data-font=md] .form-field label{font-size:13px}html[data-font=md] .form-field input,html[data-font=md] .form-field select{font-size:17px}html[data-font=md] .settings-section-title,html[data-font=md] .settings-row-lbl{font-size:15px}html[data-font=md] .settings-row-sub,html[data-font=md] .conf-num{font-size:13px}html[data-font=md] .donut-legend-row{font-size:14px}html[data-font=md] .bar-lbl{font-size:11px}html[data-font=md] .empty-state{font-size:15px}html[data-font=md] .section-label{font-size:12px}html[data-font=lg] body,html[data-font=lg] .topbar-brand{font-size:20px}html[data-font=lg] .topbar-tenant{font-size:19px}html[data-font=lg] .btn-ghost{font-size:17px}html[data-font=lg] .sidebar-logo{font-size:20px}html[data-font=lg] .nav-group-label{font-size:14px}html[data-font=lg] .nav-item{font-size:18px}html[data-font=lg] .nav-badge{font-size:14px}html[data-font=lg] .page-title{font-size:25px}html[data-font=lg] .page-sub{font-size:17px}html[data-font=lg] .metric-value{font-size:38px}html[data-font=lg] .metric-label,html[data-font=lg] .metric-delta{font-size:16px}html[data-font=lg] .panel-title{font-size:17px}html[data-font=lg] .badge{font-size:14px}html[data-font=lg] .filter-pill,html[data-font=lg] .filter-select{font-size:16px}html[data-font=lg] .filter-search input{font-size:17px}html[data-font=lg] .search-input{font-size:18px}html[data-font=lg] .data-table th{font-size:14px}html[data-font=lg] .data-table td{font-size:18px}html[data-font=lg] .td-name-sub,html[data-font=lg] .td-mono{font-size:16px}html[data-font=lg] .pager-btn,html[data-font=lg] .pager-info{font-size:17px}html[data-font=lg] .pager-size,html[data-font=lg] .btn{font-size:16px}html[data-font=lg] .btn-full,html[data-font=lg] .modal-title{font-size:20px}html[data-font=lg] .modal-sub,html[data-font=lg] .form-field label{font-size:16px}html[data-font=lg] .form-field input,html[data-font=lg] .form-field select{font-size:20px}html[data-font=lg] .settings-section-title,html[data-font=lg] .settings-row-lbl{font-size:17px}html[data-font=lg] .settings-row-sub,html[data-font=lg] .conf-num{font-size:16px}html[data-font=lg] .donut-legend-row{font-size:17px}html[data-font=lg] .bar-lbl{font-size:13px}html[data-font=lg] .empty-state{font-size:17px}html[data-font=lg] .section-label{font-size:14px}.btn-icon{width:30px;height:30px;border:.5px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--trans);flex-shrink:0}.btn-icon:hover{border-color:var(--border-md);color:var(--text-1)}.font-switcher{display:flex;background:var(--surface-2);border:.5px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.font-switcher button{padding:4px 9px;border:none;background:transparent;font-family:var(--font);font-size:11px;color:var(--text-2);cursor:pointer;transition:all var(--trans)}.font-switcher button.active{background:var(--text-1);color:var(--surface)}.pager{display:flex;align-items:center;gap:6px;padding:.65rem 1.1rem;border-top:.5px solid var(--border);flex-wrap:wrap}.pager-btn{min-width:28px;height:28px;padding:0 7px;border:.5px solid var(--border);border-radius:var(--radius-sm);background:transparent;font-family:var(--font);font-size:12px;color:var(--text-2);cursor:pointer;transition:all var(--trans);display:flex;align-items:center;justify-content:center}.pager-btn:hover:not(:disabled){border-color:var(--border-md);color:var(--text-1)}.pager-btn.active{background:var(--text-1);color:var(--surface);border-color:transparent}.pager-btn:disabled{opacity:.35;cursor:not-allowed}.pager-info{margin-left:auto;font-size:12px;color:var(--text-3)}.pager-size{font-size:11px;padding:3px 6px;border:.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-2);cursor:pointer;outline:none;font-family:var(--font)}.panel>div:has(>.search-input){padding:.75rem 1.1rem;border-bottom:.5px solid var(--border);margin-bottom:0!important}.panel>.panel-title{padding:.85rem 1.1rem;border-bottom:.5px solid var(--border);display:block}.panel>.settings-row{padding-left:1.1rem;padding-right:1.1rem}.panel>div:not(.panel-head):not(.settings-row):not(.filter-bar):not(.pager){padding-left:1.1rem;padding-right:1.1rem}.panel>div:not(.panel-head):not(.settings-row):not(.filter-bar):not(.pager):first-child{padding-top:.85rem}.panel>div:not(.panel-head):not(.settings-row):not(.filter-bar):not(.pager):last-child{padding-bottom:1rem}.filters-row{display:flex;align-items:center;gap:8px;margin-bottom:1rem;flex-wrap:wrap}.filters-row .search-input{flex:1;min-width:180px;max-width:320px;padding:7px 11px;border:.5px solid var(--border-md);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-1);font-family:var(--font);font-size:13px;outline:none;transition:border-color var(--trans)}.filters-row .search-input:focus{border-color:var(--teal)}.modal-body .search-input,.panel>div .search-input{width:100%;padding:9px 11px;border:.5px solid var(--border-md);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-1);font-family:var(--font);font-size:13px;outline:none;transition:border-color var(--trans)}.modal-body .search-input:focus,.panel>div .search-input:focus{border-color:var(--teal)}.modal-body .filter-select{padding:7px 10px;font-size:13px;border:.5px solid var(--border-md);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-1);font-family:var(--font);outline:none;width:100%}.modal-body .filter-select:focus{border-color:var(--teal)}.filter-bar{padding:.65rem 1.1rem;border-bottom:.5px solid var(--border);display:flex;flex-direction:column;gap:8px}.filter-bar-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.filter-search{display:flex;align-items:center;gap:6px;flex:1;min-width:180px;max-width:320px;background:var(--surface-2);border:.5px solid var(--border);border-radius:var(--radius-sm);padding:4px 10px}.filter-search svg{color:var(--text-3);flex-shrink:0}.filter-search input{border:none;background:transparent;color:var(--text-1);font-family:var(--font);font-size:12px;outline:none;width:100%}.filter-search input::placeholder{color:var(--text-3)}.filter-select{font-size:11px;padding:4px 8px;border:.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-2);cursor:pointer;outline:none;font-family:var(--font)}.sidebar-logo{font-size:14px;font-weight:600;letter-spacing:-.2px;color:var(--text-1);padding:.25rem .75rem 1rem}.panel-body{padding:1.1rem}.section-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:.5rem}.btn-secondary{background:var(--surface-2);color:var(--text-1);border-color:var(--border-md)}.btn-secondary:hover{background:var(--surface)}.import-result{font-size:12px;color:var(--text-2);padding:.75rem 0}.import-result.ok{color:var(--green-text)}.import-result.err{color:var(--red-text)}.modal-box{background:var(--surface);border:.5px solid var(--border-md);border-radius:var(--radius);width:500px;max-width:95vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:.5px solid var(--border);flex-shrink:0;background:var(--surface)}.modal-body{padding:1.25rem;overflow-y:auto;flex:1;min-height:0}.modal-footer{display:flex;gap:8px;padding:.9rem 1.25rem;border-top:.5px solid var(--border);flex-shrink:0;background:var(--surface)}
