/* Existing launchers; the player has a quiet cinema presentation. */
.craft-trailer-card > .craft-trailer-trigger {
  position:absolute;z-index:4;
  right:clamp(1.8rem,4vw,2.8rem);
  bottom:calc(clamp(1.8rem,4vw,2.8rem) - 12px);
  display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
  min-height:44px;padding:.55rem .8rem;
  color:#f7f8fa;background:rgba(3,18,38,.6);border:1px solid rgba(247,248,250,.65);border-radius:0;
  font:800 .73rem/1.6 var(--sans);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;
}
.craft-trailer-trigger:hover { background:#f7f8fa;color:#071e3d; }
.craft-trailer-trigger:focus-visible { outline:3px solid #f5cb89;outline-offset:4px; }

@media(max-width:1100px) {
  .game-card.craft-trailer-card .game-card-copy { padding-bottom:calc(clamp(1.8rem,4vw,2.8rem) + 60px); }
  .studio-game-card.craft-trailer-card a > div { padding-bottom:calc(clamp(1.7rem,4vw,3rem) + 60px); }
  .craft-trailer-card > .craft-trailer-trigger { left:clamp(1.8rem,4vw,2.8rem);right:auto;bottom:clamp(1.8rem,4vw,2.8rem); }
}
/* A film stage; launcher rules are preserved from the approved page. */
.craft-trailer-trigger[hidden],.craft-trailer-dialog:not([open]) { display:none; }
.craft-trailer-dialog {
  box-sizing:border-box;
  width:min(1320px,calc(100vw - 96px),calc((100dvh - 192px) * 1.7777778));
  max-width:none;max-height:calc(100dvh - 88px);margin:auto;padding:6px;
  overflow:auto;color:#f7f8fa;background:transparent;border:0;border-radius:0;
  box-shadow:none;font-family:var(--sans);
}
.craft-trailer-dialog[open] {
  display:grid;grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto auto;align-items:center;column-gap:24px;
  animation:craft-trailer-stage-enter .18s ease-out both;
}
.craft-trailer-dialog::backdrop {
  background:rgba(3,6,10,.96);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
}
.craft-trailer-media {
  grid-column:1/-1;grid-row:1;min-width:0;background:#000;
  border-radius:10px;overflow:hidden;box-shadow:0 18px 70px rgba(0,0,0,.4);
}
.craft-trailer-media video { display:block;width:100%;height:auto;object-fit:contain;margin:0; }
.craft-trailer-header { grid-column:1;grid-row:2;margin:14px 0 0;padding:0;min-width:0; }
.craft-trailer-header h2 {
  margin:0;color:#f4f3ef;font:600 1.05rem/1.5 var(--sans);letter-spacing:-.015em;
}
.craft-trailer-description {
  grid-column:2;grid-row:2;justify-self:end;margin:14px 0 0;
  font-size:.78rem;line-height:1.5;color:#b1b6bd;
}
.craft-trailer-dialog button { cursor:pointer;font-family:var(--sans); }
.craft-trailer-dialog .craft-trailer-close {
  position:fixed;top:18px;right:24px;z-index:2;
  display:grid;place-items:center;width:48px;height:48px;min-height:48px;
  margin:0;padding:0;border:0;border-radius:10px;
  font-size:0;color:#c4c9cf;background:transparent;
  transition:background .15s ease,color .15s ease;
}
.craft-trailer-dialog .craft-trailer-close:hover { background:rgba(255,255,255,.075);color:#fff; }
.craft-trailer-close-icon { display:block;width:24px;height:24px;pointer-events:none; }
.craft-trailer-dialog button:focus-visible,.craft-trailer-alternative summary:focus-visible { outline:3px solid #f5cb89;outline-offset:3px; }
.craft-trailer-alternative {
  grid-column:1/-1;grid-row:3;justify-self:end;width:fit-content;max-width:100%;
  margin:3px 0 0;padding:0;color:#b1b6bd;font-size:.76rem;
}
.craft-trailer-alternative summary {
  display:flex;align-items:center;gap:9px;min-height:44px;cursor:pointer;
  list-style:none;width:fit-content;margin-left:auto;border-radius:4px;
}
.craft-trailer-alternative summary::-webkit-details-marker { display:none; }
.craft-trailer-alternative summary::before {
  content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(-45deg);flex:none;
}
.craft-trailer-alternative[open] summary::before { transform:rotate(45deg); }
.craft-trailer-alternative summary:hover { color:#fff; }
.craft-trailer-alternative p { margin:2px 0 8px;max-width:76ch;line-height:1.7; }
.craft-trailer-error { grid-column:1/-1;grid-row:4;margin:8px 0;color:#ffe4c0;font-size:.85rem; }
.craft-trailer-error[hidden] { display:none; }
.craft-trailer-retry { min-height:44px;padding:8px 16px;color:inherit;background:#283542;border:0;border-radius:24px; }
.craft-trailer-dialog[data-aspect="portrait"] {
  width:min(420px,calc(100vw - 32px),calc((100dvh - 224px) * .5625));
}
@media(max-width:600px) {
  .craft-trailer-dialog {
    width:min(calc(100vw - 24px),calc((100dvh - 192px) * 1.7777778));
    max-height:calc(100dvh - 88px);padding:5px;
  }
  .craft-trailer-dialog[open] { grid-template-columns:minmax(0,1fr);column-gap:0; }
  .craft-trailer-dialog .craft-trailer-close { top:10px;right:12px;width:44px;height:44px;min-height:44px; }
  .craft-trailer-header { grid-column:1;grid-row:2;margin-top:12px; }
  .craft-trailer-header h2 { font-size:1rem; }
  .craft-trailer-description { grid-column:1;grid-row:3;justify-self:start;margin:2px 0 0;font-size:.74rem; }
  .craft-trailer-alternative { grid-column:1;grid-row:4;justify-self:start;margin:2px 0 0;font-size:.74rem; }
  .craft-trailer-alternative summary { margin-left:0; }
  .craft-trailer-error { grid-row:5; }
}
@media(max-height:500px) and (min-width:601px) {
  .craft-trailer-dialog {
    width:min(calc(100vw - 112px),calc((100dvh - 132px) * 1.7777778));
    max-height:calc(100dvh - 32px);
  }
  .craft-trailer-dialog[open] { column-gap:16px; }
  .craft-trailer-header { margin-top:8px; }
  .craft-trailer-header h2 { font-size:.9rem; }
  .craft-trailer-description { margin-top:8px;font-size:.7rem; }
  .craft-trailer-alternative { margin-top:0;font-size:.7rem; }
}
@keyframes craft-trailer-stage-enter { from { opacity:0; } to { opacity:1; } }
@media(prefers-reduced-motion:reduce) {
  .craft-trailer-dialog[open] { animation:none; }
  .craft-trailer-dialog .craft-trailer-close { transition:none; }
}
