.mobile-app-header,.mobile-app-nav,.mobile-app-home,.mobile-lab-picker-button{display:none}
.mobile-app-menu{width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 48px);padding:24px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:22px;overflow:auto}
.mobile-app-menu::backdrop{background:#08090dd9;backdrop-filter:blur(6px)}
.mobile-menu-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.mobile-menu-heading h2{font-size:22px;letter-spacing:-.6px;margin:0}.mobile-menu-actions{display:grid;gap:10px;margin:22px 0}.mobile-menu-actions button{min-height:48px;text-align:left;font-size:14px}.mobile-app-menu .quiet{min-height:44px}.mobile-app-menu .subtle{font-size:12px!important}
@media(max-width:760px){
 html{scroll-padding-top:calc(var(--mobile-header-height,70px) + 12px)}
 body.mobile-app-ready{background:var(--bg);padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
 body.mobile-app-ready>header{display:none}
 .mobile-app-header{display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:50;min-height:68px;padding:calc(10px + env(safe-area-inset-top,0px)) 16px 10px;background:var(--glass);backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}
 .mobile-app-identity{display:grid;gap:2px;min-width:0;flex:1;line-height:1.3}.mobile-app-identity strong{font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.3px}.mobile-app-identity span{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.6}
 .mobile-app-icon-button{display:grid;place-items:center;flex:0 0 44px;min-height:44px;width:44px;padding:10px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:13px}.mobile-app-icon-button svg{width:21px;height:21px}
 .mobile-app-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;position:fixed;z-index:60;bottom:0;left:0;right:0;margin:0;padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px));gap:4px;background:var(--glass);backdrop-filter:blur(20px);border-top:1px solid var(--line)}
 .mobile-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:7px 4px;min-height:56px;border:1px solid transparent;border-radius:13px;background:transparent;color:var(--muted);font-size:10px;line-height:1.3;font-weight:500;position:relative}.mobile-nav-item svg{height:22px;width:22px}.mobile-nav-item[aria-current=page]{color:var(--gold);background:var(--accent-soft);border-color:var(--line)}
 body.mobile-app-ready main{padding:0 16px;width:100%;max-width:none}
 body.mobile-app-ready main>*{display:none!important}
 body.mobile-app-ready[data-mobile-screen=home] main>#mobile-app-home,body.mobile-app-ready[data-mobile-screen=explore] main>#discover,body.mobile-app-ready[data-mobile-screen=lab] main>#lab,body.mobile-app-ready[data-mobile-screen=notes] main>#lab,body.mobile-app-ready[data-mobile-screen=map] main>#roadmap,body.mobile-app-ready[data-mobile-screen=sources] main>#sources,body.mobile-app-ready[data-mobile-screen=picker] main>#lab{display:block!important}
 body.mobile-app-ready>footer{display:none}
 .mobile-app-home{padding:28px 0 16px}.mobile-home-welcome .eyebrow{font-size:9px;letter-spacing:1.8px;margin:0 0 10px}.mobile-home-welcome h1{font-family:inherit;font-size:33px;line-height:1.13;letter-spacing:-1.3px;font-weight:600;margin:0;max-width:290px}.mobile-home-welcome>p:last-child{font-size:13px;line-height:1.7;color:var(--muted);max-width:310px;margin:13px 0 0}
 .mobile-home-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:25px 0;gap:12px}.mobile-home-summary>span{font-size:9px;line-height:1.6;color:var(--muted);padding-left:12px;border-left:1px solid var(--line)}.mobile-home-summary>span:first-child{border-left:0;padding-left:0}.mobile-home-summary strong{display:block;font-size:19px;font-weight:550;line-height:1.5;color:var(--ink)}
 .mobile-continue-card{display:grid;gap:12px;text-align:left;width:100%;padding:22px;border:1px solid #51465f;border-radius:21px;color:var(--ink);background:linear-gradient(135deg,#a98dce12,transparent 80%),var(--surface);font-weight:500;box-shadow:inset 0 1px 0 #ffffff09}.mobile-card-eyebrow{font-size:8px;letter-spacing:1.5px;color:var(--gold)}.mobile-continue-card>strong{font-size:23px;font-weight:550;letter-spacing:-.6px;line-height:1.25;overflow-wrap:anywhere}.mobile-card-footer{display:flex;justify-content:space-between;align-items:center;font-size:11px;line-height:1.5;color:var(--muted);border-top:1px solid var(--line);padding-top:13px}.mobile-card-footer svg{width:21px;height:21px;color:var(--gold)}
 .mobile-home-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 29px}.mobile-action-card{display:grid;gap:10px;padding:18px 14px;text-align:left;color:var(--ink);border:1px solid var(--line);border-radius:17px;background:var(--surface);font-weight:500;min-width:0}.mobile-action-card svg{width:24px;height:24px;color:var(--gold)}.mobile-action-card strong{font-size:13px;font-weight:600;line-height:1.45}.mobile-action-card span{font-size:10px;color:var(--muted);line-height:1.6}
 .mobile-home-quick h2{font-size:19px;letter-spacing:-.5px;margin-bottom:6px}.mobile-home-quick>p{font-size:11px;color:var(--muted);line-height:1.65;margin:0 0 16px}.mobile-quick-list{display:grid;gap:9px}.mobile-quick-card{display:flex;align-items:center;gap:13px;width:100%;min-height:78px;padding:14px;text-align:left;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--ink)}.mobile-quick-card>svg:first-child{width:23px;height:23px;flex:0 0 23px;color:var(--gold)}.mobile-quick-card>svg:last-child{width:18px;height:18px;flex:0 0 18px;color:var(--muted);margin-left:auto}.mobile-quick-card>span{display:grid;gap:3px;min-width:0}.mobile-quick-card strong{font-size:13px;font-weight:500;line-height:1.5}.mobile-quick-card small{font-size:10px;color:var(--muted);line-height:1.5;font-weight:400}
 .mobile-home-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:22px}.mobile-offline-status{display:flex;align-items:center;gap:6px;font-size:9px;color:var(--muted);line-height:1.6}.mobile-offline-status:before{content:'';width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#b7c5b4}.mobile-offline-status.is-offline:before{background:#dbc198}.mobile-home-meta button{min-height:44px;font-size:10px;padding:9px 12px;white-space:nowrap}.mobile-app-install-slot{margin-top:18px}.mobile-app-install-slot:empty{display:none}
 body.mobile-app-ready .section{padding:24px 0 14px;border-bottom:0}.section-heading h2{font-size:25px;letter-spacing:-.8px}.course-discover .section-heading{display:block;margin-bottom:20px}.course-discover .connection-status{margin-top:12px;max-width:100%;white-space:normal}.course-tools{display:grid;gap:16px}.course-grades{justify-content:stretch}.course-grades button{flex:1;min-height:44px;font-size:11px;padding:8px 10px}.discovery-search{font-size:11px}.discovery-search input{width:100%;font-size:14px;min-height:48px}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:19px}.course-card{padding:13px;min-height:242px;border-radius:17px}.course-card h3{font-size:13px;line-height:1.5}.course-index{font-size:8px;letter-spacing:.9px}.course-card .course-count{font-size:9px;padding-top:10px;line-height:1.6}.course-card .course-art{min-height:93px}.session-note{display:block;font-size:10px;margin-top:20px}.session-note>span{display:block;margin-bottom:6px}.session-note>span:last-child kbd{display:none}
 body.mobile-app-ready #lab{padding-top:16px}.mobile-app-ready #lab>.section-heading{display:none}.mobile-app-ready #lab .library-picker,.mobile-app-ready #lab .library-shortcuts,.mobile-app-ready #lab .practical-filters,.mobile-app-ready #lab .lesson-list{display:none!important}.mobile-app-ready #lab .workspace{display:block!important;background:transparent;box-shadow:none;border:0;border-radius:0}.mobile-app-ready #lab .lesson-main{min-height:0;padding:0}.mobile-app-ready .lesson-topbar{display:grid;gap:13px;padding-bottom:15px;margin-bottom:18px}.mobile-app-ready .tabs{display:flex;width:100%;padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:14px}.mobile-app-ready .tabs button{flex:1;min-height:44px;padding:9px 12px;font-size:12px;border-radius:9px}.mobile-app-ready .lesson-actions{justify-content:flex-end;gap:7px}.mobile-app-ready .lesson-actions button{min-height:44px;font-size:11px;padding:8px 14px}.mobile-app-ready #focus-mode{display:none}.mobile-app-ready .lab-guide{margin:12px 0 18px}.mobile-app-ready .lab-guide b{font-size:19px}.mobile-app-ready .lab-guide p{font-size:12px;line-height:1.7}.mobile-app-ready .sim-workbench{display:grid;grid-template-columns:1fr;gap:18px}.mobile-app-ready .sim-control-panel{padding:18px;border-radius:17px}.mobile-app-ready .sim-control-panel h4{font-size:15px}.mobile-app-ready .control-hint{font-size:11px!important}.mobile-app-ready .sim-controls{grid-template-columns:1fr;gap:17px}.mobile-app-ready .controls label,.mobile-app-ready .sim-controls label{font-size:12px}.mobile-app-ready input[type=range]{min-height:44px}.mobile-app-ready select,.mobile-app-ready input[type=number],.mobile-app-ready input[type=text]{min-height:48px;font-size:14px}.mobile-app-ready .sim-presets button{min-height:44px;font-size:11px;padding:9px 12px}.mobile-app-ready .sim-defaults{min-height:44px;font-size:11px}.mobile-app-ready .sim-transport button{min-height:44px;font-size:12px}.mobile-app-ready .sim-transport .rate-control{min-width:80px}.mobile-app-ready .sim-rate{min-height:44px;font-size:12px}.mobile-app-ready .sim-transport .time-control{font-size:12px}.mobile-app-ready .experiment-toolbar button{min-height:44px;font-size:10px;padding:8px 12px}.mobile-app-ready .sim-mobile-hint{font-size:11px!important}.mobile-app-ready .sim-stage{margin:0;padding:12px 4px 4px;border-radius:16px}.mobile-app-ready .sim-stage svg{min-width:0;min-height:0}.mobile-app-ready .diagram-enlarged .sim-stage svg{min-width:720px}.mobile-app-ready .stage-top{font-size:7px;letter-spacing:.7px}.mobile-app-ready .sim-readouts{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px 0}.mobile-app-ready .sim-readouts strong{font-size:19px}.mobile-app-ready .sim-readouts small{font-size:8px}.mobile-app-ready .lab-navigation button{min-height:48px;max-width:50%;font-size:11px;padding:9px 12px}.mobile-app-ready .model-details summary,.mobile-app-ready .learning-context summary{min-height:44px;font-size:12px;line-height:1.6;display:flex;align-items:center}.mobile-app-ready .answers button{min-height:58px;font-size:13px}.mobile-app-ready #reveal{min-height:44px}.mobile-app-ready .apparatus-parts button,.mobile-app-ready .apparatus-tabs button,.mobile-app-ready .apparatus-toolbar button{min-height:44px}.mobile-app-ready .lesson-main p{font-size:14px}
 body.mobile-app-ready[data-mobile-screen=notes] #lab .lesson-topbar,body.mobile-app-ready[data-mobile-screen=notes] #lab .lab-navigation,body.mobile-app-ready[data-mobile-screen=notes] #explain>:not(#topic-notes){display:none!important}.mobile-app-ready #topic-notes{scroll-margin-top:calc(var(--mobile-header-height,68px) + 12px)}
 .mobile-app-ready .mobile-lab-picker-button{display:flex;align-items:center;gap:9px;width:100%;min-height:44px;padding:8px 0 15px;border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:500}.mobile-lab-picker-button svg{width:18px;height:18px;color:var(--gold)}.mobile-lab-picker-button svg:last-child{margin-left:auto}
 .mobile-app-ready[data-mobile-screen=picker] #lab .lesson-main{display:none!important}.mobile-app-ready[data-mobile-screen=picker] #lab .library-picker{display:grid!important;grid-template-columns:1fr;padding:16px;gap:16px}.mobile-app-ready[data-mobile-screen=picker] #lab .library-picker label{font-size:12px}.mobile-app-ready[data-mobile-screen=picker] #lab .library-picker input{font-size:14px;min-height:48px}.mobile-app-ready[data-mobile-screen=picker] #lab .library-shortcuts,.mobile-app-ready[data-mobile-screen=picker] #lab .practical-filters:not([hidden]){display:flex!important;flex-wrap:wrap;gap:8px}.mobile-app-ready[data-mobile-screen=picker] #lab .library-shortcuts button,.mobile-app-ready[data-mobile-screen=picker] #lab .practical-filters button{min-height:44px;font-size:11px;padding:8px 12px}.mobile-app-ready[data-mobile-screen=picker] #lab .lesson-list{display:block!important;position:static;max-height:none;overflow:visible;padding:16px 12px;border:1px solid var(--line);border-radius:16px}.mobile-app-ready[data-mobile-screen=picker] #lab .lesson-list .eyebrow{display:block}.mobile-app-ready[data-mobile-screen=picker] #lab .lesson-list h3{display:block;font-size:15px;margin-bottom:16px}.mobile-app-ready[data-mobile-screen=picker] #lab-list{max-height:none;overflow:visible}.mobile-app-ready[data-mobile-screen=picker] #lab .lesson-list .lesson{display:block;width:100%;min-height:66px;padding:13px 10px;font-size:13px}.mobile-app-ready[data-mobile-screen=picker] #lab .lesson-list .lesson small{display:block;font-size:10px!important;margin-left:0;padding-left:25px}.mobile-app-ready[data-mobile-screen=picker] #lab .lesson-list .aside-note,.mobile-app-ready[data-mobile-screen=picker] #lab .lesson-list>a{display:none}
 body.mobile-app-ready.focus-mode main>#lab{display:block!important}.mobile-app-ready.focus-mode[data-mobile-screen=home] main>#lab,.mobile-app-ready.focus-mode[data-mobile-screen=explore] main>#lab{display:none!important}
 .mobile-app-ready .update-banner{bottom:calc(84px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 24px);left:12px;right:12px;transform:none;white-space:normal;min-height:48px}
 .mobile-app-ready .filters .grade{min-height:44px}.mobile-app-ready .search-label input{min-height:48px}.mobile-app-ready .practicals summary{min-height:44px}.mobile-app-ready #source-links a{min-height:44px}.mobile-app-ready .concept a{padding:12px 0;min-height:44px}
 .mobile-app-ready .apparatus-tools button,.mobile-app-ready .apparatus-view-tabs button,.mobile-app-ready .apparatus-actions button{min-height:44px}
}
@media(max-width:350px){.mobile-app-header{gap:9px;padding-left:12px;padding-right:12px}.mobile-app-identity strong{font-size:14px}.mobile-home-welcome h1{font-size:30px}.mobile-home-summary{gap:8px}.mobile-home-summary>span{padding-left:8px;font-size:8px}.mobile-home-summary strong{font-size:17px}.mobile-app-ready .course-grid{gap:9px}.mobile-app-ready .course-card{padding:11px}.mobile-app-ready .course-card h3{font-size:12px}.mobile-app-ready .course-grades button{font-size:10px;padding:8px 7px}.mobile-action-card{padding:16px 12px}.mobile-action-card strong{font-size:12px}}
