.sidebar{position:fixed;z-index:50;left:0;top:0;bottom:0;width:48px;background:var(--nav-blue);color:white;box-shadow:5px 8px 25px #005eb822;overflow:hidden;display:flex;flex-direction:column;transition:width .13s ease}.sidebar:is(.open,.pinned,:focus-within){width:270px;overflow-y:auto}.sidebar-top{height:52px;min-height:52px;display:flex;align-items:center;position:relative}.brand{display:flex;align-items:center;white-space:nowrap;gap:15px;text-decoration:none;font-size:16px}.brand img{width:20px;height:20px;margin-left:16px}.menu-label,.menu-arrow,.pin-button{display:none}.sidebar:is(.open,.pinned,:focus-within) :is(.menu-label,.menu-arrow,.pin-button){display:inline}.pin-button{position:absolute;right:12px;top:16px;background:none;color:#cce7ff;padding:3px}.sidebar.pinned .pin-button{transform:rotate(35deg);color:white}.menu-toggle{display:flex;align-items:center;width:100%;gap:0;background:transparent;color:inherit;text-align:left;min-height:42px;white-space:nowrap;padding:0}.menu-toggle:hover{background:var(--blue-hover)}.menu-icon{width:48px;flex-shrink:0;text-align:center}.menu-label{white-space:normal}.menu-arrow{margin-left:auto;padding:0 12px}.menu-toggle[aria-expanded=true] .menu-arrow{transform:rotate(180deg)}.menu-children{display:none;padding:3px 0 8px;background:#004f9e}.sidebar:is(.open,.pinned,:focus-within) .menu-children{display:block}.menu-children a{display:block;line-height:1.4;text-decoration:none;padding:8px 16px 8px 48px}.menu-children a:hover,.menu-children a.active{background:#005eb8}.system-menu{margin-top:auto;padding-top:24px}.skip-link{position:fixed;left:60px;top:-100px;z-index:100;background:white;color:#005eb8;padding:12px}.skip-link:focus{top:8px}.mobile-menu,.mobile-close{display:none}.course-banner{min-height:196px;background-color:var(--blue-soft);background-size:cover;background-position:center;position:relative;padding:29px 20px 0;display:flex;flex-direction:column}.course-banner h1{font-size:44px;line-height:1.17;font-weight:400;text-shadow:2px 2px 3px #005eb82b;margin:0 0 22px}.course-banner h1 a{text-decoration:none}.school-banner{background-position:center center}.banner-navigation{margin-top:auto}.home-tab{margin-bottom:12px}.home-tab a{display:inline-block;text-decoration:none;background:var(--button);color:white;font-size:10px;padding:5px 13px}.header-tabs{display:flex;gap:4px;align-items:end;flex-wrap:wrap}.header-tabs>a{background:var(--button);color:white;text-decoration:none;padding:6px 8px;box-shadow:0 2px 3px #005eb829;line-height:15px}.header-tabs>a.active{background:#005eb8}.header-tabs>a:hover{background:var(--blue-hover)}.header-tabs .planning-tab{margin-left:auto}.profile-menu{position:absolute;right:0;top:16px;z-index:20;color:#fff;font-size:12px;box-shadow:1px 2px 4px #005eb829;border-radius:3px;background:var(--nav-blue)}.profile-menu summary{display:flex;align-items:center;padding:3px 5px;gap:5px;list-style:none}.profile-menu summary::-webkit-details-marker{display:none}.profile-menu img{width:24px;height:24px;border-radius:50%;background:white}.profile-menu>div{padding:5px 0}.profile-menu a{display:block;text-decoration:none;padding:10px 15px}.profile-menu a:hover{background:var(--blue-hover)}.step-blocks{display:flex;flex-wrap:wrap;column-gap:4px;row-gap:4px;margin-bottom:12px}.block-title{display:block;font-size:10px;line-height:1.1;font-weight:bold;text-decoration:none}.step-block>div{display:flex;gap:1px}.step-button{background:#fff;box-shadow:1px 2px 3px #005eb829;font-size:8px;min-width:20px;padding:2px 4px;text-decoration:none;text-align:center}.step-button.active,.step-button:hover{background:#005eb8;color:#fff}.step-button.active{border-radius:3px}.breadcrumbs{display:flex;gap:5px;flex-wrap:wrap;color:var(--muted);font-style:italic;font-size:11px;margin:5px 0 8px}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}
@media(min-width:1100px){body:has(.sidebar.pinned) #main-content{margin-left:270px}}
@media(max-width:758px){:root{--rail:0px}.sidebar{width:0;box-shadow:none}.sidebar:is(.open,.pinned,:focus-within){width:280px;box-shadow:4px 0 24px #005eb829}.sidebar .pin-button{display:none!important}.mobile-close{display:block;position:absolute;right:9px;top:11px}.mobile-menu{display:block;position:absolute;top:16px;left:10px;z-index:30;background:var(--nav-blue);color:white;padding:8px;border-radius:3px}.course-banner{padding:64px 16px 0;min-height:215px}.course-banner h1{font-size:30px;margin-bottom:20px}.profile-menu{top:16px}.header-tabs{gap:4px}.header-tabs>a{font-size:11px;padding:5px}.step-blocks{gap:7px}.step-button{min-width:23px;font-size:10px}.school-banner{background-position:50% 20%}.step-blocks+.banner-navigation{margin-top:8px}}
.banner-actions{position:absolute;top:14px;right:18px;z-index:20;display:flex;align-items:center;gap:9px}.logbook-button{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:11px 16px;background:#005eb8;color:white;border:1px solid #004b98;border-radius:10px;box-shadow:0 3px 9px #003d7a26;text-decoration:none;font-size:13px;font-weight:bold;transition:background .15s,box-shadow .15s}.logbook-button:hover,.logbook-button.active{background:#00458b;box-shadow:0 4px 12px #003d7a38}.logbook-button>.fa-arrow-right{font-size:10px;margin-left:4px}.banner-actions .profile-menu{position:relative;top:auto;right:auto;box-shadow:none;border-radius:9px}.banner-actions .profile-menu summary{min-height:42px;gap:7px;padding:10px}.banner-actions .profile-menu>div{position:absolute;right:0;top:calc(100% + 8px);min-width:170px;background:var(--nav-blue);border-radius:8px;box-shadow:0 5px 16px #003d7a33;overflow:hidden}.banner-actions .profile-menu button{width:100%;text-align:left;padding:10px 15px;background:none;color:white}.banner-actions .profile-menu button:hover{background:var(--blue-hover)}.course-banner{padding-top:76px}@media(max-width:758px){.banner-actions{right:12px;top:12px;gap:7px}.logbook-button{min-height:40px;padding:10px 12px;font-size:12px}.course-banner{padding-top:76px}}@media print{.banner-actions{display:none!important}}
.sidebar .primary-menu{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.sidebar .system-menu{flex-shrink:0;margin-top:auto;padding-top:8px}.sidebar:is(.open,.pinned,:focus-within){overflow-y:hidden}.sidebar-account{border-top:1px solid #ffffff30;padding:10px 0;background:#004e99}.account-toggle{min-height:48px}.account-avatar{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;margin:0 8px;border-radius:10px;background:#e7f3ff;color:#00529d;font-size:15px;font-weight:bold}.account-identity{min-width:0;flex:1;text-align:left}.account-identity strong{display:block;font-size:13px;font-weight:bold;overflow-wrap:anywhere}.account-identity small{display:block;margin-top:4px;color:#cce5ff;font-size:11px}.account-actions{padding:6px 10px 0;background:transparent}.account-actions a,.account-actions button{display:block;width:100%;padding:11px 14px!important;border-radius:7px;text-align:left;font-size:13px;text-decoration:none;color:white;background:transparent}.account-actions a:hover,.account-actions button:hover{background:#ffffff1c}.account-actions button i{margin-right:7px}.account-toggle[aria-expanded=true] .menu-arrow{transform:rotate(180deg)}.sidebar-account .menu-arrow{font-size:10px}.sidebar:has(.account-toggle:focus-visible){width:270px}@media(max-width:758px){.sidebar:has(.account-toggle:focus-visible){width:280px}}
