/* SET V65 unified mobile design. Existing course data and navigation preserved. */
:root{--set-bg:#0e1b17;--set-panel:#192d25;--set-panel-alt:#213b2f;--set-gold:#dfc28a;--set-text:#f7f1e4;--set-muted:#b5c8ba;--set-line:rgba(223,194,138,.22);color-scheme:dark}
html{width:100%;min-height:100%;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{min-width:0;min-height:100dvh;overflow-x:hidden!important;background:var(--set-bg)!important;color:var(--set-text)!important}
*,*::before,*::after{box-sizing:border-box}
.app-container,.main-content,.page{min-width:0;max-width:100%}
.main-content{background:var(--set-bg)!important}
.page:not(#dashboard){color:var(--set-text);background:transparent!important}
.page:not(#dashboard) h1,.page:not(#dashboard) h2,.page:not(#dashboard) h3,.page:not(#dashboard) h4{color:var(--set-text)!important}
.page:not(#dashboard) p,.page:not(#dashboard) label,.page:not(#dashboard) small{overflow-wrap:anywhere}
.page:not(#dashboard) :is(.card,.panel,.lesson-card,.module-card,.stat-card,.practice-card,.section-card){border-color:var(--set-line);}
.page:not(#dashboard) :is(input,select,textarea){max-width:100%;font-size:16px;min-height:42px}
.page:not(#dashboard) button{max-width:100%;min-height:40px;touch-action:manipulation}
.page:not(#dashboard) img,.page:not(#dashboard) video,.page:not(#dashboard) canvas{max-width:100%;height:auto}
.page:not(#dashboard) :is(table,pre){max-width:100%;overflow-x:auto}
.set64-home{width:100%;max-width:560px;padding-left:clamp(12px,4vw,20px);padding-right:clamp(12px,4vw,20px)}
.set64-grid button{transition:transform .15s ease,border-color .15s ease}
.set64-grid button:active{transform:scale(.98)}
.set64-grid button:focus-visible,.set64-hero button:focus-visible{outline:3px solid #fff0c4;outline-offset:3px}
.set64-goal,.set64-hero{min-width:0}
.set64-goal>*,.set64-hero>div{min-width:0}
@media(max-width:700px){
 html,body{height:auto!important;min-height:100dvh!important}
 body{overflow-y:auto!important;overscroll-behavior-y:contain}
 .app-container{min-height:100dvh;height:auto!important;overflow:visible!important}
 .main-content{height:auto!important;min-height:100dvh;overflow:visible!important;padding-bottom:calc(96px + env(safe-area-inset-bottom))!important}
 .page.active{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding-bottom:24px}
 .set64-home{padding-bottom:30px}
 .set64-welcome h1{font-size:clamp(26px,7vw,35px)}
 .set64-hero{min-height:205px}
 .set64-globe{width:185px;right:-65px}
 .set64-grid{gap:10px}
 .set64-grid button{min-height:128px;padding:12px}
 .set64-goal{flex-wrap:wrap}
 .mobile-bottom-nav{position:fixed!important;bottom:0!important;left:0!important;right:0!important;z-index:1000;padding-bottom:env(safe-area-inset-bottom)!important;background:#10221df5!important;border-top:1px solid var(--set-line)!important}
 .page:not(#dashboard){padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
}
@media(max-width:360px){.set64-grid button{min-height:118px;padding:10px}.set64-grid b{font-size:13px}.set64-brand b{font-size:22px}}
@media(prefers-reduced-motion:reduce){.set64-globe{animation:none!important}*{scroll-behavior:auto!important}}
