@media (max-width:1180px){
  .adventure-screen{height:auto;min-height:100vh;overflow:visible}.adventure-layout{grid-template-columns:minmax(0,1fr);overflow:visible;padding:.5rem}.side-panel{position:fixed;z-index:100;top:3.9rem;bottom:.5rem;width:min(340px,calc(100vw - 1rem));box-shadow:var(--shadow-lg);transform:translateX(-115%);transition:transform .22s ease;visibility:hidden;pointer-events:none}.side-panel.open{transform:translateX(0);visibility:visible;pointer-events:auto}.character-panel{left:.5rem}.utility-panel{right:.5rem;transform:translateX(115%)}.utility-panel.open{transform:translateX(0)}.story-stage{grid-template-rows:auto auto;min-height:0;overflow:visible}.location-artwork-frame{height:auto;aspect-ratio:16/9}.story-panel{overflow:visible}.story-book{max-height:none;overflow:visible}.mobile-only{display:grid!important}.compact-stat{font-size:.61rem}.utility-tabs .tab-button small{display:none}.choice-tray{grid-template-columns:repeat(2,minmax(0,1fr))!important}.combat-arena{grid-template-columns:.8fr 1fr .8fr}
  .artwork-focus-mode{height:100vh;min-height:0;overflow:hidden}.artwork-focus-mode .adventure-layout{min-height:0;overflow:hidden}.artwork-focus-mode .story-stage{height:100%;min-height:0;grid-template-rows:minmax(0,1fr);overflow:hidden}.artwork-focus-mode .location-artwork-frame{height:100%;aspect-ratio:auto}.artwork-focus-mode .top-actions .mobile-only{display:none!important}
}
@media (max-width:960px){
  .menu-shell{grid-template-columns:1fr;gap:.5rem;align-content:center}.brand-cluster{padding:0}.game-logo{width:min(450px,78vw)}.menu-card{width:min(430px,92vw);margin:auto}.menu-footer{position:fixed}
  .creator-layout,.campaign-select-layout,.inventory-layout{grid-template-columns:1fr}.creator-form{order:2}.character-preview{grid-template-columns:220px 1fr}.world-map{min-height:480px}
  .adventure-topbar{grid-template-columns:minmax(180px,1fr) minmax(220px,1.2fr) auto}
  .combat-arena{grid-template-columns:1fr 1fr}.battle-log{grid-column:1/-1;grid-row:2;min-height:150px;max-height:220px}.action-grid{grid-template-columns:repeat(3,1fr)}
  .adventurer-sheet{grid-template-columns:220px 1fr}
}
@media (min-width:1181px){.mobile-only{display:none!important}}
@media (max-width:700px){
  :root{font-size:calc(15px * var(--ui-scale))}.page-screen{padding:.65rem}.page-header{margin-bottom:.65rem}.book-panel{padding:1rem}.book-panel::after{display:none}
  .adventure-topbar{grid-template-columns:1fr auto;padding:.45rem}.objective-strip{grid-column:1/-1;grid-row:2}.campaign-heading p{display:none}.top-actions .desktop-save{display:none}.side-panel{top:6.8rem}.story-book::after{display:none}.choice-tray{grid-template-columns:1fr!important}.choice-button{min-height:3.5rem}.choice-copy strong{font-size:.82rem}.artwork-focus-button span:last-child{display:none}.artwork-focus-button{width:2.45rem;justify-content:center;padding:.35rem}.narration-controls{grid-template-columns:minmax(0,1fr) auto}.narration-progress{grid-column:1/-1;grid-row:2}.narration-actions{grid-column:2;grid-row:1}.narration-volume output{display:none}.narration-volume input{width:3.4rem}.narration-toggle-button{min-width:3.8rem;padding-inline:.3rem}
  .creator-layout{display:block}.creator-form{margin-top:1rem}.character-preview{grid-template-columns:1fr}.portrait-card{min-height:240px}.stat-grid{grid-template-columns:1fr 1fr}
  .campaign-select-layout{display:block}.world-map{min-height:400px;margin-bottom:1rem}.map-region{width:7.2rem;padding:.35rem}.map-region small{display:none}
  .combat-arena{padding:.55rem;gap:.35rem}.battle-portrait{width:110px}.battle-name{font-size:.85rem}.action-grid{grid-template-columns:repeat(2,1fr)}.combat-action{min-height:3.15rem}.battle-log{min-height:125px}.combat-header{font-size:.8rem}
  .setting-row{grid-template-columns:1fr}.modal-card{max-height:94vh}.modal-body{padding:.9rem}
  .dice-stage{min-height:8.5rem}.d20{width:clamp(6rem,28vw,8rem);height:clamp(6rem,28vw,8rem);font-size:clamp(2.45rem,12vw,3.3rem)}.dice-result-grid{grid-template-columns:1fr}.dice-skip-hint{font-size:.76rem}
  .adventurer-sheet{grid-template-columns:1fr}.sheet-sidebar .portrait-card{min-height:220px;max-width:260px;margin:auto}.achievement-grid,.bestiary-grid,.item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.item-card{min-height:175px}
  .menu-footer{display:none}.menu-screen{padding:.7rem}.game-logo{width:min(360px,84vw)}.fantasy-button{min-height:2.8rem}
}
@media (max-width:430px){
  :root{font-size:calc(14.4px * var(--ui-scale))}.page-heading h1{font-size:1.55rem}.achievement-grid,.bestiary-grid,.item-grid{grid-template-columns:1fr}.class-tabs{grid-template-columns:1fr 1fr}.character-preview{padding:.65rem}.stat-grid{grid-template-columns:1fr}.world-map{min-height:360px}.campaign-heading h1{font-size:.92rem}.story-copy{font-size:.92rem}.choice-tray{padding:.45rem}.adventure-layout{padding:.3rem}.notification-stack{right:.5rem;top:.5rem;width:calc(100vw - 1rem)}
}
@media (max-height:720px) and (min-width:1181px){
  :root{font-size:calc(15px * var(--ui-scale))}.adventure-screen{min-height:620px}.story-stage{grid-template-rows:minmax(15rem,43vh) minmax(0,1fr)}.mini-character{grid-template-columns:63px 1fr}.mini-portrait{width:63px;height:68px}.compact-stat{padding:.16rem .1rem}.choice-button{min-height:3.25rem}.story-copy{padding:.7rem 1.25rem}.menu-shell{min-height:calc(100vh - 1rem)}.game-logo{max-height:43vh;object-fit:contain}
}

/* Large-text reflow: side panels become drawers at the 1366px target as well. */
@media (max-width:1440px){
  .adventure-screen{height:auto;min-height:100vh;overflow:visible}.adventure-layout{grid-template-columns:minmax(0,1fr);overflow:visible;padding:.5rem}.side-panel{position:fixed;z-index:100;top:3.9rem;bottom:.5rem;width:min(420px,calc(100vw - 1rem));box-shadow:var(--shadow-lg);transform:translateX(-115%);transition:transform .22s ease;visibility:hidden;pointer-events:none}.side-panel.open{transform:translateX(0);visibility:visible;pointer-events:auto}.character-panel{left:.5rem}.utility-panel{right:.5rem;transform:translateX(115%)}.utility-panel.open{transform:translateX(0)}.story-stage{grid-template-rows:auto auto;min-height:0;overflow:visible}.location-artwork-frame{height:auto;aspect-ratio:16/9}.story-panel{overflow:visible}.story-book{max-height:none;overflow:visible}.mobile-only{display:grid!important}.compact-stat{font-size:1.17rem;padding:.42rem .1rem}.utility-tabs .tab-button small{display:block}.choice-tray{grid-template-columns:repeat(2,minmax(0,1fr))!important}.choice-button{min-height:6.2rem}.choice-copy strong{font-size:1.68rem}.combat-arena{grid-template-columns:.8fr 1fr .8fr}
  .artwork-focus-mode{height:100vh;min-height:0;overflow:hidden}.artwork-focus-mode .adventure-layout{min-height:0;overflow:hidden}.artwork-focus-mode .story-stage{height:100%;min-height:0;grid-template-rows:minmax(0,1fr);overflow:hidden}.artwork-focus-mode .location-artwork-frame{height:100%;aspect-ratio:auto}.artwork-focus-mode .top-actions .mobile-only{display:none!important}
}
@media (min-width:1441px){.mobile-only{display:none!important}}
@media (max-width:960px){
  .action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.combat-action{min-height:5.5rem}.adventurer-sheet{grid-template-columns:1fr}.inventory-layout{grid-template-columns:1fr}
}
@media (max-width:700px){
  .side-panel{top:6.8rem}.choice-tray{grid-template-columns:1fr!important}.choice-button{min-height:6.2rem}.choice-copy strong{font-size:1.68rem}.action-grid{grid-template-columns:1fr}.combat-action{min-height:5.5rem}.battle-name{font-size:1.55rem}.item-card{min-height:260px}.utility-tabs .tab-button small{display:block}
}
