:root{--color-bg: #f7f4ef;--color-surface: #ffffff;--color-text: #2b2620;--color-text-soft: #6f665b;--color-border: #ded5c8;--color-accent: #6b5a45;--color-accent-soft: #efe8dd;--color-error: #9c3a34;--color-focus: #3d372f;--font-heading: georgia, "Times New Roman", serif;--font-body: -apple-system, blinkmacsystemfont, "Segoe UI", roboto, sans-serif;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.25rem;--text-xl: 1.5rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--radius-sm: 8px;--radius-md: 12px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgb(43 38 32 / 8%);--shadow-md: 0 4px 12px rgb(43 38 32 / 10%);--transition-fast: .14s ease;--tap-target: 48px}@media (prefers-reduced-motion: reduce){:root{--transition-fast: 0ms}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}h1:focus-visible,h1:focus{outline:none}.app{max-width:560px;margin:0 auto;padding:var(--space-5) var(--space-4) var(--space-7);min-height:100dvh;display:flex;flex-direction:column}.screen{display:flex;flex-direction:column;gap:var(--space-4);animation:screen-in .18s ease}.screen--center{text-align:center;justify-content:center;flex:1}@keyframes screen-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.screen{animation:none}}.eyebrow{margin:0;letter-spacing:.2em;text-transform:uppercase;font-size:var(--text-sm);color:var(--color-text-soft)}.screen__title{margin:0;font-family:var(--font-heading);font-weight:500;font-size:var(--text-xl);line-height:1.25}.screen__helper{margin:0;color:var(--color-text-soft)}.screen__meta{margin:0;font-size:var(--text-sm);color:var(--color-text-soft)}.grid{display:grid;gap:var(--space-3)}.grid--text{grid-template-columns:1fr}.grid--looks{grid-template-columns:repeat(2,1fr)}.grid--colors{grid-template-columns:repeat(3,1fr)}@media (min-width: 480px){.grid--colors{grid-template-columns:repeat(4,1fr)}}@media (min-width: 768px){.grid--text{grid-template-columns:repeat(2,1fr)}}.card{position:relative;display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap-target);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast)}.card:hover{border-color:var(--color-accent)}.card.is-selected{border-color:var(--color-accent);background:var(--color-accent-soft)}.card__label{flex:1}.card--look{flex-direction:column;align-items:stretch;padding:var(--space-2);text-align:center}.card--look .card__label{padding:var(--space-2) 0;font-size:var(--text-sm)}.card__image{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--radius-sm);display:block}.card--color{flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-2);text-align:center}.card--color .card__label{font-size:var(--text-sm)}.swatch{width:40px;height:40px;border-radius:var(--radius-pill)}.swatch--light{border:1px solid var(--color-border)}.check{width:22px;height:22px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);border:1.5px solid var(--color-border);color:transparent;font-size:.8rem;transition:background-color var(--transition-fast),color var(--transition-fast)}.check--on{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-surface)}.card--look .check,.card--color .check{position:absolute;top:var(--space-2);right:var(--space-2);background:var(--color-surface)}.card--look .check--on,.card--color .check--on{background:var(--color-accent)}.btn{min-height:var(--tap-target);padding:var(--space-3) var(--space-5);border-radius:var(--radius-pill);border:2px solid transparent;font:inherit;cursor:pointer;transition:background-color var(--transition-fast),opacity var(--transition-fast)}.btn--primary{background:var(--color-accent);color:var(--color-surface)}.btn--primary:disabled{opacity:.45;cursor:not-allowed}.btn--ghost{background:transparent;border-color:var(--color-border);color:var(--color-text)}.btn--link{background:none;border:none;color:var(--color-text-soft);text-decoration:underline}.btn--wide{width:100%}.nav-row{display:flex;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-4)}.nav-row .btn--primary{flex:1}.stack{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.field label{font-size:var(--text-sm);color:var(--color-text-soft)}.field input[type=email],.other-input input[type=text]{min-height:var(--tap-target);padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-md);font:inherit;background:var(--color-surface);color:var(--color-text)}.field input[aria-invalid=true]{border-color:var(--color-error)}.field__error{margin:0;color:var(--color-error);font-size:var(--text-sm)}.field--checkbox{flex-direction:row;align-items:flex-start;gap:var(--space-3)}.field--checkbox input{width:22px;height:22px;margin-top:2px;flex:0 0 auto;accent-color:var(--color-accent)}.field--checkbox label{font-size:var(--text-sm)}.other-input{display:flex;flex-direction:column;gap:var(--space-2)}.other-input label{font-size:var(--text-sm);color:var(--color-text-soft)}.hint{margin:0;min-height:1.25rem;font-size:var(--text-sm);color:var(--color-error)}.progress{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.progress__label{font-size:var(--text-sm);color:var(--color-text-soft)}.progress__track{height:6px;border-radius:var(--radius-pill);background:var(--color-border);overflow:hidden}.progress__fill{height:100%;background:var(--color-accent);border-radius:var(--radius-pill);transition:width var(--transition-fast)}
