/* Progressive enhancement: a real handset render and direct app links without JS. */
body[data-design="bridge"] .signal-device-screen {object-fit:contain;}
body[data-design="bridge"] .world-index:empty {display:none;}
/* With JS enabled, noscript contains literal text, not this parsed nav.
   Never override its hidden state unless the real fallback elements exist. */
noscript:has(.no-script-apps) {display:contents;}
.no-script-apps {position:absolute;inset:0 0 auto;height:var(--bridge-scene-height);z-index:3;pointer-events:none;}
.no-script-apps .app-node {pointer-events:auto;text-decoration:none;}
.no-script-apps .destination-kind {color:#e0bd76;font:10px/1.4 Plex,monospace;}
.no-script-apps .app-status {letter-spacing:.05em;}
.no-script-apps .app-icon::before,.no-script-apps .app-icon::after {animation:none!important;}
@media(max-width:1000px){
  .no-script-apps {position:relative;inset:auto;height:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:min(720px,100%);gap:17px 8px;padding:24px 0 18px;pointer-events:auto;}
  body[data-design="bridge"] .no-script-apps .app-node[data-world] {position:relative;inset:auto;min-height:162px;padding:12px 3px;transform:none;}
}
@media(max-width:570px){
  .no-script-apps {grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 12px;}
}

/* Compact identity and controls sit above, never over, the living scene. */
.studio-header {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:128px;
  padding:8px clamp(20px,2.5vw,64px);
  background:radial-gradient(ellipse at 15% 0,#e0bd7608,transparent 52%),#08090d;
}
.studio-header::after {
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:1px;
  background:linear-gradient(90deg,#e0bd764a,#ef9fc030 66%,#ef9fc00c);
}
.studio-header-brand {display:flex;align-items:center;min-width:0;}
.studio-header-logo {display:block;flex:none;width:112px;height:112px;object-fit:contain;}
.studio-header-actions {display:flex;align-items:center;gap:18px;min-width:0;}
.studio-header-contact {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:46px;
  padding:10px 20px;
  border:1px solid #ef9fc070;
  border-radius:99px;
  background:linear-gradient(135deg,#ef9fc013,#e0bd7606);
  color:var(--cream);
  font-size:14px;
  line-height:1.4;
  white-space:nowrap;
  transition:border-color .2s ease,background .2s ease,color .2s ease;
}
.studio-contact-arrow {color:var(--rose);font-size:19px;line-height:1;}
.studio-header-contact:hover {border-color:var(--rose);background:#ef9fc01d;color:#ffe5ef;}
.studio-language-switch {display:flex;align-items:center;gap:2px;padding:3px;border:1px solid #e0bd762b;border-radius:99px;background:#111016;}
.studio-language-switch button {display:grid;place-items:center;min-width:44px;min-height:44px;padding:7px;border:1px solid transparent;border-radius:99px;background:transparent;color:#b6a9b3;font:10px/1 Plex,monospace;letter-spacing:.04em;transition:color .2s,border-color .2s,background .2s;}
.studio-language-switch button[aria-pressed="true"] {color:#ffe3ee;border-color:#ef9fc063;background:#ef9fc019;}
.studio-language-switch button:hover:enabled {color:#fff0dc;background:#e0bd7610;}
.studio-language-switch button:disabled {cursor:default;opacity:.55;}
body[data-design="bridge"] .prototype {--bridge-scene-height:max(700px,calc(100svh - 128px));}
body[data-design="bridge"] .hero-copy,
body[data-design="bridge"] .hero-copy h1 {background:transparent;box-shadow:none;}
body[data-design="bridge"] .hero-copy h1 .hero-lead {padding-bottom:0;background:none;-webkit-background-clip:initial;background-clip:initial;color:#f3edde;}
html[lang="ru"] body[data-design="bridge"] .hero-copy h1 {font-size:clamp(44px,5.1vw,88px);letter-spacing:-.045em;}
html[lang="he"] body {font-family:Arial,system-ui,sans-serif;}
html[lang="he"] body[data-design="bridge"] .hero-copy {left:auto;right:2.5%;text-align:right;}
html[lang="he"] body[data-design="bridge"] .hero-copy h1 {font-family:Arial,system-ui,sans-serif;font-size:clamp(50px,5.4vw,92px);letter-spacing:0;line-height:1.04;}
html[lang="he"] body[data-design="bridge"] .phone-host {left:49%;}
@media(min-width:1001px){
  /* Align the handset with the app-icon circle rather than the scene's top. */
  body[data-design="bridge"] .phone-host {top:calc(var(--bridge-scene-height) * .555 - 12px);transform:translate(-50%,-50%);}
  html[lang="he"] body[data-design="bridge"] .app-node[data-world="kino"] {left:79%;}
  html[lang="he"] body[data-design="bridge"] .app-node[data-world="echo"] {left:86%;}
  html[lang="he"] body[data-design="bridge"] .app-node[data-world="feed"] {left:88.5%;}
  html[lang="he"] body[data-design="bridge"] .app-node[data-world="beer"] {left:79%;}
  html[lang="he"] body[data-design="bridge"] .app-node[data-world="tanakh"] {left:19%;}
  html[lang="he"] body[data-design="bridge"] .app-node[data-world="half-life"] {left:9%;}
  html[lang="he"] body[data-design="bridge"] .app-node[data-world="dune"] {left:12%;}
  html[lang="he"] body[data-design="bridge"] .app-node[data-world="rap"] {left:20%;}
}
@media(min-width:1001px) and (max-width:1150px){
  html[lang="he"] body[data-design="bridge"] .app-node[data-world="echo"] {left:88%;}
  html[lang="he"] body[data-design="bridge"] .app-node[data-world="half-life"] {left:10%;}
}
@media(max-width:1000px){
  html[lang="he"] body[data-design="bridge"] .hero-copy {inset:auto;text-align:center;}
  html[lang="he"] body[data-design="bridge"] .phone-host {inset:auto;}
  html[lang="he"] body[data-design="bridge"] .hero-copy h1 {font-size:clamp(50px,8.5vw,82px);}
  html[lang="ru"] body[data-design="bridge"] .hero-copy h1 {font-size:clamp(40px,7.4vw,74px);}
}
@media(max-width:680px){
  .studio-header {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;min-height:0;padding:12px 20px 16px;}
  .studio-header-logo {width:88px;height:88px;}
  .studio-header-actions {display:contents;}
  .studio-language-switch {justify-self:end;}
  .studio-header-contact {grid-column:1 / -1;justify-self:stretch;}
}
@media(max-width:570px){
  html[lang="he"] body[data-design="bridge"] .hero-copy h1 {font-size:clamp(37px,10.5vw,58px);}
  html[lang="ru"] body[data-design="bridge"] .hero-copy h1 {font-size:clamp(34px,10.2vw,58px);}
}
