/* FerrolOnline UX07 — coherent nav without replacing existing design */
.header-inner{display:flex;gap:12px;align-items:center;min-width:0}
.header .logo{flex-shrink:0}
.header .navlinks{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:clamp(6px,1vw,15px);min-width:0}
.header .navlinks a{white-space:nowrap;line-height:1.35}
@media(min-width:831px){.header .nav-toggle{display:none}}
@media(max-width:830px){body{padding-bottom:64px}.header .nav-toggle{display:block}.header .navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:12px 20px;box-shadow:0 12px 24px #0002;max-height:70vh;overflow-y:auto}.header .navlinks.open{display:flex}.ferrol-mobile-nav{display:flex!important}}
.ferrol-mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:100;background:#fff;border-top:1px solid #d1dedb;justify-content:space-around;padding:7px 8px max(7px,env(safe-area-inset-bottom));box-shadow:0 -4px 15px #0001}
.ferrol-mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#234c50;text-decoration:none;font:700 12px/1.2 system-ui,sans-serif;min-width:68px;min-height:45px}
.ferrol-mobile-nav svg{height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ferrol-mobile-nav a:hover,.ferrol-mobile-nav a:focus-visible{color:#087842}
.ferrol-source-separation{margin:24px 0;padding:20px;border-radius:16px;border:1px solid #c9d9d5;background:#f5f9f8}
.ferrol-source-separation h2{margin:0 0 12px;font-size:1.3rem}
.ferrol-source-separation .ferrol-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.ferrol-source-separation .ferrol-split>div{background:#fff;border:1px solid #d4e2de;border-radius:12px;padding:15px}
.ferrol-source-separation a{display:inline-block;margin-top:8px;padding:9px 12px;background:#13613f;color:#fff;border-radius:9px;text-decoration:none;font-weight:700}
.ferrol-source-separation a:hover{background:#0f5035}

/* UX11 — navegación unificada y de alto contraste */
.header{background:#fff!important;border-bottom:1px solid #d8e4de!important;z-index:100!important}
.header .header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0}
.header .logo{color:#173d32!important;flex:0 0 auto}
.header .navlinks{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px;min-width:0}
.header .navlinks a{color:#173d32!important;background:transparent!important;border-radius:9px;padding:10px 12px;font-weight:750;text-decoration:none;transition:background-color .2s ease,color .2s ease}
.header .navlinks a:hover,.header .navlinks a:focus-visible,.header .navlinks a[aria-current="page"]{background:#146b43!important;color:#fff!important}
.header .nav-toggle{color:#173d32;background:#e9f2ed;border:1px solid #b8d2c4;border-radius:10px;padding:9px 12px}
/* Cero duplicados: UX11 administra la única barra móvil. */
nav.bottom-nav{display:none!important}
.ferrol-mobile-nav.ux11-mobile{display:none!important}
@media(max-width:768px){
 body{padding-bottom:calc(83px + env(safe-area-inset-bottom,0px))}
 .header .nav-toggle{display:block!important;min-height:44px}
 .header .navlinks{display:none!important;position:absolute;top:100%;left:0;right:0;background:#fff!important;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:4px;padding:12px 18px;max-height:70vh;overflow-y:auto;box-shadow:0 12px 22px #102c2530}
 .header .navlinks.open{display:flex!important}
 .ferrol-mobile-nav.ux11-mobile{position:fixed;bottom:0;left:0;width:100%;background:#fff;border-top:1px solid #e0e0e0;z-index:9999;display:flex!important;justify-content:space-around;padding:10px 0 calc(10px + env(safe-area-inset-bottom,0px));box-sizing:border-box;box-shadow:0 -3px 12px #102c2514}
 .ux11-mobile a{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:44px;color:#174533;font:700 12px/1.2 system-ui,sans-serif;text-decoration:none;transition:background-color .2s ease}
 .ux11-mobile a:hover,.ux11-mobile a:focus-visible,.ux11-mobile a[aria-current="page"]{background:#e5f2eb;color:#0b5737}
 .ux11-mobile svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
}
@media(min-width:769px){.header .nav-toggle{display:none!important}}
@media(prefers-reduced-motion:reduce){.header .navlinks a,.ux11-mobile a{transition:none!important}}

/* UX14 ZONAS: badges de orientación por agrupación; no sustituyen los 26 colores territoriales */
.tag-centro,.tag-esteiro,.tag-norte,.tag-gandara{border-radius:4px;padding:3px 7px;display:inline-flex;gap:6px;align-items:center;font-size:.85rem;font-weight:650;text-decoration:none;line-height:1.4;border:1px solid transparent;transition:background-color .2s ease,color .2s ease}
.tag-centro{background:#e6f4ea;color:#006644}.tag-esteiro{background:#e8f0fe;color:#0055a5}.tag-norte{background:#fff3e0;color:#92400e}.tag-gandara{background:#f3f4f6;color:#374151}
.tag-centro::before,.tag-esteiro::before,.tag-norte::before,.tag-gandara::before{content:"";width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:#006644}
.tag-esteiro::before{background:#0055a5}.tag-norte::before{background:#d97706}.tag-gandara::before{background:#4b5563}
a.tag-centro:hover,a.tag-centro:focus-visible{background:#c8ead5}a.tag-esteiro:hover,a.tag-esteiro:focus-visible{background:#cbdffa}a.tag-norte:hover,a.tag-norte:focus-visible{background:#ffe2af}a.tag-gandara:hover,a.tag-gandara:focus-visible{background:#dce1e8}
.ag12-whenwhere .ag14-zone{margin-left:8px;vertical-align:middle;white-space:nowrap}.agenda-explore.ag14-quicklinks{margin-block:24px;background:transparent;box-shadow:none;padding:0}.ag14-quicklinks .ag14-quickgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ag14-quicklinks .ag14-quickitem{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #cbded5;border-radius:12px;padding:13px;background:#fff;text-decoration:none;color:#174b36;font-weight:700;min-height:48px;transition:background-color .2s ease,border-color .2s ease}.ag14-quicklinks .ag14-quickitem:hover,.ag14-quicklinks .ag14-quickitem:focus-visible{background:#e6f4ea;border-color:#006644}.ag14-quickitem .ag14-arrow{font-size:1.2em;color:#006644}.ag14-quicklinks h2{margin-bottom:12px}@media(max-width:900px){.ag14-quicklinks .ag14-quickgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.ag14-quicklinks .ag14-quickgrid{grid-template-columns:1fr}}

/* UX15: cards filtered by native JS must not remain visible due to flex/grid rules */
#ag-events .fo-event[hidden], #ag-events [data-fo-event][hidden], #ag-events .ag12-grid [hidden]{display:none!important}

/* UX17 — intent-aware tokens, scoped to existing markup. No route changes. */
.fo17-utility .fo17-priority-action,.fo17-leisure .fo17-priority-action{min-height:44px;transition:background-color .2s ease,border-color .2s ease}
.fo17-utility a:focus-visible,.fo17-leisure a:focus-visible{outline:3px solid #006644;outline-offset:2px}
#zone-discovery-grid .fo16-zone-group.tag-norte .fo16-group-dot{background:#d97706;width:10px;height:10px;flex:0 0 10px;border-radius:50%;display:inline-block}
.fo17-complement{margin:14px 0 24px}.fo17-complement .tile{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;max-width:100%;border:1px solid #cbded5;border-radius:10px;text-decoration:none}.fo17-complement .tile .fo16-zone-group{display:none}.fo17-complement .tile .tile-count{display:none}
@media (prefers-reduced-motion:reduce){.fo17-utility a,.fo17-leisure a{transition:none!important}}

/* UX17 HOTFIX 2026-10-21: restaurar los cinco accesos originales de navegación móvil. */
nav.ferrol-mobile-nav { display:none!important; }
@media(max-width:768px) {
 nav.bottom-nav { display:flex!important; }
 .header .navlinks.open {display:flex!important;}
}
