/* Bandeau cookies des pages publiques — même rendu que l'application */
.pscc-backdrop { position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; padding:20px; background:rgba(7,11,20,.78); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); animation:psccFade .25s ease-out; }
.pscc-backdrop[hidden] { display:none !important; }
@keyframes psccFade { from { opacity:0; } to { opacity:1; } }
@keyframes psccIn { from { opacity:0; transform:translateY(20px) scale(.96); } to { opacity:1; transform:none; } }
.pscc-modal { position:relative; width:100%; max-width:520px; max-height:90vh; overflow-y:auto; padding:34px 32px 28px; border:1px solid rgba(255,255,255,.1); border-radius:24px; background:rgba(15,22,35,.94); color:#e6edf6; font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif; text-align:left; box-shadow:0 24px 80px rgba(0,0,0,.5), 0 0 0 1px rgba(47,98,238,.08); outline:none; animation:psccIn .3s cubic-bezier(.16,1,.3,1); }
.pscc-modal-wide { max-width:600px; }
.pscc-glow { position:absolute; top:-40%; left:50%; z-index:0; width:120%; height:60%; transform:translateX(-50%); background:radial-gradient(closest-side, rgba(47,98,238,.18), transparent 70%); filter:blur(40px); pointer-events:none; }
.pscc-modal > *:not(.pscc-glow) { position:relative; z-index:1; }
.pscc-icon { width:48px; height:48px; margin-bottom:18px; }
.pscc-icon svg { width:100%; height:100%; }
.pscc-modal h2 { margin:0 0 12px; color:#fff; font-size:24px; font-weight:700; line-height:1.2; letter-spacing:-.01em; }
.pscc-modal p { margin:0 0 12px; color:#d1d8e3; font-size:15px; line-height:1.6; }
.pscc-modal p.pscc-muted { margin-bottom:26px; color:#9aa7ba; font-size:14px; }
.pscc-actions { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:22px; }
.pscc-btn { flex:1 1 auto; min-width:0; padding:13px 18px; border:1px solid rgba(255,255,255,.12); border-radius:12px; background:rgba(255,255,255,.06); color:#e6edf6; font:inherit; font-size:15px; font-weight:600; white-space:nowrap; cursor:pointer; transition:background .18s, border-color .18s, transform .18s, box-shadow .18s; }
.pscc-btn:hover { background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.2); }
.pscc-btn:focus-visible, .pscc-toggle:focus-visible, .pscc-close:focus-visible { outline:2px solid #2f62ee; outline-offset:2px; }
.pscc-btn.pscc-primary { border-color:transparent; background:linear-gradient(135deg,#2f62ee 0%,#1d47c4 100%); color:#fff; box-shadow:0 6px 20px rgba(47,98,238,.25); }
.pscc-btn.pscc-primary:hover { transform:translateY(-1px); box-shadow:0 8px 26px rgba(47,98,238,.35); }
.pscc-foot { margin:0 !important; padding-top:16px; border-top:1px solid rgba(255,255,255,.06); color:#8895ab !important; font-size:12.5px !important; text-align:center; }
.pscc-foot a { color:#6f95ff; text-decoration:none; }
.pscc-foot a:hover { text-decoration:underline; }
.pscc-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.pscc-head h2 { margin:0; font-size:22px; }
.pscc-close { display:flex; align-items:center; justify-content:center; flex:none; width:36px; height:36px; padding:0; border:1px solid rgba(255,255,255,.1); border-radius:50%; background:rgba(255,255,255,.04); color:#d1d8e3; cursor:pointer; }
.pscc-close:hover { background:rgba(255,255,255,.08); color:#fff; }
.pscc-list { display:flex; flex-direction:column; gap:11px; margin-bottom:24px; }
.pscc-item { display:flex; align-items:flex-start; gap:16px; padding:16px 18px; border:1px solid rgba(255,255,255,.06); border-radius:14px; background:rgba(255,255,255,.03); }
.pscc-item.pscc-locked { border-color:rgba(47,98,238,.18); background:rgba(47,98,238,.05); }
.pscc-item > div { flex:1; min-width:0; }
.pscc-item strong { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-bottom:5px; color:#fff; font-size:15px; }
.pscc-item p { margin:0; color:#9aa7ba; font-size:13.5px; line-height:1.5; }
.pscc-badge { padding:2px 9px; border:1px solid rgba(47,98,238,.3); border-radius:999px; background:rgba(47,98,238,.14); color:#6f95ff; font-size:11px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; }
.pscc-toggle { position:relative; flex:none; width:44px; height:26px; margin-top:2px; padding:0; border:1px solid rgba(255,255,255,.12); border-radius:999px; background:rgba(255,255,255,.1); cursor:pointer; transition:background .2s, border-color .2s; }
.pscc-toggle i { position:absolute; top:2px; left:2px; width:20px; height:20px; border-radius:50%; background:#d1d8e3; transition:left .2s, background .2s; }
.pscc-toggle[aria-checked="true"], .pscc-toggle.is-locked { border-color:#2f62ee; background:#2f62ee; }
.pscc-toggle[aria-checked="true"] i, .pscc-toggle.is-locked i { left:20px; background:#fff; }
.pscc-toggle.is-locked { opacity:.65; cursor:default; }
@media (max-width:480px) {
  .pscc-modal { padding:26px 20px 20px; border-radius:20px; }
  .pscc-modal h2 { font-size:21px; }
  .pscc-actions { flex-direction:column; }
  .pscc-btn { width:100%; }
}
