/* ==========================================================================
   OLIZAN Restaurant & Pizzeria — secțiunea „Închiriere sală"
   Fișier separat, încărcat doar de paginile care au secțiunea. Folosește
   variabilele și butoanele din style.css, fără să modifice nimic din ele.
   Structură: 1 galeria sălii · 2 calendarul de disponibilitate ·
              3 formularul de cerere
   ========================================================================== */

.sala-intro{max-width:70ch;margin-inline:auto}

/* 1 — Galeria sălii ======================================================= */
.sala-galerie{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1rem;
  margin:2.2rem 0 2.8rem;
}
.sala-foto{
  margin:0;
  position:relative;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:var(--r-md);
  border:1px solid var(--cream-3);
  background:var(--cream-2);
  box-shadow:var(--sh-1);
  transition:transform .25s ease,box-shadow .25s ease;
}
.sala-foto[data-lb]{cursor:zoom-in}
.sala-foto[data-lb]:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}
.sala-foto img{width:100%;height:100%;object-fit:cover}
.sala-foto figcaption{
  position:absolute;left:0;right:0;bottom:0;
  padding:1.5rem .9rem .7rem;
  font-size:.86rem;color:#fff;
  background:linear-gradient(to top,rgba(29,42,31,.82),rgba(29,42,31,0));
}

/* Locul unei fotografii care nu a fost încă încărcată din panou */
.sala-foto--gol{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:.5rem;text-align:center;padding:1rem;
  border-style:dashed;border-color:var(--cream-3);
  color:var(--muted);box-shadow:none;
}
.sala-foto--gol svg{width:30px;height:30px;color:var(--olive-soft);opacity:.55}
.sala-foto--gol span{font-size:.84rem;line-height:1.35}

@media (max-width:820px){
  .sala-galerie{grid-template-columns:repeat(2,1fr);gap:.8rem}
}

/* 2 — Calendarul de disponibilitate ======================================= */
.sala-rezervare{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:1.6rem;
  align-items:start;
}
@media (max-width:960px){
  .sala-rezervare{grid-template-columns:1fr}
}

.sala-cutie{
  background:#fff;
  border:1px solid var(--cream-3);
  border-radius:var(--r-lg);
  box-shadow:var(--sh-1);
  padding:1.5rem 1.5rem 1.7rem;
}
.sala-cutie h3{margin-bottom:.3rem}
.sala-cutie > p.sala-ajutor{margin:0 0 1.1rem;color:var(--muted);font-size:.92rem}

.sala-cal-cap{
  display:flex;align-items:center;justify-content:space-between;gap:.6rem;
  margin-bottom:1rem;
}
.sala-luna{
  font-family:var(--ff-display);
  font-size:1.35rem;font-weight:700;color:var(--olive-deep);
  margin:0;text-align:center;flex:1;text-transform:capitalize;
}
.sala-nav{
  width:38px;height:38px;flex:none;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--cream-3);border-radius:50%;
  background:var(--cream);color:var(--olive-deep);
  cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease;
}
.sala-nav:hover:not(:disabled){background:var(--olive);border-color:var(--olive);color:var(--cream)}
.sala-nav:disabled{opacity:.35;cursor:default}
.sala-nav svg{width:18px;height:18px}

.sala-saptamana,
.sala-zile{display:grid;grid-template-columns:repeat(7,1fr);gap:.35rem}
.sala-saptamana{margin-bottom:.4rem}
.sala-saptamana span{
  text-align:center;font-size:.76rem;font-weight:600;letter-spacing:.06em;
  text-transform:uppercase;color:var(--muted);
}

.sala-zi{
  aspect-ratio:1/1;
  display:flex;align-items:center;justify-content:center;
  border:1px solid var(--cream-3);
  border-radius:var(--r-sm);
  background:var(--cream);
  color:var(--ink);
  font-size:.95rem;font-weight:500;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.sala-zi:hover{background:var(--olive-tint);border-color:var(--olive-soft);transform:translateY(-2px)}
.sala-zi.is-azi{border-color:var(--gold);font-weight:700}
.sala-zi.is-aleasa{background:var(--olive);border-color:var(--olive);color:var(--cream);font-weight:700}
.sala-zi.is-aleasa:hover{background:var(--olive-deep)}
.sala-zi.is-ocupata,
.sala-zi.is-trecuta{
  cursor:not-allowed;
  background:var(--cream-2);
  border-color:var(--cream-2);
  color:var(--muted);
  transform:none;
}
.sala-zi.is-ocupata{text-decoration:line-through;opacity:.75}
.sala-zi.is-trecuta{opacity:.4}
.sala-zi-goala{aspect-ratio:1/1}

.sala-legenda{
  list-style:none;margin:1.1rem 0 0;padding:0;
  display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;
  font-size:.86rem;color:var(--muted);
}
.sala-legenda li{display:flex;align-items:center;gap:.45rem}
.sala-legenda i{
  width:15px;height:15px;flex:none;border-radius:4px;
  border:1px solid var(--cream-3);background:var(--cream);
}
.sala-legenda .sala-pastila--ocupat{background:var(--cream-2);border-color:var(--cream-2)}
.sala-legenda .sala-pastila--aleasa{background:var(--olive);border-color:var(--olive)}

/* 3 — Formularul de cerere =============================================== */
.sala-aleasa-eticheta{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--olive-tint);color:var(--olive-deep);
  border-radius:999px;padding:.4rem .95rem;
  font-size:.9rem;font-weight:600;margin-bottom:1.1rem;
}
.sala-aleasa-eticheta svg{width:17px;height:17px}

.sala-gol{
  display:flex;gap:.7rem;align-items:flex-start;
  color:var(--muted);font-size:.95rem;margin:0;
}
.sala-gol[hidden]{display:none}
.sala-gol svg{width:20px;height:20px;flex:none;margin-top:2px;color:var(--olive-soft)}

.sala-cutie .field{margin-bottom:1rem}
.sala-cutie .field textarea{min-height:104px}
/* Lista de tipuri de eveniment arată la fel ca restul câmpurilor din site */
.sala-cutie .field select{
  width:100%;padding:.85rem 1rem;font:inherit;font-size:1rem;color:var(--ink);
  background:var(--cream-2);
  border:1px solid var(--cream-3);border-radius:var(--r-sm);
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.sala-cutie .field select:focus{
  outline:none;border-color:var(--olive-soft);background:#fff;
  box-shadow:0 0 0 3px rgba(91,122,75,.18);
}

.sala-nota{font-size:.86rem;color:var(--muted);margin:.9rem 0 0}

/* 4 — Temă premium charcoal–champagne ==================================== */
body:not(.home-luxury) .sala-foto{
  background:#15191a;border-color:rgba(216,198,162,.26);
}
body:not(.home-luxury) .sala-foto--gol{color:#918d86;border-color:#363a3b}
body:not(.home-luxury) .sala-foto--gol svg{color:var(--lux-champagne)}
body:not(.home-luxury) .sala-cutie{
  color:#d8d3ca;
  background:linear-gradient(155deg,#1a1d1e,#101314 80%);
  border-color:rgba(216,198,162,.3);
  box-shadow:0 18px 45px rgba(0,0,0,.3);
}
body:not(.home-luxury) .sala-cutie h3,
body:not(.home-luxury) .sala-luna{color:var(--lux-champagne)}
body:not(.home-luxury) .sala-cutie>p.sala-ajutor,
body:not(.home-luxury) .sala-saptamana span,
body:not(.home-luxury) .sala-legenda,
body:not(.home-luxury) .sala-gol,
body:not(.home-luxury) .sala-nota{color:#9f9a91}
body:not(.home-luxury) .sala-nav{
  color:var(--lux-champagne);background:#101314;
  border-color:rgba(216,198,162,.38);
}
body:not(.home-luxury) .sala-nav:hover:not(:disabled){
  color:#151719;background:var(--lux-champagne);border-color:var(--lux-champagne);
}
body:not(.home-luxury) .sala-zi{
  color:#ddd7cd;background:#15191a;border-color:#343839;
}
body:not(.home-luxury) .sala-zi:hover{
  color:#f4ede2;background:#24221d;border-color:var(--lux-bronze);
}
body:not(.home-luxury) .sala-zi.is-azi{border-color:var(--lux-champagne)}
body:not(.home-luxury) .sala-zi.is-aleasa{
  color:#151719;background:var(--lux-champagne);border-color:var(--lux-champagne);
}
body:not(.home-luxury) .sala-zi.is-aleasa:hover{background:var(--lux-ivory)}
body:not(.home-luxury) .sala-zi.is-ocupata,
body:not(.home-luxury) .sala-zi.is-trecuta{
  color:#6f6c66;background:#0d1011;border-color:#202425;
}
body:not(.home-luxury) .sala-legenda i{background:#15191a;border-color:#3a3e3f}
body:not(.home-luxury) .sala-legenda .sala-pastila--ocupat{background:#0d1011;border-color:#202425}
body:not(.home-luxury) .sala-legenda .sala-pastila--aleasa{background:var(--lux-champagne);border-color:var(--lux-champagne)}
body:not(.home-luxury) .sala-aleasa-eticheta{color:#17191a;background:var(--lux-champagne)}
body:not(.home-luxury) .sala-gol svg{color:var(--lux-champagne)}
body:not(.home-luxury) .sala-cutie .field label{color:#d7d1c7}
body:not(.home-luxury) .sala-cutie .field input,
body:not(.home-luxury) .sala-cutie .field textarea,
body:not(.home-luxury) .sala-cutie .field select{
  color:#eee8dd;background:#0d1011;border-color:#373b3c;
}
body:not(.home-luxury) .sala-cutie .field input:focus,
body:not(.home-luxury) .sala-cutie .field textarea:focus,
body:not(.home-luxury) .sala-cutie .field select:focus{
  color:#fff;background:#111516;border-color:var(--lux-bronze);
  box-shadow:0 0 0 3px rgba(157,122,73,.18);
}
