/*=======================================================================
* Dark Cinema Theme — Multisala Macherione
* Refresh grafico in stile dark/streaming.
* Caricato DOPO style.css e responsive.css: contiene solo override.
======================================================================= */

:root {
  --mc-bg: #0b0e14;
  --mc-bg-alt: #10141e;
  --mc-card: #161b27;
  --mc-card-hover: #1b2130;
  --mc-border: rgba(255, 255, 255, 0.08);
  --mc-text: #e6e8ee;
  --mc-muted: #9aa3b2;
  --mc-accent: #e50914;
  --mc-accent-dark: #b00710;
  --mc-gold: #f5c518;
}

/*------------------------------------------------------
Base
------------------------------------------------------*/
body {
  background-color: var(--mc-bg);
  color: var(--mc-text);
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  color: #ffffff;
  font-weight: 600;
  letter-spacing: 0.02em;
}

p {
  color: var(--mc-text);
}

a {
  color: #ff4d5d;
}
a:hover {
  color: #ffffff;
}
a:focus, a:visited {
  color: #ff4d5d;
}

hr {
  border-color: var(--mc-border);
}

::selection {
  background: var(--mc-accent);
  color: #ffffff;
}

img {
  border-radius: 8px;
}

iframe {
  border-radius: 10px;
  background: #000;
}

/* Titoli di sezione con barra accento */
.section-title,
.main-wrap h1,
.main-wrap h2 {
  position: relative;
  padding-left: 16px;
}
.section-title::before,
.main-wrap h1::before,
.main-wrap h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.12em;
  bottom: 0.12em;
  width: 5px;
  border-radius: 3px;
  background: linear-gradient(180deg, var(--mc-accent), var(--mc-accent-dark));
}

/*------------------------------------------------------
Preloader
------------------------------------------------------*/
.preloader {
  background-color: var(--mc-bg);
}

/*------------------------------------------------------
Navbar
------------------------------------------------------*/
.navbar-default {
  background-color: rgba(11, 14, 20, 0.97);
  border: none;
  border-bottom: 1px solid var(--mc-border);
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.5);
  margin-bottom: 0;
}

.navbar-default .navbar-nav > li > a {
  color: var(--mc-text) !important;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: 1.2rem;
  transition: color 0.25s ease;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: var(--mc-accent) !important;
  background-color: transparent;
}
.navbar-default .navbar-nav > li.active > a,
.navbar-default .navbar-nav > li.active > a:hover,
.navbar-default .navbar-nav > li.active > a:focus {
  color: #ffffff !important;
  background-color: transparent;
  box-shadow: inset 0 -3px 0 var(--mc-accent);
}

.navbar-default .navbar-brand {
  height: auto;
  display: flex;
  align-items: center;
}
.navbar-default .navbar-brand img {
  max-height: 115px;
  width: auto;
}

.navbar-default .navbar-toggle {
  border-color: var(--mc-border);
}
.navbar-default .navbar-toggle .icon-bar {
  background-color: #ffffff;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
  background-color: var(--mc-card);
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: var(--mc-border);
}

@media (max-width: 767px) {
  .navbar-default {
    min-height: 76px;
  }
  .navbar-default .navbar-brand img {
    max-height: 60px;
  }
  .navbar-default .navbar-toggle {
    margin-top: 20px;
  }
  .navbar-default .navbar-nav > li > a {
    border-bottom: 1px solid var(--mc-border);
  }
}

/*------------------------------------------------------
Bottoni
------------------------------------------------------*/
.btn {
  border-radius: 999px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: 1.2rem;
  padding: 8px 20px;
  border: none;
  transition: all 0.25s ease;
}

.btn-danger {
  background: linear-gradient(135deg, var(--mc-accent) 0%, var(--mc-accent-dark) 100%);
  box-shadow: 0 4px 14px rgba(229, 9, 20, 0.35);
}
.btn-danger:hover, .btn-danger:focus, .btn-danger:active {
  background: linear-gradient(135deg, #ff1f2c 0%, var(--mc-accent) 100%);
  box-shadow: 0 6px 20px rgba(229, 9, 20, 0.5);
  transform: translateY(-1px);
}

.btn-info {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.35);
  color: #ffffff !important;
}
.btn-info:hover, .btn-info:focus, .btn-info:active {
  background: rgba(255, 255, 255, 0.1);
  border-color: #ffffff;
}

.btn-success {
  background: linear-gradient(135deg, var(--mc-accent) 0%, var(--mc-accent-dark) 100%);
  box-shadow: 0 4px 14px rgba(229, 9, 20, 0.35);
}
.btn-success:hover, .btn-success:focus {
  background: linear-gradient(135deg, #ff1f2c 0%, var(--mc-accent) 100%);
}

.btn-warning {
  background: transparent;
  border: 1px solid var(--mc-gold);
  color: var(--mc-gold) !important;
}
.btn-warning:hover, .btn-warning:focus {
  background: rgba(245, 197, 24, 0.15);
}

.btn-default {
  background: var(--mc-card);
  border: 1px solid var(--mc-border);
  color: var(--mc-text) !important;
}
.btn-default:hover, .btn-default:focus {
  background: var(--mc-card-hover);
  border-color: rgba(255, 255, 255, 0.25);
}

/*------------------------------------------------------
Sezioni
------------------------------------------------------*/
.movie-section,
.upcomming-section,
.news-section {
  background-color: var(--mc-bg-alt) !important;
  background-image: none !important;
  border-top: 1px solid var(--mc-border);
  border-bottom: 1px solid var(--mc-border);
}

.section-padding {
  padding: 50px 0;
}

/*------------------------------------------------------
Card film (homepage "in sala")
------------------------------------------------------*/
.upcomming-featured {
  background: var(--mc-card);
  border: 1px solid var(--mc-border);
  border-radius: 14px;
  padding: 18px;
  text-align: center;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}
.upcomming-featured:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.55);
  border-color: rgba(229, 9, 20, 0.45);
  background: var(--mc-card-hover);
}
.upcomming-featured img {
  margin: 0 auto;
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
}
.upcomming-featured .upcomming-details {
  position: static;
  background-image: none;
  padding: 15px 5px 0 5px;
}
.upcomming-featured .upcomming-details .video-title {
  color: #ffffff;
}
.upcomming-featured .upcomming-details .video-release-on,
.upcomming-featured .upcomming-details p {
  color: var(--mc-muted);
}

/* Stelle rating */
.fa-star {
  color: rgba(255, 255, 255, 0.25);
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
}

/* Evidenza sezione Cinema Flaba (ex sfondo arancione) */
.flaba-highlight .upcomming-featured {
  border-color: rgba(245, 197, 24, 0.4);
}
.flaba-highlight .upcomming-featured:hover {
  border-color: var(--mc-gold);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(245, 197, 24, 0.35);
}

/*------------------------------------------------------
Card carosello / griglia (video-item)
------------------------------------------------------*/
.video-item {
  background: var(--mc-card);
  border: 1px solid var(--mc-border);
  border-radius: 14px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}
.video-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.55);
  border-color: rgba(229, 9, 20, 0.45);
}
.video-item .thumb-wrap,
.video-item .thumb-wrap img {
  border-radius: 0;
}
.video-item .video-details {
  padding: 15px;
}
.video-item .video-details .video-title,
.video-item .video-details h4 {
  color: #ffffff;
}
.video-item .video-details .video-title a,
.video-item .video-details h4 a {
  color: #ffffff;
}
.video-item .video-details .video-title a:hover,
.video-item .video-details h4 a:hover {
  color: var(--mc-accent);
}
.video-item .video-details .video-release-on,
.video-item .video-details p {
  color: var(--mc-muted);
}
.video-item .thumb-hover {
  background-color: rgba(11, 14, 20, 0.75);
}

/*------------------------------------------------------
Scheda film
------------------------------------------------------*/
.video-single .video-title,
.video-single .content-wrap .video-details .video-title {
  color: #ffffff;
}
.video-single .video-release-date {
  color: var(--mc-muted);
}
.single-section-title,
.single-section .single-section-title {
  color: #ffffff;
}
.video-attributes {
  background: var(--mc-card);
  border: 1px solid var(--mc-border);
  border-radius: 12px;
  padding: 18px;
}
.video-attributes p {
  color: var(--mc-text);
}
.video-attributes label {
  color: var(--mc-gold);
  font-weight: 600;
}
.video-entry .section-content {
  color: var(--mc-text);
  line-height: 1.8;
}

/*------------------------------------------------------
News / recensioni
------------------------------------------------------*/
.news-item {
  background: var(--mc-card);
  border: 1px solid var(--mc-border);
  border-radius: 14px;
  overflow: hidden;
}
.news-item .news-title {
  color: #ffffff;
}
.news-item .news-excerpt,
.news-item .news-date-meta {
  color: var(--mc-muted);
}

/*------------------------------------------------------
Form
------------------------------------------------------*/
.form-control,
input:not([type=radio]):not([type=checkbox]):not([type=submit]),
textarea,
select {
  background-color: var(--mc-bg-alt);
  border: 1px solid var(--mc-border);
  color: var(--mc-text);
  border-radius: 8px;
  box-shadow: none;
}
.form-control:focus,
input:not([type=radio]):not([type=checkbox]):not([type=submit]):focus,
textarea:focus,
select:focus {
  background-color: var(--mc-bg-alt);
  border-color: var(--mc-accent);
  box-shadow: 0 0 0 3px rgba(229, 9, 20, 0.2);
  color: var(--mc-text);
}
.form-control::placeholder,
input::placeholder,
textarea::placeholder {
  color: var(--mc-muted);
  opacity: 1;
}
label {
  color: var(--mc-text);
}

/*------------------------------------------------------
Modal
------------------------------------------------------*/
.modal-content {
  background-color: var(--mc-card);
  border: 1px solid var(--mc-border);
  border-radius: 14px;
  color: var(--mc-text);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.7);
}
.modal-header,
.modal-footer {
  border-color: var(--mc-border);
}
.modal-title {
  color: #ffffff;
}
.modal .close {
  color: #ffffff;
  opacity: 0.6;
  text-shadow: none;
}
.modal .close:hover {
  opacity: 1;
}
.modal-backdrop {
  background-color: #000000;
}
.modal-backdrop.in {
  opacity: 0.75;
}

/*------------------------------------------------------
Tabelle (area utente)
------------------------------------------------------*/
.table,
table {
  color: var(--mc-text);
}
.table > thead > tr > th,
.table > tbody > tr > td,
.table > tbody > tr > th {
  border-color: var(--mc-border);
}
.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.03);
}
.table-hover > tbody > tr:hover {
  background-color: rgba(255, 255, 255, 0.06);
}

/* Box contenuto area utente (ex sfondo #efefef) */
.panel-box {
  background: var(--mc-card);
  border: 1px solid var(--mc-border);
  border-radius: 12px;
  padding: 18px;
}

/*------------------------------------------------------
Contenuti CMS (pagine da DB con stili inline chiari)
------------------------------------------------------*/
.main-wrap [style*="background:#efefef"],
.main-wrap [style*="background: #efefef"],
.main-wrap [style*="background:#ededed"],
.main-wrap [style*="background: #ededed"],
.main-wrap [style*="background:#f7f7f7"],
.main-wrap [style*="background:#ffffff"],
.main-wrap [style*="background: #ffffff"] {
  background: var(--mc-card) !important;
  border-color: var(--mc-border) !important;
  color: var(--mc-text);
}
.main-wrap [style*="color: rgb(0, 0, 0)"],
.main-wrap [style*="color:#000000"],
.main-wrap [style*="color: #000000"] {
  color: var(--mc-text) !important;
}

/*------------------------------------------------------
Owl carousel
------------------------------------------------------*/
.owl-theme .owl-controls .owl-page span {
  background: rgba(255, 255, 255, 0.25);
}
.owl-theme .owl-controls .owl-page.active span,
.owl-theme .owl-controls.clickable .owl-page:hover span {
  background: var(--mc-accent);
}

/*------------------------------------------------------
Footer
------------------------------------------------------*/
footer {
  border-top: 1px solid var(--mc-border);
}
.footer-widget-area {
  background-color: var(--mc-bg-alt);
  color: var(--mc-text);
}
.footer-widget-area .widget-title,
.footer-widget-area .footer-social-title {
  color: #ffffff;
}
.footer-widget-area a {
  color: var(--mc-muted);
}
.footer-widget-area a:hover {
  color: var(--mc-accent);
}
.copyright-footer {
  background-color: #070a0f;
  border-top: 1px solid var(--mc-border);
}
.copyright-footer,
.copyright-footer .copyright-text {
  color: var(--mc-muted);
}
.copyright-footer a {
  color: var(--mc-text);
}
.copyright-footer a:hover {
  color: var(--mc-accent);
}
