/* Phone and tablet polish. Full navigation and open signup forms remain the no-JS fallback. */
.ss-mobile-nav{display:contents}
.ss-menu-toggle[hidden]{display:none!important}
.ss-menu-toggle{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:80px;padding:8px 10px;border:1px solid #bfd2ce;border-radius:10px;background:#f2f7f3;color:#163e45;font:inherit;font-size:14px;font-weight:750;cursor:pointer}
.ss-menu-toggle svg{width:18px;height:18px;flex:none}
.ss-alert-disclosure>summary{list-style:none;pointer-events:none}
.ss-alert-disclosure>summary::-webkit-details-marker{display:none}
.ss-mobile-about>summary{display:none}
@media(max-width:900px){
 html{scroll-padding-top:0;-webkit-text-size-adjust:100%;text-size-adjust:100%}
 body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
 .ss-mobile-ready .ss-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;padding:8px 16px;padding-top:calc(8px + env(safe-area-inset-top));min-height:60px;align-items:center}
 .ss-mobile-ready .ss-header .ss-brand{font-size:24px;min-width:0;min-height:44px;display:inline-flex;align-items:center;gap:8px;justify-self:start}
 .ss-mobile-ready .ss-header .ss-mark{width:30px;height:30px;font-size:23px;flex:none}
 .ss-mobile-ready .ss-header .ss-mobile-nav{display:none}
 .ss-mobile-ready .ss-header[data-menu-open]{max-height:calc(100dvh - 16px);overflow-y:auto;overscroll-behavior:contain}
 .ss-mobile-ready .ss-header[data-menu-open] .ss-mobile-nav{display:grid;grid-column:1/-1;gap:12px;margin-top:10px;padding:10px 0 4px;border-top:1px solid #d8e4df}
 .ss-mobile-ready .ss-header .ss-mobile-nav nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;order:0;width:100%;margin:0;font-size:15px}
 .ss-mobile-ready .ss-header .ss-mobile-nav nav a{display:flex;align-items:center;min-height:44px;padding:7px 9px;border-radius:8px;line-height:1.35}
 .ss-mobile-ready .ss-header .ss-mobile-nav nav a:hover{background:#edf5ef}
 .ss-mobile-ready .ss-header .search{width:100%;max-width:none;margin:0;min-height:46px;font-size:16px;padding:10px 12px}
 .ss-mobile-ready .ss-header .search::placeholder{color:#4e6c71}
 .ss-mobile-ready .ss-header .lesson-progress{width:100%;margin:0;padding:0 9px 6px}
 .ss-mobile-ready .ss-header .lesson-progress>span::before{content:'Reading progress · '}
 .ss-lesson-alerts{max-width:none}
 .ss-lesson-alerts .ss-lesson-alerts-kicker{display:none}
 .ss-alert-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;cursor:pointer;pointer-events:auto;list-style:none}
 .ss-alert-disclosure>summary::after{content:'+';font-size:24px;line-height:1;flex:none;color:#215b63}
 .ss-alert-disclosure[open]>summary::after{content:'−'}
 .ss-lesson-alerts .ss-alert-disclosure>summary h2{font-size:16px;line-height:1.35;letter-spacing:0;margin:0;max-width:none}
 .ss-alert-disclosure[open]>form{margin-top:12px}
 .ss-mobile-about{margin-top:6px}
 .ss-mobile-about>summary{display:flex;align-items:center;gap:8px;min-height:44px;font-size:14px;font-weight:750;color:#245c63;cursor:pointer;list-style:none}
 .ss-mobile-about>summary::after{content:'+';font-size:20px}
 .ss-mobile-about[open]>summary::after{content:'−'}
 .ss-mobile-about>summary::-webkit-details-marker{display:none}
 .ss-mobile-about .ss-hero-description{padding-bottom:10px}
 .ss-lesson-alerts-links a,.ss-email-page a:not(.button),.ss-policy-links a,.ss-footer nav a{min-height:44px;display:inline-flex;align-items:center}
 .ss-lesson-alerts-consent,.ss-email-consent{min-height:44px;align-items:center}
 .ss-lesson-alerts-row input,.ss-email-row input,.ss-request-card textarea,.ss-info-page input,.ss-info-page textarea,.ss-info-page select{font-size:16px;min-height:44px}
 .filter,.availability-filter,.reset-button,.quiz-submit,.complete-button,.ss-story-actions a,.ss-story-explore{min-height:44px}
 .quiz-card .answer{min-height:52px;padding:12px;gap:12px;font-size:16px;line-height:1.45}
 .quiz-card .answer input{width:20px;height:20px;flex:none;margin:2px 0 0}
 .quiz-card .quiz-question legend{font-size:17px;line-height:1.5}
 .ss-printable,.ss-story,.ss-story-copy,.ss-info-page{min-width:0}
 .ss-story-copy p,.ss-info-page p{overflow-wrap:break-word}
 #explore,#engineer-challenges,#quiz,#topics,#available-labs,#about,#grown-ups,#progress,#lesson-updates,#request-a-lesson,.wh-lab,.ss-reading .ss-simple-story,:target{scroll-margin-top:calc(var(--ss-header-height,64px) + 14px)}
}
@media(max-width:650px){
 body:not([data-topic-page]) .ss-hero{padding:22px 16px 28px;gap:15px}
 .ss-hero-copy h1{font-size:clamp(32px,9vw,38px);line-height:1.08;margin:8px 0 14px;letter-spacing:-.045em}
 .ss-hero-copy>.ss-eyebrow{font-size:10px;margin:0 0 8px}
 .ss-hero-question{font-size:16px;line-height:1.5;margin-bottom:0}
 .hp-preview-card{padding:16px 16px 14px;border-radius:18px}
 .hp-heading h2{font-size:25px}
 .hp-intro{font-size:14px;margin-top:6px}
 .hp-engine{padding:7px 0;grid-template-columns:94px minmax(0,1fr);gap:10px}
 .hp-engine-art{width:94px;height:112px}
 .hp-engine-copy h3{font-size:19px;margin-bottom:5px}
 .hp-engine-copy>p:not(.hp-small-label){font-size:14px;line-height:1.4}
 .hp-pedal{padding-top:10px}
 .hp-power-help{display:none}
 .hp-preview .hp-explore{margin-top:12px;min-height:48px;padding:12px 16px}
 .ss-brand-promise{margin:0 16px 22px;padding:18px 0;gap:14px}
 body:not([data-topic-page]) .topics-section{padding-top:20px}
 .section-heading{gap:14px}
 .section-heading h2{font-size:26px;line-height:1.2}
 .section-heading .filters{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 .filters .filter{margin:0;padding:8px;font-size:13px}
 .catalog-availability{flex-wrap:wrap;gap:6px}
 .availability-filter{font-size:12px;padding:8px 10px}
 .ss-email-card,.ss-request-card{margin:22px 16px;padding:20px}
 .ss-email-card h2,.ss-request-card h2{font-size:26px;line-height:1.2}
 body[data-topic-page] .article-shell{padding-top:16px}
 body[data-topic-page] .article-back{min-height:44px;display:inline-flex;align-items:center;margin-bottom:4px}
 .ss-lesson-top{gap:12px;margin-bottom:14px}
 body[data-topic-page] .ss-lesson-top .article-hero{padding-top:4px}
 .ss-lesson-top .article-hero>.eyebrow{font-size:11px;line-height:1.5;margin:8px 0 12px;letter-spacing:.1em}
 .ss-lesson-top .article-hero h1{font-size:clamp(30px,8.7vw,36px);line-height:1.12}
 .ss-lesson-top .article-title-row{gap:10px;align-items:flex-start}
 .ss-lesson-top .article-title-row>div{min-width:0}
 .ss-lesson-top .lesson-icon{font-size:32px}
 .ss-lesson-top .article-hero .dek,.ss-lesson-top .article-hero .lesson-lead{font-size:16px;line-height:1.5;margin:12px 0}
 .ss-lesson-alerts{padding:7px 14px;border-radius:12px}
 .ss-alert-disclosure[open]{padding-bottom:7px}
 .game-surprise-note{margin-top:12px;margin-bottom:18px;font-size:14px}
 .quiz-card{padding:20px 16px}
 .ss-reading .ss-reading-section{padding:24px 0}
 .ss-reading .ss-simple-story{padding:20px 18px}
 .ss-printable{padding-top:24px}
 .ss-printable .ss-lesson-top{gap:16px;margin-bottom:22px}
 .ss-story{padding:20px 16px;gap:24px}
 .ss-story-cover{width:min(100%,240px);justify-self:center}
 .ss-story-copy .ss-story-actions{gap:10px}
 .ss-story-copy .ss-story-actions a{width:100%;min-height:48px}
 .ss-footer{padding:26px 18px calc(24px + env(safe-area-inset-bottom))}
}
@media(max-width:360px){
 .ss-mobile-ready .ss-header{padding-left:12px;padding-right:12px}
 .ss-mobile-ready .ss-header .ss-brand{font-size:23px}
 .hp-preview-card{padding:14px 12px}
 .hp-engine{grid-template-columns:78px minmax(0,1fr);gap:8px}
 .hp-engine-art{width:78px;height:110px}
 .ss-lesson-top .article-hero h1{font-size:30px}
 .ss-lesson-top .lesson-icon{font-size:29px}
}
/* Full-screen learning workspaces keep their existing animation and game controls. */
@media(pointer:coarse){
 .wh-lab .ss-simulation-screen{padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-left:env(safe-area-inset-left)}
 .ss-simulation-screen .ss-screen-bar button,.ss-simulation-screen .ss-controls-done{min-height:44px;min-width:44px}
 .wh-lab .ss-simulation-screen .wh-phase{min-height:44px}
 .wh-lab .ss-simulation-screen .wh-toolbar .wh-button{min-height:44px}
 .wh-lab .ss-simulation-screen input[type=range]{min-height:44px}
 .wh-lab .ss-simulation-screen select{min-height:44px}
}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.ss-mobile-nav{scroll-behavior:auto}}
@media print{.ss-menu-toggle{display:none!important}.ss-mobile-nav{display:contents!important}.ss-mobile-about>summary{display:none}}
