/* ══════════════════════════════════════════════════════════════════════════
   #4481 — Le calendrier doré, le même partout (shared/_gold_calendar,
   gold_calendar_controller.js). Repris tel quel du calendrier de l'onboarding
   talent (talent_onboarding.css, bloc CALENDRIER), qui n'existait que là.

   Jetons seulement. Les rgba de la source deviennent des color-mix sur le
   jeton de la même teinte : 163,133,67 = --gold-500, 138,111,55 = --gold-600,
   120,95,40 ≈ --gold-700 (ombres), blanc = --n-0. --ink2, --mut2 et --mono sont
   ceux de l'onboarding quand ils existent, sinon les neutres du design system.

   Le popover passe au-dessus des blocs qui suivent DANS son contexte
   d'empilement (z-index 40). Si un parent crée son propre contexte (.glass>*
   de l'onboarding), c'est ce parent qu'il faut relever : voir #bDispo.
   ══════════════════════════════════════════════════════════════════════════ */
.cal-wrap{position:relative;max-width:280px;
  --cal-ink2:var(--ink2, var(--n-700));
  --cal-mut2:var(--mut2, var(--n-400));
  --cal-mono:var(--mono, ui-monospace, monospace);
  --cal-line:color-mix(in srgb, var(--gold-500) 20%, transparent);
  --cal-hover:color-mix(in srgb, var(--gold-500) 10%, transparent);
  --cal-shine:inset 0 1.5px 0 var(--n-0)}
.cal-wrap button{font-family:inherit;cursor:pointer;margin:0;box-sizing:border-box}
.cal-btn{width:100%;padding:12px 15px;border-radius:13px;font-size:13.5px;line-height:1.4;color:var(--ink);text-align:left;
  display:flex;align-items:center;gap:10px;
  background:color-mix(in srgb, var(--n-0) 92%, transparent);border:1px solid var(--cal-line);
  box-shadow:var(--cal-shine);transition:all var(--t)}
.cal-btn:hover{border-color:var(--gold-400);transform:translateY(-1px);
  box-shadow:var(--cal-shine),0 8px 18px color-mix(in srgb, var(--gold-700) 12%, transparent)}
.cal-btn:focus-visible{outline:none;border-color:var(--gold-500);
  box-shadow:var(--cal-shine),0 0 0 3px color-mix(in srgb, var(--gold-500) 24%, transparent)}
.cal-btn.on{border-color:var(--gold-500);box-shadow:var(--cal-shine),0 0 0 3px color-mix(in srgb, var(--gold-500) 14%, transparent)}
.cal-btn.ph{color:var(--cal-mut2)}
.cal-btn svg{width:16px;height:16px;stroke:var(--gold-600);stroke-width:1.8;fill:none;flex-shrink:0;
  stroke-linecap:round;stroke-linejoin:round}
/* le calendrier reprend le gabarit des menus déroulants du dashboard */
.cal{position:absolute;z-index:40;top:calc(100% + 8px);left:0;width:284px;max-width:calc(100vw - 32px);
  box-sizing:border-box;border-radius:18px;padding:14px;display:none;
  background:linear-gradient(180deg,color-mix(in srgb, var(--n-warm-50) 97%, transparent),color-mix(in srgb, var(--gold-50) 94%, transparent));
  backdrop-filter:blur(30px) saturate(190%);-webkit-backdrop-filter:blur(30px) saturate(190%);
  border:1px solid var(--cal-line);
  box-shadow:var(--cal-shine),0 12px 30px color-mix(in srgb, var(--gold-700) 14%, transparent),
    0 28px 60px color-mix(in srgb, var(--gold-700) 12%, transparent);
  animation:calIn 160ms cubic-bezier(.2,.7,.3,1) both}
.cal.open{display:block}
@keyframes calIn{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}
.cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.cal-m{font-size:13.5px;font-weight:700;letter-spacing:-.01em;text-transform:capitalize;color:var(--ink)}
.cal-nav{display:flex;gap:4px}
.cal-nav button{width:28px;height:28px;padding:0;border:0;background:none;border-radius:9px;display:grid;place-items:center;
  transition:background var(--t)}
.cal-nav button:hover{background:var(--cal-hover)}
.cal-nav button:disabled{opacity:.3;cursor:not-allowed}
.cal-nav svg{width:14px;height:14px;stroke:var(--cal-ink2);stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.cal-w{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:5px}
.cal-w span{text-align:center;font-family:var(--cal-mono);font-size:9px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--cal-mut2)}
.cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.cal-d{height:32px;padding:0;border:0;background:none;border-radius:10px;font-family:var(--cal-mono);font-size:12px;
  color:var(--cal-ink2);transition:all 120ms;font-feature-settings:"tnum" 1}
.cal-d:hover:not(:disabled):not(.sel){background:var(--cal-hover);color:var(--gold-600)}
.cal-d:focus-visible{outline:2px solid var(--gold-500);outline-offset:1px}
.cal-d:disabled{color:var(--cal-mut2);opacity:.45;cursor:not-allowed}
.cal-d.out{visibility:hidden}
.cal-d.today{font-weight:700;color:var(--gold-600);box-shadow:inset 0 0 0 1.5px var(--gold-200)}
.cal-d.sel{background:linear-gradient(135deg,var(--onb-gold-600),var(--onb-gold-btn-mid),var(--onb-gold-600));
  color:var(--on-gold);font-weight:700;box-shadow:0 3px 10px color-mix(in srgb, var(--gold-600) 36%, transparent)}
.cal-f{display:flex;gap:7px;margin-top:12px;padding-top:11px;border-top:1px solid color-mix(in srgb, var(--gold-500) 16%, transparent)}
.cal-f button{flex:1;padding:8px;border-radius:999px;font-size:11.5px;font-weight:600;color:var(--cal-ink2);
  border:1px solid var(--cal-line);background:color-mix(in srgb, var(--n-0) 70%, transparent);transition:all var(--t)}
.cal-f button:hover{border-color:var(--gold-400);color:var(--gold-600);background:var(--n-0)}
