:root{color-scheme:dark;--bg:#131922;--panel:#1b222d;--ink:#e8e6e1;--muted:#8994a5;--gold:#d3bd92;--line:#ffffff12;--mint:#9bbaac;font-family:Segoe UI,Arial,sans-serif;font-size:14px}
.wardrobe-tools{display:flex;gap:6px;margin-bottom:14px}.wardrobe-tools input{min-width:0;flex:1;background:#121c27;color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:9px;font-size:11px}.wardrobe-tools button{font-size:10px;padding:7px}.wardrobe-tile{aspect-ratio:auto;min-height:112px;padding:6px;display:flex;flex-direction:column;align-items:center;gap:6px}.wardrobe-tile img{position:static;width:100%;height:62px;object-fit:contain}.wardrobe-tile span{font-size:9px;line-height:1.4;max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow-wrap:anywhere}.wardrobe-tile.selected span{color:var(--gold)}
.unavailable-slider{opacity:.35}.unavailable-slider input{cursor:not-allowed}
.group-actions{display:flex;align-items:center;gap:9px}.group-reset{font-size:10px;font-weight:400;color:var(--gold);padding:4px 7px;background:transparent}
.stage-bottom{flex-wrap:wrap}.view-actions{margin-left:auto}
.tile img{position:absolute;inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);object-fit:contain;border-radius:3px}.tile.has-icon strong{position:absolute;left:5px;bottom:4px;font:9px Segoe UI,Arial,sans-serif;background:#17212bc9;padding:2px 3px;border-radius:2px;color:#e1ded5}.tile.has-icon small{background:#17212bc9;padding:2px 3px;border-radius:2px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,a,input{font:inherit}button{color:inherit;cursor:pointer;border:1px solid var(--line);background:#ffffff04;border-radius:6px;padding:10px 14px;transition:background .18s,border-color .18s}button:hover{background:#ffffff0b;border-color:#ffffff30}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button:disabled{opacity:.34;cursor:not-allowed}.topbar{height:82px;padding:0 30px;display:flex;align-items:center;gap:34px;border-bottom:1px solid var(--line);background:#161d26}.brand{text-decoration:none;color:var(--gold);display:flex;align-items:center;gap:11px;font-size:23px;letter-spacing:3px}.brand-mark{font-size:40px;font-weight:300}.brand small{font-size:10px;letter-spacing:4px;display:block;margin-top:1px}.top-title{color:#b4bcc8;font-size:13px;display:flex;align-items:center;gap:12px}.badge{font-size:10px;border:1px solid #9bbaac36;border-radius:20px;padding:4px 8px;color:var(--mint)}.top-actions{margin-left:auto;display:flex;gap:10px}.primary{background:var(--gold);color:#242522;border-color:var(--gold);font-weight:600}.primary:hover{background:#e5d0a6;border-color:#e5d0a6}.primary span{margin-left:15px}.quiet{background:transparent}.workspace{display:grid;grid-template-columns:225px minmax(340px,1fr) 350px;height:calc(100dvh - 82px);min-height:630px}.intro-panel{padding:38px 27px 23px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:linear-gradient(160deg,#1b2530,#141b25)}.eyebrow{font-size:9px;letter-spacing:1.8px;color:var(--muted);line-height:1.6}h1{font-family:Georgia,serif;font-weight:400;font-size:55px;letter-spacing:1px;margin:16px 0 10px;color:#e6d3af}.intro{font-size:13px;line-height:1.9;color:#a5adba}.rule{height:1px;background:linear-gradient(90deg,#d3bd9240,transparent);margin:25px 0}.race-tag{display:flex;align-items:center;gap:12px;font-size:13px}.race-symbol{color:var(--gold);font-size:32px}.race-tag small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.info-block{margin-top:36px}.info-block>span{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--gold)}.info-block p{font-size:12px;line-height:1.9;color:#a1aab8;margin:10px 0}.faint>span{color:var(--muted)}.faint p{font-size:11px;color:#7e8b9c}.intro-bottom{margin-top:auto;font-size:9px;color:#7f8c9b;white-space:nowrap;padding-top:25px}.status-dot,.tiny-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--mint);margin-right:6px}.stage{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#344552 0%,#26323f 30%,#18222e 68%,#151d28 100%)}.stage:before{content:'';position:absolute;inset:8% 13%;border:1px solid #c8b58d0b;border-radius:50%;pointer-events:none}.stage-top{position:absolute;z-index:2;top:27px;left:26px;right:26px;display:flex;justify-content:space-between;gap:10px}.stage-top #model-label{font-size:10px;color:#9ca8b7}#viewport{position:absolute;inset:0}canvas{display:block;width:100%;height:100%;touch-action:none}.stage-bottom{position:absolute;z-index:2;bottom:49px;left:24px;right:24px;display:flex;justify-content:space-between;gap:12px}.camera-controls{background:#111a23b3;backdrop-filter:blur(12px);padding:4px;border:1px solid #ffffff12;border-radius:7px;display:flex;gap:2px}.camera-controls button{padding:8px 12px;border:0;font-size:11px;color:#8f9cad}.camera-controls button.active{color:var(--gold);background:#d3bd9210}.view-actions{display:flex;gap:6px}.view-actions button{background:#111a23b3;font-size:20px;padding:5px 10px}.view-actions button[aria-pressed=true]{color:var(--gold);border-color:var(--gold)}.stage-hint{position:absolute;bottom:24px;width:100%;text-align:center;font-size:10px;color:#657789}.editor-panel{background:var(--panel);border-left:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.panel-heading{padding:27px 23px 20px;display:flex;justify-content:space-between;align-items:center}.panel-heading h2{font-family:Georgia,serif;font-size:26px;font-weight:400;margin:6px 0 0}.reset{font-size:10px;color:#8c99a8;background:transparent;border:0;padding:5px}.tabs{display:grid;grid-template-columns:repeat(3,1fr);margin:0 23px;border-bottom:1px solid var(--line)}.tabs button{font-size:11px;border:0;border-bottom:2px solid transparent;border-radius:0;padding:12px 3px;color:#919dae;background:transparent}.tabs button.active{color:var(--gold);border-bottom-color:var(--gold)}.settings{padding:22px 23px;overflow:auto;flex:1;scrollbar-width:thin;scrollbar-color:#56616c transparent}.settings h3{font-size:13px;font-weight:500;margin:0 0 6px}.section-note{font-size:11px;color:#8391a4;line-height:1.7;margin:0 0 19px}.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.tile{aspect-ratio:1;border:1px solid #ffffff15;background:linear-gradient(150deg,#293441,#1e2936);padding:0;position:relative}.tile.selected{border-color:var(--gold);background:linear-gradient(150deg,#3d3b34,#28313b)}.tile strong{display:block;font-family:Georgia,serif;font-size:23px;font-weight:400;color:#9aa8b7}.tile.selected strong{color:var(--gold)}.tile small{font-size:8px;position:absolute;bottom:5px;right:6px;color:#929eab}.tile.selected:after{content:'✓';position:absolute;top:4px;right:5px;font-size:10px;color:var(--gold)}.swatches{display:grid;grid-template-columns:repeat(8,1fr);gap:7px}.swatch{width:100%;aspect-ratio:1;padding:0;border-radius:4px;box-shadow:inset 0 0 0 1px #ffffff0c;border:2px solid transparent}.swatch.selected{border-color:#f5e3bd;box-shadow:0 0 0 2px #d3bd922c}.color-heading{display:flex;justify-content:space-between;margin:0 0 15px}.color-heading span{font-size:10px;color:#939ead}.subsection{margin-top:29px}.group-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 19px;font-size:11px;font-weight:600;color:#c6c1b5}.group-heading span{font-size:9px;color:#6e7d8f;font-weight:400}.slider-row{margin:0 0 20px}.slider-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:#abb5c2}.slider-label output{font-size:10px;color:#cbbb9c;font-variant-numeric:tabular-nums}.slider-row input{width:100%;margin:10px 0 0;accent-color:var(--gold);height:14px;cursor:pointer}.slider-row .range-end{display:flex;justify-content:space-between;font-size:8px;color:#687789}.divider{height:1px;background:var(--line);margin:25px 0}.preset-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.preset-list button{padding:14px 7px;font-size:11px;background:#ffffff03}.panel-footer{padding:17px 23px;border-top:1px solid var(--line);font-size:10px;color:#8291a4;display:flex;align-items:center;gap:5px}.tiny-dot{width:4px;height:4px}.loading{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#192330ed;color:#c9c3b7}.loading[hidden]{display:none}.loading p{margin:16px 0 8px;font-family:Georgia,serif;font-size:20px}.loading small{font-size:11px;color:#8d9cae}.spinner{width:29px;height:29px;border-radius:50%;border:1px solid #d3bd9230;border-top-color:var(--gold);animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:20;background:#26333f;border:1px solid #d3bd9240;border-radius:9px;padding:13px 21px;font-size:12px;box-shadow:0 10px 40px #0006;max-width:90vw;line-height:1.7}.toast[hidden]{display:none}.empty{font-size:12px;line-height:1.8;color:#a3adbb}.error-text{padding:30px;text-align:center;max-width:440px;font-size:13px;line-height:1.8}.count-label{font-size:10px;color:var(--gold);margin:19px 0 0}.appearance-id{font-family:Consolas,monospace;font-size:10px;color:#77869a;line-height:1.8}.screen-reader-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1600px){.workspace{grid-template-columns:270px minmax(500px,1fr) 390px}.intro-panel{padding:45px 38px}.settings{padding:25px 30px}.tabs{margin:0 30px}.panel-heading{padding:30px}}
@media(max-width:1100px){.workspace{grid-template-columns:minmax(320px,1fr) 330px}.intro-panel{display:none}.top-title{display:none}.topbar{padding:0 22px}.topbar{gap:15px}}
@media(max-width:700px){.topbar{height:68px;padding:0 15px}.brand{font-size:18px;gap:7px}.brand-mark{font-size:30px}.brand small{font-size:7px}.top-actions button{font-size:10px;padding:9px 10px}.top-actions{gap:5px}.primary span{display:none}.workspace{height:auto;min-height:0;display:flex;flex-direction:column}.stage{height:58dvh;min-height:370px}.editor-panel{min-height:480px}.settings{max-height:540px}.stage-top{top:18px;left:18px;right:18px}.stage-top #model-label{font-size:9px}.stage-bottom{left:14px;right:14px;bottom:40px}.camera-controls button{padding:7px 9px;font-size:10px}.stage-hint{bottom:17px}.panel-heading{padding:23px}.tabs{grid-template-columns:repeat(6,1fr)}.tiles{grid-template-columns:repeat(6,1fr)}.swatches{grid-template-columns:repeat(12,1fr)}}
