:root{color-scheme:dark;--bg:#10120f;--panel:#1a1d18;--line:#34392e;--text:#f0f1e8;--muted:#919986;--lime:#d5f870;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 5%,#23291b 0,transparent 65%),var(--bg);color:var(--text)}button,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.36;cursor:default}button,select,a,summary,canvas{outline-offset:5px}button:focus-visible,select:focus-visible,a:focus-visible,summary:focus-visible,canvas:focus-visible{outline:2px solid var(--lime)}button{-webkit-tap-highlight-color:transparent}button:hover:enabled{filter:brightness(1.13)}button:active:enabled{transform:translateY(1px)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.game{width:min(100% - 36px,650px);margin:0 auto;padding:26px 0 16px}.game-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:21px}.identity{display:flex;gap:14px;align-items:center}.eyebrow{font:600 9px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.7px;color:var(--muted);margin:0 0 5px}.identity h1{font-size:24px;letter-spacing:-.7px;line-height:1.1;margin:0;font-weight:750}.mark{width:35px;height:35px;display:grid;grid-template:repeat(2,1fr)/repeat(3,1fr);gap:3px;transform:rotate(-8deg)}.mark i{background:var(--lime);border-radius:2px}.mark i:first-child{grid-column:2}.mark i:nth-child(2){grid-row:2;grid-column:1}.mark i:nth-child(3){grid-row:2;grid-column:2}.mark i:nth-child(4){grid-row:2;grid-column:3}.language select{max-width:120px;background:#20251a;color:#ccd3c0;border:1px solid var(--line);padding:10px 8px;border-radius:7px;font-size:11px;min-height:40px}.cabinet{border:1px solid #414735;background:linear-gradient(120deg,#242a1e,#191d16 65%);padding:18px;border-radius:15px;box-shadow:0 20px 65px #0005,inset 0 1px #f1ffcf0c}.topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;color:#aeb69f;font:600 10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.7px}.topline i,.speed i{display:inline-block;width:5px;height:5px;background:var(--lime);border-radius:50%;margin-right:7px}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 176px;gap:19px}.board-column{min-width:0}.board-wrap{position:relative;border-radius:7px;overflow:hidden;border:1px solid #4c543e;background:#0c0f0c;isolation:isolate;box-shadow:inset 0 0 20px #0008}#board{display:block;width:100%;height:auto;aspect-ratio:1/2;max-height:63vh;object-fit:contain;touch-action:none;background:#0c0f0c}.screen{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px 18px;background:linear-gradient(#0c0f0c95,#0c0f0ce8);text-align:center;backdrop-filter:blur(2px)}.screen-content{width:min(100%,240px)}.screen-symbol{display:block;color:var(--lime);font-size:47px;line-height:1;margin:0 0 25px;font-weight:300}.screen .eyebrow{font-size:8px;letter-spacing:1.25px}.screen h2{font-size:30px;line-height:1.15;letter-spacing:-1px;margin:10px 0 14px}.screen p{font-size:12px;line-height:1.8;color:#acb4a0;margin:0 0 26px}.primary{background:var(--lime);color:#202611;display:flex;width:100%;align-items:center;justify-content:space-between;border:0;border-radius:6px;min-height:47px;padding:13px 16px;font-size:12px;font-weight:750;text-align:left}.primary b{font-size:18px}.sidebar{display:flex;flex-direction:column;gap:18px;padding:7px 0}.label{display:block;color:var(--muted);font-size:10px;letter-spacing:.9px;margin-bottom:8px;font-weight:650}.score-card strong{font:500 35px/1.1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:-1.8px;color:var(--lime)}.score-rule{display:flex;gap:8px;align-items:center;margin-top:10px;font-size:9px;color:#83906f}.score-rule span:first-child{color:#acb99a;font-family:monospace}.next-card{border-top:1px solid var(--line);padding-top:17px}.next-card canvas{display:block;width:100%;height:99px;border-radius:7px;background:#10140e;border:1px solid #343c29}.stat-grid{display:grid;grid-template-columns:1fr;gap:16px}.stat-grid>div{display:flex;align-items:baseline;justify-content:space-between;gap:7px}.stat-grid .label{font-size:9px;margin:0}.stat-grid strong{font:500 21px ui-monospace,SFMono-Regular,Consolas,monospace;color:#dce3d0}.actions{display:flex;flex-direction:column;gap:7px;margin-top:auto}.actions button{display:flex;align-items:center;gap:8px;min-height:40px;width:100%;border:1px solid #3b4430;border-radius:6px;background:#252d1e;color:#cbd6bb;font-size:11px;padding:9px 11px;text-align:left}.actions button>span:first-child{font-size:16px;color:#d5f870}.actions kbd{font:7px ui-monospace,monospace;color:#82936c;margin-left:auto}.tip{font-size:10px;line-height:1.65;color:#7e8c6c;margin:0}.touch-controls{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px}.control{border:1px solid #414a33;background:#2d3524;border-radius:6px;padding:7px 2px;color:#d7e2c6;touch-action:none;user-select:none;min-height:48px;display:flex;flex-direction:column;gap:1px;align-items:center;justify-content:center}.control b{font:400 23px/1 ui-monospace,monospace}.control small{font-size:8px;letter-spacing:.5px;color:#92a477}.control.rotate{background:#3b472b;border-color:#657b42}.control.rotate b{color:var(--lime)}.statusbar{margin-top:16px;border-top:1px solid var(--line);padding-top:13px;display:flex;justify-content:space-between;gap:10px;color:#a5b28f;font:9px ui-monospace,SFMono-Regular,Consolas,monospace}.speed{color:#7e8d6a;white-space:nowrap}.speed i{width:4px;height:4px;background:#788960}.instructions{display:flex;flex-direction:column;gap:10px;padding:22px 2px 18px}.instructions h2{font-size:14px;font-weight:650;letter-spacing:-.2px;margin:0 0 8px}.instructions p{font-size:10px;line-height:1.9;color:var(--muted);margin:0}.instructions details{border-top:1px solid #2b3125;padding-top:11px}.instructions summary{font-size:10px;color:#b0bd9e;cursor:pointer}.instructions details p{margin-top:10px}.notice{font-size:11px;line-height:1.6;color:#e9c788;border:1px solid #675237;border-radius:6px;padding:10px 13px;margin:0 0 16px}footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #2a3024;padding:15px 1px;color:#69745d;font-size:9px;line-height:1.6}footer a{color:#95a284;text-decoration:none}footer a:hover{text-decoration:underline}@media(min-width:680px){.game{padding-top:30px}.play-layout{grid-template-columns:minmax(0,1fr) 192px;gap:23px}.cabinet{padding:20px}.sidebar{gap:20px}.score-card strong{font-size:39px}#board{max-height:570px}.next-card canvas{height:110px}}@media(max-width:440px){.game{width:calc(100% - 20px);padding-top:16px}.game-header{margin-bottom:15px}.identity{gap:10px}.identity h1{font-size:20px}.identity .eyebrow{font-size:7px;letter-spacing:1.2px}.mark{width:29px;height:29px}.language select{font-size:10px;max-width:99px;min-height:36px;padding:8px 5px}.cabinet{padding:12px;border-radius:10px}.topline{font-size:8px;letter-spacing:1px;margin-bottom:12px}.play-layout{grid-template-columns:minmax(0,1fr) 104px;gap:11px}.sidebar{gap:13px;padding:3px 0}.score-card strong{font-size:25px;letter-spacing:-1.5px}.label{font-size:8px;margin-bottom:7px}.score-rule{font-size:7px;gap:4px;margin-top:7px}.next-card{padding-top:12px}.next-card canvas{height:72px}.stat-grid{gap:12px}.stat-grid>div{display:block}.stat-grid .label{font-size:8px;margin-bottom:4px}.stat-grid strong{font-size:19px}.actions{gap:5px}.actions button{min-height:37px;padding:7px 6px;gap:5px;font-size:9px}.actions kbd{display:none}.tip{font-size:8px}.screen{padding:18px 12px}.screen-symbol{font-size:35px;margin-bottom:16px}.screen .eyebrow{font-size:6px;letter-spacing:.6px}.screen h2{font-size:24px;margin:9px 0 12px}.screen p{font-size:10px;line-height:1.7;margin-bottom:20px}.primary{font-size:10px;padding:10px;min-height:43px}.control{min-height:45px}.control b{font-size:21px}.control small{font-size:7px}.touch-controls{gap:4px;margin-top:8px}.statusbar{font-size:8px;margin-top:13px;padding-top:11px}.instructions{padding-top:18px}.instructions h2{font-size:13px}.instructions p{font-size:9px}footer{font-size:8px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

/* Size the actual 1:2 board, leaving room for every gameplay control in the iframe. */
:root{--board-height:clamp(260px,calc(100svh - 260px),570px)}
.game{width:min(calc(100% - 36px),calc(var(--board-height)/2 + 233px),650px)}
#board{max-height:none}
@media(min-width:680px){.game{width:min(calc(100% - 36px),calc(var(--board-height)/2 + 257px),650px)}}
@media(max-height:760px) and (min-width:441px){
  .sidebar{gap:12px;padding:2px 0}.score-card strong{font-size:31px}.score-rule{margin-top:6px}
  .next-card{padding-top:12px}.next-card canvas{height:72px}
  .stat-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-grid>div{display:block}.stat-grid .label{font-size:8px;margin-bottom:5px}.stat-grid strong{font-size:20px}
  .actions button{min-height:36px;padding:7px 9px}.tip{display:none}
  .screen{padding:18px 13px}.screen-symbol{font-size:35px;margin-bottom:16px}.screen h2{font-size:26px}.screen p{font-size:11px;margin-bottom:20px}
}
@media(max-width:440px){
  .game{width:calc(100% - 20px)}.sidebar{gap:10px;padding:2px 0}.next-card{padding-top:9px}.next-card canvas{height:56px}
  .stat-grid{grid-template-columns:1fr 1fr;gap:6px}.stat-grid .label{font-size:7px;letter-spacing:0}.stat-grid strong{font-size:18px}
  .actions button{min-height:36px}.tip{display:none}
}
@media(max-width:360px){
  .screen{padding:14px 9px}.screen-symbol{font-size:28px;margin-bottom:12px}.screen h2{font-size:21px;margin:8px 0 10px}.screen p{font-size:9px;margin-bottom:14px}.screen .eyebrow{font-size:5px;letter-spacing:.4px}.primary{font-size:9px;min-height:40px;padding:9px}
}
