:root{--sidebar:286px}.sidebar{padding:28px 16px 20px;overflow-y:auto}.sidebar-brand-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:27px}.sidebar-brand-row .brand{margin:0;padding:0 12px;gap:10px}.sidebar-menu{display:flex;flex-direction:column;flex:1;min-width:0}.sidebar .primary-nav{display:grid;gap:4px;margin:0}.sidebar .nav-link{display:flex;align-items:center;gap:10px;min-height:43px;padding:12px;font-size:15px;line-height:1.5;text-align:left;width:100%;min-width:0}.sidebar .nav-link>span{min-width:0;flex:1}.sidebar .nav-link svg{width:18px;height:18px;flex:none}.sidebar .nav-link.section-active{color:var(--blue)}.nav-section{min-width:0}.nav-section summary{list-style:none;cursor:pointer;border-radius:11px;user-select:none}.nav-section summary::-webkit-details-marker{display:none}.nav-section summary:hover{background:var(--surface-alt)}.nav-section summary>svg:last-child{width:12px;height:12px;margin-left:auto;transition:transform .16s}.nav-section[open] summary>svg:last-child{transform:rotate(90deg)}.subnav{margin:2px 0 10px 20px;padding-left:15px;border-left:1px solid var(--line);display:grid;gap:3px;min-width:0}.subnav-link,.subnav-overview{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;color:var(--muted);padding:10px;border-radius:8px;line-height:1.6;min-width:0}.subnav-link span{min-width:0;overflow-wrap:break-word}.subnav-link small{font-size:11px;white-space:nowrap;color:var(--muted)}.subnav-link:hover,.subnav-overview:hover{background:var(--surface-alt);color:var(--ink)}.subnav-link.active{color:var(--blue);background:var(--blue-soft)}.subnav-overview{font-size:14px;color:var(--blue)}.sidebar .sidebar-bottom{margin-top:auto;padding-top:30px}.sidebar .utility-nav{display:grid;gap:3px}.sidebar .local-note{font-size:10px;margin:18px 12px 0;gap:7px}.mobile-menu-button{display:none}.sidebar-brand-row .mobile-theme{display:none}.page-back{display:inline-flex;align-items:center;gap:7px;margin-bottom:21px;font-size:12px}
.school-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}.class-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:27px;color:var(--ink)}.class-card:hover{border-color:var(--blue)}.class-card>strong{font-weight:550;font-size:27px;letter-spacing:-.7px}.class-card>p{font-size:13px;color:var(--muted);line-height:1.8;margin:13px 0 24px;flex:1}.class-card>span{display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--blue);font-size:12px}.class-content .page-description{max-width:760px}.course-intro{display:flex;justify-content:space-between;gap:25px;align-items:center;margin:28px 0 20px}.course-intro h2{font-size:20px}.course-intro p{font-size:12px;color:var(--muted);line-height:1.8;margin-top:8px;max-width:620px}.course-intro>span{white-space:nowrap;color:var(--muted);font-size:11px}.class-content .catalog-tools{margin-bottom:18px}.course-map{border:1px solid var(--line);border-radius:19px;background:var(--surface);overflow:hidden}.course-chapter{border-bottom:1px solid var(--line)}.course-chapter:last-child{border-bottom:0}.course-chapter h2{font-size:17px;padding:20px 24px;background:var(--surface-alt);line-height:1.5}.course-steps{list-style:none;padding:0;margin:0}.course-steps li+li{border-top:1px solid var(--line)}.course-step{display:grid;grid-template-columns:35px minmax(0,1fr) auto 16px;align-items:center;gap:15px;padding:20px 24px;width:100%;border:0;background:transparent;text-align:left}.course-step:hover{background:var(--bg)}.step-number{display:grid;place-items:center;width:31px;height:31px;background:var(--bg);border-radius:8px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.step-copy{display:grid;gap:5px;min-width:0}.step-copy strong{font-size:15px;font-weight:530;line-height:1.5}.step-copy>span{font-size:11px;color:var(--muted);line-height:1.7}.step-count{font-size:11px;white-space:nowrap;color:var(--muted)}.course-step>svg{color:var(--muted)}
.selection-grid{margin-top:26px}.selection-card .topic-copy h2{font-size:17px;line-height:1.5;margin:0 22px 8px 0;letter-spacing:-.3px}.selection-card .topic-copy p{max-width:none}.selection-card .topic-meta{display:block;margin-top:16px}.route-note{font-size:12px;line-height:1.9;color:var(--muted);max-width:850px;margin:18px 0 25px}.exam-reference{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px 19px;background:var(--surface);border:1px solid var(--line);border-radius:12px;font-size:12px;color:var(--muted)}.exam-reference .text-link{font-size:12px;white-space:nowrap}.exam-task-list{display:grid;gap:10px}.exam-task{display:grid;grid-template-columns:65px minmax(0,1fr) auto 16px;align-items:center;gap:19px;padding:23px;background:var(--surface);border:1px solid var(--line);border-radius:15px;text-align:left;width:100%}.exam-task:hover{border-color:var(--blue)}.exam-task-number{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--blue);background:var(--blue-soft);border-radius:11px;min-height:65px;font-size:26px;font-weight:500;font-variant-numeric:tabular-nums}.exam-task-number small{font-size:9px;font-weight:400}.exam-task-copy{display:grid;gap:7px;min-width:0}.exam-task-copy strong{font-size:16px;font-weight:530;line-height:1.5}.exam-task-copy>span{font-size:12px;color:var(--muted);line-height:1.8}.exam-task-count{font-size:11px;color:var(--muted);white-space:nowrap}.exam-task>svg{color:var(--muted)}
.topic-gateway h3{font-size:16px;margin:25px 0 13px}.topic-mode-choices{display:grid;gap:10px}.topic-mode-choice{display:flex;align-items:center;gap:15px;width:100%;border:1px solid var(--line);border-radius:13px;padding:19px;background:var(--surface);text-align:left;color:var(--ink);min-width:0}.topic-mode-choice:hover{border-color:var(--blue);background:var(--bg)}.topic-mode-choice>svg:first-child{color:var(--blue);flex:none}.topic-mode-choice>span{display:grid;gap:6px;flex:1;min-width:0}.topic-mode-choice strong{font-size:15px;font-weight:550}.topic-mode-choice>span>span{font-size:12px;color:var(--muted);line-height:1.7}.topic-mode-choice>svg:last-child{color:var(--muted);flex:none}.topic-mode-choice.training-choice{border-color:#b9cbef;background:var(--blue-soft)}.training-back{display:flex;gap:6px;align-items:center;font-size:11px;margin:0 0 23px}.study-heading{align-items:flex-start}.study-heading>div{min-width:0;flex:1}.study-heading .page-description{max-width:720px}.study-heading>.btn{white-space:nowrap;flex:none}.study-tools{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:30px 0 12px}.study-tools h2{font-size:19px}.study-tools .search-wrap{max-width:280px;width:100%;margin:0}.study-count{font-size:12px;color:var(--muted);margin:18px 0 15px}.study-row-number{color:var(--muted);font-size:11px;min-width:18px;align-self:flex-start;margin-top:7px;font-variant-numeric:tabular-nums}.study-rows .bank-row{align-items:flex-start}.study-end{margin:28px 0 0;padding-top:24px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.study-end>span{font-size:13px;color:var(--muted)}
@media(max-width:1200px) and (min-width:701px){:root{--sidebar:270px}.sidebar{padding-left:12px;padding-right:12px}.sidebar .nav-link{font-size:14px;padding:11px 10px;gap:9px}.study-heading>.btn{margin-top:20px}.course-step{padding:18px;gap:12px}.exam-task{padding:20px;gap:14px}.exam-task-copy strong{font-size:15px}}
@media(max-width:700px){.sidebar-menu{max-height:calc(100dvh - 88px);overflow-y:auto;scrollbar-width:thin}.topic-gateway .topic-symbol small,.selection-card .topic-symbol small{font-size:9px}.topic-gateway .dialog-symbol{display:none}.topic-gateway .dialog-title{font-size:23px}.topic-gateway .detail-meta{margin:14px 0 18px}.topic-gateway h3{margin:18px 0 11px}.topic-gateway .topic-mode-choice{padding:14px 12px}}
@media(max-width:700px){.sidebar{display:block;position:relative;height:auto;padding:15px 16px;border-right:0;border-bottom:1px solid var(--line);overflow:visible}.sidebar-brand-row{margin:0;gap:8px}.sidebar-brand-row .brand{font-size:21px;padding:0;gap:8px;flex:1}.sidebar-brand-row .brand img{width:30px;height:30px}.mobile-menu-button{display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:9px;min-height:33px;padding:5px 9px;background:var(--surface);font-size:11px}.sidebar-brand-row .mobile-theme{position:static;display:grid;width:30px;height:32px;margin:0}.sidebar-menu{display:none;margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.sidebar[data-menu-open=true] .sidebar-menu{display:flex}.sidebar .primary-nav{display:grid;grid-template-columns:1fr;gap:3px;grid-column:auto;margin:0}.sidebar .nav-link{justify-content:flex-start;min-height:43px;padding:11px 12px;font-size:15px;gap:10px}.sidebar .sidebar-bottom{display:block;margin:16px 0 0;padding:12px 0 0;border-top:1px solid var(--line)}.sidebar-bottom>[data-action=theme]{display:none}.sidebar .utility-nav{display:grid;grid-template-columns:1fr 1fr;border:0;padding:0;margin:0}.sidebar .local-note{margin:12px 12px 0;font-size:10px}.subnav-link{font-size:14px}.subnav-overview{font-size:14px}.subnav-link small{font-size:11px}.school-grid{grid-template-columns:1fr;gap:13px;margin-top:22px}.class-card{padding:23px}.class-card>strong{font-size:25px}.class-card>p{font-size:12px;margin-bottom:20px}.class-card>span{font-size:11px}.page-back{margin-bottom:18px;font-size:11px}.course-intro{gap:15px;align-items:flex-start;margin-top:24px}.course-intro h2{font-size:18px}.course-intro p{font-size:11px}.course-intro>span{font-size:10px;margin-top:4px}.course-map{border-radius:14px}.course-chapter h2{font-size:15px;padding:17px 16px}.course-step{grid-template-columns:27px minmax(0,1fr) 13px;gap:9px 12px;padding:17px 15px}.step-number{width:27px;height:27px;font-size:10px;align-self:start;margin-top:2px}.step-copy strong{font-size:14px}.step-copy>span{font-size:10px}.step-count{grid-column:2;grid-row:2;font-size:10px}.course-step>svg{grid-column:3;grid-row:1;width:13px}.course-intro>div{min-width:0}.selection-card .topic-copy h2{font-size:15px}.exam-reference{padding:13px 15px;font-size:10px;gap:12px}.exam-reference .text-link{font-size:10px}.route-note{font-size:11px;line-height:1.8;margin:16px 0 21px}.exam-task{grid-template-columns:48px minmax(0,1fr) 12px;gap:10px 13px;padding:17px 15px}.exam-task-number{min-height:53px;font-size:23px;align-self:start}.exam-task-number small{font-size:8px}.exam-task-copy strong{font-size:14px}.exam-task-copy>span{font-size:11px;line-height:1.7}.exam-task-count{grid-column:2;grid-row:2;font-size:10px}.exam-task>svg{grid-column:3;grid-row:1;width:12px}.topic-mode-choice{padding:17px 14px;gap:12px}.topic-mode-choice strong{font-size:14px}.topic-mode-choice>span>span{font-size:11px}.topic-gateway h3{font-size:15px}.study-heading>.btn{width:100%;margin-top:20px;font-size:12px}.study-tools{display:block;margin-top:25px}.study-tools h2{font-size:18px}.study-tools .search-wrap{max-width:none;margin-top:16px}.study-row-number{font-size:10px;min-width:11px;margin-top:6px}.study-rows .bank-row{gap:8px;padding:17px 13px}.study-end{align-items:stretch;flex-direction:column;gap:14px}.study-end>span{font-size:12px}.study-end .btn{font-size:12px}.study-count{font-size:11px}.class-content .catalog-tools{margin-bottom:15px}}

/* Legible navigation at both levels. */
.sidebar .primary-nav,.sidebar .sidebar-bottom{flex-shrink:0}.sidebar .primary-nav{overflow:visible}
.sidebar-brand-row .brand{font-size:27px}.sidebar .nav-link{white-space:normal}.sidebar .materials-nav .subnav button{font-size:14px;padding:10px;overflow-wrap:break-word}.sidebar .subnav-link,.sidebar .subnav-overview{white-space:normal}.sidebar .subnav-link small{flex:none}.breadcrumb{font-size:14px}.continue-text strong{font-size:16px}.continue-text p{font-size:14px;line-height:1.6}.continue-banner{padding:23px 26px;gap:20px}
@media(max-width:700px){.sidebar-brand-row .brand{font-size:24px}.continue-banner{padding:20px;gap:14px}.continue-text strong{font-size:15px}.continue-text p{font-size:13px}.sidebar .utility-nav{grid-template-columns:1fr}.breadcrumb{font-size:12px}}
