
:root {
  --v3-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --v3-due: #C13B3B;
  --v3-kept: #2E6B4F;
  --v3-sheet: #FFFDF9;
  --v3-warm: #FAF8F4;
  --shadow-sm: 0 1px 2px rgba(14,24,38,.05), 0 10px 24px -16px rgba(14,24,38,.18);
  --shadow-md: 0 2px 6px rgba(14,24,38,.06), 0 20px 44px -24px rgba(14,24,38,.28);
  --shadow-lg: 0 24px 60px -28px rgba(14,24,38,.4);
  --shadow-accent: 0 8px 24px -8px rgba(248,135,9,.5);
}

.aim-hero-navy { background: var(--navy) !important; }
.aim-hero-navy::before { display: none !important; }
.aim-tool-card.featured { background: var(--navy) !important; }

.aim-nav-pill-dot, .aim-nav-companion .dot,
.cp-nav-badge-dot, .rr-nav-badge .dot, .rt-nav-badge .dot { animation: none !important; }

.aim-tool-card, .welcome-path, .wb-item, .action-card, .cl-case, .lf-case, .eb-study {
  transition: border-color 0.16s, box-shadow 0.25s var(--v3-ease) !important;
}
.aim-tool-card:hover, .welcome-path:hover, .wb-item:hover, .action-card:hover {
  transform: none !important;
  border-color: var(--orange) !important;
  box-shadow: var(--shadow-md) !important;
}
.aim-tool-card::before, .welcome-path::before { display: none !important; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

.aim-eyebrow, .aim-hero-eyebrow, .wb-resume-eyebrow, .wb-item .k,
.aim-tool-card .subtitle, .action-card .level,
.rr-hiw-label, .rr-snap-eye, .rr-sc-eye, .rr-tracker-eye, .rr-drawer-eye, .rr-close-eye,
.rt-map-col-eye, .de-trail-lbl, .dc2-eye,
.cl-case .stat-lbl, .lf-case .stat-lbl, .eb-num .lbl {
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
}
.aim-eyebrow::before, .aim-hero-eyebrow::before {
  width: 10px !important; height: 10px !important;
  background: var(--orange) !important;
}

.preview-chip, .aim-chip, .welcome-path-chips span {
  border-radius: 2px !important;
  background: transparent !important;
  border: 1px solid var(--border) !important;
  color: var(--text-muted) !important;
}
.aim-tool-card.featured .preview-chip {
  border-color: rgba(255,255,255,0.28) !important;
  color: rgba(255,255,255,0.8) !important;
}
.aim-library-tag { border-radius: 2px !important; }

.welcome-path-icon { display: none !important; }
.aim-tool-icon { width: 40px !important; height: 40px !important; background: transparent !important; border-radius: 0 !important; color: var(--navy) !important; margin-bottom: 12px; }
.aim-tool-icon svg { width: 40px !important; height: 40px !important; stroke: currentColor !important; }
.aim-tool-icon .o { stroke: var(--orange) !important; }
.aim-tool-icon .aim-mark { width: 40px !important; height: 40px !important; color: inherit !important; }
.aim-tool-card.featured .aim-tool-icon, .aim-tool-card.program .aim-tool-icon { overflow: visible !important; position: static !important; opacity: 1 !important; }
.aim-tool-card:hover .aim-tool-icon { background: transparent !important; color: var(--orange-600, #C96A00) !important; }
.aim-tool-card.featured .aim-tool-icon { color: #fff !important; }
.aim-tool-card.featured:hover .aim-tool-icon { color: var(--orange-400, #FFA23A) !important; }
.aim-tool-card.program::after { display: none !important; }
:root { --radius-xl: 8px; }

.aim-export-sensitive, .cp-sensitive-line {
  font-size: 0.92rem !important;
  color: var(--text) !important;
  font-weight: 600 !important;
  opacity: 1 !important;
}

.v3-voice {
  background: var(--navy);
  color: #fff; border-radius: 16px; padding: 26px 30px 24px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.09), 0 22px 44px -26px rgba(18,32,52,0.5);
}
.v3-voice .v3-mo { font-size: 0.8rem; font-weight: 700; color: rgba(255,255,255,0.84); margin-bottom: 10px; }
.v3-voice p, .v3-voice h1, .v3-voice h2 { color: #fff; }
.v3-voice .v3-q { color: rgba(255,255,255,0.84); font-weight: 300; }
.v3-voice a { color: var(--orange-400, #FFA23A); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; text-decoration-color: rgba(248,135,9,0.55); }
.v3-voice a:focus-visible { outline: 2px solid var(--orange-400, #FFA23A); outline-offset: 3px; }
.v3-voice a:hover { color: #FFC27A; }

.v3-sheet {
  background: var(--v3-sheet); color: var(--text);
  border: 1px solid var(--border); border-radius: 8px;
  padding: 26px 30px 24px; box-shadow: var(--shadow-md); position: relative;
}
.v3-sheet-head { display: flex; justify-content: space-between; align-items: baseline; gap: 14px; flex-wrap: wrap; border-bottom: 2px solid var(--text); padding-bottom: 11px; margin-bottom: 6px; }
.v3-sheet-head h2, .v3-sheet-head h3 { font-size: 1.1rem; font-weight: 900; letter-spacing: -0.01em; margin: 0; }
.v3-sheet-meta { font-size: 0.8rem; font-weight: 600; color: var(--text-muted); }

.v3-stn { display: grid; grid-template-columns: 30px 190px 1fr; gap: 0 16px; padding: 11px 0; border-bottom: 1px solid var(--border); align-items: baseline; }
.v3-stn:last-child { border-bottom: none; }
.v3-stn .n { font-size: 0.8rem; font-weight: 800; color: var(--text-subtle); }
.v3-stn .t { font-weight: 800; font-size: 0.93rem; }
.v3-stn .d { font-size: 0.85rem; color: var(--text-muted); font-style: italic; }
.v3-stn.rev { background: rgba(248,135,9,0.08); border: 2px solid var(--orange); padding: 9px 12px; margin: 2px -13px; border-radius: 8px; }
.v3-stn.rev .n, .v3-stn.rev .t { color: var(--orange-600, #B05E08); }
.v3-stn.rev .t::after { content: "  · the AI goes here"; font-weight: 700; font-size: 0.8rem; letter-spacing: 0.02em; }
.v3-stn.human { background: repeating-linear-gradient(-45deg, transparent 0 7px, rgba(20,36,58,0.03) 7px 8px); }
.v3-stn.human .d::after { content: "  Stays yours."; font-style: normal; font-weight: 700; color: var(--text); }

.v3-pin {
  display: inline-block; background: var(--v3-due); color: #fff;
  font-size: 0.8rem; font-weight: 800; letter-spacing: 0.02em;
  padding: 6px 12px; border-radius: 4px;
  box-shadow: var(--shadow-sm);
}
.v3-pin.kept { background: var(--v3-kept); }

.v3-ink { display: flex; gap: 12px; align-items: flex-start; margin-top: 18px; }
.v3-ink p { font-size: 0.94rem; font-style: italic; font-weight: 500; color: var(--orange-600, #B05E08); max-width: 52ch; margin: 0; }

.v3-answers { border-top: 1px solid var(--border); display: flex; flex-direction: column; max-width: 520px; }
.v3-answers > button, .v3-answers > a {
  text-align: left; font-size: 0.95rem; font-weight: 600; color: var(--text);
  background: none; border: none; border-bottom: 1px solid var(--border);
  padding: 12px 4px; display: flex; align-items: center; gap: 12px;
  cursor: pointer; text-decoration: none;
  transition: color 0.15s, padding-left 0.2s var(--v3-ease);
}
.v3-answers > button::before, .v3-answers > a::before {
  content: ""; width: 8px; height: 8px; flex-shrink: 0; background: var(--navy-200, #95ACC6);
  transition: background 0.15s;
}
.v3-answers > button:hover, .v3-answers > a:hover { color: var(--orange-600, #B05E08); padding-left: 12px; }
.v3-answers > button:hover::before, .v3-answers > a:hover::before { background: var(--orange); }
.v3-own { display: flex; align-items: center; gap: 12px; padding: 9px 4px; border-bottom: 1px solid var(--border); }
.v3-own::before { content: ""; width: 8px; height: 8px; flex-shrink: 0; background: var(--navy-200, #95ACC6); }
.v3-own input { flex: 1; background: transparent; border: none; outline: none; color: var(--text); font-family: inherit; font-size: 0.95rem; font-style: italic; font-weight: 400; min-width: 120px; }
.v3-own input::placeholder { color: var(--text-subtle); }

.v3-you { font-size: 0.9rem; font-style: italic; color: var(--text-muted); }
.v3-you::before { content: " - "; color: var(--orange-600, #B05E08); font-style: normal; font-weight: 700; }

.v3-brief {
  max-width: 1100px; margin: 18px auto 0; padding: 12px 2px 14px;
  border-bottom: 1px solid var(--border);
  font-size: 0.93rem; color: var(--text);
}
.v3-brief::before { content: ""; display: inline-block; width: 10px; height: 10px; background: var(--orange); margin-right: 10px; }
.v3-brief b { font-weight: 700; }
.v3-brief-wrap { padding: 0 28px; }

.v3-personal-door {
  max-width: 1100px; margin: 26px auto 0; display: flex; justify-content: space-between;
  align-items: center; gap: 18px; flex-wrap: wrap;
  background: var(--v3-sheet); border: 1px solid var(--border);
  border-radius: 8px; padding: 18px 22px; box-shadow: var(--shadow-sm);
}
.v3-personal-door .t { font-weight: 800; font-size: 1.02rem; color: var(--text); }
.v3-personal-door .t::before { content: ""; display: inline-block; width: 10px; height: 10px; background: var(--orange); margin-right: 10px; }
.v3-personal-door .d { font-size: 0.88rem; color: var(--text-muted); margin-top: 2px; }
.v3-personal-door a { font-weight: 700; font-size: 0.92rem; color: var(--orange-600, #B05E08); text-decoration: none; white-space: nowrap; }
.v3-personal-door a:hover { color: var(--orange); }

@media (max-width: 680px) {
  .v3-stn { grid-template-columns: 24px 1fr; }
  .v3-stn .d { grid-column: 2; }
  .v3-sheet { padding: 20px 18px; }
  .v3-voice { padding: 20px 20px 18px; }
}

.aim-mywork-link, .aim-ctx-chip, .aim-nav-pill { border-radius: 6px !important; }

.rt-how-it-works { border: 1px solid rgba(248,135,9,0.3) !important; border-radius: 8px !important; }
.rt-hiw-label, .rt-fromrole-eye, .rt-thread-num, .rt-step-label,
.rr-step-label, .rr-step-pill, .cp-step-label, .cp-step-pill,
.de-progress-label, .dc2-progress-label {
  text-transform: none !important;
  letter-spacing: 0 !important;
}

html { font-size: 18px; }
html[data-textsize="large"] { font-size: 20.5px; }
html[data-textsize="xl"]    { font-size: 23px; }
.aim-btn-primary, .aim-btn-ghost, .aim-btn-ghost-dark { font-size: 0.95rem !important; }
.pb-btn, .cp-sugg, .dc2-chip, .de-chip, .rr-quickpick { font-size: 0.9rem !important; }
.pb-item .tool, .pb-day-cell .cap, .wb-item .k, .rt-fromrole-eye, .rt-thread-num,
.rr-drawer-eye, .cp-nav-badge, .rr-nav-badge, .rt-nav-badge { font-size: 0.8rem !important; }
.pb-item .when { font-size: 0.85rem !important; }

:root { --text-muted: #46586C; --text-subtle: #5B6B7D; }

.aim-hero-title .accent, .aim-section-title .accent, .welcome-path-title .accent,
h1 .accent, h2 .accent, h3 .accent { color: inherit !important; }
.aim-eyebrow::before, .aim-hero-eyebrow::before { display: none !important; }
.v3-brief::before, .v3-personal-door .t::before { display: none !important; }
.v3-brief b { margin-right: 0; }

.rt-step-label, .rr-step-label, .cp-step-label, .rr-step-pill, .cp-step-pill {
  border: none !important; background: transparent !important;
  padding: 0 !important; box-shadow: none !important;
  font-size: 0.85rem !important;
}

.aim-ctx-chip { max-width: 260px; border-radius: 6px !important; flex-wrap: nowrap !important; white-space: nowrap; }
.aim-ctx-chip > span:first-child, .aim-ctx-chip .ctx-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 150px; }
@media (max-width: 900px) { .aim-ctx-chip { max-width: 150px; } .aim-ctx-chip > span:first-child { max-width: 90px; } }

.cp-sugg:active, .dc2-chip:active, .rr-quickpick:active, .pb-btn:active,
.aim-export-btn:active, .wg-browse:active, .cp-examples-btn:active,
.aim-nav-sugg:active, .rr-brief-check:active, .cp-cal button:active,
.aim-org-btn:active, .aim-org-infer-btn:active {
  transform: scale(0.97);
}
@media (prefers-reduced-motion: reduce) {
  .cp-sugg:active, .dc2-chip:active, .rr-quickpick:active, .pb-btn:active,
  .aim-export-btn:active, .wg-browse:active, .cp-examples-btn:active,
  .aim-nav-sugg:active, .rr-brief-check:active, .cp-cal button:active,
  .aim-org-btn:active, .aim-org-infer-btn:active { transform: none; }
}
@media (max-width: 480px) {
  .aim-ctx-chip .ctx-sub { display: none; }
}

@media (max-width: 480px) {
  .aim-ctx-chip { padding: 6px 10px; }
}
@media (max-width: 560px) {
  .aim-nav-companion { bottom: 72px !important; }
}

body :focus-visible {
  outline: 3px solid var(--navy);
  outline-offset: 2px;
}
.aim-topbar :focus-visible,
.aim-hero-navy :focus-visible,
.aim-footer :focus-visible,
.wg-stage :focus-visible,
.aim-nav-panel :focus-visible,
.aim-export-bar :focus-visible,
.v3-voice :focus-visible {
  outline: 3px solid var(--orange-400);
  outline-offset: 2px;
}
.aim-topbar-right .aim-route-btn {
  font: inherit; font-size: 0.85rem; font-weight: 500; line-height: 1.2; white-space: nowrap;
  color: rgba(255,255,255,0.85); background: none; cursor: pointer;
  padding: 8px 14px; border-radius: var(--radius-lg, 8px);
  border: 1px solid rgba(255,255,255,0.25);
  transition: color 0.2s, background 0.2s, border-color 0.2s;
}
.aim-topbar-right .aim-route-btn:hover { background: rgba(255,255,255,0.06); border-color: #fff; color: #fff; }
.aim-topbar-right .aim-route-btn.open { background: rgba(255,255,255,0.14); border-color: #fff; color: #fff; }
.aim-topbar-right .aim-route-btn:focus-visible { outline: 2px solid var(--orange); outline-offset: 2px; }
.aim-route-scrim { position: fixed; left: 0; right: 0; bottom: 0; top: 0; background: rgba(14,24,38,0.42); z-index: 98; }
.aim-route {
  position: fixed; left: 0; right: 0; top: 0; z-index: 99;
  max-height: 100vh; overflow: auto; overscroll-behavior: contain;
  background: var(--off-white, #F7F8FA); color: var(--text); border-bottom: 1px solid var(--border);
  box-shadow: 0 24px 48px -12px rgba(14,24,38,0.28);
  padding: 26px 28px 16px;
}
.aim-route[hidden], .aim-route-scrim[hidden] { display: none; }
.aim-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.aim-route-cols { display: grid; grid-template-columns: 1fr 1.5fr; gap: 44px; max-width: 1400px; align-items: start; }
.aim-route-eyebrow { display: flex; align-items: center; gap: 10px; font-size: 0.85rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--text-muted); margin: 0 0 12px; }
.aim-route-eyebrow a { color: inherit; text-decoration: none; }
.aim-route-eyebrow a:hover { color: var(--text); text-decoration: underline; text-underline-offset: 3px; }

.aim-map-box {
  background: #fff; border: 1px solid var(--border); border-top: 3px solid var(--navy);
  border-radius: 10px; padding: 16px 18px 14px;
}
.aim-map-box.mk-you { border-top-color: var(--orange); }
.aim-route-eyebrow .dot, .aim-route-hub .dot {
  width: 8px; height: 8px; border-radius: 50%; background: var(--navy);
  display: inline-block; flex-shrink: 0;
}
.mk-you .aim-route-eyebrow .dot { background: var(--orange); }
.aim-route-track.mk-strategy { border-top-color: var(--navy); }
.aim-route-track.mk-strategy .dot { background: var(--navy); }
.aim-route-track.mk-enablement { border-top-color: var(--navy-300, #6882A4); }
.aim-route-track.mk-enablement .dot { background: var(--navy-300, #6882A4); }
.aim-route-track.mk-talent { border-top-color: #2E6B4F; }
.aim-route-track.mk-talent .dot { background: #2E6B4F; }
.aim-route-track.mk-org_structure { border-top-color: var(--orange-600, #B05E08); }
.aim-route-track.mk-org_structure .dot { background: var(--orange-600, #B05E08); }

.aim-map-rows { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px; }
.aim-map-row {
  display: block; background: var(--off-white, #F7F8FA); border: 1px solid var(--border); border-radius: 10px;
  padding: 11px 16px; text-decoration: none; color: var(--text);
  transition: border-color .15s;
}
.aim-map-row:hover { border-color: var(--navy-200, #95ACC6); }
.aim-map-row b { display: block; font-size: 0.92rem; font-weight: 800; line-height: 1.3; }
.aim-map-row > span:not(.aim-map-pins) { display: block; font-size: 0.82rem; color: var(--text-muted); line-height: 1.45; margin-top: 1px; }
.aim-map-row[aria-current="page"] { box-shadow: inset 3px 0 0 var(--orange); }
.aim-map-pins { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 7px; }

.aim-map-pin { font-size: 0.8rem; font-weight: 700; border-radius: 999px; padding: 1.5px 10px; white-space: nowrap; }
.aim-map-pin.here { background: var(--orange-fill, #F88709); color: var(--on-orange, #1E2E42); }
.aim-map-pin.open { background: var(--navy-050, #E8EDF3); color: var(--navy-600, #243852); }
.aim-map-pin.done { display: inline-flex; align-items: center; gap: 6px; padding: 0; color: var(--text-muted); }
.aim-map-pin.done i { width: 15px; height: 15px; background: var(--orange-fill, #F88709); color: var(--on-orange, #1E2E42); display: inline-flex; align-items: center; justify-content: center; border-radius: 2px; }
.aim-map-pin.done i svg { width: 10px; height: 10px; }
.aim-map-row b .aim-map-pin, .aim-route-list b .aim-map-pin { margin-left: 10px; }
.aim-route-eyebrow .aim-map-pin, .aim-map-plaque .aim-map-pin { letter-spacing: 0; text-transform: none; }

.aim-map-plaque {
  background: #fff; border: 1px solid var(--border); border-radius: 10px;
  padding: 11px 16px; font-size: 0.9rem; color: var(--text-muted); margin: 0 0 16px;
}
.aim-map-plaque a {
  color: var(--ink-link, #1E2E42); font-weight: 700; text-decoration: underline;
  text-decoration-color: var(--link-rule, rgba(30,46,66,0.35)); text-underline-offset: 3px;
}
.aim-map-tracks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px 18px; }
@media (max-width: 820px) { .aim-map-tracks { grid-template-columns: 1fr; } }
.aim-route-track {
  margin: 0; background: #fff; border: 1px solid var(--border); border-top: 3px solid var(--navy);
  border-radius: 8px; padding: 11px 14px 9px;
}
.aim-route-hub { display: flex; align-items: center; gap: 8px; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--text-muted); padding: 0 0 6px; text-decoration: none; }
.aim-route-hub:hover { color: var(--navy); text-decoration: underline; text-underline-offset: 3px; }
.aim-route-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.aim-route-list a { display: block; padding: 5px 8px; margin: 0 -8px; border-radius: 8px; text-decoration: none; color: var(--text); }
.aim-route-list a:hover { background: var(--navy-050, #E8EDF3); }
.aim-route-list a b { display: block; font-size: 0.9rem; font-weight: 700; line-height: 1.3; }
.aim-route-list a span { display: block; font-size: 0.8rem; color: var(--text-muted); line-height: 1.4; margin-top: 1px; }
.aim-route-list a[aria-current="page"] { box-shadow: inset 3px 0 0 var(--orange); background: var(--navy-050, #E8EDF3); }

.aim-map-shelf {
  border-top: 1px solid var(--border); margin-top: 22px; padding-top: 14px;
  display: flex; align-items: baseline; gap: 10px 22px; flex-wrap: wrap; max-width: 1400px;
}
.aim-map-shelf .aim-route-eyebrow { margin: 0; }
.aim-map-shelf a {
  font-size: 0.85rem; color: var(--text); text-decoration: underline;
  text-decoration-color: var(--link-rule, rgba(30,46,66,0.35)); text-underline-offset: 3px;
}
.aim-map-shelf a[aria-current="page"] { font-weight: 700; }
.aim-map-shelf a.aim-route-more { font-weight: 700; }

.aim-route-link {
  color: var(--ink-link, #1E2E42); font: inherit; font-weight: 700; background: none; border: 0; padding: 0; cursor: pointer;
  text-decoration: underline; text-decoration-color: var(--link-rule, rgba(30,46,66,0.35)); text-underline-offset: 3px;
}
.aim-route-foot { display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid var(--border); margin-top: 14px; padding-top: 12px; font-size: 0.85rem; color: var(--text-muted); max-width: 1400px; }
.aim-route-ask-wrap { display: inline-flex; align-items: center; gap: 8px; }
.aim-route-nvm { width: 18px; height: 18px; border-radius: 50%; background: var(--navy); position: relative; display: inline-block; }
.aim-route-nvm::after { content: ""; position: absolute; inset: 5px; border-radius: 50%; background: var(--orange); }
.aim-route-close { font: inherit; font-size: 0.82rem; color: var(--text-muted); background: none; border: 1px solid var(--border); border-radius: 8px; padding: 5px 14px; cursor: pointer; }
.aim-route-close:hover { color: var(--text); border-color: var(--navy-200, #95ACC6); }
.aim-route a:focus-visible, .aim-route button:focus-visible { outline: 2px solid var(--orange); outline-offset: 2px; }
@media (max-width: 1100px) {
  .aim-route-cols { grid-template-columns: 1fr 1.3fr; gap: 32px; }
  .aim-map-tracks { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
  .aim-route { padding: 18px 14px 72px; }
  .aim-route-cols { display: flex; flex-direction: column; gap: 24px; }
  .aim-route-foot { flex-direction: column; align-items: flex-start; gap: 10px; }
}

.aim-hero-eyebrow,
.aim-tool-card .subtitle,
:is(.aim-eyebrow, .eyebrow, .rr-close-eye, .wg-band-eye, .su-eyebrow, .aim-endclose-eye, .rr-sf-label, .action-card .level):has(+ :is(h1, h2, h3, h4)) { display: none !important; }
.aim-hero-mark + :is(h1, .aim-hero-title) { margin-top: 0; }
