/* Turquoise dungeon stone, scarlet cloth, ivory and the prince's gold blade. */
:root{--stone:#173b40;--stone-deep:#0b2227;--stone-edge:#4c7476;--ivory:#f3edda;--sand:#d6ba7d;--scarlet:#b93b31;--soft-ink:#aac0bb;--palace-ease:cubic-bezier(.2,.75,.25,1)}
.topbar{background:linear-gradient(180deg,#081e25ed,#0c20294d 75%,transparent);padding-top:19px}
.topbar .account-pill,.topbar .top-button,.topbar .top-button:not(.square){position:relative;overflow:hidden;color:var(--ivory);background:linear-gradient(130deg,#214c50e6,#102c34db);border:1px solid #74968a6b;box-shadow:inset 0 1px 0 #eaf4d510,0 5px 18px #0003;transition:transform .35s var(--palace-ease),background .35s,border-color .35s,box-shadow .35s}
.topbar .account-pill{border-radius:22px 22px 10px 10px;outline:none;border-color:#c6ad6c99;box-shadow:inset 0 0 0 4px #112b31,0 5px 20px #0005;min-height:60px;padding:12px 22px}
.topbar .account-pill::before{content:'';position:absolute;left:0;top:20%;bottom:20%;width:3px;background:var(--scarlet);box-shadow:0 0 15px #c5403950}
.topbar .account-pill:hover,.topbar .top-button:hover,.topbar .top-button:not(.square):hover{transform:translateY(-3px);border-color:#c6cfa5;background:linear-gradient(130deg,#2c6061ef,#183e47ef);box-shadow:inset 0 1px 0 #eaf4d51a,0 10px 24px #0004}
.topbar .top-button::after{content:'';position:absolute;inset:0;transform:translateX(-130%) skewX(-20deg);background:linear-gradient(90deg,transparent,#e6ecce0d,transparent);transition:transform .65s var(--palace-ease);pointer-events:none}
.topbar .top-button:hover::after{transform:translateX(130%) skewX(-20deg)}
.topbar .top-button.square{border-radius:17px 17px 9px 9px;color:#d7d7b9;background:#123139d4;border-color:#75908a55}
.topbar .top-button.support{background:linear-gradient(140deg,#b84434,#812c28);border-color:#dda66c88;color:#fff0ce;box-shadow:inset 0 1px 0 #ffdb9b26,0 5px 20px #0004}
.topbar .top-button.support:hover{background:linear-gradient(140deg,#ce5140,#9c332d);border-color:#e5bd84}
.topbar .crown{color:#ebc580;display:flex;align-items:center}.topbar .crown svg{width:30px;height:30px;image-rendering:pixelated}
.topbar .online-dot,.network-light{background:#83bea3;box-shadow:0 0 10px #83bea333}.topbar .news-icon{color:#a4c5c0}.topbar #news-dot{background:#d6533f;box-shadow:0 0 0 3px #17373e}
#top-sound[aria-pressed=true],#sound[aria-pressed=true]{color:#eed099;border-color:#a9bc9d88;background:#284c48c9}
.oval-menu{background:linear-gradient(100deg,#163d43b8,#101e29a3);border-color:#83a4a146;box-shadow:inset 0 1px 0 #e7f4e00a;transition:transform .4s var(--palace-ease),border-color .35s,background .35s,box-shadow .35s}
.oval-menu:hover{background:linear-gradient(100deg,#26565bec,#15353fe6);border-color:#c4c9a4a6;box-shadow:0 10px 35px #0003,inset 0 1px 0 #e7f4e00e}
.oval-menu.featured{background:linear-gradient(100deg,#b33b30ef,#7f302ce8);border-color:#d2a86d9e;color:#fff0d3}.oval-menu.featured:hover{background:linear-gradient(100deg,#c94a39,#96362e);border-color:#efcd94}
.menu-symbol{color:#dcc68d}.menu-heading{color:#a5c1ba}.controls-link{color:#c8c9b0}
.sheet{background:#06171bba;backdrop-filter:blur(14px)}
.sheet-card{background:radial-gradient(ellipse at 12% 0,#37626477,transparent 65%),linear-gradient(135deg,#1b4146,#102a31 75%);color:var(--ivory);border:1px solid #81958a;border-radius:30px 30px 13px 13px;box-shadow:0 35px 110px #000a,inset 0 0 0 5px #102a31,inset 0 0 0 6px #8eaa9133;padding:38px 40px;isolation:isolate;animation:palace-panel-in .4s var(--palace-ease) both}
.sheet-card::before,.sheet-card::after{content:'';top:16px;width:11px;height:11px;border:1px solid #bbac73;transform:rotate(45deg);background:#346066;box-shadow:inset 0 0 0 3px #14363c}.sheet-card::before{left:19px}.sheet-card::after{right:19px}
.sheet-heading{padding-bottom:25px;margin-bottom:27px;border-bottom-color:#9cb9a333}
.sheet-heading::after{background:#21484a;color:#c1b37d;font-size:8px;padding:0 15px}
.sheet-heading h2{font:16px/1.8 var(--pixel);letter-spacing:0;color:var(--ivory);text-shadow:0 2px 0 #071b22;margin:0;padding-right:110px}
.sheet-heading #close-sheet{top:-18px;right:-20px;border-radius:12px 12px 7px 7px;background:#0a2028;color:#97b0ab;border:1px solid #64817a66;font:8px/1.6 var(--pixel);min-height:38px;padding:10px 12px;box-shadow:none;transition:color .25s,background .25s,transform .3s var(--palace-ease)}
.sheet-heading #close-sheet:hover{color:#f3dfb8;background:#4a2d2d;transform:translateY(-2px);border-color:#a76553}
.sheet-tabs{border-right-color:#93b4a52b;padding-right:21px}
.sheet-tabs button{border-radius:14px 14px 5px 5px;font:9px/1.8 var(--pixel);color:#a8bfba;border-color:transparent;padding:15px 13px;transition:transform .35s var(--palace-ease),background .35s,color .35s,border-color .35s}
.sheet-tabs button::before{content:'';position:absolute;left:0;top:30%;bottom:30%;width:2px;background:#d3af77;transform:scaleY(0);transition:transform .35s var(--palace-ease)}
.sheet-tabs button:hover{background:#7da59c12;border-color:#a4bfaa33;transform:translateX(4px);color:#e8e4cc}
.sheet-tabs button.active{background:linear-gradient(100deg,#af3d31,#78312ed9);color:#fff0d4;border-color:#c28b5c66;box-shadow:0 6px 15px #071b2333,inset 0 1px 0 #efc58d19}.sheet-tabs button.active::before{transform:scaleY(1)}
.sheet-body{color:#d9e0cf;animation:palace-content-in .3s var(--palace-ease) both}.sheet-body h3{font:13px/1.9 var(--pixel);color:#d8c28d;letter-spacing:0}.sheet-body p,.sheet-body .about-line{color:#a9c1ba;line-height:1.9}
.setting-row{border-color:#94b6a629;transition:background .3s,transform .3s var(--palace-ease);border-radius:6px;padding:22px 8px}.setting-row:hover{background:#82b8a60a;transform:translateX(2px)}
.setting-row strong{color:#ebedda;font-weight:500}.setting-row small{color:#99b6af;font-size:11px;line-height:1.8}
.setting-row input[type=checkbox]{border-color:#7e9e9066;background:#0c272d;box-shadow:inset 0 2px 6px #0004;transition:background .3s,border-color .3s}.setting-row input[type=checkbox]::before{background:#a4b9a7;box-shadow:0 2px 5px #0004;transition:transform .35s var(--palace-ease),background .3s}.setting-row input[type=checkbox]:checked{background:#a33a30;border-color:#d2aa78}.setting-row input[type=checkbox]:checked::before{background:#f4e6c4}
.setting-row input[type=range]{appearance:none;height:5px;border-radius:99px;background:linear-gradient(90deg,#a54034,#5a8580);accent-color:#e8cd94;cursor:pointer}.setting-row input[type=range]::-webkit-slider-thumb{appearance:none;width:16px;height:16px;border:3px solid #ead8af;background:#b64234;border-radius:50%;box-shadow:0 0 0 3px #0b252a77,0 2px 8px #0005;transition:box-shadow .25s,transform .25s}.setting-row input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.15);box-shadow:0 0 0 5px #d6bd7822,0 2px 8px #0005}
.sheet-body input[type=text],.sheet-body input[type=email],.sheet-body select{color:#f1e8cf;background:#0b242ad4;border:1px solid #6a91837d;box-shadow:inset 0 2px 6px #0002;border-radius:10px;transition:border-color .3s,box-shadow .3s}.sheet-body select option{background:#15343c;color:#eee5ca}
.sheet-body input:focus,.sheet-body select:focus{outline:none;border-color:#d2bd87;box-shadow:0 0 0 3px #d2bd8714}
.sheet-body .primary{font:9px/1.9 var(--pixel);background:linear-gradient(125deg,#b84635,#8a302b);border:1px solid #cf9f69;color:#fff0d1;box-shadow:inset 0 1px 0 #f4d39720,0 5px 15px #0002;border-radius:99px;transition:transform .3s var(--palace-ease),box-shadow .3s,background .3s}.sheet-body .primary:hover{background:linear-gradient(125deg,#c84f3d,#a43b30);transform:translateY(-2px);box-shadow:0 8px 22px #0004}
.sheet-body .notice{color:#d4c7a7;background:#b6894411;border-color:#b3975b55;border-left:2px solid #c6aa70;border-radius:6px}.sheet-body label.account-edit{color:#c2d1bf}.sheet-body a{color:#d8bb7f}.control-table td{border-color:#82a6992b;color:#becfc1}.control-table td:first-child{color:#e2c78e;font-weight:500}.news-entry{border-color:#8aa7992b}.news-entry time{color:#cfb276}
.account-session-actions button,.sheet-body .secondary,.battle-actions .secondary{color:#c9d6c4;background:#305b5230;border-color:#7d9f8455;transition:transform .3s var(--palace-ease),background .3s,color .3s}.account-session-actions button:hover,.sheet-body .secondary:hover{transform:translateY(-2px);background:#51826e33;color:#f4e2ba}#account-logout{color:#d59b83;border-color:#a5685066}
.server-card{background:#254b4c88;color:#e0d5b3;border-color:#91a79055}.server-card strong{color:#e2c58b}.server-card:hover{background:#356462b3}.server-card.active{background:linear-gradient(120deg,#a83b32,#702c29);color:#fce6bc;border-color:#bc9f6d}.private-code{background:#16383d;border-color:#8ca785;color:#d3c89d}.roster-title,.roster-player strong{color:#e4cc97}.roster-player small,.channel-help,.roster-empty{color:#a5bcb0!important}.roster-player{border-color:#8ba8952b}.online-options{border-color:#8ba89533}.private-row .secondary{color:#d6c395;background:#294b43;border-color:#83997b66}
.phase-intro{color:#a7c1b6}.phase-card{background:#0d282f;border-color:#70938766}.phase-card:not(:disabled):hover{border-color:#e0c68e}.phase-one-entry .sword-start{color:#a9c1af;background:#5b7a5622;border-color:#8ca77b55}.phase-one-entry .sword-start[aria-pressed=true]{color:#f2d69a;background:#a63c2b33;border-color:#ba9c63}.phase-one-entry .sword-start:hover{color:#fff0c7}
.battle-rules,.battle-room-list{color:#aac3b9}.battle-code,.battle-queue-status{color:#e0c58b}.battle-player strong{color:#ead5aa}.battle-player span{color:#a9c0b2}.battle-player{border-color:#90a99433}.battle-actions #battle-search,.battle-actions #battle-start,.battle-actions #battle-again{background:#a63c30;color:#fff0cf;border-color:#bc9b63}
#identity-gate{background:radial-gradient(ellipse at 50% 10%,#1d464fbd,#07141bed 70%);backdrop-filter:blur(14px)}
.identity-card{width:min(520px,100%);border-radius:48px 48px 14px 14px;border-color:#8ca38c;background:radial-gradient(ellipse at top,#345f63a6,transparent 65%),linear-gradient(145deg,#1b4149,#0c252e);box-shadow:0 30px 100px #0008,inset 0 0 0 5px #12313a,inset 0 0 0 6px #73978b33;color:#ebead6;padding:42px 38px 30px;animation:palace-panel-in .5s var(--palace-ease) both}
.identity-card::before{content:'';position:absolute;top:0;left:calc(50% - 28px);width:56px;height:4px;border-radius:0 0 4px 4px;background:#bb4836;box-shadow:0 3px 18px #bb483644}.identity-card::after{content:'';position:absolute;top:22px;left:calc(50% - 5px);width:9px;height:9px;transform:rotate(45deg);border:1px solid #c9b482;background:#325c60}
.identity-card h2{font:27px/1.4 var(--inscription);letter-spacing:.3px;color:#f1e5c3;text-shadow:0 2px 0 #071e26}.identity-card>p{color:#a5c0b8;line-height:1.9}.identity-card .eyebrow{color:#bda97c;font-size:8px;letter-spacing:2px;margin-top:12px}
.identity-tabs{gap:6px;border-bottom:1px solid #8da9973b;padding-bottom:16px}.identity-tabs button{border-radius:14px 14px 5px 5px;color:#b2c8bd;border-color:transparent;font-size:11px;transition:background .3s,transform .3s var(--palace-ease),color .3s}.identity-tabs button:hover{transform:translateY(-2px);background:#83a78916}.identity-tabs button.active{background:linear-gradient(120deg,#ab3d32,#7b302e);border-color:#c59e7066;color:#ffedcc}
.identity-card label{color:#c9d5c2;gap:9px;margin:19px 0}.identity-card input{border-color:#658f8277;background:#091f29a8;color:#f1e9d2;border-radius:12px;box-shadow:inset 0 2px 7px #0003;padding:13px 14px;transition:border-color .3s,box-shadow .3s,background .3s}.identity-card input:focus{outline:none;border-color:#cfbe8b;background:#0c2b34;box-shadow:0 0 0 3px #cfbe8b14}
.identity-card .primary{font:9px/1.8 var(--pixel);letter-spacing:0;border-color:#d0a16d;background:linear-gradient(110deg,#b94433,#8f302b);color:#ffefd0;box-shadow:inset 0 1px 0 #f3d79626,0 5px 18px #0003;transition:transform .3s var(--palace-ease),background .3s,box-shadow .3s}.identity-card .primary:hover{transform:translateY(-2px);background:linear-gradient(110deg,#ce503d,#a23a2e);box-shadow:0 9px 23px #0004}
#identity-google{color:#e9e8d6;background:#28545677;border-color:#86a4936b;transition:background .3s,transform .3s var(--palace-ease)}#identity-google:not(:disabled):hover{transform:translateY(-2px);background:#3b6b6566}#identity-close{color:#acc4b7;right:22px;top:16px}.identity-divider{color:#88a396}#identity-guest-warning{background:#ae783c12;border-left-color:#cfaa6f;color:#d8c49c}#identity-legacy,#identity-switch{color:#b4c9b9}#identity-legacy:hover,#identity-switch:hover{color:#edd69e}#identity-error{color:#efaa8b}#guest-session-notice{background:#103039e6;color:#d4c592;border-color:#839b6e44}
@keyframes palace-panel-in{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes palace-content-in{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:1000px){.topbar .account-pill{padding:10px 16px;min-height:52px}.sheet-heading h2{font-size:14px}.sheet-card{padding:32px}}
@media(max-width:750px){.topbar .account-pill{min-height:46px;border-radius:18px 18px 8px 8px;padding:9px 13px}.topbar .crown svg{width:24px;height:24px}.sheet-card{padding:28px 22px;border-radius:25px 25px 10px 10px}.sheet-heading h2{font-size:12px;padding-right:80px;line-height:1.9}.sheet-heading #close-sheet{top:-13px;right:-9px;font-size:6px;min-height:32px;padding:8px}.sheet-tabs{border-right:0;border-bottom-color:#92ac9b33;padding:0 0 17px;gap:6px}.sheet-tabs button{font-size:7px;padding:11px 9px}.sheet-body h3{font-size:11px}.identity-card{padding:37px 25px 25px;border-radius:36px 36px 12px 12px}.identity-card h2{font-size:23px}.identity-card .primary{font-size:8px}.setting-row{padding:18px 3px}}
@media(prefers-reduced-motion:reduce){.sheet-card,.sheet-body,.identity-card{animation:none}.topbar .account-pill,.topbar .top-button,.oval-menu,.sheet-tabs button,.setting-row,.identity-tabs button,.identity-card input,.identity-card .primary,.sheet-body .primary,.account-session-actions button{transition:none}.topbar .account-pill:hover,.topbar .top-button:hover,.sheet-tabs button:hover,.setting-row:hover,.identity-tabs button:hover,.identity-card .primary:hover,.sheet-body .primary:hover{transform:none}}

.sheet-card::after{top:auto;bottom:17px;right:18px}
/* Prince99: centered palace wordmark. */
.cinema-menu .title{width:100%;text-align:center;justify-self:center;display:grid;place-items:center}
.cinema-menu .title h1{font-family:PalaceInscription,Georgia,serif;font-weight:700;font-size:clamp(48px,6.8vw,104px);line-height:1.15;letter-spacing:.035em;text-align:center;margin:0;padding:.15em 0;color:#f3dfaa;background:linear-gradient(180deg,#fff5d8 10%,#e5c47e 58%,#b88142 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 3px 0 #301e16) drop-shadow(0 9px 22px #0008)}
@media(max-width:750px){.cinema-menu .title h1{font-size:clamp(44px,11vw,72px)}}
/* Prince99 console-era interface: jewel colors, pixel lettering and beveled frames. */
:root{--psx-cyan:#68f4ed;--psx-gold:#ffe47e;--psx-pink:#ff76af;--psx-ink:#10132e}
.cinema-menu .title h1{font-family:var(--pixel);font-size:clamp(30px,4.7vw,72px);line-height:1.5;letter-spacing:-.055em;background:none;-webkit-text-fill-color:initial;color:#fff0ab;filter:none;text-shadow:3px 3px 0 #ab496b,6px 6px 0 #182b54,0 0 28px #ffc46844}
.cinema-menu .title::after{content:'';width:100px;height:4px;margin:16px auto 0;background:linear-gradient(90deg,#68f4ed 0 33%,#ff76af 33% 66%,#ffe47e 66%);box-shadow:0 3px 0 #0008}
.menu-heading{color:#83f5ed;text-shadow:2px 2px #10132e}.menu-version{color:#d2c1ee}.oval-menu{font-family:var(--pixel);color:#f1ecff;background:linear-gradient(135deg,#30316be8,#151c3ee8);border:2px solid #8e90c6;border-radius:5px 22px 5px 22px;box-shadow:inset 2px 2px 0 #b9caff2b,inset -3px -3px 0 #080e29,4px 5px 0 #070c21a6;transition:transform .25s ease,border-color .25s,box-shadow .25s,background .25s}
.oval-menu.featured{background:linear-gradient(120deg,#8a285d,#42316c);border-color:#ff99c0;color:#fff1bd}.oval-menu .menu-symbol{color:#70f7e8;text-shadow:2px 2px #15132f}.oval-menu.featured .menu-symbol{color:#ffe47e}.oval-menu:hover,.oval-menu:focus-visible{transform:translateX(7px);border-color:#7fffee;background:linear-gradient(120deg,#384782,#22274e);box-shadow:inset 2px 2px 0 #b9caff30,inset -3px -3px 0 #080e29,0 0 22px #68f4ed25,4px 5px 0 #070c21a6}.oval-menu small{color:#c1b4db}
.topbar .account-pill,.topbar .top-button,.topbar .top-button:not(.square){font-family:var(--pixel);background:linear-gradient(135deg,#282b50ed,#131b32ed);color:#e6edff;border:2px solid #7985ad;border-radius:5px 14px 5px 14px;box-shadow:inset 2px 2px 0 #c5d5ff20,inset -2px -2px 0 #060b1c,3px 3px 0 #080c23a6}.topbar .account-pill{border-color:#83f0dc}.topbar .account-pill::before{background:#68f4ed}.topbar .top-button.support{background:linear-gradient(135deg,#a63b73,#672d64);border-color:#ff9ac5;color:#fff1b6}.topbar .top-button:hover,.topbar .account-pill:hover{border-color:#8dfcef;box-shadow:inset 2px 2px 0 #c5d5ff30,0 0 16px #68f4ed24,3px 3px 0 #080c23a6}
.sheet-card,.identity-card{background:linear-gradient(140deg,#293253f7,#171a36fa 65%,#2c2346fa);border:2px solid #9aa9cb;border-radius:6px 24px 6px 24px;box-shadow:inset 3px 3px 0 #cad9ff25,inset -4px -4px 0 #080b20,0 22px 80px #0009;color:#eff1ff}.sheet-card::before{border-color:#7d9dc036}.sheet-card::after,.identity-card::after{background:#ff86b5;border-color:#ffd68d}.identity-card::before{background:#70f4e3}.sheet-heading h2,.identity-card h2{font-family:var(--pixel);color:#ffe394;text-shadow:2px 2px #8a3c6a;letter-spacing:0}.identity-card h2{font-size:20px;line-height:1.8}.sheet-body h3{color:#86f5e2}.sheet-body,.sheet-body p,.identity-card>p{color:#cbd6eb}.sheet-tabs button,.identity-tabs button{border-radius:4px 10px 4px 10px;color:#c8d9f6;background:#161d39;border-color:#647393}.sheet-tabs button.active,.identity-tabs button.active{color:#fff0aa;background:linear-gradient(120deg,#803667,#403464);border-color:#ff90bf;box-shadow:inset 2px 2px 0 #ffffff15,0 0 14px #ff76af18}.sheet-tabs button.active::after{background:#6ef7df}.sheet-tabs button:hover,.identity-tabs button:hover{color:#8affea;border-color:#88f8e8}
.sheet-body .primary,.identity-card .primary{background:linear-gradient(120deg,#954070,#563667);border:2px solid #ff97bb;border-radius:4px 12px 4px 12px;color:#fff0ab;box-shadow:inset 2px 2px 0 #ffd4ed33,inset -2px -2px 0 #391e45,3px 3px 0 #0a1026}.sheet-body .primary:hover,.identity-card .primary:hover{background:linear-gradient(120deg,#b44a80,#71427d);border-color:#ffe395}.sheet-body input[type=text],.sheet-body input[type=email],.sheet-body select,.identity-card input{background:#0d1531;color:#edeeff;border-color:#7989b0;border-radius:4px;box-shadow:inset 2px 2px 0 #060b1e}.identity-card input:focus,.sheet-body input:focus{border-color:#7cf5dd;box-shadow:0 0 0 3px #68f4ed16}.setting-row strong{color:#e8efff}.setting-row small{color:#a5b9d8}.setting-row input[type=range]{background:linear-gradient(90deg,#ff82b4,#6ef4de)}.setting-row input[type=checkbox]:checked{background:#257e7e;border-color:#76f6df}.setting-row input[type=checkbox]:checked::before{background:#bdffee}.sheet-body .notice{background:#e6b95710;color:#f0d69c;border-color:#d8b56a66}.controls-link{color:#b9d5fa}
@media(max-width:750px){.cinema-menu .title h1{font-size:clamp(29px,8vw,50px)}.identity-card h2{font-size:16px}.sheet-card,.identity-card{border-radius:5px 18px 5px 18px}}
@media(prefers-reduced-motion:reduce){.oval-menu:hover,.oval-menu:focus-visible{transform:none}}
/* Consistent console typography and frames across secondary menus. */
.sheet-body,.sheet-body p,.sheet-body label,.sheet-body button,.sheet-body input,.sheet-body select,.identity-card,.identity-card p,.identity-card label,.identity-card input,.identity-card button,.identity-card a,.identity-card small,.control-table td{font-family:var(--pixel);font-size:9px;line-height:2.15;letter-spacing:0}
.sheet-body .setting-row strong{font-size:10px;line-height:2}.sheet-body .setting-row small{font:8px/2.1 var(--pixel);margin-top:7px}.sheet-body p{font-size:9px;line-height:2.25}.sheet-body .about-line{font-size:8px!important}.sheet-body label.account-edit{font:9px/2 var(--pixel)}.sheet-body input[type=text],.sheet-body input[type=email],.sheet-body select{font:10px/2 var(--pixel)}.identity-card input{font-size:11px}.identity-card label{font-size:9px}.identity-tabs button{font-size:8px}.identity-card>p{font-size:9px}.identity-card .eyebrow{font-family:var(--pixel);font-size:7px;letter-spacing:0}.identity-divider{font-size:8px}.identity-card small{font-size:8px}.control-table td:first-child{font-family:var(--pixel);font-size:8px;width:38%}.control-table td{padding:13px 10px}.sheet-body h3{font-size:12px;line-height:2}
.sheet-body .secondary,.account-session-actions button,.settings-session-actions button,.private-row .secondary,#identity-google,.dialog .primary,.dialog .secondary{font-family:var(--pixel);font-size:8px;line-height:2;border:2px solid #7589b0;border-radius:3px 10px 3px 10px;background:linear-gradient(135deg,#2b3659,#171e38);color:#dbe9ff;box-shadow:inset 2px 2px 0 #c5dcff20,inset -2px -2px 0 #080d22,2px 3px 0 #060b1e;transition:background .2s,border-color .2s,transform .2s}.sheet-body .secondary:hover,.account-session-actions button:hover,.settings-session-actions button:hover,#identity-google:not(:disabled):hover{border-color:#7cf6e1;background:#33466b;color:#a0ffec}.sheet-body .notice,#identity-guest-warning{border-radius:3px;border:1px solid #dbbc6b;border-left:4px solid #ffe394;background:#3c334440;color:#ffe5a7;font:8px/2.25 var(--pixel);box-shadow:inset 1px 1px 0 #fff1a715}.server-card,.private-code,.phase-card,.battle-room-list,.battle-rules,.dialog{border-radius:4px 12px 4px 12px;border-color:#7e90ba;background-color:#151d38;box-shadow:inset 2px 2px 0 #b4ccff1a,inset -2px -2px 0 #090d23}.server-card strong,.roster-title,.battle-code,.battle-queue-status{color:#ffe394}.server-card.active{background:linear-gradient(120deg,#793963,#39375e);border-color:#ff93bb}.server-card:hover{background:#303c61}.private-code{color:#8effe5}.roster-player,.battle-player{border-color:#839bc333}.phase-card:not(:disabled):hover{border-color:#7dffe2}.dialog h2{font:18px/1.8 var(--pixel);color:#ffe394}.dialog p{font:9px/2.2 var(--pixel);color:#d1dcf0}.sheet-heading #close-sheet{border-radius:3px 9px 3px 9px;background:#10172d;border:2px solid #6f7c9d;color:#c6d3ed}.sheet-heading #close-sheet:hover{color:#fff0af;border-color:#ff91b7}.sheet-card::after,.identity-card::after{transform:none;width:8px;height:8px;box-shadow:3px 3px 0 #121a32}.sheet-card::before{border-radius:2px 16px 2px 16px}
@media(max-width:750px){.sheet-body p,.sheet-body,.control-table td{font-size:8px}.sheet-body .setting-row strong{font-size:9px}.sheet-body .setting-row small{font-size:7px}.sheet-body h3{font-size:10px}.identity-tabs button{font-size:7px}.identity-card input{font-size:10px}.control-table td{padding:10px 5px}.sheet-body select{max-width:48%;font-size:8px}}
.sheet-card::before{transform:none;width:8px;height:8px;background:#78f5df;border-color:#bcfff2;box-shadow:3px 3px 0 #121a32}.sheet-heading::after{content:"◆ ◆ ◆";background:#222640;color:#8ff5df;font-family:var(--pixel);font-size:6px;letter-spacing:6px}.sheet-tabs button.active::before{background:#8affe4}.setting-row input[type=range]::-webkit-slider-thumb{background:#ff83b3;border-color:#fff0ab;border-radius:2px}.setting-row input[type=checkbox],.setting-row input[type=checkbox]::before{border-radius:3px}
#exit-game{display:none}body.playing .topbar #exit-game{display:inline-flex;order:3;color:#ffb0c9}#exit-game svg{width:24px;height:24px}#exit-confirm{position:fixed;inset:0;margin:auto;width:min(500px,calc(100vw - 32px));color:#e6edff;background:linear-gradient(140deg,#293253,#171a36);border:2px solid #9aa9cb;padding:30px;z-index:50}#exit-confirm::backdrop{background:#070b1a99;backdrop-filter:blur(4px)}#exit-confirm h2{font-size:16px;line-height:2}.exit-confirm-actions{display:flex;gap:12px;flex-wrap:wrap}.exit-confirm-actions button{flex:1;min-width:150px;margin:0;padding:14px 10px;justify-content:center}#exit-confirm[open]{animation:palace-panel-in .2s ease-out}@media(prefers-reduced-motion:reduce){#exit-confirm[open]{animation:none}}
/* PSX chat frame; resize grows from the upper-left with its bottom-right anchored. */
.playing #chat-game{resize:none;border:2px solid #8195bd;border-radius:3px 12px 3px 12px;background:rgba(18,23,48,var(--chat-alpha));box-shadow:inset 2px 2px 0 #c6dcff25,inset -2px -2px 0 #070c25,3px 4px 0 #05091966}
.playing #chat-game:hover,.playing #chat-game:focus-within{border-color:#89ddd9}.playing #chat-game .chat-head{height:26px;min-height:26px;padding:3px 7px 3px 24px;background:linear-gradient(90deg,#647ba52b,#54457130);border-bottom:1px solid #99b4dc33}.playing #chat-game .chat-head>span{font:7px/2 var(--pixel);color:#a7c5e4;letter-spacing:0}.playing #chat-game .chat-head button{color:#c4dcf8;opacity:.8}.playing #chat-game .chat-tabs{border-color:#8295c044;background:#10183044;padding:3px;gap:3px}.playing #chat-game .chat-tabs button{font:8px/1.8 var(--pixel);color:#b7c9e6;padding:7px 10px;border:1px solid transparent;border-radius:2px 6px 2px 6px}.playing #chat-game .chat-tabs button.active{background:linear-gradient(120deg,#90416877,#49407688);color:#fff0ac;border-color:#e98eb7;box-shadow:inset 1px 1px 0 #ffffff20}.playing #chat-game .chat-tabs button:hover{color:#8effe5}.playing #chat-game .chat-form{border-color:#8ca2cf44;background:#080f2444;padding:5px}.playing #chat-game .chat-form input{font:8px/2 var(--pixel)!important;color:#f1edff!important}.playing #chat-game .chat-form input::placeholder{color:#9eafd0}.playing #chat-game .chat-form button{font:7px/2 var(--pixel);color:#8effe5;border-color:#849bc04d}.playing #chat-game .chat-messages{scrollbar-color:#7c91b0 transparent}.playing #chat-game .chat-adjustments{background:#1b2342f5;border:2px solid #859ac2;border-radius:3px 10px 3px 10px;color:#dce6ff;box-shadow:inset 2px 2px 0 #ffffff16,0 8px 20px #0006}.playing #chat-game .chat-adjustments label,.playing #chat-game .chat-adjustments p{font:8px/2 var(--pixel)}.playing #chat-game .chat-adjustments input{accent-color:#ff90bd}
.chat-resize-grip{display:none}.playing #chat-game:not(.chat-collapsed) .chat-resize-grip{display:grid;place-items:center;position:absolute;left:0;top:0;width:24px;height:24px;z-index:4;padding:3px;border:0;background:transparent;color:#89f4e4;cursor:nwse-resize;touch-action:none}.chat-resize-grip svg{width:16px;height:16px}.chat-resize-grip:hover{background:#72efdc22}.playing #chat-game.chat-resizing{user-select:none;transition:none;border-color:#8effe5}.playing #chat-game.chat-collapsed{border-color:transparent;background:transparent;box-shadow:none}.playing #chat-game.chat-collapsed .chat-head{border:0;background:transparent}.playing #chat-game.chat-collapsed .chat-form{border:1px solid #8299bf55;border-radius:3px 8px 3px 8px;background:rgba(18,23,48,.35)}
#modal:has(.quick-controls) .dialog{width:min(720px,100%);max-height:90dvh;overflow:auto;padding:28px}.quick-controls table{width:100%;border-collapse:collapse;margin:18px 0}.quick-controls tr{border-bottom:1px solid #a2b6e02b}.quick-controls th{width:37%;text-align:left;padding:13px 18px 13px 0;vertical-align:middle}.quick-controls kbd{display:inline-block;font:9px/1.9 var(--pixel);color:#92ffe8;background:#101b35;border:1px solid #8195bd;border-bottom-width:3px;border-radius:4px;padding:7px 9px;white-space:normal}.quick-controls td{font:15px/1.6 'Segoe UI',Arial,sans-serif;color:#f2f3ff;padding:13px 0}.dialog .quick-controls p{font:14px/1.8 'Segoe UI',Arial,sans-serif;color:#bacde8;margin:16px 0 22px}@media(max-width:500px){#modal:has(.quick-controls) .dialog{padding:20px}.quick-controls th{width:40%;padding-right:10px}.quick-controls kbd{font-size:7px;padding:6px}.quick-controls td{font-size:13px}.dialog .quick-controls p{font-size:13px}}
.battle-public-box,.battle-private-box{padding:22px;margin:18px 0;border:2px solid #8399c1;border-radius:4px 16px 4px 16px;background:linear-gradient(125deg,#293659aa,#171d39aa);box-shadow:inset 2px 2px 0 #c4d7ff18}.battle-public-box{border-color:#83eddb;background:linear-gradient(125deg,#23494f88,#28254caa)}.sheet-body .battle-public-box h3{color:#8bffe6}.sheet-body .battle-private-box h3{color:#ffadd0}.sheet-body .battle-public-box p,.sheet-body .battle-private-box p,.sheet-body .battle-rules,.sheet-body .battle-queue-status,.battle-room-list{font:15px/1.75 'Segoe UI',Arial,sans-serif;color:#e0e9f9;max-width:none;letter-spacing:0;text-shadow:none}.battle-actions{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0}.battle-actions button{min-height:46px}.battle-actions input{min-width:0;width:220px;max-width:100%;font:14px/1.5 'Segoe UI',sans-serif!important;background:#10172e;color:#fff;border:1px solid #8b9fc1;border-radius:4px;padding:12px}.global-times{padding-left:30px}.global-times li{padding:14px 8px;border-bottom:1px solid #91a9ce44;font:15px/1.6 'Segoe UI',sans-serif}.global-times li span{float:right;font-variant-numeric:tabular-nums;color:#8cffe1}.battle-private-box .battle-room-list{margin-top:18px}@media(max-width:750px){.battle-public-box,.battle-private-box{padding:15px}.sheet-body .battle-rules,.sheet-body .battle-public-box p,.sheet-body .battle-private-box p{font-size:14px}.battle-actions button{width:100%}}
/* Console-style cosmetic selector. */
.sheet-body .avatar-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin:16px 0 30px}.sheet-body .avatar-option{position:relative;display:flex;justify-content:flex-start;gap:12px;min-height:58px;padding:13px 16px;border:2px solid #758bb5;border-radius:3px 12px 3px 12px;background:linear-gradient(135deg,#303d62,#171f3c);color:#e6eeff;font:9px/1.9 var(--pixel);box-shadow:inset 2px 2px 0 #cbdfff22,inset -3px -3px 0 #080e25,3px 4px 0 #080d22;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s}.sheet-body .avatar-option i{width:12px;height:12px;border-radius:1px;flex:none;border:1px solid #ffffff80;box-shadow:2px 2px 0 #080d22}.sheet-body .avatar-option:hover{transform:translateY(-3px);border-color:#8cffe7;background:linear-gradient(135deg,#3d5279,#222f50);color:#fff6c9;box-shadow:inset 2px 2px 0 #d8eeff33,inset -3px -3px 0 #080e25,0 0 18px #76f4df22,3px 6px 0 #080d22}.sheet-body .avatar-option.selected{border-color:#ff9ac3;background:linear-gradient(130deg,#8b3c6f,#493665);color:#fff0ad;box-shadow:inset 2px 2px 0 #ffe2ed30,inset -3px -3px 0 #352145,0 0 18px #ff83b422,3px 4px 0 #080d22}.sheet-body .avatar-option.selected::after{content:'';position:absolute;right:7px;top:7px;width:5px;height:5px;background:#8bffe4;box-shadow:0 0 6px #8bffe455}.sheet-body .avatar-preview{padding:20px;border:2px solid #7e94bb;border-radius:3px 14px 3px 14px;background:linear-gradient(135deg,#293754aa,#151c35aa);box-shadow:inset 2px 2px 0 #cbdfff18,inset -2px -2px 0 #080d22}.sheet-body .avatar-preview img{height:130px;filter:drop-shadow(4px 5px 0 #080d2280)}.sheet-body .avatar-preview p{font:14px/1.8 'Segoe UI',Arial,sans-serif;color:#dce7fa}.sheet-body:has(.avatar-options) .notice{font:13px/1.8 'Segoe UI',Arial,sans-serif;color:#f5dfaa;background:#343045;border-color:#b8a47a;box-shadow:inset 2px 2px 0 #fff3bf12;padding:16px 20px}@media(max-width:500px){.sheet-body .avatar-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.sheet-body .avatar-option{font-size:8px;padding:11px 10px;gap:8px}.sheet-body .avatar-preview{gap:15px;padding:15px}.sheet-body .avatar-preview p{font-size:13px}}@media(prefers-reduced-motion:reduce){.sheet-body .avatar-option{transition:none}.sheet-body .avatar-option:hover{transform:none}}
.sword-preview{display:flex;align-items:center;gap:24px;flex-wrap:wrap;border:2px solid #7e94bb;background:linear-gradient(135deg,#293754aa,#10172e);border-radius:3px 12px 3px 12px;padding:12px 18px;box-shadow:inset 2px 2px 0 #cbdfff18}.sword-preview canvas{width:240px;max-width:100%;height:auto;image-rendering:pixelated;filter:drop-shadow(3px 4px 0 #050a20)}.sword-preview strong{font:11px/2 var(--pixel);color:#ffe49c}.sheet-body .avatar-option .sword-option-image{width:44px;height:25px;object-fit:contain;image-rendering:pixelated;flex:none;filter:drop-shadow(2px 2px 0 #080d22)}
.sheet-body .avatar-preview,.sheet-body .sword-preview{display:flex;align-items:center;justify-content:center;min-height:170px;gap:0}.sheet-body .avatar-preview img{display:block;margin:0 auto}.sheet-body .sword-preview canvas{display:block;margin:0 auto}
.world-versions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.world-option{padding:16px;text-align:left;border:2px solid #7c91ba;border-radius:3px 12px 3px 12px;background:linear-gradient(135deg,#303d62,#171f3c);color:#e6eeff;box-shadow:inset 2px 2px 0 #cbdfff22,inset -3px -3px 0 #080e25;transition:transform .2s,border-color .2s}.world-option strong{display:block;font:9px/2 var(--pixel)}.world-option small{display:block;font:12px/1.6 'Segoe UI',sans-serif;margin-top:7px;color:#c1d5ed}.world-option.selected{background:linear-gradient(130deg,#8b3c6f,#493665);border-color:#ff9ac3;color:#fff0ad}.world-option:disabled{opacity:.38;cursor:default}.world-option:not(:disabled):hover{transform:translateY(-2px);border-color:#89ffe3}.sheet-body .world-intro{font:15px/1.8 'Segoe UI',Arial,sans-serif;color:#dfebff}@media(max-width:500px){.world-versions{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.world-option{transition:none}.world-option:not(:disabled):hover{transform:none}}
.skin-worlds{margin-top:32px;padding-top:22px;border-top:1px solid #8da9ce44}.skin-worlds .world-option{overflow:hidden;padding:0 0 14px}.skin-worlds .world-option img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;image-rendering:pixelated;border-bottom:2px solid #7287aa;margin-bottom:14px}.skin-worlds .world-option strong,.skin-worlds .world-option small{margin-left:14px;margin-right:14px}.sheet-body .world-preview-note{font:11px/1.8 'Segoe UI',sans-serif;color:#adbbd4}.skin-worlds .world-option.selected img{border-color:#ff9ac3}
.sheet-body .skin-worlds{margin:0;padding:0;border:0}.skin-worlds .world-option img{aspect-ratio:8/5;object-fit:contain;background:#000}.sheet-tabs:has(#skins-tab-appearance) button{white-space:normal;line-height:2.2;text-align:left}.sheet-card:has(.skin-panel) .sheet-body{min-width:0}.skin-worlds .world-option[data-world=segacd] small{color:#ffe394;font-weight:600}@media(max-width:750px){.sheet-tabs:has(#skins-tab-appearance){display:flex;flex-direction:column;align-items:stretch}.sheet-tabs:has(#skins-tab-appearance) button{text-align:left}}
.sheet-body .character-combination{font:13px/1.8 'Segoe UI',sans-serif;color:#b8f5ed;text-align:center;margin:14px 0 24px}.sheet-body .character-part-options{grid-template-columns:repeat(3,minmax(0,1fr))}.sheet-body .character-part-option{flex-direction:column;justify-content:center;min-height:128px;text-align:center;line-height:1.8;padding:16px 10px;gap:12px}.character-part-portrait{position:relative;display:block;overflow:hidden;width:64px;height:58px;flex:none;image-rendering:pixelated}.character-part-portrait img{position:absolute;width:auto;max-width:none;height:164px;left:50%;transform:translateX(-50%);image-rendering:pixelated}.character-part-portrait.head img{top:3px}.character-part-portrait.body{height:104px}.character-part-portrait.body img{bottom:0}.sheet-body .character-pending{margin:24px 0;border:1px solid #8192b55c;padding:14px 18px;background:#11162b66;color:#bdc7df}.character-pending summary{font:9px/2 var(--pixel);cursor:pointer;color:#b7cafa}.sheet-body .character-pending p{font:13px/1.7 'Segoe UI',sans-serif}.character-pending #character-catalog p{display:flex;justify-content:space-between;gap:16px;border-top:1px solid #8192b52b;padding-top:10px}.character-pending #character-catalog span{color:#9aa8bf;font-size:12px;text-align:right}.character-pending #character-catalog strong{color:#d0d9ec;font-weight:500}@media(max-width:550px){.sheet-body .character-part-options{grid-template-columns:repeat(2,minmax(0,1fr))}.character-pending #character-catalog p{flex-direction:column;gap:3px}.character-pending #character-catalog span{text-align:left}}

.character-part-portrait.head,.character-part-portrait.body{display:flex;align-items:center;justify-content:center;overflow:visible}.character-part-portrait.head img,.character-part-portrait.body img{position:static;transform:none;width:auto;max-width:100%;object-fit:contain}.character-part-portrait.head img{height:36px}.character-part-portrait.body img{height:104px}

.sheet-body .character-part-options.part-carousel{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;gap:16px;max-width:480px;margin:0 auto 26px}.part-carousel-stage{position:relative;overflow:hidden;min-height:152px;border:2px solid #9e8fbd;border-radius:3px 12px 3px 12px;background:linear-gradient(135deg,#45365c,#24263f);box-shadow:inset 2px 2px 0 #e7d8ff24,inset -3px -3px 0 #080e25}.part-carousel-choice{display:flex;min-height:152px;align-items:center;justify-content:center;flex-direction:column;gap:10px;padding:18px 12px;box-sizing:border-box}.part-carousel-choice strong{font:9px/1.9 var(--pixel);color:#fff0ad;text-align:center;overflow-wrap:anywhere}.part-carousel-choice small{font:11px/1.5 'Segoe UI',sans-serif;color:#afc8dc;letter-spacing:3px}.part-carousel-choice.part-carousel-exit{position:absolute;inset:0;pointer-events:none}.sheet-body .part-carousel-arrow{display:flex;align-items:center;justify-content:center;width:52px;height:64px;padding:0;border:2px solid #8299bf;border-radius:3px 10px 3px 10px;background:linear-gradient(135deg,#344460,#1a2039);color:#a4f5e6;font:42px/1 'Segoe UI',sans-serif;box-shadow:inset 2px 2px 0 #d2e5ff22,0 4px 0 #080d22;transition:transform .2s ease,border-color .2s ease,background .2s ease}.sheet-body .part-carousel-arrow:hover{transform:translateY(-2px);border-color:#ffd1e6;background:#553557}.sheet-body .part-carousel-arrow:active{transform:translateY(2px);box-shadow:inset 2px 2px 0 #d2e5ff22,0 1px 0 #080d22}.sheet-body .part-carousel-arrow:focus-visible{outline:2px solid #fff0ad;outline-offset:4px}.part-carousel-stage:has(.character-part-portrait.body),.part-carousel-choice:has(.character-part-portrait.body){min-height:192px}@media(max-width:500px){.sheet-body .character-part-options.part-carousel{grid-template-columns:40px minmax(0,1fr) 40px;gap:8px}.sheet-body .part-carousel-arrow{width:40px;height:56px}.part-carousel-choice strong{font-size:8px}}@media(prefers-reduced-motion:reduce){.sheet-body .part-carousel-arrow{transition:none}.sheet-body .part-carousel-arrow:hover{transform:none}}
/* Compact wardrobe: controls on the left, the assembled character on the right. */
.character-customizer{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:24px;align-items:start;margin-top:18px}.character-controls,.character-preview-column{min-width:0}.character-control-group{margin:0 0 20px}.sheet-body .character-control-group h3{margin:0 0 10px;font-size:11px}.character-preview-column{position:sticky;top:12px}.sheet-body .character-customizer .character-part-options.part-carousel{grid-template-columns:34px minmax(0,1fr) 34px;gap:8px;margin:0;max-width:none}.character-customizer .part-carousel-stage,.character-customizer .part-carousel-choice{min-height:100px}.character-customizer .part-carousel-choice{padding:10px 6px;gap:7px}.character-customizer .part-carousel-choice strong{font-size:8px;line-height:1.8}.character-customizer .part-carousel-choice small{font-size:10px;letter-spacing:2px}.character-customizer .part-carousel-stage:has(.character-part-portrait.body),.character-customizer .part-carousel-choice:has(.character-part-portrait.body){min-height:132px}.sheet-body .character-customizer .part-carousel-arrow{width:34px;height:44px;font-size:32px}.character-customizer .character-part-portrait.head{height:38px}.character-customizer .character-part-portrait.head img{height:28px}.character-customizer .character-part-portrait.body{height:72px}.character-customizer .character-part-portrait.body img{height:72px}.sheet-body .character-preview-column .avatar-preview{min-height:246px;padding:20px 12px}.sheet-body .character-preview-column .avatar-preview img{height:205px;width:auto;max-width:100%;object-fit:contain;image-rendering:pixelated}.sheet-body .character-preview-column .character-combination{margin:14px 0 18px;text-align:left}.sheet-body .character-combination p{display:grid;gap:6px;margin:0 0 12px;font:12px/1.6 'Segoe UI',sans-serif;color:#dbe9f9}.character-combination p strong{font:9px/1.7 var(--pixel);color:#ffe394;text-transform:uppercase;letter-spacing:1px}.character-combination p span{color:#bfeae7}.character-combination>small{font:11px/1.5 'Segoe UI',sans-serif;color:#9daec7}.sheet-body .character-preview-column .sword-preview{min-height:76px;padding:8px}.character-preview-column .sword-preview canvas{width:180px;max-width:100%}.sheet-body .character-controls .avatar-options:not(.character-part-options){grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sheet-body .character-controls .avatar-option{padding:10px 7px;min-height:42px;font-size:7px;gap:7px;line-height:1.8}.sheet-body .character-controls .avatar-option i{width:10px;height:10px;flex:none}.sheet-body .character-controls .sword-option-image{width:30px;height:18px}.sheet-body .character-palettes h3{font-size:9px;line-height:1.9}@media(max-width:950px) and (min-width:641px){.character-customizer{gap:14px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.character-customizer .part-carousel-choice strong{font-size:7px}.sheet-body .character-controls .avatar-options:not(.character-part-options){grid-template-columns:1fr}}@media(max-width:640px){.character-customizer{gap:12px;grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}.sheet-body .character-controls .avatar-options:not(.character-part-options){grid-template-columns:1fr}.sheet-body .character-customizer .character-part-options.part-carousel{grid-template-columns:26px minmax(0,1fr) 26px;gap:4px}.sheet-body .character-customizer .part-carousel-arrow{width:26px;height:38px}.character-customizer .part-carousel-choice strong{font-size:6px}.sheet-body .character-preview-column .avatar-preview{min-height:200px;padding:12px 4px}.sheet-body .character-preview-column .avatar-preview img{height:164px}.character-combination p strong{font-size:7px}.sheet-body .character-combination p{font-size:11px}}@media(max-width:370px){.character-customizer{grid-template-columns:1fr}.character-preview-column{position:static;grid-row:1}.sheet-body .character-preview-column .avatar-preview{min-height:160px}.sheet-body .character-preview-column .avatar-preview img{height:123px}.sheet-body .character-preview-column .character-combination{display:flex;gap:18px;flex-wrap:wrap}}
@media(min-width:641px){.sheet-body .character-controls .avatar-options:not(.character-part-options){grid-template-columns:repeat(2,minmax(0,1fr))}}
.character-piece-fieldset{border:0;padding:0;min-width:0;transition:opacity .25s ease,filter .25s ease}.character-piece-fieldset legend{padding:0;margin:0 0 10px;font:11px/1.9 var(--pixel);color:#85eadf}.character-piece-fieldset:disabled{opacity:.35;filter:saturate(.35)}.character-piece-fieldset:disabled .part-carousel-arrow{cursor:not-allowed;transform:none;box-shadow:inset 2px 2px 0 #d2e5ff22}.special-skin-label{display:block;font:12px/1.6 'Segoe UI',sans-serif;color:#bcd0df;margin-bottom:8px}.character-controls #character-special{width:100%;min-width:0;min-height:42px;border:2px solid #9e8fbd;border-radius:3px 10px 3px 10px;color:#fff0ad;background:#262c46;padding:8px;font:12px/1.6 'Segoe UI',sans-serif}.sheet-body .special-skin-help{font:11px/1.6 'Segoe UI',sans-serif;color:#acbdd5;margin:9px 0 0}.character-combination .special-active-label{display:block;color:#ffcfeb;font:9px/1.9 var(--pixel);margin-bottom:14px}@media(prefers-reduced-motion:reduce){.character-piece-fieldset{transition:none}}

.character-combination.has-special>p{display:none}

.character-mode-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.sheet-body .character-mode-actions button,.sheet-body #special-gallery-back{border:2px solid #8299bf;border-radius:3px 10px 3px 10px;background:linear-gradient(135deg,#344460,#1a2039);padding:10px 8px;color:#dce9ff;font:8px/1.8 var(--pixel);box-shadow:inset 2px 2px 0 #d2e5ff22,0 3px 0 #080d22;transition:transform .2s,border-color .2s,background .2s}.sheet-body .character-mode-actions button[aria-pressed=true]{border-color:#ff9ac3;background:linear-gradient(130deg,#7b3d70,#42365e);color:#fff0ad}.sheet-body .character-mode-actions button:hover,.sheet-body #special-gallery-back:hover{transform:translateY(-2px);border-color:#a5ffe9}.character-piece-fieldset:disabled{filter:grayscale(1);opacity:.35}.character-piece-fieldset:disabled .part-carousel-arrow{color:#b0b4bd}.special-gallery-active>:not(#special-gallery){display:none!important}#special-gallery[hidden]{display:none}.sheet-card:has(#special-gallery:not([hidden])) #sheet-tabs{display:none!important}.sheet-card:has(#special-gallery:not([hidden])) .sheet-body{grid-column:1/-1;width:100%;min-width:0}.special-gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.sheet-body .special-gallery-heading h3{margin:0;color:#8af2e1}.sheet-body .special-gallery-intro{font:13px/1.8 'Segoe UI',sans-serif;color:#bbcde2;margin:0 0 20px}.special-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px}.sheet-body .special-gallery-card{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;min-height:164px;padding:16px 10px;background:linear-gradient(135deg,#303b5b,#1a2038);border:2px solid #7d92b9;border-radius:3px 12px 3px 12px;color:#dfe9ff;box-shadow:inset 2px 2px 0 #d2e5ff22,0 4px 0 #080d22;transition:transform .25s,border-color .25s,background .25s}.special-gallery-card strong{font:8px/1.9 var(--pixel);text-align:center;overflow-wrap:anywhere}.special-gallery-portrait{display:flex;align-items:center;justify-content:center;height:82px;width:100%}.special-gallery-portrait img{height:82px;width:auto;max-width:100%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(3px 4px 0 #070a1d)}.sheet-body .special-gallery-card:hover{transform:translateY(-4px);border-color:#91fbe4}.sheet-body .special-gallery-card[aria-pressed=true]{border-color:#ffa1cd;background:linear-gradient(130deg,#7b3d70,#42365e);color:#fff0ad}.special-gallery-card:focus-visible,.character-mode-actions button:focus-visible,#special-gallery-back:focus-visible{outline:2px solid #fff0ad;outline-offset:4px}@media(max-width:640px){.sheet-body .character-mode-actions button{font-size:6px;padding:8px 3px}.character-mode-actions{gap:5px}.special-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sheet-body .special-gallery-card{min-height:150px}.special-gallery-card strong{font-size:7px}}@media(prefers-reduced-motion:reduce){.sheet-body .special-gallery-card,.sheet-body .character-mode-actions button,.sheet-body #special-gallery-back{transition:none}.sheet-body .special-gallery-card:hover,.sheet-body .character-mode-actions button:hover,.sheet-body #special-gallery-back:hover{transform:none}}

.topbar .crown img{width:30px;height:30px;object-fit:contain;image-rendering:pixelated}.topbar .crown.special-account-icon{width:30px;height:30px;justify-content:center;font-size:27px;line-height:1;color:#ffdf80}@media(max-width:750px){.topbar .crown img,.topbar .crown.special-account-icon{width:24px;height:24px}.topbar .crown.special-account-icon{font-size:23px}}

#rogue-button:disabled{filter:grayscale(1);opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}#rogue-button:disabled,#rogue-button:disabled *{color:#999!important}#rogue-button:disabled::before{opacity:0}#rogue-button:disabled:hover{transform:none;box-shadow:none}

.phase-card .phase-presence{display:block;padding:0 10px 12px;color:#b6c2cf;font:11px/1.5 system-ui;letter-spacing:0}.phase-card .phase-presence.has-players{color:#83efcf}.phase-card .phase-presence.has-players::before{content:"● ";font-size:9px}#phase-presence-scope{margin-bottom:16px}

.phase-card .phase-presence,.phase-card .phase-presence.has-players{color:#b6c2cf}.phase-card .phase-presence::before,.competitive-presence::before{content:"● ";font-size:10px;color:#818895}.phase-card .phase-presence.has-players::before,.competitive-presence.has-players::before{color:#65e89a}.oval-menu .competitive-presence{position:static;display:inline-flex;align-items:center;gap:5px;color:#b6c2cf;font:11px/1.5 system-ui;white-space:nowrap;margin-left:auto}.oval-menu .competitive-presence+.menu-arrow{margin-left:0}@media(max-width:600px){.oval-menu .competitive-presence{font-size:10px}}

.unlock-burst{position:fixed;inset:0;z-index:1000;pointer-events:none;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse,#11283a90,transparent 65%);animation:unlock-overlay 2.35s both}
.unlock-burst-title{display:flex;align-items:center;flex-direction:column;gap:16px;text-align:center;padding:24px;animation:unlock-title 2.35s both;filter:drop-shadow(0 4px 12px #000)}
.unlock-burst-title>span{color:#8bffe2;font:60px/1 system-ui;text-shadow:0 0 30px #7dffdf}.unlock-burst-title strong{color:#ffe6a1;font:clamp(15px,3.1vw,34px)/1.7 var(--pixel);text-shadow:3px 3px #9b5226,0 0 28px #edc97a80}.unlock-burst-title small{color:#ecfff9;font:15px/1.5 system-ui;background:#101b30dd;padding:7px 16px;border-radius:5px}
.unlock-shockwave{position:absolute;top:50%;left:50%;width:110px;height:110px;border:4px solid #ffe9a7;border-radius:50%;box-shadow:0 0 30px #ffdf8b,inset 0 0 25px #73ffe7;animation:unlock-ring 1.1s ease-out both}
.unlock-spark{position:absolute;left:50%;top:50%;width:7px;height:7px;background:var(--spark-color);box-shadow:0 0 12px var(--spark-color);animation:unlock-spark 1.4s cubic-bezier(.1,.6,.2,1) both}
.phase-card.secret-unlock-card{animation:unlock-card 1.2s ease-out var(--unlock-delay) both}.secret-unlock-lock{position:absolute;left:50%;top:50%;color:#ffe59a;width:38px;height:38px;filter:drop-shadow(0 0 12px #e9c36b);animation:unlock-lock .8s ease-in calc(.2s + var(--unlock-delay)) both}.secret-unlock-lock svg{width:100%;height:100%}.unlock-shackle{transform-origin:7px 11px;animation:unlock-shackle .35s ease-out calc(.15s + var(--unlock-delay)) both}
@keyframes unlock-overlay{0%{opacity:0}8%,76%{opacity:1}100%{opacity:0}}@keyframes unlock-title{0%{opacity:0;transform:scale(.65) translateY(15px)}16%{opacity:1;transform:scale(1.06)}25%,78%{opacity:1;transform:scale(1)}100%{opacity:0;transform:translateY(-16px)}}@keyframes unlock-ring{from{opacity:1;transform:translate(-50%,-50%) scale(.2)}to{opacity:0;transform:translate(-50%,-50%) scale(9)}}@keyframes unlock-spark{0%{opacity:1;transform:translate(0,0) scale(.3)}75%{opacity:1}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--spin)) scale(.1)}}@keyframes unlock-card{0%{box-shadow:0 0 0 #ffe08a00}30%{border-color:#ffe9a1;box-shadow:0 0 24px #ffe08a99,inset 0 0 20px #74f9d94d}100%{box-shadow:0 0 0 #ffe08a00}}@keyframes unlock-lock{0%,20%{opacity:1;transform:translate(-50%,-50%) scale(1)}45%{opacity:1;transform:translate(-50%,-50%) scale(1.25) rotate(-12deg)}100%{opacity:0;transform:translate(-50%,-90%) scale(1.7) rotate(20deg)}}@keyframes unlock-shackle{to{transform:rotate(-32deg) translate(-2px,-3px)}}
@media(prefers-reduced-motion:reduce){.unlock-shockwave,.unlock-spark,.secret-unlock-lock{display:none}.phase-card.secret-unlock-card{animation:none;border-color:#ffe9a1}.unlock-burst-title{animation:none;opacity:1}.unlock-burst{animation:unlock-overlay 2.35s both}}

.phase-completed{position:absolute;right:9px;top:9px;display:grid;place-items:center;width:27px;height:27px;border:2px solid #85f7ac;border-radius:50%;background:#103a29e8;color:#89ffac;font:bold 21px/1 system-ui;box-shadow:0 2px 9px #0008;z-index:2}.phase-card.is-completed{border-color:#60b782}

/* Menu accents: warm gold for appearance, dark crimson for rankings. */
.sheet-card::after{content:none;display:none}
#skins-button{background:linear-gradient(130deg,#716022ed,#342c18f2);border-color:#cfb866;color:#fff0ae;box-shadow:inset 2px 2px 0 #fff1b52b,inset -3px -3px 0 #211c10,4px 5px 0 #070c21a6}
#skins-button .menu-symbol{color:#ffe184;text-shadow:2px 2px #3f3214}
#skins-button:hover,#skins-button:focus-visible{background:linear-gradient(125deg,#8b742b,#44391b);border-color:#ffe492;box-shadow:inset 2px 2px 0 #fff1b530,inset -3px -3px 0 #211c10,0 0 20px #eac35c20,4px 5px 0 #070c21a6}
#rankings-button{background:linear-gradient(130deg,#441e29ee,#12121cf5);border-color:#a75d6c;color:#f4d6db;box-shadow:inset 2px 2px 0 #e991a01c,inset -3px -3px 0 #0c0c14,4px 5px 0 #070c21a6}
#rankings-button .menu-symbol{color:#ec7c89;text-shadow:2px 2px #200e18}
#rankings-button:hover,#rankings-button:focus-visible{background:linear-gradient(125deg,#632836,#19151f);border-color:#e78d9b;box-shadow:inset 2px 2px 0 #e991a028,inset -3px -3px 0 #0c0c14,0 0 20px #c64e6320,4px 5px 0 #070c21a6}
#guest-session-notice{opacity:1;transform:translateY(0);transition:opacity .4s ease,transform .4s ease;pointer-events:none;animation:guest-notice-in .3s ease-out}
#guest-session-notice.leaving{opacity:0;transform:translateY(8px)}
@keyframes guest-notice-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#guest-session-notice{animation:none;transition:none}}

.sheet-body .avatar-preview img{max-width:100%;object-fit:contain;object-position:center}.special-gallery-portrait img{max-height:100%;object-fit:contain}
/* Ivory inscription, violet relief and gilded ornament inspired by the classic cover. */
.cinema-menu .title{position:relative;isolation:isolate;padding:42px 8px;overflow:visible}
.cinema-menu .title::before{content:'';position:absolute;z-index:-1;width:78%;height:82%;left:11%;top:7%;border:1px solid #eebc4245;border-radius:50% 50% 12% 12% / 78% 78% 12% 12%;background:radial-gradient(ellipse at 50% 65%,#6a248344,transparent 70%);box-shadow:0 -3px 0 -2px #fff0a9,0 -8px 30px #eeb52a14;transform:scaleX(1.07)}
.cinema-menu .title h1{position:relative;font-family:PalaceInscription,Georgia,serif;font-weight:700;font-size:clamp(70px,8.4vw,136px);line-height:1.08;letter-spacing:-.065em;text-transform:uppercase;color:#fff9ed;-webkit-text-fill-color:#fff9ed;background:none;-webkit-text-stroke:1px #e5ddf4;transform:skewY(-3deg);text-shadow:2px 2px 0 #351049,4px 4px 0 #48155f,6px 6px 0 #12091f,0 9px 25px #000c;filter:drop-shadow(0 0 18px #9453c82b);padding:10px 4px 20px}
.cinema-menu .title h1::before,.cinema-menu .title h1::after{content:'✦';position:absolute;color:#ffdc77;-webkit-text-fill-color:#ffdc77;-webkit-text-stroke:0;font-family:Georgia,serif;font-size:18px;text-shadow:0 0 14px #ffc13c;left:23%;top:-18px;transform:skewY(3deg)}
.cinema-menu .title h1::after{left:auto;right:16%;top:auto;bottom:-8px;font-size:12px}
.topbar .top-button.support,.topbar .top-button.support:not(.square){display:inline-flex;isolation:isolate;gap:10px;overflow:hidden;background:linear-gradient(135deg,#35124e,#702f7f 52%,#3c164f);border:2px solid #efc35b;border-radius:5px 16px 5px 16px;color:#fff3ce;box-shadow:inset 0 0 0 2px #b37b293d,inset 0 1px 0 #fff5ca66,0 0 16px #eeb44426,3px 3px 0 #190d2e;transition:transform .2s,box-shadow .25s,border-color .25s}
.topbar .top-button.support span:first-child{color:#ffda72;text-shadow:0 0 10px #ffc54c88;font-size:19px}
.topbar .top-button.support::after{content:'';position:absolute;pointer-events:none;inset:-60% -100%;background:linear-gradient(110deg,transparent 42%,#fff0ba00 46%,#fff0ba38 50%,transparent 56%);transform:translateX(-45%);animation:support-gilded-sheen 6s ease-in-out infinite}
.topbar .top-button.support:hover{background:linear-gradient(135deg,#4f1d66,#914998 52%,#4e1d65);border-color:#ffe8a1;box-shadow:inset 0 0 0 2px #f0ba4c66,0 0 25px #f2be4955,3px 3px 0 #190d2e;transform:translateY(-2px)}
@keyframes support-gilded-sheen{0%,65%{transform:translateX(-45%)}90%,100%{transform:translateX(45%)}}
@media(max-width:750px){.cinema-menu .title{padding:30px 0}.cinema-menu .title h1{font-size:clamp(56px,13vw,92px)}.cinema-menu .title::before{height:90%;top:0}.topbar .top-button.support{display:inline-flex;padding:8px;font-size:7px;min-width:70px}}
@media(prefers-reduced-motion:reduce){.topbar .top-button.support::after{animation:none}.topbar .top-button.support:hover{transform:none}}
/* Keep the inscription free of the surrounding halo and tricolour divider. */
.cinema-menu .title::before,.cinema-menu .title::after{content:none;display:none}
/* Fit the entire home menu to the viewport; dialogs keep their own scrolling. */
html{height:100%;overflow:hidden}
body{height:100dvh;min-height:0;overflow:hidden}
body:not(.playing){display:flex;flex-direction:column}
body:not(.playing)>.topbar{flex:0 0 auto;height:auto;min-height:64px;padding-top:10px;padding-bottom:10px}
body:not(.playing)>.cinema-menu{flex:1 1 0;min-height:0;height:auto;width:100%;padding:12px 6vw 18px;align-items:center;gap:5vw;overflow:visible}
body:not(.playing)>.cinema-menu .right-menu{height:100%;max-height:760px;min-height:0;gap:clamp(5px,1.25dvh,14px)}
body:not(.playing)>.cinema-menu .oval-menu{flex:1 1 0;min-height:0;padding:clamp(5px,1.6dvh,20px) 24px;font-size:clamp(10px,1.9dvh,17px);line-height:1.4}
body:not(.playing)>.cinema-menu .menu-heading{flex:0 0 auto;margin:0;line-height:1.5}
body:not(.playing)>.cinema-menu .controls-link{flex:0 0 auto;margin:0 20px;padding:4px 0;line-height:1.5}
body:not(.playing)>.cinema-menu .menu-version{flex:0 0 auto;margin:0 20px;line-height:1.6}
body:not(.playing)>footer{position:relative;flex:0 0 22px;height:22px;min-height:0;padding:0 6vw;display:flex;align-items:center}
@media(max-width:750px) and (min-height:501px){body:not(.playing)>.cinema-menu{grid-template-columns:1fr;grid-template-rows:clamp(65px,12dvh,105px) minmax(0,1fr);align-content:stretch;gap:10px;padding:4px 6vw 12px}body:not(.playing)>.cinema-menu .title{padding:0}body:not(.playing)>.cinema-menu .title h1{font-size:clamp(46px,10dvh,76px);padding:0}body:not(.playing)>.cinema-menu .right-menu{justify-self:center;width:100%;max-width:425px}body:not(.playing)>.topbar{padding:8px 12px;gap:7px;min-height:0}body:not(.playing)>.topbar .account-pill{min-height:36px;padding:6px 10px}body:not(.playing)>.topbar .top-actions{gap:6px}body:not(.playing)>.topbar .top-button{min-height:34px;padding:7px 9px}body:not(.playing)>.topbar .menu-wallet{gap:6px}body:not(.playing)>.topbar .menu-wallet button{min-height:24px;padding:3px 8px}}
@media(max-height:500px){body:not(.playing)>.topbar{min-height:0;padding:5px 14px;gap:7px;flex-wrap:nowrap}body:not(.playing)>.topbar .account-pill{min-height:30px;min-width:130px;padding:4px 8px;font-size:7px}body:not(.playing)>.topbar .top-button{min-height:30px;padding:5px 7px;font-size:7px}body:not(.playing)>.topbar .top-actions{gap:5px}body:not(.playing)>.topbar .menu-wallet{width:auto;order:0}body:not(.playing)>.cinema-menu{grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr);gap:24px;padding:8px 5vw}body:not(.playing)>.cinema-menu .title{padding:0}body:not(.playing)>.cinema-menu .title h1{font-size:clamp(36px,7vw,70px)}body:not(.playing)>.cinema-menu .right-menu{gap:4px}body:not(.playing)>.cinema-menu .oval-menu{padding:3px 15px;font-size:9px}body:not(.playing)>.cinema-menu .menu-heading{font-size:5px}body:not(.playing)>.cinema-menu .menu-version{font-size:5px}body:not(.playing)>.cinema-menu .controls-link{font-size:6px;padding:0}body:not(.playing)>footer{flex-basis:16px;height:16px;font-size:5px}}
/* Support panel shares the amethyst and gilded treatment of its entry button. */
.sheet-card:has(.support-panel){max-width:850px;background:radial-gradient(ellipse at 10% 0,#823c8a55,transparent 65%),linear-gradient(140deg,#2f153e,#1c122d 75%);border:2px solid #edc36a;box-shadow:inset 0 0 0 4px #e7b95414,0 0 45px #c6932c24,0 24px 100px #0009}
.sheet-card:has(.support-panel) .sheet-heading h2{color:#fff0c6;text-shadow:2px 2px 0 #713a85}
.sheet-card:has(.support-panel) .sheet-heading{border-color:#d7aa4c55}
.sheet-card:has(.support-panel) #sheet-tabs{display:none}
.sheet-card:has(.support-panel) #sheet-body{grid-column:1/-1;padding-top:20px}
.sheet-card:has(.support-panel) #close-sheet{border-color:#d2a34d;color:#ffdf8d;background:#3c1c50}
.support-panel{color:#e7dcec;max-width:720px;margin:auto}
.support-emblem{display:grid;place-items:center;margin:0 auto 18px;width:52px;height:52px;border:1px solid #f0c95d;border-radius:6px 18px 6px 18px;color:#ffde7e;background:linear-gradient(135deg,#733477,#351548);box-shadow:inset 0 0 0 3px #ffdc6e12,0 0 25px #e2ab3a26;font-size:28px}
.sheet-body .support-panel h3{color:#ffe4a1;text-align:center;font:14px/1.8 var(--pixel);margin:0 0 18px}
.sheet-body .support-panel p{font:12px/1.9 var(--pixel);color:#e0d4e6;margin:0}
.support-fair{font:10px/1.9 var(--pixel);color:#ebcb8e;border-left:2px solid #ecc164;padding:10px 14px;margin:20px 0 26px;background:#efc46b09}
.support-panel h4{font:11px/1.9 var(--pixel);color:#ffe6ac;margin:0 0 18px}
.support-services{display:grid;gap:0;border:1px solid #d6ad583d;border-radius:5px 16px 5px 16px;background:#100c1d33;overflow:hidden}
.support-services article{display:flex;gap:15px;padding:18px;border-bottom:1px solid #f6d7971c}
.support-services article:last-child{border:0}.support-services article>span{font-size:25px;color:#efc564;flex:0 0 25px;text-align:center}
.support-services strong{display:block;font:10px/1.9 var(--pixel);color:#ffe2a0;margin:0 0 9px}
.sheet-body .support-services p{font-size:10px;color:#c9bbd4}
.sheet-body .support-panel .support-thanks{margin:23px 0 0;font-size:10px;color:#c3accd;text-align:center}
@media(max-width:600px){.sheet-body .support-panel h3{font-size:11px}.sheet-body .support-panel p{font-size:10px}.support-services article{padding:14px 11px;gap:10px}.sheet-body .support-services p{font-size:9px}.support-services strong{font-size:9px}.support-fair{font-size:9px}.support-panel h4{font-size:10px}}
/* Compact support dialog: reserve a visible footer action at every size. */
.sheet-card:has(.support-panel){width:min(850px,96vw);max-height:96dvh;padding:22px 28px;overflow:hidden;display:flex;flex-direction:column;gap:0}
.sheet-card:has(.support-panel) .sheet-heading{flex:0 0 auto;padding-bottom:14px;margin-bottom:0;min-height:40px}
.sheet-card:has(.support-panel) .sheet-heading h2{font-size:16px;line-height:1.5;margin:0;padding-right:85px}
.sheet-card:has(.support-panel) .sheet-heading::after{display:none}
.sheet-card:has(.support-panel) #sheet-body{min-height:0;padding-top:12px;overflow:visible;flex:1}
.support-panel{display:flex;flex-direction:column;min-height:0;height:100%;gap:12px}
.support-emblem{display:none}
.sheet-body .support-panel h3{font-size:12px;margin:0;line-height:1.7}
.sheet-body .support-panel p{font-size:10px;line-height:1.8;margin:0}
.support-fair{font-size:9px;line-height:1.7;margin:0;padding:7px 12px}
.support-panel h4{font-size:10px;line-height:1.6;margin:0}
.support-services{flex:1;min-height:0}
.support-services article{padding:12px;gap:12px}
.support-services strong{font-size:9px;line-height:1.6;margin-bottom:5px}
.sheet-body .support-services p{font-size:9px;line-height:1.7}
.sheet-body .support-panel .support-thanks{font-size:8px;line-height:1.8;margin:0}
.support-donation-actions{display:flex;justify-content:center;flex-shrink:0}
#support-kofi{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:46px;padding:12px 26px;border:2px solid #ffdb7a;border-radius:5px 16px 5px 16px;background:linear-gradient(130deg,#7f368a,#421c5b);color:#fff0bd;font:11px/1.5 var(--pixel);box-shadow:inset 0 0 0 2px #efbb4b28,0 0 20px #efbd4226;text-decoration:none}
#support-kofi>span{color:#ffdc75;font-size:20px}#support-kofi:hover:not(:disabled){border-color:#fff0b4;box-shadow:0 0 26px #efbd4266}#support-kofi:disabled{cursor:default}
@media(max-width:600px){.sheet-card:has(.support-panel){padding:16px;width:96vw}.sheet-card:has(.support-panel) .sheet-heading h2{font-size:11px}.support-panel{gap:9px}.sheet-body .support-panel h3{font-size:10px}.sheet-body .support-panel p{font-size:9px;line-height:1.7}.support-services article{padding:10px 9px;gap:8px}.support-services article>span{font-size:18px;flex-basis:18px}.sheet-body .support-services p{font-size:8px;line-height:1.7}.support-services strong{font-size:8px}.support-panel h4,.support-fair{font-size:8px}.sheet-body .support-panel .support-thanks{font-size:7px}#support-kofi{min-height:40px;padding:9px 18px;font-size:10px}}
@media(max-height:650px){.sheet-card:has(.support-panel){padding:12px 18px}.sheet-card:has(.support-panel) .sheet-heading{padding-bottom:7px;min-height:32px}.support-panel{gap:7px}.support-services article{padding:7px 10px}.sheet-body .support-panel p{font-size:8px;line-height:1.65}.support-services strong{font-size:8px;margin-bottom:4px}.sheet-body .support-services p{font-size:8px;line-height:1.6}.sheet-body .support-panel h3{font-size:10px}.support-panel h4,.support-fair{font-size:8px}.support-fair{padding:5px 9px}#support-kofi{min-height:34px;padding:6px 18px;font-size:9px}}
@media(max-height:450px) and (min-width:650px){.support-panel{display:grid;grid-template-columns:1fr 1.5fr;gap:8px 18px}.support-panel>h3{grid-column:1}.support-services{grid-column:2;grid-row:1/6}.support-panel>h4{display:none}.support-panel .support-thanks{grid-column:1}.support-donation-actions{grid-column:1}.support-services article{padding:8px}.sheet-card:has(.support-panel){max-height:98dvh}}
@media(max-height:650px) and (max-width:600px){.support-panel{gap:6px}.sheet-body .support-panel h3,.support-panel>h4{display:none}.support-services article{padding:7px 8px}.support-services strong{font-size:7px;line-height:1.6}.sheet-body .support-services p{font-size:7px;line-height:1.7}.support-fair{font-size:7px}.sheet-body .support-panel .support-thanks{font-size:7px;line-height:1.6}}
#support-kofi{position:relative;isolation:isolate;overflow:hidden;transition:box-shadow .25s,border-color .25s}
#support-kofi::after{content:'';position:absolute;pointer-events:none;inset:-60% -100%;background:linear-gradient(110deg,transparent 43%,#fff3bf00 47%,#fff3bf2e 50%,transparent 55%);transform:translateX(-45%);animation:kofi-soft-reflection 7s ease-in-out infinite}
@keyframes kofi-soft-reflection{0%,66%{transform:translateX(-45%)}90%,100%{transform:translateX(45%)}}
.support-donation-actions{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}
#support-kofi{grid-column:2}
.support-contact{grid-column:3;justify-self:end;text-align:right;display:flex;flex-direction:column;gap:6px;font:8px/1.7 var(--pixel);color:#c9b6d8;min-width:0}
.support-contact a{color:#ffdda2;text-decoration:none;font-size:8px;overflow-wrap:anywhere}.support-contact a:hover{text-decoration:underline}
@media(max-width:650px){.support-donation-actions{display:flex;flex-direction:column;gap:9px}.support-contact{align-items:center;text-align:center;font-size:7px;gap:3px}.support-contact a{font-size:7px}}
@media(max-height:450px) and (min-width:650px){.support-donation-actions{display:flex;flex-direction:column;gap:6px}.support-contact{align-items:center;text-align:center;font-size:6px;gap:2px}.support-contact a{font-size:6px}}
@media(prefers-reduced-motion:reduce){#support-kofi::after{animation:none}}
/* Remove the turquoise corner ornament from every menu dialog. */
.sheet .sheet-card::before{content:none;display:none}
@media(max-height:500px){body:not(.playing)>.topbar #news-button{font-size:0;gap:0}body:not(.playing)>.topbar #news-button .news-icon{font-size:17px}}
/* Keep manual save immediately beside the user, including wrapped headers. */
.topbar .profile-actions{display:flex;align-items:center;gap:9px;flex:0 0 auto;margin-right:auto;min-width:0}
.topbar .profile-actions .account-pill{margin-right:0}
.topbar .profile-actions #save-progress{flex:0 0 auto}
@media(max-width:750px){.topbar .profile-actions{gap:7px}}
/* Quiet, consistently centred in-game controls. */
.playing #save-progress{display:none!important}
.topbar .top-button.square{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.topbar .top-button.square>svg{display:block;flex:0 0 22px;width:22px;height:22px;margin:0;vertical-align:middle}
.playing .topbar #game-worlds,.playing .topbar #guide-toggle{display:inline-flex;width:38px;height:38px;min-width:38px;min-height:38px;padding:7px;border:1px solid #ddc69940;border-radius:8px;background:#15110b77;color:#d7d7b9;opacity:.6;box-shadow:none;transform:none}
.playing .topbar #game-worlds:hover,.playing .topbar #guide-toggle:hover{opacity:1;background:#251b11d9}
.playing .topbar #guide-toggle[aria-pressed=true]{color:#ffe18c;border-color:#efd27688;background:#79602225;opacity:.9}
.guide-activation{position:fixed;z-index:50;pointer-events:none;top:76px;left:50%;display:flex;align-items:center;gap:10px;padding:11px 18px;border:1px solid #eed17d66;border-radius:6px 14px 6px 14px;background:#14232bec;box-shadow:0 6px 25px #0005;color:#ffe6a2;font:9px/1.6 var(--pixel);transform:translateX(-50%)}
.guide-activation svg{display:block;width:29px;height:29px;flex:0 0 29px}.guide-activation.show{animation:guide-activation-pop 1.8s ease both}.guide-activation.show svg{animation:guide-compass-turn .65s cubic-bezier(.2,.8,.2,1) both}
@keyframes guide-activation-pop{0%{opacity:0;transform:translate(-50%,-8px) scale(.94)}15%,75%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-5px)}}
@keyframes guide-compass-turn{from{transform:rotate(-110deg) scale(.7)}to{transform:rotate(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.guide-activation.show,.guide-activation.show svg{animation:none}}
.playing .topbar #guide-toggle.guide-glow{animation:guide-yellow-glow 1.1s ease-out both}
@keyframes guide-yellow-glow{0%{box-shadow:0 0 0 0 #ffe47b00}25%{color:#fff1b8;border-color:#ffdf60;opacity:1;background:#c49b2333;box-shadow:0 0 14px 5px #ffe16d88,0 0 32px 9px #ffd13933,inset 0 0 10px #ffe68144}100%{box-shadow:0 0 0 0 #ffe47b00}}
@media(prefers-reduced-motion:reduce){.playing .topbar #guide-toggle.guide-glow{animation:none;box-shadow:0 0 12px #ffe16d77}}
/* Compact server roster, secondary to joining and chat controls. */
#online-lobby .roster-title{font:7px/1.5 var(--pixel);margin:14px 0 6px;opacity:.8}
#online-roster.roster{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));max-height:100px;gap:3px 16px}
#online-roster .roster-player{gap:6px;padding:5px 0}
#online-roster .roster-player i{width:5px;height:5px}
#online-roster .roster-player strong{font:7px/1.7 var(--pixel);color:#d9cba8}
#online-roster .roster-player small{display:block;font:6px/1.7 var(--pixel);opacity:.7}
#online-roster .roster-empty{font:7px/1.7 var(--pixel);margin:4px 0}
@media(max-width:600px){#online-roster.roster{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 10px}#online-roster .roster-player strong{font-size:6px}#online-roster .roster-player small{font-size:5px}}
.phase-completed{width:auto;min-width:46px;border-radius:18px;padding:3px 8px;gap:5px;font-size:16px;}
.phase-card.phase-mastered{border-color:#ffdb73;box-shadow:0 0 15px #ffc94c66,inset 0 0 15px #ffca3c22;animation:phase-gold-aura 3s ease-in-out infinite;}
.phase-mastered .phase-completed{border-color:#ffdc79;color:#ffe49c;background:#503c15ed;box-shadow:0 0 12px #f8c75477;}
.phase-mastery-unlocked .phase-image::after{content:'';position:absolute;inset:-30%;background:linear-gradient(110deg,transparent 35%,#fff3b9aa 50%,transparent 65%);animation:phase-gold-sweep 1.4s ease-out both;pointer-events:none;}
.phase-mastery-reward{position:absolute;left:5%;right:5%;bottom:12px;text-align:center;z-index:3;padding:7px;border-radius:8px;background:#382b10e8;color:#ffe99c;font:11px/1.6 var(--pixel);animation:phase-mastery-prize 4s ease both;pointer-events:none;}
@keyframes phase-gold-aura{50%{box-shadow:0 0 24px #ffcc5688,inset 0 0 20px #ffca3c33}}
@keyframes phase-gold-sweep{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
@keyframes phase-mastery-prize{0%{opacity:0;transform:translateY(12px) scale(.9)}18%,80%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-8px)}}
@media(prefers-reduced-motion:reduce){.phase-card.phase-mastered,.phase-mastery-unlocked .phase-image::after,.phase-mastery-reward{animation:none}}
/* Loading screen shares the palace menu's typography, glow and colors. */
.playing #loading{position:fixed;inset:0;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;padding:32px;text-align:center;background:radial-gradient(ellipse at 50% 42%,#393052a6,transparent 65%),linear-gradient(#10172de8,#111429f5),url('/assets/scene-1.png') center/cover;color:#ffe59b;font:clamp(11px,2vw,17px)/2 var(--pixel);text-shadow:2px 2px #61354f;isolation:isolate;}
.playing #loading::before{content:'Prince99';display:block;font:700 clamp(40px,9vw,96px)/1.2 var(--inscription);letter-spacing:1px;color:#fff8e7;text-shadow:2px 3px #603675,0 0 24px #fff4dc66,0 0 65px #dcbeff33;animation:palace-loading-aura 3s ease-in-out infinite;}
.playing #loading::after{content:'';display:block;width:min(220px,55vw);height:7px;border:1px solid #a0aaca88;border-radius:5px;background:linear-gradient(90deg,transparent,#ffdf8c,#ff9acb,#91ffe7,transparent) -220px 0/220px 100% no-repeat,#141a32;box-shadow:0 0 16px #c8e7ff22,inset 0 0 0 1px #080d21;animation:palace-loading-shimmer 1.8s ease-in-out infinite;}
@keyframes palace-loading-aura{50%{text-shadow:2px 3px #603675,0 0 34px #fff4dc99,0 0 85px #dcbeff55;transform:translateY(-2px)}}
@keyframes palace-loading-shimmer{to{background-position:220px 0,0 0}}
@media(orientation:landscape) and (max-height:500px){.playing #loading{gap:20px}.playing #loading::before{font-size:52px}}
@media(prefers-reduced-motion:reduce){.playing #loading::before,.playing #loading::after{animation:none}.playing #loading::after{background-position:center}}
/* Graphic editions fit the window without a scrolling sidebar. */
.sheet-card:has(#skins-graphics:not([hidden])){display:flex;flex-direction:column;width:min(1080px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:clamp(14px,2.4vw,28px);overflow:visible;gap:12px;}
.sheet-card:has(#skins-graphics:not([hidden])) .sheet-heading{flex:none;margin:0;padding:0;min-height:38px;}
.sheet-card:has(#skins-graphics:not([hidden])) .sheet-heading::after{display:none;}
.sheet-card:has(#skins-graphics:not([hidden])) .sheet-heading h2{font-size:18px;margin:0;}
.sheet-card:has(#skins-graphics:not([hidden])) #sheet-tabs{display:flex;flex-direction:row;flex:none;gap:8px;border:0;padding:0;margin:0;}
.sheet-card:has(#skins-graphics:not([hidden])) #sheet-tabs button{padding:9px 12px;line-height:1.5;font-size:10px;}
.sheet-card:has(#skins-graphics:not([hidden])) #sheet-body{padding:0;overflow:visible;min-height:0;}
#skins-graphics>h3{display:none;}
#skins-graphics .world-intro,#skins-graphics .world-preview-note{font:12px/1.5 system-ui;margin:0 0 10px;}
#skins-graphics .world-preview-note{margin:10px 0 0;font-size:10px;}
#skins-graphics .world-versions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
#skins-graphics .world-option{min-width:0;margin:0;padding:0 0 8px;}
#skins-graphics .world-option img{height:clamp(70px,18dvh,160px);width:100%;aspect-ratio:auto;object-fit:contain;margin:0 0 8px;}
#skins-graphics .world-option strong{display:block;font:11px/1.5 var(--pixel);margin:0 8px 3px;}
#skins-graphics .world-option small{display:block;font:11px/1.4 system-ui;margin:0 8px;}
@media(max-width:600px){#skins-graphics .world-versions{gap:8px}#skins-graphics .world-option strong{font-size:9px}.sheet-card:has(#skins-graphics:not([hidden])) .sheet-heading h2{font-size:14px}}
@media(orientation:landscape) and (max-height:550px){#skins-graphics .world-versions{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}#skins-graphics .world-option img{height:clamp(45px,calc(100dvh - 235px),115px)}#skins-graphics .world-option strong{font-size:9px}#skins-graphics .world-intro{font-size:11px}.sheet-card:has(#skins-graphics:not([hidden])){gap:8px}}
/* Remove the global in-game header height from the compact visibility panel. */
.playing #ghost-visibility-panel>header{height:auto;min-height:28px;}
