/* Can Saló: estilos aislados del aviso y de las preferencias de cookies. */
#gm-cookie-banner[hidden], #gm-cookie-dialog[hidden] { display: none !important; }
#gm-cookie-banner, #gm-cookie-dialog, .gmcc-footer { font-family: inherit; font-size: 16px; line-height: 1.5; }
#gm-cookie-banner *, #gm-cookie-dialog *, .gmcc-footer * { box-sizing: border-box; }
#gm-cookie-banner { position: fixed; z-index: 2147483000; bottom: 0; left: 0; right: 0; background: #fff; color: #222; border-top: 1px solid #ddd; box-shadow: 0 -4px 22px rgba(0,0,0,.16); padding: 22px 24px; }
.gmcc-wrap { max-width: 1160px; margin: 0 auto; }
#gm-cookie-banner h2, #gm-cookie-dialog h2 { color: #222; font-size: 21px; line-height: 1.3; margin: 0 0 10px; }
#gm-cookie-banner p, #gm-cookie-dialog p { color: #333; margin: 0 0 14px; font-size: 16px; }
#gm-cookie-banner a, #gm-cookie-dialog a, .gmcc-footer a { color: #783024; text-decoration: underline; }
.gmcc-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }
#gm-cookie-banner .gmcc-button, #gm-cookie-dialog .gmcc-button { display: inline-flex; justify-content: center; align-items: center; width: 100%; min-height: 46px; padding: 10px 16px; margin: 0; border: 2px solid #89392a; border-radius: 4px; background: #89392a; color: #fff; font: inherit; font-weight: 600; line-height: 1.3; text-align: center; text-transform: none; cursor: pointer; }
#gm-cookie-banner .gmcc-button:hover, #gm-cookie-dialog .gmcc-button:hover { background: #6b2c21; border-color: #6b2c21; }
#gm-cookie-banner .gmcc-button:focus-visible, #gm-cookie-dialog .gmcc-button:focus-visible, .gmcc-link:focus-visible, .gmcc-toggle input:focus-visible { outline: 3px solid #1261a0; outline-offset: 4px; }
.gmcc-footer { clear: both; text-align: center; margin: 12px 0; padding: 8px 16px; }
.gmcc-link { appearance: none; background: transparent; border: 0; padding: 5px; color: inherit; text-decoration: underline; font: inherit; cursor: pointer; }
#gm-cookie-status { display: block; color: #8a2218; }
#gm-cookie-dialog { position: fixed; z-index: 2147483001; inset: 0; padding: 24px; background: rgba(0,0,0,.55); overflow-y: auto; display: flex; align-items: center; justify-content: center; }
.gmcc-panel { width: 100%; max-width: 720px; max-height: calc(100vh - 48px); overflow-y: auto; background: #fff; color: #222; padding: 26px; border-radius: 8px; box-shadow: 0 12px 48px rgba(0,0,0,.24); }
.gmcc-group { border: 1px solid #ddd; border-radius: 5px; padding: 16px; margin: 16px 0; }
.gmcc-toggle { display: flex; gap: 12px; align-items: center; margin: 0 0 8px; font-weight: 700; cursor: pointer; }
.gmcc-toggle input { accent-color: #89392a; width: 21px !important; height: 21px !important; opacity: 1 !important; margin: 0; flex: 0 0 21px; }
.gmcc-note { font-size: 14px !important; }
#gm-cookie-dialog .gmcc-cancel { display: block; margin: 14px auto 0; }
@media (max-width: 600px) {
    #gm-cookie-banner { padding: 16px; max-height: 85vh; overflow-y: auto; }
    #gm-cookie-dialog { padding: 12px; align-items: flex-start; }
    .gmcc-panel { padding: 20px 16px; max-height: calc(100vh - 24px); }
    .gmcc-actions { grid-template-columns: 1fr; gap: 8px; }
}
