/* Identical navigation geometry for the studio and classroom shells. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.sidebar{width:270px;padding:28px 24px 22px}.sidebar .brand{min-height:52px;padding:0 4px;gap:14px;text-decoration:none;color:#fff}.sidebar .brand-mark{width:52px;height:52px;flex:0 0 52px;border-radius:16px;font-size:29px;transform:none}.sidebar .brand strong{font-size:21px;line-height:1.2}.sidebar .brand small{margin-top:5px;font-size:10px;line-height:1.2}.sidebar nav{margin-top:30px;flex:1;min-height:0;overflow-y:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.nav-section{display:block}.nav-section+.nav-section{margin-top:16px}.sidebar nav .nav-section>p{margin:0 12px 6px;color:#81aaa0;font-size:10px;line-height:1.4;letter-spacing:.15em}.sidebar nav .nav-link{width:100%;height:41px;min-height:41px;border:0;border-left:3px solid transparent;border-radius:0 11px 11px 0;color:#bed5cf;display:flex;align-items:center;gap:12px;padding:0 12px;margin:2px 0;font-size:13px;line-height:1;font-weight:700;text-decoration:none;white-space:nowrap;box-sizing:border-box;transition:background .15s,color .15s}.sidebar nav .nav-link:hover{background:rgba(255,255,255,.08);color:#fff}.sidebar nav .nav-link.active{border-left-color:#f2aa84;background:rgba(255,255,255,.14);color:#fff}.nav-icon{width:22px;flex:0 0 22px;text-align:center;font-size:17px;line-height:1}.nav-label{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis}.nav-badge{min-width:22px;flex:0 0 auto;padding:4px 6px;border-radius:99px;background:rgba(255,255,255,.13);color:#d7ebe5;font-size:9px;line-height:1;text-align:center}.nav-badge.attention{background:#f2aa84;color:#173f37}.nav-scrim,.mobile-nav{display:none}.topbar{height:83px;min-height:83px}.side-progress{margin-top:14px;padding-block:15px}.mobile-nav a{color:var(--muted);text-decoration:none;display:grid;place-items:center;align-content:center;gap:3px;font-size:8px}.mobile-nav a span,.mobile-nav button span{font-size:17px}.mobile-nav a.active,.mobile-nav button.active{color:#10745f}
@media(min-width:761px){.app-shell .sidebar{width:270px}.app-shell main{margin-left:270px}.shell{grid-template-columns:270px 1fr}}
@media(max-height:820px) and (min-width:761px){.side-progress{display:none}.sidebar{padding-top:22px}.sidebar nav{margin-top:22px}.user-card{padding-top:13px}.nav-section+.nav-section{margin-top:11px}.sidebar nav .nav-link{height:38px;min-height:38px}}
@media(max-width:760px){.app-shell main{margin-left:0}.app-shell .sidebar,.shell .sidebar{display:flex;position:fixed;inset:0 auto 0 -282px;z-index:30;width:270px;transition:left .2s ease;box-shadow:0 0 45px rgba(7,35,30,.28)}.app-shell.menu-open .sidebar,.shell.menu-open .sidebar{left:0}.nav-scrim{position:fixed;inset:0;z-index:29;border:0;background:rgba(7,35,30,.45)}.app-shell.menu-open .nav-scrim,.shell.menu-open .nav-scrim{display:block}.shell{display:block;padding-bottom:65px}.topbar{height:68px;min-height:68px}.mobile-menu{display:block}.mobile-nav{position:fixed;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;inset:auto 0 0;height:65px;background:rgba(255,255,255,.97);border-top:1px solid var(--line);z-index:40}.mobile-nav[data-role="student"]{grid-template-columns:repeat(6,1fr)}.mobile-nav a,.mobile-nav button{min-width:0;border:0;background:none}.mobile-nav button{color:var(--muted);display:grid;place-items:center;align-content:center;gap:3px;font-size:8px}.sidebar nav{margin-top:26px}.side-progress{display:none}}
