/* Une présence plus humaine, avec les repères et la lisibilité du site. */
:root{--warm:#f8f4ec;--sage:#e8eee5;--terracotta:#a44f38}
.hero.hero-warm{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(230px,.9fr);align-items:center;gap:24px;background:var(--warm);padding:26px;border:1px solid var(--line);border-radius:20px}
.hero-copy{display:flex;flex-direction:column;gap:14px}.hero-warm img{width:100%;height:auto;max-height:270px;object-fit:contain;mix-blend-mode:multiply;border-radius:18px}
.hero-warm h1{font-size:clamp(28px,3.2vw,43px);line-height:1.08}.hero-note{font-size:15px;color:var(--muted)}
.class-home{display:flex;gap:20px;justify-content:space-between;align-items:center;background:var(--sage);border:1px solid var(--line);border-radius:16px;padding:20px}.class-home h2{margin:0 0 4px;font-size:22px}.class-home p{margin:0}.class-home .btnrow{flex-shrink:0}
.uecard,.tool{transition:transform .15s ease,box-shadow .15s ease}.uecard:hover,.tool:hover{transform:translateY(-2px);box-shadow:0 6px 18px #38244a0b}
.class-intro,.class-join,.class-welcome{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(200px,.8fr);gap:24px;align-items:center;background:var(--warm);padding:24px;border:1px solid var(--line);border-radius:18px}.class-intro img,.class-join img,.class-welcome img{width:100%;height:auto;border-radius:14px;mix-blend-mode:multiply}.class-welcome img{max-height:190px;object-fit:contain}
.class-message{min-height:24px;margin:8px 0}.class-message.error{color:var(--bad,#a32735)}.class-quiz-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px}.class-quiz-card{background:var(--surface);border:1px solid var(--line);padding:20px;border-radius:14px}.class-quiz-card h3{margin:0 0 8px;font-size:22px}.class-history{display:grid;gap:8px}.class-history-row{justify-content:space-between;white-space:normal;text-align:left}.class-admin{border-top:1px solid var(--line);margin-top:28px;padding-top:12px}.class-request{border-bottom:1px solid var(--line);padding:12px 0}.class-editor{display:grid;gap:18px}.class-selected{padding-left:24px;display:grid;gap:10px}.class-selected li{padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.class-selected li .btnrow{margin-top:8px}.class-bank{border-top:1px solid var(--line);padding-top:14px}.class-bank-question{display:flex;gap:18px;align-items:flex-start;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line)}.class-bank-question>div{min-width:0}.class-bank-question p{margin:0 0 6px}.class-bank-question>button{flex-shrink:0}.class-custom-option{display:flex;gap:12px;align-items:center;margin:8px 0}.class-custom-option input[type=checkbox]{width:20px;height:20px;flex-shrink:0}.class-custom-option input:not([type=checkbox]){flex:1;min-width:0}.class-editor fieldset{border:1px solid var(--line);border-radius:10px;padding:14px}.class-editor legend{font-weight:600;padding:0 6px}
.class-join{align-items:start}.class-join form{display:grid;gap:15px;margin-top:20px}.class-join .field{max-width:420px}#join-code{font:700 24px var(--f-mono,monospace);letter-spacing:.1em;text-transform:uppercase}.class-join img{margin-top:32px}
.live-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.live-top h2{font-size:30px;margin:6px 0 0}.live-status{display:grid;gap:5px;text-align:right;color:var(--muted);white-space:nowrap}.class-host-controls{margin-bottom:20px}.live-lobby{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,1.2fr);gap:30px;align-items:start}.live-invite{padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--warm);text-align:center}.live-code{display:block;font:700 clamp(25px,4vw,42px)/1.5 var(--f-mono,monospace);letter-spacing:.07em}.qr-picture{max-width:250px;margin:18px auto;padding:12px;background:white;color:black;border-radius:12px}.qr-picture svg{width:100%;height:auto;display:block}.class-players{list-style:none;margin:18px 0;padding:0;display:grid;gap:6px}.class-players li{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:8px 0}.live-wait{padding:50px 20px;text-align:center;border:1px solid var(--line);background:var(--warm);border-radius:18px}.live-wait-dot{width:18px;height:18px;display:inline-block;background:var(--accent);border-radius:50%;margin:12px}
.live-question{background:var(--surface);border:1px solid var(--line);padding:24px;border-radius:18px;margin-top:18px}.live-question-meta{display:flex;gap:12px;justify-content:space-between;align-items:center;color:var(--muted)}.live-clock{font:700 28px var(--f-mono,monospace);color:var(--accent);min-width:70px;text-align:right}.live-question h3{font-size:clamp(22px,2.3vw,30px);line-height:1.3;margin:22px 0}.live-question fieldset{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.live-option{display:flex;gap:12px;align-items:center;background:var(--paper);border:2px solid var(--line);padding:18px;border-radius:12px;cursor:pointer;min-height:84px}.live-option:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.live-option input{accent-color:var(--accent);width:20px;height:20px;flex-shrink:0}.live-option-letter{font-family:var(--f-mono,monospace);font-weight:700;color:var(--accent)}.live-option.live-good{border-color:#508066;background:#eaf3ec;color:#173825}.live-option.live-wrong{border-color:#b65b55;background:#fcf0ed;color:#5b2723}.live-question fieldset:disabled .live-option{cursor:default}.live-question form>button{margin-top:18px}.class-notice{padding:14px 18px;border-left:4px solid var(--accent);background:var(--accent-soft);border-radius:8px;margin:18px 0}.live-feedback{border-top:1px solid var(--line);margin-top:18px;padding-top:12px}.live-feedback h4{font-size:19px;margin:14px 0 6px}.class-sources{margin-top:12px}.class-distribution{list-style:none;padding:0;display:grid;gap:8px}.class-distribution li{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:8px 0}.live-next{margin-top:18px}.class-board{margin-top:30px}.class-board h2{font-size:25px}.class-me{background:var(--accent-soft);font-weight:600}.class-finished{background:var(--sage);border-radius:16px;padding:24px;margin-top:20px}.class-finished h3{font-size:28px;margin:8px 0}
.share-dialog{width:min(94vw,510px);max-height:90dvh;overflow:auto;border:1px solid var(--line);border-radius:18px;padding:26px;background:var(--surface);color:var(--ink);box-shadow:0 20px 80px #0003}.share-dialog::backdrop{background:#17112280}.share-dialog .share-close{float:right}.share-dialog h2{font-size:24px;line-height:1.2;margin:6px 0 20px}.share-dialog label{display:block;font-weight:600;margin-bottom:6px}.share-dialog input{width:100%;margin-bottom:16px}.foot .linkbtn{font-size:inherit}.salary-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.salary-inputs .field{min-width:0}.salary-detail td:last-child{text-align:right;white-space:nowrap}.salary-hours{margin-top:18px}.salary-sources{margin-top:18px}.salary-sector[hidden]{display:none}.salary-errors{color:var(--bad,#a32735)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--warm:#25242b;--sage:#202c29;--terracotta:#e7a48a}.hero-warm img,.class-intro img,.class-join img,.class-welcome img{mix-blend-mode:normal}.live-option.live-good{background:#203d2e;color:#e3f5e7}.live-option.live-wrong{background:#482d2c;color:#ffe8e4}}
:root[data-theme=dark]{--warm:#25242b;--sage:#202c29;--terracotta:#e7a48a}:root[data-theme=dark] .hero-warm img,:root[data-theme=dark] .class-intro img,:root[data-theme=dark] .class-join img,:root[data-theme=dark] .class-welcome img{mix-blend-mode:normal}:root[data-theme=dark] .live-option.live-good{background:#203d2e;color:#e3f5e7}:root[data-theme=dark] .live-option.live-wrong{background:#482d2c;color:#ffe8e4}
@media(max-width:760px){.hero.hero-warm{grid-template-columns:1fr;padding:22px}.hero-warm img{max-height:190px;grid-row:2}.class-home{align-items:flex-start;flex-direction:column}.class-intro,.class-join,.class-welcome,.live-lobby{grid-template-columns:1fr}.class-intro img,.class-join img,.class-welcome img{max-height:210px;object-fit:contain}.live-top{flex-direction:column}.live-status{text-align:left;white-space:normal}.live-question{padding:18px}.live-question fieldset{grid-template-columns:1fr}.live-option{min-height:68px;padding:14px}.salary-inputs{grid-template-columns:1fr}.class-bank-question{gap:10px}.class-history-row{flex-wrap:wrap}.live-invite .qr-picture{max-width:220px}}
@media(prefers-reduced-motion:reduce){.uecard,.tool{transition:none}.uecard:hover,.tool:hover{transform:none}}
