/* Responsive behavior owns the last layer; visual depth must never change layout. */
html,body{height:100%;height:100dvh}body{min-width:0}.main,.pages,.page,.learning-main,.learning-aside{min-width:0}.pages{min-height:0}.page{overscroll-behavior-y:contain}.mobile-drawer-close{display:none}
@media(max-width:920px){
 :root{--mobile-nav-height:64px;--topbar:68px;--sidebar:0px}
 body{width:100%;height:100dvh;overflow:hidden;position:relative}.main{flex:1 1 100%;width:100%;height:100%;overflow:hidden}
 .lsb{position:fixed;inset:0 auto 0 0;z-index:500;width:min(310px,86vw);max-width:86vw;height:100%;height:100dvh;transform:translateX(-100%);visibility:hidden;transition:transform .24s ease,visibility .24s;box-shadow:10px 0 40px #10212c30;overflow:hidden}
 .lsb.open{transform:translateX(0);visibility:visible}.lsb .logo-wrap{padding:26px 20px 22px}.lsb .logo{padding-right:25px}.lsb .logo-name{font-size:11px}.lsb .logo-sub{line-height:1.7}.lsb .user-row{padding:21px 22px}.lsb .nav{padding-top:20px;overscroll-behavior:contain}.lsb .nav-item{min-height:48px;font-size:14px}.lsb .prog-box{margin-bottom:max(24px,env(safe-area-inset-bottom))}
 .mobile-drawer-close{display:grid;place-items:center;position:absolute;right:9px;top:12px;width:44px;height:44px;border:0;background:transparent;color:#dce7e3;font-size:27px;font-weight:300;line-height:1;z-index:1}
 .drawer-backdrop{display:block;z-index:450;backdrop-filter:blur(4px);background:#10212c80}.topbar{min-height:var(--topbar);height:var(--topbar);width:100%;padding:0 18px;gap:13px;flex-shrink:0}.hamburger{display:flex;width:44px;height:44px;flex-shrink:0;background:transparent;border:1px solid var(--border)}.topbar-logo{display:flex;min-width:0;flex:1;gap:10px}.topbar-logo .logo-icon{display:none}.topbar-logo-tx{display:block;white-space:nowrap;font-size:12px;letter-spacing:.1px}.breadcrumb{display:none}.topbar-right{margin-left:auto;gap:0;flex-shrink:0}.search{display:none}.icon-btn{height:44px;width:44px;margin:0}.dot{top:10px;right:10px}
 .bottom-nav{display:flex;height:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px));padding:0 8px env(safe-area-inset-bottom,0px);background:#fdfefbf5;backdrop-filter:blur(12px);z-index:300;box-shadow:0 -4px 20px #142b3608}.bn-item{min-height:var(--mobile-nav-height);gap:6px;font-size:11px;position:relative}.bn-item.active{color:var(--navy)}.bn-item.active:before{content:'';position:absolute;left:calc(50% - 16px);right:calc(50% - 16px);top:0;height:2px;background:var(--gold)}.bn-ico svg{width:21px;height:21px}.bn-lbl{font-size:11px}.bn-dot{width:4px;height:4px;top:12px;right:calc(50% - 17px)}
 .page{scrollbar-gutter:auto;scroll-padding:20px 0 calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px) + 24px);-webkit-overflow-scrolling:touch}
 #pg-dashboard,#pg-modules,#pg-calendar,#pg-tasks{padding:28px 24px calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px) + 30px);width:100%;gap:26px}.learning-layout{grid-template-columns:1fr;gap:28px}.learning-main{gap:29px}.dash-hero{padding-bottom:0;align-items:start;gap:16px}.cohort-note{display:none}.dash-hero h1{font-size:34px;line-height:1.16;letter-spacing:-1px}.dash-hero p{font-size:13px;line-height:1.75;max-width:43ch}.dash-hero .section-eyebrow{font-size:9px;line-height:1.6;letter-spacing:1.4px;margin-bottom:12px}.resume-feature{min-width:0;grid-template-columns:43% minmax(0,1fr);box-shadow:0 12px 24px -20px #142b3680,4px 4px 0 #d5dfd2}.resume-image{min-width:0;min-height:295px}.resume-copy{padding:25px 24px;min-width:0}.resume-copy h2{font-size:32px;line-height:1.14;letter-spacing:-.8px}.resume-copy>p{font-size:12px;line-height:1.7;max-width:32ch}.resume-progress{gap:12px}.resume-progress>span{font-size:10px}.resume-button{min-height:46px;font-size:12px}.resume-bottom{gap:16px}.resume-bottom>span{font-size:10px}.feature-label{font-size:8px;line-height:1.6;left:13px;bottom:13px;max-width:calc(100% - 26px);letter-spacing:.7px}
 .stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0 0 24px}.stat,.stat:first-child,.stat:last-child{padding:0 15px}.stat:first-child{padding-left:0}.stat:last-child{padding-right:0}.stat-val{font-size:29px;line-height:1.2}.stat-lbl{font-size:11px;line-height:1.5}.stat-sub{font-size:10px;line-height:1.5}.learning-queue .card-hd{gap:14px;padding-bottom:16px}.learning-queue .card-hd h3{font-size:25px;line-height:1.15}.card-link{min-height:44px;display:inline-flex;align-items:center;font-size:11px;flex-shrink:0}.focus-link{min-height:46px;font-size:12px}.learning-calls .ev-time{font-size:11px}.learning-calls .ev-tag{font-size:10px}.learning-focus>p{font-size:12px}.practice-item{min-height:70px;font-size:12px;gap:13px}.practice-item small{font-size:11px}.practice-box{height:16px;width:16px;margin-top:3px}
 .page-hd{margin-bottom:25px}.page-hd h1{font-size:31px;line-height:1.2}.page-hd p{font-size:13px;line-height:1.75}.mods-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.mod-card{min-width:0}.mod-body{padding:22px}.mod-t{font-size:24px;line-height:1.2}.mod-d{font-size:13px;line-height:1.7}.mod-foot{gap:12px}.mod-cnt,.mprog-pct{font-size:11px}.mod-n,.mod-chip,.mod-sc{font-size:9px}.mod-sc{max-width:calc(100% - 24px)}
 .cal-layout{grid-template-columns:1fr;gap:24px}.cal-top{padding:20px}.cal-nav{width:44px;height:44px;flex-shrink:0;border-width:1px}.cal-month{font-size:23px}.cal-cell{min-height:51px;justify-content:center}.dn{font-size:14px}.cal-dn-cell{font-size:10px}.ev2{padding:20px}.ev2-ttl{font-size:14px;line-height:1.6}.ev2-time{font-size:12px}.etag{font-size:10px;line-height:1.6}.join-btn{min-height:46px;font-size:13px;font-weight:500}
 .tasks-layout{grid-template-columns:1fr;gap:18px}.filter-box{position:static;display:flex;gap:6px;padding:6px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--border2) transparent;max-width:100%;margin:0;overscroll-behavior-x:contain;scroll-snap-type:x proximity}.filter-box .fl{display:none}.fi{flex:0 0 auto;min-height:44px;display:flex;align-items:center;gap:8px;padding:10px 13px;font-size:12px;scroll-snap-align:start}.fi-c{display:inline;font-size:10px;min-width:19px;text-align:center}.tmod-group{margin-bottom:22px}.tmod-hd{padding:20px 17px;gap:12px}.tmod-ttl{font-size:13px;line-height:1.5}.tmod-prog{font-size:11px;white-space:nowrap}.titem{position:relative;padding:20px 17px;gap:14px;align-items:flex-start}.titem>div:last-child{min-width:0;flex:1}.tchk,.lchk{width:22px;height:22px;flex-shrink:0;margin-top:1px;position:relative}.tchk:before,.lchk:before{content:'';position:absolute;inset:-11px;min-width:44px;min-height:44px}.ttl,.lttl{font-size:14px;line-height:1.6}.tdesc{font-size:12px;line-height:1.8;margin-top:7px}.tmeta{flex-wrap:wrap;gap:6px;margin-top:10px}.ttag,.tdue{font-size:10px}.add-row{min-height:58px;padding:13px 17px}.add-input{font-size:16px;min-height:38px;min-width:0}.notes-ta{font-size:16px;min-height:240px}.note-btn{min-height:40px;min-width:40px;font-size:12px}.notes-bar{flex-wrap:wrap;gap:3px}.notes-footer{flex-wrap:wrap;gap:8px}
 #pg-detail{display:none;flex-direction:column;overflow-y:auto;padding-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px) + 26px);width:100%}#pg-detail.active{display:flex}.detail-main{overflow:visible;flex:0 0 auto;min-height:0}.video-wrap{padding:0;flex-shrink:0}.video-inner{width:100%;max-height:none;aspect-ratio:16/9}.lesson-info{padding:25px 24px}.l-title{font-size:28px;line-height:1.2;overflow-wrap:break-word}.l-meta{flex-wrap:wrap;gap:12px;font-size:11px;line-height:1.7}.l-meta-item{font-size:11px}.l-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:23px}.l-actions .btn-gold{grid-column:1/-1}.btn-gold,.btn-outline{min-height:46px;padding:12px 15px;font-size:12px}.lang-row{flex-wrap:wrap;gap:8px;margin-top:20px}.lang-lbl{width:100%;font-size:11px;margin-bottom:1px}.lang-btn{min-height:44px;flex:1;font-size:12px;padding:10px}.tabs{padding:0 18px;gap:7px;overflow-x:auto;flex-shrink:0;scrollbar-width:none;max-width:100%}.tab{font-size:12px;min-height:52px;display:flex;align-items:center;justify-content:center;padding:15px 12px;flex-shrink:0;white-space:nowrap}.tab-pane{padding:24px}.ov-content{font-size:14px;line-height:1.9}.ov-content h3{font-size:21px;line-height:1.4}.ltask{padding:18px 0;gap:14px}.rsb{width:100%;flex:0 0 auto;overflow:visible;border-left:0;border-top:1px solid var(--border)}.rsb-hd{padding:25px 24px}.mod-sel{font-size:16px;min-height:46px;padding:10px 12px;width:100%}.ll-item{padding:18px 24px;min-height:72px}.ll-ttl{font-size:13px;line-height:1.6;white-space:normal;overflow:visible;text-overflow:clip}.ll-dur{font-size:11px}.ll-num{width:28px;height:28px;font-size:11px;flex-shrink:0}.rsb-foot{padding:23px 24px}.res-item{flex-wrap:wrap;gap:13px;padding:18px 16px}.res-item>.btn-outline{margin-left:auto;min-height:44px}.lower-third{padding:12px 16px}.lt-title{font-size:11px;line-height:1.5}.lt-sub{display:none}
 input,select,textarea{scroll-margin-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px) + 24px)}
}
@media(max-width:600px){
 #pg-dashboard,#pg-modules,#pg-calendar,#pg-tasks{padding:23px 20px calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px) + 30px)}.topbar{padding-inline:15px;gap:11px}.topbar-logo-tx{font-size:12px}.dash-hero h1{font-size:29px;line-height:1.17}.dash-hero p{font-size:12px;max-width:35ch}.dash-hero .section-eyebrow{font-size:8px;letter-spacing:1.25px;gap:8px;margin-bottom:11px}.dash-hero .section-eyebrow:before{width:15px}.learning-main{gap:27px}.resume-feature{grid-template-columns:1fr}.resume-image{min-height:0;aspect-ratio:16/8.5}.resume-image>img{object-position:50% 40%}.feature-label{font-size:7px;padding:6px 8px;bottom:12px;left:12px}.resume-copy{padding:24px 22px 25px}.resume-copy .section-eyebrow{font-size:8px;letter-spacing:1.3px;line-height:1.5;margin-bottom:12px}.resume-copy h2{font-size:30px;line-height:1.13;letter-spacing:-.7px}.resume-copy>p{font-size:12px;line-height:1.7;margin-top:11px;max-width:none}.resume-progress{margin-top:19px}.resume-bottom{margin-top:20px;gap:16px}.resume-copy:before{font-size:190px;bottom:-42px}.resume-copy:after{width:30px;height:30px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 0;padding-bottom:25px}.stat,.stat:first-child,.stat:last-child{padding:0 19px}.stat:nth-child(odd){padding-left:0;border-right:1px solid var(--border)}.stat:nth-child(even){padding-right:0;border-right:0}.stat-val{font-size:29px;letter-spacing:-1.3px}.learning-queue .card-hd h3{font-size:23px}.learning-queue .card-bd{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:82%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding:0 4px 16px 0;max-width:100%}.learning-queue .cw-thumb{aspect-ratio:16/10}.learning-queue .cw-item>div:last-child:not(.cw-thumb){padding:18px 16px}.learning-queue .cw-ttl{font-size:14px;line-height:1.5}.learning-queue .cw-dur{font-size:11px}.cover-title{font-size:30px}.cover-kicker{font-size:7px}.queue-cover{padding:21px 17px}.learning-aside{display:flex;flex-direction:column;gap:25px}.learning-focus{display:block;padding:24px}.learning-focus .section-eyebrow{font-size:8px}.focus-head h2{font-size:14px;max-width:none}.focus-number{font-size:45px}.focus-meter{margin-top:18px}.learning-focus>p{font-size:12px;margin-top:12px}.learning-calls{padding:23px 19px 0}.learning-calls .card-hd{flex-direction:column;align-items:flex-start;gap:3px}.learning-calls .card-hd h3{font-size:24px}.learning-calls .card-link{min-height:35px}.learning-calls .ev-item{gap:14px;min-height:105px}.learning-calls .ev-ttl{font-size:13px;line-height:1.55}.learning-calls .ev-time{font-size:11px;line-height:1.7}.learning-calls .ev-tag{font-size:10px}.practice-card{padding:25px 21px 18px}.practice-card h2{font-size:29px;line-height:1.1}.practice-card>.section-eyebrow{font-size:8px}.practice-item{font-size:12px}.mods-grid{grid-template-columns:1fr;gap:23px}.mod-t{font-size:25px}.mod-d{font-size:13px}.mod-body{padding:23px}.lesson-info{padding:24px 20px}.tab-pane{padding:24px 20px}.tabs{padding-inline:12px}.l-title{font-size:27px}.cal-top{padding:16px;gap:8px}.cal-month{font-size:22px}.cal-grid{padding:0 6px 12px}.cal-dn{padding:12px 8px 0}.cal-cell{min-height:46px}.cal-cell.today .dn{height:30px;width:30px}.filter-box{margin-bottom:0}.tmod-hd{padding:18px 15px;gap:10px}.tmod-ttl{font-size:12px}.tmod-prog{font-size:10px}.titem{padding:20px 15px;gap:13px}.ttl{font-size:13px}.tdesc{font-size:12px}.tchk{margin-top:0}.res-item>div[style*="flex:1"]{min-width:0;flex-basis:calc(100% - 65px)!important}.res-item .btn-outline{width:100%;margin:0}.rsb-hd,.rsb-foot{padding-inline:20px}.ll-item{padding-inline:20px}
}
@media(max-width:360px){#pg-dashboard,#pg-modules,#pg-calendar,#pg-tasks{padding-inline:16px}.topbar{padding-inline:12px;gap:10px}.topbar-logo-tx{font-size:11px}.dash-hero h1{font-size:27px}.resume-copy{padding:23px 19px}.resume-copy h2{font-size:28px}.resume-bottom{gap:12px}.resume-button{padding-inline:12px;gap:17px}.resume-bottom>span{font-size:9px}.learning-queue .card-hd h3{font-size:21px}.card-link{font-size:10px}.cal-month{font-size:20px}.tmod-ico{display:none}}
@media(prefers-reduced-motion:reduce){.lsb{transition:none}.bottom-nav{backdrop-filter:none}}
.titem[hidden],.tmod-group[hidden],.add-row[hidden],.tasks-empty[hidden]{display:none!important}.tasks-empty{border:1px solid var(--border);padding:28px;font-size:14px;line-height:1.7;background:var(--surface);color:var(--text2)}
@media(max-width:920px){.keyboard-open .bottom-nav{display:none}.keyboard-open .page{scroll-padding-bottom:25px}.keyboard-open #pg-dashboard,.keyboard-open #pg-modules,.keyboard-open #pg-calendar,.keyboard-open #pg-tasks,.keyboard-open #pg-detail{padding-bottom:30px}}
.mobile-lesson-shortcut{display:none}
@media(max-width:920px){.page-hd{margin-bottom:0}.mobile-lesson-shortcut{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:44px;padding:8px 12px;border:1px solid var(--border);background:var(--surface);color:var(--text2);font-size:12px;margin-top:2px}.l-meta .mobile-lesson-shortcut{flex-basis:100%;max-width:190px}.rsb{scroll-margin-top:16px}}
@media(max-width:920px){.page textarea.notes-ta{font-size:16px;line-height:1.8;min-height:240px;padding:18px}.page input.add-input,.page select.mod-sel{font-size:16px}}
@media(max-width:920px){
 :root{--phone-gutter:24px}.topbar{height:calc(var(--topbar) + env(safe-area-inset-top,0px));min-height:calc(var(--topbar) + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px);padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px))}
 #pg-dashboard,#pg-modules,#pg-calendar,#pg-tasks{padding-left:max(var(--phone-gutter),env(safe-area-inset-left,0px));padding-right:max(var(--phone-gutter),env(safe-area-inset-right,0px))}.bottom-nav{padding-left:max(8px,env(safe-area-inset-left,0px));padding-right:max(8px,env(safe-area-inset-right,0px))}.lsb{padding-top:env(safe-area-inset-top,0px)}.mobile-drawer-close{top:calc(12px + env(safe-area-inset-top,0px))}.notes-box:focus-within{border-color:var(--gold)}.page textarea.notes-ta:focus-visible{outline:2px solid var(--gold-d);outline-offset:-2px}
}
@media(max-width:600px){:root{--phone-gutter:20px}}
@media(max-width:360px){:root{--phone-gutter:16px}}
