:root{color-scheme:dark;--ink:#ecedea;--muted:#a8abb4;--rose:#d8a9a8;--line:#ffffff16;--panel:#121a25;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--serif:Georgia,'Times New Roman',serif;font-family:Arial,Helvetica,sans-serif;background:#0c121c;color:var(--ink)}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--rose);outline-offset:4px}button{border:0;background:none}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.site-header{height:94px;max-width:1512px;margin:auto;padding:0 42px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font:25px var(--serif);letter-spacing:2px}.brand em,h1 em,.loader em{font-style:normal;color:var(--rose)}.brand small{display:block;font:8px var(--mono);letter-spacing:3px;margin-top:7px;color:var(--muted)}.terminal,.study-label,.eyebrow,.view-label,.stage-side,.panel-heading>span,.look-copy small,.look-copy>b,.proof-note>span,footer,.reference-tabs{font-family:var(--mono)}.terminal{font-size:9px;letter-spacing:2px;color:var(--muted);display:flex;align-items:center;gap:12px}.terminal i{height:5px;width:5px;border-radius:50%;background:var(--rose);box-shadow:0 0 12px #d8a9a866}.terminal b,.stage-top b{font-weight:400;color:#ffffff33}.study-label{font-size:8px;letter-spacing:2px;padding:10px 12px;border:1px solid var(--line);border-radius:4px;color:var(--rose)}main{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.8fr);gap:50px;max-width:1460px;margin:auto;padding:0 36px 36px;align-items:start}.stage{position:sticky;top:20px;isolation:isolate;height:calc(100vh - 124px);min-height:550px;max-height:1000px;border:1px solid #aab7ca24;border-radius:14px;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,#444047 0,#2b303a 46%,#141e2b 100%)}.stage-light{position:absolute;inset:0;background:linear-gradient(90deg,#0003,transparent 28%,transparent 72%,#0003);z-index:-1}.stage-light:before,.stage-light:after{content:'';position:absolute;top:13%;height:58%;width:1px;background:linear-gradient(transparent,#ffffff30,transparent)}.stage-light:before{left:13%}.stage-light:after{right:13%}.stage-floor{position:absolute;bottom:28px;left:20%;width:60%;height:7%;border:1px solid #c1a6a730;border-radius:50%;background:radial-gradient(ellipse,#0003,transparent 68%);transition:opacity .6s;z-index:-1}.stage[data-view=hair] .stage-floor{opacity:0}.stage-mark{position:absolute;top:32%;right:3%;font:clamp(100px,15vw,220px) var(--serif);color:#ffffff04;z-index:-1}#character{display:block;width:100%;height:100%}.stage-top{position:absolute;top:22px;left:25px;right:25px;display:flex;justify-content:space-between;gap:12px}.eyebrow{font-size:8px;letter-spacing:2px;color:var(--muted);font-weight:400;margin:0}.stage-top .eyebrow{font-size:8px;color:#c5c4c7;display:flex;gap:10px;align-items:center}.view-label{color:var(--rose);font-size:8px;letter-spacing:1px}.stage-side{position:absolute;top:50%;left:22px;writing-mode:vertical-rl;transform:rotate(180deg) translateY(50%);font-size:7px;letter-spacing:2px;color:#c3c7cc68;display:flex;align-items:center;gap:15px;pointer-events:none}.stage-side i{height:42px;width:1px;background:#ffffff24}.stage-bottom{position:absolute;left:25px;right:22px;bottom:22px;display:flex;justify-content:space-between;align-items:end;pointer-events:none}.nameplate .eyebrow{font-size:7px;color:#c6c5cb8c}.nameplate h2{font:25px var(--serif);font-weight:400;margin:8px 0 4px;max-width:230px;overflow-wrap:anywhere}.nameplate p{margin:0;color:#c2c2c8;font-size:10px}.stage-actions{display:flex;gap:6px;pointer-events:auto}.icon-button{width:34px;height:34px;border:1px solid #ffffff22;background:#0e162572;border-radius:50%;font-size:17px;display:inline-flex;align-items:center;justify-content:center}.icon-button:hover{border-color:var(--rose);background:#27303f}.controls{padding:26px 0 0;min-width:0;max-width:460px}.controls>.eyebrow{color:var(--rose);font-size:8px}h1{font:clamp(38px,4.2vw,60px)/1.02 var(--serif);font-weight:400;letter-spacing:-2px;margin:23px 0 19px}.intro{color:var(--muted);font-size:12px;line-height:1.8;margin:0 0 28px}.tabs{display:flex;border-bottom:1px solid var(--line);margin:0 0 24px;gap:5px}.tabs button{padding:13px 12px 15px 0;flex:1;text-align:left;border-bottom:2px solid transparent;font-size:11px;color:var(--muted);white-space:nowrap}.tabs small{font:8px var(--mono);margin-right:7px;color:#7c8291}.tabs [aria-selected=true]{color:var(--ink);border-color:var(--rose)}.tabs [aria-selected=true] small{color:var(--rose)}.panel{min-height:272px}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px;gap:12px}.panel-heading h2{font:20px var(--serif);font-weight:400;margin:0}.panel-heading>span{font-size:7px;color:var(--rose);letter-spacing:1px}.look-card{display:flex;width:100%;padding:0;border:1px solid #c7a7a757;border-radius:7px;overflow:hidden;text-align:left;background:#1b2431;min-height:148px}.look-card:hover{border-color:var(--rose)}.look-image{position:relative;flex:0 0 116px;min-height:148px;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,#555057,#313745)}.look-image img{position:absolute;display:block;width:154px;height:auto;max-width:none;left:-17px;top:-8px}.outfit-card .look-image img{width:180px;left:-31px;top:-27px}.hair-card .look-image img{width:330px;left:-107px;top:2px}.look-copy{padding:19px 16px;display:flex;flex:1;flex-direction:column;min-width:0;justify-content:center;gap:9px}.look-copy small{font-size:6px;letter-spacing:1.6px;color:var(--rose)}.look-copy strong{font:21px var(--serif);font-weight:400}.look-copy>span{font-size:9px;line-height:1.65;color:var(--muted)}.look-copy>b{font-size:6px;letter-spacing:1px;color:#d9d4d4;font-weight:400;margin-top:3px}.look-copy i{font-style:normal;color:var(--rose);margin-left:8px}.note{font-size:10px;color:var(--muted);line-height:1.8;margin:15px 0}.next{font-size:10px;color:var(--rose);width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 0;margin-top:12px}.next:hover{color:#f1caca}label{font-size:10px;color:#d9d9db;display:block;margin:17px 0 9px}input{width:100%;background:#141e2c;color:var(--ink);border:1px solid #ffffff1b;border-radius:5px;padding:13px;font-size:12px}input::placeholder{color:#6e788b}input:focus{border-color:#d8a9a870}.reference-button{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:10px;padding:17px 0;margin-top:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#d7d7dc}.reference-button span{color:var(--rose)}.reference-button:hover{color:var(--rose)}.save-area{margin-top:22px}.primary{border-radius:5px;background:var(--rose);color:#1c1720;display:flex;align-items:center;justify-content:space-between;width:100%;font:9px var(--mono);letter-spacing:1px;padding:17px 18px;gap:20px;text-align:left}.primary:hover:not(:disabled){background:#ebbcbb}.primary span{font-size:15px}.status{font-size:9px;line-height:1.7;min-height:25px;color:var(--muted);margin:11px 0 0}.proof-note{margin-top:22px;display:grid;grid-template-columns:74px 1fr;gap:12px;border-top:1px solid var(--line);padding-top:17px}.proof-note>span{font-size:6px;letter-spacing:1px;color:var(--rose);padding-top:3px}.proof-note p{font-size:9px;color:#929aa8;line-height:1.8;margin:0}footer{max-width:1460px;margin:auto;padding:13px 36px 28px;display:flex;justify-content:space-between;align-items:center;gap:24px;color:#687487;font-size:7px;letter-spacing:1px}footer p{letter-spacing:0;font-family:Arial,sans-serif;font-size:9px;margin:0}.loader,.fatal{position:absolute;inset:0;z-index:5;background:#111925;display:flex;align-items:center;justify-content:center;text-align:center;padding:28px}.loader h2{font:33px var(--serif);font-weight:400;letter-spacing:2px;margin:20px 0}.loader p,.fatal p{font-size:11px;color:var(--muted)}.loading-line{display:block;height:1px;width:160px;background:#ffffff16;margin:27px auto;position:relative;overflow:hidden}.loading-line:after{content:'';position:absolute;background:var(--rose);width:50%;height:1px;left:-50%;animation:load 1.8s ease-in-out infinite}.fatal{flex-direction:column}.fatal h2{font:27px var(--serif);font-weight:400}.fatal .primary{max-width:240px;margin-top:20px}dialog{color:var(--ink);background:#141d2a;border:1px solid #bfa3aa3b;border-radius:12px;max-height:92vh;overflow:auto;box-shadow:0 30px 100px #0008;padding:28px}dialog::backdrop{background:#080c14d9;backdrop-filter:blur(8px)}.reference-dialog{width:min(940px,94vw)}.dialog-top{display:flex;justify-content:space-between;align-items:start}.dialog-top h2{font:32px var(--serif);font-weight:400;margin:10px 0 18px}.reference-tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin:3px 0 20px}.reference-tabs button{padding:10px 0;font-size:9px;border-bottom:2px solid transparent;color:var(--muted)}.reference-tabs [aria-pressed=true]{border-color:var(--rose);color:var(--ink)}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px}.comparison figure{margin:0;min-width:0}.reference-frame,.comparison canvas{height:min(48vh,500px);width:100%;background:#2b303a;border-radius:6px;overflow:hidden;display:block}.reference-frame img{width:100%;height:100%;object-fit:contain;display:block}.comparison figcaption{font-size:9px;line-height:1.6;color:var(--muted);margin:10px 0}.reference-dialog>.note{margin:15px 0 0}.saved-dialog{width:min(420px,92vw)}.saved-dialog h2{font:32px var(--serif);font-weight:400;overflow-wrap:anywhere}.saved-dialog>p:not(.eyebrow){font-size:12px;line-height:1.8;color:var(--muted)}.saved-dialog .primary{margin-top:22px}.text-button{display:block;margin:15px auto 0;color:var(--muted);padding:9px;font-size:10px}.noscript{position:fixed;bottom:0;padding:20px;background:#101722;width:100%;text-align:center;font-size:14px}@keyframes load{to{left:120%}}@media(min-width:1500px){main{gap:70px}.controls{padding-top:40px}}@media(max-width:1050px){main{gap:30px;padding-inline:24px;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr)}.site-header{padding-inline:28px}.controls{padding-top:18px}.look-image{flex-basis:98px}.look-copy{padding:18px 12px}.look-copy strong{font-size:19px}.hair-card .look-image img{left:-116px}.outfit-card .look-image img{left:-40px}.terminal{font-size:8px;letter-spacing:1px}.stage-side{display:none}}@media(max-width:760px){.site-header{height:76px;padding:0 20px}.brand{font-size:20px}.brand small{font-size:6px;letter-spacing:2px}.terminal{display:none}.study-label{font-size:6px;padding:8px;letter-spacing:1px}main{display:block;padding:0 14px 20px}.stage{position:sticky;top:0;z-index:2;height:52svh;min-height:320px;max-height:510px;border-radius:10px}.stage-top{top:18px;left:18px;right:18px}.stage-top .eyebrow,.view-label{font-size:6px;letter-spacing:1px}.stage-bottom{left:18px;right:16px;bottom:15px}.nameplate h2{font-size:19px;margin-top:6px;max-width:210px}.nameplate .eyebrow{font-size:5px}.nameplate p{font-size:8px}.icon-button{width:31px;height:31px;font-size:15px}.stage-floor{bottom:27px}.controls{padding:30px 10px 0;max-width:none}h1{font-size:44px;margin:18px 0 15px;line-height:1.05}.intro{font-size:12px;margin-bottom:22px}.tabs{margin-bottom:23px}.tabs button{font-size:12px;padding-block:14px}.tabs small{font-size:8px}.panel{min-height:270px}.panel-heading h2{font-size:22px}.look-image{flex-basis:116px}.look-copy{padding:22px 18px}.look-copy strong{font-size:24px}.look-copy>span{font-size:10px}.look-copy small,.look-copy>b{font-size:7px}.hair-card .look-image img{left:-107px}.outfit-card .look-image img{left:-31px}.note,label{font-size:12px}.note{line-height:1.75}.next,.reference-button{font-size:12px}.next{padding:15px 0}.primary{padding:19px 18px;font-size:10px}.status{font-size:10px}.proof-note{grid-template-columns:76px 1fr}.proof-note>span{font-size:7px}.proof-note p{font-size:10px}input{font-size:16px}footer{padding:15px 24px 28px;align-items:start;gap:15px}footer>span:last-child{display:none}footer p{font-size:9px;max-width:225px;line-height:1.7}.comparison{gap:10px}.reference-frame,.comparison canvas{height:38vh}.comparison figcaption{font-size:8px}dialog{padding:20px}.dialog-top h2{font-size:28px}.reference-tabs{gap:18px}.reference-tabs button{font-size:8px}.reference-dialog>.note{font-size:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.base-choice{border:0;padding:0;margin:0 0 16px}.base-choice legend{font:7px var(--mono);letter-spacing:1.6px;color:var(--muted);padding:0;margin-bottom:10px}.base-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.base-buttons button{border:1px solid var(--line);border-radius:5px;background:#141e2c;padding:12px;font-size:11px;color:var(--muted)}.base-buttons button[aria-pressed=true]{border-color:#d8a9a88c;background:#d8a9a814;color:var(--rose)}.base-buttons button:hover{border-color:var(--rose)}@media(max-width:760px){.base-buttons button{font-size:13px;padding:14px}.base-choice legend{font-size:8px}}
.wardrobe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.wardrobe-card{position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:0;overflow:hidden;text-align:left;border:1px solid var(--line);border-radius:6px;background:#182231;transition:border-color .2s,background .2s}.wardrobe-card:hover{border-color:#d8a9a877}.wardrobe-card[aria-pressed=true]{border-color:var(--rose);background:#252a36}.wardrobe-card img{width:100%;height:150px;object-fit:contain;display:block;background:radial-gradient(ellipse at 50% 40%,#514d53,#263142)}.hair-grid .wardrobe-card img{height:115px;object-fit:cover;object-position:center top}.wardrobe-card>span{padding:11px 8px;min-width:0;display:flex;flex-direction:column;gap:7px}.wardrobe-card strong{font:12px/1.3 var(--serif);font-weight:400;min-height:30px}.wardrobe-card small{font:5px/1.5 var(--mono);color:var(--muted);letter-spacing:.6px}.wardrobe-card>b{display:none;position:absolute;top:7px;right:7px;border-radius:50%;width:19px;height:19px;align-items:center;justify-content:center;font-size:11px;font-weight:400;background:var(--rose);color:#201b25}.wardrobe-card[aria-pressed=true]>b{display:flex}.selection-detail{margin:17px 0 4px;display:flex;flex-direction:column;gap:7px}.selection-detail strong{font:18px var(--serif);font-weight:400}.selection-detail span{font-size:10px;line-height:1.6;color:var(--muted)}@media(max-width:1050px) and (min-width:761px){.wardrobe-grid{gap:7px}.wardrobe-card img{height:127px}.hair-grid .wardrobe-card img{height:100px}.wardrobe-card strong{font-size:11px}.wardrobe-card small{font-size:5px;letter-spacing:0}}@media(max-width:760px){.wardrobe-grid{gap:10px}.wardrobe-card img{height:145px}.hair-grid .wardrobe-card img{height:130px}.wardrobe-card strong{font-size:13px;min-height:34px}.wardrobe-card>span{padding:12px 9px}.wardrobe-card small{font-size:6px}.selection-detail strong{font-size:20px}.selection-detail span{font-size:12px}}@media(max-width:370px){.outfit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hair-grid{gap:7px}.hair-grid .wardrobe-card img{height:115px}}

.fixed-look{cursor:default}.fixed-look .look-image{min-height:174px}.fixed-look .look-image img{width:100%;height:100%;left:0;top:0;object-fit:contain}.fixed-look.hair-card .look-image img{object-fit:cover;object-position:center top}
.avatar-selection{margin:20px 0 22px}.avatar-heading{display:flex;justify-content:space-between;gap:12px;font:8px var(--mono);letter-spacing:1px;color:var(--rose)}.avatar-heading span{font-size:6px;color:var(--muted)}.avatar-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.avatar-card{position:relative;overflow:hidden;min-width:0;padding:0;border:1px solid var(--line);border-radius:6px;text-align:left;background:#182231}.avatar-card:hover{border-color:var(--rose)}.avatar-card[aria-pressed=true]{border-color:var(--rose);box-shadow:0 0 0 1px #d8a9a859}.avatar-card[aria-pressed=true]:after{content:'✓';position:absolute;right:6px;top:6px;width:19px;height:19px;border-radius:50%;background:var(--rose);color:#211923;display:grid;place-items:center;font-size:11px}.avatar-card img{display:block;width:100%;height:116px;object-fit:cover;object-position:center top;background:radial-gradient(ellipse at center,#50434b,#1a2331)}.avatar-card>span{display:flex;flex-direction:column;gap:6px;padding:10px 7px}.avatar-card strong{font:13px/1.3 var(--serif);font-weight:400}.avatar-card small{font:7px/1.5 var(--mono);color:var(--muted)}.avatar-note{font-size:9px;color:var(--muted);line-height:1.6;margin:10px 0}.fixed-look.hair-card img[data-full=true]{width:320px;height:auto;max-width:none;left:calc(50% - 160px);top:0;object-fit:initial}@media(max-width:760px){.avatar-card img{height:126px}.avatar-card strong{font-size:14px}.avatar-card small{font-size:8px}.avatar-note{font-size:11px}.avatar-heading{font-size:9px}.avatar-heading span{font-size:7px}}
body.is-booting{overflow:hidden}.boot-screen{position:fixed;inset:0;z-index:100;display:grid;place-items:center;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 44%,#34232f 0,#181d2a 38%,#0b1019 76%);opacity:1;transition:opacity .45s ease}.boot-screen.is-leaving{opacity:0;pointer-events:none}.boot-screen:after{content:'';position:absolute;inset:18px;border:1px solid #d8a9a812;pointer-events:none}.boot-orbit{position:absolute;z-index:-1;width:min(72vw,560px);aspect-ratio:1;border:1px solid #d8a9a814;border-radius:50%;box-shadow:0 0 110px #d8a9a808,inset 0 0 100px #d8a9a805}.boot-orbit:before{content:'';position:absolute;inset:24px;border:1px solid #d8a9a808;border-radius:50%}.boot-content{text-align:center;padding:40px 22px;max-width:100%}.boot-credit,.boot-message,.boot-footer{font-family:var(--mono)}.boot-credit{font-size:9px;letter-spacing:4px;color:#bdabb5;margin:0 0 29px}.boot-title{font:clamp(48px,10vw,112px)/1.05 var(--serif);font-weight:400;letter-spacing:-3px;white-space:nowrap;margin:0;color:#f3efea}.boot-title span{color:var(--rose)}.boot-tagline{font:italic clamp(14px,2vw,19px)/1.6 var(--serif);letter-spacing:.4px;color:#b7aab7;margin:20px 0 0}.boot-heartline{display:block;width:min(66vw,380px);height:64px;margin:34px auto 25px;overflow:visible}.boot-trace{stroke:#d8a9a825;stroke-width:1}.boot-pulse{stroke:var(--rose);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:95 460;stroke-dashoffset:95;filter:drop-shadow(0 0 5px #d8a9a866);animation:boot-heartbeat 2.2s linear infinite}.boot-message{font-size:9px;line-height:1.8;letter-spacing:1px;color:#c3bac7;max-width:310px;min-height:18px;margin:0 auto}.boot-footer{position:absolute;bottom:38px;left:42px;right:42px;display:flex;justify-content:space-between;gap:20px;color:#9c909f;font-size:7px;letter-spacing:2px}.boot-retry{display:inline-flex;gap:30px;align-items:center;border:1px solid #d8a9a870;border-radius:4px;color:var(--rose);font:10px var(--mono);padding:12px 18px;margin-top:22px;background:#d8a9a80a}.boot-retry:hover{background:#d8a9a819}.boot-screen[data-state=error] .boot-pulse{animation:none;stroke-dasharray:none;opacity:.4}@keyframes boot-heartbeat{to{stroke-dashoffset:-460}}@media(max-width:500px){.boot-screen:after{inset:12px}.boot-title{letter-spacing:-2px}.boot-credit{font-size:7px;letter-spacing:3px}.boot-footer{left:25px;right:25px;bottom:27px;font-size:6px;letter-spacing:1px}.boot-heartline{margin-top:28px}.boot-message{font-size:8px}}@media(prefers-reduced-motion:reduce){.boot-screen{transition:none}.boot-pulse{animation:none;stroke-dasharray:none;opacity:.65}}
@media(max-width:760px){.controls :is(button,input){scroll-margin-top:calc(clamp(320px,52svh,510px) + 24px);scroll-margin-bottom:20px}}
.avatar-card-picture{position:relative;height:130px;overflow:hidden;background:radial-gradient(ellipse at center,#50434b,#1a2331)}.avatar-card .avatar-card-picture img{position:absolute;width:230%;height:auto;max-width:none;left:-65%;top:0;object-fit:initial;background:none}.avatar-card .avatar-eyes{color:var(--rose);font-size:7px}.appearance-details{margin:12px 0 0;font:9px/1.7 var(--mono);color:#d4c4cb;padding:10px 12px;border-left:2px solid #d8a9a85c;background:#d8a9a808}.avatar-card strong{min-height:34px}.avatar-card small{overflow-wrap:anywhere}@media(max-width:760px){.avatar-card-picture{height:125px}.avatar-card .avatar-eyes{font-size:8px}.appearance-details{font-size:10px}}
