@layer reset,tokens,base,objects,utilities,components,overrides;@layer reset{@layer reset{*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}input,button,textarea,select{font:inherit}img,picture,video,canvas,svg{display:block;max-width:100%}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}html:focus-within{scroll-behavior:auto}}}}@layer reset{@layer reset{html,body{height:100%}body{line-height:1.5}:focus-visible{outline:var(--focus-outline, 2px solid var(--color-focus-ring));outline-offset:var(--focus-offset, 2px)}::selection{background:var(--color-selection-bg);color:var(--color-selection-text)}*{-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:rgba(0,0,0,0);outline:none}}}@layer tokens{:root{--border-width-1: 1px;--border-width-2: 2px;--border-width-3: 3px}}@layer tokens{:root{--container-max: 1200px;--container-narrow: 800px;--container-wide: 1400px;--sidebar-width: 280px;--grid-min-col: 200px;--data-layout-aside-min: 220px;--data-layout-aside-max: 270px;--bp-md: 860px}}@layer tokens{:root{--space-small: var(--space-1-5);--button-gap: var(--space-small);--button-padding-y: var(--space-1-5);--button-padding-x: var(--space-3);--button-icon-size: var(--font-size-md);--button-sm-padding-y: var(--space-small);--button-sm-padding-x: var(--space-3);--button-lg-padding-y: var(--space-3);--button-lg-padding-x: var(--space-5);--icon-button-size: var(--space-9);--icon-button-font-size: var(--font-size-lg);--switch-track-width: calc(var(--space-9) + var(--space-1) / 2);--switch-track-height: var(--space-5);--switch-offset: var(--radius-xs);--switch-thumb-size: var(--space-4);--navbar-padding-y: var(--space-2);--dropdown-item-padding-y: var(--space-2);--dropdown-item-padding-x: var(--space-3);--input-padding-y: var(--space-2);--input-padding-x: var(--space-3);--control-height: var(--space-9);--select-padding-y: var(--space-2);--select-padding-x: var(--space-3);--textarea-padding-y: var(--space-2-5);--textarea-padding-x: var(--space-3);--table-padding-y: var(--space-2);--table-padding-x: var(--space-2);--drawer-width: 320px;--side-nav-width: var(--sidebar-width);--side-nav-collapsed-width: 56px;--side-nav-link-height: 44px;--side-nav-icon-size: 20px;--side-nav-logo-size: var(--space-10);--side-nav-logo-size-collapsed: var(--space-9)}}@layer tokens{:root{--focus-ring-outline-width: 2px;--focus-ring-outline-offset: 2px;--focus-outline: var(--focus-ring-outline-width) solid var(--color-focus-ring);--focus-offset: var(--focus-ring-outline-offset)}}@layer tokens{:root{--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-2-5: 10px;--space-3: 12px;--space-3-5: 14px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 36px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--space-32: 128px;--radius-xs: 2px;--radius-sm: 4px;--radius: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 18px;--radius-2xl: 24px;--radius-3xl: 32px;--radius-round: 999px}}@layer tokens{:root{--tracking-tight: -.01em;--tracking-normal: 0;--tracking-wide: .02em;--tracking-wider: .03em;--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--font-size-xs: .8125rem;--font-size-sm: .875rem;--font-size-base: .9375rem;--font-size-md: 1rem;--font-size-lg: 1.0625rem;--font-size-xl: 1.1875rem;--font-size-2xl: 1.375rem;--font-size-3xl: 1.625rem;--line-tight: 1.15;--line-snug: 1.25;--line-normal: 1.4;--line-relaxed: 1.55;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700}}@layer tokens{:root{--motion-fast: .12s;--motion-medium: .2s;--motion-slow: .32s;--easing-standard: cubic-bezier(.4, .2, .2, 1);--easing-emphasis: cubic-bezier(.3, .7, .4, 1.2);--easing-decelerate: cubic-bezier(.05, .7, .1, 1);--easing-accelerate: cubic-bezier(.3, 0, .7, .1)}}@layer tokens{:root,.theme-light{color-scheme:light;--app-bg-image: url(/assets/background.light.svg);--app-bg-attachment: fixed;--color-bg: #f5f8fa;--color-panel: #f5faff;--color-panel-blurred: color-mix( in oklab, var(--color-panel) 70%, transparent );--color-surface: #f8fcff;--color-surface-hover: #e7edf1;--color-surface-alt: #d7e5ec;--color-border: #abbcc5;--color-text: #1b1c1f;--color-text-muted: #426174;--color-text-invert: #ffffff;--color-text-contrast: #ffffff;--color-primary: #5f7c8f;--color-primary-hover: color-mix( in oklab, var(--color-primary) 70%, white );--color-accent: #e2eaf1;--color-accent-hover: color-mix( in oklab, var(--color-accent) 70%, white );--color-button-primary: var(--color-primary);--color-button-primary-hover: color-mix( in oklab, var(--color-button-primary) 70%, white );--color-button-secondary: var(--color-accent);--color-button-secondary-hover: color-mix( in oklab, var(--color-button-secondary) 70%, white );--color-button-neutral: var(--color-surface-alt);--color-button-neutral-hover: var( --color-surface-hover );--color-button-error: var(--color-error);--color-button-error-hover: #9f3636;--color-info: #3996b5;--color-success: #1e7f63;--color-warning: #b96719;--color-warning-yellow: #b58900;--color-warning-purple: #7d3fb0;--color-error: #b94545;--color-focus-ring: var(--color-primary);--color-selection-bg: #c5e5f2;--color-selection-text: #13252e;--color-shadow: rgba(0, 35, 54, .18);--scroll-thumb-color: var(--color-primary);--scroll-thumb-hover-color: var(--color-primary-hover);--scroll-track-color: transparent;--scroll-size: 8px;--shadow-sm: 0 1px 2px rgba(0, 35, 54, .12);--shadow: 0 2px 6px var(--color-shadow);--shadow-lg: 0 4px 14px rgba(0, 35, 54, .18);--shadow-overlay: 0 8px 32px rgba(0, 35, 54, .25);--glass-bg: rgba(255, 255, 255, .55);--glass-bg-alt: rgba(255, 255, 255, .38);--glass-blur: 20px;--glass-shadow: 0 4px 18px rgba(0, 35, 54, .1), 0 1px 2px rgba(0, 35, 54, .15);--glass-accent-glow: 0 0 0 1px rgba(57, 150, 181, .25), 0 0 22px -6px rgba(57, 150, 181, .35);--glass-veil: radial-gradient( circle at 30% 25%, rgba(57, 150, 181, .16), transparent 60% ), radial-gradient(circle at 80% 70%, rgba(29, 63, 84, .12), transparent 70%);--color-action-secondary: var(--color-button-secondary);--color-action-secondary-hover: var(--color-button-secondary-hover);--color-outline-hover: #cad9e2;--color-error-hover: var(--color-button-error-hover);--color-accent-alt: color-mix(in srgb, var(--color-primary) 22%, white)}.theme-light .text-primary,:root .text-primary{color:var(--color-primary)}.theme-light .bg-surface,:root .bg-surface{background:var(--color-surface)}.theme-light .border-default,:root .border-default{border-color:var(--color-border)}}@layer tokens{:root{--color-success-base: #128a3e;--color-success-strong: #145f30;--color-warning-base: #dba408;--color-warning-strong: #915802;--color-error-base: #d43737;--color-error-strong: #a61a1a;--color-info-base: #2a65d9;--color-info-strong: #1b46c2;--z-base: 0;--z-dropdown: 1000;--z-sticky: 1200;--z-tooltip: 1400;--z-modal: 1600;--z-popover: 1700;--z-toast: 1800;--z-overlay: 1900;--z-critical: 2000;--opacity-disabled: .45;--opacity-muted: .65;--opacity-hover: .85;--opacity-active: 1}}@layer tokens{.theme-dark{color-scheme:dark;--app-bg-image: url(/assets/background.dark.svg);--app-bg-attachment: fixed;--color-bg: #00213b;--color-panel: #0d3b57;--color-panel-blurred: color-mix( in oklab, var(--color-panel) 70%, transparent );--color-surface: #042944;--color-surface-hover: #143855;--color-surface-alt: #224561;--color-border: #134166;--color-text: #c7c7c7;--color-text-muted: #9db6c0;--color-text-invert: #041823;--color-text-contrast: #d3d3d3;--color-primary: #2e5879;--color-primary-hover: color-mix( in oklab, var(--color-primary) 70%, var(--color-border) );--color-accent: #00213b;--color-accent-hover: color-mix( in oklab, var(--color-accent) 70%, var(--color-border) );--color-button-primary: var(--color-primary);--color-button-primary-hover: color-mix( in oklab, var(--color-button-primary) 70%, var(--color-border) );--color-button-secondary: var(--color-accent);--color-button-secondary-hover: color-mix( in oklab, var(--color-button-secondary) 70%, var(--color-border) );--color-button-neutral: var(--color-surface);--color-button-neutral-hover: var( --color-surface-hover );--color-button-error: var(--color-error);--color-button-error-hover: #5e2121;--color-info: #2d6d95;--color-success: #0e6028;--color-warning: #b96719;--color-warning-yellow: #a37800;--color-warning-purple: #7e52b8;--color-error: #833232;--color-focus-ring: #2d6d95;--color-selection-bg: #1b4d61;--color-selection-text: #d3d3d3;--color-shadow: rgba(24, 24, 24, .45);--scroll-thumb-color: var(--color-primary);--scroll-thumb-hover-color: var(--color-primary-hover);--scroll-track-color: transparent;--scroll-size: 8px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow: 0 2px 6px var(--color-shadow);--shadow-lg: 0 4px 14px rgba(0, 0, 0, .5);--shadow-overlay: 0 8px 32px rgba(0, 0, 0, .55);--glass-bg: rgba(0, 33, 59, .42);--glass-bg-alt: rgba(0, 33, 59, .3);--glass-blur: 20px;--glass-shadow: 0 6px 24px rgba(0, 0, 0, .45), 0 1px 2px rgba(0, 0, 0, .4);--glass-accent-glow: 0 0 0 1px rgba(59, 195, 222, .35), 0 0 26px -6px rgba(59, 195, 222, .55);--glass-veil: radial-gradient( circle at 30% 25%, rgba(59, 195, 222, .18), transparent 60% ), radial-gradient(circle at 80% 70%, rgba(29, 63, 84, .28), transparent 70%)}.theme-dark .text-primary{color:var(--color-primary)}.theme-dark .bg-surface{background:var(--color-surface)}.theme-dark .border-default{border-color:var(--color-border)}}@layer base{@layer base{html,body{color:var(--color-text)}body{background:var(--app-bg-image) center center / cover no-repeat var(--app-bg-attachment, fixed),var(--color-bg);background-attachment:var(--app-bg-attachment, fixed),var(--app-bg-attachment, fixed)}a{color:var(--color-primary);text-decoration-color:color-mix(in oklch,currentColor,transparent 60%);text-underline-offset:.15em}a:hover{text-decoration-color:currentColor}hr{border:0;border-top:1px solid var(--color-border);opacity:.6}code,pre{font-family:var( --font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace )}}}@layer base{@layer base{label{display:inline-block;font-weight:500;color:var(--color-text)}input,select,textarea{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2) var(--space-3)}input::placeholder,textarea::placeholder{color:color-mix(in oklch,var(--color-text),transparent 55%)}fieldset{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-3)}legend{padding:0 var(--space-1)}}}@layer objects{@layer objects{.stack{display:flex;flex-direction:column;gap:var(--stack-gap, var(--space-3))}.stack>*{margin-block:0}}}@layer objects{@layer objects{.cluster{display:flex;flex-wrap:wrap;gap:var(--cluster-gap, var(--space-3));align-items:var(--cluster-align, center);justify-content:var(--cluster-justify, flex-start)}}}@layer objects{@layer objects{.grid{display:grid;gap:var(--grid-gap, var(--space-3));grid-template-columns:repeat(var(--grid-cols, auto-fit),minmax(min(var(--grid-min, 16rem),100%),1fr))}}}@layer utilities{.stack-fill{display:flex;flex-direction:column;height:100%}.row-fill{display:flex;flex:1 1 auto;min-height:0}.sidebar-layout{display:flex;flex-direction:column;width:var(--sidebar-width)}.sidebar-content{flex:1;overflow:auto}.grid-auto-fit{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-col),1fr))}.grid-auto-fill{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(var(--grid-min-col),1fr))}.flex-column{display:flex;flex-direction:column}.flex-row{display:flex;flex-direction:row}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-start{display:flex;align-items:flex-start;justify-content:flex-start}.flex-end{display:flex;align-items:flex-end;justify-content:flex-end}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.gap-7{gap:var(--space-7)}.gap-8{gap:var(--space-8)}.gap-9{gap:var(--space-9)}.gap-10{gap:var(--space-10)}.gap-12{gap:var(--space-12)}.gap-16{gap:var(--space-16)}.gap-20{gap:var(--space-20)}.gap-24{gap:var(--space-24)}.gap-32{gap:var(--space-32)}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-4)}.container--narrow{max-width:var(--container-narrow)}.container--wide{max-width:var(--container-wide)}.content-constrain{max-width:var(--container-max);width:100%;margin-inline:auto}.scroll-vertical{overflow-y:auto;overflow-x:hidden}.scroll-horizontal{overflow-x:auto;overflow-y:hidden}.scroll-both{overflow:auto}.data-layout{display:grid;gap:var(--space-4);grid-template-columns:1fr minmax(var(--data-layout-aside-min),var(--data-layout-aside-max));align-items:stretch;margin-top:var(--space-2);min-height:0}.alerts-stack{display:flex;flex-direction:column;gap:.5rem}}@layer utilities{.page-transition{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}}@layer utilities{*{scrollbar-width:auto;scrollbar-color:var(--scroll-thumb-color) var(--scroll-track-color)}*::-webkit-scrollbar{width:var(--scroll-size);height:var(--scroll-size)}*::-webkit-scrollbar-track{background-color:var(--scroll-track-color)}*::-webkit-scrollbar-thumb{background-color:var(--scroll-thumb-color);border-radius:var(--radius-md)}*::-webkit-scrollbar-thumb:hover{background-color:var(--scroll-thumb-hover-color)}}@layer utilities{.m-0{margin:0!important}.m-1{margin:var(--space-1)!important}.m-2{margin:var(--space-2)!important}.m-3{margin:var(--space-3)!important}.m-4{margin:var(--space-4)!important}.m-5{margin:var(--space-5)!important}.m-6{margin:var(--space-6)!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}.p-0{padding:0!important}.p-1{padding:var(--space-1)!important}.p-2{padding:var(--space-2)!important}.p-3{padding:var(--space-3)!important}.p-4{padding:var(--space-4)!important}.p-5{padding:var(--space-5)!important}.p-6{padding:var(--space-6)!important}}@layer utilities{.text-center{text-align:center!important}.text-right{text-align:right!important}.text-left{text-align:left!important}.text-uppercase{text-transform:uppercase!important;letter-spacing:var(--tracking-wide)}.text-truncate{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.font-normal{font-weight:var(--weight-regular)!important}.font-medium{font-weight:var(--weight-medium)!important}.font-semibold{font-weight:var(--weight-semibold)!important}.font-bold{font-weight:var(--weight-bold)!important}.selectable{-webkit-user-select:text;-ms-user-select:text;user-select:text;-webkit-touch-callout:default}.no-select{-webkit-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}.no-drag{-webkit-user-drag:none}}@layer utilities{.bg-surface{background:var(--color-surface)!important}.bg-surface-alt{background:var(--color-surface-alt)!important}.bg-accent{background:var(--color-accent)!important;color:var(--color-text)}.bg-primary{background:var(--color-primary)!important;color:var(--color-text-contrast)}.text-muted{color:var(--color-text-muted)!important}.text-invert{color:var(--color-text-invert)!important}.border{border:1px solid var(--color-border)!important}.border-top{border-top:1px solid var(--color-border)!important}.border-bottom{border-bottom:1px solid var(--color-border)!important}}@layer utilities{.d-block{display:block!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-flex{display:flex!important}.d-grid{display:grid!important}.flex-1{flex:1 1 0%!important}.flex-column{flex-direction:column!important}.flex-center{display:flex!important;align-items:center!important;justify-content:center!important}.gap-2{gap:var(--space-2)!important}.gap-3{gap:var(--space-3)!important}.hidden{display:none!important}.overflow-auto{overflow:auto!important}.h-100{height:100%!important}.w-100{width:100%!important}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}}@layer utilities{button:focus-visible,.button:focus-visible,a[href]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible,.focus-ring:focus-visible,[data-focus-ring]:focus-visible{outline:var(--focus-ring-outline-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-outline-offset)}@supports not selector(:focus-visible){button:focus,.button:focus,a[href]:focus,input:focus,select:focus,textarea:focus,summary:focus,[role=button]:focus,[tabindex]:focus,.focus-ring:focus,[data-focus-ring]:focus{outline:var(--focus-ring-outline-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-outline-offset)}}@media (forced-colors: active){button:focus-visible,.button:focus-visible,a[href]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible,.focus-ring:focus-visible,[data-focus-ring]:focus-visible{outline-color:Highlight}}.input:focus-within,.select:focus-within{outline:var(--focus-ring-outline-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-outline-offset)}}@layer utilities{.separator{height:1px;background:var(--color-border);margin:var(--space-2) 0}.separator--gradient{height:2px;background:linear-gradient(90deg,transparent 0%,var(--color-border) 20%,var(--color-border) 80%,transparent 100%);margin:var(--space-1) 0}.separator--dotted{height:1px;background:transparent;border-top:1px dotted var(--color-border);margin:var(--space-2) 0}.separator--dashed{height:1px;background:transparent;border-top:1px dashed var(--color-border);margin:var(--space-2) 0}.separator--sm{margin:var(--space-1) 0}.separator--lg{margin:var(--space-3) 0}.separator--xl{margin:var(--space-4) 0}.separator-text{display:flex;align-items:center;text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:var(--weight-medium);margin:var(--space-3) 0}.separator-text:before,.separator-text:after{content:"";flex:1;height:1px;background:var(--color-border)}.separator-text:before{margin-right:var(--space-2)}.separator-text:after{margin-left:var(--space-2)}.separator--vertical{width:1px;height:auto;background:var(--color-border);margin:0 var(--space-2);align-self:stretch}.separator--vertical.gradient,.separator--vertical.separator--gradient{background:linear-gradient(180deg,transparent 0%,var(--color-border) 20%,var(--color-border) 80%,transparent 100%)}.separator--vertical.separator--dotted{background:transparent;width:0;border-left:1px dotted var(--color-border)}.separator--vertical.separator--dashed{background:transparent;width:0;border-left:1px dashed var(--color-border)}.separator--vertical.separator--sm{margin:0 var(--space-1)}.separator--vertical.separator--lg{margin:0 var(--space-3)}.separator--vertical.separator--xl{margin:0 var(--space-4)}}@layer components{.button{gap:var(--button-gap);background-color:var(--color-button-neutral);color:var(--color-text);border:1px solid transparent;display:inline-flex;align-items:center;white-space:nowrap;font:inherit;font-size:var(--font-size-sm);font-weight:var(--weight-medium);padding:var(--button-padding-y) var(--button-padding-x);border-radius:var(--radius);cursor:pointer;transition:background var(--motion-fast) var(--easing-standard),color var(--motion-fast) var(--easing-standard),border-color var(--motion-fast) var(--easing-standard),transform var(--motion-medium) var(--easing-decelerate),box-shadow var(--motion-medium) var(--easing-decelerate);will-change:transform}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px -8px var(--color-shadow),0 4px 8px -4px var(--color-shadow)}.button:active:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px -6px var(--color-shadow),0 2px 4px -2px var(--color-shadow);transition:background var(--motion-fast) var(--easing-standard),color var(--motion-fast) var(--easing-standard),border-color var(--motion-fast) var(--easing-standard),transform var(--motion-fast) var(--easing-accelerate),box-shadow var(--motion-fast) var(--easing-accelerate)}.button.dropdown-open{transform:translateY(-1px);box-shadow:0 4px 12px -6px var(--color-shadow),0 2px 4px -2px var(--color-shadow)}.button--primary.dropdown-open{background-color:var(--color-button-primary-hover);color:var(--color-text-contrast)}.button--outline.dropdown-open{background-color:var(--color-button-secondary-hover)}.button--danger.dropdown-open{background-color:var(--color-button-error-hover);color:var(--color-text-contrast)}.button--subtle.dropdown-open{background-color:var(--color-button-neutral-hover)}.button--dropdown.dropdown-open{background-color:var(--color-button-secondary-hover)}.button.dropdown-open{pointer-events:auto}.button__icon{font-size:var(--button-icon-size);line-height:1;display:inline-flex;align-items:center}.button__icon>i,.button__icon>svg{line-height:1;font-size:1em;width:1em;height:1em}.button--with-icon .button__icon:first-child{margin-inline-end:var(--button-gap)}.button--with-icon .button__icon:last-child{margin-inline-start:var(--button-gap)}.button__label{line-height:1.2;display:inline-block}.button--primary{background-color:var(--color-button-primary);color:var(--color-text-contrast)}.button--primary:active:not(:disabled){background-color:var(--color-button-primary-hover)}.button--outline{background-color:var(--color-button-secondary);border-color:var(--color-border)}.button--outline:active:not(:disabled){background-color:var(--color-button-secondary-hover)}.button--danger{background-color:var(--color-button-error);color:var(--color-text-contrast)}.button--danger:active:not(:disabled){background-color:var(--color-button-error-hover)}.button--subtle{background-color:var(--color-button-neutral)}.button--subtle:active:not(:disabled){background-color:var(--color-button-neutral-hover)}.button--dropdown{background-color:var(--color-button-secondary);color:var(--color-text)}.button--dropdown:active:not(:disabled){background-color:var(--color-button-secondary-hover)}.button--modal{background-color:var(--color-primary);color:var(--color-text-contrast)}.button--modal:active:not(:disabled){background-color:var(--color-button-primary-hover)}.button--switch{background-color:var(--color-surface-alt)}.button--switch:active:not(:disabled){background-color:var(--color-surface)}.button:disabled{opacity:var(--opacity-disabled, .55);cursor:not-allowed}.button--sm{--button-padding-y: var(--button-sm-padding-y);--button-padding-x: var(--button-sm-padding-x);font-size:inherit}.button--lg{--button-padding-y: var(--button-lg-padding-y);--button-padding-x: var(--button-lg-padding-x);font-size:inherit}}@layer components{.button-group{display:inline-flex;align-items:stretch}.button-group .button{border-left-width:0;border-radius:0;margin:0;white-space:nowrap}.button-group .button:first-child{border-left-width:var(--border-width, 1px)}.button-group .button:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.button-group .button:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.button-group .icon-button{border-left-width:0;border-radius:0;margin:0;border:none;height:auto;width:auto;padding:var(--button-padding-y) var(--button-padding-y);font-size:var(--font-size-md);line-height:1}.button-group .icon-button>i,.button-group .icon-button>svg{line-height:1;font-size:1em;width:1em;height:1em}.button-group .icon-button:first-child{border-left-width:0}.button-group .icon-button:first-child{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.button-group .icon-button:last-child{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}}@layer components{.icon-button{width:var(--icon-button-size);height:var(--icon-button-size);padding:0;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;font-size:var(--button-icon-size)}.icon-button>i,.icon-button>svg{line-height:1;font-size:1em;width:1em;height:1em}.icon-button--ghost{background:transparent;border-color:transparent}}@layer components{.scroll-button{position:relative;width:25px;height:25px;padding:0;border-radius:var(--radius-xs);border:1px solid transparent;background:transparent;color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;touch-action:manipulation;transition:background var(--motion-fast) var(--easing-standard),color var(--motion-fast) var(--easing-standard),border-color var(--motion-fast) var(--easing-standard),box-shadow var(--motion-fast) var(--easing-standard),transform var(--motion-fast) var(--easing-standard);transform:none;box-shadow:none}.scroll-button>i,.scroll-button>svg{line-height:1;font-size:var(--font-size-lg);width:1rem;height:1rem}.scroll-button:focus:not(:disabled){transform:none;box-shadow:none}@media (hover: hover){.scroll-button:hover:not(:disabled){color:var(--color-text);transform:none;box-shadow:none}.scroll-button.scroll-button--top:hover:not(:disabled){border-width:2px;border-bottom-color:var(--color-primary)}.scroll-button.scroll-button--bottom:hover:not(:disabled){border-width:2px;border-top-color:var(--color-primary)}.scroll-button.scroll-button--left:hover:not(:disabled){border-width:2px;border-right-color:var(--color-primary)}.scroll-button.scroll-button--right:hover:not(:disabled){border-width:2px;border-left-color:var(--color-primary)}}.scroll-button.scroll-button--top:active:not(:disabled){border-width:2px;border-bottom-color:color-mix(in srgb,var(--color-primary) 85%,white)}.scroll-button.scroll-button--bottom:active:not(:disabled){border-width:2px;border-top-color:color-mix(in srgb,var(--color-primary) 85%,white)}.scroll-button.scroll-button--left:active:not(:disabled){border-width:2px;border-right-color:color-mix(in srgb,var(--color-primary) 85%,white)}.scroll-button.scroll-button--right:active:not(:disabled){border-width:2px;border-left-color:color-mix(in srgb,var(--color-primary) 85%,white)}.scroll-button:focus-visible{outline:var(--focus-ring-outline-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-outline-offset)}.scroll-button:disabled{opacity:var(--opacity-disabled, .45);cursor:default;background:transparent}.vs-scroll>.scroll-button,.hs-scroll>.scroll-button{width:100%;height:100%;color:inherit;background:transparent}.scroll-button--ghost{background:transparent;border-color:transparent}.scroll-button--outline{border-color:var(--color-border)}.scroll-button--round{border-radius:var(--radius-round)}.scroll-button--fill{width:100%;height:100%;color:inherit;background:transparent}}@layer components{.button--animated{position:relative;border:none;cursor:pointer;color:inherit}.button--animated:before{content:"";position:absolute;inset:0;border-radius:var(--radius);padding:var(--button-animated-border, 3px);background:linear-gradient(90deg,var(--color-success),transparent,var(--color-success));background-size:300% 300%;animation:borderLoop 2s linear infinite;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}@keyframes borderLoop{0%{background-position:0% 50%}to{background-position:300% 50%}}}@layer components{.alert{position:relative;padding:var(--space-3) var(--space-4);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);display:flex;gap:var(--space-2);align-items:center;font-size:var(--font-size-sm)}.alert--success,.alert.success{border-color:var(--color-success)}.alert--warning,.alert.warning{border-color:var(--color-warning)}.alert--error,.alert.error{border-color:var(--color-error)}.alert--info,.alert.info{border-color:var(--color-info)}.alert__close,.alert .close{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--color-text);line-height:1}.alert__close:hover,.alert .close:hover{color:var(--color-primary)}}@layer components{.badge{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-size:var(--font-size-xs);letter-spacing:.5px;color:var(--color-button-text);font-weight:var(--weight-semibold)}.badge--success,.badge.success{background:var(--color-success)}.badge--warning,.badge.warning{background:var(--color-warning)}.badge--warning-yellow{background:var(--color-warning-yellow)}.badge--warning-purple{background:var(--color-warning-purple)}.badge--error,.badge.error{background:var(--color-error)}.badge--info,.badge.info{background:var(--color-info)}.badge--soft{background:transparent;border:none;color:var(--color-text)}.badge--success.badge--soft{color:var(--color-success)}.badge--warning.badge--soft{color:var(--color-warning)}.badge--warning-yellow.badge--soft{color:var(--color-warning-yellow)}.badge--warning-purple.badge--soft{color:var(--color-warning-purple)}.badge--error.badge--soft{color:var(--color-error)}.badge--info.badge--soft{color:var(--color-text)}.badge--soft.assigned{background:transparent;border:none;font-weight:var(--weight-regular);text-decoration:line-through;color:var(--color-text-muted)}.badge--circle{padding:0;width:1.5rem;height:1.5rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:.75rem}.badge--icon{padding:var(--space-1);line-height:1;display:inline-flex;align-items:center;justify-content:center;aspect-ratio:1/1;border-radius:var(--radius-sm)}.badge--dot,.status-dot{--_dot-size: .8rem;width:var(--_dot-size);height:var(--_dot-size);padding:0;border-radius:50%;display:inline-block;text-indent:-9999px;overflow:hidden}.badge--success.badge--dot,.status-dot.badge--success{background:color-mix(in srgb,var(--color-success) 85%,transparent)}.badge--warning.badge--dot,.status-dot.badge--warning{background:color-mix(in srgb,var(--color-warning) 82%,transparent)}.badge--warning-yellow.badge--dot,.status-dot.badge--warning-yellow{background:color-mix(in srgb,var(--color-warning-yellow) 82%,transparent)}.badge--warning-purple.badge--dot,.status-dot.badge--warning-purple{background:color-mix(in srgb,var(--color-warning-purple) 80%,transparent)}.badge--error.badge--dot,.status-dot.badge--error{background:color-mix(in srgb,var(--color-error) 80%,transparent)}.badge--info.badge--dot,.status-dot.badge--info{background:color-mix(in srgb,var(--color-info) 82%,transparent)}.status-dot{vertical-align:middle;margin-right:.4ch}}@layer components{.toast-stack{position:fixed;top:var(--space-4);right:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);z-index:var(--z-toast)}.toast{background:var(--color-surface);border:var(--border-width-1) solid var(--color-border);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;gap:var(--space-2-5);align-items:flex-start;min-width:220px;font-size:var(--font-size-sm)}.toast--success{border-color:var(--color-success)}.toast--error{border-color:var(--color-error)}.toast__close{background:none;border:none;cursor:pointer;margin-left:auto;color:var(--color-text-muted)}.toast__close:hover{color:var(--color-text)}}@layer components{.spinner{width:1.1rem;height:1.1rem;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spinner-rot .65s linear infinite}.spinner-grow{width:1.1rem;height:1.1rem;background:var(--color-primary);border-radius:50%;animation:spinner-grow-pulse .75s ease-in-out infinite;opacity:.8}@keyframes spinner-rot{to{transform:rotate(360deg)}}@keyframes spinner-grow-pulse{0%{transform:scale(0);opacity:.8}50%{opacity:1}to{transform:scale(1);opacity:.8}}}@layer components{.loading-bar{margin-inline:auto;height:4px;background:none;overflow:hidden;position:relative;background-color:transparent}.loading-bar.is-loading{filter:drop-shadow(0 0 10px var(--color-primary))}.loading-bar.is-loading:before{content:"";display:block;position:absolute;left:0;top:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,var(--color-primary) 50%,var(--color-primary) 50%,transparent 100%);animation:gradient-loading-bar var(--loading-bar-speed, var(--loading-border-speed, .7s)) linear infinite;will-change:transform,opacity}@keyframes gradient-loading-bar{0%{transform:translate(-75%);opacity:.5}50%{opacity:1}to{transform:translate(75%);opacity:.5}}@media (prefers-reduced-motion: reduce){.loading-bar.is-loading:before{animation:none}}}@layer components{@layer components{.skeleton{position:relative;display:inline-block;overflow:hidden;border-radius:var(--radius-sm);background-color:var(--color-surface-alt)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--color-text-muted) 15%,transparent),transparent);animation:shimmer .8s infinite}@keyframes shimmer{to{transform:translate(100%)}}.skeleton--circle{border-radius:50%;aspect-ratio:1 / 1}.skeleton--rounded{border-radius:var(--radius)}.skeleton--fill{position:absolute;inset:0;width:100%;height:100%;display:block}.skeleton--block{display:block;width:100%}}}@layer components{.modal-overlay{position:fixed;inset:0;background:transparent;backdrop-filter:blur(var(--glass-blur, 18px));-webkit-backdrop-filter:blur(var(--glass-blur, 18px));z-index:var(--z-overlay)}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--color-surface);border:var(--border-width-1) solid var(--glass-border, var(--color-border));border-radius:var(--radius-lg);padding:var(--space-4);width:400px;box-shadow:var(--shadow-overlay);z-index:calc(var(--z-overlay) + 10);display:flex;flex-direction:column;gap:var(--space-3);backdrop-filter:blur(var(--glass-blur, 18px));-webkit-backdrop-filter:blur(var(--glass-blur, 18px));font-size:var(--font-size-base)}.modal__header,.modal-header,.popover__header,.popover-header,.dropdown-header{display:flex;align-items:center;justify-content:space-between}.modal-header,.popover-header,.dropdown-header{margin:calc(var(--space-4) * -1) calc(var(--space-4) * -1) var(--space-3) calc(var(--space-4) * -1);padding:var(--space-3) var(--space-3);background:var(--color-accent);border-bottom:var(--border-width-1) solid var(--glass-border, var(--color-border));border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.modal__title,.modal-header h2,.popover-header h2,.dropdown-header h2{margin:0;font-size:var(--font-size-md);font-weight:var(--weight-bold)}.modal__body,.modal-body,.popover__body,.popover-body,.dropdown-body{font-size:inherit;line-height:var(--line-normal)}.modal__footer,.modal-footer,.popover__footer,.popover-footer,.dropdown-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-1)}.modal__close,.modal .close,.popover__close,.popover .close,.dropdown__close,.dropdown .close{background:none;border:none;font-size:var(--font-size-3xl);cursor:pointer;color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;line-height:1}.modal__close:hover,.modal .close:hover,.popover__close:hover,.popover .close:hover,.dropdown__close:hover,.dropdown .close:hover{color:var(--color-primary)}.modal.modal--sm{padding:var(--space-3)}.modal.modal--lg{padding:var(--space-5)}.modal__title-icon{display:inline-flex;align-items:center;line-height:1;font-size:1rem;margin-inline-end:var(--space-2)}@keyframes modalIconPulse{0%{transform:scale(.96);opacity:.85}to{transform:scale(1.06);opacity:1}}.modal.modal--animated .modal__title-icon{animation:modalIconPulse var(--popover-animated-duration, 1s) var(--easing-standard, ease-in-out) infinite alternate;transform-origin:center}.modal.modal--tone-info .modal__title-icon{color:var(--color-info)}.modal.modal--tone-success .modal__title-icon{color:var(--color-success)}.modal.modal--tone-warning .modal__title-icon{color:var(--color-warning)}.modal.modal--tone-danger .modal__title-icon{color:var(--color-error)}.modal-body--start{text-align:left}.modal-body--center{text-align:center}.modal-body--end{text-align:right}.modal-body--justify{text-align:justify}.modal-footer--start{justify-content:flex-start}.modal-footer--center{justify-content:center}.modal-footer--end{justify-content:flex-end}.modal-footer--gap-xs{gap:var(--space-2)}.modal-footer--gap-sm{gap:var(--space-3)}.modal-footer--gap-md{gap:var(--space-4)}.modal-footer>[modal-footer]{display:flex;align-items:center;justify-content:inherit;gap:inherit}@media (prefers-reduced-motion: reduce){.modal.modal--animated .modal__title-icon{animation:none}}@media (max-width: 600px){.modal{width:calc(90vw - var(--space-4));max-width:calc(90vw - var(--space-4));min-width:auto}}}@layer components{.popover{position:absolute;z-index:var(--z-popover)}.popover.is-up{bottom:calc(100% + var(--popover-gap, 8px))}.popover.is-down{top:calc(100% + var(--popover-gap, 8px))}.popover.align-right{right:0}.popover.align-left{left:0}.popover__panel{background:var(--color-surface);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);min-width:260px;max-width:min(460px,92vw);box-sizing:border-box;padding:var(--space-4);animation:popoverIn var(--motion-fast) var(--easing-decelerate)}.popover--animated .popover__title-icon,.popover__panel.popover--animated .popover__title-icon{animation:popoverIconPulse var(--popover-animated-duration, 1s) var(--easing-standard, ease-in-out) infinite alternate;transform-origin:center}@keyframes popoverIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.popover-header{margin:calc(var(--space-4) * -1) calc(var(--space-4) * -1) var(--space-2) calc(var(--space-4) * -1);padding:var(--space-3) var(--space-3);background:var(--color-accent);border-bottom:var(--border-width-1) solid var(--glass-border, var(--color-border));border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md);display:flex;align-items:center;justify-content:space-between}.popover-header h2{margin:0;font-size:var(--font-size-sm);font-weight:var(--weight-bold);display:flex;align-items:center;gap:var(--space-2)}@keyframes popoverIconPulse{0%{transform:scale(.96);opacity:.8}to{transform:scale(1.06);opacity:1}}.popover-body{font-size:var(--font-size-sm);line-height:var(--line-normal);color:var(--color-text-muted);margin-bottom:var(--space-3)}.popover-body--start{text-align:left}.popover-body--center{text-align:center}.popover-body--end{text-align:right}.popover-body--justify{text-align:justify}.popover-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3)}.popover-footer>[popover-footer]{display:flex;align-items:center;justify-content:inherit;gap:inherit}.popover__close{background:none;border:none;font-size:var(--font-size-2xl);cursor:pointer;color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;line-height:1}.popover__close:hover{color:var(--color-primary)}.popover__title-icon{display:inline-flex;align-items:center;line-height:1;font-size:1rem}.popover--sm .popover__panel{padding:var(--space-3);min-width:220px}.popover--lg .popover__panel{padding:var(--space-5);min-width:300px;max-width:min(520px,92vw)}.popover--tone-info .popover__title-icon{color:var(--color-info)}.popover--tone-success .popover__title-icon{color:var(--color-success)}.popover--tone-warning .popover__title-icon{color:var(--color-warning)}.popover--tone-danger .popover__title-icon{color:var(--color-error)}.popover-footer--start{justify-content:flex-start}.popover-footer--start>[popover-footer]{justify-content:flex-start}.popover-footer--center{justify-content:center}.popover-footer--center>[popover-footer]{justify-content:center}.popover-footer--end{justify-content:flex-end}.popover-footer--end>[popover-footer]{justify-content:flex-end}.popover-footer--gap-xs{gap:var(--space-2)}.popover-footer--gap-xs>[popover-footer]{gap:var(--space-2)}.popover-footer--gap-sm{gap:var(--space-3)}.popover-footer--gap-sm>[popover-footer]{gap:var(--space-3)}.popover-footer--gap-md{gap:var(--space-4)}@media (prefers-reduced-motion: reduce){.popover--animated .popover__title-icon,.popover__panel.popover--animated .popover__title-icon{animation:none}}.popover-footer--gap-md>[popover-footer]{gap:var(--space-4)}}@layer components{.card{background:var(--color-surface);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--space-3)}.card--interactive{cursor:pointer;transition:box-shadow var(--motion-medium) var(--easing-standard),transform var(--motion-medium) var(--easing-standard)}.card--interactive:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card__title{margin:0 0 .25rem;font-size:var(--font-size-md);font-weight:var(--weight-semibold)}.card__meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}}@layer components{.table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:var(--font-size-sm)}.table th,.table td{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.table th{text-align:left;--table-padding-y: var(--space-2);--table-padding-x: var(--space-2);padding:var(--table-padding-y) var(--table-padding-x);background:var(--color-surface-alt);position:sticky;top:0;z-index:1}.table td{padding:var(--table-padding-y) var(--table-padding-x);border-top:var(--border-width-1) solid var(--color-border)}.table tbody tr:hover{background:var(--color-surface-alt)}.table__actions{text-align:right}.status-cell{position:relative;font-weight:var(--weight-medium, 500);background:var(--status-cell-bg, transparent);color:var(--status-cell-fg, inherit);transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}.status-success{--status-cell-bg: color-mix(in srgb, var(--color-success) 18%, transparent);--status-cell-fg: var(--color-success)}.status-warning{--status-cell-bg: color-mix(in srgb, var(--color-warning) 20%, transparent);--status-cell-fg: var(--color-warning)}.status-warning-yellow{--status-cell-bg: color-mix( in srgb, var(--color-warning-yellow) 22%, transparent );--status-cell-fg: var(--color-warning-yellow)}.status-warning-purple{--status-cell-bg: color-mix( in srgb, var(--color-warning-purple) 20%, transparent );--status-cell-fg: var(--color-warning-purple)}.status-error{--status-cell-bg: color-mix(in srgb, var(--color-error) 18%, transparent);--status-cell-fg: var(--color-error)}.status-info{--status-cell-bg: color-mix(in srgb, var(--color-info) 18%, transparent);--status-cell-fg: var(--color-info)}@supports not (background: color-mix(in srgb,white 50%,black)){.status-success{--status-cell-bg: var(--color-success);--status-cell-fg: var(--color-text-contrast)}.status-warning{--status-cell-bg: var(--color-warning);--status-cell-fg: var(--color-text-contrast)}.status-warning-yellow{--status-cell-bg: var(--color-warning-yellow);--status-cell-fg: var(--color-text-contrast)}.status-warning-purple{--status-cell-bg: var(--color-warning-purple);--status-cell-fg: var(--color-text-contrast)}.status-error{--status-cell-bg: var(--color-error);--status-cell-fg: var(--color-text-contrast)}.status-info{--status-cell-bg: var(--color-info);--status-cell-fg: var(--color-text-contrast)}}.status-cell .status-dot{margin-right:.35ch;vertical-align:middle}tbody tr:hover .status-cell{box-shadow:inset 0 0 0 999px #ffffff0a}@media (forced-colors: active){.status-cell{background:Canvas;color:ButtonText}.status-success,.status-warning,.status-error,.status-info,.status-warning-yellow,.status-warning-purple{outline:1px solid Highlight}}}@layer components{.sidebar{width:var(--side-nav-width);background:var(--color-surface);border-right:var(--border-width-1) solid var(--color-border);display:flex;flex-direction:column;padding:var(--space-4) var(--space-3);gap:var(--space-2)}.sidebar__section{display:flex;flex-direction:column;gap:var(--space-1)}.sidebar__item{display:flex;align-items:center;gap:var(--space-2-5);padding:var(--space-2) var(--space-3);border-radius:var(--radius);color:var(--color-text);text-decoration:none;font-size:var(--font-size-sm)}.sidebar__item:hover{background:var(--color-surface-alt)}.sidebar__item--active{background:var(--color-primary);color:var(--color-text-contrast)}}@layer components{:root{--tabs-indicator-thickness: 3px}.tabs{display:flex;flex-direction:row;align-items:stretch}.tabs:not(.tabs--vertical){padding-bottom:0}.tabs__tab{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--tabs-font-size, var(--font-size-md));font-weight:var(--weight-medium);letter-spacing:var(--tracking-normal);background:none;border:none;cursor:pointer;color:var(--color-text-muted);transition:color .12s ease,background-color .12s ease}.tabs__tab:hover:not(.tabs__tab--active){color:var(--color-text-contrast);background-color:var(--color-primary-hover)}.tabs__tab--active{color:var(--color-text-contrast);background-color:var(--color-primary)}.tabs__tab[disabled],.tabs__tab[aria-disabled=true]{opacity:var(--opacity-disabled);cursor:not-allowed}.tabs__icon{display:inline-flex;width:1.1em;height:1.1em;align-items:center;justify-content:center}.tabs--sm .tabs__tab{padding:var(--tabs-sm-padding-y, var(--space-1-5)) var(--tabs-sm-padding-x, var(--space-2-5));font-size:var(--font-size-sm)}.tabs--lg .tabs__tab{padding:var(--tabs-lg-padding-y, var(--space-3)) var(--tabs-lg-padding-x, var(--space-5));font-size:var(--font-size-lg)}.tabs__spacer{flex:1 1 auto;min-width:0}}@layer components{.tabs--horizontal{flex-direction:row}.tabs--horizontal .tabs__tab{text-align:left}.tabs--horizontal .tabs__tab--active{border-left:var(--border-width-1) solid var(--color-primary);border-right:var(--border-width-1) solid var(--color-primary);text-align:left}.tabs--horizontal .tabs__tab:after{content:"";position:absolute;left:-1px;bottom:0;height:var(--tabs-indicator-thickness);width:calc(100% + 2px);background:var(--color-primary);transform:scaleX(0);transform-origin:center;will-change:transform;transition:transform .2s ease;z-index:1}.tabs--horizontal .tabs__tab--active:after{transform:scaleX(1)}app-horizontal-scroll.bottom-divider{position:relative}app-horizontal-scroll.bottom-divider:after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--border-width-3);background-color:var(--color-border);pointer-events:none}app-horizontal-scroll.bottom-divider--gradient{position:relative;border-bottom:0;background:none;--edge-fade: 100px}app-horizontal-scroll.bottom-divider--gradient:after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--border-width-3);background-color:var(--color-border);pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent,#000 var(--edge-fade),#000 calc(100% - var(--edge-fade)),transparent);mask-image:linear-gradient(to right,transparent,#000 var(--edge-fade),#000 calc(100% - var(--edge-fade)),transparent)}}@layer components{.tabs--vertical{flex-direction:column}.tabs--vertical .tabs__tab{text-align:left}.tabs--vertical .tabs__tab--active{border-top:var(--border-width-1) solid var(--color-primary);border-bottom:var(--border-width-1) solid var(--color-primary);text-align:left}.tabs--vertical .tabs__tab:after{content:"";position:absolute;right:0;top:-1px;bottom:auto;width:var(--tabs-indicator-thickness);height:calc(100% + 2px);background:var(--color-primary);transform:scaleY(0);transform-origin:center;will-change:transform;transition:transform .2s ease;z-index:1}.tabs--vertical .tabs__tab--active:after{transform:scaleY(1)}app-vertical-scroll.right-divider{position:relative}app-vertical-scroll.right-divider:after{content:"";position:absolute;top:0;right:0;bottom:0;width:var(--border-width-3);background-color:var(--color-border);pointer-events:none}app-vertical-scroll.right-divider--gradient{position:relative;border-right:0;background:none;--edge-fade: 100px}app-vertical-scroll.right-divider--gradient:after{content:"";position:absolute;top:0;right:0;bottom:0;width:var(--border-width-3);background-color:var(--color-border);pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 var(--edge-fade),#000 calc(100% - var(--edge-fade)),transparent);mask-image:linear-gradient(to bottom,transparent,#000 var(--edge-fade),#000 calc(100% - var(--edge-fade)),transparent)}}@layer components{.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);font-size:var(--font-size-xs)}.breadcrumb__item{color:var(--color-text-muted);text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-1-5)}.breadcrumb__item:hover{color:var(--color-text)}.breadcrumb__item--current{color:var(--color-text);font-weight:var(--weight-medium)}.breadcrumb__sep{opacity:.5}}@layer components{.dropdown{position:relative}.dropdown__menu{position:absolute;top:100%;left:0;margin-top:var(--space-1);list-style:none;padding:var(--space-2);background:var(--color-surface);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius-md);min-width:calc(var(--space-20) * 2);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:calc(var(--space-1) / 2);z-index:var(--z-dropdown)}.dropdown-header{margin:calc(var(--space-2) * -1) calc(var(--space-2) * -1) var(--space-1-5) calc(var(--space-2) * -1);padding:var(--space-2) var(--space-2-5);background:var(--color-accent);border-bottom:var(--border-width-1) solid var(--glass-border, var(--color-border));border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md);display:flex;align-items:center;justify-content:space-between}.dropdown-header h2{margin:0;font-size:var(--font-size-sm);font-weight:var(--weight-bold)}.dropdown-body{font-size:inherit;line-height:var(--line-normal);color:var(--color-text-muted)}.dropdown-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2)}.dropdown__item{background:none;border:none;text-align:left;width:100%;--dropdown-item-padding-y: var(--space-2);--dropdown-item-padding-x: var(--space-3);padding:var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);font:inherit;color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer}}@layer components{.toolbar{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding-block:var(--space-2);border-bottom:var(--border-width-1) solid var(--color-border);margin-bottom:var(--space-4)}.toolbar--borderless{border-bottom:none;margin-bottom:var(--space-2)}.toolbar--top{border-top:var(--border-width-1) solid var(--color-border);border-bottom:none;margin-top:var(--space-4);margin-bottom:0}.toolbar .left-actions{display:flex;gap:var(--space-2)}.toolbar__left{display:flex;align-items:center;gap:var(--space-2)}.toolbar__center{flex:1;display:flex;justify-content:center;align-items:center}.toolbar__right{display:flex;align-items:center;gap:var(--space-2)}.toolbar__title{font-size:var(--font-size-lg);font-weight:var(--weight-semibold);color:var(--color-text);margin:0}.toolbar__subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.toolbar__status{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted)}.toolbar__status--active{color:var(--color-success)}.toolbar__status--warning{color:var(--color-warning)}.toolbar__status--error{color:var(--color-error)}.search-form input{padding:var(--space-2) var(--space-3);border-radius:var(--radius);border:var(--border-width-1) solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text)}}@layer components{.drawer-overlay{position:fixed;inset:0;background:#0006;z-index:var(--z-overlay)}.drawer{position:fixed;top:0;bottom:0;width:var(--drawer-width);max-width:90vw;background:var(--color-surface);border-right:var(--border-width-1) solid var(--color-border);box-shadow:var(--shadow-overlay);padding:var(--space-4) var(--space-4) var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);overflow:auto}.drawer--right{left:auto;right:0;border-right:none;border-left:var(--border-width-1) solid var(--color-border)}}@layer components{.tooltip{position:absolute;z-index:var(--z-tooltip);background:var(--glass-bg, var(--color-accent));-webkit-backdrop-filter:blur(var(--glass-blur, 8px));backdrop-filter:blur(var(--glass-blur, 8px));color:var(--color-text);border:var(--border-width-1) solid var(--color-border);padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);border-radius:var(--radius-sm);box-shadow:var(--shadow, 0 2px 6px var(--color-shadow));animation:tooltipIn var(--motion-fast) var(--easing-decelerate)}@keyframes tooltipIn{0%{opacity:0;transform:translateY(-3px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}}@layer components{.surface{background:var(--color-surface);border-radius:var(--radius-lg)}.panel{border-radius:var(--radius-xl)}.panel-bg{background:var(--color-panel);box-shadow:var(--shadow-sm);border:var(--border-width-1) solid var(--color-border)}.panel-blurred{position:relative;isolation:isolate;overflow:hidden;border:var(--border-width-1) solid var(--color-border)}.panel-blurred:before{content:"";position:absolute;inset:0;border-radius:inherit;background-color:var(--color-panel-blurred);backdrop-filter:blur(var(--glass-blur, 20px));-webkit-backdrop-filter:blur(var(--glass-blur, 20px));pointer-events:none;z-index:0}.panel-blurred>*{position:relative;z-index:1}}@layer components{.section{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface);display:flex;flex-direction:column;gap:var(--space-2);border:var(--border-width-1) solid var(--color-border)}.section--warning,.section.warning{border:var(--border-width-1) solid var(--color-warning);background:color-mix(in srgb,var(--color-warning) 10%,var(--color-surface-alt))}.section--error,.section.error{border:var(--border-width-1) solid var(--color-error);background:color-mix(in srgb,var(--color-error) 10%,var(--color-surface-alt))}.section--success,.section.success{border:var(--border-width-1) solid var(--color-success);background:color-mix(in srgb,var(--color-success) 10%,var(--color-surface-alt))}.section--info,.section.info{border:var(--border-width-1) solid var(--color-info);background:color-mix(in srgb,var(--color-info) 10%,var(--color-surface-alt))}.section__header{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}.section__title{font-size:var(--font-size-sm);font-weight:var(--weight-semibold);color:var(--color-text);display:flex;align-items:center;gap:var(--space-2)}.section__title-icon{font-size:var(--font-size-sm)}.section__title-icon.warning{color:var(--color-warning)}.section__title-icon.error{color:var(--color-error)}.section__title-icon.success{color:var(--color-success)}.section__title-icon.info{color:var(--color-info)}.section__content{display:flex;flex-direction:column;gap:var(--space-2)}.section__stats{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm)}.section__stat{color:var(--color-text-muted)}.section__stat--needed,.section__stat.needed{color:var(--color-text);font-weight:var(--weight-medium)}.section__stat--warning,.section__stat.warning{color:var(--color-warning)}.section__stat--error,.section__stat.error{color:var(--color-error)}.section__stat--success,.section__stat.success{color:var(--color-success)}.section__separator{color:var(--color-text-muted);font-weight:var(--weight-regular)}}@layer components{.action-panel{display:flex;flex-direction:row;justify-content:center;align-items:center}.action-panel--gap{gap:var(--space-4)}.action-panel--pad-x{padding:0 var(--space-4)}.action-panel--start{justify-content:start}.action-panel--end{justify-content:end}.action-panel--gap-pad{gap:var(--space-4);padding:0 var(--space-4)}@media (max-width: 640px){.action-panel{flex-wrap:wrap}}}@layer components{.progress{background:var(--color-surface-alt);height:6px;border-radius:var(--radius-sm);overflow:hidden;position:relative}.progress__bar,.progress .bar{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));transition:width var(--motion-medium) var(--easing-standard)}}@layer components{.input{display:inline-flex;position:relative;align-items:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-3);min-height:var(--control-height, 36px);background:var(--color-button-neutral-hover, var(--color-surface-alt));border-radius:var(--radius-sm, var(--radius));color:var(--color-text);font:inherit;line-height:1.25;width:100%;box-sizing:border-box;transition:background-color .14s var(--easing-standard, ease),border-color .14s var(--easing-standard, ease),box-shadow .14s var(--easing-standard, ease)}.input:hover:not(.input--disabled):not(.input--readonly){background:var(--color-surface-alt);border-color:var(--color-accent)}.input:focus-within{outline:none;background:var(--color-surface-alt);border-color:var(--color-focus-ring, var(--color-accent));box-shadow:0 0 0 2px var(--color-focus-ring, var(--color-accent))}.input--invalid{border-color:var(--color-error)}.input--invalid .input__field{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-error) 75%,transparent);background:color-mix(in srgb,var(--color-error) 12%,var(--color-surface-alt));border-radius:var(--radius-sm, var(--radius))}.input--dirty:not(.input--invalid){border-color:var(--color-warning)}.input--dirty:not(.input--invalid) .input__field{box-shadow:0 0 0 var(--focus-ring-outline-width, 2px) color-mix(in srgb,var(--color-warning) 35%,transparent);background:color-mix(in srgb,var(--color-warning) 8%,var(--color-surface-alt));border-radius:var(--radius-sm, var(--radius))}.input__field{background:transparent;border:none;outline:none;color:inherit;font:inherit;width:100%;line-height:1.25;padding:0}.input__field::placeholder{color:var(--color-text-muted)}.input--disabled,.input--disabled .input__field{opacity:.55;cursor:not-allowed}.input--readonly .input__field{cursor:default}.input--dense{padding:var(--space-2) var(--space-2-5)}.input--icon-left{padding-left:var(--space-9)}.input--icon-left .input__field{padding-left:0}.input--ghost{background:transparent!important;border:1px solid transparent!important;box-shadow:none!important}.input--ghost:hover,.input--ghost:focus-within{background:transparent!important;border-color:transparent!important;box-shadow:none!important}.input__icon{position:absolute;left:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-base);pointer-events:none}input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=url],input[type=tel],input[type=time],input[type=date],input[type=datetime-local],input[type=month],input[type=week],select,textarea{font:inherit;line-height:1.25;color:var(--color-text);background:var(--color-button-neutral-hover, var(--color-surface-alt));border:none;border-radius:var(--radius-sm, var(--radius));padding:var(--input-padding-y, var(--space-2-5)) var(--input-padding-x, var(--space-3));min-height:var(--control-height, 36px);width:100%;box-sizing:border-box;transition:background-color .14s var(--easing-standard, ease),border-color .14s var(--easing-standard, ease),box-shadow .14s var(--easing-standard, ease)}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){background:var(--color-surface-alt);border-color:var(--color-accent)}input:focus,select:focus,textarea:focus{outline:none;background:var(--color-surface-alt);border-color:var(--color-focus-ring, var(--color-accent));box-shadow:0 0 0 2px var(--color-focus-ring, var(--color-accent))}input:disabled,select:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}.input-wrap{display:flex;flex-direction:column;gap:var(--space-2);font:inherit}.input-wrap>input,.input-wrap>select,.input-wrap>textarea,label:not(.input)>input,label:not(.input)>select,label:not(.input)>textarea{padding:var(--input-padding-y, var(--space-2)) var(--space-2-5)}.input-wrap.input--dirty>input,.input-wrap.input--dirty>select,.input-wrap.input--dirty>textarea{border-color:var(--color-warning);box-shadow:0 0 0 var(--focus-ring-outline-width, 2px) color-mix(in srgb,var(--color-warning) 35%,transparent);background:color-mix(in srgb,var(--color-warning) 8%,var(--color-surface-alt))}.error-text{color:var(--color-error);font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm, 6px);display:inline-block}.input-wrap.input--invalid>input,.input-wrap.input--invalid>select,.input-wrap.input--invalid>textarea{border-color:var(--color-error);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-error) 75%,transparent)}.input-wrap.input--invalid .password-input__field{border-color:var(--color-error);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-error) 75%,transparent)}}@layer components{.select{position:relative;display:inline-flex;align-items:center;width:100%}.select__control{appearance:none;--select-padding-y: .625rem;--select-padding-x: .75rem;padding:var(--select-padding-y) var(--select-padding-x);min-height:var(--control-height, 36px);width:100%;line-height:1.25;background:none}}@layer components{.textarea{width:100%;min-height:6.5rem;resize:vertical;--textarea-padding-y: .625rem;--textarea-padding-x: .75rem;padding:var(--textarea-padding-y) var(--textarea-padding-x);line-height:1.35;background:none}}@layer components{.checkbox{display:inline-flex;align-items:center;cursor:pointer}.checkbox__input{width:22px;height:22px;border:1px solid var(--color-border);border-radius:var(--radius-sm);appearance:none;display:grid;place-items:center;background:var(--color-surface-alt);transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,opacity .12s ease}.checkbox__input:hover:not(:disabled){box-shadow:0 0 0 2px var(--color-primary);background-color:var(--color-surface);cursor:pointer}.checkbox.input--dirty .checkbox__input:not(:disabled),.input-wrap.input--dirty .checkbox__input:not(:disabled){border-color:var(--color-warning);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-warning) 35%,transparent)}.checkbox__input.ng-touched:not(.ng-invalid):not(.ng-dirty):not(:disabled){box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 20%,transparent)}.checkbox__input:checked:after{content:"";display:block;width:8px;height:16px;border:2px solid var(--color-text);border-top:0;border-left:0;transform:translate(-4px) translateY(-8px) rotate(45deg)}.checkbox__input:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.checkbox__label{-webkit-user-select:none;user-select:none}.checkbox__input:disabled+.checkbox__label{opacity:var(--opacity-disabled)}}@layer components{.radio{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.radio__input{width:16px;height:16px;border:1px solid var(--color-border);border-radius:50%;appearance:none;background:var(--color-surface-alt);display:grid;place-items:center}.radio.input--dirty .radio__input:not(:disabled),.input-wrap.input--dirty .radio__input:not(:disabled){border-color:var(--color-warning);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-warning) 35%,transparent)}.radio__input.ng-touched:not(.ng-invalid):not(.ng-dirty):not(:disabled){box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 20%,transparent)}.radio__input:checked{border-color:var(--color-primary);background:var(--color-primary)}.radio__input:checked:after{content:"";width:6px;height:6px;color:var(--color-text-contrast);border-radius:50%}}@layer components{.switch{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.switch__track{position:relative;width:var(--switch-track-width);height:var(--switch-track-height);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-round);transition:background var(--motion-fast) var(--easing-standard)}.switch__thumb{position:absolute;top:var(--switch-offset);left:var(--switch-offset);width:var(--switch-thumb-size);height:var(--switch-thumb-size);border-radius:50%;background:var(--color-surface);box-shadow:var(--shadow-sm);transition:transform var(--motion-fast) var(--easing-standard)}.switch--dirty .switch__track,.switch.input--dirty .switch__track,.input-wrap.input--dirty .switch__track{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-warning) 35%,transparent)}.switch--touched .switch__track,.switch:has(input.ng-touched):not(:has(input.ng-invalid)) .switch__track{box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 20%,transparent)}.switch--on .switch__track{background:var(--color-primary);border-color:var(--color-primary)}.switch--on .switch__thumb{transform:translate(calc(var(--switch-track-width) - var(--switch-thumb-size) - (2 * var(--switch-offset))))}}@layer components{.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-group__label{font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:var(--color-text)}.form-group__help{font-size:var(--font-size-xs);color:var(--color-text-muted)}.form-group__error{font-size:var(--font-size-xs);color:var(--color-error)}}@layer components{.simple-form{display:flex;flex-direction:column;gap:var(--space-6)}.simple-form label{display:flex;flex-direction:column;gap:var(--space-1-5);font-size:var(--font-size-sm);font-weight:var(--weight-medium)}.simple-form input,.simple-form select{padding:var(--space-2) var(--space-2-5)}.simple-form.simple-form--compact input,.simple-form.simple-form--compact select,.simple-form.simple-form--compact textarea{padding:var(--space-1-5) var(--space-2)}.simple-form select option{background:var(--color-surface);color:var(--color-text)}.simple-form select option:checked{background:var(--color-selection-bg)!important;color:var(--color-selection-text)}.form-actions{display:flex;gap:var(--space-2)}.side-panel h3{margin-top:0;text-transform:uppercase;letter-spacing:.5px;font-size:var(--font-size-xs);color:var(--color-text-muted)}}@layer components{.list{list-style:none;padding:0;margin:0;display:flex}.list__item{padding:var(--space-2) var(--space-3);background:var(--color-surface);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius);display:flex;align-items:center}.list__item:hover{background:var(--color-surface-alt)}.menu-list{padding:0;margin:0;display:flex}.menu-list_item{padding:var(--space-1-5) var(--space-2);border-radius:var(--radius);display:flex;align-items:center}.menu-list_item.active:not(.icon-button){color:var(--color-text-contrast)}.menu-list_item:hover:not(.icon-button){color:var(--color-text-contrast);background:var(--color-primary-hover)}}@layer components{.pagination{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm)}.pagination__button{min-width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;padding:var(--space-1) var(--space-2-5);background:var(--color-surface);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius);cursor:pointer}.pagination__button:hover{background:var(--color-surface-alt)}.pagination__button--active{background:var(--color-primary);color:var(--color-text-contrast);border-color:var(--color-primary)}.pagination__ellipsis{opacity:.65}}@layer components{.dashboard-stats{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-block:var(--space-4)}.stat-card{background:var(--color-surface);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);position:relative;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--space-2)}.stat-card .label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted)}.stat-card .value{font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text)}.stat-card .delta{font-weight:600}.stat-card .delta.up{color:var(--color-success)}.stat-card .delta.down{color:var(--color-error)}.stat-card .delta.warn{color:var(--color-warning)}}@layer components{.vehicle-item{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-1) var(--space-1-5);border-radius:var(--radius-md);border:var(--border-width-1) solid var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--weight-regular);color:var(--color-text);transition:all var(--motion-fast) var(--easing-standard);position:relative;background-color:var(--color-panel);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;white-space:nowrap}.vehicle-item.assigned{font-weight:var(--weight-regular);background:color-mix(in srgb,var(--color-success) 20%,var(--color-surface-alt));opacity:.6;border:var(--border-width-1) solid var(--color-success-strong)}.vehicle-item.disabled{opacity:var(--opacity-disabled);cursor:not-allowed;pointer-events:none}.vehicle-item-list{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1)}.section_separator{color:var(--color-text-muted);font-weight:var(--weight-regular);-webkit-user-select:none;user-select:none}}@layer components{.legal-header h1{margin:0;font-size:clamp(1.5rem,2vw + 1rem,2rem);line-height:1.2;color:var(--color-text)}.legal-header{display:flex;flex-direction:column;align-items:center;width:100%}.legal-padding{padding:0 var(--space-3)}.legal-meta{color:var(--color-text-muted);font-size:var(--font-size-sm, .9rem)}.legal-page{display:grid;gap:var(--space-3, 1rem);line-height:1.6;font-size:var(--font-size-md, .95rem)}.legal-page h2{margin-top:var(--space-4, 1.5rem);margin-bottom:var(--space-1, .25rem);font-size:clamp(1.05rem,1vw + .8rem,1.25rem);color:var(--color-text)}.legal-page p{margin:0}.legal-page ul{margin:var(--space-1, .25rem) 0 var(--space-2, .5rem) 0;padding-left:1.25rem}.legal-page li{margin:.4rem 0}.legal-page a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}@media (max-width: 640px){.legal-page{font-size:var(--font-size-base, .95rem)}}.section--legal{display:flex;flex-direction:column;min-height:0}.section--legal .section__header{background:var(--color-accent);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);box-shadow:var(--shadow)}.section--legal .section__content{flex:1 1 auto;min-height:0;overflow:hidden;margin-top:var(--space-3);background:var(--color-surface);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-sm);border-left:3px solid var(--color-primary)}.section--legal .section__content li::marker{color:var(--color-primary)}.section--legal .section__content h2{scroll-margin-top:var(--space-6)}.legal-root{display:flex;flex-direction:column;align-items:center;height:100%}.legal-panel{width:100%;max-width:1000px}}html,body{margin:0;padding:0;font-family:var(--font-sans);font-size:var(--font-size-md);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}app-root{display:flex;flex-direction:column;min-height:100svh;width:100%}
