.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}:root{--color-primary: #1e3a2b;--color-primary-soft: #3a7352;--color-accent: #c88a36;--color-danger: #a54b3f;--color-surface: #faf8f5;--color-card: #ffffff;--color-on-primary: #ffffff;--color-text: #20251f;--color-muted: #667068;--color-border: #d9dfd8;--radius-md: .75rem;--radius-lg: 1.125rem;--shadow-card: 0 .5rem 1.5rem rgb(30 58 43 / 8%);--shadow-raised: 0 1rem 2rem rgb(30 58 43 / 18%);--shadow-loading: 0 .75rem 2rem rgb(30 58 43 / 12%);--shadow-toast: 0 1rem 2rem rgb(30 58 43 / 20%);--color-primary-hover-border: color-mix(in oklch, var(--color-primary), var(--color-card) 65%);--color-primary-selected: color-mix(in oklch, var(--color-primary), var(--color-card) 92%);--color-accent-badge: color-mix(in oklch, var(--color-accent), var(--color-card) 75%);--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;color:var(--color-text);font-family:Plus Jakarta Sans,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}body{min-width:20rem;margin:0;background-color:var(--color-surface);color:var(--color-text)}main{display:grid;width:min(100%,46rem);min-height:calc(100dvh - 8rem);margin:0 auto;padding:clamp(1rem,4vw,2rem);padding-bottom:6rem;gap:var(--space-md)}h1,h2,h3,p{margin:0}h1{color:var(--color-primary);font-size:clamp(1.75rem,6vw,2.5rem);letter-spacing:-.04em}h2{color:var(--color-primary);font-size:1.25rem}h3{font-size:1rem}.card,main>section:not(.list,.stats){display:grid;gap:var(--space-md);padding:var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-card);box-shadow:var(--shadow-card)}label{display:grid;gap:.375rem;color:var(--color-muted);font-size:.875rem;font-weight:700}input,select,button{min-height:2.625rem;border-radius:var(--radius-md);font:inherit}input,select{width:100%;padding-inline:.875rem;border:1px solid var(--color-border);background-color:var(--color-card);color:var(--color-text)}button{width:fit-content;padding-inline:.875rem;border:0;background-color:var(--color-primary);color:#fff;cursor:pointer;font-weight:800;transition:background-color .16s ease,transform .16s ease}.update-banner{display:flex;padding:.5rem 1rem;gap:1rem;align-items:center;justify-content:center;background-color:var(--color-accent);color:var(--color-primary)}.update-banner button{min-height:2rem}button:hover{background-color:var(--color-primary-soft)}button:active{transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--color-primary-soft);font-weight:800}[role=alert]{color:var(--color-danger);font-weight:700}[role=status]{color:var(--color-primary);font-weight:700}:focus-visible{outline:3px solid color-mix(in oklch,var(--color-accent),white 20%);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms}}
