:root { --fond:#0b1020; --panneau:#141b31; --bord:#26304f; --texte:#e8ecf7; --doux:#9aa6c4; --a:#3b82f6; --b:#ef4444; --ok:#22c55e; --ko:#f87171; --or:#fbbf24; }
* { box-sizing: border-box; }
html, body { margin: 0; height: 100%; background: var(--fond); color: var(--texte); font-family: system-ui, "Segoe UI", Roboto, Arial, sans-serif; }
.cache { display: none !important; }
.btn { font: inherit; font-weight: 700; border: 1px solid var(--bord); background: var(--panneau); color: var(--texte); padding: 10px 16px; border-radius: 10px; cursor: pointer; }
.btn:hover { border-color: var(--doux); }
.btn:disabled { opacity: .35; cursor: not-allowed; }
.btn-go { background: #15803d; border-color: #22c55e; font-size: 20px; padding: 14px 26px; }
.btn-stop { background: #9a3412; border-color: #f97316; }
.btn-suite { background: #1d4ed8; border-color: #60a5fa; font-size: 18px; padding: 12px 22px; }
.btn-danger { color: #fecaca; border-color: #7f1d1d; }
code, .cmd { font-family: "Cascadia Mono", Consolas, "DejaVu Sans Mono", monospace; }
.terminal-cadre { background: #000; border: 2px solid var(--bord); border-radius: 12px; padding: 8px; overflow: hidden; }
.terminal-cadre.A { border-color: var(--a); } .terminal-cadre.B { border-color: var(--b); }
.terminal-cadre.gagnant { box-shadow: 0 0 0 4px var(--ok), 0 0 40px rgba(34,197,94,.45); }
.chrono { font-variant-numeric: tabular-nums; font-weight: 800; }
.chrono.urgent { color: var(--ko); }
.etiquette { display: inline-block; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: 3px 10px; border-radius: 99px; background: var(--panneau); border: 1px solid var(--bord); color: var(--doux); }
.niv1 { color: #86efac; border-color: #166534; } .niv2 { color: #93c5fd; border-color: #1e40af; } .niv3 { color: #fcd34d; border-color: #92400e; } .niv4 { color: #fca5a5; border-color: #991b1b; }
.connexion { max-width: 360px; margin: 12vh auto; background: var(--panneau); border: 1px solid var(--bord); border-radius: 14px; padding: 24px; }
.connexion input { width: 100%; font-size: 18px; padding: 10px; margin: 10px 0; border-radius: 8px; border: 1px solid var(--bord); background: #0b1020; color: var(--texte); }
.erreur { color: var(--ko); }
