/* FUNGLODE FILMS · Botones y navegación unificados.
   Todos los botones de acción: azul, misma forma y tamaño; al pasar por encima, dorado. */
:root{--ff-azul:#2a5a78;--ff-azul-oscuro:#193a4e;--ff-dorado:#c9aa60;--ff-dorado-claro:#e6ce8c;--ff-radio:8px}

:is(button.primary,button.secondary,a.primary,a.secondary,.account-button,.site-account,.button,.reg-cta,.pp-cta a,.pp-actions a,.law-actions a,.hero-action:not(a) a,.member-actions a,.member-actions button,#adminLink,.report-end .account-button,.about-next a,button[type=submit]:not(.text-button):not(.ff-logout),form button:not([class]):not([type=button]),.data-actions button:not(.text-button)):not([hidden]){
 display:inline-flex!important;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;
 min-height:38px!important;padding:9px 16px!important;border-radius:var(--ff-radio)!important;
 background:var(--ff-azul)!important;color:#fff!important;border:1px solid var(--ff-azul)!important;
 font:600 13px/1.3 Arial,Helvetica,sans-serif!important;letter-spacing:.01em;text-decoration:none!important;white-space:nowrap;
 box-shadow:0 1px 2px #17394d14!important;cursor:pointer;
 transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease!important}
:is(button.primary,button.secondary,a.primary,a.secondary,.account-button,.site-account,.button,.reg-cta,.pp-cta a,.pp-actions a,.law-actions a,.hero-action:not(a) a,.member-actions a,.member-actions button,#adminLink,.report-end .account-button,.about-next a,button[type=submit]:not(.text-button):not(.ff-logout),form button:not([class]):not([type=button]),.data-actions button:not(.text-button)):is(:hover,:focus-visible):not(:disabled){
 background:var(--ff-dorado)!important;border-color:var(--ff-dorado)!important;color:var(--ff-azul-oscuro)!important;
 box-shadow:0 6px 16px #c9aa6040!important;transform:translateY(-1px)}
:is(button.primary,button.secondary,a.primary,a.secondary,.account-button,.site-account,.button,.reg-cta,button[type=submit]):active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #17394d24!important}
:is(button.primary,button.secondary,.reg-cta,button[type=submit]):disabled{opacity:.55;cursor:not-allowed;transform:none}
:is(button,a):focus-visible{outline:3px solid var(--ff-dorado-claro);outline-offset:2px}
/* Tráiler: conserva su formato grande; al pasar, borde y texto dorados. */
.trailer-start{transition:border-color .2s,color .2s,box-shadow .2s,transform .2s}
.trailer-start:hover,.trailer-start:focus-visible{border-color:var(--ff-dorado)!important;color:var(--ff-dorado-claro)!important;box-shadow:0 10px 28px #0d223840;transform:translateY(-1px)}
/* Tráiler con afiche: fondo del mismo afiche desenfocado, afiche completo a la derecha y «Ver tráiler» a la izquierda. */
.trailer-player.has-poster .trailer-start{position:relative;overflow:hidden;isolation:isolate;background:#0d2238;justify-content:flex-start;align-items:center;padding:0 0 0 clamp(16px,5%,30px);gap:10px}
.trailer-player.has-poster .trailer-start::before{content:'';position:absolute;inset:-24px;z-index:-2;background:var(--poster) center/cover no-repeat;filter:blur(18px) brightness(.5) saturate(1.1)}
.trailer-player.has-poster .trailer-start::after{content:'';position:absolute;top:10px;bottom:10px;right:10px;width:62%;z-index:-1;background:var(--poster) right center/contain no-repeat;filter:drop-shadow(0 8px 18px #0008);transition:transform .35s ease}
.trailer-player.has-poster .trailer-start:hover::after{transform:scale(1.03)}
.trailer-player.has-poster .trailer-start>span:first-child{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#ffffff1f;border:1px solid #e6ce8c99;font-size:15px;padding-left:3px;box-sizing:border-box}
.trailer-player.has-poster .trailer-start>span:last-child{text-shadow:0 1px 6px #000a}
.catalog-poster{display:block;width:100%;border-radius:10px;margin-top:1.2rem;border:1px solid #e6dcc0}
/* Acciones delicadas se distinguen, pero con la misma forma. */
button.danger,.ff-logout{background:#fff!important;color:#a1260d!important;border:1px solid #e3b9b0!important;border-radius:var(--ff-radio)!important;min-height:38px;padding:9px 14px!important;font:600 13px/1.3 Arial,Helvetica,sans-serif!important;transition:background-color .18s,color .18s,border-color .18s}
button.danger:hover,.ff-logout:hover{background:#a1260d!important;color:#fff!important;border-color:#a1260d!important}
button.armed{background:#a1260d!important;border-color:#a1260d!important;color:#fff!important}

/* Menú principal: subrayado dorado al pasar y en la página actual. */
.site-header .site-nav a,.site-header .mobile-nav a{position:relative;transition:color .18s,background-color .18s}
.site-header .site-nav a::after{content:'';position:absolute;left:12px;right:12px;bottom:5px;height:2px;background:var(--ff-dorado);transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
.site-header .site-nav a:hover,.site-header .site-nav a[aria-current=page]{background:transparent!important;color:var(--ff-azul-oscuro)!important}
.site-header .site-nav a:hover::after,.site-header .site-nav a[aria-current=page]::after{transform:scaleX(1)}
.site-header .mobile-nav a:hover,.site-header .mobile-nav a[aria-current=page]{background:#fbf6e9!important;color:var(--ff-azul-oscuro)!important;box-shadow:inset 3px 0 0 var(--ff-dorado)}
.site-header .mobile-menu summary{border-radius:var(--ff-radio)!important;transition:background-color .18s}
.site-header .mobile-menu summary:hover{background:var(--ff-dorado-claro)!important}

/* Barra secundaria de Administración (debajo del menú principal). */
.page-bar{background:#fff;border-bottom:1px solid #dce5e9;position:sticky;top:var(--ff-header-height,67px);z-index:900}
.page-bar>div{max-width:1200px;margin:auto;padding:6px 24px;display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap}
.page-bar-title{font:700 11px/1.4 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#8c7136}
.page-bar nav{display:flex;align-items:center;gap:4px 6px;flex-wrap:wrap}
.page-bar nav a{padding:8px 12px;border-radius:6px;color:#234b63;font:600 12px/1.4 Arial,sans-serif;text-decoration:none;position:relative}
.page-bar nav a:hover,.page-bar nav a[aria-current=page]{color:var(--ff-azul-oscuro);background:#fbf6e9;box-shadow:inset 0 -2px 0 var(--ff-dorado)}
.page-bar nav span{font:600 12px Arial,sans-serif;color:#637787;margin-left:6px}

/* Volver arriba: aparece al bajar en páginas largas. */
.ff-top{position:fixed;right:18px;bottom:18px;z-index:950;width:42px;height:42px;border-radius:50%;border:1px solid var(--ff-azul);background:var(--ff-azul);color:#fff;font:700 18px/1 Arial,sans-serif;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .2s,transform .2s,background-color .18s;box-shadow:0 6px 18px #17394d30}
.ff-top.on{opacity:1;pointer-events:auto;transform:none}
.ff-top:hover{background:var(--ff-dorado);border-color:var(--ff-dorado);color:var(--ff-azul-oscuro)}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media print{.ff-top,.page-bar{display:none!important}}
.rem-tabs .secondary{background:#fff!important;color:var(--ff-azul)!important;border-color:#c9d6dd!important}.rem-tabs .secondary:hover{background:var(--ff-dorado)!important;color:var(--ff-azul-oscuro)!important}
a.hero-action{transition:background-color .18s,color .18s,transform .18s,box-shadow .18s}a.hero-action:hover,a.hero-action:focus-visible{background:var(--ff-dorado)!important;color:var(--ff-azul-oscuro)!important;transform:translateY(-1px);box-shadow:0 6px 16px #c9aa6040}
/* Menú principal más compacto para que quepa todo en una línea. */
.site-header .site-nav{gap:2px!important}.site-header .site-nav a{padding:9px 6px!important;font-size:12px!important}
body>header.site-header{min-height:0!important}.site-header .site-brand img{width:150px!important}.site-header .site-header-inner{gap:14px!important}
.site-header .site-account{min-height:36px!important;padding:8px 14px!important}
.site-header .ff-logout{min-height:36px!important;padding:8px 12px!important}
@media(max-width:1260px){.site-header .site-nav{display:none!important}.site-header .mobile-menu{display:block!important}.site-header .mobile-nav{position:absolute;top:100%;left:0;right:0;display:grid;gap:3px;padding:14px 24px 18px;background:#f8fafb;border-bottom:1px solid #ccd9e1;box-shadow:0 10px 15px #17394d15;max-height:calc(100dvh - 85px);overflow-y:auto}.site-header .mobile-nav a{padding:13px 16px!important}.site-header .site-logout{display:none!important}.mobile-nav .mobile-logout{display:block!important}}
@media(min-width:1261px){.mobile-nav .mobile-logout{display:none!important}}
/* Entrada suave al bajar por la página. */
.ff-reveal{opacity:0;transform:translateY(16px)}
.ff-reveal.ff-in{opacity:1;transform:none;transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
/* WhatsApp discreto: azul como los botones, dorado al pasar. */
.ff-wa{position:fixed;right:18px;bottom:18px;z-index:950;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px 0 13px;border-radius:22px;background:var(--ff-azul);color:#fff;text-decoration:none;font:600 13px Arial,sans-serif;box-shadow:0 6px 18px #17394d38;transition:background-color .18s,color .18s,transform .18s}
.ff-wa:hover,.ff-wa:focus-visible{background:var(--ff-dorado);color:var(--ff-azul-oscuro);transform:translateY(-2px)}
.has-wa .ff-top{bottom:72px}
@media(max-width:600px){.ff-wa span{display:none}.ff-wa{width:46px;height:46px;padding:0;justify-content:center;border-radius:50%}.has-wa .ff-top{bottom:74px}}
@media print{.ff-wa{display:none!important}}

/* Selector de idioma. */
.ff-lang{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:36px;padding:0 8px;border:1px solid #c9d6dd;border-radius:8px;color:var(--ff-azul);font:700 12px/1 Arial,sans-serif;letter-spacing:.08em;text-decoration:none;transition:background-color .18s,color .18s,border-color .18s}
.ff-lang:hover,.ff-lang:focus-visible{background:var(--ff-dorado);border-color:var(--ff-dorado);color:var(--ff-azul-oscuro)}

/* Pie de página unificado: logos, contacto y redes. */
footer.ff-footer{all:unset;display:block;box-sizing:border-box;width:100%;max-width:none!important;margin:64px 0 0!important;padding:0!important;background:#fff;border-top:3px solid var(--ff-dorado);color:#4d6473;font:14px/1.6 Arial,Helvetica,sans-serif;flex-direction:initial}
.ff-footer *{box-sizing:border-box}
.ff-footer .ff-foot-in{max-width:1200px;margin:auto;padding:44px 24px 30px;display:grid;grid-template-columns:1.3fr 1fr 1.25fr 1.15fr;gap:32px 40px;align-items:start}
.ff-footer h2{font:700 11px/1.4 Arial,sans-serif!important;letter-spacing:.16em;text-transform:uppercase;color:#8c7136!important;margin:4px 0 14px!important}
.ff-footer p{margin:14px 0 0;font-size:13px;line-height:1.7;color:#637787;text-align:left!important}
.ff-footer .ff-foot-brand img{display:block;width:190px;height:auto}
.ff-footer .ff-foot-col{display:flex;flex-direction:column;gap:7px}
.ff-footer a{color:var(--ff-azul);text-decoration:none;transition:color .18s}
.ff-footer a:hover{color:#8c7136}
.ff-footer .ff-foot-cta{margin-top:6px;font-weight:700}
.ff-footer .ff-social{display:flex;flex-wrap:wrap;gap:8px}
.ff-footer .ff-social a{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--ff-azul);color:#fff;transition:background-color .18s,transform .18s}
.ff-footer .ff-social a:hover,.ff-footer .ff-social a:focus-visible{background:var(--ff-dorado);color:var(--ff-azul-oscuro);transform:translateY(-2px)}
.ff-footer .ff-social svg{width:19px;height:19px;fill:currentColor}
.ff-footer .ff-foot-fest{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.ff-footer .ff-foot-fest img{display:block;width:150px;height:auto}
.ff-footer .ff-foot-org{font-size:12px;line-height:1.55;color:#637787}
.ff-footer .ff-foot-legal{max-width:1200px;margin:auto;padding:16px 24px 26px;border-top:1px solid #e3eaee;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px 28px;font-size:12px;color:#7a8c98}
.ff-footer .ff-foot-legal span{margin:0!important}
@media(max-width:900px){.ff-footer .ff-foot-in{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ff-footer .ff-foot-in{grid-template-columns:1fr;gap:26px;padding:36px 20px 22px}.ff-footer .ff-foot-legal{padding:14px 20px 90px}}
@media print{.ff-footer .ff-social,.ff-footer .ff-foot-cta{display:none}}

.film-titles .trailer-start>span{font-size:14px!important;letter-spacing:.02em!important;color:#fff!important;font-weight:600}.film-titles .trailer-player.has-poster .trailer-start>span:first-child{font-size:14px!important;color:#e6ce8c!important}
.trailer-player.has-poster .trailer-start>span:first-child{color:#e6ce8c}
/* Un elemento oculto siempre queda oculto, aunque tenga estilo de botón. */
[hidden]{display:none!important}

/* Mensajes destacados: fondo dorado con letras oscuras, para que nunca pasen desapercibidos. */
.ff-notice{margin:18px 0;padding:18px 22px;border-radius:12px;background:var(--ff-dorado);color:var(--ff-azul-oscuro);box-shadow:0 8px 22px #c9aa6040;scroll-margin-top:90px}
.ff-notice strong{display:block;font:700 18px/1.35 Georgia,serif;color:var(--ff-azul-oscuro)}
.ff-notice p{margin:6px 0 0;font:15px/1.6 Arial,sans-serif;color:#1d3446;text-align:left!important}
.ff-notice.ok{background:#1e6a3c;color:#fff}.ff-notice.ok strong,.ff-notice.ok p{color:#fff}
.ff-notice.warn{background:var(--ff-azul-oscuro);color:#fff;border-left:5px solid var(--ff-dorado)}.ff-notice.warn strong,.ff-notice.warn p{color:#fff}
:is(.account-status,#status,.cf-status,[role=status]:is(p,div):not(.reg-status):not(.ff-notice):not(#catalogCount):not(.step-hint):not(#selectedJobs):not(#myState):not(.notice):not(.draft-actions>p)):not(:empty){padding:12px 16px!important;border-radius:10px;background:#f6ebcd!important;border-left:4px solid var(--ff-dorado);color:var(--ff-azul-oscuro)!important;font-weight:600;scroll-margin-top:90px}
.draft-actions>p:not(:empty){padding:10px 14px;border-radius:8px;background:#f6ebcd;border-left:4px solid var(--ff-dorado);color:var(--ff-azul-oscuro)}
.draft-actions>p.autosaved{background:#e7f3ea;border-left-color:#1e6a3c;color:#1e6a3c}
details{scroll-margin-top:90px}

/* Cámara del equipo para fotografiar documentos. */
.ff-camera{border:0;border-radius:16px;padding:22px;max-width:min(760px,94vw);width:100%;box-shadow:0 24px 60px #0007}
.ff-camera::backdrop{background:#0d2238cc}
.ff-camera h2{margin:0 0 6px;font:24px/1.2 Georgia,serif;color:#193a4e}
.ff-camera p{margin:0 0 12px;color:#4d6473;font:14px/1.6 Arial,sans-serif;text-align:left!important}
.ff-camera-frame{position:relative;border-radius:12px;overflow:hidden;background:#0d2238;aspect-ratio:16/10}
.ff-camera-frame video{width:100%;height:100%;object-fit:cover;display:block}
.ff-camera-frame::after{content:'';position:absolute;inset:7% 6%;border:3px dashed #e6ce8cd0;border-radius:10px;pointer-events:none}
.ff-camera-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.ff-camera-msg{margin-top:10px!important;color:#8c5a12!important;font-weight:600}

.ff-sharp{display:flex;align-items:center;gap:10px;margin-top:10px;font:600 13px Arial,sans-serif;color:#8c5a12}
.ff-sharp-bar{flex:1;height:8px;border-radius:6px;background:#e6edf1;overflow:hidden}
.ff-sharp-bar i{display:block;height:100%;width:0;background:#d39b2a;transition:width .2s}
.ff-sharp[data-ok="1"]{color:#1e6a3c}.ff-sharp[data-ok="1"] .ff-sharp-bar i{background:#2e8b57}
.ff-camera .ff-camera-phone{margin-top:12px!important;font-size:13px!important;color:#4d6473!important}
