/* Визия „Кино“ (табло 02): кинематографичен черен, светли лъчи, римски главни букви, бутони-хапчета.
   Зарежда се след app.css само когато темата е избрана. */
@font-face { font-family: "Forum"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/forum-cyrillic-400-normal.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Forum"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/forum-latin-400-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Raleway"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/raleway-cyrillic-400-normal.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Raleway"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/raleway-latin-400-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Raleway"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/raleway-cyrillic-500-normal.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Raleway"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/raleway-latin-500-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Raleway"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/raleway-cyrillic-600-normal.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Raleway"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/raleway-latin-600-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Marck Script"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/marck-script-cyrillic-400-normal.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Marck Script"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/marck-script-latin-400-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

.theme-cinema {
  --font-serif: "Forum", "Playfair Display", Georgia, serif;
  --font-sans: "Raleway", "Montserrat", "Segoe UI", Arial, sans-serif;
  --font-num: "Playfair Display", Georgia, serif;
  --font-script: "Marck Script", "Great Vibes", cursive;
  --radius: 3px;
  --radius-lg: 4px;
  --border: #3b2f17;
  --glow: 0 0 26px rgba(212, 175, 55, .28);
  --line: linear-gradient(90deg, transparent, #F3D58A 50%, transparent);
}
body.theme-cinema { background: #030303; font-synthesis: none; }
.theme-cinema .page {
  background:
    radial-gradient(ellipse 70% 38% at 50% 0%, rgba(212, 175, 55, .13), transparent 70%),
    linear-gradient(118deg, transparent 0 14%, rgba(243, 213, 138, .07) 14.15%, transparent 14.5% 86%, rgba(243, 213, 138, .06) 86.15%, transparent 86.5%),
    url("../img/gold-waves.svg") center bottom / 100% 240px no-repeat,
    #030303;
}
.theme-cinema h1, .theme-cinema h2, .theme-cinema h3 { text-transform: uppercase; letter-spacing: .09em; font-weight: 400; }
.theme-cinema .eyebrow { letter-spacing: .5em; font-weight: 600; font-size: .7rem; }
.theme-cinema .countdown__num, .theme-cinema .hero__date, .theme-cinema .notice__code, .theme-cinema .summary__status,
.theme-cinema .counter-pill, .theme-cinema .tab__count { font-family: var(--font-num); }

/* хедър и футър */
.theme-cinema .site-header { background: rgba(3, 3, 3, .72); border-bottom: 0; box-shadow: 0 12px 30px -24px rgba(212, 175, 55, .9); }
.theme-cinema .site-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: var(--line); opacity: .55; }
.theme-cinema .site-nav a { letter-spacing: .26em; }
.theme-cinema .site-footer { letter-spacing: .4em; }
.theme-cinema .site-footer__line { width: 160px; box-shadow: 0 0 10px rgba(243, 213, 138, .8); }

/* бутони — хапчета с ореол */
.theme-cinema .btn { border-radius: 3px; letter-spacing: .24em; font-weight: 600; }
.theme-cinema .btn--primary { color: var(--gold-light); background: rgba(212, 175, 55, .06); border: 1.5px solid var(--gold); box-shadow: var(--glow), inset 0 0 16px rgba(212, 175, 55, .14); }
.theme-cinema .btn--primary:hover { color: #0b0905; background: var(--gold-grad); box-shadow: 0 0 36px rgba(212, 175, 55, .55); }
.theme-cinema .btn--primary:not(.is-loading):not(.btn--icon)::after { content: "→"; font-size: 1.15em; letter-spacing: 0; margin-left: .1em; transition: transform .25s var(--ease); }
.theme-cinema .btn--primary:hover::after { transform: translateX(4px); }
.theme-cinema .btn.is-loading::after { border-color: rgba(212, 175, 55, .25); border-top-color: var(--gold); }

/* разделител със звезда */
.theme-cinema .divider::before, .theme-cinema .divider::after { height: 1px; box-shadow: 0 0 8px rgba(243, 213, 138, .6); }
.theme-cinema .divider__gem { width: 18px; height: 18px; transform: none; background: url("../img/star.svg") center / contain no-repeat; filter: drop-shadow(0 0 6px rgba(243, 213, 138, .9)); }

/* карти: заоблени, светла линия отгоре вместо рамка */
.theme-cinema .card { border-radius: var(--radius-lg); border-color: rgba(212, 175, 55, .32); background: linear-gradient(160deg, rgba(24, 19, 9, .92), rgba(6, 6, 6, .96) 60%); box-shadow: 0 30px 60px rgba(0, 0, 0, .6), 0 0 50px -18px rgba(212, 175, 55, .35); }
.theme-cinema .card--framed::before { inset: 0 12% auto; height: 1px; border: 0; border-radius: 0; background: var(--line); box-shadow: 0 0 14px 1px rgba(243, 213, 138, .7); }
.theme-cinema .card__title { font-size: 1.15rem; }

/* поканата */
.theme-cinema .invite-card {
  border-radius: 4px; border: 1px solid rgba(212, 175, 55, .55);
  background:
    radial-gradient(ellipse 80% 45% at 50% 0%, rgba(212, 175, 55, .18), transparent 70%),
    linear-gradient(125deg, transparent 0 8%, rgba(243, 213, 138, .14) 8.3%, transparent 9.5%),
    linear-gradient(235deg, transparent 0 8%, rgba(243, 213, 138, .14) 8.3%, transparent 9.5%),
    #050505;
  box-shadow: 0 30px 70px rgba(0, 0, 0, .7), 0 0 60px -10px rgba(212, 175, 55, .35);
}
.theme-cinema .invite-card::before { inset: 0 15% auto; height: 1px; border: 0; background: var(--line); box-shadow: 0 0 16px 2px rgba(243, 213, 138, .7); }
.theme-cinema .invite-card__corner { display: none; }
.theme-cinema .invite-card__tagline { letter-spacing: .28em; }
.theme-cinema .invite-card__kicker { font-family: var(--font-script); font-style: normal; font-size: clamp(2.4rem, 9vw, 3.2rem); transform: rotate(-4deg); margin-top: 18px; }
.theme-cinema .invite-card__kicker::after { content: "!"; }
.theme-cinema .invite-card__greeting { text-transform: none; letter-spacing: .02em; }
.theme-cinema .invite-card__greeting em { font-style: normal; color: var(--gold-light); }
.theme-cinema .signature { font-family: var(--font-script); font-size: 2.4rem; }
.theme-cinema .facts .icon { filter: drop-shadow(0 0 6px rgba(212, 175, 55, .7)); }
.theme-cinema .summary__name { letter-spacing: .06em; }

/* полета и избори */
.theme-cinema .input, .theme-cinema .select, .theme-cinema .textarea { border-radius: var(--radius); background: rgba(255, 255, 255, .025); border-color: rgba(212, 175, 55, .3); }
.theme-cinema .label { letter-spacing: .24em; }
.theme-cinema .choice { border-radius: var(--radius); border-color: rgba(212, 175, 55, .28); }
.theme-cinema .choice:has(input:checked) { box-shadow: var(--glow); background: rgba(212, 175, 55, .1); }
.theme-cinema .chips .choice { border-radius: 3px; }
.theme-cinema .flash { border-radius: var(--radius); }
.theme-cinema .plus-item { border-radius: 4px; border-color: rgba(212, 175, 55, .28); }
.theme-cinema .counter-pill { border-color: var(--gold); box-shadow: var(--glow); }

/* брояч */
.theme-cinema .countdown__cell { border-radius: 4px; border-color: rgba(212, 175, 55, .45); background: rgba(10, 8, 4, .65); box-shadow: inset 0 0 20px rgba(212, 175, 55, .1), 0 0 24px -10px rgba(212, 175, 55, .6); }
.theme-cinema .countdown__cell::before { display: none; }
.theme-cinema .countdown__label { letter-spacing: .3em; }

/* QR страница и качване */
.theme-cinema .hub-btn { border-radius: 3px; padding: 18px 26px 18px 18px; min-height: 84px; border-color: rgba(212, 175, 55, .6); background: rgba(212, 175, 55, .04); box-shadow: 0 0 30px -12px rgba(212, 175, 55, .6); }
.theme-cinema .hub-btn--primary { background: rgba(212, 175, 55, .1); color: var(--gold-light); border: 1.5px solid var(--gold); box-shadow: var(--glow), inset 0 0 20px rgba(212, 175, 55, .15); }
.theme-cinema .hub-btn--primary:hover { background: var(--gold-grad); color: #0b0905; }
.theme-cinema .hub-btn__title { letter-spacing: .2em; }
.theme-cinema .dropzone { border-radius: 4px; border: 1px solid rgba(212, 175, 55, .55); background: radial-gradient(ellipse at 50% 0%, rgba(212, 175, 55, .14), transparent 70%); box-shadow: inset 0 0 30px rgba(212, 175, 55, .08); }
.theme-cinema .dropzone .icon { filter: drop-shadow(0 0 10px rgba(243, 213, 138, .8)); }
.theme-cinema .upload-item { border-radius: 4px; }

/* галерия */
.theme-cinema .tab { text-transform: uppercase; letter-spacing: .2em; font-size: .7rem; padding: 10px 16px; }
.theme-cinema .tab[aria-current="page"] { background: rgba(212, 175, 55, .1); color: var(--gold-light); border: 1px solid var(--gold); box-shadow: var(--glow); }
.theme-cinema .grid { gap: 8px; }
@media (min-width: 640px) { .theme-cinema .grid { gap: 12px; } }
.theme-cinema .grid__item { border-radius: 4px; border: 1px solid rgba(212, 175, 55, .22); }
.theme-cinema .grid__item:hover { box-shadow: 0 0 26px rgba(212, 175, 55, .45); border-color: var(--gold); }
.theme-cinema .empty { border-radius: 4px; border-style: solid; border-color: rgba(212, 175, 55, .3); }
.theme-cinema .viewer__nav { border-color: var(--gold); box-shadow: var(--glow); }
.theme-cinema .notice__code { text-shadow: none; }

/* hero */
/* ---------- Кино (табло 02) ---------- */
.hero__crown { width: clamp(76px, 12vw, 118px); height: auto; margin: 0 auto 6px; filter: drop-shadow(0 6px 22px rgba(212, 175, 55, .45)); }
.cine-title { margin: 0; display: flex; flex-direction: column; align-items: center; line-height: 1; letter-spacing: .04em; }
.cine-title > span { background: var(--gold-grad); -webkit-background-clip: text; background-clip: text; color: transparent; font-family: var(--font-serif); }
.cine-title__top { font-weight: 500; font-size: clamp(2rem, 7.4vw, 3.9rem); }
.cine-title__level { font-weight: 500; font-size: clamp(2rem, 7.4vw, 3.9rem); margin-top: .05em; }
.cine-title__num { position: relative; font-weight: 600; font-size: clamp(6.5rem, 26vw, 12.5rem); line-height: .9; filter: drop-shadow(0 6px 30px rgba(212, 175, 55, .45)); }
.theme-cinema .hero::before {
  background:
    radial-gradient(ellipse 38% 16% at 50% 58%, rgba(243, 213, 138, .32), transparent 70%),
    radial-gradient(circle at 50% 46%, rgba(212, 175, 55, .16), transparent 46%),
    radial-gradient(ellipse at 50% 120%, rgba(212, 175, 55, .12), transparent 55%);
}
.theme-cinema .hero__content { padding-top: 10px; }
.theme-cinema .hero__content::before { /* светла дъга под „50“ */
  content: ""; position: absolute; left: 50%; top: clamp(150px, 34vw, 300px); width: min(86vw, 560px); height: min(43vw, 280px);
  transform: translateX(-50%); border-radius: 50% 50% 0 0 / 100% 100% 0 0; border-top: 2px solid rgba(243, 213, 138, .85);
  box-shadow: 0 -10px 40px -12px rgba(243, 213, 138, .6); pointer-events: none; z-index: -1;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 22%, #000 78%, transparent 100%); mask-image: linear-gradient(90deg, transparent 0%, #000 22%, #000 78%, transparent 100%);
}
.hero__streaks { position: absolute; inset: 0; z-index: -1; pointer-events: none; overflow: hidden; }
.hero__streaks span { position: absolute; width: 2px; height: 160%; top: -30%; background: linear-gradient(180deg, transparent, rgba(243, 213, 138, .55) 45%, rgba(212, 175, 55, .15) 60%, transparent); transform: rotate(32deg); filter: blur(.4px); box-shadow: 0 0 18px 2px rgba(212, 175, 55, .35); animation: streak 9s ease-in-out infinite; }
.hero__streaks span { height: 120%; top: -10%; }
.hero__streaks span:nth-child(1) { left: 9%; transform: rotate(-34deg); }
.hero__streaks span:nth-child(2) { left: 17%; transform: rotate(-34deg); opacity: .5; animation-delay: -3s; }
.hero__streaks span:nth-child(3) { right: 9%; transform: rotate(34deg); }
.hero__streaks span:nth-child(4) { right: 17%; transform: rotate(34deg); opacity: .5; animation-delay: -5s; }
@media (max-width: 640px) {
  .hero__streaks span { height: 70%; top: -12%; }
  .hero__streaks span:nth-child(1) { left: 2%; }
  .hero__streaks span:nth-child(3) { right: 2%; }
  .hero__streaks span:nth-child(2), .hero__streaks span:nth-child(4) { display: none; }
}
@keyframes streak { 0%, 100% { opacity: .35; } 50% { opacity: 1; } }
.theme-cinema .hero__tagline { letter-spacing: .32em; }

.theme-cinema .cine-title__num { font-family: var(--font-num); font-weight: 600; }
