/* Shared touch sizes and navigation. Keep semantic controls in the viewport. */
body.usability215 :is(button,select,summary,.kv-back,.kv-return a){touch-action:manipulation}
body.usability215 :is(.hub-sidebar .nav button,.hub-play-filters button,.hub-filters button,.learn-settings65 summary,.kv-section-tabs a,.kv-activity-pages button,.f66-top button,.f66-tools button,.kv-return a){min-height:48px!important;font-size:16px!important}
body.usability215 .hub-sidebar .nav-label{font-size:14px!important;line-height:1.25}
body.usability215 .hub-sidebar .nav{gap:6px}
body.usability215 .hub-sidebar .nav button{padding:8px!important}
body.usability215 .hub-sidebar{overflow-y:auto}
body.usability215 .kv-scene-tabs a{min-height:48px!important;font-size:14px!important}
body.usability215 .kv-scene-tabs{gap:4px!important}
body.usability215 .kv-section-fit{height:auto;min-height:calc(100dvh - 160px);overflow:visible}
body.usability215 .kv-section-fit .kv-activities{flex:none;grid-auto-rows:minmax(150px,1fr);grid-template-rows:none;overflow:visible}
body.usability215 .kv-section-fit .kv-activity{min-height:150px}
body.usability215 .kv-section-fit .kv-section-tabs{flex-wrap:wrap}
body.usability215 .kv-return{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
body.usability215 .kv-return a,.kv-back{border-radius:14px;padding:8px 12px;background:#fff;border:1px solid #dce4ef;display:inline-flex;align-items:center;gap:8px}
.sound-state215{font-size:14px;font-weight:800;white-space:nowrap}
body.usability215 [data-action="sound"]{width:auto;min-width:48px;gap:8px}
body.usability215 [data-action="sound"][aria-pressed="false"]{background:#fce4ed;color:#8e2045}
body.usability215 [data-action="sound"][aria-pressed="true"]{background:#e1f5eb;color:#17623e}
body.usability215 .kv-menu-dialog [data-action="sound"]>.sound-state215{display:none}
/* Miko uses the same desktop sidebar; its scene fits inside the remaining height. */
body.usability215.miko-active #app{display:block}
body.usability215.miko-active .hub-sidebar{display:block!important}
body.usability215.miko-active .hub-topbar{display:flex!important}
body.usability215.miko-active .app-shell{margin-left:110px!important;width:calc(100% - 110px)!important;min-height:0!important}
body.usability215.miko-active .hub-main{padding:0!important}
body.usability215.miko-active .miko-lesson{height:calc(100dvh - 76px)!important;min-height:420px}
body.usability215.miko-active .hub-sidebar{width:110px!important}
body.usability215.miko-active .miko-head-actions .sound-state215{display:none}
body.usability215 .miko-controls{bottom:0!important}
/* Allow short viewports to scroll instead of clipping actionable content. */
body.usability215[data-page="foundation"]{overflow:auto!important;height:auto!important}
body.usability215[data-page="foundation"] #app,body.usability215[data-page="foundation"] .app-shell{height:auto!important;min-height:100dvh;overflow:visible!important}
body.usability215[data-page="foundation"] .hub-main{overflow:visible!important;height:auto!important;padding-bottom:100px!important}
body.usability215 .f66-game{height:auto!important;min-height:0!important;overflow:visible!important}
body.usability215 .f66-top,body.usability215 .f66-heading{flex-wrap:wrap}
body.usability215 :is(.f66-game button,.f66-locale select,.hub-play-groups button){min-height:48px!important;font-size:16px!important}
body.usability215 .hub-sidebar .sidebar-brand{display:none}
.parent-note215{font-size:15px;margin:8px 0}.parent-note215 summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:700}
.dictionary-video-badge215{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#175ddd;color:white;box-shadow:0 2px 12px #173d7050}
#dictionary-reader190.has-video-panel215 .dictionary-reader-stage190{height:auto;min-height:100%;grid-template-columns:minmax(260px,1fr) minmax(240px,.8fr);grid-template-rows:auto auto auto auto 1fr;align-content:start;max-width:1150px;margin:auto}
.has-video-panel215 .dictionary-reader-head190{grid-column:1/-1}
.word-video215{grid-column:1;grid-row:2/7;min-width:0;display:flex;flex-direction:column;align-items:center;gap:12px}
.word-video-frame215{height:min(49dvh,480px);aspect-ratio:9/16;position:relative;overflow:hidden;background:#edf4ff;border-radius:22px;border:1px solid #dce4ef}
.word-video-cover215,.word-video-cover215 img,.word-video-frame215 video{width:100%;height:100%;object-fit:contain;display:block}
.word-video-play215{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border:3px solid white;border-radius:50%;background:#175ddd;color:white;font-size:30px;cursor:pointer}
.word-video-empty215{position:absolute;bottom:0;left:0;right:0;padding:12px;background:#fffffff0;text-align:center;font-size:14px}
.word-video-example215{font-size:20px;font-weight:700;text-align:center;margin:0;line-height:1.4}
.word-video-clips215{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}
.word-video-clips215 button{padding:10px 8px;min-height:88px;border:2px solid #dce4ef;border-radius:14px;background:#fff;color:#173d70;display:flex;flex-direction:column;gap:6px;font:inherit;cursor:pointer;overflow-wrap:anywhere}
.word-video-clips215 button[aria-pressed="true"]{border-color:#175ddd;background:#edf4ff}
.word-video-clips215 button span,.word-video-clips215 button small{font-size:13px}.word-video-status215{font-size:14px;margin:0;text-align:center}
.has-video-panel215 .dictionary-reader-caption190,.has-video-panel215 .dictionary-reader-audio190,.has-video-panel215 .dictionary-reader-nav190,.has-video-panel215 .dictionary-reader-status190{grid-column:2;align-self:start}
.has-video-panel215 .dictionary-reader-caption190{margin-top:24px}.has-video-panel215 .dictionary-reader-audio190{flex-wrap:wrap}
.has-video-panel215 .dictionary-reader-sound190{width:auto!important;display:flex;gap:6px;padding:8px!important}.dictionary-reader-sound190 span{font-size:13px}
@media(max-width:760px){
 body.usability215:not(.kv-immersive) .hub-sidebar{display:block!important;height:74px!important;padding:0!important;overflow-x:auto;overflow-y:hidden}
 body.usability215 .hub-sidebar .nav{display:flex!important;flex-direction:row!important;width:max-content;min-width:100%;margin:0!important;padding:4px!important}
 body.usability215 .hub-sidebar .nav button{min-width:76px;flex:1;min-height:62px!important}
 body.usability215 .hub-sidebar .nav-label{font-size:13px!important}
 body.usability215:not(.kv-immersive) .hub-main{padding-bottom:96px!important}
 body.usability215.miko-active .app-shell{margin-left:0!important;width:100%!important}
 body.usability215.miko-active .hub-sidebar{width:100%!important}
 body.usability215.miko-active .miko-lesson{height:calc(100dvh - 150px)!important;min-height:400px}
 body.usability215 .kv-scene-tabs a{font-size:12px!important}
 #dictionary-reader190.has-video-panel215 .dictionary-reader-stage190{display:flex;flex-direction:column;height:auto;padding:12px 12px 28px}
 .word-video215{order:2}.has-video-panel215 .dictionary-reader-caption190{order:1;margin:0}.has-video-panel215 .dictionary-reader-audio190{order:3}.has-video-panel215 .dictionary-reader-nav190{order:4}.has-video-panel215 .dictionary-reader-status190{order:5}
 .word-video-frame215{height:38dvh;min-height:220px}.word-video-clips215{grid-template-columns:repeat(2,1fr)}
 .dictionary-reader-head190{flex-wrap:wrap!important;height:auto!important}.word-video215{width:100%}
}
@media(min-width:761px){
 body.usability215.miko-active #app>.hub-sidebar{position:fixed!important;inset:0 auto 0 0!important;height:100dvh!important;width:160px!important;z-index:30;background:#fff}
 body.usability215.miko-active .app-shell{margin:0 0 0 160px!important;width:calc(100% - 160px)!important;height:100dvh!important;display:flex!important;flex-direction:column!important;overflow:hidden}
 body.usability215.miko-active .hub-topbar{height:76px!important;min-height:76px!important;flex:0 0 76px!important;padding:6px 16px!important;box-sizing:border-box}
 body.usability215.miko-active .hub-main{height:calc(100dvh - 76px)!important;min-height:0!important;overflow:auto!important;margin:0!important}
 body.usability215.miko-active .miko-lesson{min-height:360px!important}
 #dictionary-reader190.has-video-panel215 .dictionary-reader-stage190{display:grid!important;grid-template-columns:minmax(260px,1fr) minmax(240px,.8fr)!important;grid-template-rows:auto auto auto auto 1fr!important;height:auto!important;gap:12px 24px!important}
 #dictionary-reader190.has-video-panel215 .dictionary-reader-caption190{grid-row:2!important}
 #dictionary-reader190.has-video-panel215 .dictionary-reader-audio190{grid-row:3!important}
 #dictionary-reader190.has-video-panel215 .dictionary-reader-nav190{grid-row:4!important}
 #dictionary-reader190.has-video-panel215 .dictionary-reader-status190{grid-row:5!important}
}
@media(max-width:760px){body.usability215.miko-active #app>.hub-sidebar{position:fixed!important;inset:auto 0 0!important;z-index:30;background:white}body.usability215.miko-active .hub-topbar{min-height:76px!important;height:76px!important}}
@media(min-width:761px){body.usability215 .f66-color-grid{max-width:650px;gap:16px}body.usability215 .f66-color-card{height:clamp(140px,28dvh,250px)!important;min-height:140px!important;aspect-ratio:auto!important}body.usability215 .f66-board{padding:14px}body.usability215 .f66-heading{margin:8px 0}body.usability215 .f66-question{margin-bottom:10px}}
