*{box-sizing:border-box}body{margin:0;font:15px/1.6 system-ui,sans-serif}.wrap{max-width:1300px;margin:auto;padding-inline:28px}a{color:var(--sv-primary);text-underline-offset:4px}.skip{position:absolute;top:-80px}.skip:focus{top:10px}header{border-bottom:1px solid var(--sv-border)}header nav{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:15px}header nav>div{display:flex;gap:25px;font-size:13px}.heading{display:flex;align-items:end;justify-content:space-between;gap:25px;padding:38px 0 26px}.heading h1{font-size:44px;letter-spacing:-1.5px;margin:3px 0}.heading p{color:var(--sv-muted);font-size:14px;margin:0}.eyebrow{font-size:10px!important;letter-spacing:1.7px;font-weight:600}.free-label{font-size:11px;color:var(--sv-muted);padding-bottom:5px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:26px;align-items:start}.game-panel{border:1px solid var(--sv-border);border-radius:5px;padding:18px;min-width:0;background:white}.hud{display:flex;justify-content:space-between;gap:10px;padding:0 7px 15px}.hud div{font-size:10px;color:var(--sv-muted)}.hud strong{display:block;font-size:20px;color:var(--sv-text);font-variant-numeric:tabular-nums;font-weight:550}.arena{position:relative;aspect-ratio:10/7;overflow:hidden;border-radius:4px;touch-action:none;background:#15231d}.arena canvas{display:block;width:100%;height:100%;object-fit:contain}.overlay{position:absolute;inset:0;display:grid;place-items:center;background:#122019c9;color:#fff;text-align:center;padding:22px;pointer-events:none}.overlay>div{max-width:400px}.overlay button{pointer-events:auto}.overlay span{font-size:10px;letter-spacing:2px;color:#b3d1bd}.overlay h2{font-size:29px;line-height:1.15;color:white!important;margin:14px 0}.overlay p{font-size:13px;color:#d1dcd5;margin-bottom:23px}.overlay button{font-size:14px;min-height:45px}.play-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:16px}button{font:600 12px/1.4 system-ui,sans-serif;padding:11px 14px;cursor:pointer;border:1px solid var(--sv-primary);border-radius:5px;background:var(--sv-primary);color:white;min-height:42px}button:disabled{opacity:.5;cursor:not-allowed}.play-controls .direction{min-width:55px;font-size:19px;touch-action:none;user-select:none;-webkit-user-select:none}.play-controls .held{background:var(--sv-primary)!important;color:white!important}.status{font-size:12px;color:var(--sv-muted);min-height:20px;margin:13px 0 4px}.hint{font-size:11px;color:var(--sv-muted);margin:8px 0}.settings{padding:5px 0}.settings h2{font-size:18px;margin:0 0 20px}.settings label{display:block;font-size:11px;color:var(--sv-muted);margin:15px 0}.settings input,.settings select{display:block;width:100%;font:13px system-ui;padding:11px;border:1px solid var(--sv-border);border-radius:4px;color:var(--sv-text);margin-top:6px;background:white}.settings>p{font-size:11px;color:var(--sv-muted)}.key-guide{border-top:1px solid var(--sv-border);margin-top:25px;padding-top:18px}.key-guide h3{font-size:14px;margin:0 0 15px}.key-guide dl{font-size:11px;margin:0}.key-guide dt{font-weight:650;color:var(--sv-text);margin-top:11px}.key-guide dd{margin:3px 0;color:var(--sv-muted)}.key-guide p{font-size:11px;color:var(--sv-muted);margin-top:20px}.history-section{margin-top:55px;padding-top:35px;border-top:1px solid var(--sv-border)}.section-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-title h2{font-size:27px;margin:5px 0}.section-title p:not(.eyebrow){font-size:12px;color:var(--sv-muted)}.history-actions{display:flex;gap:8px}.summary{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:25px 0}.summary>div{border:1px solid var(--sv-border);padding:14px;font-size:10px;color:var(--sv-muted);border-radius:4px}.summary strong{display:block;font-size:23px;font-weight:550;color:var(--sv-text)}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;min-width:650px}th,td{padding:12px 14px;border-bottom:1px solid var(--sv-border);text-align:left}th{font-size:10px;font-weight:600;color:var(--sv-muted);background:var(--sv-subtle)}#emptyHistory{padding:20px 0;font-size:13px;color:var(--sv-muted)}.storage-note{font-size:12px;color:#865512}.rules{margin-block:45px;max-width:850px}.rules h2{font-size:24px}.rules p{font-size:13px;color:var(--sv-muted)}footer{padding-block:25px!important;border-top:1px solid var(--sv-border);display:flex;justify-content:space-between;gap:20px;font-size:12px}footer nav{display:flex;gap:20px}dialog{max-width:430px;width:calc(100% - 32px);padding:26px;border:1px solid var(--sv-border);border-radius:5px}dialog::backdrop{background:#12201999}dialog h2{font-size:23px;margin-top:0}dialog p{font-size:13px;color:var(--sv-muted)}dialog form>div{display:flex;justify-content:end;gap:10px;margin-top:25px}[hidden]{display:none!important}.game-panel:fullscreen,.game-panel.expanded{background:white;padding:15px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:auto}.game-panel:fullscreen>.arena,.game-panel.expanded>.arena{width:min(100%,calc((100dvh - 175px)*10/7));flex-shrink:0}.game-panel:fullscreen>.hud,.game-panel.expanded>.hud{width:min(100%,1000px)}.game-panel:fullscreen .hint,.game-panel.expanded .hint{display:none}.game-panel.expanded{position:fixed;inset:0;z-index:100;border-radius:0}@media(max-width:1000px){.game-layout{grid-template-columns:minmax(0,1fr) 230px;gap:20px}.play-controls{gap:6px}.play-controls button{padding:9px 11px}.free-label{display:none}}@media(max-width:760px){.wrap{padding-inline:16px}.heading{padding-top:25px}.heading h1{font-size:35px}.heading p{font-size:12px}.game-layout{grid-template-columns:1fr}.game-panel{padding:12px}.settings{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;border-top:1px solid var(--sv-border);padding-top:22px}.settings>h2,.settings>p,.settings>.key-guide{grid-column:1/-1}.settings label{margin:8px 0}.settings>button{justify-self:start}.key-guide dl{display:grid;grid-template-columns:110px 1fr;gap:10px}.key-guide dt,.key-guide dd{margin:0}.hud strong{font-size:17px}.arena .overlay h2{font-size:23px}.overlay p{font-size:12px}.overlay{padding:15px}.overlay span{font-size:8px}.overlay button{font-size:12px;min-height:40px}.play-controls .direction{min-width:48px;flex:1}.play-controls #launch{min-width:120px;flex:2}.play-controls #pause,.play-controls #fullscreen,.play-controls #sound{flex:1}.section-title{display:block}.history-actions{margin-top:16px}.summary{grid-template-columns:repeat(3,1fr)}.summary>div{padding:12px}.history-section{margin-top:30px}.hint{font-size:10px}footer{display:block}footer nav{margin-top:15px}.game-panel:fullscreen>.arena,.game-panel.expanded>.arena{width:min(100%,calc((100dvh - 195px)*10/7))}}@media(max-height:500px) and (orientation:landscape){.game-panel:fullscreen,.game-panel.expanded{padding:6px;flex-direction:row;gap:12px}.game-panel:fullscreen>.arena,.game-panel.expanded>.arena{width:calc((100dvh - 15px)*10/7);max-width:75vw}.game-panel:fullscreen>.hud,.game-panel.expanded>.hud{display:none}.game-panel:fullscreen>.play-controls,.game-panel.expanded>.play-controls{width:140px;margin:0}.game-panel:fullscreen>.status,.game-panel.expanded>.status{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Immersive play uses the entire viewport, not the normal page aspect ratio. */
html.brick-immersive,html.brick-immersive body{overflow:hidden;overscroll-behavior:none}
.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded){position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;gap:8px;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));align-items:stretch;justify-content:stretch;overflow:hidden;background:#fff}
.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.hud{grid-row:1;width:100%;display:flex;padding:0 8px;min-height:36px;align-items:center}
.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.hud strong{font-size:17px;display:inline;margin-left:7px}
.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.arena{grid-row:2;width:100%;height:100%;min-width:0;min-height:0;max-width:none;aspect-ratio:auto;flex-shrink:1;border-radius:0}
.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.arena canvas{object-fit:fill}
.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.play-controls{grid-row:3;width:100%;display:flex;justify-content:center;gap:8px;margin:0;flex-wrap:wrap}
.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.play-controls button{min-height:42px;flex:0 1 auto}
.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.play-controls .direction{min-width:70px}
.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>:is(.status,.hint){display:none}
@media(max-width:450px){.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.hud{padding:0;gap:8px}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.hud div{font-size:9px}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.hud strong{display:block;font-size:15px;margin:0}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.play-controls{gap:5px}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.play-controls button{padding:8px 10px;min-height:42px}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.play-controls .direction{min-width:48px;flex:1}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.play-controls #launch{flex:2}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.play-controls #sound{display:none}}
@media(max-height:500px) and (orientation:landscape){.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded){gap:4px;padding-block:4px}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.hud{min-height:24px}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.hud strong{font-size:13px}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.play-controls{flex-wrap:nowrap}.game-panel:is(:fullscreen,:-webkit-full-screen,.expanded)>.play-controls button{min-height:36px;padding:6px 12px}}
