/* Banner del consenso ai cookie (consent.js): fisso in basso, non blocca lo scorrimento, nessun layout shift.
   Sopra i pulsanti rapidi (57), sotto il menu e il pulsante tondo (60-63). Solo una dissolvenza di 200 ms. */
.cb { position: fixed; z-index: 58; left: 0; right: 0; bottom: 0; box-sizing: border-box;
  padding: 18px 16px calc(16px + env(safe-area-inset-bottom, 0px)); background: var(--panel, #0A111B); color: var(--fg, #E9F1F8);
  border-top: 1px solid var(--line, #22344A); font-family: var(--display, 'Archivo', 'Helvetica Neue', Helvetica, sans-serif);
  opacity: 0; transition: opacity 0.2s linear; }
.cb.cb-on { opacity: 1; }
.cb[hidden] { display: none; }
.cb-tit { margin: 0 44px 8px 0; font-size: 18px; font-weight: 700; line-height: 1.2; color: var(--fg, #E9F1F8); }
.cb-txt { margin: 0 0 10px; font-size: 14px; line-height: 1.5; color: var(--muted, #9DB0C4); }
.cb-link { margin: 0 0 14px; font-size: 14px; }
.cb-link a { color: var(--accent, #2EA8F0); text-decoration: underline; text-underline-offset: 3px; }
.cb-btns { display: flex; gap: 10px; }
.cb-btn { flex: 1 1 0; min-height: 44px; padding: 0 16px; border: 1px solid var(--accent, #2EA8F0); border-radius: 2px; background: transparent;
  color: var(--fg, #E9F1F8); font: 600 15px/1 var(--display, 'Archivo', sans-serif); cursor: pointer; }
.cb-btn:hover { background: var(--accent, #2EA8F0); color: #04121E; }   /* the focus (on Rifiuta at the opening) is only the outline: the two buttons stay equal */
.cb-x { position: absolute; top: 8px; right: 8px; width: 44px; height: 44px; padding: 0; border: 0; background: none; color: var(--fg, #E9F1F8);
  font: 400 26px/1 var(--display, 'Archivo', sans-serif); cursor: pointer; }
.cb-x:hover, .cb-x:focus-visible { color: var(--accent, #2EA8F0); }
.cb a:focus-visible, .cb button:focus-visible { outline: 2px solid var(--accent, #2EA8F0); outline-offset: 2px; }
@media (min-width: 768px) {
  /* right of the box: 72 px, the column of the quick buttons (.rapidi, 14 + 44 px) stays free beside it */
  .cb { left: auto; right: calc(72px + env(safe-area-inset-right, 0px)); bottom: 24px; width: 420px; border: 1px solid var(--line, #22344A); border-radius: 4px; padding: 20px 20px 20px; }
}
@media (prefers-reduced-motion: reduce) { .cb { transition: none; } }
/* la scelta attuale nella pagina Cookie */
.cookie-stato { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; margin: 0 0 28px; padding: 16px 18px; border: 1px solid var(--line, #22344A); }
.cookie-stato #cookie-consent-status { font-size: 15px; color: var(--fg, #E9F1F8); }
.cookie-modifica { min-height: 44px; padding: 0 16px; border: 1px solid var(--accent, #2EA8F0); border-radius: 2px; background: transparent; color: var(--fg, #E9F1F8);
  font: 600 15px/1 var(--display, 'Archivo', sans-serif); cursor: pointer; }
.cookie-modifica:hover, .cookie-modifica:focus-visible { background: var(--accent, #2EA8F0); color: #04121E; }
