:root{--page-bg: #e9e5ee;--panel-bg: rgba(255, 255, 255, .72);--panel-border: rgba(105, 101, 118, .2);--text: #211f2d;--text-muted: #625d70;--blue: #2f67ff;--red: #ff3246;--orange: #ff842f;--yellow: #ffda3f;--green: #33df43;--purple: #bd36ff;--tile-shadow: rgba(38, 34, 48, .24);--tile-edge: rgba(0, 0, 0, .18);--hex-unit: clamp(44px, 3.8vw, 52px);color:var(--text);background:var(--page-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{background:var(--page-bg)}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.game-screen{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);min-height:100vh;gap:clamp(14px,2.6vw,28px);padding:clamp(12px,2.4vw,28px);background:var(--page-bg)}.hud{display:flex;flex-direction:column;align-self:start;gap:14px;min-width:0;position:sticky;top:16px}.level-meta{min-width:0}.eyebrow{margin:0 0 6px;color:var(--text-muted);font-size:.76rem;font-weight:800;letter-spacing:0;text-transform:uppercase}h1{margin:0;color:var(--text);font-size:clamp(1.8rem,4.2vw,3.1rem);font-weight:900;letter-spacing:0;line-height:.98}p{margin:8px 0 0;color:var(--text-muted)}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.stats div,.level-picker,.notice,.feedback-panel{border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);box-shadow:0 16px 34px #3b37491a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.stats div{padding:10px 12px}.stats dt{color:var(--text-muted);font-size:.74rem;font-weight:800;text-transform:uppercase}.stats dd{margin:2px 0 0;color:var(--text);font-size:1.35rem;font-weight:900}.control-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.game-button,.level-picker select{min-height:42px;border:0;border-radius:8px;color:#fff;background:#292536;font-weight:850;box-shadow:0 5px #00000038}.game-button{padding:9px 12px}.game-button:not(:disabled):hover,.tile:hover{filter:brightness(1.06)}.game-button:focus-visible,.tile:focus-visible,.level-picker select:focus-visible{outline:4px solid #111111;outline-offset:3px}.level-picker{display:grid;gap:8px;padding:12px}.level-picker span{color:var(--text-muted);font-size:.78rem;font-weight:800}.level-picker select{width:100%;padding:0 10px}.notice{padding:12px;color:#8b4e00}.play-area{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:14px;min-width:0}.board-scroll{display:grid;min-width:0;min-height:0;align-items:start;justify-items:center;overflow:auto;padding:clamp(10px,2vw,18px);scrollbar-width:thin}.board{position:relative;flex:none;min-width:max-content}.tile{position:absolute;display:grid;width:calc(var(--hex-unit) * 1.18);height:var(--hex-unit);place-items:center;border:0;color:#fff;background:var(--blue);clip-path:polygon(24% 3%,76% 3%,100% 50%,76% 97%,24% 97%,0 50%);filter:drop-shadow(0 4px 0 var(--tile-edge)) drop-shadow(0 8px 5px var(--tile-shadow));font-size:calc(var(--hex-unit) * .55);font-weight:950;line-height:1;transition:filter .12s ease,opacity .42s ease-in,transform .42s cubic-bezier(.2,.8,.2,1);--exit-x: 0px;--exit-y: 0px}.tile:after{position:absolute;inset:8% 12% 18%;content:"";border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.24),transparent);pointer-events:none}.tile span{position:relative;z-index:1;text-shadow:0 2px 0 rgba(0,0,0,.14)}.tile[data-direction=up]{background:var(--blue)}.tile[data-direction=upRight]{background:var(--green)}.tile[data-direction=downRight]{background:var(--orange)}.tile[data-direction=down]{background:var(--yellow)}.tile[data-direction=downLeft]{background:var(--red)}.tile[data-direction=upLeft]{background:var(--purple)}.tile[data-direction=down]{color:#fff}.tile[data-blocked-source=true]{outline:4px solid #16121d;transform:translateY(2px)}.tile[data-blocker=true]{outline:4px solid #ffef8a;transform:scale(1.05)}.tile[data-exiting=true]{pointer-events:none;z-index:4;animation:tile-exit 1.2s cubic-bezier(.2,.8,.2,1) forwards;will-change:opacity,transform}@keyframes tile-exit{0%{opacity:1;transform:translate(0) scale(1)}45%{opacity:1;transform:translate(calc(var(--exit-x) * .38),calc(var(--exit-y) * .38)) scale(1.03)}to{opacity:0;transform:translate(var(--exit-x),var(--exit-y)) scale(.94)}}.feedback-panel{min-height:70px;padding:12px 14px}.feedback-panel strong{display:block;color:var(--text);font-size:1rem}.feedback-panel span{display:block;color:var(--text-muted);margin-top:3px}.blocked-message strong{color:#df2135}.completion strong{color:#147f24}@media(max-width:760px){:root{--hex-unit: clamp(44px, 11vw, 48px)}.game-screen{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:10px;min-height:100dvh;padding:10px}.hud{position:static;gap:9px}.level-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}.level-meta .eyebrow,.level-meta p{grid-column:1 / -1}.stats,.control-row{grid-template-columns:repeat(2,minmax(0,1fr))}.play-area{gap:10px}.board-scroll{max-height:none;padding:4px 0 8px;justify-items:center}.tile[data-exiting=true]{animation-name:tile-exit-mobile}}@keyframes tile-exit-mobile{0%{opacity:1;transform:translate(0) scale(1)}62%{opacity:1;transform:translate(calc(var(--exit-x) * .3),calc(var(--exit-y) * .3)) scale(1.04)}to{opacity:0;transform:translate(var(--exit-x),var(--exit-y)) scale(.94)}}@media(max-width:420px){h1{font-size:1.75rem}.stats dd{font-size:1.15rem}}
