:root{--bg: #0b1120;--panel: #162033;--panel-alt: #1f2d47;--border: #334155;--text: #f8fafc;--muted: #cbd5e1;--accent: #fbbf24;--emerald: #10b981;--danger: #ef4444}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:radial-gradient(circle at top,#172554,#0b1120 70%);color:var(--text);min-height:100vh}.app-shell{max-width:1440px;margin:0 auto;padding:18px 20px 36px}.topbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.brand{font-size:1.4rem;font-weight:800;letter-spacing:-.02em;display:flex;align-items:center;gap:10px}.badge{background:var(--panel-alt);border:1px solid #475569;padding:4px 12px;border-radius:999px;font-size:.82rem;font-weight:700;color:var(--text)}.badge.mighty-badge{background:linear-gradient(135deg,#7c2d12,#b45309);border-color:#fbbf24;color:#fef3c7}.badge.spectate-badge{background:linear-gradient(135deg,#064e3b,#0f766e);border-color:#34d399;color:#ecfdf5}.card{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:20px;box-shadow:0 12px 28px #0000005c}.home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;margin-top:20px}label{display:block;font-size:.88rem;font-weight:600;color:var(--muted);margin-bottom:6px}input[type=text],input[type=password],select{width:100%;background:#0b1120;color:var(--text);border:1px solid #475569;border-radius:8px;padding:10px 12px;font-size:.96rem;margin-bottom:12px}button{background:var(--accent);color:#0b1120;border:none;border-radius:8px;padding:10px 16px;font-weight:800;font-size:.94rem;cursor:pointer;transition:transform .08s ease,filter .15s ease}button:hover:not(:disabled){filter:brightness(1.07)}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.45;cursor:not-allowed}button.secondary{background:var(--panel-alt);color:var(--text);border:1px solid #475569}button.danger{background:var(--danger);color:#fff}.seat-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:10px;background:#0b1120;border:1px solid var(--border);margin-bottom:10px}.seat-dot{width:15px;height:15px;border-radius:50%;display:inline-block;box-shadow:0 0 0 2px #ffffff40}.table-layout{display:grid;grid-template-columns:390px 1fr;gap:20px;align-items:start}@media(max-width:1020px){.table-layout{grid-template-columns:1fr}}.draft-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.domino-card{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:12px;background:#0b1120;border:2px solid #475569;transition:border-color .15s ease,transform .1s ease,box-shadow .15s ease}.domino-card.selectable{border-color:#34d399;box-shadow:0 0 0 1px #34d39966;cursor:pointer}.domino-card.selectable:hover{transform:translateY(-2px);box-shadow:0 0 18px #34d3998c}.domino-card.active-slot{border-color:#fbbf24;box-shadow:0 0 16px #fbbf2473}.domino-card.resolved{opacity:.35}.domino-pair{display:grid;grid-template-columns:1fr 1fr;gap:6px}.tile-sq{aspect-ratio:1 / 1;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-weight:800;position:relative;-webkit-user-select:none;user-select:none;border:2px solid rgba(255,255,255,.22);box-shadow:inset 0 1px #fff3,0 2px 4px #00000059}.tile-icon{font-size:1.72rem;line-height:1;filter:drop-shadow(0 2px 2px rgba(0,0,0,.55))}.tile-sq.mini-sq{border-radius:5px;border-width:1.5px;gap:1px}.tile-sq.mini-sq .tile-icon{font-size:1.08rem;filter:drop-shadow(0 1px 1px rgba(0,0,0,.55))}.crown-pill{display:inline-flex;align-items:center;justify-content:center;background:#090d18e0;color:#fde047;border:1px solid #facc15;border-radius:999px;padding:1px 5px;font-size:.78rem;font-weight:900;line-height:1.05;letter-spacing:-.04em;box-shadow:0 1px 3px #000000a6}.crown-pill.mini-crown{padding:0 4px;font-size:.62rem;letter-spacing:0}.terrain-0{background:#131f35;border:1.5px dashed #475569;box-shadow:none}.terrain-1{background:linear-gradient(145deg,#e11d48,#881337);border-color:#fde047;color:#fff;box-shadow:0 0 10px #fbbf2459,inset 0 1px #ffffff59}.terrain-2{background:linear-gradient(145deg,#fde047,#d97706);border-color:#fef9c3;color:#1c1917}.terrain-3{background:linear-gradient(145deg,#065f46,#022c22);border-color:#34d399;color:#ecfdf5}.terrain-4{background:linear-gradient(145deg,#38bdf8,#0369a1);border-color:#bae6fd;color:#f0f9ff}.terrain-5{background:linear-gradient(145deg,#a3e635,#4d7c0f);border-color:#ecfccb;color:#1a2e05}.terrain-6{background:linear-gradient(145deg,#c2410c,#6c2e09);border-color:#fdba74;color:#fff7ed}.terrain-7{background:linear-gradient(145deg,#312e81,#09090b);border-color:#c084fc;color:#fde047}.board-9x9{display:grid;grid-template-columns:repeat(9,minmax(38px,64px));gap:5px;justify-content:center;padding:14px;background:#080d18;border-radius:14px;border:2px solid #334155}.board-9x9.mini{grid-template-columns:repeat(9,minmax(24px,34px));gap:3px;padding:8px}.board-13x13{display:grid;grid-template-columns:repeat(13,minmax(28px,46px));gap:4px;justify-content:center;padding:12px;background:#080d18;border-radius:14px;border:2px solid #b45309}.board-13x13 .tile-sq{border-radius:6px;border-width:1.5px;gap:1px}.board-13x13 .tile-icon{font-size:1.24rem}.board-13x13 .crown-pill{padding:0 4px;font-size:.64rem;letter-spacing:-.02em}.board-13x13.mini{grid-template-columns:repeat(13,minmax(18px,25px));gap:2px;padding:6px}.board-13x13.mini .tile-sq{border-radius:4px;border-width:1px}.board-13x13.mini .tile-icon{font-size:.82rem}.board-13x13.mini .crown-pill{padding:0 3px;font-size:.52rem}.cell-mk-zone.terrain-0{background:#172744;border-color:#64748b}.cell-out-envelope{opacity:.16;filter:grayscale(.6)}.cell-legal-anchor{box-shadow:inset 0 0 0 2.5px #34d399,0 0 8px #34d39959;cursor:pointer}.cell-ghost-ok{outline:3.5px solid #10b981;box-shadow:0 0 14px #10b981b3;z-index:3}.cell-ghost-bad{outline:3.5px solid #ef4444;box-shadow:0 0 14px #ef4444b3;z-index:3}.opponents-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px;margin-top:18px}.turn-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;border-radius:14px;background:linear-gradient(90deg,#fbbf2433,#10b98129);border:1.5px solid rgba(251,191,36,.55);margin-bottom:16px}.error-toast{background:#ef444433;border:1.5px solid var(--danger);color:#fecaca;padding:12px 16px;border-radius:10px;margin-bottom:14px;font-weight:600}.tracker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:12px}.legend-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.legend-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;border-radius:9px;background:#0b1120;border:1px solid #334155;font-size:.84rem;font-weight:700}.legend-swatch{width:28px;height:28px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-size:1.15rem;border:2px solid rgba(255,255,255,.28)}.rules-footer{margin-top:28px}.rules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:14px}.rule-box{background:#0b1120;border:1px solid #334155;border-radius:12px;padding:14px 16px}.rule-box h4{margin:0 0 8px;color:#fbbf24;font-size:.98rem;display:flex;align-items:center;gap:6px}.rule-box ul{margin:0;padding-left:18px;color:#e2e8f0;font-size:.88rem;line-height:1.55}.rule-box li+li{margin-top:5px}
