@font-face{font-family:Geist;src:url('./assets/fonts/geist-latin-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
/* Shared MDG surfaces, controls and optional effects; form text stays opaque. */
html[data-appearance]{--bg:var(--mdg-background);--text:var(--mdg-foreground);--muted:var(--mdg-muted-foreground);--ink:var(--mdg-foreground);--purple:var(--p);--pale:var(--mdg-brand-tint);--line:var(--mdg-border);--surface:var(--mdg-card);--surface-alt:var(--mdg-surface);--surface-hover:color-mix(in srgb,var(--p) 9%,var(--mdg-card));--field-border:var(--mdg-input);--button-border:var(--mdg-border);--avatar:var(--mdg-brand-tint);--green:var(--mdg-success-text);--red:var(--mdg-danger-text);--shadow:var(--mdg-panel-shadow);--nav-active:var(--mdg-sidebar-accent)}
html[data-appearance] body{background:var(--page-bg);color:var(--mdg-foreground);font-family:var(--brand-body-font)}
html[data-appearance] :is(h1,h2,h3,h4){font-family:var(--brand-heading-font)}
html[data-appearance] :is(.sidebar,.brand-preview-nav){background:var(--mdg-sidebar);border-color:var(--mdg-border);color:var(--mdg-sidebar-foreground)}
html[data-appearance] :is(.card,.stat,.settings-accordion,.sub-accordion,.product,.event-card,.brand-preview-shell,.appearance-workstation,dialog){background:var(--mdg-card);color:var(--mdg-foreground);border-color:var(--mdg-border);box-shadow:var(--mdg-panel-shadow)}
html[data-appearance] :is(.settings-group,.offer-controls,.outcome-panel,.trainer-takeaway,.fitness-gap-card,.workstation-card,.appearance-preview,.step-nav,.pill,.tag,.quick .btn,.dialog-foot,.terms,.status-log){background:var(--mdg-surface);color:var(--mdg-foreground);border-color:var(--mdg-border)}
html[data-appearance] :is(.search,.topbar,.field input,.field select,.field textarea,.choice,.btn,.btn.ghost,.color-code,.checkin-panel input){background:var(--mdg-card);color:var(--mdg-foreground);border-color:var(--mdg-input)}
html[data-appearance] :is(input,select,textarea){color:var(--mdg-foreground);background-color:var(--mdg-card)}
html[data-appearance] :is(.field label,.metric-label,.field-help,.question-help,.muted,.sub,.welcome p,.bar span){color:var(--mdg-muted-foreground)}
html[data-appearance] :is(.nav button,.cloud-link){color:var(--mdg-sidebar-foreground)}
html[data-appearance] :is(.nav button.active,.nav button:hover,.choice.selected){background:var(--mdg-sidebar-accent);color:var(--mdg-sidebar-accent-foreground)}
html[data-appearance] :is(.btn.primary,.brand-preview-button){background:var(--p);color:var(--mdg-primary-foreground);border-color:var(--p)}
html[data-appearance] :is(.mark,.logo,.brand-preview-logo){background:var(--p);color:var(--mdg-primary-foreground)}
html[data-appearance] :is(.mark img,.appearance-preview .mark img){height:100%;width:100%;object-fit:contain;border-radius:inherit}
html[data-appearance] :is(.welcome,.checkin-panel,.notice){background:var(--mdg-brand-tint);border-color:var(--mdg-border);color:var(--mdg-foreground)}
html[data-appearance] :is(.error,.btn.danger,.badge.red,.checkin-result.denied){background:var(--mdg-danger-surface);color:var(--mdg-danger-text)}
html[data-appearance] :is(.badge:not(.gray):not(.purple):not(.red):not(.amber),.checkin-result){background:var(--mdg-success-surface);color:var(--mdg-success-text)}
html[data-appearance] .badge.amber{background:var(--mdg-warning-surface);color:var(--mdg-warning-text)}
html[data-appearance] .badge.purple{background:var(--mdg-brand-tint);color:var(--p)}
html[data-appearance] :is(th,.badge.gray){background:var(--mdg-surface);color:var(--mdg-muted-foreground)}
html[data-appearance] :is(td,.list-row,.question,.settings-panel,.card-head,.tabs){border-color:var(--mdg-border)}
html[data-appearance] tr:hover td{background:var(--surface-hover)}
html[data-appearance] :is(.palette-button,.appearance-palette){background:var(--mdg-card);color:var(--mdg-foreground);border-color:var(--mdg-border)}
html[data-appearance] :is(.palette-button.active,.appearance-palette[aria-pressed=true]){border-color:var(--p);box-shadow:0 0 0 2px var(--mdg-brand-tint)}
html[data-appearance] .live-preview{background:var(--page-bg);border-color:var(--mdg-border)}
html[data-appearance] :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--mdg-ring);outline-offset:3px}
html[data-glass=on] :is(.card,.stat,.settings-accordion,.appearance-workstation,.sidebar){background:color-mix(in srgb,var(--mdg-card) 88%,transparent);backdrop-filter:blur(20px);border-color:color-mix(in srgb,var(--p) 22%,var(--mdg-border));box-shadow:0 18px 42px #0002}
html[data-glass=on] body{background:radial-gradient(ellipse at 15% 8%,color-mix(in srgb,var(--p) 16%,transparent),transparent 55%),radial-gradient(ellipse at 90% 35%,color-mix(in srgb,var(--s) 12%,transparent),transparent 60%),var(--page-bg)}
@media(hover:hover){html[data-aura-lift=on] :is(button,.cloud-link):not(:disabled):hover{box-shadow:0 5px 18px color-mix(in srgb,var(--p) 17%,transparent);transform:translateY(-1px)}html[data-hover-edges=on] :is(button,input,select,textarea,summary):hover{outline:1px solid color-mix(in srgb,var(--p) 68%,var(--mdg-border));outline-offset:1px}}
html[data-flow-motion=on] :is(button,.card,.stat,.settings-accordion,.choice,input,select,textarea){transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s,color .16s}
html[data-flow-motion=on] :is(#content,.live-preview){animation:mdg-panel-enter .18s ease-out}
html[data-flow-motion=off] :is(button,.card,.stat,.settings-accordion,.choice,input,select,textarea,#content,.live-preview){transition:none;animation:none}
@keyframes mdg-panel-enter{from{opacity:.75;transform:translateY(3px)}to{opacity:1;transform:none}}
html[data-density=compact] :is(.card-body,.settings-panel,.settings-group){padding:16px}
html[data-density=compact] :is(.list-row,td,th){padding-top:9px;padding-bottom:9px}
html[data-density=compact] .content{padding:22px}
html[data-density=compact] .nav button{padding-top:8px;padding-bottom:8px}
.appearance-grid{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(280px,1.2fr);gap:24px;margin-top:22px}.appearance-grid h3{margin:0 0 17px}.appearance-color{display:grid;grid-template-columns:54px 1fr;gap:8px}.appearance-color input[type=color]{padding:4px;min-height:43px}.appearance-palettes{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:16px 0}.appearance-palette{white-space:normal;justify-content:flex-start;text-align:left}.appearance-palette span{display:flex;gap:4px}.appearance-palette i{width:14px;height:14px;border-radius:50%;display:block;flex-shrink:0}.appearance-preview{padding:20px;border:1px solid var(--mdg-border);border-radius:12px;margin-top:16px}.appearance-preview-title{display:flex;align-items:center;gap:12px}.appearance-preview .mark{flex-shrink:0}.appearance-accent{color:var(--a)}.appearance-workstations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.appearance-workstation{padding:17px;border:1px solid var(--mdg-border);border-radius:12px}.appearance-workstation h4{margin:0 0 12px}.appearance-workstation .actions{margin-top:12px}.appearance-effects{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 25px}.appearance-effect{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid var(--mdg-border);background:var(--mdg-surface);border-radius:10px;cursor:pointer}.appearance-effect input{width:18px;height:18px;flex-shrink:0;accent-color:var(--p)}.appearance-effect strong{font-size:13px;display:block}.appearance-effect small{color:var(--mdg-muted-foreground);font-size:12px;line-height:1.5;display:block;margin-top:5px}#appearance-status{margin:20px 0;line-height:1.6}#useMDGDefault{margin-bottom:12px}
@media(max-width:900px){.appearance-workstations{grid-template-columns:1fr}.appearance-grid{grid-template-columns:1fr}}
@media(max-width:520px){.appearance-effects,.appearance-palettes{grid-template-columns:1fr}}
@media(max-width:720px){html[data-density=compact] .content{padding:12px}}
@media(prefers-reduced-motion:reduce){html[data-appearance] *,html[data-appearance] *:before,html[data-appearance] *:after{animation:none!important;transition:none!important}html[data-aura-lift=on] :is(button,.cloud-link):hover{transform:none}}
@media print{html[data-appearance] body,html[data-appearance] dialog{background:white;color:#222}html[data-glass=on] .card{background:white;backdrop-filter:none;box-shadow:none}}
.sidebar-return-links{display:grid;gap:8px;margin-top:18px}.sidebar-return-links .sidebar-public-home{margin-top:0}

/* Account and policy screens use the same readable foreground/surface pairs. */
html[data-appearance] .auth-layout .auth-brand{background:var(--mdg-sidebar);color:var(--mdg-foreground);border-color:var(--mdg-border)}
html[data-appearance] .auth-layout .auth-card{background:var(--mdg-card);color:var(--mdg-foreground);border-color:var(--mdg-border);box-shadow:var(--mdg-panel-shadow)}
html[data-appearance] .auth-layout :is(.brand-copy p,.security-note,.auth-intro,.field-help,.fine-print,.policy-consent,.account-prompt,.success-panel p,.brand-lockup span){color:var(--mdg-muted-foreground)}
html[data-appearance] .auth-layout :is(.field label,.brand-lockup){color:var(--mdg-foreground)}
html[data-appearance] .auth-layout :is(a,.eyebrow),html[data-appearance] .auth-legal-links a{color:var(--mdg-primary)}
html[data-appearance] .auth-layout .brand-mark{background:var(--mdg-primary);color:var(--mdg-primary-foreground)}
html[data-appearance] .auth-layout .field input{background:var(--mdg-surface);color:var(--mdg-foreground);border-color:var(--mdg-input)}
html[data-appearance] .auth-layout .field input::placeholder{color:var(--mdg-muted-foreground);opacity:1}
html[data-appearance] .auth-layout .password-toggle{color:var(--mdg-foreground)}
html[data-appearance] .auth-layout .password-toggle:hover{background:var(--mdg-brand-tint)}
html[data-appearance] .auth-layout .auth-button{background:var(--mdg-primary);color:var(--mdg-primary-foreground);border-color:var(--mdg-primary);box-shadow:var(--mdg-panel-shadow)}
html[data-appearance] .auth-layout .auth-button.secondary-button{background:var(--mdg-surface);color:var(--mdg-foreground);border-color:var(--mdg-input)}
html[data-appearance] .auth-layout .divider{background:var(--mdg-border)}
html[data-appearance] .auth-layout .auth-message{background:var(--mdg-brand-tint);color:var(--mdg-foreground);border-color:var(--mdg-input)}
html[data-appearance] .auth-layout .auth-message.error{background:var(--mdg-danger-surface);color:var(--mdg-danger-text);border-color:var(--mdg-danger-text)}
html[data-appearance] .auth-layout :is(.auth-message.success,.success-icon){background:var(--mdg-success-surface);color:var(--mdg-success-text);border-color:var(--mdg-success-text)}
html[data-appearance] .legal-shell :is(.legal-hero,.legal-content){background:var(--mdg-card);color:var(--mdg-foreground);border-color:var(--mdg-border);box-shadow:var(--mdg-panel-shadow)}
html[data-appearance] .legal-shell :is(.summary,.legal-content p,.legal-content li){color:var(--mdg-foreground)}
html[data-appearance] .legal-shell .effective{color:var(--mdg-muted-foreground)}
html[data-appearance] .legal-shell :is(a,.eyebrow){color:var(--mdg-primary)}
html[data-appearance] .legal-shell .notice{background:var(--mdg-brand-tint);color:var(--mdg-foreground);border-color:var(--mdg-input)}
html[data-appearance] .legal-shell .toc a{background:var(--mdg-surface);color:var(--mdg-foreground);border-color:var(--mdg-input)}
html[data-appearance] body:has(.legal-shell)>header{background:var(--mdg-sidebar);color:var(--mdg-foreground);border-color:var(--mdg-border)}
html[data-appearance] body:has(.legal-shell)>header .brand{color:var(--mdg-foreground)}
html[data-appearance] body:has(.legal-shell)>header .back,html[data-appearance] .legal-shell~footer a{color:var(--mdg-primary)}
html[data-appearance] .legal-shell~footer{background:var(--mdg-background);color:var(--mdg-muted-foreground);border-color:var(--mdg-border)}

/* Workspace status and checklist copy use the same accessible theme tokens. */
html[data-appearance]{--warning:var(--mdg-warning-text);--ok:var(--mdg-success-text)}
html[data-appearance] .check-row{color:var(--mdg-foreground)}
html[data-appearance] :is(.validation-message,.overdue){color:var(--mdg-danger-text)}
