/* Magilu — CookieYes banner and preference centre in the site style (the free plan does not allow layout changes).
   CookieYes sets colours inline on the buttons, hence the !important. «Rifiuta» and «Accetta» have the same weight. */
.cky-consent-container, .cky-modal, .cky-btn-revisit-wrapper {
    --mgc-ink:#1d1f1a; --mgc-muted:#5f6359; --mgc-line:#e7e7e1; --mgc-green:#2f5d34; --mgc-green-dark:#244a29; --mgc-soft:#f4f4ef;
    font-family:inherit !important;
}

/* Banner: compact card, bottom left on desktop. */
.cky-consent-container.cky-box-bottom-left { left:24px !important; bottom:24px !important; width:400px !important; max-width:calc(100vw - 32px) !important; }
.cky-consent-container .cky-consent-bar {
    padding:20px 20px 6px !important; border:1px solid var(--mgc-line) !important; border-radius:18px !important;
    background:#fff !important; box-shadow:0 2px 6px rgba(29,31,26,.06), 0 18px 48px rgba(29,31,26,.16) !important;
}
.cky-consent-container .cky-notice .cky-title {
    display:flex; align-items:center; gap:8px; margin:0 0 6px !important; padding:0 !important;
    color:var(--mgc-ink) !important; font-size:16px !important; font-weight:700 !important; line-height:1.3 !important;
}
.cky-consent-container .cky-notice .cky-title::before { content:"🍪"; font-size:18px; }
.cky-consent-container .cky-notice-des, .cky-consent-container .cky-notice-des p {
    margin:0 !important; color:var(--mgc-muted) !important; font-size:13.5px !important; line-height:1.5 !important;
}
.cky-consent-container .cky-notice-des a { color:var(--mgc-green) !important; text-decoration:underline !important; text-underline-offset:2px; }
.cky-consent-container .cky-notice-group { display:block !important; }
.cky-consent-container .cky-notice-btn-wrapper {
    display:grid !important; grid-template-columns:1fr 1fr; gap:8px; margin:14px 0 0 !important; padding:0 !important;
}

/* Buttons (banner and preference centre). */
.cky-consent-container .cky-btn, .cky-modal .cky-btn {
    margin:0 !important; min-height:44px; padding:10px 14px !important; border-radius:999px !important;
    font-size:14px !important; font-weight:700 !important; line-height:1.2 !important; letter-spacing:0 !important; text-transform:none !important;
    transition:background .15s, border-color .15s, color .15s;
}
.cky-consent-container .cky-btn-accept, .cky-modal .cky-btn-accept,
.cky-consent-container .cky-btn-reject, .cky-modal .cky-btn-reject {
    border:1.5px solid var(--mgc-green) !important; background:var(--mgc-green) !important; color:#fff !important;
}
.cky-consent-container .cky-btn-accept:hover, .cky-modal .cky-btn-accept:hover,
.cky-consent-container .cky-btn-reject:hover, .cky-modal .cky-btn-reject:hover { background:var(--mgc-green-dark) !important; border-color:var(--mgc-green-dark) !important; }
.cky-consent-container .cky-notice-btn-wrapper .cky-btn-reject { order:1 !important; }
.cky-consent-container .cky-notice-btn-wrapper .cky-btn-accept { order:2 !important; }
.cky-consent-container .cky-btn-customize {
    order:3 !important; grid-column:1 / -1; min-height:36px; padding:6px !important; border:0 !important; background:transparent !important;
    color:var(--mgc-green) !important; font-weight:600 !important; text-decoration:underline !important; text-underline-offset:3px;
}
.cky-modal .cky-btn-preferences { border:1.5px solid var(--mgc-green) !important; background:#fff !important; color:var(--mgc-green) !important; }
.cky-consent-container .cky-btn:focus-visible, .cky-modal .cky-btn:focus-visible, .cky-modal button:focus-visible { outline:3px solid #d9a526 !important; outline-offset:2px !important; }
.cky-consent-container [data-cky-tag="powered-by"] { transform:scale(.9); }

/* Phone: full-width bottom sheet, buttons side by side, short text. */
@media (max-width:640px) {
    .cky-consent-container.cky-box-bottom-left { left:8px !important; right:8px !important; bottom:8px !important; width:auto !important; max-width:none !important; }
    .cky-consent-container .cky-consent-bar { padding:14px 14px 2px !important; border-radius:16px !important; }
    .cky-consent-container .cky-consent-bar .cky-notice-content-wrapper { padding:0 !important; }
    .cky-consent-container .cky-notice .cky-title, .cky-consent-container .cky-notice-des, .cky-consent-container .cky-notice-btn-wrapper { padding:0 !important; }
    .cky-consent-container .cky-notice-btn-wrapper { flex-direction:row !important; }
    .cky-consent-container .cky-notice .cky-title { font-size:15px !important; margin-bottom:4px !important; }
    .cky-consent-container .cky-notice-des, .cky-consent-container .cky-notice-des p { font-size:12.5px !important; line-height:1.45 !important; }
    .cky-consent-container .cky-notice-btn-wrapper { margin-top:10px !important; gap:6px; }
    .cky-consent-container .cky-notice-btn-wrapper .cky-btn { min-height:42px; font-size:13.5px !important; width:auto !important; }
    .cky-consent-container .cky-btn-customize { min-height:32px; font-size:13px !important; }
    .cky-consent-container [data-cky-tag="powered-by"] > div { margin-top:0 !important; }
}

/* Preference centre. */
.cky-modal .cky-preference-center { border-radius:20px !important; border:0 !important; box-shadow:0 24px 64px rgba(29,31,26,.25) !important; overflow:hidden; }
.cky-modal .cky-preference-header { padding:18px 22px !important; border-bottom:1px solid var(--mgc-line) !important; }
.cky-modal .cky-preference-title { color:var(--mgc-ink) !important; font-size:18px !important; font-weight:700 !important; }
.cky-modal .cky-preference-content-wrapper, .cky-modal .cky-preference-content-wrapper p,
.cky-modal .cky-accordion-header-des, .cky-modal .cky-accordion-header-des p { color:var(--mgc-muted) !important; font-size:13.5px !important; line-height:1.55 !important; }
.cky-modal .cky-show-desc-btn, .cky-modal .cky-accordion-header-des a { color:var(--mgc-green) !important; }
.cky-modal .cky-accordion-btn { color:var(--mgc-ink) !important; font-size:15px !important; font-weight:700 !important; }
.cky-modal .cky-accordion { border-bottom:1px solid var(--mgc-line) !important; }
.cky-modal .cky-always-active { color:var(--mgc-green) !important; font-weight:600 !important; }
.cky-modal .cky-switch input[type="checkbox"]:checked { background:var(--mgc-green) !important; }
.cky-modal .cky-footer-wrapper { border-top:1px solid var(--mgc-line) !important; }
.cky-modal .cky-prefrence-btn-wrapper { display:grid !important; grid-template-columns:1fr 1fr 1fr; gap:8px; padding:14px 22px !important; }
.cky-modal .cky-prefrence-btn-wrapper .cky-btn { width:auto !important; }
.cky-modal .cky-prefrence-btn-wrapper .cky-btn-preferences { order:2 !important; }
.cky-modal .cky-prefrence-btn-wrapper .cky-btn-reject { order:1 !important; }
.cky-modal .cky-prefrence-btn-wrapper .cky-btn-accept { order:3 !important; }
@media (max-width:640px) {
    .cky-modal .cky-preference-center { border-radius:18px 18px 0 0 !important; }
    .cky-modal .cky-prefrence-btn-wrapper { grid-template-columns:1fr 1fr; padding:12px 14px !important; }
    .cky-modal .cky-prefrence-btn-wrapper .cky-btn-preferences { grid-column:1 / -1; order:3 !important; }
    .cky-modal .cky-prefrence-btn-wrapper .cky-btn-accept { order:2 !important; }
}

/* «Preferenze cookie» button after the choice: small, in the site colours. */
.cky-btn-revisit-wrapper { background:var(--mgc-green) !important; width:40px !important; height:40px !important; box-shadow:0 6px 16px rgba(29,31,26,.2) !important; }
@media (max-width:640px) { .cky-btn-revisit-wrapper.cky-revisit-bottom-left { bottom:80px !important; left:12px !important; } }
