/* Shared responsive behavior for studio, game, archive and original dossiers. */
:where(img,video,canvas,svg,iframe) { max-width:100%; }
:where(h1,h2,h3,p,li,dd,a) { overflow-wrap:anywhere; }
:where(.heroCopy,.heroArt,.columns>*,.score-panel>*,.capability>*,.quick>*,.directory-controls>*,.directory-grid>*,.wiki-intro-grid>*) { min-width:0; }
.environment-emblem { flex-shrink:0; }
/* Keep Downloads in the same navigation group and type scale. */
body:is(.game-page,.wiki-page) .site-header { grid-template-columns:auto minmax(0,1fr); }
@media(max-width:1050px) {
 body:is(.game-page,.wiki-page,.legal-body) .site-header { position:relative;top:auto;left:auto;right:auto;transform:none;display:grid;grid-template-columns:minmax(0,1fr) auto;height:auto;min-height:0;width:100%;margin:0;padding:12px 4%;gap:10px; }
 body:is(.game-page,.wiki-page,.legal-body) .site-header .nav-links { display:flex;grid-row:2;grid-column:1/-1;flex-wrap:wrap;justify-content:flex-start;gap:4px 14px;width:100%;overflow:visible;white-space:normal;padding:0; }
 body:is(.game-page,.wiki-page,.legal-body) .nav-links a { display:inline-flex;align-items:center;min-height:44px;font-size:12px; }
 .game-page .game-breadcrumb { position:relative;top:auto;left:auto;padding:20px 5% 0;flex-wrap:wrap; }
 .game-page .hero-content { padding-top:48px; }
 .wiki-page .wiki-hero { padding-top:58px; }
 .legal-body .site-header { background:#101820; }
 .legal-body .legal-hero-inner { padding-top:58px; }
 body.wiki-page[data-environment="directory"] #directory { scroll-margin-top:20px; }
}
@media(max-width:900px) {
 body[data-environment="entry"] > nav { position:relative;gap:4px 14px;padding:16px 5%; }
 body[data-environment="entry"] > nav b { flex:1 0 100%;margin-right:0; }
 body[data-environment="entry"] > nav a { display:inline-flex;align-items:center;min-height:44px;font-size:12px; }
 body[data-environment="entry"] .score-panel,
 body[data-environment="entry"] .capability { grid-template-columns:minmax(0,1fr);gap:24px; }
 body[data-environment="entry"] :is(.score-panel,.capability)>svg { width:100%;max-width:410px;justify-self:center; }
 body[data-environment="entry"] .score-row { grid-template-columns:minmax(105px,1fr) minmax(55px,1fr) max-content;gap:8px;font-size:13px; }
 body[data-environment="entry"] .score-row meter { min-width:0; }
 body[data-environment="entry"] .quick { grid-template-columns:1fr; }
 body[data-environment="entry"] .quick>div { padding:16px 0;border-right:0;border-bottom:1px solid var(--line); }
 .directory-controls :is(input[type="search"],select) { min-width:0;width:100%;min-height:44px;font-size:16px; }
 .directory-controls fieldset label,.directory-controls button,.environment-choices button { min-height:44px; }
 .directory-controls fieldset label { display:inline-flex;align-items:center; }
 .studio-header nav a { display:inline-flex;align-items:center;min-height:44px; }
}
@media(max-width:480px) {
 body[data-environment="entry"] .profiles { grid-template-columns:minmax(0,1fr); }
 body[data-environment="entry"] .timeline { grid-template-columns:minmax(0,1fr); }
 .directory-controls { grid-template-columns:minmax(0,1fr); }
 .directory-controls>* { grid-column:1/-1; }
 .directory-controls fieldset { min-width:0; }
 body:is(.game-page,.wiki-page,.legal-body) .brand { min-width:0;gap:8px; }
 body:is(.game-page,.wiki-page,.legal-body) .brand img { width:44px;height:44px; }
 body:is(.game-page,.wiki-page,.legal-body) .brand span { font-size:18px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
