/* ============================================================
   TRENCHPORT THEATRE / NOW SHOWING
   Normal browser page + ?display=screen MOAP display mode.
   ============================================================ */

body.theater-site{
  --theater-orange:#d9681e;
  --theater-orange-hot:#ff8a2b;
  --theater-cream:#e7d9bf;
  --theater-ink:#050505;
  --theater-teal:#0e4446;
  background:
    linear-gradient(180deg,rgba(0,0,0,.60),rgba(0,0,0,.94)),
    url('../img/trenchport/theater/theater-backdrop.webp') center 20% / cover fixed no-repeat,
    #030303;
}

body.theater-site::before{
  opacity:.9;
  background:
    radial-gradient(circle at 50% 30%,transparent 0 18%,rgba(0,0,0,.45) 55%,rgba(0,0,0,.9) 100%),
    repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px),
    repeating-linear-gradient(90deg,rgba(217,104,30,.018) 0 1px,transparent 1px 46px);
}

.theater-shell{width:min(1280px,95vw);}

.theater-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin:14px 0 20px;
  padding:26px 28px;
  border:1px solid rgba(255,255,255,.10);
  border-left:5px solid var(--theater-orange);
  background:linear-gradient(105deg,rgba(10,10,10,.98),rgba(18,18,18,.93));
  box-shadow:0 22px 52px rgba(0,0,0,.42);
}

.theater-heading h1,
.theater-section-heading h2{
  margin:4px 0 6px;
  color:#f3e9d8;
  font-family:'Orbitron',Arial,Helvetica,sans-serif;
  text-transform:uppercase;
  letter-spacing:.055em;
}

.theater-heading h1{font-size:clamp(2rem,5vw,4rem);}
.theater-heading p,.theater-section-heading p{margin:0;color:#aaa39a;line-height:1.6;}
.theater-kicker{color:var(--theater-orange-hot);font-size:.76rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;}

.theater-live-pill{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:9px;
  min-width:132px;
  padding:10px 13px;
  border:1px solid rgba(255,255,255,.14);
  background:#090909;
  color:#cfc8be;
  font-size:.72rem;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.theater-live-pill span{width:9px;height:9px;border-radius:50%;background:#8c6b54;box-shadow:0 0 10px rgba(217,104,30,.22);}
.theater-live-pill.is-live span{background:#ed7b2c;box-shadow:0 0 12px rgba(237,123,44,.75);}
.theater-live-pill.is-error span{background:#9f3e31;}

.theater-board{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.13);
  background:
    linear-gradient(90deg,rgba(217,104,30,.05),transparent 26%,transparent 74%,rgba(14,68,70,.055)),
    rgba(4,4,4,.97);
  box-shadow:0 34px 80px rgba(0,0,0,.62),inset 0 0 0 1px rgba(217,104,30,.08);
}
.theater-board::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;
  background:url('../img/trenchport/theater/theater-backdrop.webp') center / cover no-repeat;
  filter:grayscale(.25) contrast(1.18);
}
.theater-board>*{position:relative;z-index:1;}

.theater-board-topline{
  min-height:92px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:18px 28px;
  border-bottom:1px solid rgba(217,104,30,.30);
  background:linear-gradient(180deg,rgba(18,18,18,.96),rgba(5,5,5,.92));
}
.theater-board-title span{display:block;color:#a19788;font-size:.7rem;font-weight:900;letter-spacing:.19em;text-transform:uppercase;}
.theater-board-title strong{display:block;margin-top:3px;color:var(--theater-cream);font-family:'Orbitron',Arial,sans-serif;font-size:clamp(1.4rem,3.5vw,2.5rem);letter-spacing:.06em;text-transform:uppercase;}
.theater-clock{text-align:right;line-height:1.08;}
.theater-clock span{display:block;color:var(--theater-orange-hot);font-size:.68rem;font-weight:900;letter-spacing:.16em;}
.theater-clock strong{display:block;color:#f2eadf;font-family:'Orbitron',Arial,sans-serif;font-size:1.5rem;letter-spacing:.06em;}
.theater-clock small{display:block;margin-top:5px;color:#8d877f;font-size:.72rem;text-transform:uppercase;}

.marquee-frame{position:relative;margin:24px;padding:18px;border:1px solid #6b381d;background:#0b0908;box-shadow:inset 0 0 22px rgba(217,104,30,.08),0 12px 36px rgba(0,0,0,.45);}
.marquee-bulbs{position:absolute;inset:5px;pointer-events:none;border:1px solid rgba(255,174,90,.34);box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);}
.marquee-bulbs::before{
  content:"";position:absolute;inset:-8px;
  background:
    radial-gradient(circle,#ffd18e 0 2px,#e57c28 2.5px 4px,transparent 4.5px) 0 0/30px 30px round;
  opacity:.80;filter:drop-shadow(0 0 4px rgba(255,133,44,.5));
  -webkit-mask:linear-gradient(#000 0 0) top/100% 8px no-repeat,linear-gradient(#000 0 0) bottom/100% 8px no-repeat,linear-gradient(#000 0 0) left/8px 100% no-repeat,linear-gradient(#000 0 0) right/8px 100% no-repeat;
  mask:linear-gradient(#000 0 0) top/100% 8px no-repeat,linear-gradient(#000 0 0) bottom/100% 8px no-repeat,linear-gradient(#000 0 0) left/8px 100% no-repeat,linear-gradient(#000 0 0) right/8px 100% no-repeat;
}

.theater-feature{display:grid;grid-template-columns:minmax(220px,35%) minmax(0,1fr);gap:34px;padding:20px;background:rgba(3,3,3,.94);}
.theater-poster-wrap{position:relative;align-self:start;aspect-ratio:2/3;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:#080808;box-shadow:0 18px 38px rgba(0,0,0,.55);}
.theater-poster-wrap img{display:block;width:100%;height:100%;object-fit:cover;}
.poster-status{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);padding:8px 10px;background:rgba(0,0,0,.88);border-left:3px solid var(--theater-orange);color:#f2e5d3;font-size:.66rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;}

.theater-feature-copy{min-width:0;padding:8px 8px 8px 0;display:flex;flex-direction:column;justify-content:center;}
.feature-eyebrow{color:var(--theater-orange-hot);font-size:.76rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;}
.theater-feature-copy h2{margin:8px 0 12px;color:#eee1ca;font-family:'Orbitron',Arial,sans-serif;font-size:clamp(2rem,5vw,4.4rem);line-height:.98;letter-spacing:.025em;text-transform:uppercase;text-wrap:balance;}
.movie-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;}
.movie-meta span{padding:6px 9px;border:1px solid rgba(255,255,255,.15);background:#111;color:#c9c0b2;font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;}
.movie-meta .rating{border-color:rgba(217,104,30,.55);color:#f0d6b7;}
.movie-description{max-width:850px;margin:0 0 20px;color:#bcb3a6;font-size:1rem;line-height:1.68;}

.next-show-card{margin:0 0 20px;padding:16px 18px;border:1px solid rgba(217,104,30,.55);border-left:4px solid var(--theater-orange);background:linear-gradient(90deg,rgba(217,104,30,.10),rgba(9,9,9,.86));}
.next-show-card span{display:block;color:var(--theater-orange-hot);font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;}
.next-show-card strong{display:block;margin:4px 0;color:#f3e8d7;font-family:'Orbitron',Arial,sans-serif;font-size:clamp(1.35rem,3vw,2rem);letter-spacing:.025em;}
.next-show-card small{color:#8f887f;}

.showtimes-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.09);padding-bottom:8px;}
.showtimes-heading span{color:#eee2d1;font-family:'Orbitron',Arial,sans-serif;font-size:.94rem;text-transform:uppercase;letter-spacing:.09em;}
.showtimes-heading small{color:#7d7770;font-size:.65rem;text-transform:uppercase;letter-spacing:.10em;}
.showtime-list{display:flex;flex-wrap:wrap;gap:9px;}
.showtime-chip{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:9px 12px;border:1px solid rgba(255,255,255,.14);background:#101010;color:#d7cdbf;font-family:'Orbitron',Arial,sans-serif;font-size:.8rem;letter-spacing:.035em;}
.showtime-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:#665a4f;}
.showtime-chip.is-next{border-color:rgba(217,104,30,.72);background:rgba(217,104,30,.10);color:#ffd9b8;}
.showtime-chip.is-next::before,.showtime-chip.is-playing::before{background:#f2812f;box-shadow:0 0 9px rgba(242,129,47,.62);}
.showtime-chip.is-playing{border-color:rgba(242,129,47,.85);color:#fff1df;}
.showtime-chip.is-past{opacity:.42;text-decoration:line-through;}
.showtime-placeholder{color:#857e75;font-size:.88rem;}

.theater-board-footer{display:flex;justify-content:space-between;gap:20px;padding:14px 28px;border-top:1px solid rgba(255,255,255,.08);background:#050505;color:#777169;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;}
.theater-board-tagline{color:#9e775c;font-weight:900;}

.theater-upcoming{margin-top:28px;padding:26px;border:1px solid rgba(255,255,255,.10);background:rgba(9,9,9,.94);box-shadow:0 20px 50px rgba(0,0,0,.4);}
.theater-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:20px;}
.theater-section-heading h2{font-size:clamp(1.35rem,3vw,2rem);}
.theater-section-heading p{max-width:620px;font-size:.88rem;}
.upcoming-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;}
.upcoming-card{position:relative;overflow:hidden;min-height:230px;border:1px solid rgba(255,255,255,.11);background:#101010;display:grid;grid-template-columns:120px minmax(0,1fr);}
.upcoming-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.08);}
.upcoming-copy{padding:16px;min-width:0;}
.upcoming-copy h3{margin:3px 0 8px;color:#f0e3d0;font-family:'Orbitron',Arial,sans-serif;font-size:1.05rem;line-height:1.1;text-transform:uppercase;}
.upcoming-meta{color:#a69e92;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;}
.upcoming-times{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px;}
.upcoming-times span{padding:5px 7px;border:1px solid rgba(217,104,30,.38);color:#cdb69d;font-size:.65rem;}
.upcoming-empty{grid-column:1/-1;padding:28px;border:1px dashed rgba(255,255,255,.12);color:#8f887f;text-align:center;}

.theater-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;}
.theater-info-grid article{display:flex;gap:14px;padding:18px;border:1px solid rgba(255,255,255,.09);background:rgba(10,10,10,.92);}
.theater-info-icon{flex:0 0 auto;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(217,104,30,.55);color:#e98743;font-family:'Orbitron',Arial,sans-serif;font-size:.62rem;font-weight:900;}
.theater-info-grid h3{margin:2px 0 6px;color:#e8ded0;font-size:.92rem;text-transform:uppercase;letter-spacing:.04em;}
.theater-info-grid p{margin:0;color:#918a81;font-size:.78rem;line-height:1.55;}

/* MOAP / in-world display. Use /trenchport/theater/?display=screen */
body.theater-display-mode{overflow:hidden;background:#000;}
body.theater-display-mode::before,body.theater-display-mode::after{display:none;}
body.theater-display-mode .theater-normal-chrome{display:none !important;}
body.theater-display-mode .site-shell{width:100vw;max-width:none;height:100vh;min-height:0;padding:0;margin:0;}
body.theater-display-mode .theater-main{height:100vh;}
body.theater-display-mode .theater-board{height:100vh;border:0;display:grid;grid-template-rows:auto 1fr auto;}
body.theater-display-mode .theater-board-topline{min-height:11vh;padding:1.6vh 2.4vw;}
body.theater-display-mode .theater-board-title strong{font-size:clamp(1.7rem,4.4vw,4.3rem);}
body.theater-display-mode .theater-clock strong{font-size:clamp(1.35rem,3.2vw,3rem);}
body.theater-display-mode .marquee-frame{min-height:0;margin:1.9vh 1.7vw;padding:1.6vh 1.2vw;overflow:hidden;}
body.theater-display-mode .theater-feature{height:100%;grid-template-columns:minmax(150px,27%) minmax(0,1fr);gap:2.4vw;padding:1.8vh 1.4vw;align-items:center;}
body.theater-display-mode .theater-poster-wrap{height:min(68vh,100%);width:auto;aspect-ratio:2/3;justify-self:center;}
body.theater-display-mode .theater-feature-copy{padding:0 1vw 0 0;}
body.theater-display-mode .theater-feature-copy h2{font-size:clamp(2rem,6.2vw,6.8rem);margin:.8vh 0 1.2vh;}
body.theater-display-mode .feature-eyebrow{font-size:clamp(.62rem,1.2vw,1.1rem);}
body.theater-display-mode .movie-description{font-size:clamp(.75rem,1.5vw,1.35rem);line-height:1.45;margin-bottom:1.5vh;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
body.theater-display-mode .next-show-card{padding:1.25vh 1.25vw;margin-bottom:1.25vh;}
body.theater-display-mode .next-show-card strong{font-size:clamp(1.15rem,2.8vw,2.8rem);}
body.theater-display-mode .showtime-chip{min-height:0;padding:.8vh .8vw;font-size:clamp(.6rem,1.15vw,1rem);}
body.theater-display-mode .theater-board-footer{padding:1vh 2vw;font-size:clamp(.5rem,.85vw,.75rem);}

@media(max-width:960px){
  .theater-feature{grid-template-columns:minmax(180px,38%) minmax(0,1fr);gap:22px;}
  .upcoming-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .theater-info-grid{grid-template-columns:1fr;}
}
@media(max-width:700px){
  .theater-heading,.theater-section-heading{align-items:flex-start;flex-direction:column;}
  .theater-feature{grid-template-columns:1fr;}
  .theater-poster-wrap{width:min(340px,84vw);justify-self:center;}
  .theater-feature-copy{padding:0;}
  .marquee-frame{margin:12px;padding:12px;}
  .theater-board-topline,.theater-board-footer{padding-left:16px;padding-right:16px;}
  .upcoming-grid{grid-template-columns:1fr;}
  .upcoming-card{grid-template-columns:110px 1fr;}
}
