:root{color-scheme:light;--ink:#24314b;--cream:#fff8e8;--paper:#fffdf5;--mango:#ffce59;--teal:#298e82;--pink:#ea869c;--line:#34415a;--shadow:0 5px 0 var(--line);font-family:"Trebuchet MS","Avenir Next",system-ui,sans-serif;color:var(--ink);background:#f3efe5;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 15% 0,#fff1bf 0,transparent 60%),#f3efe5;min-height:100dvh}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:4px solid #dd6c8d;outline-offset:3px}button{touch-action:manipulation}a{color:inherit}button[hidden],[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:20px;background:#fff;padding:12px;z-index:100}.skip-link:focus{top:10px}
.page{width:min(1320px,100%);margin:0 auto;padding:0 30px}.site-bar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{text-decoration:none;font-size:15px;font-weight:800;display:flex;gap:9px;align-items:center}.brand>span:first-child{font-size:23px}.brand-divider{color:#a5a3a1}.top-actions{display:flex;gap:10px}.quiet-button{border:1px solid #cccbc5;border-radius:11px;padding:10px 13px;background:#fffaf0;font-size:13px;font-weight:700;min-height:42px}.quiet-button:hover{background:#ffedc0}.game-shell{width:100%;aspect-ratio:16/9;position:relative;overflow:hidden;border:3px solid var(--line);border-radius:23px;background:#9cdbdd;box-shadow:0 10px 0 #27314b1a;isolation:isolate}.game-shell>canvas{width:100%;height:100%;display:block;object-fit:contain}.game-shell:fullscreen{width:100vw;height:100dvh;border:0;border-radius:0;aspect-ratio:auto;background:#24314b}.game-shell:fullscreen>canvas{object-fit:contain}.game-shell:fullscreen .menu{background:#fff8e800}.game-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:12px;line-height:1.5;padding:14px 5px 0}.game-footer p{margin:0}.game-footer span{font-size:11px;text-align:right;max-width:45%;color:#536465}.page-note{text-align:center;font-size:12px;color:#66706d;margin:13px 0 18px}.version{font-size:10px;margin-left:12px;color:#929b97}.text-button{border:0;background:none;text-decoration:underline;padding:4px 5px;color:var(--teal)}.portrait-note{display:none;background:#fff0c1;border-radius:10px;padding:9px;text-align:center;font-size:12px}.noscript{background:white;padding:30px}
.menu{position:absolute;inset:0;display:flex;flex-direction:column;padding:26px;z-index:4;overflow:auto;scrollbar-width:thin;scrollbar-color:#a0c7b0 transparent;overscroll-behavior:contain}.menu.modal-menu{align-items:center;justify-content:center;background:#20304750;backdrop-filter:blur(3px)}.menu.solid-menu{background:#f9f5eafa;backdrop-filter:blur(10px)}.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:900;color:#507b78;margin:0 0 11px}.loading-card,.dialog-card{background:var(--paper);border:2px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow);max-width:580px;width:100%}.loading-card{margin:auto}.dialog-card h2{font-size:30px;line-height:1.1;letter-spacing:-.035em;margin:7px 0 16px}.dialog-card p{font-size:15px;line-height:1.6}.dialog-card .eyebrow{font-size:10px}.small{font-size:12px!important;color:#667375;line-height:1.55}.muted{color:#667375}.title-screen{width:55%;max-width:620px;padding:15px 5px 6px 14px;position:relative;isolation:isolate}.title-screen:before{content:"";position:absolute;inset:-80px -35px -100px -95px;background:linear-gradient(90deg,#fff7e0f5 50%,#fff7e0cb 78%,#fff7e000);z-index:-1}.title-kicker{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--ink);border-radius:25px;padding:6px 11px;font-weight:800;font-size:10px;letter-spacing:.13em;background:#fff3d3;transform:rotate(-2deg);margin:0 0 14px}.title-logo{font-size:clamp(44px,6.5vw,89px);font-weight:1000;line-height:.86;letter-spacing:-.065em;margin:3px 0 17px;transform:rotate(-3deg);text-shadow:0 3px 0 #ffffff}.title-logo span{display:block;color:#e68b2e;-webkit-text-stroke:1.5px #ad5f26;text-shadow:2px 4px 0 #fff4c5}.title-logo strong{font-weight:1000;color:#28374e}.title-subtitle{display:inline-block;background:#3b9483;color:white;border:2px solid #24314b;border-radius:7px;padding:7px 12px;font-size:clamp(10px,1.2vw,14px);font-weight:800;letter-spacing:.035em;transform:rotate(-2deg);box-shadow:2px 3px 0 #24314b;margin:4px 0 15px}.title-blurb{font-size:clamp(12px,1.2vw,16px);max-width:345px;line-height:1.5;margin:0 0 15px;color:#385267}.title-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:370px}.button{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:44px;border:2px solid var(--line);border-radius:12px;background:#fffaf0;font-size:14px;font-weight:800;padding:10px 18px;box-shadow:0 3px 0 var(--line);text-decoration:none;transition:transform .12s,box-shadow .12s,background .12s}.button:hover{transform:translateY(-1px);background:#fff0cf}.button:active{transform:translateY(3px);box-shadow:none}.button.primary{background:var(--mango)}.button.primary:hover{background:#ffdd79}.button.teal{background:#bfe6d0}.button.wide{grid-column:1/-1}.button.small-button{min-height:36px;font-size:12px;padding:7px 11px;box-shadow:0 2px 0 var(--line)}.button:disabled{opacity:.5;transform:none}.title-features{display:flex;gap:12px;font-size:10px;font-weight:800;margin-top:18px;color:#3a6572;flex-wrap:wrap}.title-caption{position:absolute;right:6%;bottom:6%;display:flex;flex-direction:column;align-items:center;transform:rotate(3deg);padding:8px 13px;border:2px solid var(--ink);background:#fff1cb;border-radius:10px;font-size:12px;box-shadow:3px 3px 0 var(--ink)}.title-caption strong{font-size:17px}.title-profile{font-size:11px;color:#49666b;margin:13px 0 0;line-height:1.4}
.panel-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 18px;flex-shrink:0}.panel-header h2{font-size:29px;line-height:1.05;margin:0;letter-spacing:-.04em}.panel-header .eyebrow{margin:0 0 5px}.panel-header p{margin:5px 0 0;font-size:12px;color:#607675}.panel-actions{display:flex;gap:8px;align-items:center}.round-button{border:2px solid var(--ink);border-radius:50%;width:40px;height:40px;min-width:40px;background:#ffefc3;font-size:23px;font-weight:800;display:grid;place-items:center;line-height:1;text-decoration:none}.level-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;flex:1}.level-card{padding:0;border:2px solid var(--ink);border-radius:17px;text-align:left;overflow:hidden;background:#fffdf3;box-shadow:0 4px 0 #29334b;position:relative;transition:transform .14s}.level-card:hover:not(:disabled){transform:translateY(-2px)}.level-card canvas{display:block;width:100%;aspect-ratio:2.9;object-fit:cover;background:#c6e5da}.level-card:disabled canvas{filter:saturate(.55);opacity:.8}.level-card:disabled{box-shadow:0 3px 0 #8a92a1;border-color:#7e8a97;color:#637483}.level-text{padding:10px 12px 12px}.level-place{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;color:#36877b;margin:0 0 4px}.level-text h3{font-size:18px;line-height:1.1;margin:0 0 6px;letter-spacing:-.025em}.level-text p{font-size:11px;margin:3px 0;line-height:1.4}.level-status{display:flex;justify-content:space-between;align-items:center;gap:5px;margin-top:10px;font-size:11px;font-weight:800}.level-number{position:absolute;top:9px;left:10px;background:#fff4da;border:1.5px solid var(--ink);border-radius:8px;padding:5px 7px;font-size:11px;font-weight:900}.level-star{position:absolute;right:10px;top:10px;font-size:23px;line-height:1;background:#fff0c6;border-radius:50%;padding:2px 5px}.map-note{margin:15px 0 0;font-size:11px;text-align:center;color:#617878}
.wardrobe-layout{display:grid;grid-template-columns:200px 1fr;gap:22px;min-height:0;flex:1}.wardrobe-preview{background:#d7eade;border:2px solid var(--ink);border-radius:18px;display:flex;flex-direction:column;align-items:center;padding:10px;position:sticky;top:0;max-height:430px}.wardrobe-preview canvas{width:100%;max-height:270px;object-fit:contain}.wardrobe-preview h3{font-size:17px;text-align:center;margin:5px}.wardrobe-preview p{font-size:11px;line-height:1.5;text-align:center;margin:5px}.costume-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.costume-card{border:2px solid var(--ink);background:#fffaf0;border-radius:13px;padding:8px 5px;font-size:10px;font-weight:800;box-shadow:0 3px 0 #29334b;text-align:center}.costume-card canvas{width:100%;height:105px;object-fit:contain;display:block}.costume-card span{display:block;line-height:1.3;min-height:26px}.costume-card small{font-size:9px;display:block;min-height:16px;margin-top:3px;color:#566d6d}.costume-card.equipped{background:#fbd674}.costume-card:disabled{border-color:#90999e;box-shadow:0 3px 0 #9fa6aa}.costume-card:disabled canvas{filter:grayscale(.8);opacity:.55}.accessory-heading{font-size:13px;margin:18px 0 9px}.accessories{display:flex;flex-wrap:wrap;gap:8px}.accessories button{padding:8px;border:1px solid #718b86;border-radius:10px;background:#f2f5e9;font-size:11px}.accessories button.equipped{background:#bce3cd}.accessories button:disabled{opacity:.5}
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.settings-box{background:#fffdf6;border:1.5px solid #bccac2;border-radius:16px;padding:16px}.settings-box h3{margin:0 0 14px;font-size:16px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:13px;font-size:12px;font-weight:700}.field input:not([type=checkbox]),.field select{min-height:40px;border:1.5px solid #7e9790;border-radius:9px;background:white;color:var(--ink);padding:8px 10px;width:100%}.field input[type=range]{accent-color:var(--teal);padding:0}.checkbox-field{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.4;margin:14px 0}.checkbox-field input{width:20px;height:20px;accent-color:var(--teal)}.key-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.key-grid button{border:1px solid #8ea59b;border-radius:8px;padding:8px;background:#f1f2e6;font-size:12px}.key-grid kbd{display:block;font-weight:900;font-size:14px;margin-top:4px}.settings-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;color:#607575;padding-top:15px}.profile-columns{display:grid;grid-template-columns:1.1fr 1fr;gap:20px}.profile-list{display:grid;gap:10px;margin-bottom:15px}.profile-row{display:flex;align-items:center;gap:11px;background:#fffdf4;border:1.5px solid #90a59c;border-radius:13px;padding:11px}.profile-row.selected{background:#d3ead8;border-color:#438a74}.avatar{width:46px;height:46px;min-width:46px;border:1.5px solid var(--ink);background:#ffe2a0;border-radius:13px;font-size:27px;display:grid;place-items:center}.profile-details{flex:1;min-width:0}.profile-details strong{font-size:14px;overflow-wrap:anywhere}.profile-details small{display:block;font-size:10px;margin-top:4px;color:#526e67}.profile-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.profile-actions button{padding:6px 8px;background:#fff7dc;border:1px solid #788b86;border-radius:7px;min-height:32px;font-size:11px}.profile-box{background:#fffdf6;border:1.5px solid #bbc9c2;border-radius:16px;padding:18px;margin-bottom:16px}.profile-box h3{font-size:17px;margin:0 0 12px}.profile-box p{font-size:12px;line-height:1.55}.avatar-picker{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:13px}.avatar-picker label{cursor:pointer}.avatar-picker input{position:absolute;opacity:0;width:1px;height:1px}.avatar-picker span{display:block;border:1.5px solid #a4b4a8;background:#fff0c8;border-radius:8px;padding:6px 9px;font-size:22px}.avatar-picker input:checked+span{background:#bfe7cf;border:2px solid var(--ink);padding:5.5px 8.5px}.avatar-picker input:focus-visible+span{outline:3px solid #dd6c8d}.profile-status{font-size:11px!important;padding:9px 11px;background:#e3eee1;border-radius:8px;line-height:1.5}.cloud-list{display:grid;gap:7px}.cloud-list button{text-align:left;border:1px solid #849e92;border-radius:9px;padding:9px;background:#f0f4e6;font-size:12px}
.story-card{max-width:720px}.comic-strip{display:grid;grid-template-columns:1fr 1fr;gap:13px}.comic-panel{background:#fff5d6;border:2px solid var(--ink);border-radius:13px;padding:15px;position:relative}.comic-panel:nth-child(2){background:#dcecdc}.comic-panel strong{font-size:12px;letter-spacing:.03em}.comic-panel p{font-size:13px;line-height:1.6;margin:9px 0 0}.story-banner{height:110px;width:100%;object-fit:cover;border:2px solid var(--ink);border-radius:12px;margin:10px 0 15px}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:20px}.helper-dialog{display:grid;grid-template-columns:140px 1fr;gap:20px;align-items:center}.helper-dialog canvas{width:140px;height:190px;object-fit:contain}.helper-dialog h2{font-size:26px}.helper-dialog p{font-size:14px}.result-title{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:10px}.result-title span{font-size:40px}.result-title h2{margin:0;font-size:33px}.result-wardrobe{display:grid;grid-template-columns:140px 1fr;gap:20px;align-items:center;background:#fff1c6;border:1.5px solid #b1a783;border-radius:16px;padding:12px}.result-wardrobe canvas{width:140px;height:180px}.result-wardrobe h3{margin:5px 0;font-size:24px}.result-wardrobe p{margin:7px 0;font-size:13px;line-height:1.5}.result-wardrobe .eyebrow{font-size:9px}.result-ending{text-align:center;font-size:13px!important;color:#52676b}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.help-grid h3{font-size:15px}.help-grid p{font-size:13px;line-height:1.6}.notice{border:1.5px solid #b4a783;border-radius:10px;background:#fff0c6;padding:10px;font-size:12px;line-height:1.5}
.hud{position:absolute;inset:14px 16px auto;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;pointer-events:none}.hud-left{display:flex;gap:10px;align-items:center}.hearts{display:flex;gap:3px;background:#fff6e2eb;border:2px solid var(--ink);border-radius:12px;padding:7px 10px;line-height:1;box-shadow:0 3px 0 #28334b22;white-space:nowrap}.hearts span{font-size:24px;color:#dd6281;text-shadow:1px 1px 0 #842f57}.hearts span.empty{color:#bec6bf;text-shadow:none}.mango-counter{display:flex;align-items:center;gap:7px;background:#fff6e2eb;border:2px solid var(--ink);border-radius:12px;padding:8px 11px;font-size:18px;font-weight:900;line-height:1}.mango-counter>span:first-child{font-size:25px}.counter-total{font-size:11px;font-weight:700;color:#6b827c}.level-label{text-align:center;background:#fff6e2eb;border:1.5px solid #566e6b;border-radius:10px;padding:7px 14px;font-weight:800;font-size:12px;line-height:1.3}.level-label small{display:block;font-weight:500;font-size:10px;margin-top:3px}.pause-button{pointer-events:auto;background:#fff2c9;border:2px solid var(--ink);border-radius:12px;font-size:23px;font-weight:900;width:48px;height:46px;box-shadow:0 3px 0 #24314b}.boss-hud{position:absolute;top:78px;left:50%;transform:translateX(-50%);z-index:2;text-align:center;background:#fff5dde8;border:2px solid var(--ink);border-radius:13px;padding:8px 20px;min-width:240px;max-width:72%;pointer-events:none}.boss-hud strong{font-size:12px}.boss-pips{display:flex;justify-content:center;gap:6px;margin:5px}.boss-pips i{height:8px;width:33px;border:1.5px solid var(--ink);border-radius:4px;background:#e58192}.boss-pips i.empty{background:#d9d8ce}.boss-hud>span{display:block;font-size:10px;font-weight:800;color:#955662}.boss-hud.open{background:#d5efcdeb}.boss-hud.open>span{color:#377350}.touch-controls{position:absolute;inset:auto 18px 18px;display:flex;justify-content:space-between;align-items:flex-end;pointer-events:none;z-index:3;user-select:none;-webkit-user-select:none}.touch-controls>div{display:flex;gap:12px;pointer-events:auto;align-items:flex-end}.touch-controls button{width:66px;height:64px;border-radius:17px;background:#fff3d8d9;border:2px solid #364458;box-shadow:0 4px 0 #24314b5c;font-size:25px;color:var(--ink);touch-action:none;user-select:none;-webkit-user-select:none}.touch-controls .touch-jump{width:77px;height:73px;background:#ffd764e8}.touch-controls .touch-spin{width:59px;height:59px;background:#c1e2d4e8}.touch-controls button small{font-size:9px;letter-spacing:.05em;font-weight:900;display:block}.touch-controls button.pressed{transform:translateY(3px);box-shadow:none;background:#e89491}.toast{position:absolute;bottom:23px;left:50%;transform:translateX(-50%);background:#24314bf2;border:1.5px solid #fff0be;border-radius:11px;padding:11px 18px;color:#fff4d8;font-size:12px;line-height:1.4;text-align:center;max-width:74%;z-index:10;pointer-events:none}.has-touch .toast{bottom:110px}
@media(min-width:1350px){.title-screen{padding-top:27px}.title-logo{font-size:95px}.title-blurb{font-size:17px}.button{min-height:49px}.title-subtitle{font-size:15px}.title-features{margin-top:23px;font-size:12px}}
@media(max-width:1000px){.page{padding:0 18px}.site-bar{min-height:61px}.menu{padding:19px}.title-screen{padding:4px 4px 0 7px}.title-logo{font-size:clamp(46px,7.5vw,75px)}.title-kicker{margin-bottom:9px;font-size:9px;padding:5px 8px}.title-subtitle{margin-bottom:10px;padding:6px 9px}.title-blurb{margin-bottom:11px;font-size:12px}.title-buttons{gap:8px}.title-buttons .button{font-size:12px;padding:8px 10px;min-height:39px}.title-features{margin-top:14px;font-size:9px;gap:8px}.title-profile{margin-top:9px;font-size:10px}.level-grid{gap:12px}.panel-header{margin-bottom:13px}.panel-header h2{font-size:25px}.level-text h3{font-size:16px}.level-text{padding:8px 10px}.level-card canvas{aspect-ratio:3}.level-status{margin-top:7px}.level-number{padding:3px 6px;top:6px;left:7px}.wardrobe-layout{grid-template-columns:155px 1fr;gap:16px}.costume-grid{gap:8px}.costume-card canvas{height:85px}.settings-grid,.profile-columns{gap:13px}.profile-box,.settings-box{padding:13px}.game-footer{font-size:10px}.game-footer span{font-size:10px}.title-caption{font-size:10px;bottom:5%}.title-caption strong{font-size:14px}}
@media(max-width:750px){.page{padding:0 8px}.site-bar{min-height:46px;gap:6px}.brand{font-size:11px;gap:5px}.brand>span:first-child{font-size:18px}.quiet-button{min-height:34px;font-size:10px;padding:7px 9px}.top-actions{gap:5px}.game-shell{border-radius:14px;border-width:2px}.menu{padding:13px}.title-screen{width:57%;padding-top:0}.title-logo{font-size:clamp(33px,7.8vw,56px);margin:0 0 9px}.title-kicker{font-size:7px;margin-bottom:8px;padding:4px 7px}.title-subtitle{font-size:8px;padding:4px 7px;border-width:1.5px;margin:3px 0 8px}.title-blurb{font-size:10px;line-height:1.35;margin-bottom:8px;max-width:250px}.title-buttons{gap:6px;max-width:280px}.title-buttons .button{font-size:10px;min-height:33px;padding:5px 8px;border-radius:8px;border-width:1.5px;box-shadow:0 2px 0 var(--ink)}.title-features{font-size:7px;gap:6px;margin-top:9px}.title-profile{font-size:8px;margin-top:6px}.title-caption{right:4%;font-size:8px;padding:5px 9px;border-width:1.5px;bottom:5%}.title-caption strong{font-size:12px}.title-screen:before{inset:-60px -15px -80px -50px}.panel-header{margin-bottom:10px;gap:10px}.panel-header h2{font-size:21px}.panel-header .eyebrow{font-size:8px}.panel-header p{font-size:10px}.round-button{width:33px;height:33px;min-width:33px;font-size:20px}.button{font-size:12px;min-height:39px;padding:8px 12px}.button.small-button{font-size:10px;min-height:31px}.level-grid{gap:9px}.level-card{border-radius:11px;box-shadow:0 3px 0 var(--ink)}.level-text{padding:6px 8px}.level-place{font-size:8px;margin-bottom:3px}.level-text h3{font-size:13px;margin-bottom:4px}.level-text p{font-size:9px}.level-status{font-size:9px;margin-top:7px}.level-number{font-size:8px;border-radius:5px;top:5px;left:5px}.level-star{font-size:15px;top:5px;right:5px}.map-note{font-size:9px;margin-top:12px}.wardrobe-layout{grid-template-columns:120px 1fr;gap:12px}.wardrobe-preview h3{font-size:13px}.wardrobe-preview p{font-size:10px}.costume-card canvas{height:69px}.costume-card{font-size:8px;border-radius:9px}.costume-card small{font-size:8px}.accessory-heading{font-size:11px;margin-top:13px}.accessories button{font-size:9px}.settings-box h3{font-size:13px}.settings-box{padding:11px}.field{font-size:11px;margin-bottom:10px}.field input:not([type=checkbox]),.field select{min-height:35px;font-size:11px}.checkbox-field{font-size:11px;margin:11px 0}.key-grid button{font-size:10px}.key-grid kbd{font-size:12px}.dialog-card{padding:19px;border-radius:15px;max-width:500px}.dialog-card h2{font-size:25px;margin:5px 0 11px}.dialog-card p{font-size:12px;line-height:1.5}.dialog-actions{margin-top:13px}.story-banner{height:75px;margin:3px 0 10px}.comic-panel{padding:10px}.comic-panel strong{font-size:9px}.comic-panel p{font-size:10px}.helper-dialog{grid-template-columns:100px 1fr;gap:13px}.helper-dialog canvas{width:100px;height:135px}.result-title h2{font-size:26px}.result-title span{font-size:28px}.result-wardrobe{grid-template-columns:90px 1fr;padding:8px;gap:10px}.result-wardrobe canvas{width:90px;height:115px}.result-wardrobe h3{font-size:19px}.result-wardrobe p{font-size:11px}.result-ending{font-size:11px!important}.profile-columns{grid-template-columns:1fr 1fr}.profile-box{padding:11px}.profile-box h3{font-size:14px}.profile-box p{font-size:10px}.profile-row{padding:8px;gap:7px;flex-wrap:wrap}.avatar{width:35px;height:35px;min-width:35px;font-size:20px;border-radius:10px}.profile-details strong{font-size:12px}.profile-details small{font-size:9px}.profile-actions{flex-basis:100%;justify-content:flex-start}.profile-actions button{font-size:10px;min-height:30px}.avatar-picker{gap:4px}.avatar-picker span{font-size:17px;padding:4px 6px}.avatar-picker input:checked+span{padding:3.5px 5.5px}.hud{inset:8px 9px auto;gap:6px}.hud-left{gap:5px}.hearts{padding:5px 7px;gap:2px;border-radius:9px;border-width:1.5px}.hearts span{font-size:19px}.mango-counter{font-size:14px;gap:4px;padding:5px 7px;border-width:1.5px;border-radius:9px}.mango-counter>span:first-child{font-size:20px}.counter-total{font-size:9px}.level-label{font-size:10px;padding:5px 8px}.level-label small{font-size:8px}.pause-button{width:38px;height:35px;border-radius:9px;font-size:18px}.boss-hud{top:54px;padding:5px 11px;min-width:200px}.boss-hud strong{font-size:10px}.boss-pips{gap:4px;margin:3px}.boss-hud>span{font-size:9px}.touch-controls{inset:auto 12px 12px}.touch-controls>div{gap:9px}.touch-controls button{width:52px;height:49px;font-size:22px;border-radius:13px}.touch-controls .touch-jump{width:63px;height:59px}.touch-controls .touch-spin{width:48px;height:48px}.touch-controls button small{font-size:7px}.toast{font-size:10px;padding:8px 11px;bottom:15px}.has-touch .toast{bottom:79px}.game-footer{font-size:9px;padding-top:10px}.game-footer span{font-size:9px}.page-note{font-size:10px;margin-top:7px}}
@media(max-width:540px) and (orientation:portrait){.portrait-note{display:block}.game-shell{aspect-ratio:4/5}.game-shell>canvas{object-fit:cover;object-position:72% center}.menu{padding:16px}.title-screen{width:83%}.title-logo{font-size:58px}.title-kicker{font-size:9px}.title-subtitle{font-size:10px;padding:6px 8px}.title-blurb{font-size:12px;margin:11px 0}.title-buttons .button{font-size:12px;min-height:43px}.title-features{font-size:9px;margin-top:14px}.title-profile{font-size:10px;margin-top:12px}.title-caption{display:none}.level-grid{grid-template-columns:1fr 1fr}.level-text h3{font-size:13px}.level-card canvas{aspect-ratio:2.7}.settings-grid,.profile-columns{grid-template-columns:1fr}.wardrobe-layout{grid-template-columns:1fr}.wardrobe-preview{display:none}.costume-grid{grid-template-columns:repeat(3,1fr)}.costume-card canvas{height:102px}.costume-card{font-size:10px}.comic-strip{grid-template-columns:1fr}.story-banner{height:80px}.comic-panel p{font-size:11px}.dialog-card{padding:15px}.helper-dialog{grid-template-columns:80px 1fr;gap:10px}.helper-dialog canvas{width:80px;height:130px}.hud .level-label{display:none}.hud-left{gap:6px}.game-footer p{max-width:55%}.help-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}.reduced-motion *{transition:none!important}
/* Fit a complete 16:9 playfield inside short phone/tablet landscape screens. */
@media(orientation:landscape) and (max-height:560px){
 .page{padding:0 6px}.site-bar{height:36px;min-height:36px}.brand{font-size:10px}.quiet-button{min-height:29px;padding:5px 8px;font-size:10px}.game-shell{height:calc(100dvh - 42px);width:min(100%,calc((100dvh - 42px)*16/9));margin:0 auto;aspect-ratio:16/9;border-radius:10px;border-width:2px;box-shadow:none}.game-shell:fullscreen{width:100vw;height:100dvh}.game-footer,.page-note,.portrait-note{display:none}.menu{padding:12px}.title-screen{padding:0 3px 0 5px;width:57%}.title-logo{font-size:clamp(32px,11dvh,55px);margin:0 0 7px}.title-kicker{font-size:7px;padding:4px 7px;margin-bottom:7px}.title-subtitle{font-size:8px;padding:4px 7px;margin:3px 0 7px}.title-blurb{font-size:10px;line-height:1.35;margin:0 0 9px}.title-buttons{gap:7px}.title-buttons .button{font-size:10px;min-height:33px;padding:5px 8px;border-radius:8px;border-width:1.5px;box-shadow:0 2px 0 var(--ink)}.title-features{font-size:7px;gap:7px;margin-top:9px}.title-profile{font-size:8px;margin-top:8px}.title-caption{font-size:8px;bottom:5%;padding:5px 8px}.title-caption strong{font-size:11px}.panel-header{margin-bottom:10px}.panel-header .eyebrow{font-size:8px}.panel-header h2{font-size:21px}.panel-header p{font-size:10px}.level-card canvas{aspect-ratio:3.2}.level-text{padding:6px 8px}.level-text h3{font-size:13px}.level-place{font-size:8px}.level-text p,.level-status{font-size:9px}.level-grid{gap:9px}.map-note{font-size:9px;margin-top:11px}.dialog-card{padding:16px;max-height:calc(100% - 8px);overflow:auto}.dialog-card h2{font-size:23px}.comic-panel{padding:9px}.comic-panel p{font-size:10px}.comic-panel strong{font-size:9px}.story-banner{height:65px;margin:3px 0 10px}.dialog-actions{margin-top:12px}.dialog-actions .button{font-size:11px;min-height:35px;padding:7px 10px}.result-wardrobe{grid-template-columns:80px 1fr;padding:8px;gap:12px}.result-wardrobe canvas{width:80px;height:110px}.result-wardrobe h3{font-size:19px}.result-wardrobe p{font-size:11px}.result-ending{font-size:11px!important}.helper-dialog{grid-template-columns:100px 1fr;gap:12px}.helper-dialog canvas{width:100px;height:140px}.helper-dialog p{font-size:12px}.hud{inset:7px 9px auto}.hud-left{gap:6px}.hearts{padding:5px 6px;gap:2px}.hearts span{font-size:18px}.mango-counter{font-size:14px;padding:5px 7px;gap:4px}.mango-counter>span:first-child{font-size:20px}.level-label{font-size:10px;padding:5px 9px}.pause-button{width:38px;height:35px;font-size:18px}.boss-hud{top:53px;padding:5px 12px}.touch-controls{inset:auto 9px 10px}.touch-controls>div{gap:8px}.touch-controls button{width:50px;height:48px}.touch-controls .touch-jump{width:60px;height:57px}.touch-controls .touch-spin{width:48px;height:48px}.toast{font-size:10px;padding:8px 10px}.has-touch .toast{bottom:77px}
}
@media(orientation:portrait) and (max-width:540px){.game-shell.has-world{aspect-ratio:16/9}.game-shell.has-world>canvas{object-fit:contain}.game-shell.has-world .level-label{display:none}.game-shell.has-world .touch-controls button{width:44px;height:44px}.game-shell.has-world .touch-controls .touch-jump{width:48px;height:48px}.game-shell.has-world .touch-controls .touch-spin{width:44px;height:44px}}
