.menu-toggle{position:fixed;z-index:20;top:max(12px,env(safe-area-inset-top,0px));right:max(12px,env(safe-area-inset-right,0px));width:44px;height:44px;border:1px solid #a4af9566;border-radius:50%;background:#f5efd7;color:#244a37;display:grid;place-items:center;box-shadow:0 4px 15px #142d2326;cursor:pointer}
.menu-toggle svg{width:19px;height:19px}.menu-toggle:hover{background:#ffe5a8}.menu-toggle:focus-visible{outline:3px solid #d7492d;outline-offset:3px}
body.match-started>header{display:none}body.match-started>.page{padding-top:16px}
.game-menu{position:fixed;inset:12px 12px auto auto;margin:0;width:min(300px,calc(100vw - 24px));max-height:calc(100svh - 24px);overflow:auto;border:1px solid #b5bea4;border-radius:14px;padding:20px;background:#f6f0dc;color:#244535;box-shadow:0 20px 65px #09281955}
.game-menu::backdrop{background:#0b291e70;backdrop-filter:blur(3px)}
.game-menu:focus{outline:none}.game-menu button:focus-visible{outline:2px solid #b36a30;outline-offset:2px}
.game-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.game-menu-heading h2{font:700 20px 'Space Grotesk',sans-serif;margin:0;letter-spacing:-.5px}
.menu-close{width:44px;height:44px;border:1px solid #b4bca4;border-radius:50%;background:transparent;color:inherit;font-size:24px}
.menu-item{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;padding:12px 0;border:0;border-bottom:1px solid #bfc8af80;background:transparent;text-align:left;font-size:13px;color:#244535}.menu-item>span:last-child{font-size:11px;color:#6d7b5f}.menu-sound{padding-block:6px}.menu-sound .quiet{width:44px;height:44px}
.menu-resume{width:100%;min-height:46px;background:#244b38;color:#fff1d2;border:0;border-radius:5px;font-size:12px;font-weight:700;margin-top:20px}.menu-restart{font-size:11px;min-height:44px;width:100%;background:none;border:0;color:#778268;margin-top:4px}
@media(max-width:1024px){
 body.match-started{--header-height:0px;--board-height:calc(100svh - 24px - env(safe-area-inset-bottom,0px))}
 body.match-started>.page{padding-top:10px}
 .match-started .boardtop{min-height:58px;padding-right:64px;justify-content:flex-start;flex-wrap:wrap;align-content:center;row-gap:3px}
 body>header{padding-right:76px}
}
@media(max-width:1024px) and (max-height:500px) and (orientation:landscape){
 body.match-started{--board-height:calc(100svh - 18px - env(safe-area-inset-bottom,0px))}
 body.match-started>.page{padding-top:6px}.match-started .boardtop{min-height:32px;padding-right:12px}
 .match-started .board .controls{padding-top:53px;padding-bottom:8px}.match-started .board .controlhint{margin-bottom:7px}
 .game-menu{padding:12px 20px}.game-menu-heading{margin-bottom:4px}.menu-item{min-height:44px;padding-block:6px}.menu-footer{display:flex;gap:8px;margin-top:10px}.menu-footer button{flex:1;margin:0;min-height:44px}
}
@media(max-width:1024px) and (max-height:340px) and (orientation:landscape){
 .match-started .board .controls{padding-top:48px;justify-content:flex-end}
 .match-started .board .controlhint{margin-bottom:5px}.match-started .board .controlhint span{display:none}
 .match-started .board .number{height:44px}
}
.menu-identity{padding:4px 0 16px;border-bottom:1px solid #bfc8af80}.menu-identity label{font-size:11px;font-weight:600;display:block;margin-bottom:8px}.menu-name-row{display:flex;gap:7px;align-items:center}.menu-name-tag{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:5px;background:#284b37;color:#ffe1a2;font:700 15px 'Space Grotesk',sans-serif}.menu-name-row input{width:0;min-width:0;flex:1;min-height:44px;padding:8px;border:1px solid #acb79a;border-radius:5px;background:#fffae9;color:#244535;font:16px 'DM Sans',sans-serif}.menu-name-row input:focus-visible{outline:2px solid #b36a30;outline-offset:1px}.menu-name-row button{min-height:44px;border:0;border-radius:5px;background:#e5d7ad;padding:8px 10px;font-size:11px;font-weight:700}
@media(max-width:1024px) and (max-height:500px) and (orientation:landscape){.game-menu{width:min(540px,calc(100vw - 24px));display:none;grid-template-columns:1fr 1fr;column-gap:18px}.game-menu[open]{display:grid}.game-menu-heading{grid-column:1/-1}.menu-identity{grid-column:1;grid-row:2/4;align-self:center;border:0;padding:0}.menu-footer{grid-column:1/-1;margin-top:8px}}
