/* Page candidature : mise en page + formulaire */
.cand-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: start; }
@media (max-width: 900px) { .cand-grid { grid-template-columns: 1fr; } }
.cand-info, .cand-box { padding: 20px; text-align: left; font-size: 14px; line-height: 1.6; text-transform: none; }
.cand-info p, .cand-box p { margin: 0 0 10px; }
.cand-info h4 { font-family: "Oswald"; font-size: 18px; color: var(--orange2); margin: 16px 0 6px; text-transform: uppercase; }
.cand-info ul, .cand-info ol { margin: 0 0 8px 20px; }
.cand-info li { margin-bottom: 4px; }
.cand-info blockquote { margin: 8px 0; padding: 10px 14px; border-left: 3px solid var(--orange); background: rgba(255, 138, 31, 0.08); }
.cand-who { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1px solid rgba(255, 138, 31, 0.3); }
.cand-who b { color: var(--orange2); }
.cand-box .intro { color: var(--muted); }
.cand-box .cf { display: grid; gap: 14px; }
.cand-box .cf label { display: grid; gap: 5px; font-size: 13px; text-transform: uppercase; letter-spacing: 0.3px; }
.cand-box .cf small { color: var(--muted); text-transform: none; font-size: 12px; }
.cand-box .cf .req { color: var(--orange); }
.cand-box input[type="text"], .cand-box input[type="number"], .cand-box select, .cand-box textarea {
  width: 100%; background: #1a0904; color: #fff; border: 1px solid rgba(255, 138, 31, 0.45); padding: 10px 12px; font: inherit; font-size: 14px; text-transform: none; border-radius: 4px; }
.cand-box textarea { min-height: 110px; resize: vertical; }
.cand-box .chk { display: flex; gap: 10px; align-items: flex-start; text-transform: none; cursor: pointer; }
.cand-box .chk input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--orange); flex: none; }
.cand-msg { padding: 12px 14px; border: 1px solid rgba(255, 138, 31, 0.5); background: rgba(255, 138, 31, 0.1); margin-bottom: 14px; }
.cand-msg.err { border-color: #c0392b; background: rgba(192, 57, 43, 0.18); }
.cand-msg.ok { border-color: #2e9d57; background: rgba(46, 157, 87, 0.16); }
.cand-hist { margin-top: 18px; font-size: 13px; }
.cand-hist div { display: flex; justify-content: space-between; gap: 10px; padding: 6px 0; border-bottom: 1px solid rgba(255, 138, 31, 0.2); }
.cand-badge { padding: 2px 10px; border: 1px solid; font-size: 12px; text-transform: uppercase; }
.cand-badge.attente { color: #ffb347; } .cand-badge.acceptee { color: #4cd48a; } .cand-badge.refusee { color: #ff6b5a; }
