/* BlueSide — recrutement staff : page « Devenir staff », candidatures et réglages */
:root{
  --rc-amber:#f59e0b;--rc-cyan:#22d3ee;--rc-blue:#4aa3f5;--rc-green:#22c55e;--rc-red:#f43f5e;--rc-purple:#a855f7;--rc-sky:#38bdf8;
}
body.light{--rc-blue:#1f6fe0;--rc-cyan:#0e9fc4;--rc-sky:#0284c7}

.rc-mono{font-family:var(--font-head);font-variant-numeric:tabular-nums}
.rc-muted{color:var(--text-3)}
.rc-hidden{display:none!important}
.rc-mb{margin-bottom:16px}

/* Tons */
.tone-amber{--tone:var(--rc-amber)}.tone-cyan{--tone:var(--rc-cyan)}.tone-blue{--tone:var(--rc-blue)}
.tone-green{--tone:var(--rc-green)}.tone-red{--tone:var(--rc-red)}.tone-purple{--tone:var(--rc-purple)}
.tone-sky{--tone:var(--rc-sky)}.tone-muted{--tone:var(--text-3)}

.rc-chip{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:0 10px;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap;
  color:var(--tone,var(--text-2));background:color-mix(in srgb,var(--tone,var(--text-3)) 13%,transparent);
  border:1px solid color-mix(in srgb,var(--tone,var(--text-3)) 30%,transparent)}
.rc-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--tone,var(--rc-green));animation:rcPulse 1.8s infinite}
@keyframes rcPulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--tone,var(--rc-green)) 55%,transparent)}70%{box-shadow:0 0 0 9px transparent}100%{box-shadow:0 0 0 0 transparent}}
.rc-fade{animation:rcFade .35s var(--ease-out) both}@keyframes rcFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.rc-card{background:var(--bg-3);border:1px solid var(--border);border-radius:22px}
.rc-section-title{display:flex;align-items:center;gap:10px;font-family:var(--font-head);font-size:1.08rem;font-weight:700;letter-spacing:-.01em;margin:0 0 16px}
.rc-section-title .ic{color:var(--tone,var(--rc-blue))}
.rc-state{display:inline-flex;align-items:center;gap:9px;min-height:36px;padding:0 15px;border-radius:999px;font-weight:700;font-size:.84rem;
  color:var(--tone);background:color-mix(in srgb,var(--tone) 15%,rgba(6,10,20,.35));border:1px solid color-mix(in srgb,var(--tone) 40%,transparent);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
body.light .rc-state{background:color-mix(in srgb,var(--tone) 12%,#fff)}

/* Champs */
.rc-label{display:block;font-size:.8rem;font-weight:600;color:var(--text-2);margin:0 0 7px}
.rc-input{width:100%;min-height:44px;padding:11px 15px;border-radius:14px;border:1px solid var(--border-2);background:var(--bg-4);color:var(--text);
  font:inherit;font-size:.92rem;outline:none;transition:border-color .15s,box-shadow .15s}
.rc-input:hover{border-color:rgba(148,178,220,.28)}
.rc-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-glow)}
textarea.rc-input{resize:vertical;min-height:120px;line-height:1.6}
.rc-error{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:.8rem;color:var(--rc-red);font-weight:600}
.rc-hint{font-size:.8rem;color:var(--text-3);margin-top:8px;line-height:1.55}
.rc-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rc-grid-3{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:12px}
.rc-switch{position:relative;display:inline-flex;align-items:center;gap:12px;cursor:pointer;user-select:none;font-size:.9rem;font-weight:600}
.rc-switch input{position:absolute;opacity:0;pointer-events:none}
.rc-switch-track{position:relative;flex-shrink:0;width:48px;height:28px;border-radius:999px;background:var(--bg-5);border:1px solid var(--border-2);transition:background .2s,border-color .2s}
.rc-switch-track::after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.3);transition:transform .25s var(--ease-out)}
.rc-switch input:checked+.rc-switch-track{background:var(--rc-green);border-color:var(--rc-green)}
.rc-switch input:checked+.rc-switch-track::after{transform:translateX(20px)}
.rc-switch input:focus-visible+.rc-switch-track{outline:2px solid var(--blue);outline-offset:3px}

/* Boutons à ton */
.btn.rc-btn-green{background:var(--rc-green);border-color:var(--rc-green);color:#04120a}
.btn.rc-btn-green:hover{filter:brightness(1.08);box-shadow:0 8px 20px -6px color-mix(in srgb,var(--rc-green) 60%,transparent)}
.btn.rc-btn-red{background:color-mix(in srgb,var(--rc-red) 13%,transparent);border-color:color-mix(in srgb,var(--rc-red) 45%,transparent);color:var(--rc-red)}
.btn.rc-btn-red:hover{background:var(--rc-red);color:#fff}
.btn.rc-btn-cyan{background:color-mix(in srgb,var(--rc-cyan) 13%,transparent);border-color:color-mix(in srgb,var(--rc-cyan) 42%,transparent);color:var(--rc-cyan)}
.btn.rc-btn-cyan:hover{background:var(--rc-cyan);color:#04121a}

.rc-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:56px 20px;text-align:center;font-size:.9rem;color:var(--text-3);border:1px dashed var(--border-2);border-radius:22px}
.rc-empty .ic{width:46px;height:46px;padding:12px;border-radius:15px;background:var(--glass-hover);color:var(--text-2)}

/* ═══ PAGE PUBLIQUE « DEVENIR STAFF » ═══ */
.rc-header .rc-hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.rc-wrap{max-width:1200px;width:100%;margin:0 auto;padding:36px 24px 88px}

.rc-conditions{border-radius:22px;padding:22px;background:var(--bg-3);border:1px solid color-mix(in srgb,var(--rc-green) 26%,var(--border))}
.rc-conditions h3{display:flex;align-items:center;gap:9px;margin:0 0 14px;font-family:var(--font-head);font-size:1rem;font-weight:700;color:var(--text)}
.rc-conditions h3 .ic{color:var(--rc-green)}
.rc-condition-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px}
.rc-condition{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:14px;font-size:.88rem;font-weight:500;line-height:1.5;color:var(--text);margin-bottom:8px;
  background:color-mix(in srgb,var(--rc-green) 8%,transparent);border:1px solid color-mix(in srgb,var(--rc-green) 18%,transparent)}
.rc-condition-grid .rc-condition{margin:0}
.rc-condition:last-child{margin-bottom:0}
.rc-condition .ic{color:var(--rc-green);margin-top:2px}
.rc-conditions-public{margin-bottom:22px}

/* Parcours */
.rc-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 28px}
.rc-step{position:relative;overflow:hidden;padding:22px;border-radius:22px;border:1px solid var(--border);background:var(--bg-3);transition:transform .3s var(--ease-out),border-color .3s}
.rc-step-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.rc-step-num{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}
.rc-step-ico{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;color:var(--tone,var(--text-3));background:color-mix(in srgb,var(--tone,var(--text-3)) 14%,transparent)}
.rc-step h4{font-family:var(--font-head);font-size:1.02rem;font-weight:700;margin:0 0 6px}
.rc-step p{font-size:.86rem;color:var(--text-2);margin:0;line-height:1.6}
.rc-step.is-active,.rc-step.is-done,.rc-step.is-failed{border-color:color-mix(in srgb,var(--tone) 38%,transparent);
  background:linear-gradient(165deg,color-mix(in srgb,var(--tone) 11%,var(--bg-3)) 0%,var(--bg-3) 70%)}
.rc-step.is-active .rc-step-num,.rc-step.is-done .rc-step-num,.rc-step.is-failed .rc-step-num{color:var(--tone)}
.rc-step.is-active .rc-step-ico .ic{animation:rcPulseIcon 1.6s ease-in-out infinite}
@keyframes rcPulseIcon{50%{opacity:.45}}
.rc-step.is-todo{opacity:.55}
.rc-step-feedback{margin-top:14px;padding:12px 14px;border-radius:14px;background:rgba(0,0,0,.22);border:1px solid var(--border);font-size:.84rem;line-height:1.55;white-space:pre-wrap}
body.light .rc-step-feedback{background:rgba(15,27,51,.04)}
.rc-step-feedback b{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:4px}

/* Formulaire candidat */
.rc-preview-banner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 18px;padding:14px 14px 14px 20px;border-radius:999px;font-size:.88rem;
  color:var(--text);background:var(--amber-bg);border:1px solid color-mix(in srgb,var(--rc-amber) 40%,transparent)}
.rc-preview-banner > .ic{color:var(--rc-amber)}
.rc-preview-banner .btn{margin-left:auto}
.rc-apply{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}
.rc-form{display:flex;flex-direction:column;gap:12px;min-width:0}
.rc-field{padding:22px 24px;border-radius:22px;background:var(--bg-3);border:1px solid var(--border);transition:border-color .2s,box-shadow .2s}
.rc-field:focus-within{border-color:color-mix(in srgb,var(--rc-blue) 55%,transparent);box-shadow:0 0 0 4px var(--blue-glow)}
.rc-field.has-error{border-color:color-mix(in srgb,var(--rc-red) 65%,transparent)}
.rc-field.is-done .rc-field-num{background:color-mix(in srgb,var(--rc-green) 16%,transparent);color:var(--rc-green)}
.rc-field-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:14px}
.rc-field-head > div{flex:1;min-width:0}
.rc-field-num{flex-shrink:0;width:32px;height:32px;border-radius:11px;display:grid;place-items:center;font-family:var(--font-head);font-size:.78rem;font-weight:700;
  background:var(--bg-4);color:var(--text-3);font-variant-numeric:tabular-nums;transition:background .2s,color .2s}
.rc-field-title{display:block;font-family:var(--font-head);font-weight:600;font-size:1rem;line-height:1.4;color:var(--text)}
.rc-field-title .req{color:var(--rc-red);margin-left:3px}
.rc-field-desc{font-size:.82rem;color:var(--text-3);margin-top:4px;line-height:1.55;word-break:break-word}
.rc-field-desc a{color:var(--rc-blue)}
.rc-counter{font-size:.72rem;color:var(--text-3);font-family:var(--font-head);font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:6px}
.rc-counter.near{color:var(--rc-amber)}.rc-counter.full{color:var(--rc-red)}
.rc-info-block{padding:20px 22px;border-radius:22px;background:color-mix(in srgb,var(--rc-sky) 8%,var(--bg-3));border:1px solid color-mix(in srgb,var(--rc-sky) 28%,transparent)}
.rc-info-block h4{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-family:var(--font-head);font-size:.95rem;font-weight:700;color:var(--rc-sky)}
.rc-info-block p{margin:0;font-size:.9rem;line-height:1.65;white-space:pre-wrap;color:var(--text-2)}
.rc-info-image{border-radius:22px;overflow:hidden;border:1px solid var(--border);background:var(--bg-3)}
.rc-info-image img{display:block;width:100%;max-height:420px;object-fit:cover}
.rc-info-image figcaption{padding:12px 18px;font-size:.86rem;font-weight:600}
.rc-img-preview{margin-top:12px;border-radius:14px;overflow:hidden;border:1px solid var(--border);max-width:360px}
.rc-img-preview img{display:block;width:100%}

.rc-aside{position:sticky;top:calc(var(--nav-h) + 20px);display:flex;flex-direction:column;gap:14px}
body.has-banner .rc-aside{top:calc(var(--nav-h) + 58px)}
.rc-progress{padding:22px}
.rc-progress-ring{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.rc-ring{--p:0;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;
  background:conic-gradient(var(--rc-blue) calc(var(--p)*1%),var(--bg-5) 0)}
.rc-ring>span{width:58px;height:58px;border-radius:50%;background:var(--bg-3);display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:.9rem;letter-spacing:-.03em}
.rc-progress h3{margin:0 0 3px;font-family:var(--font-head);font-size:1rem}
.rc-progress small{color:var(--text-3);font-size:.78rem}
.rc-user{display:flex;align-items:center;gap:12px;padding:12px;border-radius:16px;background:var(--bg-4);border:1px solid var(--border)}
.rc-user img{width:40px;height:40px;border-radius:50%;object-fit:cover}
.rc-user b{display:block;font-size:.88rem}.rc-user small{color:var(--text-3);font-size:.76rem}
.rc-tips{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.rc-tips li{display:flex;gap:10px;font-size:.85rem;color:var(--text-2);line-height:1.55}
.rc-tips li .ic{color:var(--tone,var(--rc-blue));margin-top:2px}
.rc-draft{display:flex;align-items:center;justify-content:center;gap:7px;font-size:.76rem;color:var(--text-3);margin-top:12px}
.rc-draft .rc-dot{width:7px;height:7px;animation:none}
.rc-submit{width:100%;min-height:50px;font-size:.95rem;background:var(--grad-btn);color:#fff;border-color:rgba(255,255,255,.08);box-shadow:0 10px 26px -8px rgba(31,111,224,.7)}
.rc-submit:hover{background:linear-gradient(135deg,#2f86f5,#1f6fe0);transform:translateY(-1px)}
.rc-submit:disabled{opacity:.55;cursor:not-allowed;transform:none}

/* États (connexion, fermé, résultat) */
.rc-state-card{max-width:640px;margin:0 auto;text-align:center;padding:44px 34px;border-radius:26px;border:1px solid color-mix(in srgb,var(--tone,var(--border-2)) 35%,transparent);
  background:radial-gradient(ellipse 80% 70% at 50% 0%,color-mix(in srgb,var(--tone,var(--rc-blue)) 14%,transparent),transparent 70%),var(--bg-3)}
.rc-state-card .rc-big-ico{width:66px;height:66px;border-radius:21px;margin:0 auto 20px;display:grid;place-items:center;color:var(--tone,var(--rc-blue));
  background:color-mix(in srgb,var(--tone,var(--rc-blue)) 15%,transparent)}
.rc-state-card h2{font-family:var(--font-display);font-size:clamp(1.3rem,3vw,1.6rem);font-weight:700;letter-spacing:-.03em;margin:0 0 10px}
.rc-state-card p{color:var(--text-2);line-height:1.7;margin:0 auto;max-width:460px}
.rc-state-card .btn{margin-top:24px}

/* Suivi candidat */
.rc-track-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.rc-track-head h2{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,1.8rem);font-weight:700;letter-spacing:-.035em;margin:10px 0 4px}
.rc-panel{margin-top:16px;padding:24px 26px;border-radius:22px;border:1px solid var(--border);background:var(--bg-3)}
.rc-slots{display:flex;flex-wrap:wrap;gap:8px}
.rc-slot{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 13px;border-radius:999px;font-size:.82rem;font-weight:600;
  color:var(--rc-cyan);background:color-mix(in srgb,var(--rc-cyan) 11%,transparent);border:1px solid color-mix(in srgb,var(--rc-cyan) 30%,transparent)}
.rc-slot button{background:none;border:none;color:inherit;cursor:pointer;opacity:.6;padding:0;display:flex}
.rc-slot button:hover{opacity:1}
button.rc-slot{cursor:pointer;font:inherit;font-size:.82rem;font-weight:600}
button.rc-slot:hover{background:color-mix(in srgb,var(--rc-cyan) 22%,transparent)}
.rc-slot-rows{display:flex;flex-direction:column;gap:10px;margin:16px 0}
.rc-slot-row{display:grid;grid-template-columns:1.3fr 1fr auto 1fr auto;gap:10px;align-items:center}
.rc-appointment{padding:28px;border-radius:24px;border:1px solid color-mix(in srgb,var(--rc-cyan) 36%,transparent);
  background:radial-gradient(120% 120% at 100% 0%,color-mix(in srgb,var(--rc-cyan) 16%,transparent),transparent 60%),var(--bg-3)}
.rc-appointment-grid{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}
.rc-appointment h3{font-family:var(--font-display);font-size:1.35rem;font-weight:700;letter-spacing:-.03em;margin:12px 0 6px}
.rc-countdown{display:flex;gap:10px}
.rc-countdown div{min-width:68px;padding:12px 8px;border-radius:18px;text-align:center;background:var(--bg-4);border:1px solid var(--border)}
.rc-countdown b{display:block;font-family:var(--font-display);font-size:1.55rem;font-weight:700;letter-spacing:-.03em;color:var(--rc-cyan);line-height:1.15;font-variant-numeric:tabular-nums}
.rc-countdown span{font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);font-weight:700}
.rc-countdown-inline{display:inline-flex;align-items:center;gap:7px}
.rc-location{display:flex;align-items:flex-start;gap:8px;margin-top:10px;font-size:.88rem;color:var(--text-2)}
.rc-answers{display:flex;flex-direction:column;gap:10px}
.rc-answer{padding:16px 18px;border-radius:16px;background:var(--bg-4);border:1px solid var(--border)}
.rc-answer-q{display:flex;gap:10px;font-family:var(--font-head);font-size:.86rem;font-weight:600;color:var(--text);margin-bottom:8px;line-height:1.45}
.rc-answer-q span{color:var(--rc-blue);font-variant-numeric:tabular-nums}
.rc-answer-v{font-size:.9rem;line-height:1.65;color:var(--text-2);white-space:pre-wrap;word-break:break-word}
.rc-answer-v.empty{color:var(--text-3);font-style:italic}
.rc-answer-v img{max-width:100%;max-height:320px;border-radius:12px;margin-top:6px;display:block}
.rc-answer-v a{color:var(--rc-blue)}
details.rc-collapse>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;font-family:var(--font-head);font-weight:600;font-size:.95rem}
details.rc-collapse>summary::-webkit-details-marker{display:none}
details.rc-collapse>summary .ic:last-child{margin-left:auto;transition:transform .25s var(--ease-out)}
details.rc-collapse[open]>summary .ic:last-child{transform:rotate(180deg)}
details.rc-collapse[open]>summary{margin-bottom:16px}

/* Modale (recruitment-core.js) */
.rc-modal{position:fixed;inset:0;z-index:600;display:flex;align-items:center;justify-content:center;padding:20px}
.rc-modal-backdrop{position:absolute;inset:0;background:rgba(3,6,14,.66);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:rcFadeIn .2s both}
.rc-modal-box{position:relative;width:100%;max-width:540px;max-height:90dvh;overflow:auto;border-radius:26px;
  background:var(--glass-bg-strong);border:1px solid var(--glass-border);
  box-shadow:inset 0 1px 0 var(--glass-hi),0 40px 90px -30px rgba(0,0,0,.7);
  backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);
  animation:rcZoom .28s var(--ease-out) both}
.rc-modal-box.wide{max-width:760px}
@keyframes rcFadeIn{from{opacity:0}}@keyframes rcZoom{from{opacity:0;transform:translateY(10px) scale(.97)}}
.rc-modal-head{display:flex;align-items:flex-start;gap:14px;padding:24px 24px 0}
.rc-modal-head .rc-big-ico{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;flex-shrink:0;color:var(--tone,var(--rc-blue));background:color-mix(in srgb,var(--tone,var(--rc-blue)) 15%,transparent)}
.rc-modal-head h3{margin:2px 0 4px;font-family:var(--font-head);font-size:1.12rem}
.rc-modal-head p{margin:0;color:var(--text-2);font-size:.87rem;line-height:1.55}
.rc-modal-body{padding:20px 24px}
.rc-modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--border)}

/* ═══ ESPACE STAFF — CANDIDATURES ═══ */
.rc-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:20px}
.rc-stat{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:6px;padding:18px 18px 16px;border-radius:22px;background:var(--bg-3);border:1px solid var(--border)}
.rc-stat::before{content:'';position:absolute;inset:auto -30% -60% auto;width:70%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--tone,var(--rc-blue)) 16%,transparent),transparent 70%)}
.rc-stat-ico{display:grid;place-items:center;width:34px;height:34px;margin-bottom:6px;border-radius:11px;color:var(--tone,var(--text-2));background:color-mix(in srgb,var(--tone,var(--text-3)) 14%,transparent)}
.rc-stat-val{font-family:var(--font-display);font-size:clamp(1.6rem,2.2vw,2rem);font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--text);font-variant-numeric:tabular-nums}
.rc-stat-val-sm{font-size:.62em;letter-spacing:-.02em}
.rc-stat-label{font-size:.84rem;font-weight:500;color:var(--text-2)}
.rc-stat-sub{font-size:.76rem;color:var(--text-3);min-height:1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.rc-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.rc-tabs{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:999px;background:var(--bg-3);border:1px solid var(--border)}
.rc-tab{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;border-radius:999px;border:none;background:none;color:var(--text-2);
  font:inherit;font-size:.84rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s}
.rc-tab:hover:not(.active){color:var(--text);background:var(--glass-hover)}
.rc-tab .rc-count{min-width:22px;height:20px;padding:0 7px;border-radius:999px;display:grid;place-items:center;background:var(--bg-5);font-size:.7rem;font-weight:700;font-variant-numeric:tabular-nums}
.rc-tab.active{background:var(--grad-btn);color:#fff;box-shadow:0 6px 16px -6px rgba(31,111,224,.6)}
.rc-tab.active .rc-count{background:rgba(255,255,255,.2);color:#fff}
.rc-search{max-width:380px;margin-left:auto}
.rc-subfilters{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--bg-3);border:1px solid var(--border)}
.rc-subfilter{min-height:30px;padding:0 13px;border-radius:999px;border:0;background:none;color:var(--text-2);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s}
.rc-subfilter:hover:not(.active){background:var(--glass-hover);color:var(--text)}
.rc-subfilter.active{background:var(--blue-glow);color:var(--blue)}

.rc-board{display:grid;grid-template-columns:340px minmax(0,1fr);gap:16px;align-items:start}
.rc-list{position:sticky;top:0;display:flex;flex-direction:column;gap:8px;max-height:calc(100dvh - var(--nav-h) - 40px);min-height:320px;overflow-y:auto;padding:2px 4px 2px 2px;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}
.rc-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px 12px 12px;border-radius:18px;border:1px solid var(--border);background:var(--bg-3);
  cursor:pointer;text-align:left;color:inherit;font:inherit;transition:border-color .2s,background .2s,transform .25s var(--ease-out)}
.rc-item:hover{border-color:var(--border-2);transform:translateX(2px)}
.rc-item.active{border-color:color-mix(in srgb,var(--rc-blue) 55%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--rc-blue) 14%,var(--bg-3)),var(--bg-3))}
.rc-item img{width:42px;height:42px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--bg-4)}
.rc-item-main{flex:1;min-width:0}
.rc-item-name{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-item-meta{display:flex;align-items:center;gap:6px;margin-top:5px;flex-wrap:wrap}
.rc-item-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}
.rc-num{font-family:var(--font-head);font-size:.7rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--rc-blue);padding:2px 9px;border-radius:999px;
  background:color-mix(in srgb,var(--rc-blue) 12%,transparent);border:1px solid color-mix(in srgb,var(--rc-blue) 30%,transparent)}
.rc-votes-mini{display:flex;gap:8px;font-size:.72rem;font-weight:700}
.rc-votes-mini .yes{color:var(--rc-green)}.rc-votes-mini .no{color:var(--rc-red)}

.rc-detail{min-width:0;min-height:420px;overflow:hidden;border-radius:24px;border:1px solid var(--border);background:var(--bg-3)}
.rc-detail-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:22px 24px;border-bottom:1px solid var(--border);
  background:radial-gradient(ellipse 70% 120% at 0% 0%,color-mix(in srgb,var(--rc-blue) 14%,transparent),transparent 70%)}
.rc-detail-head img{width:60px;height:60px;border-radius:50%;object-fit:cover;border:2px solid var(--border-2);background:var(--bg-4)}
.rc-detail-head h2{margin:0;font-family:var(--font-display);font-size:1.3rem;font-weight:700;letter-spacing:-.03em}
.rc-detail-head .sub{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px;font-size:.8rem;color:var(--text-3)}
.rc-detail-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.rc-timeline{display:flex;align-items:center;padding:14px 24px;border-bottom:1px solid var(--border);background:var(--bg-2)}
.rc-tl-step{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:600;color:var(--text-3);white-space:nowrap}
.rc-tl-dot{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--border-2);background:var(--bg-3)}
.rc-tl-step.done{color:var(--text)}.rc-tl-step.done .rc-tl-dot{background:var(--rc-green);border-color:var(--rc-green);color:#fff}
.rc-tl-step.active{color:var(--text)}.rc-tl-step.active .rc-tl-dot{border-color:var(--tone,var(--rc-blue));color:var(--tone,var(--rc-blue));box-shadow:0 0 0 4px color-mix(in srgb,var(--tone,var(--rc-blue)) 18%,transparent)}
.rc-tl-step.failed{color:var(--rc-red)}.rc-tl-step.failed .rc-tl-dot{background:var(--rc-red);border-color:var(--rc-red);color:#fff}
.rc-tl-line{flex:1;height:2px;margin:0 12px;border-radius:2px;background:var(--border-2);min-width:20px}
.rc-tl-line.done{background:var(--rc-green)}
.rc-detail-body{padding:24px;display:flex;flex-direction:column;gap:28px}
.rc-block-title{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-family:var(--font-head);font-size:1rem;font-weight:700;color:var(--text)}
.rc-block-title .pill{width:26px;height:26px;border-radius:9px;display:grid;place-items:center;background:var(--grad-btn);color:#fff;font-size:.74rem}
.rc-block-title::after{content:'';flex:1;height:1px;background:var(--border)}

.rc-eval{margin-top:14px;border-radius:20px;border:1px solid var(--border);background:var(--bg-2);overflow:hidden}
.rc-eval-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--border)}
.rc-eval-head h4{display:flex;align-items:center;gap:8px;margin:0;font-family:var(--font-head);font-size:.92rem;font-weight:600}
.rc-vote-btns{display:flex;gap:8px;flex-wrap:wrap}
.rc-vote{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 14px;border-radius:999px;font:inherit;font-size:.8rem;font-weight:700;cursor:pointer;transition:background .2s,box-shadow .2s;
  color:var(--tone);background:color-mix(in srgb,var(--tone) 11%,transparent);border:1px solid color-mix(in srgb,var(--tone) 30%,transparent)}
.rc-vote:hover{background:color-mix(in srgb,var(--tone) 20%,transparent)}
.rc-vote.mine{background:var(--tone);color:#06101d;box-shadow:0 8px 18px -6px color-mix(in srgb,var(--tone) 60%,transparent)}
.rc-vote:disabled{cursor:default}
.rc-voters{display:flex;flex-wrap:wrap;gap:6px;padding:12px 18px;border-bottom:1px solid var(--border)}
.rc-voter{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:999px;font-size:.76rem;font-weight:600;background:var(--bg-4);border:1px solid var(--border)}
.rc-voter .ic{width:13px;height:13px}
.rc-role{font-size:.66rem;font-weight:700;padding:1px 8px;border-radius:999px;color:var(--role);background:color-mix(in srgb,var(--role) 13%,transparent);border:1px solid color-mix(in srgb,var(--role) 32%,transparent)}
.rc-notes{padding:14px 18px;display:flex;flex-direction:column;gap:10px}
.rc-note{padding:12px 14px;border-radius:16px;background:var(--bg-3);border:1px solid var(--border)}
.rc-note-head{display:flex;align-items:center;gap:8px;font-size:.78rem;margin-bottom:5px}
.rc-note-head b{font-size:.84rem}
.rc-note-head time{margin-left:auto;color:var(--text-3);font-size:.72rem}
.rc-note-head button{background:none;border:none;color:var(--text-3);cursor:pointer;padding:2px;display:flex}
.rc-note-head button:hover{color:var(--rc-red)}
.rc-note p{margin:0;font-size:.87rem;line-height:1.55;white-space:pre-wrap;color:var(--text-2)}
.rc-note-form{display:flex;gap:8px}
.rc-note-form .rc-input{min-height:42px;padding:9px 16px;border-radius:999px}
.rc-note-form .btn{width:42px;min-height:42px;padding:0;flex-shrink:0}
.rc-decision{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid var(--border);background:var(--bg-3)}
.rc-decision p{margin:0;font-size:.84rem;color:var(--text-3)}
.rc-decided{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:16px;margin-top:14px;
  background:color-mix(in srgb,var(--tone) 9%,transparent);border:1px solid color-mix(in srgb,var(--tone) 30%,transparent)}
.rc-decided .ic{color:var(--tone);margin-top:1px}
.rc-decided b{display:block;font-size:.88rem}
.rc-decided small{color:var(--text-3);font-size:.76rem}
.rc-decided p{margin:6px 0 0;font-size:.86rem;white-space:pre-wrap;color:var(--text-2)}
.rc-appt-mini{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 20px;border-radius:20px;
  border:1px solid color-mix(in srgb,var(--rc-cyan) 34%,transparent);background:radial-gradient(120% 140% at 100% 0%,color-mix(in srgb,var(--rc-cyan) 13%,transparent),transparent 60%),var(--bg-2)}
.rc-appt-mini h4{margin:6px 0 2px;font-family:var(--font-head);font-size:1.05rem}

/* Agenda */
.rc-agenda{display:flex;flex-direction:column;gap:22px}
.rc-agenda-day h3{display:flex;align-items:center;gap:10px;margin:0 0 10px;font-family:var(--font-head);font-size:.95rem;font-weight:700;text-transform:capitalize;color:var(--text)}
.rc-agenda-day h3 .rc-chip{text-transform:none}
.rc-agenda-item{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:18px;align-items:center;padding:14px 18px 14px 14px;border-radius:20px;border:1px solid var(--border);background:var(--bg-3);cursor:pointer;margin-bottom:8px;transition:border-color .2s,transform .25s var(--ease-out)}
.rc-agenda-item:hover{border-color:color-mix(in srgb,var(--rc-cyan) 45%,transparent);transform:translateX(3px)}
.rc-agenda-time{text-align:center;padding:10px 6px;border-radius:15px;background:color-mix(in srgb,var(--rc-cyan) 11%,transparent);color:var(--rc-cyan)}
.rc-agenda-time b{display:block;font-family:var(--font-display);font-size:1.25rem;letter-spacing:-.03em;line-height:1.1}
.rc-agenda-time small{font-size:.7rem;font-weight:600;opacity:.85}
.rc-agenda-who{display:flex;align-items:center;gap:12px;min-width:0}
.rc-agenda-who img{width:40px;height:40px;border-radius:50%}
.rc-agenda-who b{display:block;font-size:.92rem}
.rc-agenda-who small{display:flex;align-items:center;gap:5px;color:var(--text-3);font-size:.78rem;margin-top:3px}

/* ═══ ESPACE STAFF — RÉGLAGES & CONSTRUCTEUR ═══ */
.rc-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.staff-content .rc-set{padding:20px 22px 22px}
.rc-set-full{grid-column:1/-1}
.rc-set-danger{margin-bottom:14px;border-color:color-mix(in srgb,var(--rc-red) 25%,var(--border))}
.rc-set-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}
.rc-set-head h3{font-family:var(--font-head);font-size:1.02rem;font-weight:700;margin:2px 0 3px}
.rc-set-head p{font-size:.83rem;color:var(--text-3);line-height:1.5}
.rc-set-ico{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:12px;color:var(--tone);background:color-mix(in srgb,var(--tone) 14%,transparent)}
.rc-set .rc-conditions{padding:0;border:0;background:none}
.rc-set .rc-conditions h3{display:none}
.rc-switch-lg{min-height:44px}
.rc-inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rc-inline .rc-input{max-width:130px}
.rc-presets{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.rc-presets .rc-subfilter{border:1px solid var(--border)}

.rc-builder-bar{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;border-radius:24px;
  background:var(--glass-bg-strong);border:1px solid var(--glass-border);
  box-shadow:inset 0 1px 0 var(--glass-hi),0 16px 36px -20px rgba(0,0,0,.6);
  backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%)}
.rc-add{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 13px;border-radius:999px;font:inherit;font-size:.8rem;font-weight:600;cursor:pointer;
  color:var(--text);background:var(--bg-3);border:1px solid var(--border);transition:border-color .2s,background .2s}
.rc-add .ic{color:var(--tone)}
.rc-add:hover{border-color:color-mix(in srgb,var(--tone) 55%,transparent);background:color-mix(in srgb,var(--tone) 10%,var(--bg-3))}
.rc-builder-save{margin-left:auto;display:flex;align-items:center;gap:10px}
.rc-dirty{font-size:.78rem;color:var(--rc-amber);font-weight:600;display:flex;align-items:center;gap:6px}
.rc-fields{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.rc-fcard{border-radius:20px;border:1px solid var(--border);background:var(--bg-3);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.rc-fcard:not(.collapsed){border-color:var(--border-2)}
.rc-fcard.dragging{opacity:.45}
.rc-fcard.drop-before{box-shadow:0 -3px 0 var(--rc-blue)}
.rc-fcard.drop-after{box-shadow:0 3px 0 var(--rc-blue)}
.rc-fcard-head{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer}
.rc-grip{cursor:grab;color:var(--text-3);display:flex;padding:4px}
.rc-fcard-type{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;flex-shrink:0;color:var(--tone);background:color-mix(in srgb,var(--tone) 14%,transparent)}
.rc-fcard-title{flex:1;min-width:0;margin-left:4px}
.rc-fcard-title b{display:block;font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-fcard-title small{color:var(--text-3);font-size:.75rem}
.rc-icon-btn{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;border:1px solid transparent;background:none;color:var(--text-3);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.rc-icon-btn:hover{background:var(--bg-4);color:var(--text);border-color:var(--border)}
.rc-icon-btn.danger:hover{color:var(--rc-red);background:color-mix(in srgb,var(--rc-red) 10%,transparent);border-color:color-mix(in srgb,var(--rc-red) 35%,transparent)}
.rc-icon-btn:disabled{opacity:.3;pointer-events:none}
.rc-fcard:not(.collapsed) .rc-fcard-head > span.rc-icon-btn:last-child .ic{transform:rotate(180deg)}
.rc-fcard-head > span.rc-icon-btn:last-child .ic{transition:transform .25s var(--ease-out)}
.rc-fcard-body{padding:4px 18px 18px;border-top:1px solid var(--border);display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.rc-fcard-body .full{grid-column:1/-1}
.rc-fcard.collapsed .rc-fcard-body{display:none}
.rc-fcard-body .rc-label{margin-top:14px}
.rc-fcard-body .rc-switch{margin-top:14px}

.rc-bl-form{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:12px;align-items:end}
.rc-bl-form .btn{min-height:44px}
.rc-bl-search{max-width:none;margin:0 0 12px}
.rc-bl-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border-radius:18px;border:1px solid var(--border);background:var(--bg-3);margin-bottom:8px}
.rc-bl-avatar{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;color:var(--rc-red);background:color-mix(in srgb,var(--rc-red) 12%,transparent)}
.rc-bl-row b{font-size:.9rem}.rc-bl-row small{display:block;color:var(--text-3);font-size:.76rem;margin-top:3px}

/* ═══ RESPONSIVE ═══ */
@media (max-width:1280px){
  .rc-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1100px){
  .rc-board{grid-template-columns:1fr}
  .rc-list{position:static;max-height:360px;min-height:0}
}
@media (max-width:900px){
  .rc-apply{grid-template-columns:1fr}
  .rc-aside{position:static;order:-1}
  .rc-steps{grid-template-columns:1fr}
  .rc-settings-grid{grid-template-columns:1fr}
  .rc-appointment-grid{grid-template-columns:1fr}
  .rc-search{max-width:none;margin-left:0;flex-basis:100%}
  .rc-builder-bar{top:calc(var(--nav-h) + 62px)}
  .rc-bl-form{grid-template-columns:1fr 1fr}
  .rc-bl-form > div:nth-child(3),.rc-bl-form .btn{grid-column:1/-1}
}
@media (max-width:640px){
  .rc-wrap{padding:24px 16px 64px}
  .rc-header .dir-header-stats strong{font-size:1.15rem;white-space:nowrap}
  .rc-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rc-stat{padding:16px}
  .rc-tabs{display:flex;width:100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .rc-tabs::-webkit-scrollbar{display:none}
  .rc-tab{flex-shrink:0}
  .rc-slot-row{grid-template-columns:1fr 1fr}
  .rc-slot-row .rc-sep{display:none}
  .rc-grid-2,.rc-grid-3,.rc-fcard-body,.rc-bl-form{grid-template-columns:1fr}
  .rc-field{padding:18px}
  .rc-countdown div{min-width:56px}
  .rc-agenda-item{grid-template-columns:80px minmax(0,1fr)}
  .rc-agenda-item>:last-child{display:none}
  .rc-timeline{overflow-x:auto}
  .rc-detail-head,.rc-detail-body{padding:18px}
  .rc-detail-actions{margin-left:0}
  .rc-preview-banner{border-radius:22px}
  .rc-preview-banner .btn{margin-left:0}
  .rc-state-card{padding:34px 22px}
  .rc-panel{padding:20px}
  .rc-fcard-head{flex-wrap:wrap}
}
