/* Clear parent navigation stays above the content of each module. */
.parent-navigation{position:sticky;top:0;z-index:35;flex:none;grid-column:1/-1;display:flex;align-items:center;min-height:54px;padding:6px 16px;background:#f6f2ff;border-bottom:1px solid #ddd4f0;box-sizing:border-box}
.parent-navigation button{display:inline-flex;align-items:center;min-height:42px;padding:8px 16px;border:1px solid #beacd9;border-radius:12px;background:#fff;color:#483678;font:800 16px/1.4 'Trebuchet MS',system-ui,sans-serif;box-shadow:0 2px 0 #d9cbea}
.parent-navigation button:hover{background:#eee6ff}
#grammarDialog.navigation-map-only .grammar-main,#speakingDialog.navigation-map-only .speaking-main{display:none}
#grammarDialog.navigation-map-only .grammar-body,#speakingDialog.navigation-map-only .speaking-body{display:block!important;overflow:auto}
#grammarDialog.navigation-map-only .grammar-map-panel,#speakingDialog.navigation-map-only .speaking-map-panel{display:block!important;width:100%;max-width:none;box-sizing:border-box;border:0;overflow:visible}
#grammarDialog.navigation-map-only .grammar-mission-list,#speakingDialog.navigation-map-only .speaking-mission-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
#grammarDialog.navigation-map-only .grammar-mission{min-height:110px}
#readingDialog .reading-story-select-wrap{flex-wrap:wrap;gap:12px}
#readingDialog .reading-story-toolbar{position:sticky;top:0;z-index:15}
.comic-zoom-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-left:auto;color:#493b73}
.comic-zoom-controls label{font-size:14px;font-weight:800}
.comic-zoom-presets{display:flex;gap:4px;flex-wrap:wrap}
.comic-zoom-presets button{min-height:42px;min-width:49px;border:1px solid #d3c9ec;border-radius:10px;background:white;color:#514177;font-size:14px;font-weight:800;padding:7px}
.comic-zoom-presets button[aria-pressed=true]{color:white;background:#6854c4;border-color:#6854c4}
#comicZoomRange{width:112px;min-height:38px;accent-color:#6854c4;cursor:pointer}
#comicZoomValue{min-width:42px;font-size:14px;font-weight:800}
#readingDialog .comic-zoom-viewport{flex:none;width:100%;min-width:0;overflow-x:auto;padding-bottom:8px;--comic-zoom:1;--comic-base:94%}
#readingDialog .comic-zoom-viewport .comic-reader-v2{width:calc(var(--comic-base) * var(--comic-zoom));max-width:none;min-width:0;box-sizing:border-box;margin-inline:auto;align-self:auto}
@media(max-width:900px){#readingDialog .comic-zoom-viewport{--comic-base:100%}}
@media(max-width:640px){
 .parent-navigation{min-height:50px;padding:5px 10px}
 .parent-navigation button{font-size:15px}
 .comic-zoom-controls{margin:0;width:100%;gap:6px}
 #readingDialog .reading-story-toolbar{position:relative}
 #comicZoomRange{flex:1;min-width:90px;max-width:160px}
 #grammarDialog.navigation-map-only .grammar-mission-list,#speakingDialog.navigation-map-only .speaking-mission-list{grid-template-columns:1fr}
}

#grammarDialog .grammar-shell{grid-template-rows:auto auto auto minmax(0,1fr) auto}
