:root{--palette-paper:#f4f3ec;--palette-pine:#1b3024;--palette-forest:#234b37;--palette-moss:#526153;--palette-stone:#c9cec3;--palette-clay:#923d29;--palette-ivory:#fffef9;--palette-rose:#f4e7df;--palette-sage:#e5ecdf;--palette-wheat:#f0dfad;--color-paper:var(--palette-paper);--color-ink:var(--palette-pine);--color-accent:var(--palette-forest);--color-muted:var(--palette-moss);--color-line:var(--palette-stone);--color-error:var(--palette-clay);--color-surface:var(--palette-ivory);--color-on-accent:var(--palette-ivory);--color-error-surface:var(--palette-rose);--color-success-surface:var(--palette-sage);--color-warning-surface:var(--palette-wheat);--color-warning-ink:var(--palette-pine);--font-body:"Segoe UI", system-ui, sans-serif;--font-display:Georgia, "Times New Roman", serif;--font-email:Arial, sans-serif;--font-size-caption:.75rem;--font-size-help:.8rem;--font-size-label:.875rem;--font-size-note:.9rem;--font-size-section:1.15rem;--font-size-brand:1.5rem;--font-size-hero:clamp(3.1rem, 8vw, 7.8rem);--font-size-auth:clamp(2.7rem, 6vw, 4rem);--font-size-system:clamp(2.5rem, 7vw, 4rem);--font-size-introduction:clamp(1.05rem, 2vw, 1.3rem);--weight-normal:400;--weight-medium:600;--weight-brand:650;--weight-bold:700;--leading-body:1.6;--leading-title:1.06;--tracking-title:-.045em;--tracking-brand:-.06em;--tracking-eyebrow:.12em;--tracking-code:.35em;--space-1:4px;--space-2:8px;--space-3:12px;--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-14:56px;--space-15:60px;--space-16:64px;--space-18:72px;--space-20:80px;--space-40:160px;--space-half:2px;--space-1-half:6px;--space-2-half:10px;--space-3-half:14px;--space-4-half:18px;--border-thin:1px;--border-emphasis:3px;--radius-control:3px;--opacity-disabled:.55;--layer-impersonation:10;--size-page:1200px;--size-hero:1440px;--size-hero-copy:900px;--size-auth:480px;--size-diagnostics:760px;--size-reading:38rem;--size-gutter:6vw;--size-hero-top:clamp(64px, 13vh, 160px);--size-control:var(--space-12);--size-touch:44px;--size-sidebar:240px;--size-textarea:140px;--size-catalog-card:280px;--breakpoint-compact:414px;--breakpoint-auth:480px;--breakpoint-portal:900px;--ratio-photo:4 / 3;--email-width:560px;--email-body-size:16px;--email-brand-size:24px;--email-title-size:32px;--email-code-size:36px;--email-code-tracking:var(--space-2);--email-small-size:13px;color:var(--color-ink);background:var(--color-paper);font-family:var(--font-body);font-synthesis:none;line-height:var(--leading-body);accent-color:var(--color-accent)}*{box-sizing:border-box}html,body{min-width:0;margin:0;overflow-x:clip}body{min-height:100svh}.app-root{display:contents}a{color:inherit;text-underline-offset:var(--space-1)}a:focus-visible{outline:var(--border-emphasis) solid var(--color-accent);outline-offset:var(--space-1-half)}button:focus-visible,input:focus-visible{outline:var(--border-emphasis) solid var(--color-accent);outline-offset:var(--border-emphasis)}h1{font-family:var(--font-display);font-style:normal;font-weight:var(--weight-normal);line-height:var(--leading-title);letter-spacing:var(--tracking-title);overflow-wrap:anywhere;min-width:0}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:var(--opacity-disabled)}.brand{font-weight:var(--weight-brand);font-size:var(--font-size-brand);letter-spacing:var(--tracking-brand);white-space:nowrap;text-decoration:none}.eyebrow{color:var(--color-muted);font-size:var(--font-size-caption);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;font-weight:var(--weight-medium);margin:0 0 var(--space-6)}.auth-panel form{gap:var(--space-2-half);display:grid}.auth-panel label{font-size:var(--font-size-label);font-weight:var(--weight-medium);margin-top:var(--space-3)}.auth-panel input{font:inherit;min-height:var(--size-control);padding:var(--space-2-half) var(--space-3);border:var(--border-thin) solid var(--color-muted);border-radius:var(--radius-control);background:var(--color-surface);width:100%;min-width:0;color:var(--color-ink)}.auth-panel input[readonly]{color:var(--color-muted);background:0 0}.code-input{letter-spacing:var(--tracking-code);font-variant-numeric:tabular-nums}.button-primary,.button-secondary{min-height:var(--size-control);border-radius:var(--radius-control);padding:var(--space-3) var(--space-5);text-align:center;font-weight:var(--weight-medium)}.button-primary{border:var(--border-thin) solid var(--color-accent);background:var(--color-accent);color:var(--color-on-accent);margin-top:var(--space-3-half)}.button-secondary{border:var(--border-thin) solid var(--color-muted);color:var(--color-ink);background:0 0}.button-text{padding:var(--space-2) 0;min-height:var(--size-touch);color:var(--color-accent);text-underline-offset:var(--space-1);background:0 0;border:0;text-decoration:underline}.field-help{color:var(--color-muted);font-size:var(--font-size-help);margin:var(--space-half) 0 var(--space-2-half)}.form-error,.form-note{padding:var(--space-3-half) var(--space-4);border-left:var(--border-emphasis) solid currentColor;overflow-wrap:anywhere}.form-error{color:var(--color-error);background:var(--color-error-surface)}.form-note{background:var(--color-success-surface);color:var(--color-accent)}.connection-row{justify-content:space-between;align-items:center;gap:var(--space-5);display:flex}.status-line{justify-content:space-between;gap:var(--space-6);padding:var(--space-4) 0;border-bottom:var(--border-thin) solid var(--color-line);display:flex}.status-line dd{color:var(--color-error);margin:0}.status-line dd.available{color:var(--color-accent)}.arrival-nav{justify-content:space-between;align-items:center;gap:var(--space-6);display:flex}.arrival{max-width:var(--size-hero);min-height:100svh;padding:var(--space-10) var(--size-gutter) var(--space-6);flex-direction:column;margin:auto;display:flex}.arrival-copy{padding:var(--size-hero-top) 0 var(--space-20);max-width:var(--size-hero-copy);flex:1}.arrival h1{font-size:var(--font-size-hero);margin:0 0 var(--space-9)}.introduction{max-width:var(--size-reading);font-size:var(--font-size-introduction);margin:0}.launch-note{color:var(--color-muted);font-size:var(--font-size-note);margin-top:var(--space-8);max-width:var(--size-reading)}.arrival-footer{border-top:var(--border-thin) solid var(--color-line);justify-content:space-between;gap:var(--space-4);padding-top:var(--space-4-half);color:var(--color-muted);font-size:var(--font-size-caption);display:flex}.auth-page{max-width:var(--size-page);padding:var(--space-10) var(--size-gutter) var(--space-20);margin:auto}.auth-panel{max-width:var(--size-auth);margin:var(--space-18) auto 0}.auth-panel h1{font-size:var(--font-size-auth);margin:0 0 var(--space-6)}.auth-intro{color:var(--color-muted);margin-bottom:var(--space-8)}.auth-actions{column-gap:var(--space-6);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.auth-footnote{margin-top:var(--space-8)}.social-options{gap:var(--space-3);border-top:var(--border-thin) solid var(--color-line);margin-top:var(--space-7);padding-top:var(--space-4);display:grid}.social-options p{font-size:var(--font-size-label);color:var(--color-muted)}.account-section{border-top:var(--border-thin) solid var(--color-line);margin-top:var(--space-8);padding-top:var(--space-4)}.account-section h2{font-size:var(--font-size-section);font-weight:var(--weight-medium)}.account-section>.button-secondary{width:100%;margin:var(--space-2) 0}.account-section a{margin-top:var(--space-3);display:block}.account-email{overflow-wrap:anywhere}.logout-button{margin-top:var(--space-6)}.system-page{max-width:var(--size-diagnostics);padding:var(--space-10) var(--space-6);margin:auto}.system-page .eyebrow{margin-top:var(--space-18)}.system-page h1{font-size:var(--font-size-system)}.status-list{margin:var(--space-10) 0}.portal-topbar,.portal-page{max-width:var(--size-page);padding:var(--space-6) var(--size-gutter);margin:auto}.portal-topbar,.toolbar,.pagination,.section-heading{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.toolbar{justify-content:flex-start;gap:var(--space-3)}.portal-topbar{border-bottom:var(--border-thin) solid var(--color-line)}.portal-topbar nav{font-size:var(--font-size-label)}.portal-topbar [aria-current=page]{font-weight:var(--weight-bold)}.portal-page{padding-top:var(--space-12);padding-bottom:var(--space-20)}.portal-page h1{font-size:var(--font-size-auth);margin:0 0 var(--space-6)}.portal-page h2{font-size:var(--font-size-section);margin-top:0}.portal-grid{grid-template-columns:var(--size-sidebar) minmax(0, 1fr);gap:var(--space-10);display:grid}.portal-sidebar{align-items:stretch;gap:var(--space-2);flex-direction:column;display:flex}.portal-sidebar button{text-align:left;padding:var(--space-3)}.portal-sidebar [aria-current=page]{background:var(--color-accent);color:var(--color-on-accent);text-decoration:none}.portal-section{margin-top:var(--space-8);padding-top:var(--space-6);border-top:var(--border-thin) solid var(--color-line)}.form-stack{gap:var(--space-3);max-width:var(--size-diagnostics);display:grid}.field-label{font-size:var(--font-size-label);font-weight:var(--weight-medium)}.text-input,.select-input{width:100%;min-width:0;font:inherit;color:var(--color-ink);background:var(--color-surface);min-height:var(--size-control);padding:var(--space-2-half) var(--space-3);border:var(--border-thin) solid var(--color-muted);border-radius:var(--radius-control);display:block}textarea.text-input{min-height:var(--size-textarea);resize:vertical}.form-grid{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field-group{gap:var(--space-2);align-content:start;display:grid}.form-reset{border:0;min-width:0;margin:0;padding:0}.button-link{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.record-list{gap:var(--space-4);margin:var(--space-6) 0;padding:0;list-style:none;display:grid}.record-card{padding:var(--space-6);border:var(--border-thin) solid var(--color-line);overflow-wrap:anywhere;min-width:0}.record-card h2,.record-card h3{margin:0 0 var(--space-2);font-size:var(--font-size-section)}.record-card p{margin:var(--space-2) 0}.status-label{font-size:var(--font-size-caption);font-weight:var(--weight-medium);padding:var(--space-1) var(--space-2);background:var(--color-line);color:var(--color-ink);border-radius:var(--radius-control);display:inline-block}.status-label.approved,.status-label.accepted{background:var(--color-success-surface);color:var(--color-accent)}.status-label.rejected,.status-label.suspended,.status-label.revoked{background:var(--color-error-surface);color:var(--color-error)}.status-label.pending{background:var(--color-warning-surface);color:var(--color-warning-ink)}.pagination{border-top:var(--border-thin) solid var(--color-line);padding-top:var(--space-4);font-size:var(--font-size-label)}.empty-state{padding:var(--space-8) 0;color:var(--color-muted)}.activity-list{padding:0;list-style:none}.activity-list li{border-bottom:var(--border-thin) solid var(--color-line);padding:var(--space-4) 0}.activity-list p{margin:var(--space-1) 0}.activity-list time{font-size:var(--font-size-help);color:var(--color-muted)}.impersonation-banner{background:var(--color-warning-surface);color:var(--color-warning-ink);padding:var(--space-4) var(--size-gutter);justify-content:space-between;align-items:center;gap:var(--space-6);border-bottom:var(--border-emphasis) solid var(--color-accent);z-index:var(--layer-impersonation);flex-wrap:wrap;display:flex;position:sticky;top:0}.impersonation-banner p{font-size:var(--font-size-label);overflow-wrap:anywhere;margin:0}.impersonation-banner .button-primary{margin-top:0}.account-page .auth-panel{margin-top:var(--space-8)}.check-label{gap:var(--space-2);min-height:var(--size-touch);align-items:center;display:flex}.record-identity{overflow-wrap:anywhere}.mobile-safe{padding-top:max(var(--space-6), env(safe-area-inset-top));padding-bottom:max(var(--space-6), env(safe-area-inset-bottom))}.catalog-heading{margin:var(--space-14) 0 var(--space-10);max-width:var(--size-hero-copy)}.catalog-heading h1{overflow-wrap:anywhere}.catalog-search{margin-bottom:var(--space-10);align-items:end}.catalog-search label{max-width:var(--size-auth);flex:1}.catalog-grid,.photo-grid{grid-template-columns:repeat(auto-fit, minmax(min(100%, var(--size-catalog-card)), 1fr));gap:var(--space-8);display:grid}.catalog-item{min-width:0;padding-bottom:var(--space-8);border-bottom:var(--border-thin) solid var(--color-line)}.catalog-item h2{font-family:var(--font-display);font-weight:var(--weight-normal);font-size:var(--font-size-brand)}.catalog-photo{width:100%;height:auto;aspect-ratio:var(--ratio-photo);object-fit:cover;background:var(--color-success-surface);display:block}.photo-gallery{grid-template-columns:repeat(auto-fit, minmax(min(100%, var(--size-catalog-card)), 1fr));gap:var(--space-3);display:grid}.product-detail-grid{gap:var(--space-12);grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;display:grid}.product-price{margin-top:var(--space-8)}.preserve-lines{white-space:pre-line;overflow-wrap:anywhere}.muted{color:var(--color-muted)}.wecalendar{--fc-border-color:var(--color-line);--fc-page-bg-color:var(--color-paper);--fc-neutral-bg-color:var(--color-surface);--fc-today-bg-color:var(--color-warning-surface);--fc-button-bg-color:var(--color-accent);--fc-button-border-color:var(--color-accent);--fc-button-text-color:var(--color-on-accent);--fc-button-hover-bg-color:var(--color-ink);--fc-button-hover-border-color:var(--color-ink);--fc-button-active-bg-color:var(--color-ink);--fc-button-active-border-color:var(--color-ink);--fc-event-bg-color:var(--color-accent);--fc-event-border-color:var(--color-accent);--fc-event-text-color:var(--color-on-accent);--fc-list-event-hover-bg-color:var(--color-success-surface)}.wecalendar .fc-toolbar{gap:var(--space-4);flex-wrap:wrap}.wecalendar .fc-toolbar-title{font-size:var(--font-size-brand);overflow-wrap:anywhere}.wecalendar .fc-event-title,.wecalendar .fc-list-event-title{overflow-wrap:anywhere;white-space:normal}@media (width<=480px){.auth-page{padding:var(--space-7) var(--space-6) var(--space-15)}.auth-panel{margin-top:var(--space-14)}}@media (width<=414px){.arrival{padding:var(--space-7) var(--space-6) var(--space-5)}.arrival-copy{padding-top:var(--space-20)}.arrival-footer{gap:var(--space-1);flex-direction:column}}@media (width<=900px){.portal-grid{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}.portal-sidebar{flex-flow:wrap}.product-detail-grid{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}}@media (width<=480px){.portal-topbar,.portal-page{padding-left:var(--space-6);padding-right:var(--space-6)}.form-grid{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}
