:root{--bg-dark:#0f172a;--bg-gradient:linear-gradient(135deg, #0f172a 0%, #1e1b4b 100%);--card-bg:#ffffff0d;--card-border:#ffffff1a;--text-main:#f8fafc;--text-muted:#94a3b8;--accent:#6366f1;--accent-hover:#4f46e5;--success:#10b981;--danger:#ef4444;--warning:#f59e0b}body.light-mode{--bg-dark:#f8fafc;--bg-gradient:linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 100%);--card-bg:#ffffffb3;--card-border:#0000001a;--text-main:#0f172a;--text-muted:#475569;--accent:#4f46e5;--accent-hover:#4338ca}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-gradient);color:var(--text-main);flex-direction:column;min-height:100vh;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;transition:background .3s,color .3s;display:flex;overflow-x:hidden}.glass{background:var(--card-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--card-border);border-radius:16px;transition:background .3s,border-color .3s}.glass-panel{background:var(--card-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--card-border);border-radius:24px}.btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.btn:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px #6366f166}.btn-secondary{border:1px solid var(--card-border);color:var(--text-main);background:0 0}.btn-secondary:hover{box-shadow:none;background:#8080801a;transform:none}#root{flex-direction:column;height:100vh;display:flex}h1,h2,h3{letter-spacing:-.02em;font-weight:700}.text-gradient{background:linear-gradient(90deg,#818cf8,#c084fc);-webkit-text-fill-color:transparent;-webkit-background-clip:text}body.light-mode .text-gradient{background:linear-gradient(90deg,#4f46e5,#9333ea);-webkit-text-fill-color:transparent;-webkit-background-clip:text}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.animate-pulse{animation:1.5s infinite pulse}@media (width<=768px){header{flex-direction:column;gap:20px;margin-bottom:20px!important}header h1{font-size:2rem!important}.btn{padding:10px 16px;font-size:.9rem}.glass-panel{padding:20px!important}#board-export-target{padding:10px 0!important}#scenario-input{width:90%!important;font-size:1rem!important}.btn span.desktop-only{display:none}}
