@font-face{font-family:"Press Start 2P";font-style:normal;font-display:swap;font-weight:400;src:url(./press-start-2p-latin-400-normal-_wFEWmAB.woff2)format("woff2"),url(./press-start-2p-latin-400-normal-KLytu4cr.woff)format("woff")}:root{--bg:#f2e8cf;--fg:#2b2b2b;--panel:#fff8e6;--cell:#e3d5b0;--board-bg:#d3c291;--line:#6f6238;--h:#1f5fd6;--h-soft:#a9c0f2;--b:#c42f17;--b-soft:#f2b3a8;--neutral:#b9b3a0;--neutral-dark:#5f5a4e;--value:#7a4f00;--ok:#137a37;--ok-text:#fff;--last:#a1006c;--danger:#c42f17;--font-pixel:"Press Start 2P", ui-monospace, "Courier New", monospace;--font-text:ui-monospace, "Courier New", monospace}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--fg);font-family:var(--font-text);-webkit-tap-highlight-color:transparent;touch-action:manipulation;margin:0}button{font:inherit;color:inherit}.board{width:var(--board-size,min(100vw - 20px, 640px));aspect-ratio:1;background:var(--board-bg);border:3px solid var(--fg);font-size:calc(var(--board-size,640px) / 36);border-radius:12px;grid-template-columns:repeat(8,1fr);gap:4px;padding:8px;display:grid}.cell{background:var(--cell);cursor:default;border:0;border-radius:6px;min-width:0;min-height:0;padding:0;position:relative}.cell:after{content:"";pointer-events:none;position:absolute;inset:22%}.cell[data-kind=occupied][data-owner=H]:after{background:var(--h)}.cell[data-kind=occupied][data-owner=B]:after{background:var(--b);inset:27%;transform:rotate(45deg)}.cell[data-kind=blocked][data-owner=H]:after{background:var(--h-soft);border:3px solid var(--h)}.cell[data-kind=blocked][data-owner=B]:after{background:var(--b-soft);border:3px solid var(--b);inset:29%;transform:rotate(45deg)}.cell[data-kind=neutral]{background:var(--neutral)}.cell[data-kind=neutral]:after{background:var(--neutral-dark);border-radius:2px;inset:32%}.cell[data-kind=hole]{box-shadow:inset 0 0 0 2px var(--line);opacity:.55;background:0 0}.cell[data-kind=hole]:after{display:none}.cell[data-value]{box-shadow:inset 0 0 0 3px var(--value)}.cell-value{z-index:2;font-family:var(--font-pixel);color:var(--value);font-size:1.1em;position:absolute;top:2px;left:4px}.cell[data-move]{cursor:pointer;box-shadow:inset 0 0 0 3px var(--ok)}.cell[data-move=jump]{box-shadow:inset 0 0 0 3px var(--ok), inset 0 0 0 6px var(--cell), inset 0 0 0 8px var(--ok)}.cell-mark{z-index:3;color:var(--ok);pointer-events:none;place-items:center;font-size:1.9em;font-style:normal;display:grid;position:absolute;inset:0}.cell[data-move=step] .cell-mark:before{content:"●"}.cell[data-move=jump] .cell-mark:before{content:"»"}.cell-gain{z-index:5;background:var(--ok);color:var(--ok-text);font-family:var(--font-pixel);pointer-events:none;border-radius:3px;padding:1px 4px;font-size:.95em;font-style:normal;line-height:1.3;position:absolute;bottom:2px;right:2px}.cell[data-move]:hover,.cell[data-move]:focus-visible{filter:brightness(1.12)}.cell:focus-visible{outline:4px solid var(--fg);outline-offset:2px;z-index:6}.cell[data-last]{outline:3px dashed var(--last);outline-offset:-3px;z-index:4}@media (prefers-reduced-motion:no-preference){.cell[data-move]{animation:1.4s ease-in-out infinite cell-pulse}.cell.flash{animation:.3s ease-out cell-flash}.cell:after{transition:background-color .2s,transform .2s}}@keyframes cell-pulse{50%{filter:brightness(1.18)}}@keyframes cell-flash{0%{transform:scale(1.14)}to{transform:scale(1)}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#app{min-height:100vh}.stage{place-items:center;min-height:100vh;padding:10px;display:grid}.game{--board-size:min(100vw - 24px, 100vh - 260px, 640px);flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:20px;display:flex}@media (min-width:900px){.game{--board-size:min(100vw - 380px, 100vh - 150px, 640px)}}.game-main{width:var(--board-size);flex-direction:column;align-items:center;gap:10px;min-width:300px;display:flex}.game-main>*{max-width:100%}.pills{gap:8px;width:100%;display:flex}.pill{background:var(--panel);font-family:var(--font-pixel);border:3px solid;border-radius:14px;flex:1;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;font-size:11px;display:flex}.pill b{font-size:22px}.pill{flex-wrap:wrap}.pill-total{opacity:.85;flex-basis:100%;font-size:9px;line-height:1.4}.pill-b .pill-total{text-align:right}.pill-h{border-color:var(--h)}.pill-b{border-color:var(--b)}.info{justify-content:space-between;gap:8px;width:100%;font-size:13px;display:flex}.status{font-weight:700}.actions{gap:8px;width:100%;display:flex}.btn{border:3px solid var(--fg);min-height:48px;font-family:var(--font-pixel);cursor:pointer;background:#fff;border-radius:12px;padding:10px 14px;font-size:11px}.btn:hover:not(:disabled){filter:brightness(.95)}.btn:focus-visible{outline:4px solid var(--fg);outline-offset:2px}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-end{flex:1}.btn-icon{min-width:56px}.btn-small{min-height:36px;padding:4px 10px}.btn-primary{background:var(--ok);border-color:var(--fg);color:var(--ok-text)}.cumul,.warning{font-size:12px}.warning{color:var(--danger)}.banner{border:3px solid var(--value);background:var(--panel);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:13px;display:flex}.banner[hidden]{display:none}.rules{border:3px solid var(--fg);background:var(--panel);border-radius:12px;width:280px;margin-top:10px;padding:4px 14px 10px;font-size:13px;line-height:1.5}.rules h3{font-family:var(--font-pixel);margin:10px 0;font-size:12px}.rules ul{padding-left:18px}.rules li{margin-bottom:6px}.legend{white-space:pre-line}@media (max-width:899px){.rules{width:var(--board-size);min-width:300px}}.screen{border:4px solid var(--fg);background:var(--panel);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:18px;max-width:560px;padding:24px;display:flex}.title{font-family:var(--font-pixel);margin:0;font-size:clamp(22px,6vw,40px);line-height:1.3}.home-actions{flex-direction:column;gap:12px;width:min(100%,320px);display:flex}.screen .actions{justify-content:center}.result-H .title,.final-H .title{color:var(--ok)}.result-B .title,.final-B .title{color:var(--danger)}.reason,.level-line{margin:0}.score-table{border-collapse:collapse;font-size:14px}.score-table th,.score-table td{border-bottom:1px solid var(--line);padding:6px 14px}.score-table th{text-align:left}.score-table td{text-align:right;font-family:var(--font-pixel)}.score-table .total th,.score-table .total td{border-top:3px solid var(--fg);font-weight:700}.final-scores{gap:12px;margin:0;display:flex}.overlay{z-index:100;background:#0000008c;place-items:center;display:grid;position:fixed;inset:0}.dialog{border:4px solid var(--fg);background:var(--panel);text-align:center;border-radius:14px;width:min(92vw,380px);padding:20px}
