/* Illustrated menus with real, accessible controls. */
body>main{padding:0;max-width:1600px}body>main>header,body>main>footer{display:none}
.game{border:0;border-radius:0;box-shadow:none;margin:auto;min-height:0}
#mainMenu{position:absolute;inset:0;z-index:12;background-size:100% 100%;background-position:center;touch-action:manipulation;overflow:auto}
.in-menu .hud,.in-menu .powers,.in-menu .touch,.in-menu #toast{visibility:hidden}
.menu-title-link{position:absolute;left:0;top:0;width:43%;height:27%}
.menu-wallet{position:absolute;right:3%;top:3%;padding:5px 18px;border:2px solid #f5c85c;border-radius:40px;background:#312418ed;color:#fff7d7;font-size:clamp(15px,2.7vw,38px);font-weight:900}
.menu-actions{position:absolute;left:47%;top:27%;width:30%;display:grid;gap:clamp(5px,1vw,16px)}
.menu-actions button,#menuPanelContent>button{background:linear-gradient(130deg,#145858ed,#082c30ed);border:3px solid #3b9190;border-radius:18px;color:#fff9df;font-weight:950;font-size:clamp(17px,3vw,46px);padding:clamp(5px,1.1vw,18px);box-shadow:0 3px 5px #0005;min-height:44px;letter-spacing:.5px}
.menu-actions button span{display:inline-block;width:24%;text-align:center}.menu-actions button.gold{background:linear-gradient(#ffe794,#ffbf24);color:#352209;border-color:#8e580d;outline:3px solid #ffdf70}
.menu-progress{justify-self:center;background:#173339e6;border:2px solid #e1b452;border-radius:40px;padding:4px 15px;font-weight:800;font-size:clamp(10px,1.5vw,23px);color:#fff1c9}
#menuSubpanel{position:absolute;left:46%;right:4%;top:19%;bottom:5%;padding:18px;background:#0d3538f0;border:3px solid #efc765;border-radius:20px;overflow:auto}
#menuSubpanel h2{margin:0 0 15px 50px;color:#ffdb73;font-size:clamp(20px,3vw,40px)}.round-back{background:#38270e;border:2px solid #f5c85c;border-radius:50%;width:42px;height:42px;position:absolute;top:12px;left:12px;color:#fff5cc}
.menu-levels{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}#menuPanelContent.menu-levels>button{padding:6px;font-size:clamp(14px,2vw,26px);border-radius:10px}.menu-levels button:disabled{opacity:.4}
.menu-settings{display:grid;gap:14px}#menuPanelContent.menu-settings>button{font-size:clamp(16px,2vw,26px)}.menu-settings p{line-height:1.6;font-size:clamp(12px,1.4vw,20px);color:#fff0d0}
#manager.painted-store{width:min(100vw,1600px);max-width:100vw;height:min(100dvh,900px);max-height:100dvh;margin:auto;border:0;border-radius:0;padding:clamp(12px,2vw,32px);color:#fff6d6;background:linear-gradient(#113b3d55,#143b3d66),var(--store-background) center/cover;overflow:auto}
#manager::backdrop{background:#071c24ed}#manager.painted-store .manager-head{border:0;margin:0;padding:0;display:flex;align-items:center;justify-content:flex-start;gap:20px;background:linear-gradient(105deg,#ffb642,#e98524 48%,transparent 49%)}
#manager.painted-store .manager-head>div{order:2}#manager.painted-store .manager-head small{display:none}#manager.painted-store h2{font-size:clamp(30px,5vw,72px);font-weight:1000;margin:0;color:#fff2c0;text-shadow:3px 3px #43260c, -1px -1px #43260c;letter-spacing:1px}
#closeManager{order:1;border:3px solid #ffe37a;border-radius:50%;background:#37250b;width:clamp(44px,5vw,72px);height:clamp(44px,5vw,72px);color:#fff5d9;font-size:30px}
#manager.painted-store .wallet{position:absolute;right:3%;top:3%;border:2px solid #ffc958;border-radius:30px;background:#342610;padding:8px 18px;font-size:0;margin:0}#manager.painted-store .wallet:before{content:'🪙';font-size:26px}#manager.painted-store .wallet strong{font-size:clamp(20px,3vw,38px);margin-left:10px;color:#fff6d9}
.store-tabs{display:flex;gap:12px;width:88%;margin:clamp(12px,2vw,24px) auto}.store-tabs button{flex:1;border:2px solid #388b89;border-radius:15px;background:#103c3eed;color:#fff9df;padding:12px 5px;font-size:clamp(13px,2.2vw,30px);font-weight:950}.store-tabs button[aria-pressed=true]{background:linear-gradient(#ffe989,#ffbe30);border-color:#784a0c;outline:2px solid #ffdc70;color:#2c200c}
#shopCards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}#manager.painted-store #shopCards article{display:flex;flex-direction:column;align-items:center;text-align:center;padding:10px;border:3px solid #ffd365;border-radius:24px;background:radial-gradient(ellipse at 50% 28%,#657443 0%,#103c3df5 53%);box-shadow:0 4px 8px #001b2490;min-width:0}
.item-art{display:block;width:100%;height:clamp(100px,17vw,255px);object-fit:contain}#manager.painted-store #shopCards h3{font-size:clamp(15px,1.9vw,28px);line-height:1.15;color:#fff8dc;margin:8px 0;font-weight:950}#manager.painted-store #shopCards p{font-size:clamp(12px,1.5vw,21px);line-height:1.35;color:#fff8dd;margin:2px 0}#manager.painted-store #shopCards small{font-size:12px;color:#e4d395;min-height:28px;padding:8px 0}
#manager.painted-store #shopCards button{margin-top:auto;width:100%;border:2px solid #885717;outline:2px solid #ffdf7b;border-radius:14px;background:linear-gradient(#ffe984,#ffbd26);color:#2a200d;font-size:clamp(13px,1.7vw,25px);font-weight:950;padding:12px 4px;min-height:44px}#manager.painted-store #shopCards button:disabled{background:#a58b4c;color:#fff1c9;opacity:.7;cursor:default}#manager.painted-store #storeContent{display:flex;flex-direction:column}#manager.painted-store .manager-note{order:2;text-align:center;color:#fff4d4;font-size:16px;margin:20px 0 0;text-shadow:0 2px 4px #173339}
@media(orientation:landscape) and (max-height:550px){.game{height:100dvh!important;min-height:0;aspect-ratio:auto}.menu-actions{top:25%;gap:7px}.menu-actions button{padding:6px;font-size:23px}.menu-progress{font-size:12px}#manager.painted-store{padding:10px 16px}#manager.painted-store h2{font-size:32px}.store-tabs{margin:10px auto;gap:8px}.store-tabs button{padding:7px;font-size:17px}.item-art{height:100px}#shopCards{gap:10px}#manager.painted-store #shopCards article{padding:6px;border-radius:16px}#manager.painted-store #shopCards h3{font-size:16px}#manager.painted-store #shopCards p{font-size:12px}#manager.painted-store #shopCards small{font-size:10px;padding:4px 0;min-height:20px}#manager.painted-store #shopCards button{padding:5px;font-size:14px}#manager.painted-store .manager-note{margin:8px 0;font-size:12px}}
@media(orientation:portrait){.game{height:100dvh!important;min-height:0}#mainMenu{background-size:auto 60%;background-position:top left;background-repeat:no-repeat;background-color:#103c3c}.menu-title-link{width:80%;height:20%}.menu-wallet{top:2%;right:3%;font-size:18px}.menu-actions{left:8%;top:53%;width:84%;gap:9px}.menu-actions button{font-size:23px;padding:9px}.menu-progress{font-size:14px}#menuSubpanel{inset:25% 5% 5%}#manager.painted-store #shopCards{grid-template-columns:repeat(2,minmax(0,1fr))}#manager.painted-store .wallet{top:17px;padding:5px 10px}#manager.painted-store h2{font-size:34px}.store-tabs{width:100%;gap:6px;margin:16px 0}.store-tabs button{font-size:12px;padding:10px 3px}.item-art{height:125px}#manager.painted-store #shopCards h3{font-size:16px}#manager.painted-store #shopCards p{font-size:13px}#manager.painted-store #shopCards button{font-size:14px}#manager.painted-store #shopCards article{padding:8px;border-radius:18px}}
#manager .store-tabs button{border:2px solid #388b89;border-radius:15px;background:#103c3eed;color:#fff9df;font-size:clamp(13px,2.2vw,30px);font-weight:950}
#manager .store-tabs button[aria-pressed=true]{background:linear-gradient(#ffe989,#ffbe30);border-color:#784a0c;color:#2c200c}
#manager #closeManager{border:3px solid #ffe37a;border-radius:50%;background:#37250b;color:#fff5d9;font-size:26px;padding:0}
.overlay{display:none!important}
@media(max-height:550px),(orientation:portrait){#manager .store-tabs button{font-size:15px;padding:7px 4px}.painted-store .wallet{max-height:45px}}
/* Quiet social footer: icons retain accessible names and generous touch targets. */
#homeSocial{position:absolute;left:2%;bottom:max(8px,env(safe-area-inset-bottom));width:42%;display:flex;flex-wrap:wrap;justify-content:center;gap:0 8px;color:#fff7e7;text-shadow:0 1px 3px #001c20}
#homeSocial a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:inherit;text-decoration:none;border-radius:50%;transition:color .15s,background .15s}
#homeSocial svg{width:22px;height:22px;fill:currentColor;filter:drop-shadow(0 1px 2px #001c20)}
#homeSocial a:hover{color:#ffdc70;background:#103c3c66}#homeSocial a:focus-visible{outline:2px solid #ffdc70;outline-offset:1px}
#homeSocial .developer-credit{flex-basis:100%;text-align:center;font-size:10px;line-height:1.4;color:#fff2d9}
#mainMenu:has(#menuSubpanel:not([hidden])) #homeSocial{display:none}
@media(orientation:portrait){#homeSocial{top:max(calc(53% + 310px),calc(100% - 78px));bottom:auto;left:5%;width:90%;padding-bottom:max(12px,env(safe-area-inset-bottom))}}
/* Small glossy brand badges, with the same 44px touch targets. */
#homeSocial a{position:relative;isolation:isolate;color:#fff}
#homeSocial a::before{content:'';position:absolute;inset:5px;border-radius:10px;z-index:-1;border:1px solid #ffffff66;box-shadow:inset 0 1px 1px #ffffffa0,0 2px 5px #00182080;background:#1877f2}
#homeSocial a::after{content:'';position:absolute;left:8px;right:8px;top:7px;height:13px;border-radius:7px 7px 50% 50%;background:linear-gradient(#ffffff80,#ffffff08);pointer-events:none}
#homeSocial a[data-platform=facebook]::before{background:linear-gradient(145deg,#49a8ff,#1877f2 55%,#0850ba)}
#homeSocial a[data-platform=instagram]::before{background:radial-gradient(circle at 25% 110%,#ffdc80 0%,#fcaf45 24%,#f77737 38%,#e1306c 58%,#c13584 72%,#833ab4 90%)}
#homeSocial a[data-platform=tiktok]::before{background:linear-gradient(145deg,#34343c,#08080d 65%)}
#homeSocial a[data-platform=tiktok] svg{filter:drop-shadow(-1px -1px 0 #25f4ee) drop-shadow(1px 1px 0 #fe2c55)}
#homeSocial a:hover{color:#fff;background:transparent}#homeSocial a:hover::before{box-shadow:inset 0 1px 2px #fff,0 0 10px #ffffff60,0 2px 5px #00182080}
#manager.painted-store #shopCards article.coming-soon{filter:grayscale(1);border-color:#758487;background:radial-gradient(ellipse at 50% 28%,#506063,#233536 70%);box-shadow:none}
#manager.painted-store .coming-soon .item-art{opacity:.55}#manager.painted-store .coming-soon h3{color:#c8d0d0}
#manager.painted-store .coming-soon p,#manager.painted-store .coming-soon small{display:none}
#manager.painted-store .coming-soon button:disabled{background:#475557;border-color:#68797b;outline-color:#879597;color:#d4dddd;opacity:1;cursor:default}
#manager.painted-store .character-placeholder h3{visibility:hidden}
