/* CINE POCKET audience award: isolated from all other festival initiatives. */
.tm-gourara-reels .tmcv,
.tm-gourara-reels .tmcv * { box-sizing:border-box; }
.tm-gourara-reels .tmcv {
  --tmcv-ink:#141923;
  --tmcv-accent:#a75239;
  --tmcv-line:#e6e3e0;
  width:100%;
  max-width:100%;
  margin:12px auto clamp(55px,6vw,95px);
  padding:clamp(24px,4.4vw,58px);
  overflow:hidden;
  background:#f7f5f2;
  border:1px solid #e5e2dd;
  border-radius:3px;
  color:var(--tmcv-ink);
  font-family:var(--tm-font-body,'IBM Plex Sans Arabic','Alexandria',sans-serif);
  text-align:start;
}
.tmcv__heading { display:flex; justify-content:space-between; align-items:flex-start; gap:30px; margin-bottom:clamp(25px,3vw,40px); }
.tmcv__heading > div { max-width:760px; min-width:0; }
.tmcv__eyebrow { display:block; color:var(--tmcv-accent); font-size:12px; font-weight:800; letter-spacing:.035em; margin-bottom:13px; }
.tmcv__heading h2 {
  color:#141923!important;
  margin:0 0 15px!important;
  font:700 clamp(27px,3.3vw,48px)/1.28 var(--tm-font-heading,var(--tm-font-body,sans-serif))!important;
  letter-spacing:normal!important;
}
.tmcv__heading p { margin:0!important; color:#62656b; font-size:clamp(14px,1.25vw,17px); line-height:1.85; }
.tmcv__mark { flex:0 0 auto; display:grid; place-items:center; color:#f3d9bd; background:#17202c; width:70px; height:70px; font-size:38px; border-radius:50%; }
.tmcv__choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:stretch; }
.tmcv__card {
  display:flex; flex-direction:column; min-width:0; background:#fff; border:1px solid var(--tmcv-line); border-radius:3px;
  overflow:hidden; transition:border-color .18s ease,box-shadow .18s ease;
}
.tmcv__card:has(input:checked) { border-color:var(--tmcv-accent); box-shadow:0 0 0 2px rgba(167,82,57,.18); }
.tmcv__choice { display:block; position:relative; flex:1; cursor:pointer; min-width:0; }
.tmcv__choice > input { position:absolute; z-index:2; inset-inline-end:14px; top:14px; width:20px; height:20px; accent-color:var(--tmcv-accent); margin:0; cursor:pointer; }
.tmcv__choice > input:focus-visible { outline:3px solid #ffac6c; outline-offset:4px; }
.tmcv__poster { display:block; position:relative; height:clamp(150px,22vw,280px); background:linear-gradient(140deg,#252b35,#495263); overflow:hidden; }
.tmcv__poster img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .3s ease; }
.tmcv__card:hover .tmcv__poster img { transform:scale(1.035); }
.tmcv__no-poster { display:grid; place-items:center; height:100%; padding:25px; color:#fff; font-size:21px; font-weight:700; letter-spacing:.08em; }
.tmcv__check { position:absolute; top:11px; inset-inline-start:12px; width:32px; height:32px; display:grid; place-items:center; border-radius:50%; background:var(--tmcv-accent); color:#fff; font-size:20px; opacity:0; transform:scale(.75); transition:opacity .2s,transform .2s; }
.tmcv__card:has(input:checked) .tmcv__check { opacity:1; transform:scale(1); }
.tmcv__film { display:block; padding:18px 17px; min-height:76px; }
.tmcv__film strong { display:block; color:#121821; font-size:clamp(15px,1.5vw,19px); line-height:1.5; font-weight:750; overflow-wrap:anywhere; }
.tmcv__film small { display:block; color:#66676a; font-size:12px; font-weight:500; line-height:1.8; margin-top:7px; }
.tmcv__watch { display:block; border-top:1px solid #ebe9e5; padding:12px 17px; color:#94412b!important; font-weight:700; font-size:12px; text-decoration:none!important; }
.tmcv__watch:hover, .tmcv__watch:focus-visible { text-decoration:underline!important; }
.tmcv__footer { display:flex; gap:24px; align-items:center; justify-content:space-between; border-top:1px solid #e0ddda; padding-top:25px; margin-top:25px; }
.tmcv__footer p { margin:0!important; font-size:13px; color:#747475; line-height:1.8; max-width:450px; }
.tmcv__submit { flex:none; border:1px solid #171d28!important; border-radius:3px!important; padding:16px 24px!important; background:#171d28!important; color:#fff!important; min-height:54px; cursor:pointer; font-family:inherit!important; font-weight:700!important; font-size:15px!important; line-height:1.4!important; transition:background .18s ease,transform .18s ease; }
.tmcv__submit:not(:disabled):hover { background:#9d4b36!important; border-color:#9d4b36!important; transform:translateY(-1px); }
.tmcv__submit:disabled { cursor:default; opacity:.55; }
.tmcv__submit span { margin-inline-start:17px; }
.tmcv__feedback { margin-top:18px; padding:12px 15px; min-height:45px; background:#eceae7; color:#464a4e; font-size:13px; line-height:1.65; }
.tmcv__feedback[data-state='success'] { background:#e8f4ec; color:#1d5f38; }
.tmcv__feedback[data-state='error'] { background:#fff0eb; color:#94412b; }
.tmcv__honeypot { position:absolute!important; left:-10000px!important; top:auto!important; width:1px!important; height:1px!important; opacity:0!important; pointer-events:none!important; }
.tmcv__captcha { display:flex; margin-top:20px; }
.tmcv__closed,.tmcv__status { background:#eee9e3; border-inline-start:4px solid var(--tmcv-accent); padding:20px 24px; margin:0!important; color:#474747; font-size:16px; }
.tmcv__total { font-size:17px; margin:18px 0!important; }
.tmcv__results { background:#fff; border:1px solid var(--tmcv-line); padding:clamp(18px,3vw,35px); }
.tmcv__result + .tmcv__result { margin-top:22px; }
.tmcv__result-meta { display:flex; gap:10px; justify-content:space-between; align-items:baseline; font-size:14px; margin-bottom:9px; }
.tmcv__result-meta strong { font-size:16px; }
.tmcv__result-meta span { color:#666; }
.tmcv__bar { width:100%; height:9px; overflow:hidden; background:#ede8e4; }
.tmcv__bar > span { display:block; height:100%; background:var(--tmcv-accent); }
.tmcv--done .tmcv__card { opacity:.8; }
@media(max-width:820px) {
  .tmcv__choices { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
  .tmcv__mark { width:53px; height:53px; font-size:28px; }
  .tmcv__poster { height:clamp(160px,31vw,265px); }
}
@media(max-width:520px) {
  .tm-gourara-reels .tmcv { padding:19px 14px 23px; margin-bottom:49px; }
  .tmcv__heading { gap:10px; margin-bottom:21px; }
  .tmcv__heading h2 { font-size:26px!important; }
  .tmcv__heading p { font-size:13px; }
  .tmcv__eyebrow { font-size:10px; }
  .tmcv__mark { width:40px; height:40px; font-size:23px; }
  .tmcv__choices { gap:10px; }
  .tmcv__poster { height:clamp(122px,46vw,207px); }
  .tmcv__film { min-height:0; padding:12px; }
  .tmcv__film strong { font-size:13px; }
  .tmcv__film small { font-size:10px; }
  .tmcv__watch { padding:10px 12px; font-size:11px; }
  .tmcv__footer { flex-direction:column; align-items:stretch; gap:13px; }
  .tmcv__submit { width:100%; font-size:14px!important; }
  .tmcv__result-meta { flex-direction:column; align-items:stretch; gap:2px; }
}
@media(prefers-reduced-motion:reduce) { .tmcv__card,.tmcv__poster img,.tmcv__check,.tmcv__submit { transition:none!important; transform:none!important; } }

/* Small direct link to the dedicated ballot from the existing Cine Pocket page. */
.tmcv__standalone-link {
  display:inline-flex; align-items:center; gap:10px; margin-top:17px;
  color:#91442e!important; text-decoration:none!important; font-size:13px;
  font-weight:700; border-bottom:1px solid currentColor; padding-bottom:3px;
}
.tmcv__standalone-link:hover,.tmcv__standalone-link:focus-visible { color:#171d28!important; }

/* Two-stage final: informational stage and registration-required feedback. */
.tmcv--inline {max-width:1150px!important;margin:24px auto 45px!important; padding:0!important; background:transparent!important; border:0!important;}
.tmcv--inline strong {display:block;color:#a75239;font-size:13px;}
.tmcv--inline p {max-width:720px;font-size:15px;line-height:1.85;}
.tmcv__not-eligible strong {font-size:17px;display:block;margin-bottom:8px;color:#191c23;}
.tmcv__not-eligible p {margin:0;font-size:14px;line-height:1.95;}


/* v4.19.26: Audience award section becomes a bottom overlay inside the image. */
.tm-gourara-reels .tmcv.tmcv--inline {
  display:block;
  margin-top:clamp(22px,3vw,42px)!important;
  margin-bottom:clamp(34px,5vw,70px)!important;
}
.tmcv--inline .tmcv__inline-visual {
  position:relative;
  min-height:clamp(260px,42vw,460px);
  border-radius:3px;
  overflow:hidden;
  background:#121821;
  box-shadow:0 18px 42px rgba(0,0,0,.12);
}
.tmcv--inline .tmcv__inline-image,
.tmcv--inline .tmcv__inline-fallback {
  display:block;
  width:100%;
  height:100%;
  min-height:inherit;
}
.tmcv--inline .tmcv__inline-image {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.tmcv--inline .tmcv__inline-fallback {
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  background:linear-gradient(140deg,#141923,#273141 54%,#0d1117);
}
.tmcv--inline .tmcv__inline-fallback span {
  color:rgba(255,255,255,.84);
  font-size:clamp(24px,4vw,42px);
  font-weight:800;
  letter-spacing:.08em;
}
.tmcv--inline .tmcv__inline-visual::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(8,10,14,.04) 0%,rgba(8,10,14,.18) 38%,rgba(8,10,14,.82) 72%,rgba(0,0,0,.96) 100%);
  pointer-events:none;
}
.tmcv--inline .tmcv__inline-overlay {
  position:absolute;
  inset-inline:0;
  inset-block-end:0;
  z-index:2;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:26px;
  padding:clamp(20px,2.7vw,32px);
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.58) 30%,rgba(0,0,0,.88) 100%);
}
.tmcv--inline .tmcv__inline-content {flex:1 1 330px; min-width:0; color:#fff;}
.tmcv--inline .tmcv__inline-kicker {display:block; font-size:12px; font-weight:800; color:#f3c89f; margin-bottom:8px; letter-spacing:.03em;}
.tmcv--inline h2 {margin:0 0 11px!important; font:800 clamp(25px,2.8vw,38px)/1.22 var(--tm-font-heading,var(--tm-font-body,sans-serif))!important; color:#fff!important; text-shadow:0 2px 10px rgba(0,0,0,.32);}
.tmcv--inline p {margin:0!important; color:rgba(255,255,255,.92); max-width:760px; font-size:clamp(14px,1.25vw,18px); line-height:1.8;}
.tmcv--inline .tmcv__inline-status {display:inline-flex; margin-top:16px; padding:7px 13px; font-size:12px; font-weight:800; border:1px solid rgba(255,255,255,.28); background:rgba(255,255,255,.12); color:#fff; line-height:1.7; backdrop-filter:blur(4px);}
.tmcv--inline .tmcv__inline-status--open {background:rgba(36,87,50,.52); color:#fff; border-color:rgba(181,212,187,.45);}
.tmcv--inline .tmcv__inline-status--checkin {background:rgba(167,82,57,.55); color:#fff; border-color:rgba(255,214,199,.34);}
.tmcv--inline .tmcv__standalone-link {
  margin-top:0;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 20px;
  background:#000;
  border:1px solid rgba(255,255,255,.2);
  color:#fff!important;
  text-decoration:none!important;
  font-size:14px;
  line-height:1.55;
  text-align:center;
  border-radius:2px;
}
.tmcv--inline .tmcv__standalone-link:hover,.tmcv--inline .tmcv__standalone-link:focus-visible {background:#9d4b36; border-color:#9d4b36; color:#fff!important;}
@media(max-width:820px){
  .tmcv--inline .tmcv__inline-overlay {flex-direction:column; align-items:flex-start;}
}
@media(max-width:520px){
  .tm-gourara-reels .tmcv.tmcv--inline {margin-bottom:44px!important;}
  .tmcv--inline .tmcv__inline-visual {min-height:340px;}
  .tmcv--inline .tmcv__inline-overlay {padding:18px 16px; gap:15px;}
  .tmcv--inline .tmcv__standalone-link {width:100%; justify-content:center;}
}
