@font-face{font-family:Mitr;src:url(../fonts/Mitr-Medium.ttf)format("truetype");font-weight:400 700;font-display:block}:root{--pink:#f7b6c8;--rose:#d97998;--ivory:#fff3e3;--lav:#cdb8ee;--mint:#bfe8dc;--honey:#d9a66a;--butter:#ffe08a;--cocoa:#593f48;--plum:#795778;--sage:#8ac79f;--B:88px;--card:104px;--cards:5;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none;touch-action:manipulation;height:100%;color:var(--cocoa);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:radial-gradient(120% 90% at 50% 30%,#ffe9ef 0%,#f9cdd8 60%,#e9a9bd 100%);margin:0;font-family:Mitr,Noto Sans Thai,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;overflow:hidden}#stage-wrap,#stage{position:fixed;top:0;bottom:0;left:0;right:0}#stage{width:100%;height:100%;display:block}#ui{top:0;bottom:0;left:0;right:0;top:var(--banner-h,0px);pointer-events:none;position:fixed}#ui .scene-ui{position:absolute;top:0;bottom:0;left:0;right:0}#ui .scene-ui>*{pointer-events:auto}#modal-root{pointer-events:none;z-index:50;position:fixed;top:0;bottom:0;left:0;right:0}#modal-root>*{pointer-events:auto}#fader{opacity:0;pointer-events:none;z-index:40;background:#fff3e3;transition:opacity .22s;position:fixed;top:0;bottom:0;left:0;right:0}#fader.on{opacity:1;pointer-events:auto}.reduce-motion *{transition-duration:0s!important;animation-duration:0s!important}.tb{--face1:#ff8fac;--face2:#f2557f;width:var(--B);height:var(--B);cursor:pointer;color:#fff;background:radial-gradient(circle at 35% 28%, #ffffff8c 0 14%, transparent 15%), linear-gradient(180deg, var(--face1), var(--face2));box-shadow:0 0 0 calc(var(--B) * .075) #fff6e8, 0 calc(var(--B) * .11) 0 calc(var(--B) * .075) #e8c39a, 0 calc(var(--B) * .2) calc(var(--B) * .18) #783c4659, inset 0 -6px 10px #0000001f;margin:calc(var(--B) * .09);border:0;border-radius:50%;place-items:center;padding:0;transition:transform .12s ease-out,filter .12s;display:inline-grid;position:relative}.tb:active{transform:translateY(3px)scale(.95)}.tb[disabled]{filter:grayscale(.6)opacity(.55)}.tb .ico{filter:drop-shadow(0 2px #0000002e);width:54%;height:54%}.tb-pink{--face1:#ff9ab4;--face2:#f05a84}.tb-lilac{--face1:#cfa6ff;--face2:#a46ef0}.tb-green{--face1:#9ff05a;--face2:#4fc21e}.tb-mint{--face1:#9fe9d2;--face2:#47c4a0}.tb-butter{--face1:#ffe58c;--face2:#f6b928;color:#8a5a1a}.tb-cream{--face1:#fffaf0;--face2:#f6dfc4;color:var(--plum)}.tb-rose{--face1:#ff9ab0;--face2:#d94d74}.tb.small{--B:calc(var(--B-small,80px))}.pill:not([class*=tb-]){--face1:#9ff05a;--face2:#4fc21e}.pill{min-height:calc(var(--B) * .8);padding:0 calc(var(--B) * .32) 0 calc(var(--B) * .22);border-radius:calc(var(--B) * .4);cursor:pointer;color:#fff;font:inherit;font-size:clamp(18px, calc(var(--B) * .26), 26px);background:radial-gradient(60% 50% at 30% 20%, #ffffff73, transparent 60%), linear-gradient(180deg, var(--face1), var(--face2));text-shadow:0 1px #0000002e;border:0;align-items:center;gap:.4em;margin:10px 10px 18px;line-height:1.1;transition:transform .12s;display:inline-flex;box-shadow:0 0 0 5px #fff6e8,0 9px 0 5px #e8c39a,0 14px 18px #783c464d}.pill .ico{flex:none;width:1.5em;height:1.5em}.pill:active{transform:translateY(3px)scale(.97)}.pill.big{font-size:clamp(20px, calc(var(--B) * .3), 30px);min-height:var(--B)}.pill.tb-cream,.pill.tb-butter{text-shadow:none;color:var(--plum)}.pill.on{box-shadow:0 0 0 5px #ffd23f,0 9px 0 5px #e8b04a,0 14px 18px #783c464d}.pill[disabled]{filter:grayscale(.7)opacity(.5)}.topbar{padding:calc(8px + var(--safe-t)) calc(12px + var(--safe-r)) 0 calc(12px + var(--safe-l));justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:0;left:0;right:0;pointer-events:none!important}.topbar>div{pointer-events:auto;align-items:center;gap:4px;display:flex}.tb-center{left:50%;top:calc(14px + var(--safe-t));position:absolute;transform:translate(-50%)}@media (max-width:599px),(max-height:599px){.topbar{padding-left:calc(6px + var(--safe-l));padding-right:calc(6px + var(--safe-r))}.topbar>div{gap:0}.tb-center{min-width:0;margin-top:calc(var(--B) * .09 + 6px);flex:auto;justify-content:center;position:static;transform:none}.stars-pill{gap:4px;min-height:48px;padding:4px 14px 4px 6px;font-size:22px;box-shadow:0 0 0 3px #fff,0 5px 0 3px #efc78f,0 8px 12px #783c4638}.tb.small{--B:64px}}.stars-pill{font-size:clamp(24px, calc(var(--B) * .36), 36px);color:#b4641c;cursor:pointer;min-height:calc(var(--B) * .72);background:linear-gradient(#fffaf1,#ffeccf);border-radius:999px;align-items:center;gap:6px;padding:6px 22px 6px 10px;display:inline-flex;box-shadow:0 0 0 4px #fff,0 6px 0 4px #efc78f,0 10px 16px #783c4640}.stars-pill .ico.star{color:#ffc928;filter:drop-shadow(0 2px #e59a1d);width:1.35em;height:1.35em}.stars-pill.bump{animation:.5s ease-out bump}@keyframes bump{30%{transform:scale(1.25)}to{transform:scale(1)}}.ico.star{color:#ffc928}.room-ui .tray{left:calc(10px + var(--safe-l));bottom:calc(8px + var(--safe-b));background:linear-gradient(#fff1dc,#ffe2bd);border-radius:34px;width:76%;padding:8px 10px 12px;transition:transform .3s,opacity .3s;position:absolute;box-shadow:0 0 0 6px #f7a0b6,0 10px 0 6px #e27b98,0 18px 26px #78324659,inset 0 2px #fff}.room-ui .tabs{left:0;right:0;top:calc(var(--B) * -.92);pointer-events:none;justify-content:center;gap:12px;display:flex;position:absolute}.room-ui .tab{pointer-events:auto;width:var(--B);height:var(--B);cursor:pointer;background:linear-gradient(#fffaf2,#ffe6c7);border:0;border-radius:22px 22px 14px 14px;padding:4px;transition:transform .15s;box-shadow:0 0 0 4px #f7a0b6,0 6px 0 4px #e27b98}.room-ui .tab img{object-fit:contain;filter:drop-shadow(0 2px 2px #50282840);width:100%;height:100%}.room-ui .tab.walls img{object-fit:cover;border-radius:14px}.room-ui .tab.on{background:linear-gradient(#fffbe0,#ffe9a6);transform:translateY(-8px)scale(1.06);box-shadow:0 0 0 5px #ffd23f,0 7px 0 5px #e8a92a,0 10px 16px #783c284d}.room-ui .tray-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.room-ui .tray-row .arrow{width:var(--B);height:var(--B);flex:none;margin:6px}.room-ui .tray[data-pages="1"] .tray-row .arrow{visibility:hidden}.room-ui .cards{grid-template-columns:repeat(var(--cards), var(--card));flex:1;justify-content:center;gap:12px;padding:6px 0 10px;display:grid}.card{width:var(--card);height:calc(var(--card) * 1.12);cursor:pointer;background:linear-gradient(#fff9f0,#fed);border:0;border-radius:22px;place-items:center;padding:8px;transition:transform .12s;display:grid;position:relative;box-shadow:0 0 0 3px #fff,0 5px 0 3px #f1cfaa,0 8px 12px #783c462e}.card img{object-fit:contain;filter:drop-shadow(0 3px 3px #5a282840);pointer-events:none;max-width:100%;max-height:100%}.card .skin{background-position:50% 70%;background-size:cover;border-radius:14px;width:92%;height:88%;box-shadow:inset 0 0 0 3px #fffc}.card .skin.floor{background-position:50% 20%}.card:active{transform:scale(.94)}.card.sel{background:linear-gradient(#fffbe2,#ffeaa0);transform:translateY(-4px);box-shadow:0 0 0 5px #ffd23f,0 0 0 9px #fff6d0,0 0 22px 8px #ffd23fb3}.card.locked img,.card.locked .skin{filter:saturate(.75)brightness(.97)drop-shadow(0 3px 3px #5a282833)}.card .price{color:#b4641c;font-size:clamp(15px, calc(var(--card) * .17), 20px);background:#fff;border-radius:999px;align-items:center;gap:1px;padding:1px 8px 1px 3px;line-height:1.15;display:inline-flex;position:absolute;bottom:6px;right:6px;box-shadow:0 0 0 2px #ffd23f}.card .price .ico{width:1.1em;height:1.1em}.card.locked img,.card.locked .skin{margin-bottom:1.3em}.card.locked .skin{height:70%}.card .chk{color:#fff;z-index:1;background:linear-gradient(#ffd85a,#f5a623);border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:5px;right:5px;box-shadow:0 0 0 3px #fff,0 3px 6px #0003}.card .chk .ico{width:70%;height:70%}.card.putaway{color:#c07a8e}.card.putaway .ico{width:62%;height:62%}.card.used:after{content:"";background:#f05a84;border-radius:50%;width:10px;height:10px;margin-left:-5px;position:absolute;bottom:6px;left:50%;box-shadow:0 0 0 2px #fff}.room-ui .rail{right:calc(10px + var(--safe-r));bottom:calc(18px + var(--safe-b));align-items:flex-end;display:flex;position:absolute;pointer-events:none!important}.room-ui .rail>*,.room-ui .rail-mid>*{pointer-events:auto}.room-ui .rail-mid{align-items:center;gap:12px;display:flex}.room-ui .rail .big{--B:calc(var(--B-big,104px))}.room-ui .open-btn{display:none}.room-ui.tray-closed .tray{opacity:0;pointer-events:none;transform:translateY(130%)}.room-ui.tray-closed .undo-btn,.room-ui.tray-closed .done-btn{display:none}.room-ui.tray-closed .open-btn{display:inline-grid}.room-ui .pan{display:none}.room-ui.portrait .tray{width:auto;left:8px;right:8px;bottom:calc(8px + var(--safe-b));padding-top:12px}.room-ui.portrait .tabs{pointer-events:auto;flex-wrap:wrap;gap:12px;margin-bottom:8px;position:static}.room-ui.portrait .tab{width:max(64px, calc(var(--B) * .8));height:max(64px, calc(var(--B) * .8))}.room-ui.portrait .tab.on{transform:translateY(-3px)}.room-ui.portrait .rail{left:calc(8px + var(--safe-l));right:calc(8px + var(--safe-r));bottom:calc(var(--tray-h,0px) + 6px + var(--safe-b));justify-content:space-between;align-items:center}.room-ui.portrait .rail .pan{display:inline-grid}.room-ui.portrait .rail .pan[disabled],.room-ui.portrait:not(.can-pan) .rail .pan{visibility:hidden}.home-ui .room-door{cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%)}.home-ui .door-arrow{pointer-events:none}.home-ui .door-label,.pc-label,.hb-label{font-size:clamp(18px, calc(var(--B) * .27), 28px);color:var(--cocoa);white-space:nowrap;background:#fffaf1f2;border-radius:999px;padding:4px 18px;box-shadow:0 0 0 3px #f7a0b6,0 5px 10px #783c4640}.home-big{bottom:calc(18px + var(--safe-b));width:calc(var(--B) * 2.3);height:calc(var(--B) * 2);cursor:pointer;color:#fff;border:0;border-radius:34px;flex-direction:column;justify-content:center;align-items:center;gap:6px;transition:transform .12s;display:flex;position:absolute;box-shadow:0 0 0 8px #fff6e8,0 12px 0 8px #e8c39a,0 22px 26px #783c4659}.home-big:active{transform:translateY(4px)scale(.97)}.home-big .hb-ico .ico{width:calc(var(--B) * 1);height:calc(var(--B) * 1);filter:drop-shadow(0 3px #0000002e)}.hb-play{left:calc(28px + var(--safe-l));background:radial-gradient(60% 50% at 30% 20%,#ffffff73,#0000 60%),linear-gradient(#a6f0b0,#49c27a)}.hb-dress{right:calc(28px + var(--safe-r));background:radial-gradient(60% 50% at 30% 20%,#ffffff73,#0000 60%),linear-gradient(#ffa9c2,#f0628d)}.home-ui.portrait .home-big{width:calc(50% - 30px);height:calc(var(--B) * 2.1)}.home-ui.portrait .hb-play{left:16px}.home-ui.portrait .hb-dress{right:16px}.picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,36px);width:min(86vw,112vh,900px);display:grid;position:absolute;top:54%;left:50%;transform:translate(-50%,-50%)}.pcard{aspect-ratio:1.35;cursor:pointer;border:0;border-radius:34px;flex-direction:column;justify-content:flex-end;align-items:center;padding:10px;transition:transform .12s;display:flex;position:relative;overflow:visible;box-shadow:0 0 0 8px #fff6e8,0 12px 0 8px #e8c39a,0 22px 26px #783c464d}.pcard:active{transform:scale(.97)}.pc-pink{background:linear-gradient(#ffd6e2,#ffa9c2)}.pc-butter{background:linear-gradient(#fff1bd,#ffd86a)}.pc-mint{background:linear-gradient(#d9f7ec,#96e0c6)}.pc-lilac{background:linear-gradient(#ece0ff,#c6a8f5)}.pc-art{object-fit:cover;border-radius:28px;width:calc(100% - 16px);height:calc(100% - 16px);position:absolute;top:8px;bottom:8px;left:8px;right:8px}.pc-fallback{flex:1;justify-content:center;align-items:center;width:100%;display:flex}.pc-fallback img{object-fit:contain;filter:drop-shadow(0 6px 6px #5a282840);max-width:60%;max-height:92%}.pc-label{margin-bottom:-26px;position:relative}.picker-ui.portrait .picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:52px 22px;width:min(92vw,640px);top:calc(50% + 40px)}.picker-ui.portrait .pcard{aspect-ratio:1}.picker-ui.portrait .pc-label{white-space:normal;text-align:center;padding:4px 12px;font-size:clamp(16px,4.2vw,26px);line-height:1.2}.modal-back{opacity:0;background:#593f4873;place-items:center;padding:16px;transition:opacity .2s;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.modal-back.on{opacity:1}.modal{text-align:center;background:linear-gradient(#fffaf2,#fed);border-radius:36px;max-width:min(560px,94vw);max-height:92vh;padding:26px 30px 18px;transition:transform .25s cubic-bezier(.2,1.4,.4,1);overflow:auto;transform:scale(.9);box-shadow:0 0 0 8px #f7a0b6,0 14px 0 8px #e27b98,0 26px 40px #501e3266}.modal-back.on .modal{transform:scale(1)}.modal-back.wide .modal{max-width:min(860px,96vw)}.modal h2{justify-content:center;align-items:center;gap:6px;margin:0 0 12px;font-size:26px;display:flex}.modal h2 .ico{width:30px;height:30px}.set-actions{flex-wrap:wrap;justify-content:center;align-items:center;margin-top:8px;display:flex}.unlock-img{filter:drop-shadow(0 8px 8px #5a282840);max-width:240px;max-height:240px}.unlock-skin{background-position:50% 70%;background-size:cover;border-radius:20px;width:260px;height:170px;margin:0 auto;box-shadow:0 0 0 5px #fff}.unlock-name{margin:8px 0 0;font-size:26px}.cost{flex-wrap:wrap;justify-content:center;gap:2px;margin:4px 0;display:flex}.cost .ico{filter:drop-shadow(0 2px #e59a1d);width:44px;height:44px}.unlock-q{margin:6px 0;font-size:22px}.unlock-have{color:#b4641c;justify-content:center;align-items:center;margin:0;font-size:22px;display:flex}.unlock-have .ico{width:30px;height:30px}.gate h2{color:var(--plum)}.gate-q{font-size:22px}.gate-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin:14px 0;display:grid}.gate-num{font:inherit;color:var(--plum);cursor:pointer;background:#fff;border:0;border-radius:20px;padding:14px 0;font-size:32px;box-shadow:0 0 0 3px #cdb8ee,0 5px 0 3px #a98fd8}.linkbtn{font:inherit;color:var(--plum);cursor:pointer;background:0 0;border:0;padding:10px 20px;font-size:20px;text-decoration:underline}.settings{text-align:left;min-height:0;max-height:calc(100vh - 76px);flex-direction:column;max-height:calc(100dvh - 76px);display:flex}.settings-modal .modal{flex-direction:column;padding-bottom:6px;display:flex;overflow:hidden}.settings .set-scroll{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding:0 6px 8px;overflow:auto}.settings .set-footer{border-top:2px dashed #f7c9d6;flex:none;justify-content:center;padding-top:6px;display:flex}.settings .set-footer .pill{min-height:64px;margin:8px 10px 16px}.set-row{justify-content:space-between;align-items:center;gap:16px;margin:10px 0;font-size:21px;display:flex}.set-row input[type=range]{accent-color:#f05a84;width:50%;height:34px}.set-row input[type=checkbox]{accent-color:#f05a84;width:34px;height:34px}.seg{gap:8px;display:flex}.seg button{font:inherit;color:var(--cocoa);cursor:pointer;background:#fff;border:0;border-radius:16px;padding:8px 18px;font-size:20px;box-shadow:0 0 0 3px #f7a0b6}.seg button.on{background:#ffd6e2;box-shadow:0 0 0 4px #f05a84}.set-note{color:#7b6068;font-size:16px;line-height:1.45}.set-note.small{font-size:13px}.settings .pill{min-height:58px;font-size:18px}.confirm p{font-size:22px}.toast{opacity:0;background:#fffaf2;border-radius:999px;padding:12px 26px;font-size:22px;transition:all .25s;position:fixed;bottom:120px;left:50%;transform:translate(-50%,20px);box-shadow:0 0 0 4px #f7a0b6,0 10px 20px #0003}.toast.on{opacity:1;transform:translate(-50%)}.ro-banner{z-index:90;text-align:center;background:#fff3c4;padding:8px;font-size:18px;position:fixed;top:0;left:0;right:0}.ro-banner button{font:inherit;margin-left:8px}.photo-mat{background:#fff;border-radius:22px;padding:14px;position:relative;box-shadow:0 0 0 4px #ffe1ea,0 10px 20px #00000026}@media (max-width:599px){.photo-modal .modal{max-width:calc(100vw - 16px);padding:16px 10px 8px}.modal-back.photo-modal{padding:8px}.photo-mat{border-radius:16px;padding:6px}.photo-img{border-radius:10px;width:calc(100vw - 48px)}.photo .set-actions{grid-template-columns:1fr 1fr;gap:6px 10px;margin-top:14px;display:grid}.photo .set-actions .pill{justify-content:center;min-height:64px;margin:6px 4px 14px;padding:0 10px;font-size:18px}}.photo-img{aspect-ratio:4/3;border-radius:12px;width:min(76vw,95vh,760px);display:block}.photo-flash{opacity:1;pointer-events:none;background:#fff;border-radius:22px;position:absolute;top:0;bottom:0;left:0;right:0}.photo-flash.go{opacity:0;transition:opacity .6s ease-out}.reward-back{background:#fff3e359;place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:none!important}.reward-back .reward{pointer-events:auto}.reward{text-align:center;background:linear-gradient(#fffaf2,#fed);border-radius:40px;padding:26px 34px 14px;animation:.45s cubic-bezier(.2,1.5,.4,1) pop;box-shadow:0 0 0 8px #ffd23f,0 14px 0 8px #e8a92a,0 26px 40px #501e3259}.reward-stars{justify-content:center;gap:4px;display:flex}.reward-stars .ico{width:calc(var(--B) * 1.05);height:calc(var(--B) * 1.05);filter:drop-shadow(0 4px #e59a1d);animation:.5s cubic-bezier(.2,1.6,.4,1) both pop}.reward-stars .s2{animation-delay:.15s;transform:translateY(-14px)}.reward-stars .s3{animation-delay:.3s}.reward-title{font-size:clamp(26px, calc(var(--B) * .4), 40px);color:#b4641c;margin:6px 0 0}.reward-actions{flex-wrap:wrap;justify-content:center;align-items:center;display:flex}@keyframes pop{0%{opacity:0;transform:scale(.3)}to{opacity:1}}.dress-ui .dress-panel{right:calc(16px + var(--safe-r));top:calc(var(--B) + 40px);bottom:calc(16px + var(--safe-b));background:linear-gradient(#fff1dc,#ffe2bd);border-radius:34px;flex-direction:column;gap:10px;width:min(46vw,520px);padding:16px;display:flex;position:absolute;overflow:hidden;box-shadow:0 0 0 6px #f7a0b6,0 10px 0 6px #e27b98,0 18px 26px #7832464d}.dress-ui .dress-tabs{justify-content:center;gap:10px;display:flex}.dress-ui .dress-grid{flex:1;grid-template-columns:repeat(3,1fr);align-content:start;gap:14px;padding:8px;display:grid;overflow:auto}.dress-ui .dress-grid .card{aspect-ratio:.82;width:100%;height:auto}.dress-ui .dress-grid .card.acc{aspect-ratio:1}.dress-ui.portrait .dress-panel{width:auto;height:42%;top:auto;left:8px;right:8px}#start{z-index:80;background:radial-gradient(120% 90% at 50% 30%,#fff1f4 0%,#f9cdd8 65%,#eaa6bb 100%);place-items:center;transition:opacity .45s;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}#start.gone{opacity:0;pointer-events:none}.start-card{text-align:center}.start-art{object-fit:cover;border-radius:22%;width:min(40vh,60vw);height:min(40vh,60vw);box-shadow:0 0 0 8px #fff6e8,0 18px 30px #783c464d}.start-title{color:#b0476a;text-shadow:0 3px #fff;margin:22px 0 14px;font-size:clamp(28px,5vmin,52px);font-weight:600}.load-bar{background:#fff;border-radius:99px;width:min(60vw,420px);height:18px;margin:0 auto 10px;overflow:hidden;box-shadow:0 0 0 4px #f7a0b6}.load-bar i{background:linear-gradient(90deg,#ffd23f,#ff9ab4);width:0;height:100%;transition:width .2s;display:block}#start.ready .load-bar{visibility:hidden}.start-btn{--B:110px;font-size:34px!important}.tab-pill{font:inherit;cursor:pointer;color:var(--cocoa);background:#fff;border:0;border-radius:999px;align-items:center;gap:8px;min-height:64px;padding:10px 22px;font-size:22px;display:inline-flex;box-shadow:0 0 0 4px #f7a0b6,0 5px 0 4px #e27b98}.tab-pill .ico{color:#f05a84;width:34px;height:34px}.tab-pill.on{background:#fff4c2;box-shadow:0 0 0 5px #ffd23f,0 6px 0 5px #e8a92a}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.sr-only:focus-within{clip:auto;z-index:5;background:#fffaf2;border-radius:12px;flex-wrap:wrap;gap:6px;width:auto;height:auto;padding:6px;display:flex;bottom:8px;left:8px}.sr-btn{font:inherit;background:#fff;border:0;border-radius:12px;min-width:48px;min-height:48px;font-size:18px;box-shadow:0 0 0 3px #f7a0b6}:focus-visible{outline-offset:3px;outline:4px solid #7a4cc2}.progress-dots{left:50%;top:calc(var(--B) * 1.18 + 14px + var(--safe-t));gap:10px;display:flex;position:absolute;transform:translate(-50%);pointer-events:none!important}.progress-dots.pairs i{background:#f3ecff;border-radius:50%;width:26px;height:26px;box-shadow:0 0 0 3px #cdb8ee}.progress-dots.pairs i.on{background:radial-gradient(circle at 35% 30%,#ffe1ec,#f78fb0 65%,#e8678f);box-shadow:0 0 0 3px #fff,0 2px 6px #a03c5a59}.progress-dots i{background:#ffffffbf;border-radius:50%;width:22px;height:22px;box-shadow:0 0 0 3px #f7a0b6}.progress-dots i.on{background:radial-gradient(circle at 35% 30%,#fff6b0,#ffc928 60%,#f5a623);box-shadow:0 0 0 3px #fff,0 2px 6px #a05a1466}.answer-row{left:0;right:0;bottom:calc(22px + var(--safe-b));justify-content:center;align-items:center;gap:22px;padding:0 12px;display:flex;position:absolute;pointer-events:none!important}.game-ui.portrait .answer-row{flex-wrap:wrap;gap:14px 16px}.game-ui.portrait .answer-row .q-badge{width:auto;height:auto;box-shadow:none;color:#a46ef0;background:0 0;flex-basis:100%}.game-ui.portrait .answer-row .q-badge .ico{background:#fff;border-radius:50%;width:44px;height:44px;box-shadow:0 0 0 4px #cdb8ee}.game-ui.portrait .answer{min-width:0;width:min(calc(var(--B) * 1.5), calc((100vw - 24px - 32px - 36px) / 3));height:max(96px, calc(var(--B) * 1.5))}.answer-row>*{pointer-events:auto}.q-badge{width:calc(var(--B) * .8);height:calc(var(--B) * .8);color:#a46ef0;background:#fff;border-radius:50%;place-items:center;display:grid;box-shadow:0 0 0 4px #cdb8ee}.q-badge .ico{width:70%;height:70%}.answer{min-width:calc(var(--B) * 1.5);height:calc(var(--B) * 1.5);cursor:pointer;font:inherit;color:var(--plum);background:linear-gradient(#fffaf2,#ffe9cf);border:0;border-radius:30px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:6px 14px;transition:transform .12s;display:flex;box-shadow:0 0 0 6px #fff,0 10px 0 6px #e8c39a,0 16px 20px #783c4647}.answer b{font-size:calc(var(--B) * .62);line-height:1}.answer .pips{max-width:calc(var(--B) * 1.2);flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.answer .pips i{background:#f05a84;border-radius:50%;width:12px;height:12px}.answer:active{transform:scale(.95)}.answer.yes{box-shadow:0 0 0 6px #ffd23f,0 10px 0 6px #e8a92a,0 0 26px 8px #ffd23fb3}.answer.nope{animation:.4s nudge}@keyframes nudge{25%{transform:translateY(-6px)}60%{transform:translateY(2px)}}.mode-chooser{gap:clamp(20px,4vw,48px);display:flex;position:absolute;top:55%;left:50%;transform:translate(-50%,-50%)}.mode-card{aspect-ratio:1.1;cursor:pointer;border:0;border-radius:34px;flex-direction:column;justify-content:space-between;align-items:center;width:min(36vw,330px);padding:14px;display:flex;position:relative;box-shadow:0 0 0 8px #fff6e8,0 12px 0 8px #e8c39a,0 22px 26px #783c464d}.mode-count{background:linear-gradient(#fff1bd,#ffd86a)}.mode-sort{background:linear-gradient(#d9f7ec,#96e0c6)}.mode-art{flex:1;justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.mode-art img{object-fit:contain;filter:drop-shadow(0 6px 6px #5a282840);max-width:46%;max-height:90%}.game-ui.portrait .mode-chooser{flex-direction:column;gap:56px;top:calc(50% + 50px)}.game-ui.portrait .mode-card{aspect-ratio:1.6;width:min(72vw,320px)}.mode-card .pc-label{margin-bottom:-24px}.start-status{color:var(--plum);min-height:1.5em;margin:4px 0 0;font-size:18px}.ro-banner.warn{background:#ffd9d9}.photo-save{min-width:min(420px,80vw)}.photo-save .set-note{font-size:20px}a.pill{text-decoration:none}.photo-full-img{-webkit-touch-callout:default;-webkit-user-select:auto;user-select:auto;border-radius:12px;max-width:90vw;max-height:70vh;margin:0 auto;display:block}.album h2 small{color:#9a7f86;margin-left:8px;font-size:16px}.album-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;min-width:min(640px,84vw);max-height:56vh;padding:8px;display:grid;overflow:auto}.album-item{cursor:pointer;aspect-ratio:4/3;border:0;border-radius:16px;min-height:80px;padding:0;overflow:hidden;box-shadow:0 0 0 4px #fff,0 6px 12px #783c4640}.album-item img{object-fit:cover;width:100%;height:100%;display:block}.tb.muted{filter:saturate(.4)}.home-ui.portrait .room-door{transform:translateY(-50%)}.home-ui.portrait .door-yawa{align-items:flex-start;left:calc(10px + var(--safe-l))!important}.home-ui.portrait .door-jeya{right:calc(10px + var(--safe-r));align-items:flex-end;left:auto!important}.dress-ui .dress-grid{grid-template-columns:repeat(var(--dcols,3), var(--dcw,120px));grid-auto-rows:var(--dch,150px);place-content:center;gap:14px;padding:10px 4px;overflow:hidden}.dress-ui .dress-grid .card{width:var(--dcw,120px);height:var(--dch,150px);aspect-ratio:auto;min-height:0;padding:6px}.dress-ui .dress-grid .card img{object-fit:contain;width:100%;height:100%}.dress-ui .dress-grid .card>.ico{color:#c07a8e;width:50%;height:50%}.dress-ui .dress-pager{flex:none;justify-content:center;align-items:center;gap:14px;display:flex}.dress-ui .dress-pager[hidden]{display:none}.dress-ui .dress-pager .tb{margin:4px 6px 10px}.dress-ui .dress-pager .tb[disabled]{visibility:hidden}.dress-ui .page-dots{gap:8px;display:flex}.dress-ui .page-dots i{background:#fff;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 2px #f7a0b6}.dress-ui .page-dots i.on{background:#f05a84}.dress-ui.portrait .dress-panel{gap:6px;height:48%;padding:12px}
