/* Zero Company visual entry and real screenshot galleries.
   Scoped to this game's visual panels to prevent shared Games layout regressions. */
.ge-dossier .zc-visual-start,
.ge-dossier .zc-gallery,
.ge-dossier .zc-beginner-brief,
.ge-dossier .zc-mid-gallery{
  min-width:0;max-width:100%;box-sizing:border-box;
  margin:0 0 24px;padding:clamp(18px,2.3vw,28px);
  border:1px solid #40596c;background:#111d29;scroll-margin-top:105px;
}
.ge-dossier .zc-visual-start{
  border-top:4px solid #bb6779;
  background:linear-gradient(137deg,#1c2a3b 0%,#111924 70%);
}
.zc-visual-start h2,.zc-gallery h2,.zc-beginner-brief h2,.zc-mid-gallery h2{
  color:#fff!important;font-size:clamp(1.5rem,2.6vw,2.2rem)!important;
  line-height:1.15!important;margin:6px 0 12px;
}
.zc-visual-start .zc-visual-lead{
  color:#d5e0ea!important;font-size:1rem!important;line-height:1.55!important;
  max-width:65ch;margin:0 0 19px;
}
.zc-start-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.zc-start-card{
  display:grid;grid-template-columns:42px minmax(0,1fr);align-items:start;
  column-gap:11px;row-gap:5px;min-width:0;min-height:143px;padding:17px;
  color:#f6f8fc!important;text-decoration:none!important;
  background:#1c3040;border:1px solid #678195;border-left:3px solid #cb8090;
  transition:border-color .16s,background .16s,transform .16s;
}
.zc-start-card:hover,.zc-start-card:focus-visible{
  color:white!important;background:#2b4053;border-color:#f3abbc;outline:2px solid #e3a9b6;outline-offset:2px;transform:translateY(-2px)
}
.zc-start-num{
  grid-row:span 3;display:flex;align-items:center;justify-content:center;
  min-width:0;min-height:44px;background:#472b39;border:1px solid #a56b7f;
  font-size:.9rem;font-weight:900;color:#ffd0d8;
}
.zc-start-card strong{font-size:1.06rem;line-height:1.25}
.zc-start-desc{color:#c9d9e5;font-size:.82rem;line-height:1.48}
.zc-start-cta{color:#ffbdc9;font-size:.72rem;font-weight:850;letter-spacing:.035em;line-height:1.5}
.zc-gallery{background:#111722}
.zc-gallery-heading{display:flex;justify-content:space-between;gap:15px;align-items:start}
.zc-gallery-heading p,.zc-mid-gallery p{color:#d6e1eb!important;font-size:.89rem!important;line-height:1.65!important}
.zc-gallery-count{flex:none;white-space:nowrap;color:#e2d8e3;background:#433342;border:1px solid #93667e;padding:8px 12px;font-size:.73rem;font-weight:850}
.zc-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:17px 0 9px}
.zc-shot{font:inherit;border:1px solid #65788e;cursor:zoom-in;min-width:0;width:100%;padding:0;text-align:left;color:#e9eef5;background:#172738;overflow:hidden}
.zc-shot:first-child{grid-column:span 2}
.zc-shot img{display:block;width:100%;height:clamp(150px,19vw,250px);object-fit:cover;object-position:center;transition:transform .18s ease}
.zc-shot:first-child img{height:clamp(220px,30vw,360px)}
.zc-shot:hover img,.zc-shot:focus-visible img{transform:scale(1.025)}
.zc-shot:focus-visible{outline:3px solid #ffd0da;outline-offset:2px}
.zc-shot-caption{display:flex;align-items:center;gap:11px;padding:10px 13px;font-size:.76rem;line-height:1.4}
.zc-shot-caption b{color:#ffbdc9}
.zc-photo-source{font-size:.73rem!important;line-height:1.6!important;color:#becbd8!important}
.zc-photo-source a{color:#ffc1d0!important}
.zc-gallery-unavailable{padding:18px;background:#202c3c;border:1px solid #60778a;color:#e6edf5}
.zc-gallery-unavailable a{color:#ffc1ce}
.zc-lightbox{
  max-width:min(95vw,1100px);width:min(95vw,1100px);max-height:95vh;
  padding:12px;background:#0b121d;border:1px solid #8593a4;
  color:#f7f9fc;box-shadow:0 25px 90px #000d;overflow:auto
}
.zc-lightbox::backdrop{background:#000e}
.zc-lightbox-top,.zc-lightbox-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}
.zc-lightbox-top{margin-bottom:10px}
.zc-lightbox-top strong{font-size:.77rem;letter-spacing:.1em}
.zc-lightbox button{border:1px solid #8592a5;background:#22344a;color:white;cursor:pointer;padding:10px 14px;min-height:44px;font:inherit;font-weight:750}
.zc-lightbox button:hover,.zc-lightbox button:focus-visible{outline:2px solid #ffc7d0;background:#34485e}
.zc-lightbox img{display:block;max-width:100%;width:100%;max-height:70vh;object-fit:contain;background:#000}
.zc-lightbox p{font-size:.8rem;line-height:1.5;color:#e1e9f2}
.zc-lightbox-actions span{font-size:.83rem;font-weight:850}
.ge-dossier .zc-beginner-brief{border-top:3px solid #c07e8f}
.zc-brief-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.zc-brief-grid article{min-width:0;background:#1b2b3c;border:1px solid #566c7f;padding:17px}
.zc-brief-grid span{font-size:.69rem;font-weight:900;color:#ffb9c8;letter-spacing:.04em}
.zc-brief-grid h3{color:#fff!important;font-size:1.03rem!important;line-height:1.3!important;margin:10px 0}
.zc-brief-grid p{color:#d1dfea!important;font-size:.84rem!important;line-height:1.65!important;margin:0!important}
.zc-brief-actions{display:flex;flex-wrap:wrap;gap:9px}
.zc-brief-actions a{display:inline-flex;align-items:center;padding:11px 15px;min-height:44px;background:#552c3b;border:1px solid #ba8092;color:white!important;font-weight:850;font-size:.8rem;text-decoration:none}
.zc-brief-actions a:focus-visible,.zc-brief-actions a:hover{outline:2px solid #ffd6dc;background:#764352}
.zc-mid-gallery{border-top:3px solid #a46e80}
.zc-mid-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.zc-mid-gallery figure{margin:0;min-width:0;background:#192536;border:1px solid #526779}
.zc-mid-gallery img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}
.zc-mid-gallery figcaption{font-size:.73rem;line-height:1.55;padding:10px;color:#cedbe6}
@media(max-width:820px){
 .zc-start-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .zc-brief-grid{grid-template-columns:minmax(0,1fr)}
 .zc-start-card{grid-template-columns:35px minmax(0,1fr);padding:13px;min-height:145px}
 .zc-start-num{min-height:36px}
}
@media(max-width:600px){
 .ge-dossier .zc-visual-start,.ge-dossier .zc-gallery,.ge-dossier .zc-beginner-brief,.ge-dossier .zc-mid-gallery{padding:15px;margin-bottom:19px}
 .zc-start-grid{grid-template-columns:minmax(0,1fr);gap:9px}
 .zc-start-card{min-height:0;padding:13px 12px}
 .zc-gallery-heading{align-items:start}
 .zc-gallery-count{font-size:.65rem;padding:7px}
 .zc-gallery-grid{grid-template-columns:minmax(0,1fr)}
 .zc-shot:first-child{grid-column:span 1}
 .zc-shot img,.zc-shot:first-child img{height:auto;aspect-ratio:16/9;object-fit:cover}
 .zc-mid-gallery-grid{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){.zc-shot img,.zc-start-card{transition:none}.zc-start-card:hover{transform:none}}

/* Put secondary links and technical mission caveats behind deliberate clicks. */
.zc-mission-center .zc-extra-context,.zc-mission-center .zc-more-shortcuts{
  min-width:0;max-width:100%;margin:13px 0;background:#192737;border:1px solid #61778a;
}
.zc-mission-center .zc-extra-context summary,.zc-mission-center .zc-more-shortcuts summary{
  cursor:pointer;list-style-position:inside;font-size:.85rem;font-weight:800;
  padding:13px 15px;line-height:1.5;color:#fff;
}
.zc-mission-center .zc-extra-context summary:hover,.zc-mission-center .zc-more-shortcuts summary:hover{
  background:#31455a
}
.zc-mission-center .zc-extra-context summary:focus-visible,
.zc-mission-center .zc-more-shortcuts summary:focus-visible{outline:2px solid #ffc7d3}
.zc-mission-center .zc-extra-context>div{padding:0 15px 12px}
.zc-mission-center .zc-extra-context p{font-size:.84rem!important;line-height:1.65!important}
.zc-mission-center .zc-more-shortcuts .zc-nav{padding:12px;margin:0;border-top:1px solid #566c81}
.zc-mission-center .zc-more-shortcuts .zc-nav a{min-height:42px;display:inline-flex;align-items:center;font-size:.76rem}
