:root{--bg: #070910;--panel: rgba(18, 22, 33, .85);--line: rgba(140, 160, 200, .16);--text: #e8ecf5;--dim: #98a1b8;--accent: #ff8a3d;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(1200px 700px at 50% -10%,#161a28 0%,transparent 60%),var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;min-height:100vh}button{font:inherit;color:var(--text);background:#ffffff0f;border:1px solid var(--line);border-radius:8px;padding:7px 12px;cursor:pointer;transition:background .15s,border-color .15s}button:hover:not(:disabled){background:#ffffff1f;border-color:#ffffff4d}button:disabled{opacity:.38;cursor:not-allowed}button.primary{background:linear-gradient(180deg,#ff9a52,#e96b1f);border-color:#ffab6b;color:#1a0d03;font-weight:650}button.primary:hover:not(:disabled){filter:brightness(1.08)}button.on{background:#ff8a3d47;border-color:var(--accent)}button.ghost{background:transparent}button.link{background:none;border:none;color:var(--accent);padding:2px 0;text-decoration:underline}button.big{width:100%;padding:11px;margin-top:10px}input,select{font:inherit;color:var(--text);background:#00000059;border:1px solid var(--line);border-radius:8px;padding:7px 10px;width:100%}input:focus-visible,select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #ff8a3d33}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:28px;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' fill='none' stroke='%2398a1b8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .15s,background-color .15s}select:hover:not(:disabled){border-color:#ffffff4d;background-color:#00000080}select:disabled{opacity:.45;cursor:not-allowed}select option{background:#11151f;color:var(--text)}.app{min-height:100vh}.toast{position:fixed;top:16px;left:50%;transform:translate(-50%);background:#3a1220;border:1px solid #ff5470;color:#ffd9e0;padding:9px 16px;border-radius:9px;z-index:50}.home{display:grid;place-items:center;min-height:100vh;padding:24px}.home-card{width:min(520px,100%);background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:32px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.home-card h1{margin:0 0 26px;font-size:40px;letter-spacing:-.02em}.home-card h1 span{color:var(--accent)}.field{display:block;margin-bottom:18px}.field>span{display:block;font-size:12px;color:var(--dim);margin-bottom:8px;text-transform:uppercase;letter-spacing:.06em}.home-actions{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}.home-actions button{flex:1;min-width:150px}.join-row{display:flex;gap:8px}.join-row input{text-transform:uppercase;letter-spacing:.2em}.join-row button{flex:0 0 auto}.how-to{margin-top:20px;font-size:13px}.tutorial{max-width:760px;margin:0 auto;padding:40px 24px 56px}.tutorial-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.tutorial-head h2{margin:0;font-size:28px;letter-spacing:-.01em}.tutorial section{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px 24px 24px;margin-bottom:16px}.tutorial h3{margin:0 0 14px;font-size:13px;text-transform:uppercase;letter-spacing:.09em;color:var(--accent)}.tutorial p{margin:0 0 14px;color:var(--dim);font-size:14px;line-height:1.7}.tutorial p:last-child{margin-bottom:0}.tutorial b{color:var(--text);font-weight:600}.tutorial ul{margin:0;padding-left:20px;color:var(--dim);font-size:14px;line-height:1.7}.tutorial li{margin-bottom:10px}.tutorial li:last-child{margin-bottom:0}.tutorial table{width:100%;border-collapse:collapse;margin:0 0 16px;font-size:13.5px}.tutorial th{text-align:left;color:var(--dim);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding:0 12px 10px 0}.tutorial td{padding:9px 12px 9px 0;border-top:1px solid var(--line);color:var(--dim);vertical-align:top}.tutorial td:last-child,.tutorial th:last-child{padding-right:0}.tutorial table+ul{margin-top:4px}.lobby{max-width:1180px;margin:0 auto;padding:24px}.lobby-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.lobby-head h2{margin:0 0 6px;letter-spacing:.04em}.lobby-body{display:grid;grid-template-columns:1fr 460px;gap:20px;align-items:start}.teams{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.team{background:var(--panel);border:1px solid;border-radius:14px;padding:16px 18px 18px}.team h3{margin:0 0 14px;font-size:15px;letter-spacing:.08em;text-transform:uppercase}.team ul{list-style:none;margin:0 0 14px;padding:0;min-height:66px}.team li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;border-radius:7px;background:#ffffff0a;margin-bottom:7px;font-size:14px}.team li.empty{background:none;color:var(--dim);font-style:italic}.team li.you{outline:1px solid rgba(255,255,255,.25)}.seat-name em{color:var(--dim);font-size:11px;margin-left:6px;font-style:normal;text-transform:uppercase}.team .x{padding:0 7px;line-height:1.5}.seat-controls{display:flex;gap:5px;align-items:center;flex:0 0 auto}.seat-controls select{width:auto;padding:3px 21px 3px 8px;font-size:11px;background-position:right 6px center}.team-actions{display:flex;gap:8px}.team-actions button{flex:1}.bot-actions{display:flex;gap:6px;margin-top:6px}.bot-actions .bot{flex:1;padding:5px 4px;font-size:12px;border-style:dashed}.bot-actions .bot.easy:hover:not(:disabled){border-color:#3fd4a0;color:#3fd4a0}.bot-actions .bot.normal:hover:not(:disabled){border-color:#49b6ff;color:#49b6ff}.bot-actions .bot.hard:hover:not(:disabled){border-color:#ff5470;color:#ff5470}.settings{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px 20px 20px}.settings h3{margin:0 0 18px;font-size:15px;text-transform:uppercase;letter-spacing:.08em;color:var(--dim)}.seed-row{display:flex;gap:8px}.seed-row button{flex:0 0 auto}.speed-row{display:flex;gap:8px}.speed-row button{flex:1}.map-preview{width:100%;height:auto;border-radius:10px;border:1px solid var(--line);display:block;margin:6px 0 10px}.hint{color:var(--dim);font-size:12.5px;line-height:1.6;margin:8px 0 0}.match{display:grid;grid-template-columns:300px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"bar bar" "side field";gap:10px;height:100vh;padding:12px}.popbar{grid-area:bar}.sidebar{grid-area:side;display:flex;flex-direction:column;gap:12px;min-height:0}.field-wrap{grid-area:field}.field-wrap{position:relative;min-width:0;min-height:0;display:grid;grid-template:100% / 100%;place-items:center}.field{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:12px;border:1px solid var(--line);touch-action:none;cursor:crosshair;box-shadow:0 20px 60px #00000080}.paused{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#06080e8c;font-size:26px;letter-spacing:.1em;text-transform:uppercase;border-radius:12px;pointer-events:none}.popbar{display:flex;height:18px;border-radius:6px;overflow:hidden;background:#ffffff0d;border:1px solid var(--line);flex:0 0 auto}.popbar .seg{display:grid;place-items:center;overflow:hidden;white-space:nowrap;font-size:11px;font-weight:650;color:#0b0e15;letter-spacing:.02em;transition:width .35s ease}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.panel.build{flex:0 0 auto}.panel.build .hint{margin:0;font-size:12px}.lair-head{display:flex;gap:11px;align-items:center;margin-bottom:14px}.lair-head .sym{font-size:22px}.lair-head b{display:block;font-size:14px}.lair-head small{color:var(--dim);font-size:12px}.build-row{margin-bottom:8px}.build-row.paths{display:grid;grid-template-columns:1fr;gap:7px}.build-row.levels{display:flex;gap:7px}.build-row.levels button{flex:1}.build-row button{display:flex;gap:7px;align-items:baseline;justify-content:space-between;font-size:13px;padding:6px 10px}.build-row em{color:var(--dim);font-style:normal;font-size:11px}.panel.send{display:flex;flex-direction:column;justify-content:center;gap:10px}.panel.send .label{font-size:11px;color:var(--dim);text-transform:uppercase;letter-spacing:.08em}.percents{display:flex;gap:7px}.percents button{flex:1;padding:7px 4px;font-size:13px;display:flex;align-items:center;justify-content:center;gap:5px}.percents kbd{font:inherit;font-size:10px;line-height:1;color:var(--dim);opacity:.8}.percents button.on kbd{color:var(--accent);opacity:1}.panel.status{display:flex;flex-direction:column;gap:14px}.standings .row{display:grid;grid-template-columns:9px minmax(0,1fr) 32px 50px;gap:10px;align-items:center;font-size:13px;padding:4px 0}.standings .row.head{font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--dim);padding-bottom:8px;margin-bottom:6px;border-bottom:1px solid var(--line)}.standings .row.head b,.standings .row.head small{font-weight:500;font-size:inherit;color:inherit}.standings .row.out{opacity:.35}.standings .row.you span{color:var(--text);font-weight:600}.standings i{width:9px;height:9px;border-radius:50%;display:block}.standings span{color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.standings b,.standings small{text-align:right;font-variant-numeric:tabular-nums}.standings b{font-weight:600}.standings small{color:var(--dim);font-size:12px}.status-foot{display:flex;align-items:center;gap:8px}.status-foot button{margin-left:auto}.status-foot .clock{font-size:13px;color:var(--text);font-variant-numeric:tabular-nums}.speed-now{font-size:11px;color:var(--dim);border:1px solid var(--line);border-radius:5px;padding:2px 6px;line-height:1.4}.speed-now.altered{color:var(--accent);border-color:#ff8a3d73}.status-foot button{padding:4px 11px;font-size:12px}.host-controls{display:flex;align-items:center;gap:8px}.host-controls>button{padding:4px 11px;font-size:12px}.speeds{display:flex;margin-left:auto;border:1px solid var(--line);border-radius:8px;overflow:hidden}.speeds button{border:none;border-radius:0;padding:4px 10px;font-size:12px;background:transparent}.speeds button+button{border-left:1px solid var(--line)}.speeds button.on{background:#ff8a3d4d;color:var(--accent);font-weight:650}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#04060cd1;display:grid;place-items:center;z-index:40;padding:24px}.confirm-card{width:min(420px,100%);background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}.confirm-card h3{margin:0 0 8px;font-size:18px}.confirm-card p{margin:0 0 18px;color:var(--dim);font-size:13.5px;line-height:1.6}.confirm-actions{display:flex;gap:10px}.confirm-actions button{flex:1;padding:9px}.confirm-actions .danger{background:#3a1220;border-color:#ff5470;color:#ffd9e0}.confirm-actions .danger:hover{background:#4a1728;border-color:#ff7a90}.result-card{width:min(720px,100%);background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:30px 32px 32px}.result-card h2{margin:0;font-size:28px}.result-card table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px}.result-card th{text-align:left;color:var(--dim);font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.06em;padding-bottom:8px}.result-card td{padding:7px 0;border-top:1px solid var(--line)}.result-card tr.you td{color:var(--accent)}.result-card em{color:var(--dim);font-style:normal;font-size:11px;text-transform:uppercase}@media (max-width: 980px){.lobby-body{grid-template-columns:1fr}.match{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"bar" "field" "side"}}
