/* Shared navigation, study-first home and compact mobile records. */
:root{--mobile-nav-height:64px;--admin-toolbar-top:84px}
[hidden]{display:none!important}
.topbar{height:68px;position:sticky;top:0;z-index:20;padding:0 30px;background:#ffffffef;backdrop-filter:blur(14px)}
.content{max-width:1500px;padding:28px 30px 42px}
.sidebar{padding-top:24px;gap:0}
.sidebar-nav{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#40566b transparent;padding-bottom:16px}
.brand-home{border:0;background:none;text-align:left;cursor:pointer;width:100%;flex-shrink:0;padding-bottom:24px}
.brand-home:hover{color:#e1edff}
.nav-label{margin-top:6px}
.nav-group{margin-top:12px;border-top:1px solid #ffffff10;padding-top:7px}
.nav-group>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:10px 13px;min-height:44px;font-size:12px;font-weight:600;color:#a0b2c5;cursor:pointer;border-radius:7px}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-group>summary:hover{background:#24384d;color:white}
.nav-group>summary span{font-size:17px;transition:transform .15s}
.nav-group[open]>summary span{transform:rotate(180deg)}
.nav-group-items .nav-item{padding-top:9px;padding-bottom:9px}
.sidebar-foot{flex-shrink:0;padding-top:14px;font-size:10px}
.site-home-link{display:block;color:#adbed1;margin-top:6px;font-size:12px}
.nav-backdrop,.mobile-bottom-nav{display:none}
.breadcrumb .text-btn{color:var(--muted);font-size:12px}
.page-heading .eyebrow{display:none}
.page-heading{margin-bottom:23px}
.page-heading h1{font-size:26px}
.page-heading p{margin-top:6px}
.dashboard-shortcuts{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;margin-bottom:23px}
.dashboard-shortcut{display:flex;align-items:center;gap:13px;text-align:left;min-height:116px;padding:22px;border:1px solid var(--border);color:var(--ink);font:inherit;transition:background .15s,border-color .15s,transform .15s}
.dashboard-shortcut:hover{background:#fafdff;border-color:#a9bee9;transform:translateY(-2px)}
.shortcut-icon{width:45px;height:45px;display:grid;place-items:center;background:#edf3ff;color:var(--blue);border-radius:12px;flex-shrink:0}
.shortcut-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}
.shortcut-copy strong{font-size:18px}
.shortcut-copy small{color:var(--muted);font-size:12px;line-height:1.6}
.main-shortcut{background:#285fe4;color:white;border-color:#285fe4}
.main-shortcut .shortcut-copy small{color:#e2ebff}
.main-shortcut .shortcut-icon{background:#ffffff20;color:white}
.main-shortcut:hover{background:#204fcc;border-color:#204fcc}
.dashboard-layout{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(290px,1fr);gap:22px;align-items:start}
.quick-bank-list{display:grid;gap:0}
.quick-bank{display:flex;align-items:center;gap:13px;padding:18px 0;border-bottom:1px solid var(--border)}
.quick-bank:first-child{padding-top:4px}
.quick-bank:last-child{border-bottom:0}
.quick-bank .bank-symbol{height:39px;width:39px;flex-shrink:0}
.quick-bank h3{font-size:15px;overflow-wrap:anywhere}
.quick-bank p{font-size:12px;color:var(--muted);margin-top:4px}
.dashboard-secondary-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;padding-top:20px;border-top:1px solid var(--border);align-items:center}
.dashboard-secondary-actions .text-btn{margin-left:auto}
.learning-overview .section-title{margin-bottom:14px}
.overview-score{display:flex;flex-direction:column;gap:1px;padding:5px 0 18px}
.overview-score>strong{font-size:38px;letter-spacing:-1px;line-height:1.3;color:var(--teal)}
.overview-score small{font-size:20px;margin-left:3px}
.overview-score>span{color:var(--muted);font-size:12px}
.overview-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:17px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:20px}
.overview-facts>div{display:flex;flex-direction:column;gap:2px}
.overview-facts strong{font-size:20px}
.overview-facts span{font-size:11px;color:var(--muted)}
.learning-overview>.btn{width:100%}
.distribution-details>summary,.dashboard-job-details>summary{cursor:pointer;font-size:14px;font-weight:600;min-height:24px}
.distribution-details>summary span,.dashboard-job-details>summary span{float:right;color:var(--muted);font-weight:400;font-size:12px}
.distribution-details>p{font-size:12px}
.dashboard-job-details{margin-top:20px;border-top:1px solid var(--border);padding-top:16px}
.dashboard-admin .section-title{margin-bottom:15px}
.dashboard-admin .section-title p{font-size:12px}
.resume-card{border-color:#c8d9fb;background:#f9fbff}
@media(max-width:1100px){.dashboard-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-shortcut{padding:17px;gap:10px;flex-wrap:wrap}.dashboard-shortcut>.shortcut-copy{flex-basis:calc(100% - 56px)}.dashboard-shortcut>svg{display:none}.shortcut-copy strong{font-size:16px}.dashboard-layout{grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr);gap:18px}.dashboard-secondary-actions .text-btn{margin-left:0}}
@media(max-width:900px){.dashboard-layout{grid-template-columns:1fr}.dashboard-layout>aside{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.dashboard-layout>aside>.mt{margin-top:0}}
@media(min-width:761px){.mobile-close{display:none}.nav-backdrop{display:none!important}.sidebar{z-index:31}.sidebar-foot{margin-top:0}}
@media(max-width:760px){
 :root{--admin-toolbar-top:68px}
 .sidebar{width:268px;left:-280px;z-index:60;visibility:hidden;height:100dvh;padding:26px 16px 18px;transition:left .18s,visibility .18s}
 .sidebar.open{visibility:visible;left:0}
 .sidebar .brand{padding-right:26px;padding-bottom:20px}
 .mobile-close{width:44px;height:44px;right:3px;top:8px;display:grid;place-items:center}
 .nav-item{min-height:44px}.nav-label{font-size:11px}
 .nav-backdrop.open{display:block;position:fixed;inset:0;background:#14253d66;backdrop-filter:blur(2px);border:0;z-index:59}
 .topbar{height:56px;padding:0 13px;gap:12px}.top-actions{gap:5px}.topbar .btn.icon-only{height:44px;width:44px;padding:10px}.profile{padding:3px;gap:7px}.profile .avatar{height:29px;width:29px}.profile strong{font-size:11px;max-width:90px}.profile small{font-size:9px}
 .content{padding:19px 15px calc(var(--mobile-nav-height) + env(safe-area-inset-bottom) + 25px)}
 .page-heading{margin-bottom:17px}.page-heading h1{font-size:23px}.page-heading p{font-size:12px}.card{padding:18px}
 .mobile-bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;z-index:35;min-height:var(--mobile-nav-height);padding:4px 10px calc(4px + env(safe-area-inset-bottom));background:#fffffffa;border-top:1px solid #dde5f0;box-shadow:0 -5px 22px #25395a07;backdrop-filter:blur(14px)}
 .mobile-bottom-nav button{border:0;background:transparent;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:55px;color:#6b7a8d;font-size:11px;font-weight:500;border-radius:10px}
 .mobile-bottom-nav button svg{margin:0}.mobile-bottom-nav button.active{color:var(--blue);background:#eef3ff;font-weight:700}
 .shell:has(.practice-layout) .mobile-bottom-nav{display:none}
 .toast{bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom) + 12px);z-index:110}
 .dashboard-shortcuts{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:18px}
 .dashboard-shortcut{min-height:93px;padding:15px;gap:10px;flex-wrap:nowrap}
 .dashboard-shortcut.main-shortcut{grid-column:1/-1;min-height:91px}
 .dashboard-shortcut>.shortcut-copy{flex-basis:auto}.dashboard-shortcut:not(.main-shortcut) .shortcut-icon{display:none}
 .dashboard-shortcut .shortcut-copy strong{font-size:16px}.dashboard-shortcut .shortcut-copy small{font-size:11px}.dashboard-shortcut.main-shortcut>svg{display:block}
 .dashboard-layout{gap:17px}.dashboard-layout>aside{display:block}.dashboard-layout>aside>.mt{margin-top:17px}
 .quick-bank{gap:10px;padding:15px 0}.quick-bank h3{font-size:14px}.quick-bank .bank-symbol{display:none}.quick-bank>.btn{min-height:44px;padding:8px 12px}
 .dashboard-secondary-actions{gap:9px;padding-top:15px}.dashboard-secondary-actions>.btn{flex:1;min-height:44px;padding:8px}.dashboard-secondary-actions>.text-btn{width:100%;min-height:36px;text-align:left}
 .overview-score{padding-bottom:13px}.overview-score>strong{font-size:31px}.overview-facts{padding:13px 0;margin-bottom:15px}
 .learning-overview .btn,.dashboard-admin .btn{min-height:44px}
 .distribution-details>summary{min-height:32px;line-height:32px}.resume-item>.btn{min-height:44px}
 .table-wrap:has(.responsive-table){overflow:visible;padding:0 14px}
 .responsive-table,.responsive-table tbody{display:block;width:100%}.responsive-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .responsive-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 14px;padding:18px 0;border-bottom:1px solid var(--border)}
 .responsive-table tbody tr:last-child{border-bottom:0}.responsive-table tbody td{display:block;min-width:0;max-width:none;border:0;padding:0!important;text-align:left;white-space:normal;overflow-wrap:anywhere;font-size:12px}
 .responsive-table tbody td::before{content:attr(data-label);display:block;color:var(--muted);font-size:10px;font-weight:400;margin-bottom:4px}
 .responsive-table tbody td:first-child{grid-column:1/-1;font-size:15px;font-weight:600}.responsive-table tbody td:first-child::before{display:none}
 .responsive-table .actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;padding-top:2px!important}.responsive-table .actions::before{display:none}.responsive-table .actions .btn{min-height:44px;min-width:92px;font-size:12px}
 .responsive-table .table-empty-cell{grid-column:1/-1;font-weight:400!important;font-size:13px!important}.responsive-table .table-empty-cell::before{display:none}.responsive-table .table-sub{font-size:11px;margin-top:4px;font-weight:400}
}
@media(prefers-reduced-motion:reduce){.sidebar,.dashboard-shortcut,.nav-group>summary span{transition:none}.dashboard-shortcut:hover{transform:none}}
