/* Kino Pulse occupancy — coherent with the SeansMatch dark/pink film UI. */
.sm-occ-ready {position:relative!important}
.sm-occ-hour-badge {
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:none!important;min-width:32px!important;margin-left:5px!important;
  padding:3px 5px!important;border:1px solid rgba(112,226,175,.33)!important;
  border-radius:6px!important;background:rgba(63,211,138,.10)!important;
  color:#94f5bc!important;font:800 10px/1.1 system-ui,sans-serif!important;
  letter-spacing:0!important;white-space:nowrap!important;
}
.sm-occ-peek-icon {display:inline-flex!important;align-items:center!important;justify-content:center!important;
  margin-left:4px!important;font-size:12px!important;line-height:1!important;color:#9bb2ca!important;
  opacity:.9;cursor:help;flex:none!important}
.sm-occ-ready:hover .sm-occ-peek-icon,.sm-occ-ready:focus-visible .sm-occ-peek-icon{color:#ff96b0!important}
/* The floating bubble lives under <body>, avoiding clipping by poster/card overflow. */
.sm-occ-float{position:fixed!important;z-index:2147483000!important;box-sizing:border-box!important;
  width:min(288px,calc(100vw - 20px))!important;padding:13px 14px!important;
  border:1px solid #414b63!important;border-radius:13px!important;
  background:linear-gradient(155deg,#202538,#101620)!important;color:#f6f8ff!important;
  box-shadow:0 17px 44px rgba(0,0,0,.6)!important;
  font:500 12px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif!important;pointer-events:none!important}
.sm-occ-float[hidden],.sm-occ-film-panel[hidden]{display:none!important}
.sm-occ-kicker{display:block;color:#ff91ad;font:800 9px/1.2 system-ui,sans-serif;letter-spacing:.09em;margin-bottom:7px}
.sm-occ-tip-heading,.sm-occ-film-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sm-occ-tip-heading strong{font-size:14px;color:#fff}
.sm-occ-tip-heading .sm-occ-tip-percent{font-size:19px;color:#93ecb7;white-space:nowrap}
.sm-occ-track{display:block;position:relative;width:100%;height:7px;overflow:hidden;border-radius:999px;background:#333b4d;margin:8px 0 11px}
.sm-occ-track-fill{display:block;height:100%;min-width:0;background:linear-gradient(90deg,#59dba5,#ffb765 78%,#ff5f85);border-radius:inherit}
.sm-occ-tip-stats{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;align-items:baseline;color:#c3cad7;font-size:11px}
.sm-occ-tip-stats strong{color:#eef4ff;text-align:right;white-space:nowrap}
.sm-occ-tip-stamp{margin-top:10px;color:#b9c8df;font-size:10px}
.sm-occ-tip-note{margin-top:5px;color:#98a4ba;font-size:10px;line-height:1.45}
/* Film detail: one unobtrusive information strip directly beneath the showtime picker. */
.cmh-movie-page .sm-occ-film-panel{box-sizing:border-box!important;display:block!important;margin:13px 0 4px!important;
  padding:14px 16px!important;border:1px solid #314257!important;border-radius:13px!important;
  background:linear-gradient(110deg,#13202b,#121724)!important;color:#edf5ff!important}
.cmh-movie-page .sm-occ-film-title{display:grid;gap:4px;min-width:0}
.cmh-movie-page .sm-occ-film-title>span{font-size:10px;font-weight:800;letter-spacing:.09em;color:#96a9bf}
.cmh-movie-page .sm-occ-film-title>strong{font-size:14px;line-height:1.4;color:#f4f9ff}
.cmh-movie-page .sm-occ-film-value{font-size:23px;line-height:1;color:#87e7af}
.cmh-movie-page .sm-occ-film-panel .sm-occ-track{height:8px;margin:11px 0 8px}
.cmh-movie-page .sm-occ-film-details{display:flex;gap:8px 20px;flex-wrap:wrap;font-size:12px;color:#d0daeb}
.cmh-movie-page .sm-occ-film-note{display:block;margin-top:8px;font-size:10px;color:#95a7ba;line-height:1.4}
/* Existing three-column responsive hours must keep their established grid. */
.cmh-movie-page .cmh-detail-times .cmh-detail-time.sm-occ-ready{gap:4px!important;flex-wrap:wrap!important;align-items:center!important}
.cmh-movie-page .cmh-detail-time .sm-occ-hour-badge{font-size:10px!important}
.cmh-movie-page .cmh-movie-city-showing-times a.sm-occ-ready{gap:4px!important}
@media(max-width:600px){
  .cmh-movie-page .sm-occ-film-panel{padding:12px!important;margin-top:10px!important}
  .cmh-movie-page .sm-occ-film-details{display:grid;gap:3px;font-size:11px}
  .cmh-movie-page .sm-occ-film-title>strong{font-size:13px}
  .cmh-movie-page .sm-occ-film-value{font-size:20px}
  .cmh-movie-page .cmh-detail-time .sm-occ-hour-badge{font-size:9px!important;min-width:29px!important}
}
@media(prefers-reduced-motion:reduce){.sm-occ-float,.sm-occ-track-fill{transition:none!important}}
/* Keep empty film panel truly hidden despite the later specificity of the theme. */
.cmh-movie-page .sm-occ-film-panel[hidden]{display:none!important}

/* Occupancy thresholds: low=green, medium=amber, high=pink/red. */
.sm-occ-track-fill.sm-occ-low{background:linear-gradient(90deg,#36c993,#76e9b6)!important}
.sm-occ-track-fill.sm-occ-medium{background:linear-gradient(90deg,#d99a37,#f5c276)!important}
.sm-occ-track-fill.sm-occ-high{background:linear-gradient(90deg,#fa6482,#ff94ab)!important}
.sm-occ-hour-badge.sm-occ-medium{background:rgba(245,183,89,.12)!important;border-color:rgba(245,183,89,.42)!important;color:#ffd393!important}
.sm-occ-hour-badge.sm-occ-high{background:rgba(255,87,125,.12)!important;border-color:rgba(255,87,125,.4)!important;color:#ffafc1!important}
.sm-occ-peek-icon.sm-occ-high{color:#ffa2b6!important}
.sm-occ-peek-icon.sm-occ-medium{color:#ffdaa0!important}

/* A single combined tooltip replaces the old language-only bubble on these hours. */
html body .sm-occ-ready.sm-lang-known:hover .sm-show-lang-tooltip,
html body .sm-occ-ready.sm-lang-known:focus-visible .sm-show-lang-tooltip,
html body .sm-occ-ready.sm-lang-known:focus-within .sm-show-lang-tooltip{display:none!important}
.sm-occ-tip-language{display:block;color:#cbd8f2;font-size:11px;margin-bottom:6px}

/* 2.9.20.360 — screening-specific projection / sound / room UX.
 * The language marker remains at top right; format sits at bottom left. */
html body .cmh-movie-page .cmh-detail-times [data-cmh-detail-time] .sm-tech-hour-badge,
html body .cmh-movie-page .cmh-movie-city-showing-times a .sm-tech-hour-badge {
  position:absolute!important;bottom:-5px!important;left:3px!important;z-index:5!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:12px!important;padding:1px 5px!important;box-sizing:border-box!important;
  border-radius:5px!important;border:1px solid rgba(157,179,232,.42)!important;
  background:#26334b!important;color:#dfebff!important;
  font:800 9px/1 system-ui,-apple-system,Arial,sans-serif!important;
  letter-spacing:.01em!important;white-space:nowrap!important;pointer-events:none!important;
  box-shadow:0 2px 5px rgba(0,0,0,.18)!important;
}
html body .cmh-movie-page .cmh-detail-times [data-cmh-detail-time]:has(.sm-tech-hour-badge),
html body .cmh-movie-page .cmh-movie-city-showing-times a:has(.sm-tech-hour-badge){position:relative!important;overflow:visible!important}
html body .cmh-movie-page .cmh-selected-inline .sm-tech-selected{
  display:grid!important;gap:7px!important;margin:12px 0 3px!important;padding:11px 12px!important;
  border-radius:11px!important;border:1px solid rgba(133,155,196,.2)!important;
  background:linear-gradient(110deg,rgba(32,44,68,.7),rgba(19,27,43,.8))!important;
  color:#f1f6ff!important;box-sizing:border-box!important;
}
html body .cmh-movie-page .cmh-selected-inline .sm-tech-selected[hidden]{display:none!important}
html body .cmh-movie-page .sm-tech-selected-caption{display:flex;justify-content:space-between;gap:10px;align-items:center;min-width:0}
html body .cmh-movie-page .sm-tech-selected-heading{color:#a8b8d4;font-size:10px!important;font-weight:850!important;letter-spacing:.06em!important}
html body .cmh-movie-page .sm-tech-selected-time{color:#e9f2ff;font-weight:850!important;font-size:12px!important}
html body .cmh-movie-page .sm-tech-selected-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
html body .cmh-movie-page .sm-tech-pill{
  box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;
  padding:6px 9px!important;border:1px solid #3b4b63!important;border-radius:8px!important;
  background:#1e2a3e!important;color:#e0ebfc!important;font-size:11px!important;line-height:1.1!important;
  font-weight:850!important;white-space:nowrap!important;
}
html body .cmh-movie-page .sm-tech-pill-3d{color:#ffc1dc!important;border-color:#875274!important;background:#3b2035!important}
html body .cmh-movie-page .sm-tech-pill-atmos{color:#98e8ef!important;border-color:#326579!important;background:#162f3c!important}
html body .cmh-movie-page .sm-tech-selected-note{font-size:10px!important;line-height:1.4!important;color:#92a9c8!important}
@media(max-width:600px){
  html body .cmh-movie-page .cmh-selected-inline .sm-tech-selected{padding:9px!important;margin-top:10px!important;gap:7px!important}
  html body .cmh-movie-page .sm-tech-pill{padding:6px 8px!important;font-size:10px!important}
  html body .cmh-movie-page .sm-tech-selected-heading{font-size:9px!important}
  html body .cmh-movie-page .cmh-detail-times [data-cmh-detail-time] .sm-tech-hour-badge{font-size:8px!important}
}

/* 2.9.20.361 — feedback for Helios hours without a current Pulse measurement. */
.sm-occ-eligible:not(.sm-occ-ready) .sm-occ-peek-icon {color:#8c98b0!important;opacity:.65!important}
.sm-occ-eligible:not(.sm-occ-ready):hover .sm-occ-peek-icon,
.sm-occ-eligible:not(.sm-occ-ready):focus-visible .sm-occ-peek-icon {opacity:1!important;color:#c5d6f4!important}
.sm-occ-tip-empty-heading {display:block!important;margin:2px 0 7px!important;font-size:14px!important;color:#e7eefb!important}
.sm-occ-tip-empty-copy {color:#c6d2e6!important;font-size:11px!important;line-height:1.5!important}
.cmh-movie-page .sm-occ-film-empty-heading {display:flex;gap:12px;justify-content:space-between;align-items:center}
.cmh-movie-page .sm-occ-film-empty-title {display:block;color:#e6eefb;font-size:12px;font-weight:800}
.cmh-movie-page .sm-occ-film-empty-state {display:inline-flex;align-items:center;border:1px solid #4d566a;background:#2b3343;color:#c5d2e8;font-size:10px;font-weight:800;line-height:1.1;border-radius:100px;padding:5px 9px;white-space:nowrap}
.cmh-movie-page .sm-occ-film-empty-copy {color:#9eafc6!important;font-size:11px!important;line-height:1.5!important;margin:7px 0 0!important}
.cmh-movie-page .cmh-detail-times [data-cmh-detail-time].sm-occ-eligible:not(.sm-occ-ready) {cursor:pointer}

/* Show only one unified bubble even when language is known but occupancy missing. */
html body .sm-occ-eligible.sm-lang-known:hover .sm-show-lang-tooltip,
html body .sm-occ-eligible.sm-lang-known:focus-visible .sm-show-lang-tooltip,
html body .sm-occ-eligible.sm-lang-known:focus-within .sm-show-lang-tooltip{display:none!important}
