/* Espace Emplois & CVthèque + administration : complète styles.css */
.sub-hero{background:var(--band);color:var(--on-dark);padding-block:64px 56px;text-align:center}
.sub-hero .wrap{display:grid;gap:14px;justify-items:center}
.sub-hero h1{font-size:clamp(30px,4.6vw,48px);font-weight:700;max-width:22ch}
.sub-hero p{color:var(--on-dark-soft);max-width:60ch;margin:0}
.tabs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:10px}
.tab{font:600 15px/1 var(--body);padding:13px 22px;border-radius:999px;border:1.5px solid rgba(255,255,255,.25);background:transparent;color:var(--on-dark);cursor:pointer;text-decoration:none}
.tab[aria-selected="true"]{background:var(--gold);border-color:var(--gold);color:#1B1A14}
.tab:focus-visible,.f-input:focus-visible,.card button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.tools{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-bottom:28px}
.f-input{width:100%;font:inherit;font-size:16px;padding:13px 14px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);min-width:0}
textarea.f-input{min-height:110px;resize:vertical}
.count{color:var(--ink-soft);font-size:15px;margin:0 0 16px}
.list{display:grid;gap:16px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px 24px;display:grid;gap:12px;min-width:0}
.card h3{font-size:21px;font-weight:700;margin:0}
.meta{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.meta li{font-size:13.5px;font-weight:600;padding:5px 11px;border-radius:999px;background:var(--sand);color:var(--ink)}
.meta li.hl{background:var(--emerald);color:#F6F1E6}
.card p{margin:0;color:var(--ink-soft);font-size:16px;overflow-wrap:anywhere}
.card .more{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:14px}
.card .more h4{margin:0;font:600 13px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink)}
.card .more p{white-space:pre-line}
.card-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.btn-sm{padding:11px 18px;font-size:14.5px}
.btn-em{background:var(--emerald);color:#F6F1E6}
.btn-em:hover{background:var(--emerald-deep)}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}
.btn-ghost:hover{border-color:var(--gold)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips span{font-size:13px;padding:4px 10px;border-radius:6px;border:1px solid var(--line);color:var(--ink-soft)}
.empty{text-align:center;padding:48px 20px;border:1.5px dashed var(--line);border-radius:14px;color:var(--ink-soft);display:grid;gap:10px;justify-items:center}
.empty b{color:var(--ink);font-size:18px}
.cta-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}
.cta-box{background:var(--sand);border-radius:14px;padding:24px;display:grid;gap:10px;align-content:start}
.cta-box h3{font-size:20px;font-weight:700}
.cta-box p{margin:0;color:var(--ink-soft);font-size:15.5px}
.note{font-size:14px;color:var(--ink-soft);text-align:center;margin-top:28px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (max-width:760px){.tools{grid-template-columns:1fr}.cta-row{grid-template-columns:1fr}.card{padding:18px}.sub-hero{padding-block:44px 40px}}
@media (max-width:560px){.card-actions .btn{width:100%}}

/* Administration */
.adm-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:22px}
.adm-bar h2{font-size:24px;font-weight:700}
.adm-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:28px;align-items:start}
.form-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;display:grid;gap:14px;position:sticky;top:96px}
.form-card h3{font-size:20px;font-weight:700}
.fld{display:grid;gap:6px;min-width:0;align-content:start}
.fld label{font-size:14px;font-weight:600}
.fld small{font-size:13px;color:var(--ink-soft)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:14.5px}
.check input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--emerald)}
.status{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.status.publie{background:#DCEFE3;color:#1D5E36}
.status.brouillon{background:var(--sand);color:var(--ink-soft)}
.status.expire{background:#F6DED6;color:#8A3218}
.msg{font-size:15px;font-weight:600;min-height:1.4em;margin:0}
.msg.ok{color:#1D7A45}.msg.err{color:#B5583A}
.priv{border:1px dashed var(--gold);border-radius:10px;padding:12px;display:grid;gap:10px}
.priv > b{font-size:13px;color:var(--gold-ink)}
.gate{max-width:560px;margin:0 auto;text-align:center;display:grid;gap:14px;justify-items:center}
@media (max-width:980px){.adm-grid{grid-template-columns:1fr}.form-card{position:static}}
@media (max-width:560px){.row2{grid-template-columns:1fr}}
