/* Career Compass: shared typography and the reference-led student overview. */
.interior-navy {
  font-family: "Inter", "Segoe UI", Arial, sans-serif;
  font-size: 14px;
  -webkit-font-smoothing: antialiased;
  --ink: #f0f2ff;
  --muted: #a5b2ce;
  --line: rgba(186, 200, 239, .15);
}
.interior-navy :is(h1,h2,h3,h4,p,button,input,select,textarea,summary,small,a,span,strong,label,td,th) {
  font-family: inherit;
}
.interior-navy :is(h1,h2,h3,h4) { color: #f4f5ff; }
.interior-navy :is(h1,h2) { font-weight: 650; letter-spacing: -.045em; }
.interior-navy p { font-size: 14px; line-height: 1.65; }
.interior-navy .main { padding-bottom: 38px; }
.interior-navy .btn { font-size: 13px; font-weight: 600; letter-spacing: -.015em; }
.interior-navy .btn:not(.secondary):not(.ghost):not(.danger) {
  background: linear-gradient(115deg,#8d37f7 0%,#7325e3 58%,#7429e9 100%);
  border-color: rgba(204,169,255,.5);
  box-shadow: inset 0 1px rgba(255,255,255,.24),0 7px 24px rgba(105,40,211,.23);
  transition: box-shadow .25s, transform .25s, background .25s;
}
.interior-navy .btn:not(.secondary):not(.ghost):not(.danger):hover {
  transform: translateY(-2px);
  box-shadow: inset 0 1px rgba(255,255,255,.3),0 10px 30px rgba(125,57,229,.4);
  filter: none;
}
.interior-navy .btn:active { transform: translateY(0); }
.interior-navy .glass-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 22px;
  border: 1px solid rgba(198,209,240,.27);
  background: linear-gradient(137deg,rgba(177,190,223,.14),rgba(32,45,73,.45) 36%,rgba(12,24,44,.88));
  box-shadow: inset 0 1px rgba(255,255,255,.11),inset 1px 0 rgba(255,255,255,.04),0 16px 45px rgba(0,0,0,.15);
  backdrop-filter: blur(20px) saturate(115%);
  -webkit-backdrop-filter: blur(20px) saturate(115%);
  transition: border-color .3s, box-shadow .3s;
}
.interior-navy .glass-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(137deg,rgba(239,241,255,.12),transparent 21%,transparent 71%,rgba(183,165,255,.035));
  pointer-events: none;
}
.interior-navy .glass-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0;
  transition: opacity .3s;
  background: radial-gradient(410px circle at var(--glass-x,60%) var(--glass-y,0%),rgba(205,192,255,.11),transparent 65%);
}
.interior-navy .glass-card:is(:hover,:focus-within) { border-color: rgba(195,179,255,.43); }
.interior-navy .glass-card:is(:hover,:focus-within)::after { opacity: 1; }
.interior-navy .glass-card > :is(h2,h3) { font-size: 21px; margin-bottom: 10px; }
.interior-navy .preview-ribbon { font-family: inherit; color: #9aa9c6; font-size: 11px; }
.interior-navy .breadcrumb strong { color: #bdc9e0; }
.topbar-brand,.home-nav { display: none; }

/* The overview has a quiet horizontal header. The full navigation remains in a drawer. */
.student-home-shell { display: block; background: #061020; }
.student-home-shell .sidebar {
  position: fixed; inset: 0 auto 0 0; width: 264px; height: 100dvh;
  z-index: 82; transform: translateX(-100%); visibility: hidden;
  transition: transform .28s ease, visibility .28s; box-shadow: 15px 0 60px #0005;
}
.nav-open .student-home-shell .sidebar { transform: translateX(0); visibility: visible; }
.student-home-shell .mobile-scrim { position: fixed; inset: 0; z-index: 81; display: none; width: 100%; height: 100%; background: #020813a6; backdrop-filter: blur(5px); }
.nav-open .student-home-shell .mobile-scrim { display: block; }
body.nav-open:has(.student-home-shell) { overflow: hidden; }
.student-home-shell .topbar {
  height: 100px; padding: 0 max(32px,calc((100vw - 1240px)/2)); gap: 24px;
  background: rgba(6,16,32,.88); border-color: rgba(167,184,222,.17);
  position: relative; z-index: 50;
}
.student-home-shell .topbar-brand {
  display: inline-flex; align-items: center; gap: 13px; flex: 0 0 auto; order: 0;
}
.topbar-brand img { width: 56px; height: 56px; object-fit: contain; }
.topbar-brand strong { display: block; font-size: 20px; line-height: 1.35; letter-spacing: -.035em; color: #f2f4ff; }
.topbar-brand small { display: block; margin-top: 3px; font-size: 10px; font-weight: 600; letter-spacing: .22em; color: #a9b8d8; text-transform: uppercase; }
.student-home-shell .breadcrumb { display: none; }
.student-home-shell .home-nav { display: flex; align-items: center; gap: 7px; margin-left: auto; order: 1; }
.home-nav a { font-size: 12px; padding: 10px 14px; border: 1px solid transparent; border-radius: 9px; color: #a4b3cf; white-space: nowrap; }
.home-nav a[aria-current="page"] { background: linear-gradient(135deg,#8b5cf61c,#8b5cf609); border-color: #b49be433; color: #e3d6ff; }
.home-nav a:hover { color: white; background: #ffffff05; }
.student-home-shell .mobile-menu { display: inline-flex; order: 2; flex-shrink: 0; }
.student-home-shell .top-actions { order: 3; gap: 12px; }
.student-home-shell .top-actions > .icon-btn { display: none; }
.student-home-shell .role-switch { border-color: #b7c3ed24; background: #a796dc0a; padding: 7px 9px; }
.student-home-shell .role-switch > span { display: none; }
.student-home-shell .role-switch select { font-size: 11px; max-width: 80px; }
.student-home-shell .avatar { width: 36px; height: 36px; border: 1px solid #cbb9ff27; }
.student-home-shell .preview-ribbon { max-width: 1240px; margin: auto; border: 0; padding: 13px 0 0; background: transparent; }
.student-home-shell .preview-ribbon .ribbon-extra { display: none; }
.student-home-shell .preview-ribbon a { font-size: 10px; font-weight: 500; color: #a4b2cf; }
.student-home-shell .main { max-width: 1304px; padding: 0 32px 28px; }

/* Cinematic intro. Only this area has continuous background movement. */
.student-home-shell .paid-intro {
  min-height: 436px; padding: 42px 34px 42px 0; margin: 8px 0 38px;
  grid-template-columns: 1.12fr 1fr; gap: 24px; overflow: hidden;
  border-bottom: 1px solid rgba(192,204,238,.2); background: transparent;
}
.student-home-shell .intro-copy { padding: 10px 0 12px; }
.intro-kicker { display: flex; align-items: center; gap: 10px; color: #bda9f4; font-size: 10px; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; }
.intro-kicker > span:first-child { width: 6px; height: 6px; border-radius: 50%; background: #b496ef; box-shadow: 0 0 12px #b496ef; }
.student-home-shell .intro-copy h1 { font-size: clamp(38px,4.4vw,62px); letter-spacing: -.055em; font-weight: 700; line-height: 1.06; margin: 22px 0 20px; }
.student-home-shell .intro-copy > p { max-width: 540px; color: #cbd4e9; font-size: 16px; line-height: 1.65; overflow-wrap: anywhere; }
.student-home-shell .intro-copy .intro-context { margin: 9px 0 27px; font-size: 13px; color: #91a3c5; }
.student-home-shell .intro-copy > .btn { padding: 14px 25px; min-height: 52px; border-radius: 11px; font-size: 14px; min-width: 278px; justify-content: space-between; }
.intro-copy > .btn .icon { width: 17px; transform: rotate(90deg); }
.student-home-shell .intro-copy > small { margin-top: 13px; font-size: 11px; color: #889abb; display: flex; align-items: center; gap: 8px; }
.intro-copy > small .icon { width: 11px; height: 11px; transform: rotate(90deg); }
.intro-aurora { inset: -25px -50px; opacity: 1; filter: none; animation: none; background: radial-gradient(ellipse at 75% 55%,#7244bf23,transparent 46%); mask-image: linear-gradient(180deg,transparent,black 14%,black 78%,transparent); }
.aurora-landscape { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; opacity: .9; }
.aurora-flow { transform-origin: center; animation: cc-aurora-drift 17s ease-in-out infinite alternate; will-change: transform; }
.aurora-flow.flow-two { animation-name: cc-aurora-return; animation-duration: 23s; }
.aurora-flow.flow-three { animation-duration: 29s; animation-delay: -12s; }
.compass-art { position: relative; min-width: 0; width: 100%; height: 360px; isolation: isolate; display: grid; place-items: center; }
.compass-float { position: absolute; inset: -25px -8px -20px; display: grid; place-items: center; animation: cc-compass-float 8s ease-in-out infinite; }
.compass-art img { position: relative; width: min(370px,95%); height: auto; display: block; transform: rotate(17deg) scale(.99); filter: drop-shadow(0 16px 25px #0005) drop-shadow(0 0 24px #a376ff20); }
.compass-aura { position: absolute; width: 350px; height: 270px; border-radius: 50%; background: radial-gradient(ellipse,#8b5cf62e,transparent 68%); filter: blur(20px); }
.compass-orbits { position: absolute; width: 126%; height: 116%; inset: -8% -13%; overflow: visible; pointer-events: none; }
.compass-orbits .orbit-light { stroke-dasharray: 180 800; animation: cc-orbit-light 15s linear infinite; }
.compass-orbits .orbit-light.second { animation-delay: -7s; animation-duration: 20s; }
.compass-spark { position: absolute; width: 44px; height: 44px; top: 7%; right: 19%; background: radial-gradient(circle,#fff5d5,rgba(255,207,93,.6) 5%,transparent 52%); filter: blur(1px); opacity: .8; animation: cc-spark 8s ease-in-out infinite; }
.compass-spark::before,.compass-spark::after { content: ""; position: absolute; background: linear-gradient(90deg,transparent,#fff3ce,transparent); height: 1px; width: 46px; top: 50%; }
.compass-spark::after { transform: rotate(90deg); }

/* Assessment overview: generous hierarchy, actual progress and clear steps. */
.student-home-shell #assessment-dashboard { scroll-margin-top: 26px; outline: none; animation: cc-dashboard-enter .45s ease-out; }
.student-home-shell #assessment-dashboard:first-child { margin-top: 35px; }
.student-home-shell #assessment-dashboard > .section-head { margin: 0 0 24px; align-items: end; }
.student-home-shell #assessment-dashboard h1 { font-size: 31px; font-weight: 650; letter-spacing: -.04em; }
.student-home-shell .section-head p { font-size: 13px; margin-top: 7px; color: #98a8c7; }
.student-home-shell .student-glass-grid { grid-template-columns: minmax(0,1.9fr) minmax(260px,1fr); gap: 20px; }
.student-home-shell .glass-card { padding: 28px; }
.student-home-shell .direction-card { padding: 29px; }
.direction-card .eyebrow { color: #d2c2ff; font-size: 9px; font-weight: 600; display: inline-flex; border: 1px solid #c8adff3d; border-radius: 30px; padding: 6px 10px; background: linear-gradient(110deg,#b79aef25,#a593dd08); letter-spacing: .12em; }
.student-home-shell .direction-card h2 { font-size: 31px!important; letter-spacing: -.04em; margin: 18px 0 10px!important; }
.student-home-shell .direction-card > p:not(.preview-footnote) { font-size: 14px; color: #b3bfda; }
.student-home-shell .begin-assessment { margin: 21px 0 25px; width: 100%; min-height: 49px; justify-content: center; font-size: 14px; }
.stage-overview { gap: 12px; }
.stage-tile { padding: 17px 13px; border-radius: 13px; background: linear-gradient(135deg,#fff1,#fff0 70%); border-color: #c0cdeb29; gap: 10px; min-width: 0; }
.stage-tile.current { border-color: #ba91f2a3; background: linear-gradient(135deg,#8b5cf62a,#8b5cf609); box-shadow: inset 0 1px #ddc7ff1a; }
.stage-tile > .icon { width: 22px; height: 22px; color: #d4c2fb; margin-top: 1px; }
.stage-tile > div { min-width: 0; }
.stage-tile h3 { font-size: 13px; font-weight: 600; line-height: 1.5; letter-spacing: -.02em; }
.stage-tile h3 b { color: #aea4d0; font-size: 10px; margin-right: 5px; }
.stage-tile p { font-size: 10px!important; color: #a4b3d0!important; min-height: 30px; margin: 5px 0 12px; line-height: 1.5!important; }
.stage-tile span { font-size: 9px; color: #c4cce2; background: #d7ddff08; padding: 4px 7px; border-color: #c5c8e333; }
.stage-tile.current span { color: #e4d4ff; background: #bc87ff19; border-color: #c397ff40; }
.student-home-shell .preview-footnote { margin-top: 18px; font-size: 10px!important; line-height: 1.6; color: #8194b5!important; }
.student-home-shell .student-glass-grid > .stack { gap: 19px; }
.cc-card-title { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.cc-card-title > .icon { width: 18px; height: 18px; color: #c0a7f3; }
.cc-card-title h2 { font-size: 20px; margin: 0!important; letter-spacing: -.035em; }
.cc-progress-copy { display: flex; align-items: baseline; gap: 7px; }
.cc-progress-copy strong { font-size: 32px; font-weight: 500; color: #ece9ff; line-height: 1.2; letter-spacing: -.05em; }
.cc-progress-copy strong > span { font-size: 17px; letter-spacing: -.025em; margin-left: 3px; }
.cc-progress-copy span { font-size: 12px; color: #a3b3d0; }
.student-home-shell .student-glass-grid .progress-track { margin: 18px 0 12px; height: 8px; border: 1px solid #bbc9e537; background: #d6deff0b; box-shadow: inset 0 1px 4px #0004; }
.progress-status { display: flex; align-items: center; gap: 7px; color: #a8b5ce; font-size: 11px; }
.progress-status > i { width: 6px; height: 6px; border-radius: 50%; background: #8d9fc0; }
.report-lock p { font-size: 12px; color: #b6c2db; line-height: 1.6; }
.report-lock .icon { width: 27px; height: 27px; color: #c5b0f4; }
.cc-report-card .text-link { font-size: 11px; margin-top: 17px; color: #c8b2fb; }
.cc-report-card .text-link .icon { width: 13px; height: 13px; }
.student-home-shell .footer { margin-top: 31px; padding-top: 21px; font-size: 10px; gap: 15px; border-color: #c0cff021; }
.student-home-shell .interior-assistant { margin-top: 16px; }
.student-home-shell .interior-assistant .btn { border-radius: 30px; border-color: #b99aec70; color: #dfd0ff; padding: 10px 18px; min-height: 40px; font-size: 11px; background: linear-gradient(110deg,#a993df17,#a993df04); box-shadow: inset 0 1px #d4c2fa14; }

/* Give the admin surfaces the same type and optical depth. Empty data stays honest. */
.interior-navy .admin-kpis { gap: 16px; }
.interior-navy .metric-card { min-height: 164px; padding: 22px; }
.metric-card > span { font-size: 12px; }
.metric-card > .icon { width: 20px; height: 20px; }
.metric-card strong { color: #f0ebff; font-size: 35px; line-height: 1; }
.metric-card small { color: #8296b8; line-height: 1.6; }
.admin-bento .glass-card { padding: 27px; }
.admin-bento .panel-head h2 { font-size: 21px; }
.interior-navy .empty-chart { min-height: 270px; }
.empty-chart > div:not(.chart-grid):not(.chart-axis) { background: #101c2b94; border: 1px solid #b9c4e01c; backdrop-filter: blur(8px); }
.interior-navy .chart-grid { background: repeating-linear-gradient(to top,transparent 0px 48px,#a8bed714 48px 49px); }
.interior-navy .admin-table-tools .input { min-height: 44px; }
.interior-navy .reveal-card { transition: border-color .3s,transform .3s,box-shadow .3s; border-radius: 20px; background: linear-gradient(135deg,#7586b317,#13213add); }
.interior-navy .reveal-card:hover { transform: translateY(-4px); box-shadow: 0 16px 32px #0003; border-color: #c5a4fa60; }
.reveal-card h3 { font-size: 19px; font-weight: 600; letter-spacing: -.035em; }
.reveal-card details[open] .reveal-content { animation: cc-reveal .35s ease-out; }

@keyframes cc-aurora-drift { 0% { transform: translate(-45px,25px) scale(1.02); opacity: .65; } 100% { transform: translate(55px,-20px) scale(1.1); opacity: 1; } }
@keyframes cc-aurora-return { 0% { transform: translate(25px,-20px) scale(1.1); opacity: .6; } 100% { transform: translate(-40px,20px) scale(1.02); opacity: .9; } }
@keyframes cc-compass-float { 0%,100% { transform: translateY(4px) rotate(-1deg); } 50% { transform: translateY(-10px) rotate(1deg); } }
@keyframes cc-orbit-light { to { stroke-dashoffset: -980; } }
@keyframes cc-spark { 0%,100% { opacity: .4; transform: scale(.8); } 50% { opacity: 1; transform: scale(1.1); } }
@keyframes cc-reveal { from { opacity: 0; transform: translateY(-6px); clip-path: inset(0 0 100%); } to { opacity: 1; transform: none; clip-path: inset(0); } }
@keyframes cc-dashboard-enter { from { opacity: .5; transform: translateY(9px); } to { opacity: 1; transform: none; } }

@media(min-width:1500px) { .student-home-shell .intro-copy h1 { font-size: 65px; } .student-home-shell .paid-intro { min-height: 454px; } }
@media(max-width:1200px) {
  .student-home-shell .topbar { gap: 16px; padding: 0 32px; }
  .home-nav a { padding: 9px 11px; }
  .student-home-shell .topbar-brand strong { font-size: 18px; }
  .student-home-shell .student-glass-grid { grid-template-columns: minmax(0,1.75fr) minmax(250px,1fr); }
  .student-home-shell .student-glass-grid > .stack { display: flex; }
  .student-home-shell .stage-overview { grid-template-columns: 1fr; }
  .student-home-shell .stage-tile { align-items: center; padding: 13px 15px; }
  .student-home-shell .stage-tile > div { display: grid; grid-template-columns: minmax(0,1fr) auto; flex: 1; gap: 1px 10px; }
  .student-home-shell .stage-tile p { min-height: 0; margin: 0; grid-column: 1; }
  .student-home-shell .stage-tile span { grid-column: 2; grid-row: 1/3; align-self: center; }
  .student-home-shell .direction-card h2 { font-size: 28px!important; }
}
@media(max-width:1000px) {
  .student-home-shell .home-nav { display: none; }
  .student-home-shell .topbar-brand { margin-right: auto; }
  .student-home-shell .paid-intro { min-height: 410px; padding-right: 0; gap: 8px; }
  .student-home-shell .intro-copy h1 { font-size: 46px; }
  .student-home-shell .intro-copy > p { font-size: 14px; }
  .compass-art { height: 300px; }
  .compass-art img { width: 310px; }
  .compass-orbits { width: 130%; left: -15%; }
  .student-home-shell .glass-card { padding: 24px; }
  .cc-card-title h2 { font-size: 18px; }
}
@media(max-width:780px) {
  .topbar-brand { display: inline-flex; align-items: center; gap: 9px; }
  .topbar-brand img { width: 35px; height: 35px; }
  .topbar-brand strong { font-size: 13px; }
  .topbar-brand small { font-size: 7px; letter-spacing: .17em; }
  .interior-navy:not(.student-home-shell) .topbar-brand { display: inline-flex; flex-shrink: 0; }
  .interior-navy:not(.student-home-shell) .topbar-brand > span { display: none; }
  .student-home-shell .topbar { height: 78px; padding: 0 22px; gap: 12px; }
  .student-home-shell .topbar-brand img { width: 43px; height: 43px; }
  .student-home-shell .topbar-brand strong { font-size: 16px; }
  .student-home-shell .topbar-brand small { font-size: 8px; }
  .student-home-shell .main { padding: 0 22px 24px; }
  .student-home-shell .preview-ribbon { margin: 0 22px; padding-top: 12px; font-size: 10px; }
  .student-home-shell .paid-intro { min-height: 390px; padding: 25px 0 31px; margin-top: 4px; grid-template-columns: 1.1fr 1fr; }
  .student-home-shell .intro-copy h1 { font-size: 39px; letter-spacing: -.05em; margin: 19px 0 15px; }
  .student-home-shell .intro-copy > .btn { min-width: 0; width: 100%; font-size: 12px; padding: 13px 18px; }
  .compass-art { height: 270px; }
  .compass-art img { width: 270px; }
  .student-home-shell .student-glass-grid { grid-template-columns: 1fr; }
  .student-home-shell .student-glass-grid > .stack { display: grid; grid-template-columns: 1fr 1fr; }
  .student-home-shell #assessment-dashboard h1 { font-size: 27px; }
  .student-home-shell .direction-card { padding: 27px; }
}
@media(max-width:550px) {
  .student-home-shell .topbar { height: 76px; padding: 0 18px; gap: 9px; }
  .student-home-shell .topbar-brand { gap: 8px; }
  .student-home-shell .topbar-brand img { width: 38px; height: 38px; }
  .student-home-shell .topbar-brand strong { font-size: 13px; letter-spacing: -.025em; }
  .student-home-shell .topbar-brand small { margin-top: 3px; font-size: 7px; letter-spacing: .15em; }
  .student-home-shell .top-actions { gap: 8px; }
  .student-home-shell .top-actions > .avatar { display: none; }
  .student-home-shell .role-switch { padding: 5px 6px; border-radius: 8px; }
  .student-home-shell .role-switch select { font-size: 10px; width: 71px; min-height: 30px; }
  .student-home-shell .mobile-menu { width: 40px; min-width: 40px; min-height: 44px; height: 44px; border: 1px solid #b3bfdd1c; }
  .student-home-shell .mobile-menu .icon { width: 17px; height: 17px; }
  .student-home-shell .main { padding: 0 18px 21px; }
  .student-home-shell .preview-ribbon { margin: 0 18px; font-size: 9px; padding-top: 11px; }
  .student-home-shell .preview-ribbon a { font-size: 9px; }
  .student-home-shell .paid-intro { display: grid; grid-template-columns: 1fr; padding: 28px 0 27px; min-height: 0; margin: 0 0 27px; overflow: hidden; }
  .student-home-shell .intro-copy { padding: 0; display: grid; grid-template-columns: minmax(0,1fr) 140px; align-items: start; }
  .intro-kicker { font-size: 8px; letter-spacing: .12em; grid-column: 1/-1; }
  .student-home-shell .intro-copy h1 { font-size: clamp(30px,8.2vw,42px); max-width: none; margin: 20px 0 16px; grid-column: 1/-1; line-height: 1.08; }
  .student-home-shell .intro-copy > p { font-size: 12px; max-width: none; grid-column: 1; padding-right: 7px; line-height: 1.7; }
  .student-home-shell .intro-copy .intro-context { font-size: 10px; margin: 9px 0 23px; padding: 0; white-space: nowrap; }
  .student-home-shell .intro-copy > .btn { grid-column: 1/-1; font-size: 13px; min-height: 49px; padding: 13px 18px; justify-content: center; gap: 16px; margin-top: 0; }
  .student-home-shell .intro-copy > small { grid-column: 1/-1; justify-content: center; margin-top: 12px; font-size: 10px; }
  .compass-art { position: absolute; width: 145px; height: 145px; right: -7px; top: 112px; z-index: 1; pointer-events: none; }
  .compass-float { inset: -5px; }
  .compass-art img { width: 145px; max-width: none; }
  .compass-aura { width: 160px; height: 150px; }
  .compass-orbits { width: 130%; height: 120%; inset: -10% -15%; }
  .compass-spark { width: 26px; height: 26px; right: 17%; top: 4%; }
  .compass-spark::before,.compass-spark::after { width: 26px; }
  .intro-aurora { inset: 0 -100px; opacity: .8; }
  .student-home-shell #assessment-dashboard > .section-head { margin-bottom: 19px; }
  .student-home-shell #assessment-dashboard h1 { font-size: 23px; line-height: 1.25; }
  .student-home-shell .section-head p { font-size: 11px; }
  .student-home-shell .section-head .btn { font-size: 10px; min-height: 36px; padding: 8px 12px; }
  .student-home-shell .student-glass-grid { gap: 15px; }
  .student-home-shell .glass-card,.student-home-shell .direction-card { padding: 21px 18px; border-radius: 18px; }
  .direction-card .eyebrow { font-size: 8px; padding: 5px 9px; }
  .student-home-shell .direction-card h2 { font-size: 25px!important; margin-top: 17px!important; }
  .student-home-shell .direction-card > p:not(.preview-footnote) { font-size: 12px; }
  .student-home-shell .begin-assessment { margin: 18px 0 19px; min-height: 47px; font-size: 13px; }
  .student-home-shell .stage-overview { gap: 9px; }
  .student-home-shell .stage-tile { padding: 13px 12px; gap: 10px; }
  .student-home-shell .stage-tile > .icon { width: 20px; height: 20px; }
  .student-home-shell .stage-tile h3 { font-size: 11px; }
  .student-home-shell .stage-tile h3 b { font-size: 9px; }
  .student-home-shell .stage-tile p { font-size: 10px!important; line-height: 1.5!important; }
  .student-home-shell .stage-tile span { padding: 3px 6px; font-size: 8px; }
  .student-home-shell .student-glass-grid > .stack { grid-template-columns: 1fr; gap: 15px; }
  .student-home-shell .preview-footnote { font-size: 9px!important; margin-top: 14px; }
  .cc-card-title h2 { font-size: 18px; }
  .cc-progress-copy strong { font-size: 27px; }
  .student-home-shell .footer { margin-top: 25px; padding-top: 19px; font-size: 9px; line-height: 1.8; display: grid; gap: 7px; }
  .student-home-shell .interior-assistant .btn { width: auto; margin-left: auto; }
  .interior-navy .metric-card { min-height: 145px; padding: 18px; }
  .admin-bento .glass-card { padding: 22px 19px; }
  .metric-card > span { font-size: 11px; }
  .metric-card small { font-size: 9px; }
}
@media(max-width:350px) {
  .student-home-shell .topbar { gap: 7px; padding-inline: 14px; }
  .student-home-shell .topbar-brand { gap: 7px; }
  .student-home-shell .topbar-brand img { width: 32px; height: 32px; }
  .student-home-shell .topbar-brand strong { font-size: 11px; }
  .student-home-shell .topbar-brand small { font-size: 6px; }
  .student-home-shell .intro-copy { grid-template-columns: minmax(0,1fr) 130px; }
  .compass-art { width: 125px; height: 125px; top: 109px; }
  .compass-art img { width: 125px; }
  .student-home-shell .stage-tile > div { grid-template-columns: minmax(0,1fr); }
  .student-home-shell .stage-tile span { grid-column: 1; grid-row: auto; justify-self: start; margin-top: 5px; }
}
@media(prefers-reduced-motion:reduce) {
  .aurora-flow,.compass-float,.compass-orbits .orbit-light,.compass-spark,.reveal-card details[open] .reveal-content,.student-home-shell #assessment-dashboard { animation: none!important; }
  .interior-navy :is(.btn,.glass-card,.reveal-card),.student-home-shell .sidebar { transition: none!important; }
  .interior-navy .btn:hover,.interior-navy .reveal-card:hover { transform: none; }
}
