:root{--bg:#f2f0f3;--surface:#fbfafc;--tile:#e9e5eb;--ink:#231a27;--muted:#6c6272;--line:#dcd4df;--accent:#6a2d49;--accent-ink:#fbf6f8;--gold:#8f7136;--shade:rgba(35,26,39,.08);--sil:rgba(0,0,0,.28);--display:"Bodoni Moda","Didot","Bodoni 72",Georgia,serif;--body:"Jost","Futura","Avenir Next","Helvetica Neue",Arial,sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#141016;--surface:#1d1820;--tile:#2b2430;--ink:#efe8f1;--muted:#a59aab;--line:#342c39;--accent:#d49cb7;--accent-ink:#1d1018;--gold:#cdae6c;--shade:rgba(0,0,0,.4);--sil:rgba(255,255,255,.3);color-scheme:dark}}:root[data-theme=dark]{--bg:#141016;--surface:#1d1820;--tile:#2b2430;--ink:#efe8f1;--muted:#a59aab;--line:#342c39;--accent:#d49cb7;--accent-ink:#1d1018;--gold:#cdae6c;--shade:rgba(0,0,0,.4);--sil:rgba(255,255,255,.3);color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:var(--body);font-weight:300;font-size:16px;line-height:1.55;padding-inline:16px;padding-block:0 calc(56px + env(safe-area-inset-bottom,0px))}.wrap{max-width:880px;margin:0 auto}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.top{position:sticky;top:0;padding-top:env(safe-area-inset-top,0px);z-index:5;background:var(--bg);margin-inline:-16px;padding-inline:16px;border-bottom:1px solid var(--line)}.top .wrap{display:grid;gap:14px;padding-top:18px}.row1{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}.brand{display:flex;align-items:baseline;gap:12px}.mark{font-family:var(--display);font-style:italic;font-size:2rem;line-height:1;letter-spacing:.01em}.sub{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}.seg{display:inline-flex;border:1px solid var(--ink)}.seg button{background:none;border:0;padding:7px 18px;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer}.seg button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.tabs{display:flex;gap:22px;overflow-x:auto}.tab{background:none;border:0;padding:0 0 12px;cursor:pointer;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid transparent;margin-bottom:-1px;white-space:nowrap}.tab[aria-selected=true]{color:var(--ink);border-color:var(--ink)}main{padding-top:36px}h1,h2,h3{font-family:var(--display);font-weight:400;text-wrap:balance;margin:0}h1{font-size:clamp(2rem,6vw,3.1rem);line-height:1.05}h1 em{color:var(--accent)}h2{font-size:1.6rem;line-height:1.15}.lede{color:var(--muted);max-width:56ch;margin:12px 0 0}.eyebrow{font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:400}.block{margin-top:28px;display:grid;gap:12px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:8px 16px;font-size:.9rem;cursor:pointer;transition:border-color .2s,background .2s}.chip:hover{border-color:var(--muted)}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.code{margin:0;font-size:.92rem;color:var(--muted);max-width:68ch;border-left:1px solid var(--gold);padding-left:12px}.code b{font-weight:500;color:var(--ink);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;margin-right:6px}.row{display:flex;flex-wrap:wrap;gap:16px}.field{display:grid;gap:6px;flex:1 1 200px;min-width:0}.field label,.lbl{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}select,input[type=text]{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:2px;padding:10px 12px;font-size:.95rem}.btn{border:1px solid var(--ink);background:var(--ink);color:var(--bg);padding:13px 26px;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;border-radius:0;transition:opacity .2s}.btn:hover{opacity:.85}.btn.ghost{background:transparent;color:var(--ink)}.btn.accent{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.actions{display:flex;flex-wrap:wrap;gap:10px}.look{margin-top:36px;background:var(--surface);border:1px solid var(--line);padding:28px clamp(18px,4vw,40px);box-shadow:0 22px 44px -30px var(--shade)}.look-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;border-bottom:1px solid var(--line);padding-bottom:18px}.palette{display:flex;gap:6px}.dot{width:18px;height:18px;border-radius:50%;border:1px solid var(--line)}.pieces{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:20px;margin-top:24px}.piece{display:grid;gap:8px;align-content:start;min-width:0}.tile{aspect-ratio:4/5;max-width:100%;background:var(--tile);display:grid;place-items:center;overflow:hidden;position:relative}.tile img{width:100%;height:100%;object-fit:cover}.tile svg{width:64%;height:64%}.cap{font-size:.92rem;line-height:1.3;overflow-wrap:anywhere}.cat{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.why{list-style:none;margin:24px 0 0;padding:20px 0 0;border-top:1px solid var(--line);display:grid;gap:8px}.why li{display:grid;grid-template-columns:18px 1fr;gap:8px;font-size:.94rem}.why li:before{content:"";height:1px;background:var(--gold);margin-top:.8em}.why li.warn{color:var(--accent)}.why li.warn:before{background:var(--accent)}.why .h{font-family:var(--display);font-style:italic;font-size:1.05rem;display:block;grid-column:1/-1;color:var(--muted)}.empty{color:var(--muted);font-style:italic;font-family:var(--display);font-size:1.1rem;padding:16px 0;margin:0;max-width:60ch}.look .actions{margin-top:28px}.rules{margin-top:28px;border-top:1px solid var(--line);padding-top:16px}.rules summary{cursor:pointer;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.rules ul{margin:14px 0 0;padding-left:18px;display:grid;gap:6px;font-size:.93rem;max-width:70ch}.bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}.count{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.9rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:24px 18px;margin-top:24px}.item{display:grid;gap:8px;align-content:start;min-width:0}.item .meta{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.tag{position:absolute;top:8px;left:8px;font-size:.56rem;letter-spacing:.18em;text-transform:uppercase;background:var(--surface);color:var(--muted);padding:3px 7px}.del{background:none;border:0;color:var(--muted);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:2px 0;white-space:nowrap}.del:hover,.del.armed{color:var(--accent)}.notice{margin-top:20px;font-size:.88rem;color:var(--muted);border-left:1px solid var(--gold);padding-left:12px}.notice button{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;cursor:pointer;font-size:inherit}.saved{display:grid;gap:18px;margin-top:24px}.saved-card{background:var(--surface);border:1px solid var(--line);padding:18px;display:grid;gap:14px}.saved-card .tl{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.minis{display:flex;flex-wrap:wrap;gap:8px}.minis .tile{width:64px}.saved-card h3{font-size:1.2rem}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a060c73;z-index:20;display:grid;place-items:end center}@media (min-width:640px){.scrim{place-items:center}}.sheet{background:var(--surface);width:100%;max-width:540px;max-height:92vh;overflow:auto;padding:24px 20px calc(24px + env(safe-area-inset-bottom,0px));display:grid;gap:18px}.sheet-head{display:flex;justify-content:space-between;align-items:center}.x{background:none;border:0;font-size:1.6rem;line-height:1;cursor:pointer;color:var(--muted)}.photo{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:center}.photo .tile{width:96px}.photo input{font-size:.85rem;max-width:100%}.swatches{display:flex;flex-wrap:wrap;gap:8px}.sw{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);cursor:pointer;padding:0}.sw[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:2px}.swname{color:var(--ink)}.checks{display:flex;flex-wrap:wrap;gap:8px}.checks label{display:flex;align-items:center;gap:6px;border:1px solid var(--line);padding:6px 12px;font-size:.88rem;cursor:pointer}.err{color:var(--accent);font-size:.88rem;min-height:1.2em;margin:0}.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%);background:var(--ink);color:var(--bg);padding:10px 18px;font-size:.85rem;z-index:30}@media (prefers-reduced-motion:no-preference){.look.fresh .piece{animation:rise .5s cubic-bezier(.2,.7,.2,1) both}.look.fresh .piece:nth-child(2){animation-delay:.05s}.look.fresh .piece:nth-child(3){animation-delay:.1s}.look.fresh .piece:nth-child(4){animation-delay:.15s}.look.fresh .piece:nth-child(5){animation-delay:.2s}.look.fresh .piece:nth-child(6){animation-delay:.25s}.look.fresh .piece:nth-child(7){animation-delay:.3s}@keyframes rise{0%{transform:translateY(8px);opacity:.4}to{transform:none;opacity:1}}}img{max-width:100%}[hidden]{display:none!important}.item{background:none;border:0;padding:0;text-align:left;cursor:pointer}.item:hover .tile{outline:1px solid var(--line)}.sheet .tile.big{width:120px}.photo{grid-template-columns:120px 1fr}.photo-actions{display:flex;flex-wrap:wrap;gap:8px}.btn.small{padding:9px 14px;font-size:.66rem}.filebtn{position:relative;overflow:hidden;display:inline-flex;align-items:center}.filebtn input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;font-size:0}.danger{color:var(--accent);border-color:var(--accent)!important}.stats{display:flex;flex-wrap:wrap;gap:28px;margin-top:20px}.stat b{display:block;font-family:var(--display);font-weight:400;font-size:2rem;line-height:1.1;font-variant-numeric:tabular-nums}.stat span{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.card{background:var(--surface);border:1px solid var(--line);padding:20px;display:grid;gap:12px;margin-top:24px;max-width:640px}.card p{margin:0;color:var(--muted);font-size:.94rem}.confirm{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:.92rem}.loading{padding:80px 0;text-align:center;font-family:var(--display);font-style:italic;color:var(--muted)}.install{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding:12px 16px;border:1px solid var(--line);background:var(--surface);font-size:.9rem}.field label.btn{color:var(--bg);font-size:.66rem;letter-spacing:.22em}.field label.btn.ghost{color:var(--ink)}.card h3{font-size:1.25rem}
