:root{font-family:DM Sans,system-ui,sans-serif;color:#25322e;background:#f4f0e6;color-scheme:light;font-synthesis:none;--ink: #25322e;--muted: #52645d;--green: #245748;--line: #d5ded3}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:240px}button,select{font:inherit}button{touch-action:manipulation}button:focus-visible,select:focus-visible{outline:3px solid #a44c23;outline-offset:3px}.game{max-width:980px;min-height:100svh;margin:0 auto;padding:clamp(12px,3vw,32px);display:flex;flex-direction:column;gap:14px}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}h1{margin:0 auto 0 0;color:var(--green);font:700 clamp(30px,6vw,48px)/1.12 Georgia,serif;letter-spacing:-.045em}select,.restart,.dialog-actions button{min-height:44px;border:1px solid #b9c9be;border-radius:9px;padding:8px 12px;color:var(--ink);background:#fffcf4;cursor:pointer}select{min-width:0;max-width:100%}.hud{border:1px solid var(--line);border-radius:14px;padding:10px clamp(10px,3vw,24px);background:#fffcf4;display:grid;grid-template-columns:1fr 1.2fr 1fr;align-items:center;gap:10px;text-align:center}.hud span{display:block;color:var(--muted);font-size:.85rem}.hud strong{font-size:1.2rem;font-variant-numeric:tabular-nums}.combo meter{display:block;width:100%;height:16px;accent-color:var(--green)}.field{display:flex;flex:1 0 auto;align-items:center;justify-content:center;gap:22px;min-height:245px;padding:18px 12px;border-radius:18px;background:radial-gradient(ellipse at 45% 38%,#e5eadc,#c9d8ca);border:1px solid #c2d2c4;isolation:isolate}.field.vertical{flex-direction:column}.board-shell{flex:none;position:relative}.board{position:absolute;transform-origin:top left}.tile{display:grid;place-items:center;color:var(--green);background:linear-gradient(165deg,#fffdf5 5%,#f4ecd8);border:1px solid #c4bca6;border-bottom:4px solid #bfb098;border-radius:12px;box-shadow:0 2px 4px #26393032;font-weight:760;-webkit-user-select:none;user-select:none}.board-tile{position:absolute;width:76px;height:79px;padding:0;font-size:26px}.board-tile[aria-disabled=false]{cursor:pointer}.board-tile[aria-disabled=false]:hover{background:#fff7d6}.board-tile.blocked{background:#d2d6c9;color:#4d5c54;border-color:#9ea99e}.tile-art{line-height:1}.tile.ice-start,.tile.ice-end{border:3px solid #3993ac;background:linear-gradient(155deg,#e4f8ff,#addae6)}.tile.ice-start.blocked,.tile.ice-end.blocked{background:#b8d0d6;border-color:#637e90}.ice-start:after,.ice-end:after{content:"";position:absolute;top:42%;width:9px;height:16%;background:#3993ac}.ice-start:after{right:-4px}.ice-end:after{left:-4px}.stack-tile.ice-start:after,.stack-tile.ice-end:after{left:42%;width:16%;height:9px}.stack-tile.ice-start:after{top:auto;bottom:-4px}.stack-tile.ice-end:after{top:-4px}.hand{position:sticky;bottom:0;z-index:2;color:#f1faef;background:#28483e;border:2px solid #28483e;border-radius:14px;padding:9px clamp(6px,2vw,14px) 5px;box-shadow:0 3px 12px #2639302a}.hand-warning{border-color:#f39a7d;background:#623a32}.slots{max-width:650px;margin:auto;display:grid;grid-template-columns:repeat(var(--slots),minmax(0,1fr));gap:clamp(3px,1vw,9px)}.slot{min-width:0;aspect-ratio:1.04;position:relative;border-radius:8px;background:#152e28;box-shadow:inset 0 0 0 1px #fff5}.slot-extra:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border:2px solid #f5c768;border-radius:inherit;pointer-events:none}.hand-tile{width:100%;height:100%;font-size:clamp(13px,3.4vw,25px);border-radius:8px}.concealed{visibility:hidden}.hand p{margin:5px 0 2px;text-align:center;font-size:.85rem}.flight{position:fixed;pointer-events:none;z-index:10;visibility:visible;transform-origin:top left;margin:0}dialog{width:min(calc(100% - 32px),420px);max-height:calc(100% - 24px);padding:clamp(20px,5vw,32px);border:1px solid var(--line);border-radius:18px;color:var(--ink);background:#fffcf4;box-shadow:0 20px 80px #122d2660}dialog::backdrop{background:#152d27a8}dialog h2{color:var(--green);font-family:Georgia,serif;margin:0 0 12px}dialog p{margin:0 0 16px;line-height:1.5}.dialog-actions{display:flex;flex-wrap:wrap;gap:8px}.dialog-actions button{background:var(--green);color:#fff}.dialog-actions .secondary{background:#fffcf4;color:var(--ink)}@media(max-width:520px){.game{gap:9px}.field{min-height:195px;padding:10px;gap:15px}.hand-tile{border-bottom-width:2px}}.game-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.game-controls strong{color:var(--green);font-size:.9rem}.tools{display:flex;flex-wrap:wrap;gap:6px}.tools button{min-height:40px;padding:5px 9px;color:var(--ink);background:#fffcf4;border:1px solid #b9c9be;border-radius:8px;cursor:pointer}.tools button:disabled{opacity:.55;cursor:default}
