:root{font-family:Nunito,system-ui,sans-serif;color:#342c3f;background:#ede5d2;--rose:#d56b8b;--blue:#3a59c7}*{box-sizing:border-box}body{margin:0;overscroll-behavior:none}button,input{font:inherit}button{min-width:44px;min-height:44px;border:2px solid #8a7384;border-radius:13px;color:#342c3f;background:#fff9ea;padding:7px 10px;font-weight:800;cursor:pointer;box-shadow:0 3px 0 #d2bbc2}button:focus-visible{outline:3px solid var(--blue);outline-offset:2px}button:disabled{opacity:.55;cursor:default}button:active{transform:translateY(2px);box-shadow:0 1px 0 #d2bbc2}[hidden]{display:none!important}#app{height:100dvh;max-width:1200px;margin:auto;display:flex;flex-direction:column;padding:8px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom));gap:6px;overflow:hidden}header{display:flex;align-items:center;gap:6px}header>div{flex:1;min-width:0}h1{font-size:23px;line-height:1.1;margin:0;color:var(--blue)}header p{margin:3px 0;font-size:12px;font-weight:800}#hud{display:flex;gap:6px;align-items:center;font-size:12px}#timer{font-size:22px;font-weight:900;color:var(--blue);width:52px;flex-shrink:0}#brief{flex:1}#hud button{font-size:12px;min-width:105px}main{min-height:0;flex:1;display:flex;flex-direction:column;gap:6px}#stage{min-height:100px;flex:1;position:relative;border:2px solid #c5a6b3;border-radius:18px;overflow:hidden;background:radial-gradient(ellipse at 50% 20%,#fff9ea 30%,#e8b6c4 100%);display:flex;align-items:center;justify-content:center}canvas{height:100%;max-width:100%;aspect-ratio:7/10;display:block}#poseCaption{position:absolute;bottom:4px;font-size:10px;font-weight:900;color:#443448;background:#fff9ea;padding:2px 8px;border-radius:8px}#wardrobe{flex-shrink:0;min-width:0;background:#fff8eb;border-radius:15px;padding:5px;box-shadow:0 3px 0 #d2bbc2}#tabs{display:flex;gap:3px}#tabs button{flex:1;min-width:0;min-height:44px;font-size:12px;padding:4px 2px;border-radius:10px}#tabs button[aria-pressed=true]{background:var(--blue);color:white;border-color:var(--blue)}#rack{display:flex;gap:5px;overflow-x:auto;overscroll-behavior:contain;padding:5px 2px}#rack button{flex:1 0 80px;min-height:73px;padding:4px 6px;text-align:left;font-size:11px;line-height:1.1;touch-action:none;border-width:2px}#rack button[aria-pressed=true]{background:#f5d3dd;border-color:#ad3c64}#rack b{display:block;font-size:12px;margin-bottom:4px}.swatch{display:inline-block;width:10px;height:10px;border:1px solid #65515c;border-radius:3px;margin-right:4px}#selected{font-size:10px;min-height:15px;padding:2px 4px}footer{display:flex;gap:5px;flex-shrink:0}footer button{flex:1;font-size:12px}#submit,#play,#retry{background:var(--blue);color:white;border-color:var(--blue)}.panel{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;background:#3d29396b;padding:12px;z-index:4}.sheet{background:#fff9eb;border:3px solid #aa6f88;border-radius:22px;padding:18px;max-width:490px;width:100%;max-height:calc(100dvh - 24px);overflow-y:auto;box-shadow:5px 7px 0 #5f435756;line-height:1.4}.sheet h2{font-size:25px;color:var(--blue);margin:8px 0}.sheet p{font-size:13px}.eyebrow{text-transform:uppercase;font-weight:900;letter-spacing:1px;font-size:10px;color:#9a3459}.settings{display:flex;gap:5px;flex-wrap:wrap}.settings label{display:flex;align-items:center;min-height:44px;font-size:13px;gap:5px}.settings input{width:22px;height:22px;accent-color:var(--blue)}.actions{display:flex;gap:6px;flex-wrap:wrap}.sheet button{margin-top:6px}#breakdown div,#comparison div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed #c0a1ac;padding:6px 0;font-size:13px}#notice{font-size:10px;min-height:0;color:#7d2449}#notice:empty{display:none}@media(min-width:720px){main{flex-direction:row}#stage{flex:1}#wardrobe{width:350px;align-self:center}#rack{flex-wrap:wrap}#rack button{flex:1 0 95px;min-height:100px}h1{font-size:30px}header p{font-size:14px}#hud{font-size:14px}#app{padding:12px;gap:9px}footer{max-width:540px;width:100%;align-self:center}}@media (max-height:450px) and (min-width:720px){#app{padding:5px;gap:3px}header p{display:none}h1{font-size:23px}#hud{font-size:12px}#wardrobe{width:370px}#rack button{min-height:75px}#selected{display:none}.sheet{padding:12px}}
/* Complete rack and bounded overlays. */
#stage{background:#ede5d2 url('assets/stage.webp') center/cover no-repeat}canvas#canvas{width:100%;height:100%;aspect-ratio:auto}header button{font-size:12px;padding:6px}#cover{width:100%;max-height:135px;object-fit:cover;object-position:50% 42%;border-radius:13px}select{font:inherit;min-height:44px;max-width:100%;width:100%;border:2px solid #a98898;border-radius:10px;background:#fffaf0;color:#342c3f;padding:5px;font-size:12px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choices label{font-size:11px;min-width:0;font-weight:800}.choices label:first-child:last-child{grid-column:1/-1}.identityRow{display:flex;gap:10px;align-items:center}.identityRow canvas{width:84px;height:120px;flex-shrink:0}.identityRow p{font-size:11px}.sheet h2{font-size:23px}#modeInfo,#rivalInfo,#bestInfo,#earned,#dailyInfo,#missionInfo{font-size:11px;line-height:1.35;margin:6px 0}#rack{display:flex;flex-wrap:nowrap}#rack button{flex:0 0 116px;min-height:85px}#rack .itemIcon{width:40px;height:40px;float:right;pointer-events:none}#resultCanvas{height:170px;width:100%;border-radius:12px;background:#efdfc5 url('assets/stage.webp') center/cover}#lookCanvas{width:160px;height:228px;max-width:100%;margin:auto;background:#f0dfc7;border-radius:12px}#bookList{display:grid;grid-template-columns:1fr 1fr;gap:6px}#bookList button{font-size:11px;min-width:0;line-height:1.3}#bookList canvas{height:96px;width:67px;display:block;margin:0 auto 5px}#lookInfo{font-size:12px}#bookList:empty{display:block}#timer{width:62px;font-size:17px}#briefTitle{font-size:11px}#rivalInfo{color:#704f68}#notice,#menuNotice{font-size:11px;color:#7d2449}@media(min-width:720px){#wardrobe{width:340px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}#rack{flex:0 0 auto;max-height:340px;overflow-y:auto;flex-wrap:wrap}#rack button{flex:1 0 112px;min-height:98px}#tabs{flex-wrap:wrap}#tabs button{flex:1 0 60px}#selected{display:block}#resultCanvas{height:210px}}@media (max-height:450px) and (min-width:720px){#wardrobe{width:345px}#rack{max-height:156px}#rack button{min-height:80px}#tabs{flex-wrap:nowrap}#tabs button{flex:1 1 0;font-size:10px}#resultCanvas{height:100px}.sheet h2{font-size:20px}#cover{max-height:100px}}@media(max-width:360px){h1{font-size:18px}header button{font-size:10px;padding:4px}#briefTitle{font-size:10px}#hud{font-size:11px}#rack button{min-height:87px;flex-basis:116px}#selected{font-size:9px}}

header,#hud,footer{flex-shrink:0}#tabs button,footer button{overflow-wrap:anywhere}#wardrobe{min-height:0}@media (min-width:720px){#rack{flex:0 1 auto;min-height:0}#tabs,#selected{flex-shrink:0}}

#breakdown small,#comparison small{display:block;font-size:10px;font-weight:600;line-height:1.35;color:#715266;margin-top:3px}#comparison div>span{flex:1;min-width:0}#comparison div>span:last-child{text-align:right}
