:root{color-scheme:light;--bg:#f2efe8;--surface:#fbfaf6;--surface-2:#e9e4db;--surface-strong:#dfd8cb;--border:#cbc3b6;--border-strong:#968b7d;--text:#20201d;--muted:#6a665f;--accent:#334f47;--accent-hover:#263f38;--accent-text:#fffdf7;--danger:#9a3f32;--danger-bg:#f7e9e4;--ok:#36684a;--ok-bg:#e6f0e7;--radius:3px;--radius-sm:2px;--shadow:0 1px 0 rgba(32,32,29,0.06),0 9px 24px rgba(54,48,40,0.055);--font-sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-display:Iowan Old Style,Baskerville,"Times New Roman",serif}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--bg:#1c1b18;--surface:#25231f;--surface-2:#302d28;--surface-strong:#3a3630;--border:#4b463e;--border-strong:#827a6f;--text:#f1ede4;--muted:#b9b1a5;--accent:#b5d0c2;--accent-hover:#d1e4d8;--accent-text:#1b2823;--danger:#efa093;--danger-bg:#422a26;--ok:#9ac9a7;--ok-bg:#273b2c;--shadow:0 1px 0 rgba(255,255,255,0.035),0 10px 28px rgba(0,0,0,0.22)}}*{box-sizing:border-box}html{min-height:100%;text-size-adjust:100%}body,html{background:var(--bg)}body{min-height:100vh;margin:0;color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.5;letter-spacing:.003em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--accent);color:var(--accent-text)}a{color:inherit;text-decoration:none;text-underline-offset:.16em}button,input,select,textarea{font:inherit}button{color:inherit}img{max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--font-display);font-weight:500;line-height:1.06;color:var(--text)}h1{max-width:18ch;margin-bottom:.4rem;font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.045em}h2{margin-bottom:.8rem;font-size:clamp(1.35rem,2.5vw,1.8rem);letter-spacing:-.035em}h3{margin-bottom:.45rem;font-size:.95rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.muted{color:var(--muted);font-size:.9rem}.small{font-size:.82rem;line-height:1.45}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:.25rem 1.25rem;min-height:4rem;padding:.7rem clamp(1rem,4vw,2.5rem);background:color-mix(in srgb,var(--bg) 92%,transparent);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex-wrap:wrap}.nav .brand{margin-right:.65rem;font-family:var(--font-display);font-size:1.35rem;font-weight:600;letter-spacing:-.06em}.nav a:not(.brand):not(.btn){position:relative;padding:.35rem 0;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.075em;text-transform:uppercase;transition:color .16s ease}.nav a:not(.brand):not(.btn):after{position:absolute;right:0;bottom:.12rem;left:0;height:1px;background:currentColor;content:"";opacity:0;transform:scaleX(.35);transition:opacity .16s ease,transform .16s ease}.nav a:not(.brand):not(.btn).active,.nav a:not(.brand):not(.btn):hover{color:var(--text)}.nav a:not(.brand):not(.btn).active:after,.nav a:not(.brand):not(.btn):hover:after{opacity:1;transform:scaleX(1)}.nav .spacer{flex:1 1 auto}.container{width:min(100%,1180px);margin:0 auto;padding:clamp(2rem,5vw,4.5rem) clamp(1rem,4vw,2.5rem) 5rem}.narrow{max-width:540px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;margin-bottom:clamp(1.5rem,3vw,2.5rem);flex-wrap:wrap}.page-head>:last-child:not(:first-child){margin-bottom:.25rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(1rem,2.2vw,1.45rem);box-shadow:var(--shadow)}a.card{display:block;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}a.card:hover{border-color:var(--border-strong);box-shadow:0 1px 0 rgba(32,32,29,.08),0 14px 30px rgba(54,48,40,.09);transform:translateY(-2px)}.dashboard-section{margin-bottom:clamp(2.75rem,7vw,5.5rem)}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1rem}.section-heading h2,.section-heading p{margin-bottom:0}.outfit-recommendation{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.7fr);grid-gap:1rem 2rem;gap:1rem 2rem;align-items:end}.outfit-recommendation .outfit-strip{grid-row:span 3}.outfit-summary{margin:0;font-family:var(--font-display);font-size:1.25rem;line-height:1.2}.outfit-actions{margin:0}.gap-card{min-height:10rem;border-top:2px solid var(--accent)}.garment-card{padding:0;overflow:hidden}.garment-card,.garment-card:hover{border-color:transparent;background:transparent;box-shadow:none}.garment-card:hover{transform:none}.garment-card .thumb{transition:transform .3s ease,filter .3s ease}.garment-card:hover .thumb{filter:saturate(1.05);transform:scale(1.015)}.garment-card-details{padding:.8rem .1rem .2rem}.garment-card-title{margin-bottom:.3rem;font-family:var(--font-display);font-size:1.2rem;font-weight:500;letter-spacing:-.025em;text-transform:none}.garment-card-colour,.garment-card-meta{margin-bottom:.2rem}.garment-card-colour{color:var(--text)}.garment-filters{align-items:end;margin-bottom:2rem;background:transparent;border-width:0 0 1px;border-radius:0;box-shadow:none;padding-inline:0}.garment-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.filter-action{flex:0 0 auto!important}.grid{display:grid;grid-gap:clamp(.8rem,2vw,1.25rem);gap:clamp(.8rem,2vw,1.25rem);grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.stats{display:grid;grid-gap:1px;gap:1px;overflow:hidden;background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(auto-fill,minmax(135px,1fr))}.stat{min-height:7.25rem;padding:1rem 1.05rem;background:var(--surface);transition:background .16s ease}a.stat:hover{background:var(--surface-2)}.stat .n{margin-bottom:.2rem;font-family:var(--font-display);font-size:2.25rem;font-weight:500;line-height:1;letter-spacing:-.06em}.thumb{display:block;width:100%;aspect-ratio:3/4;background:var(--surface-2);border-radius:var(--radius-sm);object-fit:cover}.thumb-empty{display:flex;align-items:center;justify-content:center;padding:.75rem;color:var(--muted);font-size:.75rem;letter-spacing:.04em;text-align:center;text-transform:uppercase}.swatch{display:inline-block;width:.72rem;height:.72rem;margin-right:.35rem;border:1px solid color-mix(in srgb,var(--text) 28%,transparent);border-radius:50%;vertical-align:-.06em}.tag{display:inline-block;padding:.22rem .48rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--muted);font-size:.67rem;letter-spacing:.07em;line-height:1.1}.tag,label{font-weight:700;text-transform:uppercase}label{display:block;margin-bottom:.38rem;font-size:.74rem;letter-spacing:.065em}button,input,label,select,textarea{color:var(--text)}input[type=email],input[type=number],input[type=password],input[type=text],input[type=url],select,textarea{width:100%;min-height:2.75rem;padding:.62rem .75rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);box-shadow:inset 0 1px 1px rgba(32,32,29,.035);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}textarea{min-height:6.5rem;resize:vertical}select{cursor:pointer}input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--muted) 78%,transparent)}input:hover,select:hover,textarea:hover{border-color:var(--text)}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 30%,transparent);outline-offset:2px;box-shadow:none}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.field{margin-bottom:1.15rem}.row{display:flex;gap:.9rem;align-items:flex-end;flex-wrap:wrap}.row>*{flex:1 1 160px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.5rem;padding:.55rem .85rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;font-size:.78rem;font-weight:700;letter-spacing:.055em;line-height:1.1;text-align:center;text-transform:uppercase;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.btn:hover{border-color:var(--text);background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.48;cursor:not-allowed}.btn:disabled:active{transform:none}.btn-primary{border-color:var(--accent);background:var(--accent);color:var(--accent-text)}.btn-primary:hover{border-color:var(--accent-hover);background:var(--accent-hover)}.btn-danger{border-color:color-mix(in srgb,var(--danger) 65%,var(--border));color:var(--danger)}.btn-danger:hover{border-color:var(--danger);background:var(--danger-bg)}.btn-sm{min-height:2rem;padding:.38rem .6rem;font-size:.68rem}.error,.ok{margin:.85rem 0;padding-left:.65rem;border-left:2px solid;font-size:.86rem}.error{color:var(--danger)}.ok{color:var(--ok)}.tabs{display:flex;gap:.45rem;margin-bottom:1.5rem;padding-bottom:.65rem;border-bottom:1px solid var(--border)}.tabs .btn{border-color:transparent}.tabs .btn:hover{background:var(--surface-2)}.tabs button[aria-pressed=true],.tabs button[aria-selected=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-text)}.checks{display:flex;gap:.5rem 1rem;flex-wrap:wrap}.checks label{display:flex;align-items:center;gap:.4rem;margin:0;color:var(--text);font-size:.84rem;font-weight:500;letter-spacing:0;text-transform:none}.checks input{width:auto}.pick-grid{display:grid;grid-gap:.65rem;gap:.65rem;grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}.pick{padding:0;border:2px solid transparent;border-radius:var(--radius-sm);background:none;cursor:pointer;transition:border-color .16s ease,transform .16s ease}.pick:hover{border-color:var(--border-strong);transform:translateY(-1px)}.pick[aria-pressed=true]{border-color:var(--accent)}.empty{margin:0;padding:clamp(2.5rem,8vw,5rem) 1rem;border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--muted);font-family:var(--font-display);font-size:1.15rem;line-height:1.3;text-align:center}.outfit-strip{display:flex;gap:.6rem;overflow-x:auto;padding:.1rem 0 .5rem;scrollbar-color:var(--border-strong) transparent}.outfit-strip .thumb-empty,.outfit-strip img{width:96px;flex:0 0 auto;aspect-ratio:3/4}.reasons{margin:.65rem 0 0;padding:0;list-style:none}.reasons li{margin:.25rem 0;color:var(--muted);font-size:.82rem}.reasons li:before{margin-right:.45rem;color:var(--accent);content:"—"}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width:640px){.nav{gap:.25rem .9rem;min-height:3.6rem;padding-block:.55rem}.nav .brand{width:100%;margin-right:0}.nav .spacer{display:none}.nav a:not(.brand):not(.btn){font-size:.7rem}.container{padding-top:2rem}.page-head{align-items:flex-start}.page-head>:last-child:not(:first-child){margin-bottom:0}.row>*{flex-basis:100%}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{display:block}.section-heading p{margin-top:.35rem}.outfit-recommendation{display:block}.outfit-recommendation .outfit-strip{margin-bottom:1rem}.garment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem .8rem}}@media (min-width:641px) and (max-width:980px){.garment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}