:root{
  --valryn-room-inline:clamp(12px,2vw,28px);
  --valryn-room-block:clamp(12px,1.8vh,24px);
  --valryn-room-max:1920px;
  --valryn-room-header:64px;
}

/* Canonical authenticated-room contract: shell + one viewport-scale work surface. */
body:not([data-public-page]){min-width:320px;overflow-x:hidden}
.dashboard-main,
.mission-main,
.media-main,
.settings-page,
.kr-main,
.creator-room{
  width:min(var(--valryn-room-max),100%);
  max-width:none;
  margin-inline:auto;
}
.dashboard-main,
.mission-main,
.media-main,
.settings-page{
  padding-inline:var(--valryn-room-inline);
}
.mission-shell,
.settings-page,
.media-main{
  min-height:calc(100dvh - var(--valryn-room-header));
}
.settings-page{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);align-items:start;gap:16px}
.settings-page>.settings-card{min-width:0;margin:0}
.settings-page>.settings-card:first-child{position:sticky;top:calc(var(--valryn-room-header) + 12px)}
.mission-main,.media-main{min-width:0}
.feed-layout{width:100%;max-width:none;margin-inline:0}

@media(max-width:900px){
  .settings-page{grid-template-columns:1fr}
  .settings-page>.settings-card:first-child{position:static}
}
@media(max-width:700px){
  :root{--valryn-room-inline:10px;--valryn-room-block:10px}
  .dashboard-main,.mission-main,.media-main,.settings-page{padding-inline:var(--valryn-room-inline)}
}
@media(max-height:620px){
  :root{--valryn-room-header:54px;--valryn-room-block:8px}
}
