:root{--bg:#0e1117;--panel:#171c26;--border:#2a3242;--text:#e6e9f0;--muted:#8b94a7;--accent:#4f8cff;--accent-hover:#6ba1ff;--danger:#ff5c5c}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Segoe UI,Roboto,Arial,sans-serif;font-size:14px}main{max-width:960px;margin:0 auto;padding:24px 16px 48px}h1{font-size:20px;font-weight:600;margin:0 0 4px}.subtitle{color:var(--muted);margin:0 0 24px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:16px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field label{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.field input,.field select{background:#0b0e14;border:1px solid var(--border);border-radius:6px;color:var(--text);padding:9px 10px;font-size:14px;outline:none}.field input:focus,.field select:focus{border-color:var(--accent)}.row{display:flex;gap:12px;flex-wrap:wrap}.row .field{flex:1 1;min-width:180px}button{background:var(--accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px}button:hover{background:var(--accent-hover)}button:disabled{background:var(--border);color:var(--muted);cursor:not-allowed}button.secondary{background:transparent;border:1px solid var(--border);color:var(--text)}button.secondary:hover{border-color:var(--accent)}.mode-switch{display:flex;gap:8px;margin-bottom:16px}.url-preview{background:#0b0e14;border:1px solid var(--border);border-radius:6px;color:var(--muted);font-family:Consolas,Courier New,monospace;font-size:12px;padding:10px;word-break:break-all;margin:12px 0}.hint{background:#101826;border:1px solid #24406b;border-radius:6px;color:#9db8dd;font-size:12px;line-height:1.5;padding:10px 12px}.error{color:var(--danger);margin:8px 0}.game-frame{width:100%;height:70vh;min-height:480px;border:1px solid var(--border);border-radius:8px;background:#000}