@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&display=swap";:root{font-family:Be Vietnam Pro,sans-serif;color:#e7edf0;background:#0b141b;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{height:86px;border-bottom:1px solid #26333c;display:flex;align-items:center;justify-content:space-between;padding:0 6vw}.brand{color:#e7edf0;text-decoration:none;font-weight:800;letter-spacing:1px;font-size:15px}.brand span{color:#b9ed9d}.badge,.eyebrow,.board-top,.board-bottom,.room-label{font-family:monospace;letter-spacing:2px;font-size:11px;color:#91a1ac}main{max-width:1200px;margin:auto;padding:52px 32px 24px}.eyebrow{color:#b9ed9d}h1{font-size:clamp(36px,5vw,60px);line-height:1.2;letter-spacing:-2px;margin:18px 0}h1 span{color:#b9ed9d}.intro p,aside p{color:#94a5b0;line-height:1.9;font-size:14px}.intro{margin-bottom:38px}.shell{display:grid;grid-template-columns:320px 1fr;border:1px solid #30404a;border-radius:20px;overflow:hidden;background:#111e27}aside{padding:32px;border-right:1px solid #30404a}h2{font-size:23px;line-height:1.5;margin:18px 0}button,input{font:inherit;border-radius:8px;border:1px solid #3b4d59;padding:12px 15px;background:#1c2c37;color:#e7edf0}button{cursor:pointer;transition:background .2s}button:hover{background:#324b59}button:focus-visible,input:focus-visible{outline:2px solid #b9ed9d;outline-offset:3px}.primary{background:#b9ed9d;color:#15221c;font-weight:700;width:100%;margin-top:16px}.primary:hover{background:#cef6b8}.divider{font-family:monospace;font-size:10px;letter-spacing:2px;text-align:center;color:#8496a2;margin:24px 0}form{display:flex;gap:8px;flex-wrap:wrap}input{width:100%;text-transform:uppercase;letter-spacing:5px}form button{width:100%}.legend{display:flex;flex-direction:column;gap:12px;margin-top:40px;color:#90a2ae;font-size:12px}.board-wrap{padding:22px;min-width:0;background:radial-gradient(ellipse at top,#1d3037,#101b23 75%)}.board-top,.board-bottom{display:flex;justify-content:space-between;gap:10px;letter-spacing:1px;font-size:10px}.board-top{padding-bottom:18px}#status{color:#b9ed9d}#game{aspect-ratio:600/504;width:100%;overflow:hidden}canvas{display:block}.board-bottom{padding:15px 0;border-top:1px solid #293a44}.controls{text-align:center;margin-top:10px;visibility:hidden}.controls button{padding:8px 17px;margin:3px}.room-code{display:block;font-family:monospace;font-size:27px;letter-spacing:4px;margin:12px 0;color:#b9ed9d}#session>button:not(.room-code){margin:4px;font-size:12px}#error{color:#ffad98;overflow-wrap:anywhere}footer{display:flex;justify-content:space-between;gap:20px;color:#718592;font-size:11px;margin-top:26px;line-height:1.8}[hidden]{display:none!important}@media(max-width:760px){header{padding:0 22px}.badge{display:none}main{padding:32px 16px}.shell{grid-template-columns:1fr}aside{border-right:0;border-bottom:1px solid #30404a;padding:24px}.legend{flex-direction:row;flex-wrap:wrap;margin-top:20px}.board-wrap{padding:14px}footer{flex-direction:column}h1{letter-spacing:-1px}}button:disabled{cursor:not-allowed;opacity:.45}.actions{display:flex;flex-wrap:wrap;gap:8px}.actions button{font-size:12px}.swap-panel{width:100%;padding:14px;border:1px solid #64835c;border-radius:10px;margin:8px 0}.swap-panel p{margin-top:0}.hint{font-size:11px!important}.session-panel>button{margin-top:12px}
