:root{
  --bg:#111214;--card:#1b1d21;--line:#343840;--text:#f4f4f1;--muted:#aeb2ba;
  --accent:#d8ff38;--danger:#ff7272;
}
*{box-sizing:border-box} body{margin:0;background:radial-gradient(circle at 50% 0,#292d34 0,#111214 48%);color:var(--text);font-family:Arial,Helvetica,sans-serif;min-height:100vh}
.container{width:min(1080px,92%);margin:0 auto;padding:7vh 0}
.card{background:rgba(27,29,33,.96);border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:0 18px 60px #0005}
#connexion{max-width:620px;margin:10vh auto;text-align:center}.eyebrow{font-size:.72rem;letter-spacing:.18em;color:var(--accent);font-weight:700}
h1{font-size:clamp(2.6rem,7vw,5.5rem);line-height:.92;margin:18px 0}.intro{color:var(--muted);font-size:1.05rem;line-height:1.6}
label{display:block;text-align:left;margin:28px 0 8px;font-weight:700}input{width:100%;padding:17px 18px;border-radius:12px;border:1px solid var(--line);background:#101114;color:var(--text);font-size:1.05rem}
button{width:100%;margin-top:16px;border:0;border-radius:12px;padding:18px;background:var(--accent);color:#101114;font-weight:900;letter-spacing:.06em;cursor:pointer}button:disabled{opacity:.5;cursor:wait}
.hidden{display:none!important}.topbar{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.topbar h2{margin:8px 0 0;font-size:2rem}.student-badge{border:1px solid var(--line);border-radius:999px;padding:10px 15px;color:var(--muted)}.student-badge strong{color:var(--text)}
.grid{display:grid;grid-template-columns:1.5fr 1fr;gap:22px}.draw-card{text-align:center}.result{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center}.result-label{color:var(--muted);font-size:1rem}.word{font-size:clamp(3rem,9vw,7rem);font-weight:900;line-height:1;margin-top:25px;overflow-wrap:anywhere}.section-title{display:flex;align-items:center;justify-content:space-between}.section-title h3{margin:0;font-size:1.4rem}.section-title span{background:#2b2e34;border-radius:999px;padding:7px 11px;color:var(--accent);font-weight:700}.history{list-style:none;padding:0;margin:25px 0 0;max-height:380px;overflow:auto}.history li{padding:14px 0;border-bottom:1px solid var(--line);display:flex;gap:12px}.history li::before{content:"→";color:var(--accent)}.message{min-height:1.4em;color:var(--danger);margin-top:12px}
@media(max-width:760px){.grid{grid-template-columns:1fr}.topbar{align-items:start;flex-direction:column}.student-badge{width:100%;text-align:center}}
