:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font:"Segoe UI Variable Text", "Segoe UI", -apple-system, BlinkMacSystemFont, "Inter", system-ui, sans-serif;--font-display:"Segoe UI Variable Display", "Segoe UI", -apple-system, BlinkMacSystemFont, "Inter", system-ui, sans-serif;--mono:"Cascadia Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;--bg:#e8e7e3;--surface:#fbfaf7d6;--surface-solid:#fbfaf7;--surface-raised:#fff;--sunken:#1f221b0b;--ink:#1c1e19;--ink-soft:#3d4136;--muted:#74786c;--muted-2:#989c90;--line:#1c1e191a;--line-strong:#1c1e192b;--track:#1c1e191c;--accent:#547d2d;--accent-strong:#456924;--accent-ink:#f7faef;--accent-soft:#547d2d21;--accent-softer:#547d2d11;--danger:#8d3b2b;--shadow-chrome:0 14px 38px -24px #1d201659, 0 2px 7px #1d20160a;--shadow-panel:0 30px 70px -32px #1d20166b, 0 2px 8px #1d20160d;--radius-lg:22px;--radius-md:14px;--radius-sm:10px;--ease:cubic-bezier(.2, .78, .22, 1);--ease-quick:cubic-bezier(.3, .8, .3, 1)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#141612;--surface:#1d201ad1;--surface-solid:#20231d;--surface-raised:#292d25;--sunken:#ffffff0d;--ink:#f1f3ec;--ink-soft:#cfd4c7;--muted:#9fa595;--muted-2:#777d6e;--line:#f4f7ee1a;--line-strong:#f4f7ee2e;--track:#f4f7ee21;--accent:#a4ce6b;--accent-strong:#b6dd82;--accent-ink:#1b2412;--accent-soft:#a4ce6b29;--accent-softer:#a4ce6b12;--danger:#e0816b;--shadow-chrome:0 16px 44px -24px #0009, 0 2px 7px #00000040;--shadow-panel:0 34px 78px -30px #000000b8, 0 2px 8px #00000059}*,:before,:after{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-webkit-user-select:none;user-select:none;overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default;opacity:.55}svg{width:20px;height:20px;display:block}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-soft)}#viewport{z-index:0;background:#e8e7e3;position:fixed;inset:0}.tree-canvas{touch-action:none;outline:none;width:100%;height:100%;display:block}.loading-veil{z-index:3;pointer-events:none;opacity:0;visibility:hidden;place-items:center;display:grid;position:absolute;inset:0}.loading-veil.is-busy{opacity:1;visibility:visible}.loading-card{border:1px solid var(--line-strong);background:var(--surface-solid);background:color-mix(in srgb, var(--surface-solid) 82%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;align-items:center;gap:12px;padding:12px 18px;display:flex;box-shadow:0 14px 34px #12160c29}.loading-wheel{border:2px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite loading-spin}.loading-label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:10px}@keyframes loading-spin{to{transform:rotate(360deg)}}.eyebrow,.section-label{letter-spacing:.145em;text-transform:uppercase;color:var(--muted-2);margin:0;font-size:9px;font-weight:650}.topbar{z-index:20;border:1px solid var(--line);background:var(--surface);height:60px;box-shadow:var(--shadow-chrome);-webkit-backdrop-filter:blur(22px)saturate(1.25);animation:drop-in .55s var(--ease) both;border-radius:18px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;padding:0 12px 0 18px;display:grid;position:fixed;top:14px;left:16px;right:16px}.brand{align-items:center;gap:9px;min-width:0;display:flex}.brand-mark{width:32px;height:32px;color:var(--accent);background:var(--accent-soft);border-radius:10px;flex:none;place-items:center;display:grid}.brand-mark svg{width:23px;height:23px}.brand-name{font-family:var(--font-display);letter-spacing:-.035em;color:var(--ink);font-size:18px;font-weight:650}.brand-tag{border:1px solid var(--line);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);white-space:nowrap;border-radius:99px;padding:3px 7px;font-size:8.5px;font-weight:600}.seed-control{border:1px solid var(--line);background:var(--sunken);border-radius:12px;justify-self:center;align-items:center;height:40px;padding:0 3px;transition:border-color .18s,background .18s;display:flex}.seed-control:hover{border-color:var(--line-strong)}.seed-control:focus-within{border-color:var(--accent);background:var(--accent-softer)}.seed-control .icon-button{border-radius:8px;width:30px;height:30px}.seed-control .icon-button svg{width:18px;height:18px}.seed-field{align-items:baseline;gap:7px;min-width:0;padding:0 7px;display:flex}.seed-label{letter-spacing:.13em;text-transform:uppercase;color:var(--muted-2);font-size:8.5px;font-weight:650}#seed-input{width:18ch;min-width:12ch;font-family:var(--mono);letter-spacing:-.02em;color:var(--ink);text-align:center;-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:none;padding:3px 0 4px;font-size:11.5px;font-weight:450}.top-actions{justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.icon-button,.soft-button,.primary-button{border-radius:11px;justify-content:center;align-items:center;gap:7px;height:36px;transition:background .16s,color .16s,border-color .16s,transform .12s;display:inline-flex}.icon-button{width:36px;color:var(--muted)}.icon-button:hover{color:var(--ink);background:var(--sunken)}.icon-button:active,.soft-button:active,.primary-button:active{transform:scale(.96)}.soft-button{border:1px solid var(--line);color:var(--ink-soft);background:0 0;padding:0 12px;font-size:11.5px;font-weight:600}.soft-button:hover{border-color:var(--line-strong);background:var(--sunken);color:var(--ink)}.soft-button svg{width:17px;height:17px}.primary-button{color:var(--accent-ink);background:var(--accent);letter-spacing:.005em;padding:0 15px;font-size:11.5px;font-weight:650;box-shadow:0 6px 16px -9px #2b4714a6}.primary-button:hover{background:var(--accent-strong)}.primary-button svg{width:17px;height:17px}.primary-button.is-busy{pointer-events:none}.primary-button.is-busy svg{animation:.9s linear infinite spin}[data-theme=light] .icon-moon,[data-theme=dark] .icon-sun{display:none}.panel{z-index:15;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);width:334px;box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(24px)saturate(1.15);animation:rise-in .6s 60ms var(--ease) both;transition:opacity .26s ease, transform .34s var(--ease);flex-direction:column;display:flex;position:fixed;top:88px;bottom:180px;right:16px;overflow:hidden}.panel-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 16px 12px 19px;display:flex}.panel-head h2{font-family:var(--font-display);letter-spacing:-.035em;color:var(--ink);margin:3px 0 0;font-size:20px;font-weight:640}.panel-head-actions{gap:3px;display:flex}.panel-head-actions .icon-button{border-radius:9px;width:30px;height:30px}.panel-head-actions .icon-button svg{width:17px;height:17px}.panel-close{display:inline-flex}.panel-scroll{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;flex:1;min-height:0;padding:0 19px 14px;overflow-y:auto}.panel-scroll::-webkit-scrollbar{width:5px}.panel-scroll::-webkit-scrollbar-track{background:0 0}.panel-scroll::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:99px}.section-label-row{justify-content:space-between;align-items:center;margin:2px 0 13px;display:flex}.section-note{color:var(--muted-2);align-items:center;gap:5px;font-size:9px;font-weight:550;display:inline-flex}.section-note:before{content:"";background:var(--accent);width:5px;height:5px;box-shadow:0 0 0 3px var(--accent-softer);border-radius:50%}.view-controls{border-bottom:1px solid var(--line);margin-bottom:16px;padding-bottom:15px}.view-controls .section-label-row{margin-bottom:9px}.view-toggles{gap:6px;margin-bottom:8px;display:flex}.view-toggle{border:1px solid var(--line);white-space:nowrap;min-width:0;height:32px;color:var(--muted);background:0 0;border-radius:9px;flex:1 1 0;justify-content:center;align-items:center;gap:5px;padding:0 7px;font-size:10px;font-weight:600;transition:background .16s,color .16s,border-color .16s;display:inline-flex}.view-toggle svg{flex:none;width:14px;height:14px}.view-toggle:hover{border-color:var(--line-strong);background:var(--sunken);color:var(--ink)}.view-toggle[aria-pressed=true]{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.view-modes{margin-top:2px}.view-modes button{height:27px;font-size:9.5px}.control{margin-bottom:14px;position:relative}.control:last-child{margin-bottom:2px}.control-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:4px;display:flex}.control-label{letter-spacing:-.004em;color:var(--ink-soft);cursor:default;font-size:11.5px;font-weight:500}.control-toggle{width:100%;color:var(--ink-soft);font:inherit;letter-spacing:-.004em;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:14px;padding:10px 0;font-size:11.5px;font-weight:500;display:flex}.control-toggle:hover .control-toggle-label,.control-toggle.is-on .control-toggle-label{color:var(--ink)}.control-toggle .switch{pointer-events:none}.control-toggle:disabled{opacity:.42;cursor:default}.control-toggle:disabled:hover .control-toggle-label{color:var(--ink-soft)}.control-value{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;gap:2px;font-size:10px;display:inline-flex}.control-value .unit{color:var(--muted-2);font-size:9px}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:20px;margin:0}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--accent) var(--fill,50%), var(--track) var(--fill,50%));border-radius:99px;height:4px}input[type=range]::-webkit-slider-thumb{appearance:none;border:1.5px solid var(--accent);background:var(--surface-raised);width:14px;height:14px;transition:transform .13s var(--ease-quick), box-shadow .13s ease;border-radius:50%;margin-top:-5px;box-shadow:0 1px 4px #14190e33}input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.16);box-shadow:0 2px 7px #14190e3d}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.05)}input[type=range]::-moz-range-track{background:var(--track);border-radius:99px;height:4px}input[type=range]::-moz-range-progress{background:var(--accent);border-radius:99px;height:4px}input[type=range]::-moz-range-thumb{border:1.5px solid var(--accent);background:var(--surface-raised);border-radius:50%;width:12px;height:12px;box-shadow:0 1px 4px #14190e33}.advanced-toggle{border-top:1px solid var(--line);border-bottom:1px solid var(--line);width:100%;color:var(--ink-soft);letter-spacing:-.005em;justify-content:space-between;align-items:center;margin-top:16px;padding:12px 0;font-size:11.5px;font-weight:550;transition:color .16s;display:flex}.advanced-toggle:hover{color:var(--ink)}.advanced-title{align-items:center;gap:8px;display:inline-flex}.advanced-dot{background:var(--line-strong);border-radius:50%;width:6px;height:6px;transition:background .16s}.advanced-toggle[aria-expanded=true] .advanced-dot{background:var(--accent)}.advanced-toggle .chevron{width:16px;height:16px;color:var(--muted-2);transition:transform .22s var(--ease)}.advanced-toggle[aria-expanded=true] .chevron{transform:rotate(180deg)}.advanced-body{padding-top:13px}.tabs{border:1px solid var(--line);background:var(--sunken);border-radius:11px;grid-auto-columns:1fr;grid-auto-flow:column;gap:2px;margin-bottom:15px;padding:3px;display:grid}.tabs button{letter-spacing:-.01em;height:28px;color:var(--muted);border-radius:8px;font-size:10px;font-weight:550;transition:background .16s,color .16s,box-shadow .16s}.tabs button:hover{color:var(--ink-soft)}.tabs button[aria-selected=true]{color:var(--ink);background:var(--surface-solid);box-shadow:0 1px 4px #161a0f17}.tab-panel{animation:tab-in .22s var(--ease) both}.segmented{border:1px solid var(--line);background:var(--sunken);border-radius:10px;grid-auto-columns:1fr;grid-auto-flow:column;gap:2px;padding:3px;display:grid}.segmented button{height:27px;color:var(--muted);border-radius:7px;padding:0 8px;font-size:10px;font-weight:550;transition:background .16s,color .16s,box-shadow .16s}.segmented button.is-active{color:var(--ink);background:var(--surface-solid);box-shadow:0 1px 4px #161a0f17}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{border:1px solid var(--line);color:var(--muted);border-radius:99px;align-items:center;gap:6px;padding:5px 9px 5px 5px;font-size:10px;font-weight:500;transition:border-color .16s,background .16s,color .16s;display:inline-flex}.swatch:hover{border-color:var(--line-strong);color:var(--ink-soft)}.swatch.is-active{border-color:var(--accent);background:var(--accent-softer);color:var(--ink)}.swatch i{background:var(--swatch);border-radius:50%;width:17px;height:17px;display:block;box-shadow:inset 0 0 0 1px #14180e24}.panel-foot{border-top:1px solid var(--line);min-height:35px;font-family:var(--mono);color:var(--muted-2);letter-spacing:-.02em;white-space:nowrap;flex:none;align-items:center;gap:7px;padding:8px 19px 10px;font-size:9px;display:flex}.status-dot{background:var(--accent);width:5px;height:5px;box-shadow:0 0 0 3px var(--accent-softer);border-radius:50%;flex:none}.panel-foot.is-busy .status-dot{animation:.9s ease-in-out infinite pulse}.foot-sep{background:var(--line-strong);width:1px;height:8px;margin:0 2px}.looks{z-index:14;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(22px)saturate(1.15);animation:rise-in .6s .12s var(--ease) both;border-radius:20px;padding:11px 13px 12px;position:fixed;bottom:16px;left:16px;right:366px}.looks-head{justify-content:space-between;align-items:center;gap:14px;padding:0 3px 8px;display:flex}.looks-note{color:var(--muted-2);letter-spacing:-.01em;font-size:9.5px}.looks-tools{align-items:center;gap:4px;margin-left:auto;display:flex}.looks-tool{border:1px solid var(--line);letter-spacing:-.005em;height:24px;color:var(--muted);background:0 0;border-radius:8px;align-items:center;gap:5px;padding:0 8px;font-size:10px;font-weight:600;transition:background .16s,color .16s,border-color .16s,transform .12s;display:inline-flex}.looks-tool:hover{border-color:var(--line-strong);background:var(--sunken);color:var(--ink)}.looks-tool:active{transform:scale(.97)}.looks-tool:disabled{opacity:.5;cursor:default}.looks-tool svg{width:13px;height:13px}.looks-collapse{width:26px;padding:0}.looks-collapse svg{transition:transform .22s var(--ease)}.looks.is-collapsed{padding-bottom:9px}.looks.is-collapsed .preset-rail{display:none}.looks.is-collapsed .looks-head{padding-bottom:2px}.looks.is-collapsed .looks-collapse svg{transform:rotate(180deg)}.preset-rail{scrollbar-width:none;scroll-behavior:smooth;gap:7px;padding:1px 2px;display:flex;overflow:auto hidden}.preset-rail::-webkit-scrollbar{display:none}.look-card{text-align:left;width:92px;color:var(--ink);transition:transform .18s var(--ease), background .18s ease, border-color .18s ease;border:1px solid #0000;border-radius:12px;flex:none;padding:4px;position:relative}.look-card:hover{background:var(--sunken);transform:translateY(-2px)}.look-card.is-active{border-color:var(--accent);background:var(--accent-softer)}.look-card:active{transform:translateY(0)scale(.985)}.look-slot{flex:none;width:92px;position:relative}.look-slot .look-card{width:100%}.look-delete{z-index:2;color:#fff;opacity:0;pointer-events:none;background:#1a1c169e;border-radius:50%;place-items:center;width:19px;height:19px;transition:opacity .16s,transform .16s,background .16s;display:grid;position:absolute;top:6px;right:6px;transform:scale(.88)}.look-slot:hover .look-delete,.look-slot:focus-within .look-delete{opacity:1;pointer-events:auto;transform:none}.look-delete:hover{background:var(--danger)}.look-delete svg{width:11px;height:11px}@media (hover:none){.look-delete{opacity:1;pointer-events:auto;transform:none}}.look-thumb{aspect-ratio:1/1.06;background:radial-gradient(circle at 50% 38%,#ffffff80,#0000 58%),linear-gradient(160deg,#e9e8e3,#d7d8d0);border-radius:9px;width:100%;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #181c1312}[data-theme=dark] .look-thumb{background:radial-gradient(circle at 50% 38%,#ffffff14,#0000 58%),linear-gradient(160deg,#31362c,#22261f)}.look-thumb img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .35s;display:block}.look-thumb.is-ready img{opacity:1}.look-fallback{color:var(--tone,var(--accent));background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--tone,#6ea732) 22%, transparent), transparent 62%);place-items:center;display:grid;position:absolute;inset:0}.look-fallback svg{opacity:.8;width:27px;height:27px}.look-thumb.is-ready .look-fallback{opacity:0;transition:opacity .3s}.look-thumb:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff29}.look-card.is-active .look-thumb:before{content:"✓";z-index:2;background:var(--accent);width:15px;height:15px;color:var(--accent-ink);border-radius:50%;place-items:center;font-size:8.5px;font-weight:750;display:grid;position:absolute;top:5px;right:5px;box-shadow:0 2px 5px #141a0c40}.look-name{z-index:2;color:#fff;letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 3px #00000040;pointer-events:none;background:linear-gradient(#0000,#11160c8a);border-radius:0 0 9px 9px;padding:16px 5px 5px;font-size:9.5px;font-weight:550;line-height:1.15;display:block;position:absolute;bottom:4px;left:4px;right:4px;overflow:hidden}.look-card.surprise{background:linear-gradient(150deg, var(--accent-soft), transparent 72%);border:1px dashed var(--line-strong)}.look-card.surprise:hover{border-color:var(--accent);background:linear-gradient(150deg, var(--accent-soft), var(--accent-softer))}.look-thumb.surprise-thumb{color:#47672a;background:radial-gradient(circle at 55% 40%,#ffffff8c,#0000 60%),linear-gradient(145deg,#dce6cd,#c4d5ac);place-items:center;display:grid}.look-thumb.surprise-thumb svg{width:24px;height:24px}.look-card.surprise .look-name{color:var(--accent)}.hint{z-index:12;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-chrome);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--muted);letter-spacing:-.01em;transition:opacity .5s ease, transform .5s var(--ease);pointer-events:none;border-radius:99px;align-items:center;gap:8px;padding:6px 12px;font-size:9.5px;animation:.8s 1.1s both fade-in;display:flex;position:fixed;bottom:196px;left:50%;transform:translate(-50%)}.hint.is-hidden{opacity:0;transform:translate(-50%)translateY(6px)}.hint-dot{background:var(--muted-2);border-radius:50%;width:2px;height:2px}.tune-fab{display:none}@media (min-width:1121px){.panel.panel-entered,body.panel-collapsed .panel{animation:none}body.panel-collapsed .panel{opacity:0;pointer-events:none;transform:translate(calc(100% + 28px))}body.panel-collapsed .looks{right:16px}body.panel-collapsed .tune-fab{z-index:25;border:1px solid var(--line);background:var(--surface);height:34px;box-shadow:var(--shadow-chrome);-webkit-backdrop-filter:blur(16px)saturate(1.15);color:var(--muted);letter-spacing:-.01em;animation:fade-in .3s var(--ease) both;border-radius:99px;align-items:center;gap:6px;padding:0 13px 0 11px;font-size:10.5px;font-weight:600;transition:color .16s,border-color .16s;display:inline-flex;position:fixed;top:88px;right:16px}body.panel-collapsed .tune-fab:hover{border-color:var(--line-strong);color:var(--ink)}body.panel-collapsed .tune-fab svg{width:15px;height:15px}}.modal-scrim{z-index:60;-webkit-backdrop-filter:blur(6px);background:#10130d61;animation:.22s both fade-in;position:fixed;inset:0}.modal-wrap{z-index:61;pointer-events:none;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-solid);pointer-events:auto;width:430px;max-width:100%;max-height:calc(100dvh - 40px);animation:modal-in .32s var(--ease) both;scrollbar-width:thin;padding:22px;overflow-y:auto;box-shadow:0 44px 110px -32px #0009}.modal-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.modal-head h3{font-family:var(--font-display);letter-spacing:-.035em;margin:3px 0 0;font-size:21px;font-weight:640}.modal-head .icon-button{border-radius:9px;width:30px;height:30px}.modal-sub{color:var(--muted);margin:7px 0 0;font-size:11.5px;line-height:1.55}.export-format{margin-bottom:18px}.option-block{margin:15px 0}.option-label{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;font-size:11.5px;display:flex}.option-label .small-note{color:var(--muted-2);font-size:9.5px}.switch{border:1px solid var(--line-strong);background:var(--track);border-radius:99px;flex:none;width:36px;height:21px;transition:background .18s,border-color .18s;position:relative}.switch:after{content:"";background:var(--surface-raised);width:15px;height:15px;transition:transform .2s var(--ease);border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #0f140a3d}.switch.is-on{border-color:var(--accent);background:var(--accent)}.switch.is-on:after{transform:translate(15px)}.export-summary{border:1px solid var(--line);background:var(--sunken);font-family:var(--mono);color:var(--muted);border-radius:11px;justify-content:space-between;align-items:center;gap:12px;margin:17px 0;padding:11px 13px;font-size:9.5px;display:flex}.export-summary strong{color:var(--ink-soft);font-weight:550}.modal .wide-button{border-radius:11px;width:100%;height:40px;font-size:12px}.modal-compact{width:380px}.preset-form{flex-direction:column;gap:12px;display:flex}.preset-field{flex-direction:column;gap:6px;display:flex}.preset-field>span{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);font-size:9.5px;font-weight:650}.preset-field input{border:1px solid var(--line-strong);background:var(--sunken);height:42px;color:var(--ink);font:inherit;border-radius:10px;padding:0 12px;font-size:13px;font-weight:500}.preset-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.preset-hint{color:var(--muted-2);margin:-2px 0 0;font-size:10px;line-height:1.55}.preset-error{color:var(--danger);margin:0;font-size:11px}.preset-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.preset-actions .soft-button svg{width:15px;height:15px}.danger-button{color:#fff;background:var(--danger);border-radius:11px;justify-content:center;align-items:center;height:36px;padding:0 15px;font-size:11.5px;font-weight:600;transition:background .16s,transform .12s;display:inline-flex}.danger-button:hover{background:color-mix(in srgb, var(--danger) 82%, #000)}.danger-button:active{transform:scale(.96)}.fine-print{color:var(--muted-2);margin:12px 2px 0;font-size:9.5px;line-height:1.55}.export-progress{background:var(--track);border-radius:99px;height:3px;margin-top:12px;display:none;overflow:hidden}.export-progress.is-visible{display:block}.export-progress span{border-radius:inherit;background:var(--accent);width:34%;height:100%;animation:progress-slide 1.1s var(--ease) infinite;display:block}.help-grid{gap:8px;margin:4px 0 18px;display:grid}.help-row{border-bottom:1px solid var(--line);color:var(--ink-soft);justify-content:space-between;align-items:center;gap:18px;padding:7px 0;font-size:11.5px;display:flex}.help-row:last-child{border-bottom:0}.help-row .keys{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}kbd{border:1px solid var(--line-strong);border-bottom-color:var(--muted-2);background:var(--sunken);min-width:22px;font-family:var(--mono);color:var(--muted);text-align:center;border-radius:5px;padding:3px 6px;font-size:9px}.help-note{border:1px solid var(--line);background:var(--accent-softer);color:var(--muted);border-radius:11px;margin-top:14px;padding:12px;font-size:10.5px;line-height:1.55}.toast-root{z-index:80;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}.toast{background:var(--ink);color:var(--surface-solid);letter-spacing:-.01em;animation:toast-in .3s var(--ease) both;border-radius:99px;align-items:center;gap:8px;padding:9px 14px;font-size:10.5px;font-weight:500;display:flex;box-shadow:0 12px 34px -14px #00000073}.toast.is-error{background:var(--danger);color:#fff}.toast.is-leaving{animation:.25s both toast-out}.toast svg{width:14px;height:14px}.ui-hidden .topbar,.ui-hidden .panel,.ui-hidden .looks,.ui-hidden .hint,.ui-hidden .tune-fab,.ui-hidden .mobile-scrim{opacity:0;pointer-events:none;transition:opacity .28s ease, transform .28s var(--ease)}.ui-hidden .topbar{transform:translateY(-12px)}.ui-hidden .panel{transform:translate(14px)}.ui-hidden .looks{transform:translateY(14px)}.ui-reveal{z-index:30;border:1px solid var(--line);background:var(--surface);height:34px;box-shadow:var(--shadow-chrome);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--muted);border-radius:99px;align-items:center;gap:7px;padding:0 12px;font-size:10px;font-weight:550;animation:.3s both fade-in;display:inline-flex;position:fixed;top:16px;right:16px}.ui-reveal:hover{color:var(--ink)}.ui-reveal svg{width:15px;height:15px}.ui-reveal[hidden],.mobile-scrim{display:none}@keyframes drop-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tab-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-out{to{opacity:0;transform:translateY(6px)scale(.98)}}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes progress-slide{0%{transform:translate(-110%)}to{transform:translate(390%)}}@media (max-width:1120px){.looks{right:16px}.panel{top:auto;left:10px;right:10px;bottom:max(8px, env(safe-area-inset-bottom));z-index:31;opacity:0;pointer-events:none;width:auto;max-height:min(78dvh,720px);transition:transform .4s var(--ease), opacity .28s ease;border-radius:20px;animation:none;transform:translateY(calc(100% + 24px))}body.panel-open .panel{opacity:1;pointer-events:auto;transform:translateY(0)}.panel-close{display:inline-flex}.panel-foot{padding-bottom:max(10px, env(safe-area-inset-bottom))}.looks{left:10px;right:10px;bottom:max(8px, env(safe-area-inset-bottom));border-radius:18px;padding:9px 11px 10px}.looks-note{display:none}.look-card,.look-slot{width:84px}.tune-fab{right:16px;bottom:calc(130px + env(safe-area-inset-bottom));z-index:25;background:var(--accent);height:38px;color:var(--accent-ink);animation:rise-in .5s .4s var(--ease) both;border:1px solid #ffffff29;border-radius:99px;align-items:center;gap:7px;padding:0 14px;font-size:11px;font-weight:650;display:inline-flex;position:fixed;box-shadow:0 12px 30px -12px #1e340fb3}.tune-fab svg{width:16px;height:16px}body.panel-open .tune-fab,body.panel-open .looks{opacity:0;pointer-events:none}.mobile-scrim{z-index:30;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;background:#0c0f0957;transition:opacity .28s;display:block;position:fixed;inset:0}body.panel-open .mobile-scrim{opacity:1;pointer-events:auto}.hint{display:none}.toast-root{bottom:calc(144px + env(safe-area-inset-bottom))}body.panel-open .toast-root{bottom:calc(22px + env(safe-area-inset-bottom))}.ui-reveal{top:12px;right:12px}}@media (max-width:700px){.topbar{border-radius:16px;gap:8px;height:54px;padding:0 8px 0 11px;top:8px;left:8px;right:8px}.brand-mark{border-radius:9px;width:30px;height:30px}.brand-name{font-size:16.5px}.brand-tag,.hide-small,#help-button{display:none}.seed-control{height:36px}.seed-label{display:none}.seed-field{padding:0 2px}#seed-input{text-align:left;width:13ch;min-width:10ch;font-size:10px}.seed-control .icon-button{width:27px;height:27px}.seed-control .icon-button svg{width:16px;height:16px}.top-actions{gap:1px}.top-actions .icon-button{width:32px}.primary-button{width:34px;padding:0}.primary-button span{display:none}.looks{bottom:max(6px, env(safe-area-inset-bottom));border-radius:16px;padding:8px 9px 9px}.looks-head{padding:0 2px 6px}.look-card{width:74px;padding:3px}.look-slot{width:74px}.look-name{padding:13px 4px 4px;font-size:8.5px}.tune-fab{bottom:calc(116px + env(safe-area-inset-bottom));height:36px;padding:0 13px}.panel{left:6px;right:6px;bottom:max(6px, env(safe-area-inset-bottom));border-radius:18px;max-height:82dvh}.panel-head{padding:16px 14px 10px 16px}.panel-head h2{font-size:18px}.panel-scroll{padding:0 16px 12px}.modal-wrap{align-items:end;padding:12px}.modal{border-radius:20px;width:100%;max-height:calc(100dvh - 24px)}.toast-root{bottom:calc(130px + env(safe-area-inset-bottom))}}@media (max-width:520px){.brand-name{display:none}.topbar{grid-template-columns:30px minmax(0,1fr) auto;gap:7px}.seed-control{justify-self:stretch;min-width:0}.seed-field{flex:1;min-width:0}#seed-input{width:100%;min-width:0}#theme-button{display:none}.looks{border-radius:14px}}@media (max-height:760px) and (min-width:1121px){.panel{bottom:164px}.looks{padding:8px 11px 9px}.look-card,.look-slot{width:82px}.look-thumb{aspect-ratio:1/.96}.hint{bottom:176px}}@media (max-height:660px){.hint{display:none}.panel{top:80px;bottom:140px}.looks-note{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
