/* Pawe's common game-room identity; board themes and animations stay local. */
.pawe-game .pawe-state-brand{display:flex;align-items:center;justify-content:center;gap:8px;flex:none;color:#70468a;font:400 18px/1.2 Pacifico,Fredoka,sans-serif;text-shadow:none;letter-spacing:0;text-transform:none}
.pawe-state-brand img{display:block;width:44px;height:44px;object-fit:contain;flex:none;filter:none}
.pawe-board-signature{display:flex;align-items:center;justify-content:center;gap:10px;flex:none;min-height:26px;margin:2px auto 0;pointer-events:none;user-select:none}
.pawe-game .pawe-board-signature .pawe-state-brand{font-size:13px;gap:5px}.pawe-board-signature .pawe-state-brand img{width:24px;height:24px}.pawe-board-signature>small{font:800 10px/1.3 Nunito,sans-serif;color:#7b6385;border-left:1px solid #cdb4d5;padding-left:10px}
.pawe-game .pawe-state-card{box-sizing:border-box;gap:9px;padding:16px;background:linear-gradient(145deg,#fff9ee,#f2e8f6);border:1px solid #ddc9e2;border-radius:16px;color:#674478;text-shadow:none;text-align:center;font:700 13px/1.45 Nunito,sans-serif;overflow:auto}
.pawe-state-card .pawe-state-brand{margin:0 auto 4px}
.pawe-game .pawe-state-card :is(h1,h2,h3){margin:3px 0;font:700 clamp(20px,3vw,27px)/1.15 Fredoka,Nunito,sans-serif;text-shadow:none;text-transform:none;letter-spacing:0;color:#674478;transform:none}
.pawe-game .pawe-state-card :is(h1,h2,h3) :is(span,em){color:inherit;font:inherit;text-shadow:none}
.pawe-game .pawe-state-card :is(p,small){color:#775d80;text-shadow:none;font-family:Nunito,sans-serif;letter-spacing:0}
.pawe-game .pawe-state-card :is(.overlay-symbol,.overlay-prism,.modal-emoji){display:none}
.pawe-game .pawe-state-card :is(.overlay-eyebrow,.overlay-hint,.overlay-keyhint){font:800 10px/1.4 Nunito,sans-serif;letter-spacing:.4px;color:#8b7294;text-shadow:none}
.pawe-game .pawe-state-card :is(#primaryAction,#overlayButton,#modalPrimary,#gp-start,#mg-start,#sol-resume,#mm-continue,#bp-resume,#nt-resume){min-height:44px;height:auto;border:1px solid #633d79;border-radius:11px;background:#704788;box-shadow:0 3px 0 #573369;padding:10px 16px;color:#fff9ed;text-shadow:none;font:900 13px/1.3 Nunito,sans-serif;text-transform:none;letter-spacing:0;transform:none}
.pawe-game .pawe-state-card :is(#primaryAction,#overlayButton,#modalPrimary,#gp-start,#mg-start,#sol-resume,#mm-continue,#bp-resume,#nt-resume):hover{background:#613c78}
.pawe-game .pawe-state-card :is(button,a):focus-visible,.pawe-session button:focus-visible{outline:3px solid #bf984f;outline-offset:3px}
.pawe-game .pawe-session{display:none}
@media(max-width:1040px){
 .pawe-game .pawe-session{position:sticky;top:calc(var(--pawe-chrome-height,74px) + 5px);z-index:21;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;flex:none;padding:10px;border:1px solid #bfce9f;border-radius:14px;background:#f2f6e8;box-shadow:0 4px 12px #57396926}
 .pawe-session .pawe-state-brand span{display:none}.pawe-session .pawe-state-brand img{width:40px;height:40px}
 .pawe-session-copy{min-width:0}.pawe-session-copy strong{display:block;color:#684479;font:700 18px/1.2 Fredoka,sans-serif}.pawe-session-copy>span{display:block;margin-top:3px;font:700 12px/1.35 Nunito,sans-serif;color:#755d80;overflow-wrap:anywhere}
 .pawe-session-actions{grid-column:1/-1;display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
 .pawe-game .pawe-session button{min-height:44px;padding:9px 15px;border:1px solid #603975;border-radius:10px;background:#704788;color:#fff9ed;font:900 13px/1.3 Nunito,sans-serif;cursor:pointer}
 .pawe-game .pawe-session button.secondary{background:#fff9ee;color:#704788;border-color:#cfb5d7}
 .pawe-session[data-outcome=lost],.pawe-session[data-outcome=expired],.pawe-session[data-outcome=moves]{background:#fff2de;border-color:#dfc394}
 .pawe-game .pawe-state-card{padding:12px;gap:8px}.pawe-state-card .pawe-state-brand img{width:36px;height:36px}.pawe-game .pawe-state-card .pawe-state-brand{font-size:16px}
 .pawe-board-signature>small{font-size:9px}
}
.pawe-game .pawe-session[hidden]{display:none!important}

.pawe-game .pawe-session:is(.pawe-ready-card,.pawe-game-over-card){
 position:absolute;inset:50% auto auto 50%;translate:-50% -50%;z-index:20;
 display:grid;grid-template-columns:minmax(0,1fr);gap:10px;text-align:center;
 width:min(88%,260px);margin:0;padding:14px;
 border:1px solid #d8c3e0;border-radius:16px;background:linear-gradient(145deg,#fff9ee,#f2e8f6);
 box-shadow:0 5px 22px #43295340;
}
:is(.pawe-ready-card,.pawe-game-over-card) .pawe-session-copy strong{font-size:21px}
.pawe-session:is(.pawe-ready-card,.pawe-game-over-card) .pawe-session-actions{justify-content:center}
.pawe-game .pawe-session:is(.pawe-ready-card,.pawe-game-over-card) button{
 width:100%;min-height:48px;padding:10px 16px;font-size:15px;
 box-shadow:0 3px 0 #573369;
}
.pawe-game .pawe-session:is(.pawe-ready-card,.pawe-game-over-card) button:hover{background:#573369}
.pawe-game .pawe-session:is(.pawe-ready-card,.pawe-game-over-card) .pawe-state-brand{display:none}
.pawe-game .pawe-game-over-board > :is(canvas,.bp-board,.mm-board,.gp-board,.wp-board){opacity:.43;filter:grayscale(.45)}
.pawe-game .pawe-game-over-card{max-height:94%;overflow:auto}
.pawe-game .pawe-board-preview{overflow:hidden;isolation:isolate}
.pawe-game .pawe-board-preview > :first-child[inert]{opacity:.46;filter:grayscale(.55)}
.pawe-game button[inert]{opacity:.52}

.pawe-game--prismfall #gameOverlay.is-hidden{display:none!important}

.pawe-game .pawe-session{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;flex:none;width:min(100%,650px);box-sizing:border-box;margin:4px auto;padding:12px;border:1px solid #bfce9f;border-radius:14px;background:#f2f6e8;box-shadow:0 3px 9px #57396920}
.pawe-session-copy{min-width:0}.pawe-session-copy strong{display:block;color:#684479;font:700 20px/1.2 Fredoka,sans-serif}.pawe-session-copy>span{display:block;margin-top:4px;font:700 12px/1.4 Nunito,sans-serif;color:#755d80;overflow-wrap:anywhere}
.pawe-session-actions{grid-column:1/-1;display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.pawe-game .pawe-session button{min-height:44px;padding:9px 15px;border:1px solid #603975;border-radius:10px;background:#704788;color:#fff9ed;font:900 13px/1.3 Nunito,sans-serif;cursor:pointer}
.pawe-game .pawe-session button.secondary{background:#fff9ee;color:#704788;border-color:#cfb5d7}
.pawe-game .pawe-session:is([data-outcome=lost],[data-outcome=expired],[data-outcome=moves]){background:#fff2de;border-color:#dfc394}
.pawe-game[data-pawe-presentation=true] :is(#bp-result,#nt-result,#gp-result,#gp-next){display:none!important}
.pawe-game[data-pawe-presentation=true][data-pawe-state=won] #sol-curtain,.pawe-game[data-pawe-presentation=true]:is([data-pawe-state=won],[data-pawe-state=moves]) #mm-curtain{display:none!important}
.pawe-game .pawe-game-over-board > :is(#gp-cover,#wp-cover){display:none}

.pawe-game--critterqueens.pawe-ui-covered #board{visibility:hidden}
@media(max-width:400px){.game-page .pawe-game--snakebite .board-pawe{right:-36px}}

.pawe-game--snakebite:is([data-pawe-state=lost],[data-pawe-state=expired],[data-pawe-state=complete]) #gameOverlay{display:none!important}

.game-page .pawe-game:is([data-pawe-state=ready],[data-pawe-state=paused],[data-pawe-state=lost],[data-pawe-state=expired]) .pawe-native-cover:not([hidden]),
.game-page .pawe-game #cq-start-card:not([hidden]){
 position:absolute;inset:50% auto auto 50%;translate:-50% -50%;z-index:20;
 display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-content:start;gap:8px;
 width:min(90%,260px);min-height:0;max-height:94%;margin:0;padding:12px;
 background:linear-gradient(145deg,#fff9ee,#f2e8f6);border:1px solid #d8c3e0;
 border-radius:16px;box-shadow:0 5px 22px #43295340;backdrop-filter:none;
}
.game-page .pawe-game .pawe-native-cover :is(.pawe-state-brand,.overlay-eyebrow,.overlay-hint,.overlay-keyhint){display:none}
.game-page .pawe-game .pawe-native-cover :is(h1,h2,h3,strong),
.game-page .pawe-game #cq-start-card strong{margin:0;color:#684479;font:700 20px/1.15 Fredoka,Nunito,sans-serif}
.game-page .pawe-game .pawe-native-cover > :is(p,span):not([class]),
.game-page .pawe-game #cq-start-card > span{margin:0;color:#755d80;font:700 12px/1.35 Nunito,sans-serif}
.game-page .pawe-game .pawe-native-cover :is(#primaryAction,#overlayButton,#lw-start,#wp-start,#gp-start,#mg-start,#sol-resume,#mm-continue,#bp-resume,#nt-resume),
.game-page .pawe-game #cq-start-card button{
 box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:8px;
 border:1px solid #603975;border-radius:10px;background:#704788;color:#fff9ed;
 box-shadow:0 3px 0 #573369;font:900 15px/1.2 Nunito,sans-serif;white-space:normal;
}
.game-page .pawe-game .pawe-native-cover button:hover,
.game-page .pawe-game #cq-start-card button:hover{background:#573369}
.game-page .pawe-game #mm-curtain > div{width:100%}
.game-page .pawe-game--prismfall #gameOverlay:not(.is-hidden){padding:10px;overflow:auto}
.game-page .pawe-game--prismfall #overlayButton span[aria-hidden]{display:none}
@media(max-width:480px){
 .game-page .pawe-game--prismfall:is([data-pawe-state=ready],[data-pawe-state=paused]) #overlayDescription{display:none}
}
.game-page .pawe-game--snakebite:is([data-pawe-state=ready],[data-pawe-state=paused]) #gameOverlay{background:#452c5650;backdrop-filter:none}
.game-page .pawe-game[data-pawe-state=ready] :is(#wp-board,#gp-board,#mg-board,#boardFrame>canvas,#lw-map> :not(#lw-cover)),
.game-page .pawe-game[data-pawe-state=paused] :is(#sol-board,#mm-board,#nt-board,#boardFrame>canvas,#lw-map> :not(#lw-cover)),
.game-page .pawe-game--prismfall[data-pawe-state=lost] #gameCanvas,
.game-page .pawe-game--critterqueens #board[inert]{opacity:.43;filter:grayscale(.45)}
.game-page .pawe-game[data-pawe-state=ready] :is(#gp-board,#mg-board).covered{visibility:visible;pointer-events:none}
.game-page .pawe-game .pawe-game-over-board > #gp-board.covered{visibility:visible;pointer-events:none}
.game-page .pawe-game[data-pawe-state=ready] #mg-board.covered .mg-front{visibility:hidden}
.game-page .pawe-game--memorygrove #mg-frame{isolation:isolate}

.game-page .pawe-game--critterqueens #modal.cq-board-dialog[open]{
 position:absolute;inset:0;z-index:20;width:100%;height:100%;
 margin:0;padding:0;border:0;background:transparent;backdrop-filter:none;
 overflow:visible;pointer-events:none;
}
.game-page .pawe-game--critterqueens .cq-board-dialog .modal{
 display:flex;flex-direction:column;gap:8px;pointer-events:auto;
 width:min(90%,260px);max-height:94%;padding:12px;
 border-radius:16px;box-shadow:0 5px 22px #43295340;
 scrollbar-width:thin;scrollbar-gutter:stable both-edges;
}
.game-page .pawe-game--critterqueens .cq-board-dialog .pawe-state-brand{display:none}
.game-page .pawe-game--critterqueens .cq-board-dialog :is(h2,p){margin:0}
.game-page .pawe-game--critterqueens .cq-board-dialog h2{order:-3;font-size:20px}
.game-page .pawe-game--critterqueens .cq-board-dialog #modalBody{order:-2;font-size:12px;line-height:1.35}
.game-page .pawe-game--critterqueens .cq-board-dialog .modal-actions{order:-1;gap:6px}
.game-page .pawe-game--critterqueens .cq-board-dialog #modalPrimary{min-height:48px;font-size:15px}

.pawe-play-tools{position:relative;font:800 11px/1.3 Nunito,sans-serif}.pawe-play-tools summary{display:flex;align-items:center;justify-content:center;min-height:34px;cursor:pointer;padding:7px 10px;border:1px solid #ceb4d7;border-radius:10px;background:#f2e6f4;color:#68467c;list-style:none;white-space:nowrap}.pawe-play-tools summary::after{content:'⌄';margin-left:5px}.pawe-play-tools[open]{z-index:65}.pawe-tools-menu{position:absolute;right:0;top:calc(100% + 7px);width:min(290px,calc(100vw - 48px));padding:13px;background:#fff9ef;border:1px solid #ceb4d7;border-radius:14px;box-shadow:0 9px 30px #43295340;display:grid;gap:9px}
.pawe-game .pawe-tools-menu :is(button,a){display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 12px;border:1px solid #c9afd3;border-radius:10px;background:#f1e6f4;color:#65447b;text-decoration:none;font:900 13px/1.3 Nunito,sans-serif}
.pawe-personal-target{font:800 11px/1.4 Nunito,sans-serif!important;letter-spacing:0!important;text-transform:none!important;color:#755523!important;background:#fff0cc;border:1px solid #e3cca0;border-radius:8px;padding:5px 8px;margin:6px 0!important;text-align:center;max-width:100%;box-sizing:border-box}
.pawe-game .pawe-quick-guide{width:min(540px,calc(100vw - 24px));box-sizing:border-box;max-height:90dvh;overflow:auto}.pawe-guide-heading{display:flex;gap:10px;align-items:center;justify-content:space-between}.pawe-guide-heading h2{font:700 22px/1.2 Fredoka,sans-serif;margin:0}.pawe-game .pawe-guide-heading button{flex:none;width:44px;min-height:44px;border:1px solid #d6bedc;border-radius:10px;background:#f0e5f4;color:#674478;font-size:22px}.pawe-guide-stage{width:min(100%,300px);margin:12px auto;background:#f7f0e5;border:1px solid #ddcbe3;border-radius:14px}.pawe-guide-stage svg{display:block;width:100%;height:auto}.pawe-guide-caption{min-height:65px;font:800 14px/1.5 Nunito,sans-serif;color:#6c507b}.pawe-guide-controls{display:flex;gap:8px;flex-wrap:wrap}.pawe-game .pawe-guide-controls button{min-height:44px;padding:9px 12px;border:1px solid #ccb1d4;border-radius:10px;background:#eee2f3;color:#614375;font:900 12px/1.3 Nunito,sans-serif}.pawe-guide-controls button:disabled{opacity:.5}.pawe-quick-guide>small{display:block;margin-top:12px;color:#82698a}
.pawe-fullscreen-exit{position:fixed;right:16px;bottom:max(14px,env(safe-area-inset-bottom));z-index:75;min-height:44px;padding:10px 16px;border:2px solid #f3dec0;border-radius:12px;background:#704788;color:#fff9ed;box-shadow:0 3px 12px #43295350;font:900 13px Nunito,sans-serif}.pawe-fullscreen-exit[hidden]{display:none!important}
body.pawe-play-expanded{overflow:hidden}.pawe-play-expanded .pawe-sidebar{display:none}.pawe-play-expanded .site-body{position:fixed;inset:0;margin:0;padding:0 10px;width:100%;height:100dvh;box-sizing:border-box;overflow:auto;background:linear-gradient(135deg,#d8bbe4,#efdfef)}.site-body:fullscreen{margin:0;padding:0 10px;width:100%;height:100%;overflow:auto;background:linear-gradient(135deg,#d8bbe4,#efdfef)}.pawe-play-expanded .site-footer{display:none}
@media(max-width:650px){.game-page .game-save-bar{flex-wrap:wrap}.pawe-play-tools{margin-left:auto}.pawe-personal-target{font-size:10px!important}}

.pawe-play-expanded .menu-toggle{display:none!important}

.pawe-record-badge{
 display:table;width:fit-content;max-width:100%;margin:5px 0;padding:3px 8px;
 border:1px solid #dcb972;border-radius:99px;background:#fff1c9;color:#634b28;
 font:900 12px/1.35 Nunito,sans-serif;pointer-events:none
}
.pawe-session-copy>.pawe-record-badge{display:table;color:#634b28;font-weight:900}
.pawe-record-badge::before{content:"✦";display:inline-block;margin-right:.35em;color:#936319}
#modal .pawe-record-badge{margin-inline:auto}
@media(prefers-reduced-motion:no-preference){
 .pawe-record-badge{animation:pawe-record-rise .65s ease-out both}
 .pawe-record-badge::before{animation:pawe-record-star .6s ease-out 2}
}
@keyframes pawe-record-rise{from{opacity:0;transform:translateY(5px)}45%{box-shadow:0 0 13px #f4d68c}}
@keyframes pawe-record-star{50%{transform:scale(1.45) rotate(18deg)}}
