:root{color-scheme:light;--bg: #f3f5f8;--surface: #ffffff;--surface-solid: #ffffff;--surface-strong: #f8fafc;--surface-muted: #eef1f6;--text: #1e2430;--heading: #0f1520;--muted: #64748b;--border: rgba(15, 21, 32, .12);--border-strong: rgba(15, 21, 32, .22);--shadow: 0 1px 2px rgba(15, 23, 42, .06);--shadow-strong: 0 12px 28px rgba(15, 23, 42, .1);--accent: #4fae2e;--accent-strong: #3f8f24;--accent-text: #2f6e1a;--accent-soft: rgba(79, 174, 46, .12);--accent-ghost: rgba(79, 174, 46, .06);--on-accent: #0b1a06;--success: #2f9e44;--success-soft: rgba(47, 158, 68, .12);--warning: #b45309;--warning-soft: rgba(180, 83, 9, .12);--danger: #d1373f;--danger-soft: rgba(209, 55, 63, .1);--sidebar-bg: #14171c;--sidebar-border: rgba(255, 255, 255, .08);--sidebar-text: #f4f6f8;--sidebar-muted: rgba(244, 246, 248, .62);--sidebar-active-bg: rgba(79, 174, 46, .16);--sidebar-active-border: #4fae2e;--sidebar-hover: rgba(255, 255, 255, .06);--ring: rgba(79, 174, 46, .28);--radius-xl: 16px;--radius-lg: 12px;--radius-md: 10px;--radius-sm: 8px;--radius-xs: 6px;--code-bg: #eef1f6;--badge-pass-bg: rgba(47, 158, 68, .12);--badge-pass-text: #237a34;--badge-fail-bg: rgba(209, 55, 63, .12);--badge-fail-text: #b3202a;--badge-inactive-bg: rgba(100, 116, 139, .14);--badge-inactive-text: #64748b;--spinner-track: #e2e8f0;--spinner-color: #4fae2e;--btn-primary-bg: #4fae2e;--btn-primary-text: #0b1a06;--btn-secondary-border: var(--border-strong);--btn-secondary-hover-bg: var(--surface-muted);--btn-secondary-text: var(--text);--btn-danger-border: var(--danger);--btn-danger-hover-bg: var(--danger);--btn-danger-hover-text: #ffffff;--btn-danger-text: var(--danger);--card-bg: var(--surface);--card-border: var(--border);--card-shadow: var(--shadow);--input-border: var(--border-strong);--modal-bg: var(--surface);--overlay-bg: rgba(15, 23, 42, .42);--filter-bg: var(--surface);--filter-border: var(--border);--pagination-text: var(--muted);--error-bg: color-mix(in srgb, var(--danger-soft) 70%, var(--surface));--error-border: rgba(209, 55, 63, .2);--error-text: var(--danger);--error-btn-text: var(--danger);--empty-text: var(--muted);--login-bg: var(--bg);--text-muted: var(--muted);--link-color: var(--accent-text);--focus-ring: var(--ring);--icon-tile-bg: var(--accent-soft);--icon-tile-text: var(--accent-text)}[data-theme=dark]{color-scheme:dark;--bg: #0b0c0f;--surface: #15171c;--surface-solid: #15171c;--surface-strong: #1b1e25;--surface-muted: #1e2129;--text: #d3d7de;--heading: #f6f7f9;--muted: #93989f;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .14);--shadow: 0 1px 2px rgba(0, 0, 0, .3);--shadow-strong: 0 16px 32px rgba(0, 0, 0, .36);--accent: #6fcf43;--accent-strong: #7ee050;--accent-text: #8fe066;--accent-soft: rgba(111, 207, 67, .16);--accent-ghost: rgba(111, 207, 67, .08);--on-accent: #0b1a06;--success: #6fcf43;--success-soft: rgba(111, 207, 67, .14);--warning: #f2a93c;--warning-soft: rgba(242, 169, 60, .14);--danger: #f0616a;--danger-soft: rgba(240, 97, 106, .14);--sidebar-bg: #0e1013;--sidebar-border: rgba(255, 255, 255, .06);--sidebar-text: #f6f7f9;--sidebar-muted: rgba(246, 247, 249, .6);--sidebar-active-bg: rgba(111, 207, 67, .14);--sidebar-active-border: #6fcf43;--sidebar-hover: rgba(255, 255, 255, .05);--ring: rgba(111, 207, 67, .3);--code-bg: #1b1e25;--badge-pass-bg: rgba(111, 207, 67, .16);--badge-pass-text: #8fe066;--badge-fail-bg: rgba(240, 97, 106, .16);--badge-fail-text: #f6a0a6;--badge-inactive-bg: rgba(147, 152, 159, .16);--badge-inactive-text: #93989f;--spinner-track: #2a2e37;--spinner-color: #6fcf43;--btn-primary-bg: #6fcf43;--btn-primary-text: #0b1a06;--btn-secondary-border: var(--border-strong);--btn-secondary-hover-bg: var(--surface-muted);--btn-secondary-text: var(--text);--btn-danger-border: var(--danger);--btn-danger-hover-bg: var(--danger);--btn-danger-hover-text: #0b0c0f;--btn-danger-text: var(--danger);--card-bg: var(--surface);--card-border: var(--border);--card-shadow: var(--shadow);--input-border: var(--border-strong);--modal-bg: var(--surface-strong);--overlay-bg: rgba(2, 3, 5, .66);--filter-bg: var(--surface);--filter-border: var(--border);--pagination-text: var(--muted);--error-bg: rgba(240, 97, 106, .1);--error-border: rgba(240, 97, 106, .24);--error-text: #f6a0a6;--error-btn-text: #f6a0a6;--empty-text: var(--muted);--login-bg: var(--bg);--text-muted: var(--muted);--link-color: var(--accent-text);--focus-ring: var(--ring);--icon-tile-bg: var(--accent-soft);--icon-tile-text: var(--accent-text)}*,*:before,*:after{box-sizing:border-box}html,body,#app{min-height:100%}html{background:var(--bg)}body{margin:0;min-height:100vh;font-family:Segoe UI,Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text);background:var(--bg);line-height:1.5;transition:background-color .2s ease,color .2s ease}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}::selection{background:var(--ring);color:var(--heading)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#64748b61;border-radius:999px}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#ffffff29}#app{min-height:100vh}.app-shell{min-height:100vh;display:flex}.sidebar-overlay{display:none}.sidebar{width:260px;flex:0 0 260px;padding:20px 16px;color:var(--sidebar-text);background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;gap:20px;position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden;transition:width .2s ease,flex-basis .2s ease,transform .2s ease}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-md);display:grid;place-items:center;background:var(--accent);color:var(--on-accent)}.brand-copy{min-width:0}.eyebrow{margin:0 0 4px;font-size:.73rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.sidebar .eyebrow{color:var(--sidebar-muted)}.brand-title,.page-title,.login-panel h1{margin:0;color:var(--heading);font-weight:800;letter-spacing:-.02em;line-height:1.15}.brand-title{font-size:1.05rem;color:var(--sidebar-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-subtitle{margin:2px 0 0;font-size:.78rem;color:var(--sidebar-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav{display:flex;flex-direction:column;gap:4px;overflow-y:auto}.sidebar-link{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-md);color:var(--sidebar-muted);border:1px solid transparent;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.sidebar-link svg{flex-shrink:0}.sidebar-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-link:hover{color:var(--sidebar-text);background:var(--sidebar-hover)}.sidebar-link.router-link-active,.sidebar-link.router-link-exact-active{color:var(--sidebar-text);background:var(--sidebar-active-bg);border-color:var(--sidebar-active-border)}.sidebar-link.router-link-active svg,.sidebar-link.router-link-exact-active svg{color:var(--accent)}.sidebar-card{margin-top:auto;padding:14px;border-radius:var(--radius-lg);background:#ffffff0a;border:1px solid var(--sidebar-border);display:grid;gap:10px}.sidebar-card-body{display:grid;gap:3px}.sidebar-card strong{font-size:.95rem;color:var(--sidebar-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 28px;background:color-mix(in srgb,var(--surface) 92%,transparent);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}.topbar-left{display:flex;align-items:center;gap:12px;min-width:0}.breadcrumb{display:flex;align-items:center;gap:8px;min-width:0;color:var(--muted);font-size:.92rem}.breadcrumb strong{color:var(--heading);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumb-link{color:var(--muted);text-decoration:none;white-space:nowrap;transition:color .15s ease}.breadcrumb-link:hover{color:var(--heading);text-decoration:underline}.topbar-subtitle{margin:0;color:var(--muted);font-size:.88rem}.topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-solid);color:var(--text);transition:background-color .15s ease,border-color .15s ease,color .15s ease}.icon-btn:hover{background:var(--surface-muted);border-color:var(--accent);color:var(--accent-text)}.page-shell{flex:1;padding:28px;display:grid;align-content:start;gap:24px;max-width:1600px;width:100%;margin:0 auto}.page{display:grid;gap:20px}.page-header,.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.page-header .page-title{margin:0}.broadcast-header{align-items:flex-start}.broadcast-heading{display:grid;gap:10px;min-width:0}.broadcast-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.broadcast-status{flex-shrink:0}.broadcast-meta{display:flex;flex-wrap:wrap;gap:10px 18px}.broadcast-meta-item{display:grid;gap:3px;min-width:220px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface)}.broadcast-meta-item .field-label{color:var(--muted)}.page-lead{margin:0;color:var(--muted)}.hero-panel,.panel,.login-panel,.stat-card,.summary-card,.message-card,.metric-card,.quick-card{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);border-radius:var(--radius-xl)}.hero-panel{padding:28px 32px;display:grid;gap:14px}.hero-badge{display:inline-flex;align-items:center;gap:6px;align-self:start;padding:6px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent-text);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}.panel{padding:24px}.panel h2{margin:0 0 12px;font-size:1.1rem;color:var(--heading)}.panel p{margin:0;color:var(--muted)}.panel-stack{display:grid;gap:20px}.stat-grid,.metric-grid,.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.stat-card,.metric-card{padding:20px;display:grid;gap:6px;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover,.summary-card:hover,.quick-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-strong)}.stat-card.passed{border-left:4px solid var(--success)}.stat-card.failed{border-left:4px solid var(--danger)}.stat-value,.metric-card strong{margin:0;color:var(--heading);font-size:1.6rem;font-weight:800}.stat-label,.metric-card span{margin:0;color:var(--muted);font-size:.88rem}.dashboard-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.quick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.quick-card{padding:20px;display:grid;gap:12px;align-content:start}.quick-card-icon{width:40px;height:40px;border-radius:var(--radius-md);display:grid;place-items:center;background:var(--icon-tile-bg);color:var(--icon-tile-text)}.quick-card h3{margin:0;font-size:1.02rem;color:var(--heading)}.quick-card p{margin:0;color:var(--muted);font-size:.88rem}.quick-card-link{display:inline-flex;align-items:center;gap:6px;color:var(--accent-text);font-weight:700;font-size:.9rem}.clickable{cursor:pointer}.flex{display:flex}.flex-center{display:flex;align-items:center;gap:8px}.gap-sm{gap:8px}.gap-md{gap:14px}.gap-lg{gap:22px}.tl{text-align:left}.tc{text-align:center}.tr{text-align:right}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}code,.code{display:inline-block;padding:2px 8px;border-radius:var(--radius-xs);background:var(--code-bg);color:var(--heading);font-size:.88em;font-family:Cascadia Code,Fira Code,JetBrains Mono,Consolas,monospace}.checkbox-label{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:8px 10px;border-radius:var(--radius-md);transition:background-color .18s ease}.checkbox-label:hover{background:var(--accent-ghost)}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}hr{margin:0;border:none;border-top:1px solid var(--border)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:none;box-shadow:0 0 0 4px var(--ring)}.toolbar,.action-row,.button-row{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap}.button-row,.action-row{justify-content:flex-start}.toolbar{padding:16px 18px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.toolbar .field{min-width:260px}.toolbar .inline{align-items:end}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;align-items:start}.field,.form-grid label{display:grid;gap:6px;align-content:start}.field-checkbox{grid-template-columns:1fr auto;align-items:center;min-height:72px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.field-span-full,.field-grid>.section,.field-grid>.panel{grid-column:1 / -1}.switch{position:relative;display:inline-flex;align-items:center;flex-shrink:0;width:46px;height:26px;cursor:pointer}.switch input{position:absolute;opacity:0;width:0;height:0;margin:0}.switch-track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:var(--border-strong);border:1px solid var(--border);transition:background .18s ease,border-color .18s ease}.switch-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--surface-solid, #fff);box-shadow:0 1px 2px #00000040;transition:transform .18s ease}.switch input:checked+.switch-track{background:var(--accent);border-color:var(--accent)}.switch input:checked~.switch-thumb{transform:translate(20px)}.switch input:focus-visible+.switch-track{box-shadow:0 0 0 3px var(--ring)}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--border)}.setting-row:first-child{border-top:none}.setting-row-text{display:grid;gap:2px}.setting-row-title{color:var(--heading);font-weight:600}.setting-row-hint{color:var(--muted);font-size:.82rem}.field-label,.status-label{color:var(--muted);font-size:.84rem;font-weight:700}.status-label{color:var(--sidebar-muted)}.toolbar-field{align-self:end;min-width:156px}.button-row .toolbar-field{gap:4px}.input,.textarea,.select,.file-input,.form-grid input,.form-grid select,.button-row input,.button-row select{display:block;width:100%;border-radius:var(--radius-md);border:1px solid var(--input-border);background:var(--surface-solid);color:var(--heading);padding:11px 13px;min-height:44px;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.input::placeholder,.textarea::placeholder,.button-row input::placeholder,.form-grid input::placeholder{color:color-mix(in srgb,var(--muted) 80%,transparent)}.input:focus,.textarea:focus,.select:focus,.file-input:focus,.form-grid input:focus,.form-grid select:focus,.button-row input:focus,.button-row select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.textarea{min-height:120px;resize:vertical}.msg-editor{display:flex;flex-direction:column}.msg-editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:6px 8px;border:1px solid var(--input-border);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--surface-muted)}.msg-editor-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--heading);font-size:.95rem;line-height:1;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.msg-editor-btn:hover{background:var(--surface-solid);border-color:var(--border-strong)}.msg-editor-btn:active{background:var(--accent-soft)}.msg-editor-sep{width:1px;height:20px;margin:0 4px;background:var(--border-strong)}.msg-editor-area{border-top-left-radius:0;border-top-right-radius:0}.form-grid input[type=checkbox]{width:18px;height:18px;min-height:auto;accent-color:var(--accent)}.button-row select{display:inline-flex;align-items:center;height:44px;cursor:pointer;appearance:auto;-webkit-appearance:auto;-moz-appearance:auto}.btn,.form-grid button,.button-row button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-md);padding:11px 18px;min-height:44px;font-weight:700;color:var(--heading);background:var(--surface-solid);transition:box-shadow .15s ease,border-color .15s ease,background-color .15s ease,color .15s ease,transform .1s ease}.btn:hover,.form-grid button:hover,.button-row button:hover{box-shadow:var(--shadow)}.btn:active,.form-grid button:active,.button-row button:active{transform:scale(.97)}.btn:focus-visible,.form-grid button:focus-visible,.button-row button:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.btn-primary,.form-grid button[type=submit]{background:var(--btn-primary-bg);color:var(--btn-primary-text);box-shadow:none}.btn-primary:hover,.form-grid button[type=submit]:hover{background:var(--accent-strong)}.btn-secondary,.button-row button,.button-row select{border-color:var(--btn-secondary-border);background:var(--surface-muted);color:var(--btn-secondary-text)}.btn-secondary:hover{background:var(--btn-secondary-hover-bg);border-color:var(--accent)}.btn-ghost{background:transparent;border-color:var(--border);color:var(--text)}.logout-button{color:var(--sidebar-text);justify-content:flex-start}.btn-danger{background:var(--danger-soft);border-color:transparent;color:var(--btn-danger-text)}.btn-danger:hover{background:var(--danger);color:var(--btn-danger-hover-text)}.btn:disabled,.form-grid button:disabled{cursor:not-allowed;opacity:.56;transform:none;box-shadow:none}.btn-sm{padding:6px 12px;min-height:auto;font-size:.85rem;border-radius:var(--radius-sm)}.btn-delete-sm{background:transparent;border:none;color:var(--danger);cursor:pointer;font-size:1.05rem;padding:.2rem;flex-shrink:0;line-height:1}.chip-list{display:flex;flex-wrap:wrap;gap:10px}.chip{display:inline-flex;align-items:center;padding:7px 13px;font-size:.85rem;font-weight:700;line-height:1;border-radius:999px;background:var(--badge-pass-bg);color:var(--badge-pass-text);white-space:nowrap;gap:6px}.chip-filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 0}.chip-filter-bar .chip{cursor:pointer;border:2px solid transparent;transition:border-color .15s,background .15s;-webkit-user-select:none;user-select:none}.chip-filter-bar .chip:hover{border-color:var(--accent);background:var(--accent-soft)}.chip.chip-active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--ring)}.badge-pass,.badge-fail,.badge-inactive{display:inline-flex;align-items:center;gap:6px;justify-content:center;border-radius:999px;padding:6px 12px;font-size:.82rem;font-weight:700;line-height:1;white-space:nowrap}.badge-pass:before,.badge-fail:before,.badge-inactive:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge-pass{background:var(--badge-pass-bg);color:var(--badge-pass-text)}.badge-fail{background:var(--badge-fail-bg);color:var(--badge-fail-text)}.badge-inactive{background:var(--badge-inactive-bg);color:var(--badge-inactive-text)}.table-shell,.table-panel{overflow:auto;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.data-table,.table-panel table{width:100%;border-collapse:collapse;min-width:720px}.data-table th,.data-table td,.table-panel th,.table-panel td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}.data-table th,.table-panel th{position:sticky;top:0;background:color-mix(in srgb,var(--surface-strong) 96%,transparent);color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;z-index:1}.data-table tbody tr{transition:background-color .15s ease}.data-table tbody tr:hover{background:var(--accent-ghost)}.data-table tbody tr.stale,.table-panel tbody tr.stale,.data-table tbody tr.stale:hover,.table-panel tbody tr.stale:hover{background:var(--danger-soft)}.table-link{color:var(--link-color);font-weight:700}.table-link:hover{text-decoration:underline}.table-note{color:var(--muted);font-size:.9rem}.placeholder-hint ul{margin:4px 0 0;padding-left:18px;list-style:disc}.placeholder-hint li{margin:2px 0}.placeholder-hint code{font-family:var(--font-mono, monospace)}.summary-card{padding:18px;display:grid;gap:6px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.summary-title{margin:0;color:var(--muted);font-size:.9rem}.summary-value{margin:0;color:var(--heading);font-size:1.4rem;font-weight:800}.message-card{padding:18px}.message-card pre{margin:0;white-space:pre-wrap;word-break:break-word;color:var(--text)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--login-bg)}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:4px}.login-panel{width:min(100%,440px);padding:28px;display:grid;gap:18px}.login-copy{color:var(--muted);margin:6px 0 0}.login-form{display:grid;gap:14px}.form-error,.error{margin:0;color:var(--danger);font-weight:600}.empty-state{padding:26px;border-radius:var(--radius-lg);border:1px dashed var(--border-strong);background:var(--surface);color:var(--empty-text);text-align:center}.stack{display:grid;gap:12px}.muted,.delta-neutral,.trend-meta,.trend-empty{color:var(--muted)}.trend-label,.trend-axis{fill:var(--muted);font-size:11px}.compact{display:grid;gap:10px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px 18px}.max-settings-grid{grid-template-columns:repeat(2,minmax(260px,1fr));align-items:stretch}.section{display:grid;gap:12px}.section-title{margin:0;font-size:1.15rem;line-height:1.2;color:var(--heading)}.section-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.section-header h3{margin:0;font-size:1rem;color:var(--heading)}.option-row{display:flex;gap:10px;align-items:center}.option-input{flex:1}.opt-checkbox{position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;cursor:pointer}.opt-checkbox input{position:absolute;opacity:0;width:0;height:0}.check-visual,.check-mark{width:14px;height:14px;border:2px solid var(--border-strong);border-radius:4px;background:var(--surface);flex-shrink:0;transition:background .15s,border-color .15s}.check-label{display:inline-flex;align-items:center;gap:.55rem;padding:10px 16px;font-weight:600;font-size:.88rem;cursor:pointer;position:relative;color:var(--text);border-radius:999px;background:var(--surface-muted);border:2px solid var(--border);transition:background .15s,border-color .15s,box-shadow .15s;-webkit-user-select:none;user-select:none}.check-label:hover{border-color:var(--accent);background:var(--accent-ghost)}.check-label:has(input:checked){background:var(--accent-soft);border-color:var(--accent);box-shadow:0 0 0 2px var(--ring)}.check-label .check-mark{display:none}.check-label input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.footer{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border)}.pagination-bar,.filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pagination-bar{justify-content:center}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal,.modal-panel{background:var(--modal-bg);border-radius:var(--radius-xl);padding:2rem;width:100%;max-width:640px;max-height:90vh;overflow-y:auto;border:1px solid var(--border);box-shadow:var(--shadow-strong)}.modal-title{margin:0 0 1.25rem;font-size:1.4rem;color:var(--heading);font-weight:800}.inline{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.toggle-button{min-width:44px;min-height:44px;padding:0 14px;border-radius:var(--radius-md)}.error-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;border-color:var(--error-border)!important;color:var(--error-text)}.delta-positive{color:var(--success);font-weight:700}.delta-negative{color:var(--danger);font-weight:700}.trend-panel{display:grid;gap:12px}.trend-chart{width:100%;min-height:220px}.trend-empty{min-height:220px;display:grid;place-items:center}.trend-grid line{stroke:var(--border-strong);stroke-width:1}.trend-line{fill:none;stroke:var(--accent);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.trend-dot{fill:var(--surface);stroke:var(--accent);stroke-width:3}input[type=date],input[type=time],input[type=datetime-local]{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);border:1px solid var(--input-border);background:var(--surface-solid);color:var(--heading);padding:11px 13px;outline:none;font:inherit;appearance:none;-webkit-appearance:none;-moz-appearance:none;height:44px;min-width:160px}input[type=date]:focus,input[type=time]:focus,input[type=datetime-local]:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer;filter:var(--calendar-icon-filter, none)}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator,[data-theme=dark] input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(1)}input[type=date]::-webkit-calendar-picker-indicator:hover,input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1}.sidebar.sidebar-collapsed{width:76px;flex-basis:76px;padding:20px 12px}.sidebar-collapsed .brand{justify-content:center}.sidebar-collapsed .brand-copy,.sidebar-collapsed .sidebar-section-title,.sidebar-collapsed .sidebar-link span,.sidebar-collapsed .sidebar-card-body{display:none}.sidebar-collapsed .sidebar-link{justify-content:center;padding:10px}.sidebar-collapsed .sidebar-card{padding:10px;justify-items:center}.sidebar-section-title{margin:14px 0 4px;padding:0 12px;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sidebar-muted)}.sidebar-section-title:first-child{margin-top:2px}@media(max-width:1600px){.page-shell{max-width:none}}@media(max-width:1366px){.chart-grid,.dashboard-columns{grid-template-columns:1fr}}@media(max-width:1080px){.sidebar{position:fixed;z-index:60;left:0;top:0;transform:translate(-100%);box-shadow:var(--shadow-strong)}.sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);z-index:50}.app-shell{display:block}.field-grid,.form-grid{grid-template-columns:1fr}}@media(max-width:760px){.page-header,.section-head,.toolbar,.action-row,.button-row{align-items:stretch;flex-direction:column}.topbar{padding:12px 16px;flex-wrap:nowrap}.breadcrumb strong{max-width:46vw}.breadcrumb>.breadcrumb-link,.breadcrumb>svg{display:none}.page-shell{padding:18px 16px}.dashboard-columns,.metric-grid,.quick-grid{grid-template-columns:1fr}.panel,.hero-panel,.login-panel,.stat-card,.summary-card,.message-card,.toolbar,.modal,.modal-panel{border-radius:var(--radius-lg)}.modal,.modal-panel{padding:1.25rem}}
