.empty-state{border:1px dashed var(--color-border);border-radius:var(--radius);padding:var(--space-4) var(--space-3);text-align:center;color:var(--color-text-muted);background:var(--color-surface)}.empty-state p{margin:0}.error-message{border:1px solid var(--color-danger);background:var(--color-danger-bg);color:var(--color-text);padding:var(--space-3);border-radius:var(--radius)}.error-message .error-id{color:var(--color-text-muted);font-size:.85rem}.loading{color:var(--color-text-muted);padding:var(--space-4) 0;text-align:center}.client-selector{gap:var(--space-1);flex-direction:column;display:flex}.client-selector label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.client-selector select{width:100%}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--space-3);gap:var(--space-4);flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-top{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.sidebar-brand{flex-direction:column;display:flex}.sidebar-brand-mark{letter-spacing:.08em;color:var(--color-primary);font-weight:800}.sidebar-app{color:var(--color-text-muted);font-size:var(--font-size-sm)}.sidebar-menu{display:none}.sidebar-panel{gap:var(--space-4);flex-direction:column;flex:1;display:flex}.sidebar-nav{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.sidebar-link{padding:var(--space-2) var(--space-3);border-radius:var(--radius);color:var(--color-text);font-weight:500;text-decoration:none;display:block}.sidebar-link:hover{background:var(--color-surface-2)}.sidebar-link.is-active{background:var(--color-primary-bg);color:var(--color-primary);font-weight:700}.sidebar-footer{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);flex-direction:column;margin-top:auto;display:flex}.sidebar-user{flex-direction:column;margin:0;display:flex}@media (width<=800px){.sidebar{border-right:none;border-bottom:1px solid var(--color-border);gap:var(--space-3);height:auto;position:static}.sidebar-menu{display:inline-block}.sidebar-panel{display:none}.sidebar.is-open .sidebar-panel{display:flex}}.badge{align-items:center;gap:var(--space-1);padding:.1rem var(--space-2);border-radius:var(--radius-pill);font-size:var(--font-size-xs);white-space:nowrap;background:var(--color-surface-2);color:var(--color-text-muted);font-weight:600;display:inline-flex}.badge-info{background:var(--color-info-bg);color:var(--color-info)}.badge-primary{background:var(--color-primary-bg);color:var(--color-primary)}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger)}.badge-purple{background:var(--color-purple-bg);color:var(--color-purple)}.badge-dot{background:currentColor;border-radius:50%;width:.5rem;height:.5rem;animation:1.4s ease-in-out infinite badge-pulse}@keyframes badge-pulse{50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.badge-dot{animation:none}}.field{gap:var(--space-1);margin-bottom:var(--space-3);flex-direction:column;min-width:0;display:flex}.field-help{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.client-form-active{margin-bottom:var(--space-3)}.client-form-grid{gap:0 var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.client-form-grid.is-three{grid-template-columns:repeat(3,minmax(0,1fr))}.client-form .error-message{margin-bottom:var(--space-3)}@media (width<=800px){.client-form-grid,.client-form-grid.is-three{grid-template-columns:minmax(0,1fr)}}.client-editor h2{margin-bottom:var(--space-3)}.clients-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.modal-backdrop{z-index:100;padding:var(--space-3);background:var(--color-overlay);place-items:center;display:grid;position:fixed;inset:0}.modal{width:100%;max-height:calc(100vh - 2 * var(--space-3));background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:auto}.modal-sm{max-width:28rem}.modal-md{max-width:40rem}.modal-lg{max-width:72rem}.modal-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--color-border);display:flex}.modal-header h2{margin:0;font-size:1.1rem}.modal-close{padding:0 var(--space-2);color:var(--color-text-muted);background:0 0;border:none;font-size:1.5rem;line-height:1}.modal-body{padding:var(--space-3)}.shot-link{cursor:zoom-in;display:block}.shot-image{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;height:auto;display:block}.shot-placeholder{min-height:12rem;padding:var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;place-items:center;display:grid}.text-diff{max-height:24rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);font-family:var(--font-mono);font-size:var(--font-size-xs);white-space:pre-wrap;word-break:break-word;margin:0;line-height:1.6;overflow:auto}.text-diff .is-added{background:var(--color-success-bg);color:var(--color-success);display:block}.text-diff .is-removed{background:var(--color-danger-bg);color:var(--color-danger);display:block}.detail-url{word-break:break-all;font-size:var(--font-size-sm)}.detail-ai{margin:var(--space-3) 0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2)}.detail-summary{white-space:pre-wrap;margin:0}.detail-shots{gap:var(--space-3);margin-bottom:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.detail-shots figure{min-width:0;margin:0}.detail-shots figcaption{font-weight:600;font-size:var(--font-size-sm);margin-bottom:var(--space-1)}@media (width<=700px){.detail-shots{grid-template-columns:minmax(0,1fr)}}.comparison-export .form-actions{margin-bottom:var(--space-2)}.comparison-export .error-message{margin-top:var(--space-2)}.searchable{gap:var(--space-1);flex-direction:column;min-width:min(100%,18rem);display:flex;position:relative}.searchable-list{z-index:50;max-height:18rem;margin:var(--space-1) 0 0;padding:var(--space-1) 0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.searchable-list li{padding:var(--space-2) var(--space-3);cursor:pointer;font-size:var(--font-size-sm)}.searchable-list li.is-active{background:var(--color-primary-bg)}.searchable-list li[aria-selected=true]{color:var(--color-primary);font-weight:600}.searchable-list .searchable-empty{color:var(--color-text-muted);cursor:default}.session-select select{width:100%}.comparison-side-b{gap:var(--space-3);flex-direction:column;display:flex}.comparison-side-b .field{margin-bottom:0}.comparison-form-grid{gap:var(--space-4);margin-bottom:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.comparison-form-side{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.comparison-form-side h2{margin:0;font-size:1rem}.comparison-form-side .field{margin-bottom:0}.comparison-form .form-actions{justify-content:space-between}@media (width<=800px){.comparison-form-grid{grid-template-columns:minmax(0,1fr)}}.comparison-report{gap:var(--space-2);flex-direction:column;display:flex}.comparison-report p{margin:0}.report-recipients{gap:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2) var(--space-3);word-break:break-all;flex-direction:column;margin:0;display:flex}.report-recipients legend{font-weight:600;font-size:var(--font-size-sm);padding:0 var(--space-1)}.comparison-sides{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.comparison-side h2{margin:0;font-size:1rem}.comparison-side-error{margin:var(--space-2) 0 0;border-left-color:var(--color-warning);background:var(--color-warning-bg)}.comparison-counts{gap:var(--space-3);margin:var(--space-3) 0 0;padding:var(--space-3) 0 0;border-top:1px solid var(--color-border);flex-wrap:wrap;list-style:none;display:flex}@media (width<=700px){.comparison-sides{grid-template-columns:minmax(0,1fr)}}.pagination{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.pagination-buttons{align-items:center;gap:var(--space-2);display:inline-flex}.thumb{width:6rem;height:3.75rem;display:inline-block}.thumb-button{border-radius:var(--radius-sm);background:var(--color-surface-2);width:100%;height:100%;padding:0;display:block;overflow:hidden}.thumb-button img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.thumb-placeholder{width:100%;height:100%;padding:var(--space-1);border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-text-muted);font-size:var(--font-size-xs);text-align:center;place-items:center;line-height:1.2;display:grid}.thumb-url{word-break:break-all;font-size:var(--font-size-sm)}.thumb-full{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;height:auto;display:block}.comparison-search{flex:14rem}.comparison-search input{width:100%}.comparison-tag{margin-top:var(--space-1);display:block}.comparison-badges{align-items:flex-start;gap:var(--space-1);flex-direction:column;display:flex}.comparator-results{gap:var(--space-4);grid-template-columns:minmax(0,3fr) minmax(16rem,1fr);align-items:start;display:grid}.comparator-actions{min-width:0}section>.error-message{margin-bottom:var(--space-4)}@media (width<=1100px){.comparator-results{grid-template-columns:minmax(0,1fr)}}.cause-list{gap:var(--space-2);font-size:var(--font-size-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.cause-row{justify-content:space-between;gap:var(--space-2);display:flex}.cause-track{border-radius:var(--radius-pill);background:var(--color-surface-2);height:.4rem;margin-top:2px;display:block}.cause-fill{border-radius:var(--radius-pill);background:var(--chart-technical);height:100%;display:block}.sparkline{align-items:flex-end;gap:3px;height:2rem;display:flex}.sparkline-bar{opacity:.8;border-radius:2px;flex:1}.sparkline-changes{background:var(--chart-changes)}.sparkline-technical{background:var(--chart-technical)}.sparkline-blocks{background:var(--chart-blocks)}.stacked-legend{gap:var(--space-3);margin:0 0 var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);flex-wrap:wrap;padding:0;list-style:none;display:flex}.stacked-legend li{align-items:center;gap:var(--space-1);display:inline-flex}.stacked-swatch{border-radius:2px;width:.7rem;height:.7rem}.stacked-chart{align-items:stretch;gap:var(--space-2);display:flex}.stacked-col{align-items:stretch;gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.stacked-bars{border-bottom:1px solid var(--color-border);flex-direction:column;justify-content:flex-end;height:10rem;display:flex}.is-compact .stacked-chart{gap:3px}.is-compact .stacked-bars{border-bottom:none;height:2rem}.stacked-bar.is-technical,.stacked-swatch.is-technical{background:var(--chart-technical)}.stacked-bar.is-blocks,.stacked-swatch.is-blocks{background:var(--chart-blocks)}.stacked-bar.is-technical{border-radius:2px 2px 0 0}.stacked-total,.stacked-day{text-align:center;font-size:var(--font-size-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.client-card{gap:var(--space-2);flex-direction:column;margin-bottom:0;display:flex}.client-card.is-selected{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.client-card-header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.client-card-header h3,.client-card p{margin:0}.client-card-stats{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.client-card-stats dt{font-size:var(--font-size-xs);color:var(--color-text-muted)}.client-card-stats dd{font-variant-numeric:tabular-nums;margin:0;font-weight:700}.client-card-charts{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.client-card-subtitle{margin:var(--space-1) 0 0;font-size:var(--font-size-sm)}.kpi-card{gap:var(--space-1);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;min-width:0;display:flex}.kpi-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600}.kpi-value{font-size:var(--font-size-xl);font-variant-numeric:tabular-nums;font-weight:700}.kpi-changes .kpi-value{color:var(--color-success)}.kpi-technical .kpi-value{color:var(--chart-technical)}.kpi-blocks .kpi-value{color:var(--chart-blocks)}.kpi-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));display:grid}.dashboard-charts{gap:var(--space-3);grid-template-columns:minmax(0,2fr) minmax(0,1fr);display:grid}.client-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));display:grid}@media (width<=900px){.dashboard-charts{grid-template-columns:minmax(0,1fr)}}.confirm-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.errors-clear{margin-left:auto}.errors-message{word-break:break-word;min-width:14rem}.parent-url-form{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.parent-url-input{flex:20rem;margin-bottom:0}.parent-url-form .check{min-height:2.4rem}.import-header{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.import-header h2{margin:0}#parent-url-import{margin-top:var(--space-3)}#parent-url-import .error-message{margin-bottom:var(--space-3)}.import-result{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.parent-filter{flex:16rem}.parent-filter input{width:100%}tr.is-inactive td{color:var(--color-text-muted)}.parent-admin .card{margin-bottom:var(--space-3)}.parent-admin{margin-bottom:var(--space-4)}.changes-tab .toolbar{align-items:center}.changes-summary{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600}.pages-search{align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;flex:20rem;display:flex}.pages-search .field{flex:14rem;margin-bottom:0}.pages-dead{margin-top:var(--space-1);display:block}.results-tabs{margin-bottom:var(--space-3)}.run-history .btn-small{white-space:nowrap}.picker{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2) var(--space-3);margin:0 0 var(--space-3);min-width:0}.picker legend{font-weight:600;font-size:var(--font-size-sm);padding:0 var(--space-1)}.picker input[type=search]{width:100%}.picker-actions{gap:var(--space-3);margin:var(--space-2) 0;flex-wrap:wrap;display:flex}.picker-list{max-height:14rem;margin:0;padding:0;list-style:none;overflow-y:auto}.picker-list li{padding:var(--space-1) 0}.picker-url{word-break:break-all;font-size:var(--font-size-sm)}.run-launcher form{margin-top:var(--space-3)}.run-launcher input[type=number]{max-width:12rem}.run-launcher .error-message{margin-bottom:var(--space-3)}.phase-steps{gap:var(--space-1);margin:0 0 var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));padding:0;list-style:none;display:grid}.phase-step{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);color:var(--color-text-muted);font-size:var(--font-size-xs);text-align:center;font-weight:600;display:flex}.phase-step.is-done{background:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success)}.phase-step.is-active{background:var(--color-primary-bg);border-color:var(--color-primary);color:var(--color-primary)}.phase-step.is-stopped{background:var(--color-danger-bg);border-color:var(--color-danger);color:var(--color-danger)}@media (width<=640px){.phase-steps{grid-template-columns:1fr}.phase-step{justify-content:flex-start}}.progress{margin-bottom:var(--space-3)}.progress-label{justify-content:space-between;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-1);font-variant-numeric:tabular-nums;display:flex}.progress-track{border-radius:var(--radius-pill);background:var(--color-surface-2);height:.5rem;overflow:hidden}.progress-fill{border-radius:var(--radius-pill);background:var(--color-primary);height:100%;transition:width .3s;display:block}.run-log{height:20rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:1.6;overflow-y:auto}.run-log-empty{color:var(--color-text-muted);margin:0}.run-log-line{white-space:pre-wrap;word-break:break-word}.run-log-line time{color:var(--color-text-muted)}.run-log-line.is-warning{color:var(--color-warning)}.run-log-line.is-error{color:var(--color-danger)}.run-monitor-header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.run-monitor-header h2,.run-monitor-header p{margin:0}.run-monitor-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.run-monitor-error{color:var(--color-danger);background:var(--color-danger-bg);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm)}.run-monitor-stats{gap:var(--space-2);margin:0 0 var(--space-3);grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));display:grid}.run-monitor-stats dt{font-size:var(--font-size-xs);color:var(--color-text-muted)}.run-monitor-stats dd{font-variant-numeric:tabular-nums;margin:0;font-weight:700}.schedule-form{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}.schedule-form .field{margin-bottom:0}.schedule-form input[type=time]{max-width:10rem}.schedule-days{border:none;margin:0;padding:0}.schedule-days legend{font-weight:600;font-size:var(--font-size-sm);margin-bottom:var(--space-1)}.schedule-days button{min-width:3rem}.schedule-form .error-message{margin:0}.runs-layout{gap:var(--space-4);grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;display:grid}.runs-main,.runs-side{min-width:0}.runs-main>.empty-state,.runs-main>.error-message,.runs-main>.loading{margin-bottom:var(--space-4)}@media (width<=1100px){.runs-layout{grid-template-columns:minmax(0,1fr)}}.layout{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid}.layout-main{padding:var(--space-4);width:100%;min-width:0;max-width:90rem}.layout-main:focus{outline:none}.skip-link{left:var(--space-2);z-index:200;padding:var(--space-2) var(--space-3);background:var(--color-primary);color:var(--color-primary-contrast);border-radius:var(--radius);position:absolute;top:-3rem}.skip-link:focus{top:var(--space-2)}@media (width<=800px){.layout{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.layout-main{padding:var(--space-3)}}:root{--color-bg:#f4f6f9;--color-surface:#fff;--color-surface-2:#eef1f5;--color-text:#1a1d23;--color-text-muted:#545b68;--color-border:#d9dee6;--color-primary:#0b3d91;--color-primary-contrast:#fff;--color-primary-bg:#e6edf9;--color-danger:#b42318;--color-danger-bg:#fdecea;--color-success:#1a6e35;--color-success-bg:#e3f3e8;--color-warning:#8a4b00;--color-warning-bg:#fff1d6;--color-info:#0a58a8;--color-info-bg:#e3effb;--color-purple:#5f3aa6;--color-purple-bg:#efe8fb;--chart-changes:#2e9d55;--chart-technical:#e0661b;--chart-blocks:#3b6fd8;--color-overlay:#0f172a8c;--shadow:0 1px 2px #0f172a0f, 0 1px 3px #0f172a0f;--shadow-lg:0 12px 40px #0f172a40;--focus-ring:0 0 0 3px #0b3d9166;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--radius-sm:4px;--radius:8px;--radius-pill:999px;--sidebar-width:15rem;--font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-lg:1.25rem;--font-size-xl:1.75rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:#12151a;--color-surface:#1b1f26;--color-surface-2:#242a33;--color-text:#e8eaee;--color-text-muted:#a8afbb;--color-border:#313844;--color-primary:#7aa7ff;--color-primary-contrast:#0b1220;--color-primary-bg:#1c2b47;--color-danger:#ff8a80;--color-danger-bg:#3a1d1d;--color-success:#6fd08f;--color-success-bg:#173523;--color-warning:#f5bd5b;--color-warning-bg:#3a2a10;--color-info:#82bdf7;--color-info-bg:#13304d;--color-purple:#c4adf5;--color-purple-bg:#2e2147;--chart-changes:#4cc076;--chart-technical:#f08a45;--chart-blocks:#6f9bf2;--color-overlay:#000000a6;--shadow:0 1px 2px #0000004d;--shadow-lg:0 12px 40px #0009;--focus-ring:0 0 0 3px #7aa7ff8c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--color-bg:#12151a;--color-surface:#1b1f26;--color-surface-2:#242a33;--color-text:#e8eaee;--color-text-muted:#a8afbb;--color-border:#313844;--color-primary:#7aa7ff;--color-primary-contrast:#0b1220;--color-primary-bg:#1c2b47;--color-danger:#ff8a80;--color-danger-bg:#3a1d1d;--color-success:#6fd08f;--color-success-bg:#173523;--color-warning:#f5bd5b;--color-warning-bg:#3a2a10;--color-info:#82bdf7;--color-info-bg:#13304d;--color-purple:#c4adf5;--color-purple-bg:#2e2147;--chart-changes:#4cc076;--chart-technical:#f08a45;--chart-blocks:#6f9bf2;--color-overlay:#000000a6;--shadow:0 1px 2px #0000004d;--shadow-lg:0 12px 40px #0009;--focus-ring:0 0 0 3px #7aa7ff8c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}body{font-family:var(--font);background:var(--color-bg);color:var(--color-text);margin:0;line-height:1.5}h1,h2,h3{margin:0 0 var(--space-2);line-height:1.25}h1{font-size:var(--font-size-xl)}h2{font-size:var(--font-size-lg)}h3{font-size:1rem}p{margin:0 0 var(--space-2)}a{color:var(--color-primary)}button{font:inherit;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);cursor:pointer}button:hover:not(:disabled){background:var(--color-surface-2)}button:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-contrast);font-weight:600}.btn-primary:hover:not(:disabled){background:var(--color-primary);filter:brightness(1.1)}.btn-danger{background:var(--color-danger-bg);border-color:var(--color-danger);color:var(--color-danger);font-weight:600}.btn-danger:hover:not(:disabled){background:var(--color-danger-bg);filter:brightness(.97)}.btn-small{padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm)}.btn-link{color:var(--color-primary);background:0 0;border:none;padding:0;text-decoration:underline}.btn-link:hover:not(:disabled){background:0 0}input,select,textarea{font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2);max-width:100%}input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--color-primary)}textarea{resize:vertical;width:100%}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--color-danger)}label{font-weight:600;font-size:var(--font-size-sm)}.field-error{font-size:var(--font-size-sm);color:var(--color-danger);margin:0}.check{align-items:center;gap:var(--space-2);font-weight:400;display:inline-flex}.form-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}:focus-visible{box-shadow:var(--focus-ring);outline:none}.page-header{margin-bottom:var(--space-4)}.page-header p{color:var(--color-text-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-3);margin-bottom:var(--space-4);min-width:0}.toolbar{align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.toolbar .field{margin-bottom:0}.muted{color:var(--color-text-muted)}.small{font-size:var(--font-size-sm)}.notice{background:var(--color-info-bg);color:var(--color-text);border-left:4px solid var(--color-info);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);margin-bottom:var(--space-3)}.success-text{color:var(--color-success)}.table-wrap{position:relative;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}th,td{text-align:left;padding:var(--space-2);border-bottom:1px solid var(--color-border);vertical-align:top}th{color:var(--color-text-muted);white-space:nowrap;font-weight:600}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.url-cell{word-break:break-all;min-width:14rem}.nowrap{white-space:nowrap}.segmented{gap:var(--space-1);flex-wrap:wrap;display:inline-flex}.segmented button[aria-pressed=true],.segmented button[aria-selected=true]{background:var(--color-primary-bg);border-color:var(--color-primary);color:var(--color-primary);font-weight:600}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.centered{text-align:center;min-height:50vh;padding:var(--space-3);place-items:center;display:grid}
