
/* Static handoff helpers only — visual system remains the original Bolt/Tailwind build. */
html,body{min-height:100%} button,a{cursor:pointer}.static-hidden{display:none!important}
.static-admin-input{width:100%;background:#1a1a1f;border:1px solid #2a2a30;border-radius:.75rem;padding:.7rem .9rem;color:#f5f5f7;font-size:.875rem;outline:none}
.static-admin-input:focus{border-color:rgba(225,29,42,.6)}
.static-admin-label{display:block;font-size:.8rem;font-weight:500;color:#f5f5f7;margin-bottom:.4rem}
.static-admin-card{background:#131316;border:1px solid #2a2a30;border-radius:1rem;padding:1.5rem}
.static-table{width:100%;border-collapse:collapse;min-width:760px}.static-table th,.static-table td{padding:.85rem 1rem;text-align:right;border-bottom:1px solid #2a2a30;font-size:.82rem}.static-table th{color:#9a9aa3;font-weight:500}.static-table td{color:#f5f5f7}
.static-modal{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;padding:1rem}.static-modal-panel{background:#131316;border:1px solid #2a2a30;border-radius:1.25rem;width:min(720px,100%);max-height:90vh;overflow:auto;padding:1.5rem}
[data-lang-panel="en"]{display:none} html[lang="en"] [data-lang-panel="ar"]{display:none} html[lang="en"] [data-lang-panel="en"]{display:block}
html[lang="en"]{direction:ltr}html[lang="en"] .rtl-only-align{text-align:left}
@media(max-width:1023px){.static-sidebar{transform:translateX(100%)}.static-sidebar.open{transform:translateX(0)}.static-main{margin-right:0!important}}

/* Utilities missing from the precompiled Tailwind bundle, used by the series-card "rate now" button. */
.bottom-3{bottom:.75rem}
.inset-x-3{left:.75rem;right:.75rem}
.z-20{z-index:20}
.gap-1\.5{gap:.375rem}
.pb-14{padding-bottom:3.5rem}

/* Mobile nav dropdown + language switcher — these custom classes had no rules anywhere, so the panel rendered as unstyled text over transparent header. */
.mobile-menu-panel{margin-top:1rem;padding:1rem;background:#131316;border:1px solid #2a2a30;border-radius:1rem;box-shadow:0 20px 45px -20px rgba(0,0,0,.6)}
.mobile-menu-link{transition:background-color .15s,border-color .15s}
.mobile-language-switcher{display:flex;align-items:center;gap:.75rem;margin-top:.25rem;padding:.75rem .25rem;border-top:1px solid #2a2a30;border-bottom:1px solid #2a2a30}
.mobile-language-switcher a{flex:1;text-align:center;padding:.5rem;border-radius:.75rem;font-size:.8125rem;color:#9a9aa3;text-decoration:none}
.mobile-language-switcher a.is-active{background:#e11d2a;color:#fff;font-weight:700}

/* Home hero slider — slides stack in one grid cell and cross-fade; buttons grow on hover. */
.hero-slides{display:grid}
.hero-slide{grid-area:1/1;position:relative;overflow:hidden;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility .9s}
.hero-slide.is-active{opacity:1;visibility:visible;z-index:1}
.hero-slide-img{transform:scale(1);transition:transform 8s ease-out}
.hero-slide.is-active .hero-slide-img{transform:scale(1.08)}
.hero-anim{opacity:0;transform:translateY(24px)}
.hero-slide.is-active .hero-anim{animation:heroIn .8s ease-out var(--d,0s) forwards}
@keyframes heroIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}

.hero-btn{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,background-color .2s ease,border-color .2s ease;will-change:transform}
.hero-btn:hover,.hero-btn:focus-visible{transform:scale(1.1) translateY(-2px);box-shadow:0 12px 30px -10px rgba(225,29,42,.55);border-color:rgba(225,29,42,.6)}
.hero-btn:active{transform:scale(.97);transition-duration:.1s}
.hero-btn-icon{transition:transform .3s ease}
.hero-btn:hover .hero-btn-icon{transform:translateX(-4px) scale(1.15)}
html[dir="ltr"] .hero-btn:hover .hero-btn-icon{transform:translateX(4px) scale(1.15)}

.hero-arrow{position:absolute;top:50%;z-index:5;width:2.75rem;height:2.75rem;margin-top:-1.375rem;display:flex;align-items:center;justify-content:center;border-radius:9999px;color:#f5f5f7;background:rgba(10,10,11,.55);border:1px solid #2a2a30;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .3s cubic-bezier(.34,1.56,.64,1),background-color .2s,border-color .2s}
.hero-arrow:hover,.hero-arrow:focus-visible{transform:scale(1.15);background:#e11d2a;border-color:#e11d2a}
.hero-arrow--next{inset-inline-end:1rem}
.hero-arrow--prev{inset-inline-start:1rem}
html[dir="ltr"] .hero-arrow svg{transform:scaleX(-1)}
.hero-dots{position:absolute;bottom:1.75rem;left:0;right:0;z-index:5;display:flex;justify-content:center;gap:.5rem}
.hero-dot{width:.6rem;height:.6rem;border-radius:9999px;background:rgba(255,255,255,.35);transition:width .35s ease,background-color .2s,transform .2s}
.hero-dot:hover{transform:scale(1.4);background:rgba(255,255,255,.7)}
.hero-dot.is-active{width:2rem;background:#e11d2a}
@media(max-width:767px){.hero-arrow{display:none}}
@media(prefers-reduced-motion:reduce){.hero-slide,.hero-slide-img,.hero-btn,.hero-arrow{transition:none}.hero-slide.is-active .hero-slide-img{transform:none}.hero-anim,.hero-slide.is-active .hero-anim{animation:none;opacity:1;transform:none}}

/* Series cards — the whole card grows on hover/focus (Shahid-style). `backwards` fill lets the hover transform win after the entrance animation. */
.series-card{transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease,border-color .35s ease;will-change:transform}
.series-card.animate-fade-in-up{animation-fill-mode:backwards}
.series-card:hover,.series-card:focus-within{transform:scale(1.07);z-index:30;box-shadow:0 24px 48px -16px rgba(0,0,0,.8),0 0 40px -12px rgba(225,29,42,.45);border-color:rgba(225,29,42,.5)}
.series-card:active{transform:scale(1.02);transition-duration:.12s}
@media(prefers-reduced-motion:reduce){.series-card{transition:none}.series-card:hover,.series-card:focus-within{transform:none}}

/* Audience Q&A (series page, audience-questions tab) — members ask, admin answers, answers open like an accordion. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.uq{max-width:860px;margin:0 auto 3rem}
.uq-head h2{font-size:1.5rem;font-weight:700;color:#f5f5f7}
.uq-head p{margin-top:.35rem;font-size:.875rem;color:#9a9aa3}
.uq-flash{margin-top:1rem;padding:.75rem 1rem;border-radius:.875rem;border:1px solid rgba(34,197,94,.3);background:rgba(34,197,94,.1);color:#4ade80;font-size:.875rem}
.uq-login{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1.25rem;padding:1rem 1.25rem;border:1px solid rgba(225,29,42,.35);border-radius:1.125rem;background:rgba(225,29,42,.06);color:#c8c8cb;font-size:.875rem}
.uq-login a{background:#e11d2a;color:#fff;border-radius:999px;padding:.6rem 1.25rem;text-decoration:none;white-space:nowrap;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}
.uq-login a:hover{transform:scale(1.08)}
.uq-form{margin-top:1.25rem;padding:1rem;border:1px solid #2a2a30;border-radius:1.125rem;background:#131316}
.uq-form textarea{width:100%;resize:vertical;min-height:5.5rem;background:#1a1a1f;border:1px solid #2a2a30;border-radius:.875rem;padding:.8rem 1rem;color:#f5f5f7;font:inherit;font-size:.9375rem;outline:none;transition:border-color .2s}
.uq-form textarea:focus{border-color:rgba(225,29,42,.6)}
.uq-error{margin-top:.5rem;font-size:.8125rem;color:#f87171}
.uq-form-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.75rem;font-size:.75rem;color:#9a9aa3}
.uq-form-foot button{background:#e11d2a;color:#fff;border-radius:999px;padding:.6rem 1.5rem;font-size:.875rem;font-weight:600;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s}
.uq-form-foot button:hover{transform:scale(1.08);box-shadow:0 10px 24px -10px rgba(225,29,42,.6)}
.uq-list{margin-top:2rem}
.uq-list>h3{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.125rem;font-weight:700;color:#f5f5f7}
.uq-list>h3 span{font-size:.75rem;font-weight:500;color:#9a9aa3}
.uq-item{margin-bottom:.75rem;border:1px solid #2a2a30;border-radius:1rem;background:#131316;overflow:hidden;transition:border-color .2s}
.uq-item.is-mine{border-color:rgba(225,29,42,.35)}
.uq-item:hover{border-color:rgba(225,29,42,.5)}
.uq-item summary,.uq-summary-static{display:flex;align-items:center;gap:.75rem;padding:1rem 1.125rem}
.uq-item summary{cursor:pointer;list-style:none}
.uq-item summary::-webkit-details-marker{display:none}
.uq-q{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}
.uq-q b{font-size:.9375rem;font-weight:600;color:#f5f5f7;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}
.uq-q small{font-size:.75rem;color:#9a9aa3}
.uq-tag{flex:none;font-size:.6875rem;padding:.2rem .6rem;border-radius:999px;background:rgba(234,179,8,.1);color:#facc15}
.uq-tag-done{background:rgba(34,197,94,.1);color:#4ade80}
.uq-chevron{flex:none;width:1.25rem;height:1.25rem;color:#9a9aa3;transition:transform .3s ease}
.uq-item[open] .uq-chevron{transform:rotate(180deg);color:#e11d2a}
.uq-answer{padding:0 1.125rem 1.125rem}
.uq-item[open] .uq-answer{animation:uqOpen .35s ease}
.uq-answer-inner{padding:.9rem 1rem;border-radius:.875rem;background:#1a1a1f;border-inline-start:3px solid #e11d2a}
.uq-answer-label{display:block;margin-bottom:.35rem;font-size:.75rem;font-weight:700;color:#e11d2a}
.uq-answer-inner p{font-size:.9375rem;line-height:1.85;color:#d4d4d8;white-space:pre-line;overflow-wrap:anywhere}
.uq-empty{padding:2rem 0;text-align:center;color:#9a9aa3;font-size:.875rem}
@keyframes uqOpen{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.uq-item[open] .uq-answer{animation:none}.uq-chevron,.uq-login a,.uq-form-foot button{transition:none}}

/* Admin: inline photo-album manager */
.adm-photos{margin-top:1rem;padding-top:1rem;border-top:1px solid #2a2a30}
.adm-photos-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}
.adm-photos-head h4{font-size:.8125rem;font-weight:700;color:#f5f5f7}
.adm-photos-head h4 span{margin-inline-start:.35rem;font-weight:500;color:#9a9aa3}
.adm-photos-upload{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.adm-photos-upload input[type=file]{max-width:15rem;font-size:.75rem;color:#9a9aa3}
.adm-photos-upload button{background:#e11d2a;color:#fff;border-radius:.75rem;padding:.45rem 1rem;font-size:.75rem;font-weight:600}
.adm-photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.5rem}
.adm-photo{position:relative;aspect-ratio:1;border:1px solid #2a2a30;border-radius:.75rem;overflow:hidden;background:#1a1a1f}
.adm-photo img{width:100%;height:100%;object-fit:cover;display:block}
.adm-photo form{position:absolute;top:.3rem;inset-inline-start:.3rem}
.adm-photo button svg{width:.9rem;height:.9rem}
.adm-photo button{width:1.85rem;height:1.85rem;border-radius:9999px;background:rgba(10,10,11,.8);color:#f5f5f7;line-height:1;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s,background-color .2s,transform .2s}
.adm-photo:hover button,.adm-photo button:focus-visible{opacity:1}
.adm-photo button:hover{background:#e11d2a;transform:scale(1.15)}
@media(hover:none){.adm-photo button{opacity:1}}
.adm-photos-empty{font-size:.75rem;color:#9a9aa3}
.adm-photos-toggle{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;margin-inline-end:.4rem;border:1px solid #2a2a30;border-radius:.75rem;font-size:.75rem;font-weight:600;color:#f5f5f7;transition:border-color .2s,background-color .2s}
.adm-photos-toggle:hover{border-color:rgba(225,29,42,.6);background:#1a1a1f}
.adm-photos-toggle small{padding:.05rem .45rem;border-radius:9999px;background:#1a1a1f;color:#9a9aa3;font-size:.7rem}
.adm-photos-toggle[aria-expanded=true]{background:#e11d2a;border-color:#e11d2a}
.adm-photos-toggle.is-loading{opacity:.6;pointer-events:none}
.adm-photos-error{padding:.75rem 0;font-size:.8rem;color:#f87171}

/* Season card (home "current season") — the whole wide card grows on hover/focus and presses in on click. */
.season-card{transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s ease,border-color .4s ease;will-change:transform}
.season-card:hover,.season-card:focus-visible{transform:scale(1.03);z-index:30;box-shadow:0 28px 60px -20px rgba(0,0,0,.85),0 0 50px -14px rgba(225,29,42,.5);border-color:rgba(225,29,42,.55)}
.season-card:active{transform:scale(.985);transition-duration:.12s}
@media(prefers-reduced-motion:reduce){.season-card{transition:none}.season-card:hover,.season-card:focus-visible{transform:none}}
