:root{--nav-width:15.375rem;--content-gutter:clamp(1rem,2.5vw,2.125rem);--mobile-nav-height:4.5rem;--surface-soft:#eae6db;--selection:#e1dccf;--bg:#eae6db;--bg-strong:#e1dccf;--surface:#f2f0e7;--surface-strong:#f2f0e7;--surface-tint:#eae6db;--ink:#21201c;--ink-soft:#63635e;--muted:#63635e;--primary:#008573;--text-main:#21201c;--text-muted:#63635e;--line:#d8d0bf;--line-strong:#b9a88d;--accent:#f76b15;--accent-deep:#cc4e00;--accent-soft:#ffefd6;--petrol:#21201c;--petrol-soft:#63635e;--mint:#008573;--gold:#b9a88d;--danger:#ce2c31;--action-primary:#008573;--action-primary-deep:#0d3d38;--action-info:#008573;--action-info-deep:#0d3d38;--action-success:#008573;--action-success-deep:#0d3d38;--action-warning:#cc4e00;--action-warning-deep:#8c2d04;--action-danger:#ce2c31;--action-danger-deep:#641723;--action-secondary:#f2f0e7;--action-secondary-deep:#eae6db;--action-secondary-text:#21201c;--button-block:2.875rem;--button-inline:auto;--button-radius:0.625rem;--button-pad-inline:clamp(0.85rem,1.2vw,1rem);--field-bg:#f2f0e7;--field-bg-soft:#eae6db;--field-border:1px solid #b9a88d;--field-border-hover:#8c7a5f;--field-focus:rgba(0,133,115,0.24);--field-radius:0.625rem;--popup-surface:#f2f0e7;--popup-border:#b9a88d;--popup-shadow:0 12px 32px rgba(33,32,28,0.16);--shadow-lg:0 20px 60px rgba(33,32,28,0.16);--shadow-md:0 2px 8px rgba(33,32,28,0.04);--shadow-sm:0 1px 3px rgba(33,32,28,0.04);--radius-xl:1rem;--radius-lg:0.875rem;--radius-md:0.75rem;--radius-sm:0.625rem;--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--font-heading:var(--font-body);--font-mono:ui-monospace,"Consolas",monospace;--control-height:3rem;--control-height-lg:3rem;--content-width:96rem;--modal-gutter-inline:clamp(0.75rem,2.5dvw,1.5rem);--modal-gutter-block:clamp(0.75rem,2.5dvw,1.5rem);--space-1:0.5rem;--space-2:0.75rem;--space-3:1rem;--space-4:1.25rem;--space-5:1.5rem;--space-6:2rem}*,*::before,*::after{box-sizing:border-box;min-width:0}html{font-size:clamp(1rem,calc(0.5rem + 0.416667vw),1.5rem)}body{margin:0;min-height:100vh;color:var(--ink);font-family:var(--font-body);font-size:0.9375rem;line-height:1.5;background:var(--bg)}body,input,textarea,select,button{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;max-inline-size:100%}#login-form input[data-logout-privacy-guard]{color:transparent !important;caret-color:transparent !important;font-size:0 !important;text-indent:-100vw !important}.login-screen{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:clamp(0.75rem,2.5dvw,1.5rem);overflow:auto;background:var(--bg)}.login-screen.is-hidden,.app-shell.is-hidden{display:none}body:not([data-ss-app-ready])>:not(#login-screen):not(script){display:none !important}.login-card{width:min(45rem,100%);max-inline-size:calc(100dvw - 1.5rem);margin:auto;padding:1.75rem;border:0.0625rem solid var(--line);border-radius:1.875rem;background:var(--surface);box-shadow:var(--shadow-lg)}.login-value-link{display:block;margin:-0.25rem 0 1.25rem;padding:0.7rem 0.9rem;border:0.0625rem solid rgba(24,59,71,0.16);border-radius:0.9rem;color:var(--petrol);background:rgba(24,59,71,0.035);font-weight:750;line-height:1.35;text-align:center;text-decoration:none}.login-value-link:hover,.login-value-link:focus-visible{border-color:rgba(24,59,71,0.32);color:var(--petrol);background:rgba(95,142,125,0.12);text-decoration:underline}.login-card__hero{display:flex;gap:1.125rem;align-items:center;margin-bottom:1.375rem}.login-card__hero h1{margin:0;font-family:var(--font-heading);font-size:clamp(2rem,3vw,2.8rem);line-height:1.05}.login-language-switch{display:inline-block;margin-top:0.75rem;inline-size:min(100%,14rem)}.login-language-select{inline-size:100%;min-block-size:2.35rem;padding:0.4rem 2.25rem 0.4rem 0.85rem;border:0.0625rem solid rgba(40,67,73,0.2);border-radius:0.875rem;background-color:var(--field-bg);color:var(--ink);font-size:0.95rem;font-weight:600;box-shadow:0 0.45rem 1rem rgba(24,59,71,0.08)}.auth-tabs{display:inline-flex;gap:0.5rem;margin-bottom:1.125rem;padding:0.375rem;border:0.0625rem solid var(--line);border-radius:1.125rem;background:var(--surface-tint)}.auth-tab{inline-size:auto;min-inline-size:0;block-size:auto;justify-content:flex-start;color:var(--action-secondary-text)}.auth-tab.is-active{color:#fff;background:var(--action-info)}.email-verification-pending{display:grid;gap:1rem}.email-verification-pending h2,.email-verification-pending p{margin:0}.email-verification-pending>div:first-child{display:grid;gap:0.375rem}.email-verification-pending__email-row{display:grid;align-items:end;grid-template-columns:minmax(0,1fr) auto;gap:0.625rem}.email-verification-pending__actions,.admin-actions{display:flex;flex-wrap:wrap;gap:0.65rem}.email-verification-pending__actions>button{flex:1 1 10rem}.demo-login-panel{display:grid;align-items:center;grid-template-columns:minmax(0,1fr) minmax(10rem,14rem);gap:0.85rem;margin-block:1rem 1.25rem;padding:0.85rem;border:0.0625rem solid color-mix(in srgb,var(--action-info) 24%,var(--line));border-radius:var(--field-radius);background:var(--surface-tint)}.demo-login-panel>div:first-child,.demo-login-panel__actions{display:grid;gap:0.625rem}.demo-login-panel strong{color:var(--petrol)}.demo-login-panel span{color:var(--ink-soft);font-size:0.9rem;line-height:1.35}.demo-login-choice{inline-size:100%;min-block-size:2.6rem;padding:0.55rem 0.85rem;border:0.0625rem solid color-mix(in srgb,var(--action-info) 22%,var(--line));border-radius:var(--field-radius);background:var(--action-info);color:#fff;font:inherit;font-weight:600;cursor:pointer}.demo-login-choice:first-child{background:var(--action-success)}.demo-login-choice:disabled{cursor:wait;opacity:0.72}.login-legal-links{display:flex;justify-content:center;gap:0.85rem;flex-wrap:wrap;margin-block-start:0.25rem;font-size:0.9rem}.pwa-install-panel{display:grid;gap:0.65rem}.pwa-install-panel--login{margin-block-start:0.25rem}.pwa-install-platforms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.65rem}.pwa-install-platforms>button{inline-size:100%;min-block-size:2.75rem;white-space:normal}.pwa-install-help{margin:0;padding:0.65rem 0.75rem;border:0.0625rem solid color-mix(in srgb,var(--action-info) 22%,var(--line));border-radius:var(--field-radius);background:color-mix(in srgb,var(--action-info) 7%,white);color:var(--ink-soft);font-size:0.875rem;line-height:1.45;text-align:center}.agreement-check{display:flex;align-items:flex-start;gap:0.625rem;padding:0.75rem 0.875rem;border:0.0625rem solid var(--line);border-radius:1rem;background:rgba(255,251,245,0.82)}.agreement-check input{width:1.125rem;min-width:1.125rem;height:1.125rem;min-height:1.125rem;margin:0.125rem 0 0;padding:0;box-shadow:none}.agreement-check span{margin:0;color:var(--ink);font-size:0.94rem;font-weight:500}.text-link{min-height:auto;min-inline-size:auto;inline-size:auto;display:inline;padding:0;border:0;color:var(--petrol);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:0.125rem;background:transparent;box-shadow:none}.text-link:hover{transform:none;color:var(--accent-deep)}.site-announcement-banner{inline-size:min(100%,var(--content-width));margin-inline:auto;padding:0.85rem clamp(3.35rem,5vw,4.25rem);border:0.0625rem solid rgba(180,83,9,0.28);border-radius:var(--radius-md);background:var(--accent-soft);color:#6f3510;box-shadow:var(--shadow-sm);position:relative}.site-announcement-banner__text{text-align:center;font-weight:850;line-height:1.4;overflow-wrap:anywhere}.site-announcement-banner__close{position:absolute;inset-inline-end:0.65rem;inset-block-start:50%;transform:translateY(-50%);inline-size:2.25rem;min-inline-size:2.25rem;block-size:2.25rem;min-block-size:2.25rem;padding:0;font-size:1.35rem;line-height:1}.login-screen>.site-announcement-banner{position:absolute;inset-block-start:clamp(0.75rem,2.5dvw,1.5rem);inset-inline-start:50%;inline-size:min(calc(100dvw - 1.5rem),var(--content-width));transform:translateX(-50%)}.login-error{min-height:1.5rem;color:var(--danger);font-weight:600}button,input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),select,textarea{font:inherit;max-inline-size:100%}button{inline-size:var(--button-inline);min-inline-size:var(--button-inline);min-block-size:var(--button-block);display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding-block:0.55rem;padding-inline:var(--button-pad-inline);border:0.0625rem solid transparent;border-radius:var(--button-radius);color:var(--action-secondary-text);background:var(--action-secondary);font-weight:600;line-height:1.15;text-align:center;overflow-wrap:anywhere}button:focus-visible,.text-link:focus-visible{outline:0.2rem solid var(--field-focus);outline-offset:0.12rem}button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:0.62}.brand-badge{display:grid;place-items:center;width:3.625rem;height:3.625rem;flex:0 0 auto}.brand-badge img{display:block;width:100%;height:100%}.eyebrow{margin:0 0 0.375rem;color:inherit;opacity:0.72;font-size:0.78rem;letter-spacing:0.13em;text-transform:uppercase}.ghost-button,.primary-button{border-radius:var(--button-radius)}.ghost-button{color:var(--action-secondary-text);border-color:rgba(24,59,71,0.14);background:var(--action-secondary)}.primary-button{color:#fff;border-color:color-mix(in srgb,var(--action-success-deep) 72%,black);font-weight:800;background:var(--action-success)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.875rem}.form-grid>label{display:grid;align-content:start;gap:0.5rem}.form-grid__wide{grid-column:1 / -1}label span{display:block;color:var(--ink-soft);font-size:0.92rem;font-weight:600}input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),select,textarea{width:100%;min-width:0;min-height:var(--control-height);font-size:1rem;padding:0.72rem 0.9rem;border:var(--field-border);border-radius:var(--field-radius);color:var(--ink);background:var(--field-bg);box-shadow:inset 0 0.0625rem 0 rgba(255,255,255,0.88),0 0.08rem 0.2rem rgba(24,59,71,0.06)}input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):focus,select:focus,textarea:focus{outline:0;border-color:var(--action-info);box-shadow:0 0 0 0.2rem var(--field-focus)}@media (max-width:51.25rem){.form-grid{grid-template-columns:1fr}.login-card__hero{align-items:flex-start;flex-direction:column}.auth-tabs{width:100%}.auth-tab{flex:1 1 0}}@media (max-width:42rem){.demo-login-panel{align-items:stretch;grid-template-columns:1fr}form>.admin-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(5.75rem,1fr));gap:0.4rem}form>.admin-actions>button{min-inline-size:0;min-block-size:clamp(3.4rem,14vw,4rem);block-size:auto;padding:0.55rem 0.35rem;font-size:clamp(0.78rem,3.5vw,0.92rem)}}@media (max-width:35rem){:root{--control-height:3rem;--control-height-lg:2.875rem}body{font-size:0.875rem}.brand-badge{width:3.375rem;height:3.375rem}}@media (max-width:30rem){.email-verification-pending__email-row{grid-template-columns:1fr}}@media (max-width:35rem){.pwa-install-platforms{grid-template-columns:1fr}}@media (max-width:22.5rem){:root{--control-height:3rem;--control-height-lg:2.75rem;--modal-gutter-inline:0.5rem;--modal-gutter-block:0.5rem}body{font-size:0.84375rem}.login-screen{padding:0.5rem}.login-card{width:100%;max-inline-size:calc(100dvw - var(--modal-gutter-inline) - var(--modal-gutter-inline));padding:0.75rem}.login-value-link{margin-top:0;padding:0.6rem 0.7rem}.form-grid{grid-template-columns:minmax(0,1fr)}}.is-hidden{display:none !important}@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto !important;animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}}
