/* CarlBoileau Cinema Showcase 1.1.1. Isolé des styles WPMovieLibrary. */
.cbcs-showcase {
  box-sizing: border-box;
  container-type: inline-size;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  margin: 34px 0 30px;
  padding: clamp(18px, 4%, 30px);
  border: 1px solid #39414b;
  border-radius: 7px;
  background: radial-gradient(ellipse at 95% 4%, rgba(174,120,45,.22), transparent 42%),
              linear-gradient(145deg,#080c13 0%,#050608 57%,#101012 100%);
  box-shadow: 0 16px 40px rgba(0,0,0,.30), inset 0 0 0 1px rgba(255,255,255,.035);
  color: #f7f5ef;
  font-family: Arial, Helvetica, sans-serif;
  text-align: left;
}
.cbcs-showcase *, .cbcs-showcase *::before, .cbcs-showcase *::after {box-sizing:border-box;}
.cbcs-showcase::before {
  content:""; position:absolute;right:26px;top:0;width:38%;height:58px;pointer-events:none;
  background:radial-gradient(ellipse at top,rgba(255,220,149,.16),transparent 72%);
}
.cbcs-showcase .cbcs-showcase-top {
  display:grid;
  grid-template-columns: minmax(0, 32%) minmax(0, 1fr);
  align-items:start;
  gap:clamp(14px,3.4%,27px);
}
.cbcs-showcase .cbcs-poster {
  background:#131820;border:1px solid #68717c;line-height:0;
  box-shadow: 0 8px 22px rgba(0,0,0,.58),0 0 0 3px rgba(255,255,255,.04);
  width:100%;overflow:hidden;
}
.cbcs-showcase .cbcs-poster-image {width:100%;height:auto;display:block;max-width:none;object-fit:contain;}
.cbcs-showcase .cbcs-no-poster {
  min-height:210px;aspect-ratio:2/3;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:10px;padding:14px;text-align:center;line-height:1.4;
  background:linear-gradient(#1e252e,#0b0e14);color:#bbc0ca;
}
.cbcs-showcase .cbcs-no-poster span {font-size:54px;color:#dfb15f;}
.cbcs-showcase .cbcs-no-poster small {font-size:12px;}
.cbcs-showcase .cbcs-info {min-width:0;}
.cbcs-showcase .cbcs-title {
  font-family: Impact, "Arial Narrow", Arial, sans-serif!important;
  font-size:clamp(24px,5.1cqi,45px)!important;
  font-weight:800!important;line-height:1.07!important;letter-spacing:.01em!important;
  text-transform:uppercase;margin:0 0 7px!important;padding:0!important;
  border:0!important;color:#fefefe!important;overflow-wrap:anywhere;
}
.cbcs-showcase .cbcs-year {color:#c6c9cd!important;font-size:13px!important;margin:0 0 13px!important;line-height:1.3!important;}
.cbcs-showcase .cbcs-details {
  display:grid;grid-template-columns:1fr;gap:0;margin:0 0 14px!important;padding:0;
  border-top:1px solid rgba(232,186,100,.65);
}
.cbcs-showcase .cbcs-field {display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 9px;padding:9px 0;border-bottom:1px solid #2a3038;}
.cbcs-showcase .cbcs-field dt {font-size:11px;font-weight:700;color:#e4b65f;letter-spacing:.05em;text-transform:uppercase;}
.cbcs-showcase .cbcs-field dd {margin:0;color:#f3f3f3;font-size:13px;line-height:1.45;overflow-wrap:anywhere;}
.cbcs-showcase .cbcs-category {margin:12px 0;}
.cbcs-showcase .cbcs-category h3 {
  margin:0 0 7px!important;padding:0!important;color:#e6e6e6!important;
  font-size:12px!important;font-weight:700!important;line-height:1.3!important;
  text-transform:uppercase;letter-spacing:.07em;border:0!important;
}
.cbcs-showcase .cbcs-chips {display:flex;gap:6px;flex-wrap:wrap;}
.cbcs-showcase .cbcs-chip,
.cbcs-showcase .cbcs-chip:visited {
  display:inline-block!important;width:auto!important;padding:4px 8px!important;
  color:#fff3db!important;background:rgba(219,167,81,.06)!important;
  border:1px solid #b98b43!important;border-radius:4px!important;
  text-decoration:none!important;font-size:11px!important;line-height:1.3!important;
  box-shadow:none!important;transition:background .15s,color .15s;
}
.cbcs-showcase .cbcs-chip:hover,
.cbcs-showcase .cbcs-chip:focus {color:#080b0f!important;background:#e4b66b!important;}
.cbcs-showcase .cbcs-chip:focus-visible {outline:2px solid #fff;outline-offset:2px;}
.cbcs-showcase .cbcs-rating {
  display:flex;gap:8px 12px;flex-wrap:wrap;align-items:center;
  margin:20px 0 0;padding:13px 14px;border-block:1px solid #c79d57;
  background:linear-gradient(95deg,rgba(128,30,21,.55),rgba(20,16,15,.75) 60%,rgba(12,13,15,.2));
}
.cbcs-showcase .cbcs-rating-label {font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.055em;color:#fff;}
/* Stars and textual appreciation remain side by side at the same baseline. */
.cbcs-showcase .cbcs-rating-line {
  display:inline-flex;align-items:center;justify-content:flex-start;
  gap:clamp(8px,2.3cqi,16px);flex:0 1 auto;min-width:0;
}
.cbcs-showcase .cbcs-rating-quality {
  display:inline-block;flex:0 0 auto;
  color:#f6e3bd;font-size:clamp(12px,2.6cqi,15px);
  line-height:1.2;font-weight:700;white-space:nowrap;
}

/* Ten separate glyphs: the metadata is stored on 5 but displayed on 10. */
.cbcs-showcase .cbcs-stars {
  display:inline-flex;align-items:center;flex-wrap:nowrap;white-space:nowrap;
  font-family:Arial,Helvetica,sans-serif;font-size:clamp(20px,4.8cqi,30px);
  letter-spacing:.025em;line-height:1.1;font-weight:700;
}
.cbcs-showcase .cbcs-stars-full {color:#f1c36d;}
.cbcs-showcase .cbcs-stars-empty {color:#84858b;}
.cbcs-showcase .cbcs-synopsis {display:grid;grid-template-columns: minmax(82px, 22%) minmax(0, 1fr);gap:14px;margin-top:22px;padding:17px 0 4px;border-top:1px solid #55565b;}
.cbcs-showcase .cbcs-synopsis h3 {margin:0!important;padding:0!important;font-size:16px!important;line-height:1.4!important;font-weight:800!important;letter-spacing:.12em;text-transform:uppercase;color:#fff!important;border:0!important;}
.cbcs-showcase .cbcs-synopsis p {margin:0!important;font-size:14px!important;line-height:1.7!important;color:#f0eeea!important;overflow-wrap:break-word;}
@container (max-width: 470px) {
  .cbcs-showcase .cbcs-showcase-top {grid-template-columns: minmax(0, 1fr);gap:18px;}
  .cbcs-showcase .cbcs-poster {max-width:230px;margin-inline:auto;}
  .cbcs-showcase .cbcs-title {font-size:clamp(24px,7cqi,35px)!important;}
  .cbcs-showcase .cbcs-synopsis {grid-template-columns:1fr;gap:5px;}
  .cbcs-showcase .cbcs-stars {font-size:clamp(16px,5.5cqi,24px);letter-spacing:0;}
}
@container (max-width: 315px) {
  .cbcs-showcase .cbcs-rating-line {flex-wrap:wrap;gap:5px 10px;}
}
@media (max-width: 580px) {
  .cbcs-showcase {margin:20px 0;padding:16px;}
  .cbcs-showcase .cbcs-rating {padding:12px;}
}
@media (prefers-reduced-motion: reduce) {
  .cbcs-showcase .cbcs-chip {transition:none;}
}
