:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--palette-warm-white:#fcfcfb;--palette-white:#fff;--palette-deep-navy:#16324f;--palette-dark-navy:#10263c;--palette-midnight-navy:#0b1c2d;--palette-pale-navy:#eaf0f5;--palette-champagne-gold:#c8a96a;--palette-antique-gold:#b89450;--palette-gold-ink:#261d0c;--palette-forest-green:#2f855a;--palette-pale-green:#e7f4ec;--palette-warm-amber:#d89b2b;--palette-pale-amber:#fbf2de;--palette-muted-red:#c65353;--palette-pale-red:#f8e8e8;--palette-steel-blue:#3b6e8f;--palette-charcoal:#1a202c;--palette-slate-gray:#667085;--palette-soft-gray:#98a2b3;--palette-warm-light-gray:#e8e8e5;--palette-medium-gray:#d0d5dd;--color-canvas:var(--palette-warm-white);--color-surface:var(--palette-white);--color-surface-selected:var(--palette-pale-navy);--color-primary:var(--palette-deep-navy);--color-primary-hover:var(--palette-dark-navy);--color-primary-pressed:var(--palette-midnight-navy);--color-primary-soft:var(--palette-pale-navy);--color-on-primary:var(--palette-white);--color-accent:var(--palette-champagne-gold);--color-accent-hover:var(--palette-antique-gold);--color-on-accent:var(--palette-gold-ink);--color-success:var(--palette-forest-green);--color-success-soft:var(--palette-pale-green);--color-warning:var(--palette-warm-amber);--color-warning-soft:var(--palette-pale-amber);--color-danger:var(--palette-muted-red);--color-danger-soft:var(--palette-pale-red);--color-info:var(--palette-steel-blue);--color-info-soft:var(--palette-pale-navy);--color-text:var(--palette-charcoal);--color-text-secondary:var(--palette-slate-gray);--color-text-muted:var(--palette-soft-gray);--color-border:var(--palette-warm-light-gray);--color-border-strong:var(--palette-medium-gray);--color-focus:var(--palette-deep-navy);--color-disabled-surface:var(--palette-pale-navy);--color-disabled-text:var(--palette-slate-gray);--color-overlay:#0b1c2d80;--font-heading:Manrope, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-caption:.75rem;--font-size-supporting:.875rem;--font-size-body:1rem;--font-size-body-large:1.125rem;--font-size-card-title:1.125rem;--font-size-section-title:1.5rem;--font-size-page-title:clamp(2rem, 5vw, 2.25rem);--font-size-display:clamp(2.5rem, 8vw, 3rem);--line-height-tight:1.15;--line-height-body:1.6;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--radius-sm:.375rem;--radius-md:.625rem;--radius-lg:.875rem;--radius-xl:1.125rem;--radius-pill:999px;--shadow-sm:0 1px 2px #1018280d;--shadow-md:0 4px 12px #10182814;--shadow-lg:0 12px 30px #1018281f;--focus-ring:0 0 0 3px #16324f24;--duration-fast:.15s;--duration-standard:.2s;--ease-standard:ease;--content-max-width:75rem;--form-max-width:32rem;--touch-target-min:2.75rem}
body{font-family:var(--font-body);font-size:var(--font-size-body);line-height:var(--line-height-body)}h1,h2,h3,h4,h5,h6{color:var(--color-text);font-family:var(--font-heading);line-height:var(--line-height-tight);margin-block:0}h1{font-size:var(--font-size-display);letter-spacing:-.035em;font-weight:700}h2{font-size:var(--font-size-page-title);letter-spacing:-.025em;font-weight:700}h3{font-size:var(--font-size-section-title);font-weight:650}h4{font-size:var(--font-size-card-title);font-weight:600}p{margin-block:0}a{color:var(--color-primary);text-underline-offset:.2em}a:hover{color:var(--color-primary-hover)}
*,:before,:after{box-sizing:border-box}html{background:var(--color-canvas)}body{background:var(--color-canvas);min-height:100vh;color:var(--color-text);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0}button,input,select,textarea{color:inherit;font:inherit}button,a,input,select,textarea{outline:none}:focus-visible{border-color:var(--color-focus);box-shadow:var(--focus-ring)}img,svg{max-width:100%;display:block}::selection{background:var(--color-primary-soft);color:var(--color-text)}
.page-shell{width:min(100%, var(--content-max-width));padding:var(--space-5) var(--space-4);margin-inline:auto}.page-center{place-items:center;min-height:100vh;display:grid}.stack{gap:var(--space-4);flex-direction:column;display:flex}.cluster{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.responsive-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));display:grid}.form-layout{width:min(100%, var(--form-max-width))}@media (min-width:48rem){.page-shell{padding:var(--space-6)}}
.button{min-height:var(--touch-target-min);justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);border:1px solid #0000;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}.button-primary{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.button-primary:hover:not(:disabled){border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.button-primary:active:not(:disabled){border-color:var(--color-primary-pressed);background:var(--color-primary-pressed)}.button-secondary{border-color:var(--color-border-strong);background:var(--color-surface);color:var(--color-text)}.button-secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.button-accent{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}.button-accent:hover:not(:disabled){border-color:var(--color-accent-hover);background:var(--color-accent-hover)}.button-danger{border-color:var(--color-danger);background:var(--color-danger);color:var(--color-on-primary)}.button-ghost{color:var(--color-primary);background:0 0}.button:disabled,.button[aria-disabled=true]{border-color:var(--color-border);background:var(--color-disabled-surface);color:var(--color-disabled-text);cursor:not-allowed;opacity:.75}.button-block{width:100%}.google-sign-in-container{min-height:var(--touch-target-min);border-radius:var(--radius-md);justify-content:center;align-items:center;display:flex;overflow:hidden}
.card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-5);box-shadow:var(--shadow-sm)}.card-selected{border-color:var(--color-primary);background:var(--color-surface-selected)}.card-elevated{box-shadow:var(--shadow-md)}.card-header,.card-body,.card-footer{gap:var(--space-3);flex-direction:column;display:flex}.card-footer{margin-top:var(--space-5)}
.form-group{gap:var(--space-2);flex-direction:column;display:flex}.label{color:var(--color-text);font-size:var(--font-size-supporting);font-weight:600}.input,.select,.textarea{width:100%;min-height:var(--touch-target-min);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-3) var(--space-4);color:var(--color-text);transition:border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard)}.textarea{resize:vertical;min-height:7rem}.input::placeholder,.textarea::placeholder{color:var(--color-text-muted)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--color-disabled-surface);color:var(--color-disabled-text);cursor:not-allowed}.input-error{border-color:var(--color-danger)}.field-help,.field-error{font-size:var(--font-size-supporting)}.field-help{color:var(--color-text-secondary)}.field-error{color:var(--color-danger)}
.badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);width:fit-content;min-height:1.75rem;padding:var(--space-1) var(--space-3);background:var(--color-primary-soft);color:var(--color-primary);font-size:var(--font-size-caption);font-weight:600;display:inline-flex}.badge-success{background:var(--color-success-soft);color:var(--color-success)}.badge-warning{background:var(--color-warning-soft);color:var(--color-text)}.badge-danger{background:var(--color-danger-soft);color:var(--color-danger)}.badge-premium{background:var(--color-accent);color:var(--color-on-accent)}
.alert{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);background:var(--color-primary-soft);color:var(--color-text);display:flex}.alert-info{border-color:var(--color-info);background:var(--color-info-soft)}.alert-success{border-color:var(--color-success);background:var(--color-success-soft)}.alert-warning{border-color:var(--color-warning);background:var(--color-warning-soft)}.alert-danger{border-color:var(--color-danger);background:var(--color-danger-soft)}
.nav-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:flex}.nav-item{min-height:var(--touch-target-min);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--color-text-secondary);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.nav-item:hover{background:var(--color-primary-soft);color:var(--color-text)}.nav-item-active,.nav-item[aria-current=page]{background:var(--color-primary-soft);color:var(--color-primary)}
.modal-backdrop{z-index:100;padding:var(--space-4);background:var(--color-overlay);place-items:center;display:grid;position:fixed;inset:0}.modal{width:min(100%,36rem);max-height:calc(100vh - (2 * var(--space-4)));border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);padding:var(--space-6);box-shadow:var(--shadow-lg);overflow:auto}
.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.text-center{text-align:center}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

