/* Latest film and tools, within the existing Stream Hearts design. */
.showcase .fan-character-note {
  color:var(--muted); font-size:14px; line-height:1.75; margin:8px 0 0; max-width:1000px;
}
.showcase .tool-category-tabs { margin-bottom:12px; }
.showcase .tool-switch[hidden] { display:none!important; }
.showcase .tool-showcase.info-only { grid-template-columns:1fr; max-width:900px; }
.showcase .tool-showcase.info-only .tool-copy { padding:32px; }
.showcase .tool-note { color:var(--muted); font-size:14px; line-height:1.75; margin:18px 0 0; }
.showcase .tool-note[hidden] { display:none; }
.showcase .trailer-timeline,.video-dialog .trailer-timeline {
  display:flex; align-items:center; gap:14px; padding:12px 18px;
  background:var(--heading-fill); border-top:1px solid var(--line); color:var(--ink);
}
.trailer-timeline[hidden] { display:none!important; }
.video-seek { min-width:0; width:100%; flex:1; height:22px; cursor:pointer; accent-color:var(--accent); }
.video-seek:disabled { cursor:default; opacity:.45; }
.video-time { flex-shrink:0; font-size:13px; font-variant-numeric:tabular-nums; }
.showcase .launch .launch-condition {
  max-width:600px; font-size:15px; line-height:1.8; color:var(--muted); margin:12px 0 20px;
}
.showcase .store-marks small { font-size:15px; line-height:1.6; color:var(--ink); }
.showcase :is(.feature-category,.copy-label,.participation>span,.game-guide-more>summary) { font-size:14px; }
.showcase :is(.clip-note,.game-guide-more .game-guide-steps p) { font-size:14px; }
.showcase .game-guide-more .game-guide-steps p { line-height:1.8; }
.showcase .quick-commands code { font-size:13px; }
.showcase .fan-character-lead { font-size:15px; }
.tool-copy,.feature-copy { min-width:0; overflow-wrap:anywhere; }
.release-overview { border-left:3px solid var(--accent); padding:18px 24px; margin-bottom:22px; background:var(--accent-soft); border-radius:0 10px 10px 0; }
.release-overview>span { color:var(--muted); font-size:13px; display:block; }
.release-overview>strong { font-size:20px; display:block; margin:6px 0; }
.release-overview>p { color:var(--muted); font-size:14px; }
.showcase .play-feature.info-only.has-screenshot { max-width:none; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); }
.game-screenshot { margin:0; min-width:0; align-self:center; background:var(--heading-fill); }
.game-screenshot[hidden] { display:none!important; }
.open-game-image { display:block; position:relative; width:100%; padding:0; aspect-ratio:16/9; background:var(--heading-fill); }
.game-screenshot-image { width:100%; height:100%; object-fit:contain; }
.game-screenshot figcaption { padding:10px 16px; font-size:13px; color:var(--muted); border-top:1px solid var(--line); }
.showcase .tool-showcase.info-only.has-screenshot {
  max-width:none; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);
}
.tool-screenshot { margin:0; min-width:0; align-self:center; background:var(--heading-fill); }
.tool-screenshot[hidden] { display:none!important; }
.open-tool-image { display:block; position:relative; width:100%; padding:0; aspect-ratio:16/9; background:var(--heading-fill); }
.tool-screenshot-image { width:100%; height:100%; object-fit:contain; }
.screenshot-enlarge { position:absolute; bottom:12px; right:12px; display:flex; gap:12px; align-items:center; padding:7px 12px; border:1px solid #ffffff50; border-radius:8px; background:#142038ee; color:#fff; font-size:13px; }
.screenshot-caption { padding:10px 16px; font-size:13px; color:var(--muted); border-top:1px solid var(--line); }
.tool-image-dialog { width:min(1600px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:0; border:1px solid var(--line); border-radius:16px; background:var(--panel); color:var(--ink); overflow:auto; }
.tool-image-dialog::backdrop { background:#071020c9; backdrop-filter:blur(5px); }
.tool-image-dialog .dialog-bar { position:sticky; top:0; z-index:1; background:var(--panel); color:var(--ink); }
.close-image-dialog { flex-shrink:0; border:1px solid var(--line); border-radius:8px; padding:8px 12px; background:var(--panel); color:var(--ink); }
.expanded-tool-image { width:100%; height:auto; background:var(--heading-fill); }
.screenshot-note { margin:0; padding:12px 18px; color:var(--muted); font-size:13px; }
@media(max-width:760px) {
  .showcase .play-feature.info-only.has-screenshot { grid-template-columns:1fr; }
  .release-overview { padding:16px 18px; }
  .release-overview>strong { font-size:17px; }
  .showcase .tool-showcase.info-only.has-screenshot { grid-template-columns:1fr; }
  .tool-image-dialog { width:calc(100vw - 16px); max-height:calc(100dvh - 16px); }
  .tool-image-dialog .dialog-bar { padding:12px; gap:10px; }
  .tool-image-dialog h2 { font-size:14px; }
  .showcase .fan-character-note,.showcase .fan-character-lead { font-size:14px; }
  .showcase .tool-showcase.info-only .tool-copy { padding:22px; }
  .showcase :is(.tool-method,.feature-method) { font-size:14px; }
  .showcase .trailer-timeline,.video-dialog .trailer-timeline { padding:10px 12px; gap:10px; }
  .video-time { font-size:12px; }
  .showcase .store-marks { flex-wrap:wrap; }
  .showcase .store-marks small { flex-basis:100%; }
  .showcase .launch .launch-condition { font-size:14px; }
}
