/* Workroom v4 — stable mobile-first repair.
   Purpose: make the page work on phones before any theatrical effect is allowed. */

.page--workroom{overflow-x:hidden;background:#080604;}
.page--workroom *{box-sizing:border-box;}

/* Never allow decorative/interactive workroom objects to create sideways scrolling. */
.page--workroom img,
.page--workroom video,
.page--workroom svg{max-width:100%;height:auto;}

@media (max-width: 940px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important;}
  .premiumTopbar{position:sticky!important;top:0!important;z-index:50000!important;min-height:64px!important;padding:10px 14px!important;}
  .premiumTopbar .premiumNav,
  .premiumTopbar > .premiumLang{display:none!important;}
  .premiumTopbar .premiumMenuBtn{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;
    position:relative!important;z-index:50002!important;touch-action:manipulation!important;
  }
  .premiumTopbar .premiumMenuBtn span{display:block!important;width:18px!important;height:1px!important;margin:2.8px 0!important;}
  body.menu-open{overflow:hidden!important;touch-action:none;}
  body.menu-open::before{
    content:"";position:fixed;inset:0;z-index:49998;background:rgba(0,0,0,.58);backdrop-filter:blur(3px);
  }
  .mobileMenu.premiumMobileMenu{
    position:fixed!important;inset:0 auto 0 0!important;z-index:49999!important;
    display:none!important;width:min(360px,92vw)!important;height:100dvh!important;max-height:100dvh!important;
    overflow-y:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;
    padding:74px 22px 34px!important;background:linear-gradient(180deg,rgba(7,6,5,.995),rgba(10,8,7,.985))!important;
    border-right:1px solid rgba(199,164,90,.22)!important;box-shadow:24px 0 80px rgba(0,0,0,.48)!important;
    transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  }
  .mobileMenu.premiumMobileMenu:not([hidden]),
  body.menu-open .mobileMenu.premiumMobileMenu{display:block!important;}
  .mobileMenu.premiumMobileMenu[hidden]{display:none!important;}
  .mobileMenu.premiumMobileMenu .menuClose{
    position:absolute!important;top:16px!important;right:16px!important;min-width:46px!important;min-height:38px!important;
    z-index:1!important;touch-action:manipulation!important;
  }
  .mobileMenu.premiumMobileMenu .langSwitch{display:flex!important;align-items:center!important;gap:9px!important;margin:0 0 22px!important;}
  .mobileMenu.premiumMobileMenu a{
    display:block!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;
    padding:8px 0!important;font-size:clamp(18px,5vw,22px)!important;line-height:1.18!important;letter-spacing:0!important;
  }
  .mobileMenu.premiumMobileMenu .mobileLang a{display:inline-flex!important;font-size:12px!important;letter-spacing:.13em!important;padding:0!important;}

  /* Page rhythm: one column, no theatrical mechanism may break reading. */
  .section{padding-left:16px!important;padding-right:16px!important;}
  .sectionHead,.compactHead,.workroomStatement,.closingCard{width:min(100%,680px)!important;max-width:680px!important;margin-left:auto!important;margin-right:auto!important;}
  .compactHead h2,.workroomStatement h2,.closingCard h2{font-size:clamp(2.05rem,11vw,3.5rem)!important;line-height:.94!important;letter-spacing:-.055em!important;}
  .muted{max-width:100%!important;}

  .workroomHero--cinematic{padding-top:3.4rem!important;padding-bottom:1.6rem!important;}
  .workroomHeroCinematicFrame{width:100%!important;max-width:720px!important;margin:0 auto!important;}
  .workroomHeroImageWrap{border-radius:18px!important;overflow:hidden!important;}
  .workroomHeroImage{height:clamp(300px,52vh,440px)!important;width:100%!important;object-fit:cover!important;object-position:58% center!important;}
  .workroomPulseClock{right:10px!important;bottom:10px!important;min-width:82px!important;padding:.52rem .6rem!important;font-size:.82rem!important;pointer-events:none!important;}
  .workroomHeroActions--cinematic{display:grid!important;grid-template-columns:1fr!important;gap:.55rem!important;width:100%!important;margin-top:1rem!important;}
  .workroomHeroActions--cinematic .btn{width:100%!important;justify-content:center!important;min-height:44px!important;}

  .workroomScenePlate,.workroomSignalGrid,.redactionGrid,.entryMediaPair,.limitsGrid{display:grid!important;grid-template-columns:1fr!important;width:min(100%,680px)!important;margin-left:auto!important;margin-right:auto!important;gap:16px!important;}
  .workroomSceneImage,.workroomObjectCard,.workEntry,.workroomSignalCard,.entryMediaFigure,.workroomArchivePlate,.limitCard,.mediaEvidenceCard,.redactionDossier{max-width:100%!important;border-radius:18px!important;overflow:hidden!important;}
  .workroomSceneImage img{width:100%!important;min-height:220px!important;aspect-ratio:4/3!important;object-fit:cover!important;}
  .workroomObjectCard{padding:18px!important;}
  .workroomObjectCard img{max-height:260px!important;object-fit:cover!important;}

  /* The map wall becomes a clear evidence ledger on mobile. */
  .tradecraftMap{
    width:min(100%,680px)!important;margin:0 auto!important;min-height:0!important;
    display:flex!important;flex-direction:column!important;gap:8px!important;padding:56px 12px 12px!important;
    border-radius:18px!important;overflow:visible!important;background:rgba(11,8,6,.84)!important;
  }
  .tradecraftMap::after{top:18px!important;left:16px!important;font-size:.62rem!important;letter-spacing:.16em!important;}
  .mapStrings{display:none!important;}
  .mapPin{
    position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:100%!important;min-height:50px!important;
    display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:.7rem!important;text-align:left!important;
    padding:12px 12px!important;border:1px solid rgba(199,164,90,.23)!important;border-radius:14px!important;
    background:rgba(8,6,5,.62)!important;touch-action:manipulation!important;
  }
  .mapPin::before{width:14px!important;height:14px!important;margin:0!important;flex:0 0 auto!important;}
  .mapPin span{border:0!important;background:transparent!important;padding:0!important;max-width:none!important;line-height:1.1!important;}
  .mapPin.is-active{background:rgba(143,47,38,.20)!important;border-color:rgba(199,164,90,.46)!important;}
  .mapDossier{position:relative!important;right:auto!important;bottom:auto!important;width:100%!important;margin-top:8px!important;padding:18px!important;border-radius:16px!important;transform:none!important;}
  .mapDossier h3{font-size:clamp(2rem,11vw,3rem)!important;}

  /* Redaction becomes tap-to-reveal, with readable fallback sizing. */
  .redactionCopy h2{font-size:clamp(2.05rem,11vw,3.4rem)!important;max-width:12ch!important;}
  .redactionDossier{padding:18px!important;transform:none!important;}
  .redactionDossier h3{font-size:clamp(1.7rem,8vw,2.35rem)!important;}
  .redactionDossier p{font-size:1rem!important;line-height:1.58!important;}
  .redactionStrip{min-width:5.5ch!important;min-height:32px!important;padding:.18rem .42rem!important;vertical-align:middle!important;touch-action:manipulation!important;}
  .redactionHint{font-size:.72rem!important;}

  /* Signal desk: keep the atmosphere, but make controls ordinary enough to work. */
  .receiverDeskVisual img{width:100%!important;aspect-ratio:4/3!important;object-fit:cover!important;}
  .radioScale{left:10px!important;right:10px!important;bottom:10px!important;grid-template-columns:auto 1fr auto!important;font-size:.62rem!important;letter-spacing:.12em!important;padding:.52rem!important;}
  .radioScale span:last-child{display:none!important;}
  .receiverControl,.drawerRattle,.evidenceRunControl{min-height:48px!important;width:100%!important;touch-action:manipulation!important;}

  .evidenceGrid{display:grid!important;grid-template-columns:1fr!important;width:min(100%,680px)!important;margin-left:auto!important;margin-right:auto!important;gap:16px!important;}
  .workroomVideoObject{display:flex!important;flex-direction:column!important;}
  .workroomVideoObject video{display:block!important;width:100%!important;height:auto!important;aspect-ratio:4/3!important;object-fit:cover!important;}
  .evidenceRunControl{position:static!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:0!important;opacity:1!important;margin:0!important;background:rgba(10,8,6,.94)!important;}
  .mediaEvidenceBody{padding:16px!important;}
  .fragmentList p{font-size:clamp(1.35rem,7.5vw,2rem)!important;}
}

@media (max-width:430px){
  .premiumTopbar .brandText{font-size:12.5px!important;}
  .mobileMenu.premiumMobileMenu{width:min(348px,94vw)!important;padding-left:18px!important;padding-right:18px!important;}
  .mobileMenu.premiumMobileMenu a{font-size:clamp(17px,4.8vw,21px)!important;line-height:1.22!important;padding:7px 0!important;}
  .section{padding-left:14px!important;padding-right:14px!important;}
  .workroomHeroImage{height:clamp(290px,50vh,380px)!important;}
  .workEntry{padding:1rem!important;}
}

@media (prefers-reduced-motion: reduce){
  .page--workroom *, .page--workroom *::before, .page--workroom *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important;}
}
