/* Fenêtre « Postuler » de annonce.php : choix du CV + lettre IA */
.cand-form { display: flex; flex-direction: column; gap: 1.5rem; text-align: left; }
.cand-cv { border: 0; padding: 0; margin: 0; display: grid; gap: .5rem; min-width: 0; }
.cand-cv legend { font-weight: 700; color: #374151; margin-bottom: .5rem; padding: 0; }
.cand-cv-option {
    display: flex; align-items: center; gap: .75rem; padding: .75rem .9rem; cursor: pointer;
    border: 2px solid #e5e7eb; border-radius: 6px; background: #fff; transition: border-color .15s, background .15s;
}
.cand-cv-option[hidden] { display: none; }
.cand-cv-option:hover { border-color: #3b4fa0; }
.cand-cv-option:has(input:checked) { border-color: #1b2a6b; background: #f2f3f9; }
.cand-cv-option input { accent-color: #1b2a6b; width: 1.1rem; height: 1.1rem; flex: none; }
.cand-cv-option > i { font-size: 1.4rem; color: #1b2a6b; width: 1.5rem; text-align: center; }
.cand-cv-texte { display: flex; flex-direction: column; flex: 1; min-width: 0; }
.cand-cv-texte strong { color: #12141c; overflow-wrap: anywhere; }
.cand-cv-texte small { color: #64748b; font-size: .8rem; }
.cand-cv-voir { font-size: .85rem; font-weight: 600; color: #3b4fa0; text-decoration: none; }
.cand-cv-voir:hover { text-decoration: underline; }
.cand-cv-fichier { display: grid; gap: .5rem; padding: .25rem 0 0; }
.cand-cv-fichier[hidden] { display: none; }
.cand-cv-fichier-label { font-size: .9rem; font-weight: 600; color: #374151; }
.cand-cv-fichier input[type="file"] { width: 100%; padding: .75rem; border: 2px dashed #c3c8d8; border-radius: 6px; background: #f8f9fc; }
.cand-garder { display: flex; gap: .5rem; align-items: flex-start; font-size: .88rem; color: #374151; cursor: pointer; }
.cand-garder input { margin-top: .15rem; accent-color: #1b2a6b; }
.cand-lettre-tete { display: flex; justify-content: space-between; align-items: center; gap: .75rem; flex-wrap: wrap; margin-bottom: .5rem; }
.cand-lettre-tete label { font-weight: 700; color: #374151; }
.cand-lettre-tete label span { font-weight: 400; color: #64748b; }
.cand-btn-ia {
    display: inline-flex; align-items: center; gap: .4rem; border: 0; cursor: pointer;
    background: #e8a33d; color: #2a1a03; font-weight: 700; font-size: .85rem; padding: .45rem .8rem; border-radius: 4px;
}
.cand-btn-ia:hover { background: #c9821f; color: #fff; }
.cand-btn-ia:disabled { opacity: .7; cursor: wait; }
.cand-form textarea { width: 100%; padding: .75rem; border: 2px solid #e5e7eb; border-radius: 8px; font-family: inherit; resize: vertical; }
.cand-aide { display: block; margin-top: .35rem; color: #64748b; font-size: .8rem; }
[data-theme="dark"] .cand-cv legend, [data-theme="dark"] .cand-lettre-tete label, [data-theme="dark"] .cand-garder, [data-theme="dark"] .cand-cv-fichier-label { color: #e6e8f0; }
[data-theme="dark"] .cand-cv-option { background: #1a1e2e; border-color: #343a52; }
[data-theme="dark"] .cand-cv-option:has(input:checked) { background: #23283b; border-color: #8d9be6; }
[data-theme="dark"] .cand-cv-texte strong { color: #e6e8f0; }
[data-theme="dark"] .cand-cv-option > i, [data-theme="dark"] .cand-cv-voir { color: #aab6f0; }
[data-theme="dark"] .cand-cv-fichier input[type="file"], [data-theme="dark"] .cand-form textarea { background: #1a1e2e; border-color: #343a52; color: #e6e8f0; }

/* Salaire estimé (fiche offre sans salaire) */
.meta-salary-estime .salaire-estime-tag { margin-left: .35rem; font-size: .7rem; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; background: #fdf1dc; color: #9a5b07; padding: .1rem .4rem; border-radius: 3px; }
[data-theme="dark"] .meta-salary-estime .salaire-estime-tag { background: #3a2a10; color: #f6c87f; }
