/* ======================================================================
   APPLICANS LIGHT EXPERIENCE
   Warm white working canvas, near-black structure, restrained gold action.
   This file loads last and intentionally owns the final dashboard skin.
   ====================================================================== */

#dashboard {
  color-scheme: light;
  --experience-canvas: #f6f5f1;
  --experience-panel: #ffffff;
  --experience-panel-soft: #f0eee8;
  --experience-panel-warm: #EFF6FF;
  --experience-ink: #090908;
  --experience-muted: #34322e;
  --experience-quiet: #5f5a52;
  --experience-disabled: #746e63;
  --experience-border: #dedbd2;
  --experience-border-strong: #c8c2b6;
  --experience-accent: #312E81;
  --experience-accent-strong: #090908;
  --experience-accent-fill: #4338CA;
  --experience-accent-soft: #F5F3FF;
  --experience-metal-edge: #4338CA;
  --experience-metal-mid: #C4B5FD;
  --experience-metal-highlight: #93C5FD;
  --experience-metal-gradient: linear-gradient(135deg,#4338CA 0%,#C4B5FD 24%,#93C5FD 46%,#4338CA 63%,#4338CA 80%,#C4B5FD 100%);
  --experience-dark: #11100e;
  --experience-dark-raised: #1a1815;
  --experience-dark-text: #f8f5ee;
  --experience-dark-muted: #ffffff;
  --experience-success: #4338CA;
  --experience-shadow: 0 1px 2px rgba(23,21,18,.035), 0 18px 46px -38px rgba(23,21,18,.28);
  --experience-shadow-hover: 0 2px 3px rgba(23,21,18,.04), 0 24px 50px -34px rgba(23,21,18,.28);
  --experience-ease: cubic-bezier(.2,.8,.2,1);
  --experience-spring: cubic-bezier(.22,1,.36,1);
  --motion-press: 110ms;
  --motion-feedback: 140ms;
  --motion-state: 190ms;
  --motion-panel: 280ms;
  --field-height: 50px;
  --field-radius: 12px;
  --field-padding-inline: 15px;
  --field-border: #918a7e;
  --field-border-hover: #6f695f;
  --field-surface: #ffffff;
  --field-surface-hover: #fcfbf8;
  --field-ring: rgba(67,56,202,.15);

  /* Re-map legacy component tokens into one calm light system. */
  --dashboard-font-display: "Inter Tight", Inter, ui-sans-serif, system-ui, sans-serif;
  --dashboard-font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --dashboard-font-ui: "Inter Tight", Inter, ui-sans-serif, system-ui, sans-serif;
  --dashboard-font-meta: Inter, ui-sans-serif, system-ui, sans-serif;
  --bg: var(--experience-canvas);
  --bg-deep: var(--experience-panel-soft);
  --bg2: var(--experience-panel);
  --surface: #ffffff;
  --surface-2: var(--experience-panel-soft);
  --panel: #ffffff;
  --border: var(--experience-border);
  --border-2: var(--experience-border-strong);
  --border-gold: rgba(67,56,202,.42);
  --gold: var(--experience-accent);
  --gold2: #4338CA;
  --gold3: var(--experience-accent-strong);
  --gold4: #312E81;
  --gold-dim: var(--experience-accent-soft);
  --text: var(--experience-ink);
  --ivory: var(--experience-ink);
  --muted: var(--experience-muted);
  --quiet: var(--experience-quiet);
  --t2: var(--experience-muted);
  --t3: var(--experience-quiet);
  --t4: var(--experience-quiet);
  --line: var(--experience-border);
  --line-strong: var(--experience-border-strong);
  --gold-bright: var(--experience-metal-highlight);
  --gold-deep: var(--experience-accent);
  --gold-line: rgba(67,56,202,.44);
  --success: var(--experience-success);
  --green: var(--experience-success);
  --app-success: var(--experience-success);
  --app-background: var(--experience-canvas);
  --app-card: var(--experience-panel);
  --app-card-strong: var(--experience-panel-soft);
  --app-muted: var(--experience-muted);
  --app-muted-surface: var(--experience-panel-soft);
  --app-primary: var(--experience-accent);
  --app-primary-foreground: #171208;
  --app-border: var(--experience-border);
  --color-text-primary: var(--experience-ink);
  --color-text-secondary: var(--experience-muted);
  --color-text-tertiary: var(--experience-quiet);
  --color-text-disabled: var(--experience-disabled);
  --color-border-subtle: #e7e4dc;
  --color-border-default: var(--experience-border);
  --landing-bg: var(--experience-canvas);
  --landing-abyss: var(--experience-panel-soft);
  --landing-graphite: var(--experience-panel);
  --landing-steel: var(--experience-panel-soft);
  --landing-ivory: var(--experience-ink);
  --landing-muted: var(--experience-muted);
  --landing-line: var(--experience-border);
  --landing-line-soft: #e7e4dc;
  --landing-gold: var(--experience-accent);
  --landing-gold-pale: var(--experience-metal-highlight);
  color: var(--experience-ink);
  font-family: var(--dashboard-font-body);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body:has(#dashboard) {
  background: #f6f5f1;
  background-image: none;
}
body:has(#dashboard) :is(.a1,.a2,#aurora-canvas) { display: none; }

/* Product shell: the navigation is the black anchor; work stays bright. */
#dashboard .content {
  background: var(--experience-canvas);
  padding: 104px clamp(26px,3.2vw,52px) 88px;
}
#dashboard .tab-panel { width: min(100%,1520px); }
#dashboard .topbar {
  border: 1px solid rgba(23,21,18,.09);
  background: rgba(255,255,255,.92);
  box-shadow: 0 8px 28px -24px rgba(23,21,18,.35);
  backdrop-filter: blur(20px) saturate(1.1);
  -webkit-backdrop-filter: blur(20px) saturate(1.1);
}
#dashboard .tlogo { color: var(--experience-ink); font-weight: 650; letter-spacing: -.02em; }
#dashboard .tlogo::before { background: var(--experience-accent-fill); box-shadow: none; }
#dashboard .t-user { color: var(--experience-muted); }
#dashboard .t-user strong { color: var(--experience-ink); }
#dashboard .t-plan {
  color: #171208 !important;
  border-color: rgba(116,80,14,.2) !important;
  background: var(--experience-accent-fill) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.45) !important;
}
#dashboard .logout-btn {
  color: var(--experience-ink);
  border-color: var(--experience-border);
  background: #ffffff;
}
#dashboard .logout-btn:hover { border-color: var(--experience-border-strong); background: var(--experience-panel-soft); }

#dashboard .sidebar {
  color-scheme: dark;
  border-color: rgba(255,255,255,.08);
  background: var(--experience-dark);
  box-shadow: 0 28px 60px -44px rgba(17,16,14,.55);
}
#dashboard .sidebar-intro {
  border-bottom-color: rgba(255,255,255,.1);
  background: transparent;
}
#dashboard .sidebar-intro span,
#dashboard .snav-label { color: #938c80; font-family: var(--dashboard-font-body); font-size: .6875rem; font-weight: 600; letter-spacing: .085em; }
#dashboard .sidebar-intro strong { color: var(--experience-dark-text); font-family: var(--dashboard-font-ui); font-size: 1rem; font-weight: 600; letter-spacing: -.02em; }
#dashboard .nav-item { color: #b7b0a4; border-color: transparent; background: transparent; font-size: .8125rem; font-weight: 500; }
#dashboard .nav-item:hover { color: var(--experience-dark-text); border-color: rgba(255,255,255,.06); background: rgba(255,255,255,.055); }
#dashboard .nav-item.active {
  color: var(--experience-dark-text);
  border-color: rgba(196,181,253,.24);
  background: linear-gradient(90deg,rgba(196,181,253,.16),rgba(196,181,253,.045));
  box-shadow: none;
}
#dashboard .nav-item.active svg { color: #4338CA; }
#dashboard .sidebar-ai-state { color: var(--experience-dark-text); border-color: rgba(255,255,255,.09); background: rgba(255,255,255,.035); }
#dashboard .sidebar-ai-state small { color: #a9a195; }

/* Typography: one neutral family, three clear reading levels. */
#dashboard :is(.welcome,.panel-title,.svc-title,.hcard-title,.pb-name,.sl-title,.sec-head) {
  color: var(--experience-ink);
  font-family: var(--dashboard-font-ui);
  font-weight: 650;
  letter-spacing: -.035em;
  text-wrap: balance;
}
#dashboard :is(.app-eyebrow,.section-kicker,.panel-meta,.svc-label,.hcard-group,.app-head-signal,.hs-context,.rd-kicker,.rd-gates-head) {
  font-family: var(--dashboard-font-body);
  font-size: .6875rem;
  font-weight: 600;
  letter-spacing: .085em;
}
#dashboard :is(.wsub,.pb-detail,.hcard-description,.svc-desc,.sl-empty) {
  color: var(--experience-muted);
  font-family: var(--dashboard-font-body);
  font-weight: 400;
  line-height: 1.58;
  text-wrap: pretty;
}
#dashboard :is(.rd-phase-score,.rd-points-flat,.progress-number,.sl-count,.app-head-signal) { font-variant-numeric: tabular-nums; }

/* Home hierarchy and status. */
#dashboard .app-head { margin-bottom: 34px; padding: 16px 2px 0; border: 0; }
#dashboard .app-eyebrow,
#dashboard .section-kicker { color: var(--experience-accent-strong); }
#dashboard .welcome { max-width: 17ch; font-size: clamp(2.75rem,4.1vw,4.35rem); line-height: 1.02; }
#dashboard .welcome .g { color: var(--experience-accent-strong); background: none; -webkit-text-fill-color: currentColor; }
#dashboard .wsub { max-width: 65ch; margin-top: 14px; font-size: 1rem; }
#dashboard .app-head-signal { color: var(--experience-muted); border-color: var(--experience-border); background: #ffffff; }
#dashboard .app-head-signal i { background: var(--experience-accent); box-shadow: 0 0 0 3px var(--experience-accent-soft); }
#dashboard .panel-meta { color: var(--experience-quiet) !important; }
#dashboard .app-head-signal { color: var(--experience-accent-strong) !important; }

#dashboard#dashboard .home-status {
  overflow: hidden;
  border: 1px solid #dedbd2 !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: var(--experience-shadow) !important;
}
#dashboard .hs-identity,
#dashboard .hs-progress { padding: clamp(22px,2.2vw,30px); background: transparent; }
#dashboard .hs-progress { border-inline-start-color: var(--experience-border); }
#dashboard .pb-avatar { background: var(--experience-accent-fill); color: #171208; box-shadow: inset 0 1px 0 rgba(255,255,255,.5); }
#dashboard .pb-name { font-size: 1.2rem; line-height: 1.25; }
#dashboard .pb-detail { font-size: .9375rem; }
#dashboard .hs-context { color: var(--experience-quiet); border-top-color: var(--experience-border); }
#dashboard .hs-context strong { color: var(--experience-accent-strong) !important; }
#dashboard .pb-edit { color: var(--experience-accent-strong); border-color: rgba(67,56,202,.28); background: var(--experience-accent-soft); }
#dashboard .progress-track,
#dashboard .rd-track { background: #e8e4da !important; }
#dashboard .progress-fill,
#dashboard .rd-track i { background: var(--experience-accent-fill) !important; box-shadow: none !important; }

/* Application checklist: broad, readable, and clearly sequential. */
#dashboard .rd-section { width: 100% !important; max-width: none; margin: 2.25rem auto 2.75rem !important; }
#dashboard .rd-compact-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 1.15rem; }
#dashboard .rd-compact-head .panel-title { max-width: 22ch; color: var(--experience-ink); font-size: clamp(1.85rem,2.4vw,2.35rem); line-height: 1.08; }
#dashboard .rd-compact-intro { max-width: 52ch; margin: .45rem 0 0; color: var(--experience-muted); font-size: .9375rem; line-height: 1.55; text-wrap: pretty; }
#dashboard .rd-journey { margin-bottom: 1.75rem; }
#dashboard .rd-journey li { color: var(--experience-quiet); }
#dashboard .rd-journey li::after { background: var(--experience-border); }
#dashboard .rd-journey-number { color: var(--experience-quiet); border-color: var(--experience-border-strong); background: var(--experience-panel); }
#dashboard .rd-journey li > span:last-child { background: var(--experience-canvas); }
#dashboard .rd-journey strong { color: var(--experience-muted); font-size: .875rem; }
#dashboard .rd-journey small { color: var(--experience-quiet); font-size: .75rem; letter-spacing: .01em; }
#dashboard .rd-journey li[data-state="done"] .rd-journey-number,
#dashboard .rd-journey li[data-state="current"] .rd-journey-number { color: #171208; border-color: var(--experience-accent-fill); background: var(--experience-accent-fill); }
#dashboard .rd-journey li[data-state="done"]::after { background: var(--experience-accent-fill); }
#dashboard .rd-journey li[data-state="done"] strong { color: var(--experience-ink); }
#dashboard .rd-journey li[data-state="current"] strong { color: var(--experience-accent-strong); }

#dashboard .rd-plan { grid-template-columns: minmax(0,1.45fr) minmax(340px,.72fr); gap: 18px; }
#dashboard#dashboard .rd-next {
  min-height: 228px;
  border-color: rgba(196,181,253,.34) !important;
  border-radius: 18px !important;
  background: #11100e !important;
  background-image: none !important;
  box-shadow: 0 24px 50px -38px rgba(17,16,14,.75) !important;
}
#dashboard .rd-next::after { border-color: rgba(196,181,253,.15); box-shadow: 0 0 0 3rem rgba(196,181,253,.025),0 0 0 6rem rgba(196,181,253,.012); }
#dashboard .rd-next .rd-kicker { color: #4338CA; }
#dashboard .rd-score-gain { color: #4338CA; border-color: rgba(196,181,253,.34); background: rgba(196,181,253,.1); }
#dashboard .rd-next h3 { color: var(--experience-dark-text); font-family: var(--dashboard-font-ui); font-size: clamp(2rem,2.8vw,2.65rem); font-weight: 650; }
#dashboard .rd-next > p { color: var(--experience-dark-muted); font-size: 1rem; }

#dashboard .rd-full {
  margin-top: 1rem;
  overflow: clip;
  border: 1px solid var(--experience-border);
  border-radius: 15px;
  background: var(--experience-panel);
}
#dashboard .rd-full > summary {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 18px;
  min-height: 72px;
  padding: 14px 18px;
  cursor: pointer;
  list-style: none;
  transition: background-color var(--motion-feedback) ease,border-color var(--motion-feedback) ease;
}
#dashboard .rd-full > summary::-webkit-details-marker { display: none; }
#dashboard .rd-full > summary:hover { background: var(--experience-panel-warm); }
#dashboard .rd-full > summary:focus-visible { outline: 2px solid var(--experience-accent-fill); outline-offset: -3px; }
#dashboard .rd-full-summary { display: grid; gap: 3px; min-width: 0; }
#dashboard .rd-full-summary strong { color: var(--experience-ink); font-size: 1rem; font-weight: 650; letter-spacing: -.015em; }
#dashboard .rd-full-summary small { color: var(--experience-quiet); font-size: .8125rem; font-weight: 500; line-height: 1.4; }
#dashboard .rd-full-toggle {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  color: var(--experience-accent);
  border: 1px solid rgba(67,56,202,.32);
  border-radius: 10px;
  background: var(--experience-accent-soft);
}
#dashboard .rd-full-toggle svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; transition: transform var(--motion-state) var(--experience-ease); }
#dashboard .rd-full[open] .rd-full-toggle svg { transform: rotate(180deg); }
#dashboard .rd-full-body { display: grid; gap: 24px; padding: 24px 18px 18px; border-top: 1px solid var(--experience-border); }
#dashboard .rd-full-body .rd-journey { margin-bottom: 0; }
#dashboard .rd-full-body .rd-journey li { min-height: 72px; }
#dashboard .rd-full-body .rd-journey strong {
  overflow: visible;
  line-height: 1.25;
  text-overflow: clip;
  white-space: normal;
}
#dashboard .rd-full-support { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,.72fr); align-items: start; gap: 18px; }
#dashboard .rd-full-support:empty { display: none; }

#dashboard .rd-side { gap: .85rem; }
#dashboard .rd-up-next > .rd-kicker { color: var(--experience-quiet); }
#dashboard .rd-queue { gap: .55rem; }
#dashboard#dashboard .rd-queue button {
  min-height: 78px;
  border-color: #dedbd2 !important;
  border-radius: 13px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}
#dashboard#dashboard .rd-queue button:hover { border-color: rgba(67,56,202,.35) !important; background: #EFF6FF !important; box-shadow: var(--experience-shadow) !important; }
#dashboard .rd-queue .rd-points { color: var(--experience-accent-strong); border-color: rgba(67,56,202,.28); background: var(--experience-accent-soft); }
#dashboard .rd-queue .rd-body strong { color: var(--experience-ink); font-size: .9375rem; }
#dashboard .rd-queue .rd-body small { color: var(--experience-muted); font-size: .8125rem; }

#dashboard#dashboard .rd-gates {
  border-color: #dedbd2 !important;
  background: #f0eee8 !important;
  box-shadow: none !important;
}
#dashboard .rd-gates-head { color: var(--experience-quiet); }
#dashboard .rd-gates > div { border-color: var(--experience-border); }
#dashboard .rd-gates .rd-mark { border-color: var(--experience-border-strong); }
#dashboard .rd-gates > div[data-met="true"] .rd-mark { background: var(--experience-accent-fill); }
#dashboard .rd-gates .rd-body strong { color: var(--experience-muted); font-size: .8125rem; }
#dashboard .rd-gates .rd-body small { color: var(--experience-quiet); font-size: .6875rem; }

#dashboard .rd-phases { gap: .75rem; }
#dashboard .rd-phase {
  border-color: var(--experience-border);
  border-radius: 15px;
  background: var(--experience-panel);
  box-shadow: 0 1px 2px rgba(23,21,18,.025);
}
#dashboard .rd-phase[open] { border-color: rgba(67,56,202,.38); background: var(--experience-panel-warm); box-shadow: var(--experience-shadow); }
#dashboard .rd-phase summary { min-height: 96px; padding: 1rem 1.25rem; }
#dashboard .rd-phase summary:hover { background: rgba(67,56,202,.035); }
#dashboard .rd-phase-number { color: var(--experience-quiet); border-color: var(--experience-border-strong); }
#dashboard .rd-phase-copy .rd-kicker { color: var(--experience-quiet); }
#dashboard .rd-phase-copy strong { color: var(--experience-ink); font-size: 1.125rem; }
#dashboard .rd-phase-copy > small { color: var(--experience-muted); font-size: .875rem; }
#dashboard .rd-phase-score { color: var(--experience-ink); }
#dashboard .rd-phase-score small { color: var(--experience-quiet); }
#dashboard .rd-phase-toggle { border-color: var(--experience-border-strong); }
#dashboard .rd-phase-toggle::before,
#dashboard .rd-phase-toggle::after { background: var(--experience-muted); }
#dashboard .rd-phase[open] .rd-phase-toggle { border-color: rgba(67,56,202,.35); background: var(--experience-accent-soft); }
#dashboard .rd-phase[data-state="current"] .rd-phase-number,
#dashboard .rd-phase[data-state="done"] .rd-phase-number { color: #171208; border-color: var(--experience-accent-fill); background: var(--experience-accent-fill); }
#dashboard .rd-phase[data-state="current"] .rd-phase-copy .rd-kicker { color: var(--experience-accent-strong); }
#dashboard .rd-phase-body { border-top-color: var(--experience-border); }
#dashboard .rd-phase-body .rd-track { background: #e6e1d5; }
#dashboard .rd-phase-progress { color: var(--experience-quiet); }
#dashboard .rd-reqs > li + li { border-top-color: var(--experience-border); }
#dashboard .rd-reqs > li > button:hover { border-color: rgba(67,56,202,.22); background: var(--experience-accent-soft); }
#dashboard .rd-reqs .rd-mark { border-color: var(--experience-border-strong); }
#dashboard .rd-reqs li[data-state="done"] .rd-mark { border-color: transparent; background: var(--experience-accent-fill); box-shadow: 0 0 0 3px rgba(67,56,202,.1); }
#dashboard .rd-reqs .rd-body strong { color: var(--experience-ink); font-size: 1rem; }
#dashboard .rd-reqs li[data-state="done"] .rd-body strong { color: var(--experience-muted); text-decoration-color: rgba(23,21,18,.25); }
#dashboard .rd-reqs .rd-body small { color: var(--experience-muted); font-size: .875rem; }
#dashboard .rd-reqs .rd-status,
#dashboard .rd-points-flat { color: var(--experience-accent-strong); }
#dashboard .rd-reqs li[data-state="done"] .rd-status { color: var(--experience-accent-strong); }
#dashboard .rd-reqs .rd-detail { color: var(--experience-quiet); }
#dashboard .rd-reqs svg:last-child { stroke: var(--experience-accent-strong); }

/* Tool library and saved work: white cards with softer edges. */
#dashboard .tools-section { margin-top: 3.25rem; }
#dashboard .tools-section .panel-head { margin-bottom: 1.25rem; }
#dashboard .tools-section .panel-title { font-size: clamp(2rem,2.7vw,2.5rem); }
#dashboard .hgrid { grid-template-columns: repeat(auto-fit,minmax(min(100%,16.25rem),1fr)); gap: 14px; }
#dashboard#dashboard .hcard {
  min-height: 198px;
  padding: 22px;
  border: 1px solid #dedbd2 !important;
  border-radius: 15px !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: var(--experience-shadow) !important;
  text-align: start;
  transition: transform 160ms var(--experience-ease),border-color 160ms var(--experience-ease),box-shadow 160ms var(--experience-ease),background-color 160ms var(--experience-ease) !important;
}
#dashboard#dashboard .hcard:hover { border-color: rgba(67,56,202,.34) !important; background: #EFF6FF !important; box-shadow: var(--experience-shadow-hover) !important; transform: translateY(-2px) !important; }
#dashboard .hcard:active { scale: 1; transform: scale(.985) !important; }
#dashboard .hcard .ci { width: 42px; height: 42px; color: var(--experience-accent-strong); border-color: rgba(67,56,202,.24); border-radius: 11px; background: var(--experience-accent-soft); }
#dashboard .hcard-group { color: var(--experience-accent-strong); }
#dashboard .hcard-title { margin-top: .75rem; font-size: 1.125rem; line-height: 1.25; }
#dashboard .hcard-description { margin-top: .48rem; font-size: .9375rem; }
#dashboard .hcard-foot { color: var(--experience-quiet); border-top-color: var(--experience-border); }
#dashboard .hcard-open { color: var(--experience-accent-strong); border-color: rgba(67,56,202,.22); background: var(--experience-accent-soft); }
#dashboard .hcard.locked-card { opacity: .68; }

#dashboard .saved-grid { gap: 14px; margin-top: 4.5rem; }
#dashboard#dashboard :is(.school-list-section,.svc-hero,.concierge-block,.svc-out-shell,.out-box,.match-card,.sc-card,.an-card,.aid-card,.school-card,.deadline-item,.dl-item,.path-step,.sch-card,.tutor-note-card,.tutor-test-card,.term-box,.qbox,.chat-window,.resume-preview,.interview-room,.mc-card,.eval-row,.cost-card,.essay-history-section,.saved-item,.progress-section,.settings-group,.plan-current,.plan-feature-card,.panel,.sl-item,.ev-item,.rd-facet,.essay-insight-row,.aid-summary-strip,.cost-metric-box,.mc-detail-box,.sc-detail-box,.an-detail-box,.tutor-input-card,.resume-section,.dl-select-field,.interview-placeholder,.tutor-empty-inline) {
  color: var(--experience-ink);
  border-color: #dedbd2 !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: var(--experience-shadow) !important;
}
#dashboard :is(.school-list-section,.svc-hero) { border-radius: 18px !important; }
#dashboard :is(.match-card,.sc-card,.an-card,.aid-card,.school-card,.deadline-item,.dl-item,.path-step,.sch-card,.tutor-note-card,.tutor-test-card,.term-box,.qbox,.mc-card,.eval-row,.cost-card,.saved-item,.tutor-input-card,.resume-section,.dl-select-field) { border-radius: 14px !important; }
#dashboard .sl-header { border-bottom-color: var(--experience-border); }
#dashboard .sl-title { font-size: 1.125rem; }
#dashboard .sl-empty { color: var(--experience-muted); font-size: .9375rem; }

/* Tool pages share the same readable, open composition. */
#dashboard .svc-breadcrumb { color: var(--experience-quiet); font-family: var(--dashboard-font-body); font-size: .75rem; letter-spacing: .01em; }
#dashboard .svc-hero { min-height: 0; padding: clamp(24px,2.8vw,34px); }
#dashboard .svc-label { color: var(--experience-accent-strong); }
#dashboard .svc-title { max-width: 22ch; font-size: clamp(2.25rem,3.2vw,2.75rem); line-height: 1.07; }
#dashboard .svc-desc { max-width: 65ch; color: var(--experience-muted); font-size: 1rem; line-height: 1.6; }
#dashboard .svc-profile-pill {
  max-width: min(100%, 22rem);
  color: var(--experience-accent-strong);
  border-color: rgba(67,56,202,.25);
  background: var(--experience-accent-soft);
  line-height: 1.35;
  text-wrap: pretty;
  white-space: normal;
}
#dashboard .concierge-block { box-shadow: none !important; }
#dashboard .concierge-q { color: var(--experience-ink); font-size: 1rem; }
#dashboard .q-num { color: var(--experience-accent-strong); }
#dashboard :is(.svc-out-header,.mc-header,.sc-card-header,.an-card-header,.aid-card-header) { border-bottom-color: var(--experience-border) !important; background: var(--experience-panel-soft); }

/* Controls: gold means primary action; white and ink mean secondary. */
#dashboard#dashboard :is(.ctrl-btn.primary,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.mc-action.primary) {
  color: #171208 !important;
  border-color: rgba(116,80,14,.18) !important;
  background: var(--experience-accent-fill) !important;
  background-image: none !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.46),0 12px 22px -18px rgba(116,80,14,.42) !important;
}
#dashboard#dashboard :is(.ctrl-btn.primary,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.mc-action.primary):hover { background: #dfbd68 !important; }
#dashboard :is(.ctrl-btn,.pb-edit,.svc-back-btn,.opt-pill,.subject-btn,.choice-btn,.tag,.chat-suggest,.mc-action):not(.primary) { color: var(--experience-ink); border-color: var(--experience-border) !important; background: #ffffff; }
#dashboard :is(.opt-pill,.subject-btn,.choice-btn,.tag,.chat-suggest):hover { border-color: rgba(67,56,202,.3) !important; background: var(--experience-panel-warm) !important; }
#dashboard :is(.opt-pill.active,.opt-pill.sel,.tag.active,.tag.sel,.subject-btn.active,.resume-tmpl-card.active,[aria-pressed="true"]) { color: var(--experience-accent-strong) !important; border-color: rgba(67,56,202,.34) !important; background: var(--experience-accent-soft) !important; box-shadow: none !important; }
#dashboard :is(button.opt-pill,button.tag) {
  min-height: 44px;
  appearance: none;
  font: inherit;
  line-height: 1.25;
  text-align: start;
}
#dashboard :is(button.opt-pill,button.tag):focus-visible { outline: 2px solid var(--experience-accent-fill); outline-offset: 2px; }
#dashboard :is(button.opt-pill,button.tag)[aria-checked="true"] { color: var(--experience-accent-strong) !important; border-color: rgba(67,56,202,.34) !important; background: var(--experience-accent-soft) !important; box-shadow: none !important; }
#dashboard .luxury-toggle::before { background: #ddd8cd; box-shadow: inset 0 0 0 1px var(--experience-border-strong); }
#dashboard .luxury-toggle.on::before { background: var(--experience-accent-fill); box-shadow: inset 0 0 0 1px rgba(116,80,14,.25); }

/* One input language: softly squared, sturdy, quiet, and fast. */
#dashboard :is(.fg,.field-group) {
  gap: 8px;
}
#dashboard :is(.flabel,.field-label,.dl-select-label) {
  color: var(--experience-muted) !important;
  font-family: var(--dashboard-font-body) !important;
  font-size: .75rem !important;
  font-weight: 600 !important;
  line-height: 1.35;
  letter-spacing: .01em !important;
  text-transform: none !important;
}
#dashboard :is(.fg,.field-group):focus-within > :is(.flabel,.field-label),
#dashboard .dl-select-field:focus-within .dl-select-label {
  color: var(--experience-accent-strong) !important;
}

#dashboard#dashboard :is(
  .finput,
  .fselect,
  .ftextarea,
  .hero-input,
  .luxury-textarea,
  .dl-select,
  .ap-select-trigger,
  .ps-fr-area,
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  textarea,
  select
) {
  width: 100%;
  min-height: var(--field-height);
  padding: 12px var(--field-padding-inline) !important;
  color: var(--experience-ink) !important;
  caret-color: var(--experience-accent);
  border: 1px solid var(--field-border) !important;
  border-radius: var(--field-radius) !important;
  outline: 0;
  background-color: var(--field-surface) !important;
  background-image: none !important;
  box-shadow: inset 0 1px 1px rgba(23,21,18,.025),0 1px 0 rgba(255,255,255,.72) !important;
  font-family: var(--dashboard-font-body) !important;
  font-size: .9375rem;
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: 0;
  transition:
    border-color var(--motion-feedback) ease,
    background-color var(--motion-feedback) ease,
    box-shadow var(--motion-state) var(--experience-ease) !important;
}

#dashboard#dashboard :is(.finput,.fselect,.ftextarea,.hero-input,.luxury-textarea,.dl-select,.ap-select-trigger,.ps-fr-area,input,textarea,select)::placeholder {
  color: #898277 !important;
  font-style: normal !important;
  opacity: 1;
}

@media (hover: hover) {
  #dashboard#dashboard :is(
    .finput,
    .fselect,
    .ftextarea,
    .hero-input,
    .luxury-textarea,
    .dl-select,
    .ap-select-trigger,
    .ps-fr-area,
    input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
    textarea,
    select
  ):not(:disabled):not(:focus):hover {
    border-color: var(--field-border-hover) !important;
    background-color: var(--field-surface-hover) !important;
  }
}

#dashboard#dashboard :is(
  .finput,
  .fselect,
  .ftextarea,
  .hero-input,
  .luxury-textarea,
  .dl-select,
  .ap-select-trigger,
  .ps-fr-area,
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  textarea,
  select
):focus,
#dashboard#dashboard .ap-select-trigger.open {
  border-color: rgba(67,56,202,.72) !important;
  outline: 0 !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 4px var(--field-ring),0 1px 2px rgba(23,21,18,.045) !important;
}

#dashboard#dashboard :is(input,textarea,select,.ap-select-trigger)[aria-invalid="true"] {
  border-color: #b84b43 !important;
  box-shadow: 0 0 0 4px rgba(184,75,67,.1) !important;
}
#dashboard#dashboard :is(input,textarea,select,.ap-select-trigger):disabled {
  color: #8d877d !important;
  border-color: #e4e1da !important;
  background-color: #f2f0eb !important;
  box-shadow: none !important;
  cursor: not-allowed;
  opacity: 1;
}
#dashboard#dashboard :is(input,textarea)[readonly] {
  background-color: #f8f7f3 !important;
}
#dashboard#dashboard :is(textarea,.ftextarea,.luxury-textarea,.ps-fr-area) {
  min-height: 120px;
  padding-block: 14px !important;
  line-height: 1.62;
  resize: vertical;
}
#dashboard#dashboard select:not([data-ap-custom]) {
  appearance: none;
  padding-right: 42px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4.5 6.25 3.5 3.5 3.5-3.5' stroke='%2374500e' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
}
#dashboard#dashboard :is(input,textarea):-webkit-autofill {
  -webkit-text-fill-color: var(--experience-ink);
  caret-color: var(--experience-accent);
  box-shadow: inset 0 0 0 1000px #fff,0 0 0 4px transparent !important;
  transition: background-color 9999s ease-out;
}

/* Compound chat control owns the shell; its textarea stays visually weightless. */
#dashboard#dashboard .chat-input-wrap {
  min-height: 58px;
  padding: 7px 8px 7px 14px !important;
  border: 1px solid var(--field-border) !important;
  border-radius: var(--field-radius) !important;
  background: var(--field-surface) !important;
  box-shadow: inset 0 1px 1px rgba(23,21,18,.025) !important;
  transition:
    border-color var(--motion-feedback) ease,
    background-color var(--motion-feedback) ease,
    box-shadow var(--motion-state) var(--experience-ease) !important;
}
#dashboard#dashboard .chat-input-wrap:focus-within {
  border-color: rgba(67,56,202,.72) !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 4px var(--field-ring),0 1px 2px rgba(23,21,18,.045) !important;
}
#dashboard#dashboard .tab-panel .chat-input-wrap textarea.chat-input {
  min-height: 42px !important;
  padding: 10px 4px !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  resize: none;
}
#dashboard#dashboard .tab-panel .chat-input-wrap textarea.chat-input:focus {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* Custom selects move like a small native menu, never like a floating card. */
#dashboard#dashboard .ap-select-trigger {
  gap: 10px;
  text-align: left;
}
#dashboard .ap-select-chevron {
  width: 15px;
  height: 15px;
  stroke: var(--experience-accent-strong) !important;
  transition: transform var(--motion-state) var(--experience-spring),stroke var(--motion-feedback) ease !important;
}
#dashboard#dashboard .ap-select-dropdown {
  top: calc(100% + 7px);
  padding: 5px;
  color: var(--experience-ink);
  border: 1px solid var(--field-border) !important;
  border-radius: var(--field-radius) !important;
  background: #ffffff !important;
  box-shadow: 0 18px 45px -22px rgba(23,21,18,.34),0 4px 12px rgba(23,21,18,.07) !important;
  transform: translateY(-4px) scale(.985);
  transform-origin: 50% 0;
  transition: opacity var(--motion-state) ease,transform var(--motion-state) var(--experience-spring) !important;
}
#dashboard#dashboard .ap-select-dropdown.open { transform: translateY(0) scale(1); }
#dashboard#dashboard .ap-select-dropdown::before { display: none; }
#dashboard#dashboard .ap-select-option {
  min-height: 44px;
  padding: 10px 11px !important;
  color: var(--experience-muted);
  border: 0;
  border-radius: 9px;
  font-family: var(--dashboard-font-body);
  font-size: .875rem;
  font-weight: 500;
  transition: color var(--motion-feedback) ease,background-color var(--motion-feedback) ease !important;
}
#dashboard#dashboard .ap-select-option:hover,
#dashboard#dashboard .ap-select-option.selected {
  padding-left: 11px !important;
  color: var(--experience-accent-strong);
  background: var(--experience-accent-soft);
}
#dashboard#dashboard .ap-select-group {
  padding: 9px 11px 6px;
  color: var(--experience-quiet);
  background: #ffffff;
  border: 0;
  font-family: var(--dashboard-font-body);
  font-size: .6875rem;
  letter-spacing: .06em;
}

/* Shared tactile timing for form-adjacent controls. */
#dashboard :is(.ctrl-btn,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.pb-edit,.subject-btn,.choice-btn,.tag,.chat-suggest,.mc-action,.app-modal-close) {
  transition:
    color var(--motion-feedback) ease,
    border-color var(--motion-feedback) ease,
    background-color var(--motion-feedback) ease,
    box-shadow var(--motion-state) var(--experience-ease),
    transform var(--motion-press) ease !important;
}
#dashboard :is(.ctrl-btn,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.pb-edit,.subject-btn,.choice-btn,.tag,.chat-suggest,.mc-action):active {
  transform: scale(.985);
}
#dashboard :is(button,a,input,textarea,select,[tabindex]):focus-visible { outline-color: var(--experience-accent); }

/* Account modal and profile setup belong to the same light product. */
.app-modal {
  --motion-feedback: 140ms;
  --motion-state: 190ms;
  --motion-panel: 280ms;
  --experience-ease: cubic-bezier(.2,.8,.2,1);
  --experience-spring: cubic-bezier(.22,1,.36,1);
  --field-height: 50px;
  --field-radius: 12px;
  --text: #171512;
  --t2: #5d584f;
  --t3: #746e63;
  --t4: #746e63;
  --border: #dedbd2;
  --border-2: #c8c2b6;
  --gold3: #312E81;
  color: #171512;
  background: rgba(17,16,14,.58);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  overscroll-behavior: contain;
}
.app-modal .app-modal-box { color: #171512; border: 1px solid #dedbd2 !important; background: #ffffff !important; background-image: none !important; box-shadow: 0 38px 100px -40px rgba(17,16,14,.62) !important; }
.app-modal .app-modal-head { border-bottom-color: #e7e4dc; background: rgba(255,255,255,.96) !important; }
.app-modal :is(.app-modal-title,.plan-overview-name,.settings-section-title,.settings-group-title) { color: #171512; font-family: "Inter Tight",Inter,sans-serif; font-weight: 650; }
.app-modal :is(.app-modal-subtitle,.settings-group-note,.plan-overview-copy,.plan-tools li) { color: #5d584f; }
.app-modal :is(.account-summary,.plan-overview,.settings-group) { border-color: #dedbd2 !important; background: #f8f7f3 !important; background-image: none !important; box-shadow: none !important; }
.app-modal .app-modal-close { color: #171512; border-color: #dedbd2; background: #ffffff; box-shadow: none; }
.app-modal .app-modal-close:hover { color: #312E81; border-color: rgba(67,56,202,.34); background: #F5F3FF; }
.app-modal.app-modal :is(.finput,.fselect,.ftextarea,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),textarea,select) {
  width: 100%;
  min-height: var(--field-height);
  padding: 12px 15px !important;
  color: #171512 !important;
  caret-color: #4338CA;
  border: 1px solid #d7d3ca !important;
  border-radius: var(--field-radius) !important;
  outline: 0;
  background: #ffffff !important;
  box-shadow: inset 0 1px 1px rgba(23,21,18,.025) !important;
  font-family: Inter,ui-sans-serif,system-ui,sans-serif;
  font-size: .9375rem;
  line-height: 1.45;
  transition: border-color var(--motion-feedback) ease,background-color var(--motion-feedback) ease,box-shadow var(--motion-state) var(--experience-ease) !important;
}
.app-modal.app-modal :is(.finput,.fselect,.ftextarea,input,textarea,select):focus {
  border-color: rgba(67,56,202,.72) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 4px rgba(67,56,202,.13),0 1px 2px rgba(23,21,18,.045) !important;
}
.app-modal.app-modal :is(.finput,.fselect,.ftextarea,input,textarea,select)::placeholder { color: #898277 !important; font-style: normal !important; opacity: 1; }
.app-modal :is(.flabel,.field-label) { color: #5d584f !important; font-family: Inter,ui-sans-serif,system-ui,sans-serif; font-size: .75rem !important; font-weight: 600; letter-spacing: .01em !important; text-transform: none !important; }
.app-modal .app-modal-box { transition: opacity var(--motion-panel) ease,transform var(--motion-panel) var(--experience-spring) !important; }
.app-modal .app-modal-close { transition: color var(--motion-feedback) ease,border-color var(--motion-feedback) ease,background-color var(--motion-feedback) ease,transform 110ms ease !important; }
.app-modal :is(button,a,input,textarea,select):focus-visible { outline: 2px solid #4338CA; outline-offset: 2px; }

#profile-screen {
  --motion-feedback: 140ms;
  --motion-state: 190ms;
  --experience-ease: cubic-bezier(.2,.8,.2,1);
  --field-height: 50px;
  --field-radius: 12px;
  color-scheme: light;
  color: #171512;
  background: #f6f5f1;
  background-image: none;
}
#profile-screen .profile-logo { color: #171512; font-family: "Inter Tight",Inter,sans-serif; font-weight: 650; }
#profile-screen .profile-title { color: #171512; font-family: "Inter Tight",Inter,sans-serif; font-weight: 650; }
#profile-screen .profile-sub,
#profile-screen .profile-assurance { color: #5d584f; }
#profile-screen :is(.profile-card,.step-panel.active,.steps-indicator) { color: #171512; border-color: #dedbd2; background: #ffffff; background-image: none; box-shadow: 0 18px 46px -38px rgba(23,21,18,.28); }
#profile-screen :is(.sec-head,.flabel,.si-label) { color: #171512; }
#profile-screen :is(.flabel,.field-label) { color: #5d584f !important; font-family: Inter,ui-sans-serif,system-ui,sans-serif; font-size: .75rem !important; font-weight: 600; letter-spacing: .01em !important; text-transform: none !important; }
#profile-screen :is(.finput,.fselect,textarea,select,input:not([type="checkbox"]):not([type="radio"]):not([type="range"])) {
  width: 100%;
  min-height: var(--field-height);
  padding: 12px 15px !important;
  color: #171512 !important;
  caret-color: #4338CA;
  border: 1px solid #d7d3ca !important;
  border-radius: var(--field-radius) !important;
  outline: 0;
  background: #ffffff !important;
  box-shadow: inset 0 1px 1px rgba(23,21,18,.025) !important;
  font-family: Inter,ui-sans-serif,system-ui,sans-serif;
  font-size: .9375rem;
  line-height: 1.45;
  transition: border-color var(--motion-feedback) ease,background-color var(--motion-feedback) ease,box-shadow var(--motion-state) var(--experience-ease) !important;
}
#profile-screen :is(.finput,.fselect,textarea,select,input):focus {
  border-color: rgba(67,56,202,.72) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 4px rgba(67,56,202,.13),0 1px 2px rgba(23,21,18,.045) !important;
}
#profile-screen :is(.finput,.fselect,textarea,select,input)::placeholder { color: #898277 !important; font-style: normal !important; opacity: 1; }
#profile-screen :is(.tag,.btn-back) { color: #171512; border-color: #dedbd2; background: #ffffff; }
#profile-screen :is(.tag.sel,.tag.active) { color: #312E81; border-color: rgba(67,56,202,.34); background: #F5F3FF; }
#profile-screen .btn-next { color: #171208; border-color: rgba(116,80,14,.18); background: #93C5FD; }

/* Custom select parity in onboarding and account surfaces. */
:is(.app-modal.app-modal,#profile-screen) .ap-select-trigger {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 50px;
  padding: 12px 15px !important;
  gap: 10px;
  color: #171512 !important;
  border: 1px solid #d7d3ca !important;
  border-radius: 12px !important;
  outline: 0;
  background: #ffffff !important;
  box-shadow: inset 0 1px 1px rgba(23,21,18,.025) !important;
  font-family: Inter,ui-sans-serif,system-ui,sans-serif;
  font-size: .9375rem;
  font-weight: 400;
  transition: border-color 140ms ease,background-color 140ms ease,box-shadow 190ms cubic-bezier(.2,.8,.2,1) !important;
}
:is(.app-modal.app-modal,#profile-screen) .ap-select-trigger:is(:focus-visible,.open) {
  border-color: rgba(67,56,202,.72) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 4px rgba(67,56,202,.13),0 1px 2px rgba(23,21,18,.045) !important;
}
:is(.app-modal.app-modal,#profile-screen) .ap-select-chevron {
  stroke: #312E81 !important;
  transition: transform 190ms cubic-bezier(.22,1,.36,1),stroke 140ms ease !important;
}
:is(.app-modal.app-modal,#profile-screen) .ap-select-dropdown {
  top: calc(100% + 7px);
  padding: 5px;
  color: #171512;
  border: 1px solid #d7d3ca !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 45px -22px rgba(23,21,18,.34),0 4px 12px rgba(23,21,18,.07) !important;
  transform: translateY(-4px) scale(.985);
  transform-origin: 50% 0;
  transition: opacity 190ms ease,transform 190ms cubic-bezier(.22,1,.36,1) !important;
}
:is(.app-modal.app-modal,#profile-screen) .ap-select-dropdown.open { transform: translateY(0) scale(1); }
:is(.app-modal.app-modal,#profile-screen) .ap-select-dropdown::before { display: none; }
:is(.app-modal.app-modal,#profile-screen) .ap-select-option {
  min-height: 44px;
  padding: 10px 11px !important;
  color: #5d584f;
  border: 0;
  border-radius: 9px;
  font-family: Inter,ui-sans-serif,system-ui,sans-serif;
  font-size: .875rem;
  font-weight: 500;
  transition: color 140ms ease,background-color 140ms ease !important;
}
:is(.app-modal.app-modal,#profile-screen) .ap-select-option:is(:hover,.selected) {
  padding-left: 11px !important;
  color: #312E81;
  background: #F5F3FF;
}
:is(.app-modal.app-modal,#profile-screen) .ap-select-group {
  color: #746e63;
  border: 0;
  background: #ffffff;
  font-family: Inter,ui-sans-serif,system-ui,sans-serif;
}

@media (max-width: 1080px) {
  #dashboard .rd-plan,
  #dashboard .rd-full-support { grid-template-columns: 1fr; }
}

@media (min-width: 961px) {
  #dashboard#dashboard .sidebar {
    width: 248px !important;
    min-width: 248px !important;
    max-width: 248px !important;
    padding: 70px 10px 14px;
    border-radius: 24px;
    overflow-x: hidden;
    overflow-y: auto;
  }
  #dashboard .sidebar::before { left: 28px; translate: 0 0; }
  #dashboard :is(.sidebar-intro,.snav-label,.sidebar-ai-state) { display: flex; }
  #dashboard .sidebar-intro { display: grid; margin-top: 2px; }
  #dashboard .snav-label { display: block; }
  #dashboard#dashboard .nav-item {
    display: flex;
    justify-content: flex-start;
    width: calc(100% - 8px);
    min-height: 44px;
    margin: 2px 4px;
    padding: 9px 11px;
    gap: 11px;
    color: #b7b0a4;
    border-radius: 11px;
    font-size: .8125rem;
  }
  #dashboard#dashboard .nav-item:hover,
  #dashboard#dashboard .nav-item.active { color: var(--experience-dark-text); }
  #dashboard .nav-item::after { inset: 0; border-radius: 11px; }
  #dashboard .nav-item svg { width: 18px; height: 18px; flex: none; }
  #dashboard .topbar { left: 284px; }
  #dashboard .content { margin-left: 266px !important; }
}

@media (max-width: 960px) {
  #dashboard .content { padding: 94px clamp(18px,4vw,34px) 72px; }
  #dashboard .topbar { background: rgba(255,255,255,.96); }
  #dashboard .sidebar { border-radius: 0 20px 20px 0; }
  #dashboard .home-status { grid-template-columns: 1fr; }
  #dashboard .hs-progress { border-inline-start: 0; border-top: 1px solid var(--experience-border); }
}

@media (max-width: 700px) {
  #dashboard .content { padding-inline: 16px; }
  #dashboard .app-head { margin-bottom: 28px; }
  #dashboard .welcome { max-width: 14ch; font-size: clamp(2.45rem,11.5vw,3.35rem); }
  #dashboard .rd-section { margin-block: 2.25rem 3.25rem !important; }
  #dashboard .rd-compact-head { align-items: start; flex-direction: column; gap: 10px; }
  #dashboard .rd-compact-head .panel-title { font-size: clamp(1.75rem,8vw,2.15rem); }
  #dashboard .rd-journey li > span:last-child { background: transparent; }
  #dashboard .rd-next { min-height: 0; padding: 1.4rem; }
  #dashboard .rd-next h3 { font-size: 2rem; }
  #dashboard .rd-phase summary { padding-inline: .9rem; }
  #dashboard .rd-phase-copy strong { font-size: 1.05rem; }
  #dashboard .tools-section,
  #dashboard .saved-grid { margin-top: 3.5rem; }
  #dashboard .hgrid { grid-template-columns: 1fr; }
  #dashboard .hcard { min-height: 164px; }
  #dashboard .svc-title { font-size: clamp(2rem,9vw,2.35rem); }
  #dashboard .rd-full-body { gap: 18px; padding: 18px 14px 14px; }
  #dashboard .rd-full > summary { min-height: 68px; padding-inline: 14px; }
  #dashboard { --field-height: 50px; }
  #dashboard#dashboard :is(.finput,.fselect,.ftextarea,.hero-input,.luxury-textarea,.dl-select,.ap-select-trigger,.ps-fr-area,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),textarea,select) { font-size: 16px !important; }
}

@media (max-width: 480px) {
  #dashboard .content { padding-inline: 12px; }
  #dashboard .hs-identity,
  #dashboard .hs-progress { padding: 18px; }
  #dashboard .rd-gates { padding-inline: .85rem !important; }
  #dashboard .rd-reqs > li > * { gap: .55rem; }
  #dashboard .rd-reqs .rd-points-flat { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  #dashboard,
  .app-modal,
  #profile-screen {
    --motion-press: .01ms;
    --motion-feedback: .01ms;
    --motion-state: .01ms;
    --motion-panel: .01ms;
  }
  #dashboard :is(.hcard,.ap-select-dropdown,.ap-select-chevron,.ctrl-btn,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.pb-edit,.subject-btn,.choice-btn,.tag,.chat-suggest,.mc-action),
  .app-modal .app-modal-box,
  .app-modal .app-modal-close {
    transition-duration: .01ms !important;
  }
  #dashboard :is(.hcard,.ap-select-dropdown,.ctrl-btn,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.pb-edit,.subject-btn,.choice-btn,.tag,.chat-suggest,.mc-action):active { transform: none !important; }
}

/* ======================================================================
   HIGH-CONTRAST METALLIC PASS
   Black owns typography. White owns dark surfaces. Gold behaves as metal.
   ====================================================================== */

/* Light work surfaces use a single, fully opaque text color. */
#dashboard .content .tab-panel {
  color: #090908 !important;
  font-size: 1rem;
}
#dashboard :is(.topbar,.home-status,.hcard,.rd-phase,.rd-queue,.rd-gates,.school-list-section,.svc-hero) {
  color: #090908;
}
#dashboard :is(.t-user,.t-user strong,.logout-btn,.panel-meta,.app-head-signal,.hs-context,.hs-context strong) {
  color: #090908 !important;
}
#dashboard .dashboard-skip-link { color: #090908 !important; }

/* Decorative headline gradients are removed so display copy reads as one thought. */
#dashboard :is(.tlogo,.welcome .g,.svc-title .g,.ptitle .g,.upgrade-title .g,.sch-amt,.calc-display-val,.cost-net,.cost-result-net-val) {
  color: #090908 !important;
  background: none !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
}

/* Hierarchy comes from type, weight, and spacing instead of faded copy. */
#dashboard#dashboard .content .tab-panel :is(.svc-desc,.pdesc,.wsub,.chat-bubble,.concierge-q,.out-inner,.stream-text) {
  color: var(--experience-muted) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.62 !important;
}
#dashboard#dashboard .content .tab-panel :is(.hcard-description,.sl-empty,.rd-phase-copy > small,.rd-reqs .rd-body small,.rd-queue .rd-body small,.hero-input-hint,.svc-cta-note) {
  color: var(--experience-muted) !important;
  font-size: .875rem !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}
#dashboard#dashboard .content .tab-panel small,
#dashboard#dashboard .content .tab-panel :is(.panel-meta,.svc-breadcrumb,.rd-kicker,.rd-gates-head,.rd-status,.rd-points-flat) {
  color: var(--experience-quiet) !important;
  font-size: .8125rem !important;
  font-weight: 500;
}
#dashboard :is(.flabel,.field-label,.dl-select-label) {
  color: #090908 !important;
  font-size: .8125rem !important;
  font-weight: 600 !important;
}
#dashboard#dashboard :is(.finput,.fselect,.ftextarea,.hero-input,.luxury-textarea,.dl-select,.ap-select-trigger,.ps-fr-area,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),textarea,select) {
  color: #090908 !important;
  font-size: 1rem !important;
}
#dashboard#dashboard :is(.finput,.fselect,.ftextarea,.hero-input,.luxury-textarea,.dl-select,.ps-fr-area,input,textarea,select)::placeholder,
.app-modal.app-modal :is(.finput,.fselect,.ftextarea,input,textarea,select)::placeholder,
#profile-screen :is(.finput,.fselect,textarea,select,input)::placeholder {
  color: var(--experience-quiet,#5f5a52) !important;
  font-style: normal !important;
  opacity: 1 !important;
}

/* Dark navigation and the single black readiness card stay white-on-black. */
#dashboard#dashboard .sidebar :is(div,span,small,strong,button) {
  color: #ffffff !important;
}
#dashboard#dashboard :is(.snav-label,.sidebar-intro span,.sidebar-ai-state small,.nav-item,.nav-item:hover,.nav-item.active) {
  color: #ffffff !important;
}
#dashboard#dashboard .mobile-nav :is(span,button) { color: #ffffff !important; }
#dashboard#dashboard .content .tab-panel .rd-next :is(div,span,small,strong,p,h1,h2,h3,h4) {
  color: #ffffff !important;
}
#dashboard#dashboard .content .tab-panel .rd-next :is(.ctrl-btn,.rd-score-gain) { color: #090908 !important; }

/* Primary controls use a contrast-safe metallic gold with a real edge/highlight. */
#dashboard#dashboard :is(.t-plan,.ctrl-btn.primary,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.mc-action.primary,.calc-btn,.upgrade-btn,.tutor-btn-primary,.tutor-test-start),
#profile-screen .btn-next {
  color: #090908 !important;
  border: 1px solid #4338CA !important;
  background-color: #C4B5FD !important;
  background-image: linear-gradient(135deg,#4338CA 0%,#C4B5FD 24%,#93C5FD 46%,#4338CA 63%,#4338CA 80%,#C4B5FD 100%) !important;
  background-size: 180% 180% !important;
  background-position: 35% 35% !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62),inset 0 -1px 0 rgba(49,46,129,.28),0 10px 24px -17px rgba(49,46,129,.72) !important;
}
@media (hover: hover) {
  #dashboard#dashboard :is(.t-plan,.ctrl-btn.primary,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.mc-action.primary,.calc-btn,.upgrade-btn,.tutor-btn-primary,.tutor-test-start):hover,
  #profile-screen .btn-next:hover {
    background-color: #4338CA !important;
    background-image: linear-gradient(135deg,#4338CA 0%,#C4B5FD 25%,#93C5FD 47%,#C4B5FD 66%,#4338CA 82%,#c5a64e 100%) !important;
    background-position: 70% 65% !important;
  }
}

/* Completion, progress, and selected-state gold shares the same metallic material. */
#dashboard#dashboard :is(
  .pb-avatar,
  .ps-num,
  .dl-check.checked,
  .dl-check-box.checked,
  .rd-journey li[data-state="done"] .rd-journey-number,
  .rd-journey li[data-state="current"] .rd-journey-number,
  .rd-phase[data-state="done"] .rd-phase-number,
  .rd-phase[data-state="current"] .rd-phase-number,
  .rd-gates > div[data-met="true"] .rd-mark,
  .rd-reqs li[data-state="done"] .rd-mark,
  .chat-msg.user .chat-bubble
) {
  color: #090908 !important;
  border-color: #4338CA !important;
  background-color: #C4B5FD !important;
  background-image: linear-gradient(135deg,#4338CA 0%,#C4B5FD 26%,#93C5FD 48%,#4338CA 66%,#4338CA 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.58),inset 0 -1px 0 rgba(49,46,129,.24) !important;
}
#dashboard#dashboard :is(.fill,.wc-fill,.practice-progress-fill,.mc-score-fill,.progress-bar-inner,.rd-track i,.rd-phase-body .rd-track i,.an-odds-fill,.aid-bar-fill.work,.aid-bar-fill.loans) {
  background-color: #4338CA !important;
  background-image: linear-gradient(90deg,#312E81 0%,#4338CA 24%,#93C5FD 51%,#C4B5FD 74%,#312E81 100%) !important;
  box-shadow: none !important;
}
#dashboard .luxury-toggle.on::before,
#dashboard .luxury-toggle.on .luxury-toggle-thumb,
#dashboard .toggle-thumb,
#dashboard .slider::-webkit-slider-thumb {
  background: #4338CA !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42),0 2px 7px rgba(74,45,2,.28) !important;
}

/* Gold remains visible through objects, never through body copy. */
#dashboard :is(.ci,.pf-notice,.svc-profile-pill,.app-head-signal,.hcard-open,.rd-points,.rd-score-gain,.tag.sel,.tag.active,.opt-pill.active,.subject-btn.active,.choice-btn.active) {
  color: #090908 !important;
  border-color: rgba(67,56,202,.4) !important;
  background-color: #F5F3FF !important;
}
#dashboard :is(.ci svg,.pf-notice svg,.svc-profile-pill svg,.dl-select-label svg,.resume-section-title svg) {
  color: #312E81 !important;
  stroke: #312E81 !important;
}

/* Account and onboarding surfaces follow the same black-text rule. */
.app-modal {
  --text: #090908;
  --t2: #090908;
  --t3: #090908;
  --t4: #090908;
}
.app-modal.app-modal .app-modal-box :is(div,span,p,small,strong,em,label,li,h1,h2,h3,h4,a,button),
#profile-screen :is(div,span,p,small,strong,em,label,li,h1,h2,h3,h4,a,button) {
  color: #090908 !important;
}
#profile-screen :is(.profile-title .g,.profile-logo) {
  color: #090908 !important;
  background: none !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
}
.app-modal :is(.flabel,.field-label),
#profile-screen :is(.flabel,.field-label,.profile-sub,.profile-assurance) {
  color: #090908 !important;
  font-size: .8125rem !important;
}
.app-modal :is(.account-avatar,.plan-insignia),
#profile-screen .si-dot.active {
  color: #090908 !important;
  border-color: #4338CA !important;
  background-color: #C4B5FD !important;
  background-image: linear-gradient(135deg,#4338CA 0%,#C4B5FD 25%,#93C5FD 48%,#4338CA 67%,#4338CA 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.58),inset 0 -1px 0 rgba(49,46,129,.24),0 8px 18px -12px rgba(49,46,129,.7) !important;
}

/* The readiness score is warm-neutral and gold only—no blue core. */
#dashboard .rd-dial {
  background: conic-gradient(from -90deg,#312E81 0deg,#4338CA calc(var(--readiness) * 1.8deg),#93C5FD calc(var(--readiness) * 3.6deg),#e5dfd2 0) !important;
}
#dashboard .rd-dial::after {
  background: radial-gradient(circle at 50% 18%,#ffffff 0%,#f8f5ee 64%,#e8e1d3 100%) !important;
  box-shadow: inset 0 1px 0 #ffffff,inset 0 0 0 1px rgba(67,56,202,.14),0 2px 10px rgba(23,21,18,.12) !important;
}
#dashboard .rd-dial > span,
#dashboard .rd-dial > span small { color: #090908 !important; }

/* ======================================================================
   ACADEMIC TOOL COLOR REPAIR
   Neutral surfaces carry structure; gold communicates value/selection;
   green and red remain reserved for answer correctness.
   ====================================================================== */

/* Range controls: visible neutral track, metallic completed portion, no navy. */
#dashboard#dashboard .priority-item {
  padding: 16px 18px;
  border: 1px solid #d9d3c7 !important;
  border-radius: 13px;
  background: #ffffff !important;
  box-shadow: 0 10px 24px -23px rgba(23,21,18,.45);
}
#dashboard#dashboard .priority-item:hover {
  border-color: rgba(67,56,202,.36) !important;
  background: #FAFAFA !important;
}
#dashboard .priority-name {
  color: #090908 !important;
  font-size: .875rem;
  font-weight: 550;
}
#dashboard .priority-val {
  display: inline-grid;
  min-width: 30px;
  height: 28px;
  place-items: center;
  color: #090908 !important;
  border: 1px solid #4338CA;
  border-radius: 8px;
  background-color: #C4B5FD;
  background-image: linear-gradient(135deg,#4338CA 0%,#C4B5FD 34%,#93C5FD 52%,#4338CA 78%,#C4B5FD 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.58),inset 0 -1px 0 rgba(49,46,129,.24);
  font-size: .8125rem;
}
#dashboard#dashboard .luxury-slider {
  --slider-progress: 50%;
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 6px;
  border: 0;
  border-radius: 999px;
  background-color: #ded8cc;
  background-image: linear-gradient(90deg,#312E81 0%,#4338CA var(--slider-progress),#ded8cc var(--slider-progress),#ded8cc 100%);
  box-shadow: inset 0 1px 2px rgba(23,21,18,.13);
  cursor: pointer;
}
#dashboard#dashboard .luxury-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #ffffff;
  border-radius: 50%;
  background-color: #C4B5FD;
  background-image: linear-gradient(135deg,#4338CA 0%,#93C5FD 48%,#4338CA 100%);
  box-shadow: 0 0 0 1px #4338CA,0 4px 10px rgba(49,46,129,.26);
}
#dashboard#dashboard .luxury-slider::-moz-range-track {
  height: 6px;
  border: 0;
  border-radius: 999px;
  background: #ded8cc;
}
#dashboard#dashboard .luxury-slider::-moz-range-progress {
  height: 6px;
  border-radius: 999px;
  background: linear-gradient(90deg,#312E81,#4338CA);
}
#dashboard#dashboard .luxury-slider::-moz-range-thumb {
  width: 16px;
  height: 16px;
  border: 2px solid #ffffff;
  border-radius: 50%;
  background: #C4B5FD;
  box-shadow: 0 0 0 1px #4338CA,0 4px 10px rgba(49,46,129,.26);
}
#dashboard .luxury-slider:focus-visible {
  outline: 2px solid #4338CA;
  outline-offset: 5px;
}

/* Personalized Test Prep: white study cards and disciplined state color. */
#dashboard#dashboard #tab-practice :is(.practice-header,.ps-question-card,.practice-complete) {
  color: #090908;
  border: 1px solid #d9d3c7 !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: 0 12px 30px -28px rgba(23,21,18,.48) !important;
}
#dashboard#dashboard #tab-practice :is(.ps-card-header,.ps-card-footer) {
  border-color: #e1dbcf !important;
  background: #f7f4ed !important;
}
#dashboard#dashboard #tab-practice :is(.ps-score-box,.pc-stat,.ps-passage,.ps-choice,.ps-model-answer) {
  color: #090908;
  border-color: #d9d3c7 !important;
  background: #ffffff !important;
}
#dashboard#dashboard #tab-practice .ps-passage {
  border-inline-start: 3px solid #4338CA !important;
  background: #f7f4ed !important;
}
#dashboard#dashboard #tab-practice .subject-btn {
  position: relative;
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 92px;
  padding: 16px 18px;
  overflow: hidden;
  color: #090908 !important;
  border: 1px solid #d9d3c7 !important;
  border-radius: 15px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px -27px rgba(23,21,18,.5) !important;
  text-align: start;
}
#dashboard#dashboard #tab-practice .subject-btn:hover {
  border-color: rgba(67,56,202,.36) !important;
  background: #FAFAFA !important;
  box-shadow: 0 14px 28px -23px rgba(49,46,129,.3) !important;
  transform: translateY(-2px);
}
#dashboard#dashboard #tab-practice .subject-btn.active {
  border-color: #4338CA !important;
  background: #F5F3FF !important;
  box-shadow: inset 0 0 0 1px rgba(159,114,29,.14),0 14px 28px -23px rgba(49,46,129,.34) !important;
}
#dashboard #tab-practice .subject-icon {
  display: grid;
  width: 50px;
  height: 50px;
  flex: none;
  place-items: center;
  color: #090908 !important;
  border: 1px solid rgba(67,56,202,.34);
  border-radius: 13px;
  background: #F5F3FF;
}
#dashboard #tab-practice .subject-icon > span {
  color: #090908 !important;
  font: 750 .6875rem/1.15 var(--dashboard-font-ui);
  text-align: center;
}
#dashboard #tab-practice .subject-copy {
  display: grid;
  flex: 1;
  gap: 5px;
  min-width: 0;
}
#dashboard #tab-practice :is(.subject-name,.subject-type) { color: #090908 !important; }
#dashboard #tab-practice .subject-name { font-size: .9375rem; line-height: 1.3; }
#dashboard #tab-practice .subject-type { font-size: .6875rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
#dashboard #tab-practice .subj-radio {
  display: grid;
  width: 22px;
  height: 22px;
  flex: none;
  place-items: center;
  border: 1.5px solid #a9a195;
  border-radius: 50%;
  background: #ffffff;
}
#dashboard #tab-practice .subject-btn.active .subj-radio {
  border-color: #4338CA;
  background: #F5F3FF;
}
#dashboard #tab-practice .subj-radio > span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: linear-gradient(135deg,#4338CA,#93C5FD 50%,#4338CA);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.45);
}
#dashboard#dashboard #tab-practice .practice-progress-track { background: #e1dbcf !important; }
#dashboard#dashboard #tab-practice .ps-dot {
  color: #090908 !important;
  border-color: #c9c2b5 !important;
  background: #ffffff !important;
}
#dashboard#dashboard #tab-practice .ps-dot.active,
#dashboard#dashboard #tab-practice .ps-choice.selected {
  color: #090908 !important;
  border-color: #4338CA !important;
  background: #F5F3FF !important;
}
#dashboard#dashboard #tab-practice .ps-choice.selected .ps-choice-letter {
  color: #090908 !important;
  border-color: #4338CA !important;
  background: #F5F3FF !important;
}
#dashboard#dashboard #tab-practice :is(.choice-btn.correct,.choice-btn.reveal-correct,.ps-choice.correct,.ps-choice.reveal,.ps-dot.correct) {
  color: #090908 !important;
  border-color: #6f9f7f !important;
  background: #eef7f1 !important;
}
#dashboard#dashboard #tab-practice :is(.choice-btn.incorrect,.ps-choice.wrong,.ps-dot.wrong) {
  color: #090908 !important;
  border-color: #bd817a !important;
  background: #fbefed !important;
}
#dashboard#dashboard #tab-practice .pc-score-ring {
  border-color: #4338CA !important;
  background: #F5F3FF !important;
}

/* Applicans Tutor: convert every legacy translucent card to the light system. */
#dashboard#dashboard #tab-tutor :is(.tutor-premium,.tutor-sel-card,.tutor-empty-state,.tutor-info-card,.tutor-input-card,.note-card,.bd-step-card,.tutor-note-card,.tutor-test-card,.term-box,.qbox) {
  color: #090908 !important;
  border-color: #d9d3c7 !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: 0 12px 30px -28px rgba(23,21,18,.5) !important;
}
#dashboard#dashboard #tab-tutor .tutor-sel-card {
  min-height: 214px;
  font: inherit;
  text-align: start;
  appearance: none;
}
#dashboard#dashboard #tab-tutor :is(.tutor-sel-card,.tutor-info-card,.tutor-note-card,.tutor-test-card):hover {
  border-color: rgba(67,56,202,.38) !important;
  background: #FAFAFA !important;
  box-shadow: 0 16px 32px -27px rgba(49,46,129,.36) !important;
}
#dashboard #tab-tutor :is(.tutor-sel-title,.tutor-sel-desc,.tutor-info-title,.tutor-info-desc,.tutor-test-name,.tutor-test-topics,.tutor-note-card-title,.tutor-note-card-date,.note-card-title,.note-card-summary,.term-box-name,.term-box-def,.qbox-text) {
  color: #090908 !important;
}
#dashboard#dashboard #tab-tutor .tutor-sel-bgnum {
  color: rgba(67,56,202,.1) !important;
}
#dashboard#dashboard #tab-tutor .tutor-sel-card:hover .tutor-sel-bgnum {
  color: rgba(67,56,202,.16) !important;
}
#dashboard #tab-tutor :is(.tutor-sel-ico,.tutor-info-ico,.tutor-empty-ico,.tutor-sub-header-ico,.tutor-test-date-badge,.tutor-sel-arrow) {
  border-color: rgba(67,56,202,.34) !important;
  background: #F5F3FF !important;
  box-shadow: none !important;
}
#dashboard #tab-tutor :is(.tutor-sel-ico,.tutor-info-ico,.tutor-empty-ico,.tutor-sub-header-ico,.tutor-sel-arrow) svg {
  color: #312E81 !important;
  stroke: #312E81 !important;
}
#dashboard#dashboard #tab-tutor .tutor-binder-rail {
  border-color: #d9d3c7 !important;
  background: #f1eee7 !important;
}
#dashboard#dashboard #tab-tutor .tutor-binder-tab {
  color: #090908 !important;
  border-color: #d9d3c7 !important;
  background: #ffffff !important;
}
#dashboard#dashboard #tab-tutor .tutor-binder-tab.active {
  border-color: #4338CA !important;
  background: #F5F3FF !important;
  box-shadow: 3px 0 14px rgba(49,46,129,.12) !important;
}
#dashboard#dashboard #tab-tutor :is(.tutor-suggestion-chip,.tutor-btn-ghost) {
  color: #090908 !important;
  border-color: #d9d3c7 !important;
  background: #ffffff !important;
}
#dashboard#dashboard #tab-tutor :is(.tutor-suggestion-chip,.tutor-btn-ghost):hover {
  border-color: rgba(67,56,202,.36) !important;
  background: #F5F3FF !important;
}
#dashboard#dashboard #tab-tutor .qbox {
  border-color: rgba(67,56,202,.28) !important;
  background: #F5F3FF !important;
}

/*
  Fields sit directly in their layout. Legacy theme rules turned the grouping
  wrappers dark on focus and left a second white slab around every control.
*/
#dashboard#dashboard .tab-panel :is(.concierge-block,.dl-select-field),
#dashboard#dashboard .tab-panel :is(.concierge-block,.dl-select-field):focus-within {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}
#dashboard#dashboard .tab-panel .hero-input-wrap,
#dashboard#dashboard .tab-panel .hero-input-wrap:focus-within {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
#dashboard#dashboard :is(
  .finput,
  .fselect,
  .ftextarea,
  .hero-input,
  .luxury-textarea,
  .dl-select,
  .ap-select-trigger,
  .ps-fr-area,
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  textarea,
  select
) {
  box-shadow: none !important;
}
#dashboard#dashboard :is(
  .finput,
  .fselect,
  .ftextarea,
  .hero-input,
  .luxury-textarea,
  .dl-select,
  .ap-select-trigger,
  .ps-fr-area,
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  textarea,
  select
):focus,
#dashboard#dashboard .ap-select-trigger.open {
  border-color: var(--experience-accent) !important;
  outline: 0 !important;
  background-color: var(--field-surface) !important;
  box-shadow: none !important;
}
#dashboard#dashboard :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  textarea,
  select,
  .ap-select-trigger
):focus-visible {
  border-color: var(--experience-accent) !important;
  outline: 0 !important;
  box-shadow: inset 0 0 0 1px var(--experience-accent) !important;
}
#dashboard#dashboard :is(input,textarea,select,.ap-select-trigger)[aria-invalid="true"] {
  border-color: #b84b43 !important;
  box-shadow: inset 0 0 0 1px #b84b43 !important;
}
#dashboard#dashboard .chat-input-wrap,
#dashboard#dashboard .chat-input-wrap:focus-within {
  outline: 0 !important;
  box-shadow: none !important;
}
#dashboard#dashboard .chat-input-wrap:focus-within {
  border-color: var(--experience-accent) !important;
}

/* Readiness progress belongs with the student context, not in a second card. */
#dashboard#dashboard .home-status {
  grid-template-columns: minmax(0,1fr) !important;
}
#dashboard#dashboard .hs-identity {
  border-inline-end: 0 !important;
}
#dashboard .hs-readiness {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 6px 12px;
  width: min(100%,420px);
  margin-top: 13px;
}
#dashboard .hs-readiness:empty {
  display: none;
}
#dashboard .hs-readiness-head {
  display: contents;
}
#dashboard .hs-readiness-head span,
#dashboard .hs-readiness-stage {
  color: var(--experience-muted);
  font-family: var(--dashboard-font-body);
  font-size: .75rem;
  font-weight: 550;
  line-height: 1.35;
}
#dashboard .hs-readiness-head strong {
  grid-column: 2;
  grid-row: 1;
  color: var(--experience-ink);
  font-family: var(--dashboard-font-ui);
  font-size: .875rem;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
#dashboard .hs-readiness-track {
  grid-column: 1 / -1;
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8e4da;
}
#dashboard .hs-readiness-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg,#312E81 0%,#4338CA 58%,#93C5FD 100%);
  transition: width 600ms var(--experience-ease);
}
#dashboard .hs-readiness-stage {
  grid-column: 1 / -1;
  color: var(--experience-accent-strong);
  font-size: .6875rem;
}

/* One disclosure keeps every checklist phase hidden until the student asks. */
#dashboard#dashboard .rd-section {
  margin-block: 1.4rem 2.75rem !important;
}
#dashboard .rd-checklist {
  overflow: clip;
  border: 1px solid var(--experience-border);
  border-radius: 16px;
  background: var(--experience-panel);
  box-shadow: 0 14px 34px -32px rgba(23,21,18,.5);
}
#dashboard .rd-checklist-trigger {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 18px;
  min-height: 84px;
  padding: 16px 18px;
  cursor: pointer;
  list-style: none;
  transition: background-color var(--motion-feedback) ease;
}
#dashboard .rd-checklist-trigger::-webkit-details-marker {
  display: none;
}
#dashboard .rd-checklist-trigger:hover {
  background: var(--experience-panel-warm);
}
#dashboard .rd-checklist-trigger:focus-visible {
  outline: 2px solid var(--experience-accent);
  outline-offset: -3px;
}
#dashboard .rd-checklist-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}
#dashboard .rd-checklist-title {
  margin: 0;
  color: var(--experience-ink);
  font-family: var(--dashboard-font-ui);
  font-size: clamp(1.35rem,2vw,1.7rem);
  font-weight: 650;
  line-height: 1.15;
  letter-spacing: -.03em;
}
#dashboard .rd-checklist-copy small {
  color: var(--experience-muted);
  font-family: var(--dashboard-font-body);
  font-size: .8125rem;
  line-height: 1.4;
}
#dashboard .rd-checklist-action {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--experience-accent-strong);
  font-family: var(--dashboard-font-body);
  font-size: .75rem;
  font-weight: 650;
}
#dashboard .rd-checklist-action-label::before {
  content: "View checklist";
}
#dashboard .rd-checklist[open] .rd-checklist-action-label::before {
  content: "Hide checklist";
}
#dashboard .rd-checklist-action svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform var(--motion-state) var(--experience-ease);
}
#dashboard .rd-checklist[open] .rd-checklist-action svg {
  transform: rotate(180deg);
}
#dashboard .rd-checklist-body {
  border-top: 1px solid var(--experience-border);
  padding: 22px 18px 18px;
  gap: 24px;
}
#dashboard .rd-checklist:not([open]) > .rd-checklist-body {
  display: none;
}
#dashboard .rd-checklist[open] > .rd-checklist-body {
  display: grid;
  animation: rd-disclose var(--rd-motion-standard) var(--rd-ease-out) both;
}
#dashboard .rd-checklist-body .rd-journey {
  margin-bottom: 0;
}
#dashboard .rd-checklist-body .rd-journey li {
  min-height: 72px;
}
#dashboard .rd-checklist-body .rd-journey strong {
  overflow: visible;
  line-height: 1.25;
  text-overflow: clip;
  white-space: normal;
}

/* Account and onboarding fields follow the same artifact-free focus language. */
.app-modal.app-modal :is(.finput,.fselect,.ftextarea,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),textarea,select),
#profile-screen :is(.finput,.fselect,textarea,select,input:not([type="checkbox"]):not([type="radio"]):not([type="range"])),
:is(.app-modal.app-modal,#profile-screen) .ap-select-trigger {
  box-shadow: none !important;
}
.app-modal.app-modal :is(.finput,.fselect,.ftextarea,input,textarea,select):focus,
#profile-screen :is(.finput,.fselect,textarea,select,input):focus,
:is(.app-modal.app-modal,#profile-screen) .ap-select-trigger:is(:focus-visible,.open) {
  border-color: #4338CA !important;
  outline: 0 !important;
  box-shadow: none !important;
}
.app-modal.app-modal :is(.finput,.fselect,.ftextarea,input,textarea,select):focus-visible,
#profile-screen :is(.finput,.fselect,textarea,select,input):focus-visible,
:is(.app-modal.app-modal,#profile-screen) .ap-select-trigger:focus-visible {
  border-color: #4338CA !important;
  outline: 0 !important;
  box-shadow: inset 0 0 0 1px #4338CA !important;
}

@media (max-width: 700px) {
  #dashboard .rd-checklist-trigger { min-height: 76px; padding: 14px; }
  #dashboard .rd-checklist-action-label { display: none; }
  #dashboard .rd-checklist-body { padding: 18px 12px 12px; }
  #dashboard#dashboard .priority-item { padding: 15px 16px; }
  #dashboard#dashboard #tab-practice .subject-btn { min-height: 86px; padding: 14px; }
}

/* ======================================================================
   APPLICANS PASTEL PALETTE
   White owns the canvas and cards. Lilac marks selection, powder blue
   carries information, blush supports secondary emphasis, and indigo is
   reserved for high-intent actions, links, progress, and focus.
   ====================================================================== */

:root {
  --applicans-primary: #C4B5FD;
  --applicans-primary-soft: #f5f3ff;
  --applicans-accent: #93C5FD;
  --applicans-accent-soft: #eff6ff;
  --applicans-background: #FAFAFA;
  --applicans-secondary: #FBCFE8;
  --applicans-secondary-soft: #fdf2f8;
  --applicans-cta: #4338CA;
  --applicans-cta-hover: #3730a3;
  --applicans-cta-active: #312e81;
  --applicans-ink: #18181b;
  --applicans-muted: #52525b;
  --applicans-quiet: #71717a;
  --applicans-disabled: #a1a1aa;
  --applicans-border: #e4e4e7;
  --applicans-border-strong: #d4d4d8;
  --applicans-success: #2f6b55;
  --applicans-success-soft: #ecfdf3;
  --applicans-danger: #b4234d;
  --applicans-danger-soft: #fff1f2;
  --applicans-warning: #8a4b16;
  --applicans-warning-soft: #fff7ed;
  --applicans-motion-fast: 120ms;
  --applicans-motion-default: 200ms;
  --applicans-motion-slow: 320ms;
  --applicans-ease-out: cubic-bezier(.2,0,0,1);
}

#dashboard {
  --experience-canvas: var(--applicans-background);
  --experience-panel: #ffffff;
  --experience-panel-soft: var(--applicans-primary-soft);
  --experience-panel-warm: var(--applicans-accent-soft);
  --experience-ink: var(--applicans-ink);
  --experience-muted: var(--applicans-muted);
  --experience-quiet: var(--applicans-quiet);
  --experience-disabled: var(--applicans-disabled);
  --experience-border: var(--applicans-border);
  --experience-border-strong: var(--applicans-border-strong);
  --experience-accent: var(--applicans-cta);
  --experience-accent-strong: var(--applicans-cta-active);
  --experience-accent-fill: var(--applicans-primary);
  --experience-accent-soft: var(--applicans-primary-soft);
  --experience-metal-edge: var(--applicans-cta-active);
  --experience-metal-mid: var(--applicans-cta);
  --experience-metal-highlight: var(--applicans-primary);
  --experience-metal-gradient: none;
  --experience-dark: #ffffff;
  --experience-dark-raised: var(--applicans-background);
  --experience-dark-text: var(--applicans-ink);
  --experience-dark-muted: var(--applicans-muted);
  --experience-success: var(--applicans-success);
  --field-border: var(--applicans-border-strong);
  --field-border-hover: #a1a1aa;
  --field-surface: #ffffff;
  --field-surface-hover: var(--applicans-background);
  --field-ring: rgba(67,56,202,.16);
  --bg: var(--applicans-background);
  --bg-deep: var(--applicans-primary-soft);
  --bg2: #ffffff;
  --surface: #ffffff;
  --surface-2: var(--applicans-primary-soft);
  --panel: #ffffff;
  --border: var(--applicans-border);
  --border-2: var(--applicans-border-strong);
  --border-gold: rgba(67,56,202,.34);
  --gold: var(--applicans-cta);
  --gold2: var(--applicans-cta);
  --gold3: var(--applicans-cta-active);
  --gold4: var(--applicans-cta-active);
  --gold-dim: var(--applicans-primary-soft);
  --text: var(--applicans-ink);
  --ivory: var(--applicans-ink);
  --muted: var(--applicans-muted);
  --quiet: var(--applicans-quiet);
  --t2: var(--applicans-muted);
  --t3: var(--applicans-quiet);
  --t4: var(--applicans-disabled);
  --line: var(--applicans-border);
  --line-strong: var(--applicans-border-strong);
  --gold-bright: var(--applicans-cta);
  --gold-deep: var(--applicans-cta-active);
  --gold-line: rgba(67,56,202,.3);
  --blue: var(--applicans-accent);
  --success: var(--applicans-success);
  --green: var(--applicans-success);
  --red: var(--applicans-danger);
  --warning: var(--applicans-warning);
  --app-success: var(--applicans-success);
  --app-background: var(--applicans-background);
  --app-card: #ffffff;
  --app-card-strong: var(--applicans-primary-soft);
  --app-muted: var(--applicans-muted);
  --app-muted-surface: var(--applicans-background);
  --app-primary: var(--applicans-cta);
  --app-primary-foreground: #ffffff;
  --app-border: var(--applicans-border);
  --color-text-primary: var(--applicans-ink);
  --color-text-secondary: var(--applicans-muted);
  --color-text-tertiary: var(--applicans-quiet);
  --color-text-disabled: var(--applicans-disabled);
  --color-border-subtle: #f0f0f2;
  --color-border-default: var(--applicans-border);
  --landing-bg: var(--applicans-background);
  --landing-abyss: var(--applicans-primary-soft);
  --landing-graphite: #ffffff;
  --landing-steel: var(--applicans-background);
  --landing-ivory: var(--applicans-ink);
  --landing-muted: var(--applicans-muted);
  --landing-line: var(--applicans-border);
  --landing-line-soft: #f0f0f2;
  --landing-gold: var(--applicans-cta);
  --landing-gold-pale: var(--applicans-cta-active);
}

body:has(#dashboard),
body:has(#login-screen),
body:has(#profile-screen) {
  color: var(--applicans-ink);
  background: var(--applicans-background);
  background-image: none;
}

/* Shell and navigation */
#dashboard#dashboard .content { background: var(--applicans-background); }
#dashboard#dashboard .topbar {
  border-color: var(--applicans-border);
  background: rgba(255,255,255,.94);
  box-shadow: 0 10px 30px -26px rgba(49,46,129,.28);
}
#dashboard#dashboard .sidebar {
  color-scheme: light;
  border-color: var(--applicans-border);
  background: #ffffff;
  box-shadow: 18px 0 46px -42px rgba(49,46,129,.34);
}
#dashboard#dashboard .sidebar :is(div,span,small,strong,button),
#dashboard#dashboard :is(.snav-label,.sidebar-intro span,.sidebar-ai-state small,.nav-item,.nav-item:hover,.nav-item.active),
#dashboard#dashboard .mobile-nav :is(span,button) {
  color: var(--applicans-ink) !important;
}
#dashboard .sidebar-intro { border-bottom-color: var(--applicans-border); }
#dashboard .sidebar-intro span,
#dashboard .snav-label,
#dashboard .sidebar-ai-state small { color: var(--applicans-quiet) !important; }
#dashboard#dashboard .nav-item {
  color: var(--applicans-muted) !important;
  border-color: transparent;
  background: transparent;
}
#dashboard#dashboard .nav-item:hover {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-border);
  background: var(--applicans-background);
}
#dashboard#dashboard .nav-item.active {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-primary);
  background: var(--applicans-primary);
  box-shadow: none;
}
#dashboard#dashboard .nav-item.active svg { color: var(--applicans-cta-active) !important; }
#dashboard .sidebar-ai-state {
  color: var(--applicans-ink);
  border-color: var(--applicans-accent);
  background: var(--applicans-accent-soft);
}
#dashboard#dashboard .mobile-nav {
  border-color: var(--applicans-border);
  background: rgba(255,255,255,.96);
}
#dashboard .applicans-logo-mark,
#dashboard .tlogo-mark,
#profile-screen .applicans-logo-mark,
.app-modal .applicans-logo-mark { color: var(--applicans-cta); }

/* White surfaces and neutral typography */
#dashboard .content .tab-panel,
#dashboard :is(.topbar,.home-status,.hcard,.rd-phase,.rd-queue,.rd-gates,.school-list-section,.svc-hero) {
  color: var(--applicans-ink) !important;
}
#dashboard#dashboard :is(
  .home-status,
  .hcard,
  .rd-phase,
  .rd-gates,
  .school-list-section,
  .svc-hero,
  .svc-out-shell,
  .match-card,
  .sc-card,
  .an-card,
  .aid-card,
  .school-card,
  .deadline-item,
  .dl-item,
  .path-step,
  .sch-card,
  .tutor-note-card,
  .tutor-test-card,
  .term-box,
  .qbox,
  .practice-header,
  .ps-question-card,
  .practice-complete,
  .essay-score-shell,
  .cost-result-card,
  .note-card
) {
  color: var(--applicans-ink) !important;
  border-color: var(--applicans-border) !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: 0 14px 38px -34px rgba(49,46,129,.26) !important;
}
#dashboard#dashboard :is(.hcard,.rd-phase,.rd-queue button,.match-card,.sc-card,.school-card,.deadline-item,.sch-card):hover {
  border-color: var(--applicans-primary) !important;
  background: var(--applicans-background) !important;
  box-shadow: 0 18px 42px -34px rgba(67,56,202,.28) !important;
}
#dashboard :is(.welcome,.panel-title,.svc-title,.hcard-title,.pb-name,.sl-title,.sec-head),
#dashboard :is(.t-user,.t-user strong,.logout-btn,.panel-meta,.app-head-signal,.hs-context,.hs-context strong),
#dashboard :is(.tlogo,.welcome .g,.svc-title .g,.ptitle .g,.upgrade-title .g,.sch-amt,.calc-display-val,.cost-net,.cost-result-net-val) {
  color: var(--applicans-ink) !important;
}
#dashboard .welcome .g,
#dashboard .svc-title .g { color: var(--applicans-cta-active) !important; }
#dashboard :is(.wsub,.pb-detail,.hcard-description,.svc-desc,.sl-empty,.pdesc,.chat-bubble,.concierge-q,.out-inner,.stream-text) {
  color: var(--applicans-muted) !important;
}
#dashboard#dashboard .content .tab-panel small,
#dashboard#dashboard .content .tab-panel :is(.panel-meta,.svc-breadcrumb,.rd-kicker,.rd-gates-head,.rd-status,.rd-points-flat) {
  color: var(--applicans-quiet) !important;
}

/* Brand-role accents */
#dashboard .app-head-signal {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-accent) !important;
  background: var(--applicans-accent) !important;
}
#dashboard .app-head-signal i { background: var(--applicans-cta); box-shadow: 0 0 0 3px #ffffff; }
#dashboard#dashboard .t-plan {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-secondary) !important;
  background: var(--applicans-secondary) !important;
  background-color: var(--applicans-secondary) !important;
  background-image: none !important;
  box-shadow: none !important;
}
#dashboard .pb-avatar,
#dashboard .profile-monogram {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-primary) !important;
  background: var(--applicans-primary) !important;
  background-color: var(--applicans-primary) !important;
  background-image: none !important;
  box-shadow: none !important;
}
#dashboard :is(.ci,.rd-points,.tag.sel,.tag.active,.opt-pill.active,.subject-btn.active,.choice-btn.active) {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-primary) !important;
  background: var(--applicans-primary-soft) !important;
  background-color: var(--applicans-primary-soft) !important;
  background-image: none !important;
}
#dashboard :is(.hcard-open,.pb-edit) {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-secondary) !important;
  background: var(--applicans-secondary) !important;
  background-color: var(--applicans-secondary) !important;
}
#dashboard :is(.pf-notice,.svc-profile-pill,.rd-score-gain) {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-accent) !important;
  background: var(--applicans-accent) !important;
  background-color: var(--applicans-accent) !important;
}
#dashboard :is(.ci svg,.pf-notice svg,.svc-profile-pill svg,.dl-select-label svg,.resume-section-title svg) {
  color: var(--applicans-cta) !important;
  stroke: var(--applicans-cta) !important;
}

/* High-intent actions */
#dashboard#dashboard :is(.ctrl-btn.primary,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.mc-action.primary,.calc-btn,.upgrade-btn,.tutor-btn-primary,.tutor-test-start),
#profile-screen .btn-next,
.app-modal :is(.ctrl-btn.primary,.submit-btn,button[type="submit"]) {
  color: #ffffff !important;
  border: 1px solid var(--applicans-cta) !important;
  background-color: var(--applicans-cta) !important;
  background-image: none !important;
  box-shadow: 0 10px 24px -17px rgba(67,56,202,.55) !important;
  text-shadow: none !important;
}
@media (hover: hover) {
  #dashboard#dashboard :is(.ctrl-btn.primary,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.mc-action.primary,.calc-btn,.upgrade-btn,.tutor-btn-primary,.tutor-test-start):hover,
  #profile-screen .btn-next:hover,
  .app-modal :is(.ctrl-btn.primary,.submit-btn,button[type="submit"]):hover {
    color: #ffffff !important;
    border-color: var(--applicans-cta-hover) !important;
    background-color: var(--applicans-cta-hover) !important;
    background-image: none !important;
    box-shadow: 0 12px 26px -16px rgba(67,56,202,.62) !important;
  }
}
#dashboard#dashboard :is(.ctrl-btn.primary,.svc-cta,.submit-btn,.btn-next,.chat-send,.ps-submit,.mc-action.primary,.calc-btn,.upgrade-btn,.tutor-btn-primary,.tutor-test-start):active,
#profile-screen .btn-next:active,
.app-modal :is(.ctrl-btn.primary,.submit-btn,button[type="submit"]):active {
  background-color: var(--applicans-cta-active) !important;
}
#dashboard#dashboard :is(.ctrl-btn,.pb-edit,.svc-back-btn,.opt-pill,.subject-btn,.choice-btn,.tag,.chat-suggest,.mc-action):not(.primary) {
  color: var(--applicans-ink) !important;
  border-color: var(--applicans-border) !important;
  background: #ffffff !important;
}
#dashboard#dashboard :is(.opt-pill,.subject-btn,.choice-btn,.tag,.chat-suggest):hover {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-primary) !important;
  background: var(--applicans-primary-soft) !important;
}
#dashboard a:not(.ctrl-btn):not(.nav-item),
.app-modal a,
#profile-screen a { color: var(--applicans-cta); }

/* Selection, completion, progress, and the next-move card */
#dashboard#dashboard :is(
  .ps-num,
  .dl-check.checked,
  .dl-check-box.checked,
  .rd-journey li[data-state="done"] .rd-journey-number,
  .rd-journey li[data-state="current"] .rd-journey-number,
  .rd-phase[data-state="done"] .rd-phase-number,
  .rd-phase[data-state="current"] .rd-phase-number,
  .rd-gates > div[data-met="true"] .rd-mark,
  .rd-reqs li[data-state="done"] .rd-mark
) {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-primary) !important;
  background: var(--applicans-primary) !important;
  background-color: var(--applicans-primary) !important;
  background-image: none !important;
  box-shadow: none !important;
}
#dashboard#dashboard .chat-msg.user .chat-bubble {
  color: var(--applicans-ink) !important;
  border-color: var(--applicans-accent) !important;
  background: var(--applicans-accent-soft) !important;
  background-image: none !important;
  box-shadow: none !important;
}
#dashboard#dashboard :is(.fill,.wc-fill,.practice-progress-fill,.mc-score-fill,.progress-bar-inner,.progress-fill,.rd-track i,.rd-phase-body .rd-track i,.an-odds-fill,.aid-bar-fill.work,.aid-bar-fill.loans),
#dashboard .hs-readiness-track i {
  background-color: var(--applicans-cta) !important;
  background-image: linear-gradient(90deg,var(--applicans-cta),var(--applicans-accent)) !important;
  box-shadow: none !important;
}
#dashboard :is(.progress-track,.rd-track,.hs-readiness-track,.practice-progress-track,.mc-score-track) {
  background: #e8e8ee !important;
}
#dashboard#dashboard .rd-next {
  color: var(--applicans-ink) !important;
  border-color: var(--applicans-primary) !important;
  background: linear-gradient(135deg,var(--applicans-primary-soft),var(--applicans-accent-soft)) !important;
  background-image: linear-gradient(135deg,var(--applicans-primary-soft),var(--applicans-accent-soft)) !important;
  box-shadow: 0 20px 48px -38px rgba(67,56,202,.38) !important;
}
#dashboard#dashboard .content .tab-panel .rd-next :is(div,span,small,strong,p,h1,h2,h3,h4) {
  color: var(--applicans-ink) !important;
}
#dashboard#dashboard .content .tab-panel .rd-next :is(.rd-kicker,.rd-score-gain) {
  color: var(--applicans-cta-active) !important;
}
#dashboard#dashboard .content .tab-panel .rd-next .ctrl-btn.primary { color: #ffffff !important; }
#dashboard .rd-next::after {
  border-color: var(--applicans-secondary);
  box-shadow: 0 0 0 3rem rgba(251,207,232,.24),0 0 0 6rem rgba(196,181,253,.14);
}
#dashboard .rd-dial {
  background: conic-gradient(from -90deg,var(--applicans-cta) 0deg,var(--applicans-primary) calc(var(--readiness) * 1.8deg),var(--applicans-accent) calc(var(--readiness) * 3.6deg),#e8e8ee 0) !important;
}
#dashboard .rd-dial::after {
  background: #ffffff !important;
  box-shadow: inset 0 0 0 1px var(--applicans-border),0 2px 10px rgba(49,46,129,.1) !important;
}
#dashboard .rd-dial > span,
#dashboard .rd-dial > span small { color: var(--applicans-ink) !important; }

/* Form controls */
#dashboard#dashboard :is(
  .finput,
  .fselect,
  .ftextarea,
  .hero-input,
  .luxury-textarea,
  .dl-select,
  .ap-select-trigger,
  .ps-fr-area,
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  textarea,
  select
) {
  color: var(--applicans-ink) !important;
  caret-color: var(--applicans-cta);
  border-color: var(--applicans-border-strong) !important;
  background-color: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
}
#dashboard#dashboard :is(.finput,.fselect,.ftextarea,.hero-input,.luxury-textarea,.dl-select,.ap-select-trigger,.ps-fr-area,input,textarea,select):hover {
  border-color: #a1a1aa !important;
}
#dashboard#dashboard :is(.finput,.fselect,.ftextarea,.hero-input,.luxury-textarea,.dl-select,.ap-select-trigger,.ps-fr-area,input,textarea,select):focus,
#dashboard#dashboard .ap-select-trigger.open {
  border-color: var(--applicans-cta) !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(67,56,202,.14) !important;
}
#dashboard#dashboard :is(input,textarea,select,.ap-select-trigger):focus-visible,
#dashboard :is(button,a,[tabindex]):focus-visible {
  outline: 2px solid var(--applicans-cta) !important;
  outline-offset: 2px;
}
#dashboard#dashboard .ap-select-dropdown {
  color: var(--applicans-ink);
  border-color: var(--applicans-border) !important;
  background: #ffffff !important;
  box-shadow: 0 18px 45px -24px rgba(49,46,129,.25) !important;
}
#dashboard#dashboard .ap-select-option:hover,
#dashboard#dashboard .ap-select-option.selected {
  color: var(--applicans-cta-active);
  background: var(--applicans-primary-soft);
}
#dashboard#dashboard .ap-select-chevron { stroke: var(--applicans-cta) !important; }
#dashboard input[type="checkbox"],
#dashboard input[type="radio"],
#dashboard input[type="range"] { accent-color: var(--applicans-cta); }

/* Academic tools retain distinct correctness semantics. */
#dashboard#dashboard #tab-practice :is(.choice-btn.correct,.choice-btn.reveal-correct,.ps-choice.correct,.ps-choice.reveal,.ps-dot.correct) {
  color: #194d3a !important;
  border-color: #86c9a8 !important;
  background: var(--applicans-success-soft) !important;
}
#dashboard#dashboard #tab-practice :is(.choice-btn.incorrect,.ps-choice.wrong,.ps-dot.wrong) {
  color: #8f1239 !important;
  border-color: #f0a7bc !important;
  background: var(--applicans-danger-soft) !important;
}
#dashboard .luxury-slider,
#dashboard .luxury-slider::-moz-range-track { background: #e8e8ee !important; }
#dashboard .luxury-slider::-moz-range-progress { background: var(--applicans-cta) !important; }
#dashboard#dashboard .luxury-slider::-webkit-slider-thumb,
#dashboard#dashboard .luxury-slider::-moz-range-thumb {
  border-color: #ffffff !important;
  background: var(--applicans-cta) !important;
  background-image: none !important;
  box-shadow: 0 0 0 1px var(--applicans-cta-active),0 4px 10px rgba(67,56,202,.24) !important;
}

/* Sign in: the same bright product language starts before authentication. */
#login-screen {
  color-scheme: light;
  --text: var(--applicans-ink);
  --t2: var(--applicans-muted);
  --t3: var(--applicans-quiet);
  --t4: var(--applicans-disabled);
  --border: var(--applicans-border);
  --border-2: var(--applicans-border-strong);
  --border-gold: rgba(67,56,202,.34);
  --gold: var(--applicans-cta);
  --gold2: var(--applicans-cta);
  --gold3: var(--applicans-cta-active);
  --gold-dim: var(--applicans-primary-soft);
  --green-400: var(--applicans-cta);
  --red: var(--applicans-danger);
  --color-text-primary: var(--applicans-ink);
  --color-text-secondary: var(--applicans-muted);
  --color-text-tertiary: var(--applicans-quiet);
  --color-border-subtle: #f0f0f2;
  --color-border-default: var(--applicans-border);
  background: var(--applicans-background) !important;
  background-image: radial-gradient(circle at 15% 10%,rgba(196,181,253,.3),transparent 28rem),radial-gradient(circle at 88% 92%,rgba(147,197,253,.24),transparent 32rem) !important;
}
#login-screen::before { opacity: .35; background-image: linear-gradient(115deg,transparent 0 47%,rgba(67,56,202,.04) 47.1% 47.2%,transparent 47.3%); }
#login-screen .login-shell {
  border-color: var(--applicans-border) !important;
  background: #ffffff !important;
  box-shadow: 0 34px 80px -42px rgba(49,46,129,.34),0 0 0 1px rgba(196,181,253,.24) !important;
}
#login-screen .login-story {
  color: var(--applicans-ink);
  background: linear-gradient(145deg,var(--applicans-primary-soft),var(--applicans-accent-soft)) !important;
}
#login-screen .login-story::after {
  border-color: rgba(251,207,232,.7);
  box-shadow: 0 0 0 4rem rgba(251,207,232,.18),0 0 0 8rem rgba(196,181,253,.12);
}
#login-screen .login-box {
  color: var(--applicans-ink);
  border-color: var(--applicans-border) !important;
  background: #ffffff !important;
  box-shadow: none !important;
}
#login-screen :is(.login-logo,.login-title,.login-story-copy h2,.login-proof strong) { color: var(--applicans-ink) !important; }
#login-screen .login-story-copy h2 span,
#login-screen :is(.login-story-eyebrow,.login-secure-label,.login-foot a,.login-link a) { color: var(--applicans-cta) !important; }
#login-screen :is(.login-kicker,.login-story-copy p,.login-proof span,.login-intro,.login-security,.login-foot,.login-link) { color: var(--applicans-muted) !important; }
#login-screen .login-logo-mark { color: var(--applicans-cta); filter: drop-shadow(0 8px 16px rgba(196,181,253,.48)); }
#login-screen :is(.login-sub > span,.login-security > span) {
  background: var(--applicans-cta) !important;
  box-shadow: 0 0 0 3px var(--applicans-accent-soft) !important;
}
#login-screen .login-proof > div,
#login-screen .login-box::before { border-color: var(--applicans-border); background: none; }
#login-screen .llabel { color: var(--applicans-muted) !important; }
#login-screen .linput {
  color: var(--applicans-ink) !important;
  caret-color: var(--applicans-cta);
  border-color: var(--applicans-border-strong) !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
}
#login-screen .linput::placeholder { color: var(--applicans-quiet) !important; }
#login-screen .linput:hover { border-color: #a1a1aa !important; background: #ffffff !important; }
#login-screen .linput:focus {
  border-color: var(--applicans-cta) !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(67,56,202,.14) !important;
}
#login-screen .login-pw button { color: var(--applicans-cta); }
#login-screen .login-btn,
#login-screen .login-btn:hover {
  color: #ffffff !important;
  border: 1px solid var(--applicans-cta) !important;
  background: var(--applicans-cta) !important;
  background-image: none !important;
  box-shadow: 0 12px 28px -18px rgba(67,56,202,.62) !important;
}
#login-screen .login-btn:hover { background: var(--applicans-cta-hover) !important; }
#login-screen :is(button,a,input):focus-visible { outline: 2px solid var(--applicans-cta) !important; outline-offset: 2px; }

/* Onboarding and account surfaces */
#profile-screen,
.app-modal {
  --text: var(--applicans-ink);
  --t2: var(--applicans-muted);
  --t3: var(--applicans-quiet);
  --t4: var(--applicans-disabled);
  --border: var(--applicans-border);
  --border-2: var(--applicans-border-strong);
  --gold3: var(--applicans-cta);
}
#profile-screen { color: var(--applicans-ink); background: var(--applicans-background); }
#profile-screen :is(.profile-card,.step-panel.active,.steps-indicator),
.app-modal .app-modal-box,
.app-modal :is(.account-summary,.plan-overview,.settings-group) {
  color: var(--applicans-ink) !important;
  border-color: var(--applicans-border) !important;
  background: #ffffff !important;
  background-image: none !important;
}
.app-modal.app-modal .app-modal-box :is(div,span,p,small,strong,em,label,li,h1,h2,h3,h4,a,button),
#profile-screen :is(div,span,p,small,strong,em,label,li,h1,h2,h3,h4,a,button) { color: var(--applicans-ink) !important; }
.app-modal .app-modal-head { border-color: var(--applicans-border); background: #ffffff !important; }
.app-modal .app-modal-close { color: var(--applicans-ink); border-color: var(--applicans-border); background: #ffffff; }
.app-modal .app-modal-close:hover { color: var(--applicans-cta); border-color: var(--applicans-primary); background: var(--applicans-primary-soft); }
.app-modal :is(.account-avatar,.plan-insignia),
#profile-screen .si-dot.active {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-primary) !important;
  background: var(--applicans-primary) !important;
  background-color: var(--applicans-primary) !important;
  background-image: none !important;
  box-shadow: none !important;
}
#profile-screen :is(.tag.sel,.tag.active) {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-primary) !important;
  background: var(--applicans-primary-soft) !important;
}
:is(.app-modal.app-modal,#profile-screen) :is(.finput,.fselect,.ftextarea,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),textarea,select,.ap-select-trigger) {
  color: var(--applicans-ink) !important;
  caret-color: var(--applicans-cta);
  border-color: var(--applicans-border-strong) !important;
  background: #ffffff !important;
  background-image: none !important;
}
:is(.app-modal.app-modal,#profile-screen) :is(.finput,.fselect,.ftextarea,input,textarea,select,.ap-select-trigger):focus,
:is(.app-modal.app-modal,#profile-screen) .ap-select-trigger.open {
  border-color: var(--applicans-cta) !important;
  box-shadow: 0 0 0 3px rgba(67,56,202,.14) !important;
}
:is(.app-modal.app-modal,#profile-screen) :is(button,a,input,textarea,select,.ap-select-trigger):focus-visible {
  outline: 2px solid var(--applicans-cta) !important;
  outline-offset: 2px;
}
.app-modal .settings-danger {
  color: var(--applicans-danger) !important;
  border-color: #f0a7bc !important;
  background: var(--applicans-danger-soft) !important;
}

/* Guard against one-off legacy accent declarations in generated tools. */
#dashboard .dashboard-skip-link {
  color: #ffffff !important;
  border-color: var(--applicans-cta) !important;
  background: var(--applicans-cta) !important;
}
#dashboard :is(.svc-out-label,.live-dot,.sl-count,.cost-ticker-val,.an-section-label,.tutor-quiz-score) {
  color: var(--applicans-cta) !important;
}
#dashboard#dashboard#dashboard .t-plan {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-secondary) !important;
  background-color: var(--applicans-secondary) !important;
  background-image: none !important;
  box-shadow: none !important;
}
#dashboard#dashboard#dashboard :is(.pb-avatar,.profile-monogram,.priority-val) {
  color: var(--applicans-cta-active) !important;
  border-color: var(--applicans-primary) !important;
  background-color: var(--applicans-primary) !important;
  background-image: none !important;
  box-shadow: none !important;
}
#dashboard :is(input,textarea,select,.finput,.fselect,.ftextarea,.hero-input,.luxury-textarea,.dl-select,.ap-select-trigger,.ps-fr-area) {
  caret-color: var(--applicans-cta) !important;
}

@media (prefers-contrast: more) {
  #dashboard {
    --experience-border: #c4c4cc;
    --experience-border-strong: #a1a1aa;
    --experience-muted: #3f3f46;
    --experience-quiet: #52525b;
  }
}

/* ======================================================================
   DASHBOARD CRAFT PASS
   Contrast-safe labels, calmer surfaces, legible metadata, compact mobile
   auth, and tactile Apple-like feedback. Pastels remain surface colors;
   indigo and semantic darks carry text and interaction.
   ====================================================================== */

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#dashboard :is(.welcome,.panel-title,.svc-title,.hcard-title,.pb-name,.sl-title) {
  text-wrap: balance;
}

#dashboard :is(.wsub,.pdesc,.svc-desc,.hcard-description,.concierge-q,.out-inner p) {
  text-wrap: pretty;
}

#dashboard#dashboard :is(.app-eyebrow,.section-kicker,.svc-label,.panel-meta,.svc-breadcrumb,.rd-kicker,.rd-gates-head) {
  color: var(--applicans-cta-active) !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
}

#dashboard#dashboard :is(.sidebar-intro span,.snav-label,.sidebar-ai-state small,.hcard-group,.app-head-signal,.hs-context span) {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .06em;
}

#dashboard#dashboard :is(.t-plan,.panel-meta,.svc-breadcrumb-cur) {
  font-size: 11px;
}

#dashboard#dashboard :is(.b-safety,.mc-tag.pro,.an-badge.safety,.an-badge.likely,.an-tag.pro,.sc-effort.easy,.sc-renewable,.pt-step.pt-done,.sl-status-btn.active-green,.aid-stat-val.green) {
  color: var(--applicans-success) !important;
}

#dashboard#dashboard :is(.b-reach,.mc-tag.con,.an-badge.reach,.an-tag.con,.sc-effort.competitive,.sc-effort.highly,.sl-status-btn.active-red,.dl-stat-pill.urgent .dl-stat-num) {
  color: var(--applicans-danger) !important;
}

#dashboard .ai-error-state {
  display: grid;
  justify-items: center;
  gap: 10px;
  padding: 24px;
  color: var(--applicans-ink);
  text-align: center;
  border: 1px solid var(--applicans-border);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 14px 38px -34px rgba(49,46,129,.26);
}

#dashboard .ai-error-state > svg {
  width: 22px;
  height: 22px;
  color: var(--applicans-danger);
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
}

#dashboard .ai-error-title {
  font-size: 14px;
  font-weight: 650;
}

#dashboard .ai-error-detail {
  max-width: 56ch;
  color: var(--applicans-muted);
  font-size: 13px;
  line-height: 1.55;
  text-wrap: pretty;
}

#dashboard#dashboard :is(.hcard,.ctrl-btn,.svc-cta,.submit-btn,.chat-send,.ps-submit,.calc-btn,.upgrade-btn,.tutor-btn-primary,.tutor-test-start,.mn-item) {
  transform-origin: center;
}

@media (prefers-reduced-motion: no-preference) {
  #dashboard#dashboard .hcard:active {
    scale: .96;
    transform: none !important;
  }
}

#dashboard#dashboard .tlogo-mark {
  width: 36px;
  height: 36px;
  border-radius: 12px;
}

#dashboard#dashboard .tlogo-word {
  font-size: 17px;
  font-weight: 650;
}

@media (max-width: 680px) {
  #dashboard#dashboard .mn-item span {
    display: block !important;
    color: var(--applicans-muted) !important;
    font-size: 11px !important;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1;
    white-space: nowrap;
  }

  #dashboard#dashboard .mn-item.active span {
    color: var(--applicans-cta-active) !important;
  }

  #dashboard#dashboard .mobile-nav {
    min-height: 68px;
  }
}

@media (max-width: 420px) {
  #login-screen {
    padding: 70px 8px 12px;
  }

  #login-screen .login-shell {
    border-radius: 20px;
  }

  #login-screen .login-story {
    min-height: 176px;
    gap: 12px;
    padding: 22px 20px;
  }

  #login-screen .login-story-copy h2 {
    max-width: 14ch;
    font-size: clamp(1.9rem,10vw,2.35rem);
    line-height: 1.02;
  }

  #login-screen .login-box {
    padding: 24px 20px;
  }

  #login-screen .login-intro {
    margin-bottom: 1rem;
  }

  #dashboard#dashboard .tlogo-word {
    display: inline;
    font-size: 14px;
  }

  #dashboard#dashboard .tlogo-mark {
    width: 32px;
    height: 32px;
  }

  #dashboard#dashboard .topbar-right {
    gap: 6px;
  }

  #dashboard#dashboard .t-plan {
    min-height: 32px;
    padding-inline: 8px;
    font-size: 11px;
  }
}

@media (max-width: 360px) {
  #login-screen {
    padding-top: 62px;
  }

  #login-screen .login-story {
    min-height: 168px;
    gap: 8px;
    padding: 18px;
  }

  #login-screen .login-story-eyebrow {
    display: none;
  }

  #login-screen .login-story-copy h2 {
    max-width: none;
    font-size: 1.7rem;
    line-height: 1;
  }

  #login-screen .login-box {
    padding: 20px;
  }

  #login-screen .login-title {
    font-size: 1.55rem;
  }

  #login-screen .login-intro {
    margin-bottom: .8rem;
  }

  #dashboard#dashboard .t-plan {
    display: none;
  }
}
