/* Portrait access layer. Gameplay timing and hit-line coordinates stay unchanged. */
.portrait-navigation{display:none}
@media(max-width:600px){
 html{scroll-padding-top:12px}body{overflow-wrap:break-word}
 .app-shell,.creative-playing .app-shell{padding:10px max(10px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-bottom));max-width:100%}
 .topbar{gap:10px;margin-bottom:12px;padding:0;min-width:0}.topbar .brand{padding:9px 12px;min-height:48px}
 .topbar .brand-title{font-size:24px}.top-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:8px;margin:0}
 .top-actions .gem-bank{grid-column:1;min-height:48px;justify-content:center;min-width:0}
 .top-actions .top-button{min-width:0;font-size:12px;padding:8px;min-height:48px;white-space:normal}
 .top-actions #theme-toggle{grid-column:1/3}.top-actions #settings-btn{grid-column:3}
 #section-nav{padding:12px;border-radius:16px;margin-bottom:16px;overflow:visible}
 #section-nav>button{display:none}.portrait-navigation{display:flex;align-items:center;gap:12px;width:100%;font-size:14px;font-weight:800;color:var(--ui-text)}
 .portrait-navigation select{flex:1;min-width:0;width:100%;min-height:50px;font:inherit;font-size:16px;padding:10px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-soft);color:var(--ui-text);touch-action:manipulation}
 .dashboard-hero{padding:20px 16px;border-radius:20px}.dashboard-hero h1{font-size:clamp(27px,8vw,38px);line-height:1.13}
 .dashboard-modules,.dashboard-modules.workshop{grid-template-columns:1fr;gap:14px}.dashboard-module-copy{padding:18px}.dashboard-module-copy>strong{font-size:22px}.dashboard-module-copy>span{font-size:14px;min-height:0;line-height:1.5}.dashboard-module-copy>b{min-height:46px;display:flex;align-items:center;font-size:14px}.dashboard-module-copy>small{font-size:11px}
 .dashboard-module-art,.dashboard-module:is(.road,.arrows,.bucket) .dashboard-module-art{height:170px}.dashboard-workshop{padding:12px}.dashboard-group-heading{flex-wrap:wrap;gap:10px}
 .creative-title{padding:15px;flex-wrap:wrap;gap:12px;min-width:0}.creative-title h1{font-size:27px}.creative-title button{min-height:48px}
 :is(.activity-controls,.piano-toolbar,.project-toolbar,.live-host-controls,.creation-tools){gap:10px}
 :is(.activity-controls,.piano-toolbar,.project-toolbar,.live-host-controls) button{min-height:48px;flex:1 1 120px;font-size:14px}
 :is(.piano-toolbar,.cue-rehearsal,.trait-selectors) select{font-size:16px;min-height:48px;max-width:100%}
 .sky-landing.piano-console{padding:10px;border-radius:18px}.piano-stage-area{padding:0 3px 8px;grid-template-columns:minmax(0,1fr)}
 .sky-landing .piano-hud{flex-wrap:wrap;gap:10px}.sky-landing .piano-hud strong{font-size:17px}.sky-landing .piano-hud small{font-size:12px}
 .sky-landing .piano-white{height:126px;padding:8px 0;gap:6px}.sky-landing .piano-white>span{font-size:clamp(13px,4vw,20px)}.sky-landing .piano-white>b{font-size:11px;padding:3px 5px}.sky-landing .piano-white>small{font-size:8px}
 .sky-landing .piano-sky{height:clamp(260px,42svh,390px)}.sky-landing .piano-toolbar{justify-content:flex-start}.sky-landing .piano-toolbar label{min-height:48px;flex-wrap:wrap;font-size:14px;gap:8px}.sky-landing .piano-toolbar select{font-size:16px;max-width:100%;min-height:48px}
 .piano-missions{padding:16px!important}.piano-level{min-width:0}.piano-help{font-size:14px!important}
 .arcade-heading{gap:10px;flex-wrap:wrap}.arcade-heading h1{font-size:30px}.arcade-modebar{flex-wrap:wrap}.arcade-modebar label{min-height:44px;font-size:13px}
 .arcade-stage{height:clamp(330px,48svh,470px)}.arcade-bottom{padding:12px 8px;gap:16px}.arcade-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:10px}
 .arcade-controls .arcade-pad{width:100%;min-width:0;height:72px}.arcade-pad small{font-size:10px}.arcade-transport{width:100%;justify-content:center;flex-wrap:wrap;gap:10px}.arcade-transport button{min-height:48px;flex:1 1 90px;font-size:13px}
 .bucket-stage{height:clamp(360px,49svh,470px)}.bucket-pads{gap:8px}.bucket-pads button{min-width:0;min-height:78px}.bucket-pads span{font-size:11px}.bucket-transport{gap:10px;flex-wrap:wrap}.bucket-transport button{min-height:48px;flex:1 1 110px;font-size:13px}
 .body-stage{grid-template-columns:1fr;padding:16px;gap:12px}.body-avatar{height:190px}.character-selector{gap:8px}.character-selector button{padding:8px;font-size:14px}.character-selector img{width:60px;height:65px}.visual-choices{gap:8px}.visual-choices button{min-height:64px}.body-console{padding:12px}.body-rhythm{gap:8px}.activity-tap{min-height:88px;min-width:110px}
 .part-selector{flex-wrap:wrap;gap:8px}.part-selector button{min-width:56px;flex:1;min-height:54px}.part-selector>span{width:100%;margin-left:0;font-size:14px}.ensemble-play{grid-template-columns:1fr;gap:12px}.ensemble-console{padding:14px}.ensemble-track>strong{min-width:42px}.activity-pad-area{padding:12px}.story-caption{max-width:calc(100% - 24px);left:12px;right:12px;padding:12px}.story-caption p{font-size:14px}
 .live-entry,.live-concepts{grid-template-columns:1fr!important}.live-shell{padding:14px}.live-room-head{flex-wrap:wrap;gap:12px}.live-answers{grid-template-columns:1fr!important}.live-answers button{min-height:58px;font-size:16px}
 .project-intro,.project-explore,.project-teacher{padding:15px}.project-toolbar{flex-wrap:wrap}.project-stage{height:clamp(280px,43svh,400px)}.project-photo-tools{flex-wrap:wrap;gap:10px}.project-photo-tools :is(a,button){min-height:48px}.project-photo-caption{font-size:14px}
 .bits-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bits-tools>label{grid-column:1/-1}.bits-tools select{min-width:0;max-width:75%;width:75%}.bits-tools button{min-width:0;font-size:13px;padding:10px 6px}.bits-tools #bits-expand{font-size:24px}
 .bits-library{max-height:220px}.bits-lab .bits-library button{min-height:82px}.bits-lab{--workbench-height:clamp(300px,42svh,420px)}.bits-inspector,.bits-lab.full-workbench .bits-inspector{max-height:none;overflow:visible}.bits-control input[type=range]{min-height:48px}.bits-controls{gap:14px}.bits-status #bits-save-state{margin-left:0;width:100%}
 dialog{max-width:calc(100vw - 20px)!important;max-height:calc(100svh - 24px)!important;overflow:auto;padding:18px!important;border-radius:20px!important}
 dialog .close{min-width:48px;min-height:48px}.skins{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-card{min-width:0}.shop-card button{min-height:48px;width:100%}
 :is(input,select,textarea){font-size:16px}.saved-creation{flex-wrap:wrap}.saved-creation button{flex:1;min-height:48px}.creation-tools #code-form{width:100%;margin-left:0}.creation-tools #code-form input{width:100%;min-width:0}.creation-tools #code-form>div{min-width:0}
}
@media(max-width:360px){.portrait-navigation{flex-direction:column;align-items:stretch;gap:6px}.top-actions{gap:6px}.arcade-controls{gap:6px}.bits-library .bits-catalog{grid-template-columns:1fr}.sky-landing.piano-console{padding:6px}}
