/* Tema default — chrome-ul comun tuturor paginilor: shell-ul de pagină
   (sticky footer), header-ul (desktop + meniu mobil) și bara de cookie-uri.
   Încărcat o singură dată din base.twig. */

/* ═══ SHELL (sticky footer) ═══ */
html { min-height: 100%; }
body { min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column; }
#swup { flex: 1 0 auto; }
#header-spacer { flex: none; }
body > footer { flex-shrink: 0; }

/* ═══ HEADER (desktop) ═══ */
/* Bara: transparentă în vârf, glass la scroll */
#site-header{background:transparent;border-color:transparent;transition:background .35s ease,border-color .35s ease,box-shadow .35s ease}
#site-header.scrolled{background:rgba(255,255,255,0.6);border-color:rgba(243,244,246,0.6);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);box-shadow:0 1px 8px rgba(0,0,0,0.05)}
/* Pe hero, textul nav e alb cât timp bara e transparentă */
body.has-hero #site-header:not(.scrolled) .hdr-link{color:rgba(255,255,255,0.88)}
body.has-hero #site-header:not(.scrolled) .hdr-sub{color:rgba(255,255,255,0.55)}
body.has-hero #site-header:not(.scrolled) .hdr-bar{background-color:rgba(255,255,255,0.88)}
body.has-hero #site-header:not(.scrolled) .hdr-link i{opacity:0.6}
body.has-hero #site-header:not(.scrolled) .hdr-link:hover{color:#fff !important;background-color:rgba(255,255,255,0.15) !important}
/* Logo uniform: cele trei cuvinte au mereu aceeași culoare (negru pe deschis) */
#site-header .site-logo .text-accent,
#site-header .site-logo .hdr-link,
#site-header .site-logo .hdr-sub{color:#111827}
/* Logo pe hero: alb plin */
body.has-hero #site-header:not(.scrolled) .site-logo .text-accent,
body.has-hero #site-header:not(.scrolled) .site-logo .hdr-link,
body.has-hero #site-header:not(.scrolled) .site-logo .hdr-sub{color:#fff}
/* Peste hero (bară transparentă): butoanele pline (Acces) devin „glass" */
/* Butoane pline (Acces/Ieșire) devin „glass" pe orice header întunecat:
   peste hero (transparent) + paginile video-watch/client (vv-dark-header/cl-page/ac-dark). */
body.vv-dark-header #site-header .bg-accent,
body.cl-page #site-header .bg-accent,
body.ac-dark #site-header .bg-accent,
body.has-hero #site-header:not(.scrolled) .bg-accent{background-color:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
body.vv-dark-header #site-header .bg-accent:hover,
body.cl-page #site-header .bg-accent:hover,
body.ac-dark #site-header .bg-accent:hover,
body.has-hero #site-header:not(.scrolled) .bg-accent:hover{background-color:rgba(255,255,255,.26)}
/* Bara albă (scrolled): toate textele negru plin */
#site-header.scrolled a.hdr-link,
#site-header.scrolled a.hdr-link.nav-active,
#site-header.scrolled .site-logo .text-accent,
#site-header.scrolled .site-logo .hdr-link,
#site-header.scrolled .hdr-sub{color:#000}
/* Header întunecat (video watch / zona client): logo alb plin */
body.vv-dark-header #site-header .site-logo .text-accent,
body.vv-dark-header #site-header .site-logo .hdr-link,
body.vv-dark-header #site-header .site-logo .hdr-sub,
body.cl-page #site-header .site-logo .text-accent,
body.cl-page #site-header .site-logo .hdr-link,
body.cl-page #site-header .site-logo .hdr-sub,
body.ac-dark #site-header .site-logo .text-accent,
body.ac-dark #site-header .site-logo .hdr-link,
body.ac-dark #site-header .site-logo .hdr-sub{color:#fff !important}

#site-header a.hdr-link{color:#4b5563}
#site-header a.hdr-link:hover{color:#111827}
#site-header a.hdr-link.nav-active{color:#111827}
.hdr-logout-glass{display:inline-flex;align-items:center;background:rgba(127,127,140,.16);border:1px solid rgba(127,127,140,.34);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .18s,border-color .18s,color .18s}
.hdr-logout-glass:hover{background:rgba(17,24,39,.92) !important;border-color:rgba(255,255,255,.35) !important;color:#fff !important}
body.cl-page #site-header, body.cl-page #site-header.scrolled{background:transparent !important;border-color:transparent !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important;box-shadow:none !important}
body.cl-page #header-spacer{display:none !important}
body.cl-page #site-header .hdr-link{color:rgba(255,255,255,.85) !important}
body.cl-page #site-header .hdr-sub{color:rgba(255,255,255,.55) !important}
body.cl-page #site-header .hdr-bar{background:#fff !important}
#site-header a.site-logo > *{pointer-events:none}

/* ═══ MENIU MOBIL ═══ */
#mobileMenu{position:fixed;left:0;right:0;z-index:40;
    --mm-text:#111827;--mm-muted:#9aa0a8;--mm-line:rgba(17,24,39,.07);
    --mm-chip:rgba(17,24,39,.05);--mm-chip-line:rgba(17,24,39,.12);
    background:rgba(255,255,255,.88);
    -webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);
    border-bottom:1px solid var(--mm-line);
    max-height:calc(100svh - 68px);overflow-y:auto;
    opacity:0;transform:translateY(-10px);pointer-events:none;visibility:hidden;
    transition:opacity .22s ease,transform .25s ease,visibility 0s linear .25s}
#mobileMenu.is-open{opacity:1;transform:none;pointer-events:auto;visibility:visible;
    transition:opacity .22s ease,transform .25s ease}
body.cl-page #mobileMenu,body.vv-dark-header #mobileMenu,body.ac-dark #mobileMenu{
    --mm-text:#fff;--mm-muted:rgba(255,255,255,.45);--mm-line:rgba(255,255,255,.09);
    --mm-chip:rgba(255,255,255,.08);--mm-chip-line:rgba(255,255,255,.18);
    background:rgba(10,10,12,.88)}
.mm-inner{padding:.9rem 1.25rem 1.4rem}
.mm-label{font-size:.66rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
    color:var(--mm-muted);margin:1.15rem .35rem .3rem}
.mm-inner > .mm-label:first-child{margin-top:.4rem}
.mm-row{display:flex;align-items:center;gap:.8rem;padding:.85rem .35rem;text-decoration:none;
    color:var(--mm-text);font-size:1.02rem;font-weight:500;letter-spacing:-.01em;
    border-bottom:1px solid var(--mm-line);transition:opacity .15s}
.mm-row:active{opacity:.6}
.mm-ico{width:1.25rem;text-align:center;font-size:.9rem;color:var(--mm-muted)}
.mm-go{margin-left:auto;font-size:.68rem;color:var(--mm-muted);opacity:.7}
.mm-row.nav-active{font-weight:700}
.mm-foot{display:flex;gap:.6rem;margin-top:1.25rem}
.mm-chip{flex:1;text-align:center;padding:.8rem 1rem;border-radius:12px;text-decoration:none;
    font-size:.92rem;font-weight:600;color:var(--mm-text);
    background:var(--mm-chip);border:1px solid var(--mm-chip-line)}
.mm-chip-solid{background:#111827;border-color:#111827;color:#fff}
body.cl-page .mm-chip-solid,body.vv-dark-header .mm-chip-solid,body.ac-dark .mm-chip-solid{
    background:#fff;border-color:#fff;color:#111827}
body.ac-dark .hdr-acces-btn{display:none}
#mobileBtn.is-open #b1{transform:translateY(6px) rotate(45deg)}
#mobileBtn.is-open #b2{opacity:0}
#mobileBtn.is-open #b3{transform:translateY(-6px) rotate(-45deg)}

/* ═══ BARA DE COOKIE-URI ═══ */
.vv-cookiebar{position:fixed;left:0;right:0;bottom:0;z-index:140;display:flex;justify-content:center;
    padding:0 1rem calc(1rem + env(safe-area-inset-bottom, 0px));pointer-events:none;
    opacity:0;transform:translateY(14px);transition:opacity .35s ease,transform .35s ease}
.vv-cookiebar[hidden]{display:none}
.vv-cookiebar.show{opacity:1;transform:none}
.vv-cb-in{pointer-events:auto;max-width:680px;width:100%;
    background:rgba(17,24,39,.93);-webkit-backdrop-filter:blur(12px) saturate(120%);
    backdrop-filter:blur(12px) saturate(120%);border:1px solid rgba(255,255,255,.12);
    border-radius:14px;padding:1rem 1.1rem;color:#fff}
.vv-cb-row{display:flex;align-items:flex-start;gap:.8rem}
.vv-cb-ico{font-size:1.05rem;color:rgba(255,255,255,.75);flex:none;margin-top:.15rem}
.vv-cb-txt{margin:0;font-size:.82rem;line-height:1.5;color:rgba(255,255,255,.85)}
.vv-cb-link{color:#fff;text-decoration:underline;text-underline-offset:3px}
.vv-cb-link:hover{opacity:.85}
.vv-cb-cats{margin:.8rem 0 .2rem;border-top:1px solid rgba(255,255,255,.12)}
.vv-cb-cat{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;
    padding:.6rem .1rem;border-bottom:1px solid rgba(255,255,255,.08)}
.vv-cb-cat-txt b{display:block;font-size:.8rem;color:#fff}
.vv-cb-cat-txt small{display:block;font-size:.72rem;color:rgba(255,255,255,.6);line-height:1.4;margin-top:.1rem}
.vv-cb-cat input{width:36px;height:20px;appearance:none;-webkit-appearance:none;flex:none;cursor:pointer;
    border-radius:99px;background:rgba(255,255,255,.22);position:relative;transition:background .2s;margin:0}
.vv-cb-cat input::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:99px;
    background:#fff;transition:transform .2s}
.vv-cb-cat input:checked{background:#fff}
.vv-cb-cat input:checked::after{transform:translateX(16px);background:#111827}
.vv-cb-cat input:disabled{opacity:.55;cursor:default}
.vv-cb-actions{display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap;margin-top:.85rem}
.vv-cb-ok{border:0;border-radius:9px;padding:.55rem 1.05rem;cursor:pointer;
    background:#fff;color:#111827;font:600 .8rem/1 inherit;font-family:inherit;transition:background .15s}
.vv-cb-ok:hover{background:#e5e7eb}
.vv-cb-ghost{border:1px solid rgba(255,255,255,.25);border-radius:9px;padding:.55rem 1.05rem;cursor:pointer;
    background:transparent;color:#fff;font:600 .8rem/1 inherit;font-family:inherit;transition:background .15s}
.vv-cb-ghost:hover{background:rgba(255,255,255,.12)}
@media (max-width:560px){
    .vv-cb-actions{flex-direction:column-reverse}
    .vv-cb-actions button{width:100%;padding:.7rem 1rem}
}
