/* world-interact — the host layer around the frozen world shell.
   House law holds here too: no post-processing chain, no backdrop
   effects — glow is layered gradients only. Colors are the locked set. */
.wi-body{display:flex; flex-direction:column; height:100dvh; overflow:hidden}
.wi-state{
  font-family:var(--mono); font-size:.85rem; letter-spacing:.22em;
  color:var(--aqua); margin-left:auto; text-transform:uppercase;
}
.wi-layout{
  flex:1; min-height:0; display:grid;
  grid-template-columns:minmax(0,1fr) 21rem;
}
.wi-stage{position:relative; min-width:0; min-height:0}
#wi-frame{width:100%; height:100%; border:0; display:block; background:var(--bg)}
.wi-panel{
  border-left:1px solid var(--border); padding:1rem 1rem 1.5rem;
  overflow-y:auto; text-align:center; min-width:0;
}
.wi-rail{display:flex; flex-direction:column; gap:.5rem; margin:0 0 1rem}
.wi-rung{
  font-family:var(--mono); font-size:1rem; letter-spacing:.18em;
  min-height:2.75rem; padding:.7rem .6rem; cursor:pointer;
  color:var(--fg); text-align:center;
  border:1px solid var(--border); border-radius:.7rem;
  background:linear-gradient(165deg, var(--panel), var(--panel2));
}
.wi-rung[aria-pressed="true"]{
  color:var(--aqua); border-color:var(--aqua);
  background:linear-gradient(165deg, rgba(0,245,212,.14), rgba(20,184,166,.05) 60%, var(--panel2));
}
.wi-rung:focus-visible{outline:2px solid var(--gold); outline-offset:2px}
.wi-card h2{font-size:clamp(1.6rem, 6vw, 2.2rem); margin:.2rem 0 .6rem}
.wi-chips{
  display:flex; flex-wrap:wrap; gap:.5rem; justify-content:center; margin:.2rem 0 .8rem;
}
.wi-chip{
  font-family:var(--mono); font-size:.9rem; letter-spacing:.08em;
  border:1px solid var(--border); border-radius:999px; padding:.32rem .75rem;
  color:var(--fg);
}
.wi-state-chip{color:var(--aqua); border-color:var(--border-teal)}
.wi-note{color:var(--muted); font-size:1.05rem}
.wi-seats{
  font-family:var(--mono); font-size:.8rem; letter-spacing:.3em; color:var(--dim);
  margin:1rem 0 0;
}
@media (max-width:56rem){
  .wi-layout{grid-template-columns:minmax(0,1fr); grid-template-rows:52dvh minmax(0,1fr)}
  .wi-panel{border-left:0; border-top:1px solid var(--border)}
  .wi-rail{flex-direction:row; overflow-x:auto; padding-bottom:.4rem}
  .wi-rung{flex:0 0 auto; padding:.7rem .9rem}
}
@media (prefers-reduced-motion: no-preference){
  .wi-rung{transition:border-color .18s ease, color .18s ease}
}
