/* Legacy feature styles: migrate each scoped family during Phases 3 and 4.
   Shared foundation, Bootstrap bridge and chrome live in design-tokens/components/shell.css. */
.program-research-link {
  align-items: center;
  background: #f3f8fb;
  border: 1px solid #cbdde8;
  border-left: .35rem solid #245f86;
  border-radius: .8rem;
  display: grid;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 1rem 1.1rem;
}

.program-research-link h2,
.program-research-link p {
  margin: 0;
}

.program-research-link p:not(.eyebrow) {
  color: #526779;
  margin-top: .25rem;
}

.program-research-link--needed,
.shortlist-research-readiness {
  background: #fffbf1;
  border-color: #ead8a7;
}

.school-value-status-badge {
  align-items: center;
  background: #e7f4ed;
  border: 1px solid #9bc9ad;
  border-radius: 999px;
  color: #185b38;
  display: inline-flex;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .02em;
  line-height: 1;
  padding: .35rem .55rem;
  width: fit-content;
}

.program-strength-only {
  background: #f7fafc;
  border: 1px solid #d5e0e8;
  border-radius: .85rem;
  margin: 1rem 0;
  padding: 1rem;
}

.program-strength-only ul {
  display: grid;
  gap: .7rem;
  list-style: none;
  margin: .8rem 0 0;
  padding: 0;
}

.program-strength-only li {
  align-items: center;
  background: #fff;
  border: 1px solid #dce5eb;
  border-radius: .7rem;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: .8rem .9rem;
}

.program-strength-only li > div {
  display: grid;
  gap: .3rem;
}

.program-strength-only li > div:last-child {
  justify-items: end;
}

@media (max-width: 600px) {
  .program-strength-only li {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .program-strength-only li > div:last-child {
    justify-items: start;
  }
}

.shortlist-research-readiness {
  align-items: center;
  border: 1px solid #ead8a7;
  border-radius: 0.75rem;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 1rem;
  padding: 0.9rem 1rem;
}

.shortlist-research-readiness h2,
.shortlist-research-readiness p {
  margin: 0;
}

.shortlist-research-readiness h2 {
  font-size: 1rem;
  margin-top: 0.15rem;
}

.shortlist-research-readiness p:not(.eyebrow) {
  color: #6b5b35;
  font-size: 0.86rem;
  margin-top: 0.3rem;
}

.shortlist-research-gap {
  color: #80652b;
  font-size: 0.78rem;
  font-weight: 750;
  margin: 0.25rem 0 0;
}

.parker-home-hero {
  background: linear-gradient(135deg, #173f5c, #245f86);
  border-radius: 1rem;
  color: #fff;
  margin-bottom: 1.25rem;
  padding: 1.75rem;
}

.parker-home-hero .eyebrow,
.parker-home-hero p {
  color: #d8e8f2;
}

.parker-home-hero h1 {
  font-size: clamp(2rem, 4vw, 3.2rem);
  margin: 0.2rem 0 0.45rem;
}

.parker-home-hero > p:not(.eyebrow) {
  font-size: 1.08rem;
  margin-bottom: 0;
  max-width: 46rem;
}

.parker-home-metrics {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 1.5rem;
  max-width: 48rem;
}

.parker-home-metrics > div {
  background: rgb(255 255 255 / 12%);
  border: 1px solid rgb(255 255 255 / 18%);
  border-radius: 0.7rem;
  padding: 0.75rem 0.9rem;
}

.parker-home-metrics strong,
.parker-home-metrics span {
  display: block;
}

.parker-home-metrics strong {
  font-size: 1.55rem;
  line-height: 1.1;
}

.parker-home-metrics span {
  color: #d8e8f2;
  font-size: 0.82rem;
  font-weight: 700;
  margin-top: 0.2rem;
}

.parker-home-next-up {
  align-items: center;
  background: linear-gradient(135deg, #f7fbfd, #eef5f8);
  border: 1px solid #c9dce6;
  border-left: 0.4rem solid #245f86;
  border-radius: 0.9rem;
  display: flex;
  gap: 1.25rem;
  justify-content: space-between;
  margin-bottom: 1.25rem;
  padding: 1rem 1.15rem;
}

.parker-home-next-up__identity,
.parker-home-starter__identity {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  min-width: 0;
}

.parker-home-next-up h2,
.parker-home-next-up p {
  margin: 0;
}

.parker-home-next-up h2 {
  font-size: 1.2rem;
  margin: 0.1rem 0 0.2rem;
}

.parker-home-next-up__location {
  color: #526779;
  font-size: 0.88rem;
}

.parker-home-next-up__action {
  align-items: center;
  display: flex;
  gap: 0.7rem;
  justify-content: flex-end;
}

.parker-home-next-up__action p {
  color: #526779;
  font-size: 0.86rem;
  max-width: 22rem;
}

.parker-home-paths {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 1.25rem;
}

.parker-home-path,
.parker-home-workbench {
  background: #fff;
  border: 1px solid #d6e0e8;
  border-radius: 0.9rem;
}

.parker-home-path {
  display: flex;
  flex-direction: column;
  padding: 1.15rem;
}

.parker-home-path--value {
  background: #f3f8fb;
  border-color: #cbdde8;
}

.parker-home-path h2,
.parker-home-path p {
  margin: 0;
}

.parker-home-path h2 {
  font-size: 1.28rem;
  margin: 0.15rem 0 0.5rem;
}

.parker-home-path p:not(.eyebrow) {
  color: #526779;
  line-height: 1.45;
}

.parker-home-path .btn {
  align-self: flex-start;
  margin-top: auto;
  padding-top: 0.4rem;
}

.parker-home-path__note {
  color: #80652b !important;
  font-size: 0.82rem;
  font-weight: 700;
  margin-top: 0.65rem !important;
}

.parker-home-college-prep {
  background: #fff;
  border: 1px solid #cbdde8;
  border-radius: 0.9rem;
  margin-bottom: 1.25rem;
  padding: 1.25rem;
}

.parker-home-college-prep .parker-home-section-heading {
  margin-bottom: 0.9rem;
}

.parker-home-college-prep__list {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.parker-home-college-prep__list li {
  align-items: start;
  background: #f7fafc;
  border: 1px solid #dce7ed;
  border-radius: 0.7rem;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  min-width: 0;
  padding: 0.8rem 0.9rem;
}

.parker-home-college-prep__list li > div:first-child {
  min-width: 0;
}

.parker-home-college-prep__list strong,
.parker-home-college-prep__list span,
.parker-home-college-prep__list time {
  display: block;
  overflow-wrap: anywhere;
}

.parker-home-college-prep__list strong {
  color: #243746;
  line-height: 1.3;
}

.parker-home-college-prep__list .parker-home-college-prep__title {
  align-items: flex-start;
  display: flex;
  gap: 0.5rem;
}

.parker-home-college-prep__title .cp-meaning-icon {
  color: #245f86;
  flex: 0 0 auto;
  height: 1.15rem;
  margin-top: 0.1rem;
  width: 1.15rem;
}

.parker-home-college-prep__title span {
  color: inherit;
  font-size: inherit;
  margin: 0;
}

.parker-home-college-prep__list span {
  color: #526779;
  font-size: 0.82rem;
  margin-top: 0.2rem;
}

.parker-home-college-prep__date {
  flex: 0 0 auto;
  text-align: right;
}

.parker-home-college-prep__date time {
  color: #245f86;
  font-weight: 700;
  white-space: nowrap;
}

.parker-home-college-prep__empty {
  color: #526779;
  margin: 0;
}

.parker-home-workbench {
  padding: 1.25rem;
}

.parker-home-section-heading {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.parker-home-section-heading h2,
.parker-home-section-heading p {
  margin: 0;
}

.parker-home-section-heading h2 {
  font-size: 1.45rem;
  margin-top: 0.15rem;
}

.parker-home-workbench__intro {
  color: #526779;
  margin: 0.8rem 0 1rem;
  max-width: 52rem;
}

.parker-home-starters {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.parker-home-starter {
  background: #f8fafc;
  border: 1px solid #dbe4eb;
  border-radius: 0.7rem;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  justify-content: space-between;
  padding: 1rem;
}

.parker-home-starter h3,
.parker-home-starter p {
  margin: 0;
}

.parker-home-starter h3 {
  font-size: 1.05rem;
  margin: 0.15rem 0;
}

.parker-home-starter__identity {
  margin-bottom: 0.4rem;
}

.parker-home-starter p:not(.eyebrow) {
  color: #617086;
}

.parker-home-research-state {
  color: #80652b;
  display: inline-block;
  font-size: 0.78rem;
  font-weight: 750;
  margin-top: 0.6rem;
}

.parker-home-research-state--ready {
  color: #34705c;
}

.parker-home-complete {
  margin-bottom: 0;
}

@media (max-width: 700px) {
  .program-research-link {
    grid-template-columns: 1fr;
  }

  .shortlist-research-readiness {
    align-items: flex-start;
    flex-direction: column;
  }

  .parker-home-hero {
    padding: 1.2rem;
  }

  .parker-home-metrics,
  .parker-home-paths,
  .parker-home-college-prep__list,
  .parker-home-starters {
    grid-template-columns: 1fr;
  }

  .parker-home-next-up,
  .parker-home-next-up__action {
    align-items: flex-start;
    flex-direction: column;
  }

  .parker-home-next-up__action {
    gap: 0.55rem;
  }

  .parker-home-section-heading {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Keep each action control intact; its parent row remains free to wrap. */
.card-actions > :is(a, button, .btn),
.button-row > :is(a, button, .btn),
.form-actions > :is(a, button, .btn),
.link-list > :is(a, button, .btn) {
  white-space: nowrap;
}

.results-summary {
  color: #637083;
  margin: 0.25rem 0 0;
}

.school-context-heading {
  background: linear-gradient(110deg, #fff 0%, #f6f9fb 100%);
  border: 1px solid #dfe6ec;
  border-radius: 14px;
  box-shadow: 0 2px 8px rgb(28 53 73 / 6%);
  isolation: isolate;
  overflow: visible;
  padding: 1rem 1.1rem;
  position: relative;
  z-index: 1011;
}

.school-context-heading::before {
  background: linear-gradient(180deg, #176b6c, #245f86);
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  top: 0;
  width: 4px;
  border-radius: 14px 0 0 14px;
  z-index: 1;
}

.school-context-heading > :not(.school-context-heading__wash) {
  position: relative;
  z-index: 2;
}

.school-context-heading__title {
  align-items: center;
  display: flex;
  gap: 0.85rem;
  min-width: 0;
}

.school-context-heading__wash {
  filter: blur(12px) saturate(1.35);
  height: 9rem;
  object-fit: contain;
  opacity: 0.1;
  pointer-events: none;
  position: absolute;
  right: clamp(7rem, 18vw, 16rem);
  top: 50%;
  transform: translateY(-50%) scale(1.25);
  width: 9rem;
  z-index: 0;
}

.eyebrow {
  color: #637083;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0;
  margin: 0 0 0.25rem;
  text-transform: uppercase;
}

.recruiting-hero {
  align-items: stretch;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1.6fr) minmax(280px, 0.8fr);
  margin: 1.5rem 0 1rem;
}

.recruiting-hero__copy,
.recruiting-hero__panel,
.recruiting-section,
.recruiting-links {
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgb(29 39 51 / 6%);
}

.recruiting-hero__copy {
  padding: clamp(1.25rem, 3vw, 2rem);
}

.recruiting-hero__copy h1 {
  font-size: clamp(2.4rem, 5vw, 4.8rem);
  font-weight: 850;
  letter-spacing: 0;
  line-height: 0.98;
  margin: 0;
}

.recruiting-hero__headline {
  color: #37465a;
  font-size: 1.2rem;
  margin: 1rem 0;
  max-width: 760px;
}

.recruiting-meta,
.recruiting-strengths,
.coach-feedback-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.recruiting-meta span,
.recruiting-strengths span {
  background: #eef3f7;
  border: 1px solid #d6e0e8;
  border-radius: 999px;
  color: #263649;
  font-weight: 700;
  padding: 0.4rem 0.7rem;
}

.coach-invite-banner {
  background: #eaf5ee;
  border: 1px solid #bfdfcb;
  border-radius: 8px;
  color: #214b30;
  margin-top: 1rem;
  padding: 0.85rem;
}

.recruiting-hero__panel,
.recruiting-section,
.recruiting-links {
  padding: 1rem;
}

.recruiting-facts,
.private-detail-grid {
  display: grid;
  gap: 0.8rem;
  margin: 0;
}

.recruiting-facts div,
.private-detail-grid div {
  border-top: 1px solid #e6eaee;
  padding-top: 0.75rem;
}

.recruiting-facts dt,
.private-detail-grid dt {
  color: #637083;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.recruiting-facts dd,
.private-detail-grid dd {
  color: #1d2733;
  font-weight: 700;
  margin: 0.1rem 0 0;
}

.recruiting-section {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.8fr);
  margin-bottom: 1rem;
}

.recruiting-section h2 {
  font-size: 1.45rem;
  font-weight: 800;
  margin: 0 0 0.5rem;
}

.recruiting-section p {
  color: #37465a;
  margin: 0;
}

.recruiting-section--video {
  grid-template-columns: minmax(240px, 0.65fr) minmax(0, 1.35fr);
}

.video-frame {
  aspect-ratio: 16 / 9;
  background: #111820;
  border-radius: 8px;
  overflow: hidden;
  width: 100%;
}

.video-frame iframe,
.video-placeholder {
  border: 0;
  height: 100%;
  width: 100%;
}

.video-placeholder {
  align-items: center;
  color: #dce5ee;
  display: flex;
  font-weight: 800;
  justify-content: center;
  text-align: center;
}

.recruiting-section--private {
  border-color: #bfdfcb;
}

.private-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.coach-feedback-actions {
  justify-content: flex-start;
}

.recruiting-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}

.recruiting-links a {
  font-weight: 800;
}

.school-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.settings-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.settings-card {
  align-content: space-between;
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgb(29 39 51 / 6%);
  display: grid;
  gap: 1rem;
  min-height: 190px;
  padding: 1rem;
}

.settings-card h2 {
  font-size: 1.2rem;
  font-weight: 800;
  margin: 0 0 0.35rem;
}

.settings-card p {
  color: #455466;
  margin: 0;
}

.settings-card--disabled {
  background: #f8fafb;
}

.shortlist-mobile-card {
  display: none;
}

.school-card,
.form-section,
.detail-main,
.detail-panel,
.search-panel,
.empty-state {
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgb(29 39 51 / 6%);
}

.search-panel {
  display: grid;
  gap: 1rem;
  margin-bottom: 1rem;
  padding: 1rem;
}

.mobile-results-overview {
  display: none;
}

.mobile-filter-panel > summary {
  display: none;
}

.saved-search-bar,
.save-search-panel,
.result-summary-panel {
  align-items: end;
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgb(29 39 51 / 6%);
  display: grid;
  gap: 1rem;
  margin-bottom: 1rem;
  padding: 1rem;
}

.saved-search-bar {
  grid-template-columns: minmax(220px, 360px) minmax(0, 1fr);
}

.saved-search-delete {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.saved-search-delete form {
  margin: 0;
}

.save-search-panel {
  grid-template-columns: minmax(220px, 1fr) auto;
}

.result-summary-panel {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.result-summary-panel h2 {
  font-size: 1.35rem;
  font-weight: 800;
  margin: 0;
}

.result-summary-panel__meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.view-toggle {
  background: #eef2f6;
  border: 1px solid #d7dde5;
  border-radius: 999px;
  display: inline-flex;
  gap: 0.2rem;
  padding: 0.2rem;
}

.view-toggle form {
  margin: 0;
}

.view-toggle__option {
  background: transparent;
  border: 0;
  border-radius: 999px;
  color: #455466;
  cursor: pointer;
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1;
  padding: 0.42rem 0.65rem;
  text-decoration: none;
}

.view-toggle__option--active {
  background: #fff;
  box-shadow: 0 1px 4px rgb(29 39 51 / 12%);
  color: #1f2937;
}

.my-schools-view-switcher {
  align-items: center;
  background: #eef2f6;
  border: 1px solid #d7dde5;
  border-radius: 0.6rem;
  display: inline-flex;
  gap: 0.2rem;
  margin: 0 0 1rem;
  max-width: 100%;
  padding: 0.25rem;
}

.my-schools-view-switcher__option {
  border: 1px solid transparent;
  border-radius: 0.4rem;
  color: #455466;
  font-size: 0.88rem;
  font-weight: 800;
  padding: 0.45rem 0.7rem;
  text-decoration: none;
  white-space: nowrap;
}

.my-schools-view-switcher__option:hover {
  background: #dcecf5;
  color: #173d59;
}

.my-schools-view-switcher__option:focus-visible {
  outline: 3px solid #1f5f8b;
  outline-offset: 2px;
}

.my-schools-view-switcher__option--active {
  background: #fff;
  border-color: #cbd5df;
  box-shadow: 0 1px 4px rgb(29 39 51 / 12%);
  color: #1f2937;
}

.my-schools-empty-state {
  text-align: left;
}

.coach-sheet-shell {
  display: grid;
  gap: 0.75rem;
}

.coach-sheet-table-wrap {
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgb(29 39 51 / 6%);
}

.coach-sheet-table-wrap {
  overflow: auto;
}

.coach-sheet-table {
  border-collapse: collapse;
  min-width: 980px;
  width: 100%;
}

.coach-sheet-table th,
.coach-sheet-table td {
  border: 1px solid #1d2733;
  padding: 0.4rem 0.55rem;
  vertical-align: top;
}

.coach-sheet-table th {
  background: #f8fafb;
  font-weight: 800;
  text-align: center;
  text-decoration: underline;
}

.coach-sheet-table th:nth-child(1) {
  min-width: 220px;
}

.coach-sheet-table th:nth-child(2) {
  min-width: 160px;
}

.coach-sheet-table th:nth-child(3) {
  min-width: 120px;
}

.coach-sheet-table th:nth-child(4) {
  min-width: 300px;
}

.coach-sheet-check {
  text-align: center;
  width: 104px;
}

.coach-sheet-notes {
  min-width: 300px;
}

.coach-sheet-hint {
  color: #637083;
  font-size: 0.78rem;
  margin-top: 0.25rem;
}

.sheet-checkbox {
  border: 2px solid #8a929d;
  border-radius: 3px;
  display: inline-grid;
  height: 20px;
  place-items: center;
  width: 20px;
}

.sheet-checkbox--checked::after {
  color: #1f5f8b;
  content: "X";
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1;
}

.copy-status {
  color: #17643a;
  font-weight: 700;
  min-height: 1.5rem;
}

.coach-sheet-footer {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.search-primary label,
.form-field label {
  font-weight: 650;
  margin-bottom: 0.35rem;
}

.filter-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (min-width: 721px) and (max-width: 991.98px) {
  .filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.filter-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.filter-pills input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.filter-pills label {
  background: #eef2f6;
  border: 1px solid #d7dde5;
  border-radius: 999px;
  color: #455466;
  cursor: pointer;
  font-size: 0.85rem;
  font-weight: 700;
  line-height: 1;
  margin: 0;
  padding: 0.45rem 0.7rem;
}

.filter-pills input:checked + label {
  background: #e7f0f7;
  border-color: #93bbd8;
  color: #1f5f8b;
}

.filter-pills input:focus + label {
  box-shadow: 0 0 0 0.2rem rgb(37 140 251 / 20%);
}

.search-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-end;
}

.empty-state {
  margin-bottom: 1rem;
  padding: 1.5rem;
}

.login-shell {
  display: grid;
  justify-items: center;
  padding: 3rem 0;
}

.login-panel {
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgb(29 39 51 / 6%);
  display: grid;
  gap: 1rem;
  max-width: 420px;
  padding: 1.25rem;
  width: min(100%, 420px);
}

.login-panel h1 {
  font-size: 1.8rem;
  font-weight: 800;
  margin: 0;
}

.auth-warning {
  background: #fff3d8;
  border: 1px solid #f0d28a;
  border-radius: 8px;
  color: #7a4b00;
  padding: 0.75rem;
}

.auth-warning--success {
  background: #eaf5ee;
  border-color: #bfdfcb;
  color: #214b30;
}

.readonly-banner {
  background: #eef2f6;
  border: 1px solid #d7dde5;
  border-radius: 8px;
  color: #455466;
  padding: 0.75rem;
}

.empty-state h2 {
  font-size: 1.1rem;
  font-weight: 750;
  margin: 0 0 0.35rem;
}

.empty-state p {
  color: #637083;
  margin: 0;
}

.school-card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem;
}

.compact-results {
  display: grid;
  gap: 0.45rem;
}

.compact-row {
  align-items: center;
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  box-shadow: 0 6px 18px rgb(29 39 51 / 5%);
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(260px, 1.6fr) minmax(150px, 0.8fr) minmax(82px, 0.45fr) minmax(110px, 0.55fr) minmax(86px, 0.45fr) minmax(128px, 0.65fr) minmax(88px, 0.4fr);
  padding: 0.65rem 0.75rem;
}

.compact-row--header {
  background: transparent;
  border: 0;
  box-shadow: none;
  color: #637083;
  font-size: 0.76rem;
  font-weight: 800;
  padding-bottom: 0.15rem;
  text-transform: uppercase;
}

.compact-school {
  align-items: center;
  display: flex;
  gap: 0.7rem;
  min-width: 0;
}

.compact-school h2 {
  font-size: 0.98rem;
  font-weight: 800;
  line-height: 1.15;
  margin: 0;
}

.school-name-line {
  align-items: center;
  display: flex;
  gap: 0.35rem;
  min-width: 0;
}

.school-name-line span:first-child {
  min-width: 0;
}

.pricing-estimate-cue {
  align-items: center;
  background: #dff3e7;
  border: 1px solid #b6dfc5;
  border-radius: 999px;
  color: #17643a;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 0.72rem;
  font-weight: 900;
  height: 1.15rem;
  justify-content: center;
  line-height: 1;
  width: 1.15rem;
}

.compact-school p {
  color: #637083;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.76rem;
  gap: 0.4rem;
  margin: 0.15rem 0 0;
}

.compact-row dt {
  display: none;
}

.compact-row dd {
  font-weight: 750;
}

.planning-cost-value {
  border-radius: 999px;
  display: inline-flex;
  font-weight: 850;
  line-height: 1;
  padding: 0.22rem 0.45rem;
}

.merit-cost-cue {
  color: #4d6f5f;
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.25;
  margin-top: 0.15rem;
}

.planning-cost-value--strong {
  background: #dff3e7;
  color: #17643a;
}

.planning-cost-value--stretch {
  background: #fff3d8;
  color: #7a4b00;
}

.planning-cost-value--outside {
  background: #fff0f0;
  color: #9a2d2d;
}

.compact-actions {
  display: flex;
  gap: 0.55rem;
  justify-content: flex-end;
}

.compact-actions a {
  font-weight: 800;
}

.school-card__header {
  align-items: start;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
}

.school-identity,
.detail-title {
  align-items: center;
  display: flex;
  gap: 0.85rem;
  min-width: 0;
}

.detail-title__signals {
  align-items: center;
  color: #526779;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.78rem;
  font-weight: 750;
  gap: 0.55rem 0.8rem;
  letter-spacing: 0.025em;
  margin-bottom: 0.2rem;
  text-transform: uppercase;
}

.detail-title__signals span {
  align-items: center;
  display: inline-flex;
  gap: 0.3rem;
}

.detail-title__signals svg {
  fill: none;
  height: 1rem;
  stroke: #245f86;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 1rem;
}

.school-logo {
  align-items: center;
  background: #eef2f6;
  border: 1px solid #d7dde5;
  border-radius: 8px;
  display: grid;
  flex: 0 0 44px;
  height: 44px;
  justify-items: center;
  overflow: hidden;
  width: 44px;
}

.school-logo--large {
  flex-basis: 64px;
  height: 64px;
  width: 64px;
}

.school-logo img {
  display: block;
  height: 32px;
  object-fit: contain;
  width: 32px;
}

.school-logo--large img {
  height: 46px;
  width: 46px;
}

.school-logo--compact {
  flex-basis: 34px;
  height: 34px;
  width: 34px;
}

.school-logo--compact img {
  height: 24px;
  width: 24px;
}

.school-logo--next-up {
  flex-basis: 52px;
  height: 52px;
  width: 52px;
}

.school-logo--next-up img {
  height: 38px;
  width: 38px;
}

.school-logo__fallback {
  color: #637083;
  display: none;
  font-size: 0.8rem;
  font-weight: 800;
}

.school-logo__fallback--visible {
  display: grid;
}

.school-card h2,
.form-section h2,
.detail-main h2 {
  font-size: 1.1rem;
  font-weight: 750;
  margin: 0;
}

.school-card p {
  margin: 0;
}

.muted-line {
  color: #637083;
  font-size: 0.85rem;
  margin: 0.15rem 0 0;
}

.score-chip {
  background: #dff3e7;
  border-radius: 999px;
  color: #17643a;
  display: inline-flex;
  font-weight: 800;
  line-height: 1;
  margin-bottom: 0.55rem;
  padding: 0.4rem 0.6rem;
}

.score-chip--secondary {
  background: #e7f0f7;
  color: #1f5f8b;
}

.mini-metrics {
  display: grid;
  gap: 0.35rem;
  margin: 0;
}

.mini-metrics div {
  align-items: baseline;
  display: flex;
  gap: 0.5rem;
  justify-content: space-between;
}

.mini-metrics dt,
.mini-metrics dd {
  font-size: 0.82rem;
}

.financial-range-indicator {
  align-items: center;
  border: 1px solid currentColor;
  border-radius: 999px;
  display: inline-flex;
  font-size: 0.67rem;
  font-weight: 800;
  gap: 0.25rem;
  line-height: 1;
  padding: 0.2rem 0.38rem;
  white-space: nowrap;
}

.financial-range-indicator > span {
  background: currentColor;
  border-radius: 50%;
  height: 0.42rem;
  width: 0.42rem;
}

.financial-range-indicator--within { color: #17643a; }
.financial-range-indicator--stretch { color: #7a4b00; }
.financial-range-indicator--outside { color: #9a2d2d; }
.financial-range-indicator--unknown { color: #637083; }

.status-pill {
  align-items: center;
  background: #e7f0f7;
  border-radius: 999px;
  color: #1f5f8b;
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 700;
  justify-content: center;
  line-height: 1.15;
  padding: 0.25rem 0.55rem;
  text-align: center;
}

.status-context-label {
  align-items: center;
  display: inline-flex;
  gap: 0.3rem;
}

.status-context-label-group {
  align-items: center;
  gap: 0.3rem;
}

.compact-status-label {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.24rem;
  line-height: 1.1;
}

.compact-status-label .status-context-label {
  gap: 0.22rem;
}

.compact-status-label .status-context-icon {
  height: 0.85rem;
  width: 0.85rem;
}

.status-context-icon {
  flex: 0 0 auto;
  height: 1rem;
  width: 1rem;
}

.status-pill--warm {
  background: #fff3d8;
  color: #7a4b00;
}

.status-pill--muted {
  background: #eef2f6;
  color: #637083;
}

.status-pill--comments {
  background: #f1ecff;
  color: #5b3aa4;
}

.status-pill--danger {
  background: #fff0f0;
  color: #9a2d2d;
}

.status-pill--positive {
  background: #dff3e7;
  color: #17643a;
}

.status-pill--parent-shared {
  background: #efe8ff;
  color: #5c3a9e;
}

.parent-picks-heading .results-summary span {
  white-space: nowrap;
}

.parker-take-saved {
  background: #edf7f1;
  border: 1px solid #b8dcc6;
  border-radius: 0.65rem;
  color: #2c6848;
  font-weight: 750;
  margin: -0.35rem 0 1rem;
  padding: 0.75rem 0.9rem;
}

.parker-take-form {
  display: grid;
  gap: 1rem;
  margin: 0 auto;
  max-width: 54rem;
}

.parker-take-heading__actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1rem;
  justify-content: flex-end;
}

.parker-take-heading__desktop-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1rem;
}

.parker-take-heading__more-links {
  display: none;
}

.parker-take-jump-link {
  display: block;
  font-size: 0.9rem;
  font-weight: 800;
  margin: -0.35rem auto 1rem;
  max-width: 54rem;
  width: fit-content;
}

#parker-take-form {
  scroll-margin-top: 5.5rem;
}

.parker-take-evidence,
.parker-take-value-map {
  background: #fff;
  border: 1px solid #dfe5eb;
  border-radius: 0.9rem;
  display: grid;
  gap: 1rem;
  margin: 0 auto 1rem;
  max-width: 54rem;
  padding: 1.15rem;
}

.parker-take-evidence__heading h2,
.parker-take-value-map__heading h2 {
  font-size: 1.25rem;
  margin: 0.1rem 0 0;
}

.parker-take-evidence__facts {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
}

.parker-take-evidence__fact {
  background: #f7f9fb;
  border-radius: 0.65rem;
  display: grid;
  gap: 0.25rem;
  margin: 0;
  padding: 0.75rem;
}

.parker-take-evidence__fact--wide {
  background: #edf5f9;
  grid-column: 1 / -1;
}

.parker-take-evidence__fact dt {
  color: #637083;
  font-size: 0.7rem;
  font-weight: 850;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.parker-take-evidence__fact dd {
  color: #26384a;
  font-size: 0.88rem;
  font-weight: 750;
  margin: 0;
}

.parker-take-evidence__fact--score dd {
  color: #1f5f8b;
  font-size: 1.05rem;
  font-weight: 900;
}

.parker-take-evidence__fact--score dd span {
  color: #637083;
  font-size: 0.68rem;
  font-weight: 700;
}

.parker-take-season-performance {
  background: #fbfcfd;
  border: 1px solid #d7e0e8;
  border-radius: 0.9rem;
  display: grid;
  gap: 0.75rem;
  margin: 0 auto 1rem;
  max-width: 54rem;
  overflow: hidden;
  padding: 1rem;
}

.parker-take-season-performance__heading {
  align-items: start;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
}

.parker-take-season-performance__heading h2 {
  font-size: 1.18rem;
  margin: 0.1rem 0 0;
}

.parker-take-season-performance__season,
.parker-take-season-performance__tournament {
  background: #e7f0f5;
  border: 1px solid #c4d8e5;
  border-radius: 999px;
  color: #245f86;
  font-size: 0.76rem;
  font-weight: 850;
  letter-spacing: 0.03em;
  padding: 0.35rem 0.6rem;
  white-space: nowrap;
}

.parker-take-season-performance__scoreboard {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  margin: 0;
}

.parker-take-season-performance__scoreboard > div {
  border-radius: 0.7rem;
  min-width: 0;
  padding: 0.7rem 0.8rem;
}

.parker-take-season-performance__scoreboard dt,
.parker-take-season-performance__metrics dt {
  color: #637083;
  font-size: 0.64rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  margin: 0;
  text-transform: uppercase;
}

.parker-take-season-performance__scoreboard dd,
.parker-take-season-performance__metrics dd {
  margin: 0;
}

.parker-take-season-performance__record {
  background: #173d59;
  color: #fff;
}

.parker-take-season-performance__record dt {
  color: #d8eaf5;
}

.parker-take-season-performance__record dd {
  align-items: baseline;
  display: flex;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: clamp(1.85rem, 4vw, 2.25rem);
  font-variant-numeric: tabular-nums;
  font-weight: 800;
  gap: 0.12em;
  letter-spacing: -0.035em;
  line-height: 1.05;
  margin-top: 0.25rem;
}

.parker-take-season-performance__record-separator {
  font-size: 0.62em;
  font-weight: 650;
  letter-spacing: 0;
  margin-inline: 0.12em;
  opacity: 0.72;
  transform: translateY(-0.20em);
}

.parker-take-season-performance__win-rate {
  background: #edf5f9;
}

.parker-take-season-performance__win-rate dd {
  color: #245f86;
  font-size: 1.25rem;
  font-variant-numeric: tabular-nums;
  margin-top: 0.25rem;
}

.parker-take-season-performance__bar {
  background: #d7e3eb;
  border-radius: 999px;
  height: 0.45rem;
  margin-top: 0.55rem;
  overflow: hidden;
}

.parker-take-season-performance__bar span {
  background: #2b7b82;
  border-radius: inherit;
  display: block;
  height: 100%;
  width: var(--season-win-percentage);
}

.parker-take-season-performance__rank {
  background: #fff7eb;
  border: 1px solid #efd9b8;
}

.parker-take-season-performance__rank dd {
  color: #8a5316;
  font-size: 1.75rem;
  font-variant-numeric: tabular-nums;
  font-weight: 850;
  line-height: 1;
  margin-top: 0.35rem;
}

.parker-take-season-performance__metrics {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
  margin: 0;
}

.parker-take-season-performance__metrics > div {
  background: #fff;
  border: 1px solid #e0e6eb;
  border-radius: 0.6rem;
  display: grid;
  gap: 0.18rem;
  padding: 0.58rem 0.65rem;
}

.parker-take-season-performance__metrics dd {
  color: #26384a;
  font-size: 0.95rem;
  font-variant-numeric: tabular-nums;
  font-weight: 850;
}

.parker-take-season-performance__footer {
  align-items: center;
  color: #637083;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.74rem;
  font-weight: 700;
  gap: 0.4rem 0.6rem;
}

.parker-take-season-performance__tournament {
  background: #fff7eb;
  border-color: #efd9b8;
  color: #8a5316;
  letter-spacing: 0;
}

.parker-take-evidence__research {
  border-top: 1px solid #e2e7ec;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-top: 0.9rem;
}

.parker-take-evidence__research h3 {
  color: #34465b;
  font-size: 0.82rem;
  font-weight: 850;
  margin: 0 0 0.45rem;
}

.parker-take-evidence__research ul {
  color: #536171;
  display: grid;
  font-size: 0.82rem;
  gap: 0.35rem;
  margin: 0;
  padding-left: 1.1rem;
}

.parker-take-value-map__heading {
  align-items: end;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.parker-take-value-map__heading > p {
  color: #637083;
  font-size: 0.78rem;
  margin: 0;
  max-width: 25rem;
  text-align: right;
}

.parker-take-value-map__missing {
  background: #f7f9fb;
  border-left: 4px solid #91a1b2;
  border-radius: 0.45rem;
  display: grid;
  gap: 0.2rem;
  padding: 0.85rem;
}

.parker-take-value-map__missing span {
  color: #637083;
  font-size: 0.84rem;
}

.parker-take-value-map__legend {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 1rem;
}

.parker-take-value-map__legend > span {
  align-items: center;
  color: #536171;
  display: inline-flex;
  font-size: 0.72rem;
  font-weight: 750;
  gap: 0.35rem;
}

.parker-take-value-map__swatch {
  --take-point-color: #758294;
  background: var(--take-point-color);
  border: 2px solid #fff;
  box-shadow: 0 0 0 1px var(--take-point-color);
  display: inline-block;
  height: 0.65rem;
  width: 0.65rem;
}

.parker-take-value-map__swatch--d2 {
  --take-point-color: #245f86;
  border-radius: 999px;
}

.parker-take-value-map__swatch--d3 {
  --take-point-color: #2f7d69;
  border-radius: 3px;
}

.parker-take-value-map__swatch--naia {
  --take-point-color: #b45309;
  border-radius: 2px;
  transform: rotate(45deg) scale(0.82);
}

.parker-take-value-map__swatch--club {
  --take-point-color: #9b5c9f;
  border-radius: 1px;
}

.parker-take-value-map__swatch--unknown {
  border-radius: 999px;
}

.parker-take-value-map__shell {
  display: grid;
  gap: 0.45rem;
  grid-template-columns: auto minmax(0, 1fr);
}

.parker-take-value-map__y-title {
  align-self: center;
  color: #536171;
  font-size: 0.72rem;
  font-weight: 850;
  transform: rotate(-90deg);
  white-space: nowrap;
  width: 1rem;
}

.parker-take-value-map__chart {
  min-width: 0;
}

.parker-take-value-map__plot {
  background:
    linear-gradient(to right, transparent 49.85%, #91a1b2 50%, transparent 50.15%),
    linear-gradient(to top, transparent 49.85%, #91a1b2 50%, transparent 50.15%),
    repeating-linear-gradient(to right, transparent 0, transparent calc(25% - 1px), rgb(90 109 129 / 10%) 25%),
    repeating-linear-gradient(to top, transparent 0, transparent calc(25% - 1px), rgb(90 109 129 / 10%) 25%),
    #f8fafb;
  border: 1px solid #b9c5d0;
  border-radius: 0.65rem;
  height: 300px;
  margin: 0 0.5rem 0 1.35rem;
  position: relative;
}

.parker-take-value-map__x-title {
  color: #536171;
  font-size: 0.72rem;
  font-weight: 850;
  margin-top: 0.65rem;
  text-align: center;
}

.parker-take-value-map__tick {
  color: #758294;
  font-size: 0.6rem;
  line-height: 1;
  pointer-events: none;
  position: absolute;
}

.parker-take-value-map__tick--x {
  bottom: -1.05rem;
  transform: translateX(-50%);
}

.parker-take-value-map__tick--y {
  left: -1.2rem;
  transform: translateY(50%);
}

.parker-take-value-map__point {
  --take-point-color: #758294;
  align-items: center;
  background: transparent;
  border: 0;
  display: flex;
  height: 44px;
  justify-content: center;
  padding: 0;
  position: absolute;
  transform: translate(-50%, 50%);
  width: 44px;
  z-index: 2;
}

.parker-take-value-map__point.is-context {
  opacity: 0.52;
}

.parker-take-value-map__point.is-context:hover,
.parker-take-value-map__point.is-context:focus-visible {
  opacity: 1;
  z-index: 6;
}

.parker-take-value-map__point:focus-visible {
  border-radius: 999px;
  outline: 3px solid #f1ad52;
  outline-offset: 1px;
}

.parker-take-value-map__dot {
  background: var(--take-point-color);
  border: 3px solid #fff;
  border-radius: 999px;
  box-shadow: 0 0 0 2px var(--take-point-color);
  height: 13px;
  width: 13px;
}

.parker-take-value-map__point--d2 {
  --take-point-color: #245f86;
}

.parker-take-value-map__point--d3 {
  --take-point-color: #2f7d69;
}

.parker-take-value-map__point--d3 .parker-take-value-map__dot {
  border-radius: 4px;
}

.parker-take-value-map__point--naia {
  --take-point-color: #b45309;
}

.parker-take-value-map__point--naia .parker-take-value-map__dot {
  border-radius: 3px;
  transform: rotate(45deg) scale(0.82);
}

.parker-take-value-map__point--club {
  --take-point-color: #9b5c9f;
}

.parker-take-value-map__point--club .parker-take-value-map__dot {
  border-radius: 2px;
}

.parker-take-value-map__point.is-selected {
  z-index: 5;
}

.parker-take-value-map__point.is-selected .parker-take-value-map__dot {
  box-shadow: 0 0 0 3px #fff, 0 0 0 6px #d87b19, 0 4px 10px rgb(24 47 69 / 28%);
  height: 16px;
  width: 16px;
}

.parker-take-value-map__selected-label {
  background: #fff4e6;
  border: 1px solid #d87b19;
  border-radius: 0.35rem;
  bottom: calc(100% - 6px);
  color: #81450d;
  font-size: 0.68rem;
  font-weight: 900;
  left: 50%;
  max-width: 11rem;
  overflow: hidden;
  padding: 0.2rem 0.35rem;
  position: absolute;
  text-overflow: ellipsis;
  transform: translateX(-50%);
  white-space: nowrap;
}

.parker-take-value-map__tooltip {
  background: #172535;
  border-radius: 0.45rem;
  bottom: calc(100% + 0.35rem);
  box-shadow: 0 7px 18px rgb(23 37 53 / 22%);
  color: #fff;
  display: none;
  font-size: 0.72rem;
  gap: 0.12rem;
  left: 50%;
  min-width: 11rem;
  padding: 0.55rem 0.65rem;
  pointer-events: none;
  position: absolute;
  text-align: left;
  transform: translateX(-50%);
}

.parker-take-value-map__tooltip strong,
.parker-take-value-map__tooltip span {
  display: block;
}

.parker-take-value-map__point:hover .parker-take-value-map__tooltip,
.parker-take-value-map__point:focus .parker-take-value-map__tooltip {
  display: grid;
}

.parker-take-value-map__point.is-selected .parker-take-value-map__tooltip {
  bottom: calc(100% + 1.55rem);
}

.parker-take-value-map__point.is-right-edge .parker-take-value-map__tooltip,
.parker-take-value-map__point.is-right-edge .parker-take-value-map__selected-label {
  left: auto;
  right: 0;
  transform: none;
}

.parker-take-value-map__point.is-left-edge .parker-take-value-map__tooltip,
.parker-take-value-map__point.is-left-edge .parker-take-value-map__selected-label {
  left: 0;
  transform: none;
}

.parker-take-value-map__point.is-top-edge .parker-take-value-map__tooltip {
  bottom: auto;
  top: calc(100% + 0.35rem);
}

.parker-take-value-map__point.is-selected.is-top-edge .parker-take-value-map__tooltip {
  top: calc(100% + 1.55rem);
}

.parker-take-value-map__hint {
  color: #637083;
  font-size: 0.75rem;
  margin: 0;
}

.parker-take-value-map__dimensions {
  border-top: 1px solid #dfe5eb;
  display: grid;
  gap: 1.25rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-top: 1rem;
}

.parker-take-value-map__dimension-heading {
  align-items: baseline;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  margin-bottom: 0.7rem;
}

.parker-take-value-map__dimension-heading h3 {
  color: #34465b;
  font-size: 0.9rem;
  font-weight: 850;
  margin: 0;
}

.parker-take-value-map__dimension-heading strong {
  color: #1f5f8b;
  font-size: 0.82rem;
  white-space: nowrap;
}

.parker-take-value-map__bars {
  display: grid;
  gap: 0.65rem;
}

.parker-take-value-map__bar {
  display: grid;
  gap: 0.28rem;
}

.parker-take-value-map__bar-label {
  align-items: end;
  color: #536171;
  display: flex;
  font-size: 0.72rem;
  gap: 0.5rem;
  justify-content: space-between;
  line-height: 1.2;
}

.parker-take-value-map__bar-label span {
  max-width: 75%;
}

.parker-take-value-map__bar-label strong {
  color: #26384a;
  font-size: 0.7rem;
  white-space: nowrap;
}

.parker-take-value-map__bar-track {
  background: #e4e9ee;
  border-radius: 999px;
  height: 0.48rem;
  overflow: hidden;
}

.parker-take-value-map__bar-track > span {
  background: #2a6b95;
  border-radius: inherit;
  display: block;
  height: 100%;
}

.parker-take-value-map__bars--roi .parker-take-value-map__bar-track > span {
  background: #b36c22;
}

.parker-take-deep-dive-prompt {
  align-items: center;
  background: linear-gradient(135deg, #edf5f9, #fff8ef);
  border: 1px solid #cfdde6;
  border-left: 4px solid #245f86;
  border-radius: 0.9rem;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin: 0 auto 1rem;
  max-width: 54rem;
  padding: 1rem 1.15rem;
}

.parker-take-deep-dive-prompt h2 {
  color: #26384a;
  font-size: 1.1rem;
  margin: 0.1rem 0 0.25rem;
}

.parker-take-deep-dive-prompt p:not(.eyebrow) {
  color: #637083;
  font-size: 0.86rem;
  margin: 0;
  max-width: 39rem;
}

.parker-take-deep-dive-prompt .btn {
  flex: 0 0 auto;
}

.parker-take-niche-prompt {
  align-items: center;
  background: #f5f8f4;
  border: 1px solid #d7e2d4;
  border-left: 4px solid #4d7b48;
  border-radius: 0.9rem;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin: 0 0 1rem;
  max-width: none;
  padding: 1rem 1.15rem;
  width: 100%;
}

.parker-take-niche-prompt h2 {
  color: #26384a;
  font-size: 1.1rem;
  margin: 0.1rem 0 0.25rem;
}

.parker-take-niche-prompt p:not(.eyebrow) {
  color: #637083;
  font-size: 0.86rem;
  margin: 0;
}

.parker-take-niche-prompt .btn {
  flex: 0 0 auto;
}

.parker-take-research-modal .modal-dialog {
  max-width: min(74rem, calc(100vw - 2rem));
}

.parker-take-research-modal .modal-content {
  border: 0;
  border-radius: 1rem;
  box-shadow: 0 1.25rem 3rem rgb(18 38 56 / 24%);
  overflow: hidden;
}

.parker-take-research-modal .modal-header {
  align-items: flex-start;
  background: var(--pcs-surface);
  border-bottom-color: var(--pcs-line);
  gap: 1rem;
  padding: 1rem 1.25rem;
}

.parker-take-research-modal .modal-title {
  color: #26384a;
  font-size: 1.35rem;
  margin: 0.1rem 0;
}

.parker-take-research-modal .modal-header p:last-child {
  color: #637083;
  font-size: 0.8rem;
  margin: 0;
}

.parker-take-research-modal .btn-close {
  flex: 0 0 auto;
  min-height: 44px;
  min-width: 44px;
}

.parker-take-research-modal .modal-body {
  gap: 1rem;
  padding: 1rem;
}

.parker-take-research-modal .psv2-panel {
  box-shadow: none;
  margin: 0;
}

.parker-take-research-modal__nav {
  align-items: center;
  background: var(--pcs-surface);
  border: 1px solid var(--pcs-line);
  border-radius: 0.7rem;
  box-shadow: 0 0.35rem 1rem rgb(35 56 72 / 9%);
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  padding: 0.55rem;
  position: sticky;
  top: -1rem;
  z-index: 4;
}

.parker-take-research-modal__nav a {
  border-radius: 0.45rem;
  color: #245f86;
  font-size: 0.82rem;
  font-weight: 800;
  padding: 0.45rem 0.6rem;
  text-decoration: none;
}

.parker-take-research-modal__nav a:hover,
.parker-take-research-modal__nav a:focus-visible {
  background: #e7f0f5;
  outline: 2px solid #245f86;
  outline-offset: 1px;
}

#parker-take-deep-dive-story,
#parker-take-deep-dive-program,
#parker-take-deep-dive-score-details,
#profile-school-value-research-story,
#profile-school-value-research-program,
#profile-school-value-research-score-details {
  scroll-margin-top: 4.5rem;
}

.parker-take-research-modal .modal-footer {
  justify-content: space-between;
}

.parker-take-section {
  background: #fff;
  border: 1px solid #dfe5eb;
  border-radius: 0.9rem;
  display: grid;
  gap: 1rem;
  padding: 1.15rem;
}

.parker-take-section__heading h2 {
  font-size: 1.25rem;
  margin: 0.1rem 0 0.35rem;
}

.parker-take-section__heading p:not(.eyebrow) {
  color: #637083;
  margin: 0;
}

.parker-take-statuses {
  display: grid;
  gap: 0.55rem;
  margin: 0;
}

.parker-take-status {
  align-items: start;
  border: 1px solid #dfe5eb;
  border-radius: 0.65rem;
  cursor: pointer;
  display: flex;
  gap: 0.65rem;
  padding: 0.7rem 0.75rem;
}

.parker-take-status:has(input:checked) {
  background: #eaf3f8;
  border-color: #9cc4d8;
}

.parker-take-status.is-disabled {
  background: #f5f6f7;
  border-color: #e4e7ea;
  color: #8a949f;
  cursor: not-allowed;
}

.parker-take-status.is-disabled small {
  color: #929ba5;
}

.parker-take-status--not-fit:has(input:checked) {
  background: #fff1f1;
  border-color: #e3afb2;
}

.parker-take-status input,
.parker-take-confirmation input {
  accent-color: #1f5f8b;
  margin-top: 0.2rem;
}

.parker-take-status strong,
.parker-take-status small {
  display: block;
}

.parker-take-status small {
  color: #637083;
  margin-top: 0.15rem;
}

.parker-take-other-status {
  display: grid;
  gap: 0.35rem;
}

.parker-take-other-status label {
  color: #28465f;
  font-size: 0.9rem;
  font-weight: 800;
}

.parker-take-other-status small {
  color: #637083;
  font-size: 0.84rem;
}

.parker-take-confirmation {
  align-items: start;
  color: #536171;
  display: flex;
  font-size: 0.86rem;
  gap: 0.55rem;
}

.parker-take-confirmation--conditional {
  display: none;
}

.parker-take-statuses:has(#status-not-fit:checked) ~ .parker-take-confirmation--not-fit {
  display: flex;
}

.parker-take-status-help {
  background: #f7f9fb;
  border-radius: 0.6rem;
  color: #536171;
  font-size: 0.84rem;
  padding: 0.65rem 0.75rem;
}

.parker-take-status-help summary {
  color: #28465f;
  cursor: pointer;
  font-weight: 800;
}

.parker-take-status-help p {
  margin: 0.65rem 0 0;
}

.parker-take-status-help ul {
  display: grid;
  gap: 0.35rem;
  margin: 0.55rem 0 0;
  padding-left: 1.2rem;
}

.parker-take-ratings {
  display: grid;
  gap: 0.7rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.parker-take-rating {
  background: #f7f9fb;
  border-radius: 0.65rem;
  display: grid;
  gap: 0.45rem;
  padding: 0.75rem;
}

.parker-take-rating > span {
  color: #34465b;
  font-size: 0.9rem;
  font-weight: 750;
}

.parker-take-rating input[type="range"] {
  accent-color: #2a6b95;
  margin: 0.2rem 0;
  width: 100%;
}

.parker-take-rating__scale {
  color: #7b8795;
  display: flex;
  font-size: 0.7rem;
  justify-content: space-between;
}

.parker-take-rating output {
  color: #1f5f8b;
  font-size: 0.82rem;
  font-weight: 850;
}

.parker-take-actions {
  align-items: center;
  display: flex;
  gap: 1rem;
  padding: 0.25rem 0;
}

.parent-picks-intro {
  background: linear-gradient(135deg, #f5f0ff, #f9fbfd);
  border: 1px solid #ddd2f5;
  border-radius: 10px;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 1rem;
  padding: 1rem;
}

.parent-picks-intro div {
  display: grid;
  gap: 0.2rem;
}

.parent-picks-intro strong {
  color: #4d327f;
}

.parent-picks-intro span {
  color: #586678;
  font-size: 0.9rem;
}

.parent-picks-board {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.parent-pick-column {
  background: #f7f9fb;
  border: 1px solid #dfe3e8;
  border-radius: 10px;
  min-width: 0;
  padding: 0.85rem;
}

.parent-pick-column--current {
  border-color: #bda7e8;
  box-shadow: 0 8px 24px rgb(74 47 128 / 9%);
}

.parent-pick-column__header {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.parent-pick-column__header h2 {
  font-size: 1.25rem;
  font-weight: 850;
  margin: 0;
}

.parent-pick-column__header .eyebrow {
  margin-bottom: 0.1rem;
}

.parent-pick-count {
  align-items: center;
  background: #e9e0fa;
  border-radius: 999px;
  color: #55358f;
  display: inline-flex;
  font-weight: 850;
  height: 2rem;
  justify-content: center;
  min-width: 2rem;
  padding: 0 0.55rem;
}

.parent-pick-list {
  display: grid;
  gap: 0.65rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.parent-pick-list-empty {
  background: #fff;
  border: 1px dashed #cfd6df;
  border-radius: 8px;
  color: #637083;
  padding: 1rem;
}

.parent-pick-list-empty p {
  margin: 0;
}

.parent-pick-card {
  align-items: start;
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 9px;
  box-shadow: 0 5px 16px rgb(29 39 51 / 5%);
  display: grid;
  gap: 0.55rem;
  grid-template-columns: auto auto minmax(0, 1fr);
  padding: 0.75rem;
  transition: border-color 140ms ease, box-shadow 140ms ease, opacity 140ms ease;
}

.parent-pick-card[draggable="true"] {
  cursor: grab;
}

.parent-pick-card.is-dragging {
  border-color: #8d6bc6;
  box-shadow: 0 10px 28px rgb(74 47 128 / 18%);
  cursor: grabbing;
  opacity: 0.55;
}

.parent-pick-card__rank {
  align-items: center;
  background: #efe8ff;
  border-radius: 999px;
  color: #56358f;
  display: flex;
  font-size: 0.82rem;
  font-weight: 900;
  height: 1.7rem;
  justify-content: center;
  width: 1.7rem;
}

.parent-pick-drag-handle {
  background: transparent;
  border: 0;
  color: #79679c;
  cursor: grab;
  font-size: 1rem;
  letter-spacing: -0.18rem;
  line-height: 1.7rem;
  padding: 0 0.25rem 0 0;
}

.parent-pick-card__body {
  display: grid;
  gap: 0.65rem;
  min-width: 0;
}

.parent-pick-school {
  align-items: center;
  display: flex;
  gap: 0.65rem;
  min-width: 0;
}

.parent-pick-school h3 {
  font-size: 1rem;
  font-weight: 850;
  margin: 0;
}

.parent-pick-school p {
  color: #637083;
  font-size: 0.82rem;
  margin: 0.1rem 0 0;
}

.parent-pick-badges,
.parent-pick-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.parent-pick-facts {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(auto-fit, minmax(7rem, 1fr));
  margin: 0;
}

.parent-pick-facts div {
  min-width: 0;
}

.parent-pick-facts dt {
  color: #637083;
  font-size: 0.68rem;
  font-weight: 750;
  text-transform: uppercase;
}

.parent-pick-facts dd {
  font-size: 0.82rem;
  font-weight: 800;
  margin: 0;
}

.parent-pick-reason {
  background: #f7f3ff;
  border-left: 3px solid #a789d3;
  color: #4b4556;
  font-size: 0.84rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
}

.parent-pick-actions {
  border-top: 1px solid #edf0f3;
  padding-top: 0.55rem;
}

.parent-pick-actions form,
.parent-picks-passed form,
.card-actions form,
.compact-actions form,
.button-row form {
  margin: 0;
}

.parent-pick-actions a,
.parent-pick-link,
.parent-pick-action-button,
.parent-pick-remove-button {
  font-size: 0.82rem;
  font-weight: 800;
}

.parent-pick-link,
.parent-pick-action-button,
.parent-pick-remove-button {
  background: transparent;
  border: 0;
  padding: 0;
}

.parent-pick-link,
.parent-pick-action-button {
  color: #5c3a9e;
}

.parent-pick-link:hover,
.parent-pick-action-button:hover:not(:disabled) {
  color: #3f246f;
  text-decoration: underline;
}

.parent-pick-action-button {
  border: 1px solid #cfc2e7;
  border-radius: 5px;
  height: 1.65rem;
  line-height: 1;
  width: 1.8rem;
}

.parent-pick-action-button:disabled {
  color: #abb2bd;
  cursor: not-allowed;
}

.parent-pick-remove-button {
  color: #8f3843;
  margin-left: 0.25rem;
}

.btn-outline-parent-pick {
  border-color: #8d6bc6;
  color: #5c3a9e;
}

.btn-outline-parent-pick:hover,
.btn-parent-picked {
  background: #68449f;
  border-color: #68449f;
  color: #fff;
}

.parent-picks-passed {
  border-top: 1px solid #dfe3e8;
  margin-top: 0.85rem;
  padding-top: 0.7rem;
}

.parent-picks-passed summary {
  color: #6c7480;
  cursor: pointer;
  font-size: 0.84rem;
  font-weight: 800;
}

.parent-picks-passed__list {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.55rem;
}

.parent-picks-passed article {
  align-items: center;
  background: #fff;
  border: 1px solid #e2e5e9;
  border-radius: 7px;
  display: flex;
  gap: 0.6rem;
  justify-content: space-between;
  padding: 0.6rem;
}

.parent-picks-passed article div {
  display: grid;
  min-width: 0;
}

.parent-picks-passed article span {
  color: #7b8490;
  font-size: 0.76rem;
}

.student-perspective {
  background: linear-gradient(145deg, #f8fbff, #fbf9ff);
  border: 1px solid #d8deea;
  border-radius: 10px;
  box-shadow: 0 7px 20px rgb(29 39 51 / 5%);
  margin: 1.25rem 0;
  padding: 1rem;
  scroll-margin-top: 5.5rem;
}

.niche-perspective-task {
  background: linear-gradient(145deg, #fffaf1, #fbf8ff);
  border: 1px solid #e3d6bc;
  border-radius: 10px;
  box-shadow: 0 7px 20px rgb(52 40 20 / 6%);
  margin: 1.25rem 0;
  padding: 1rem;
  scroll-margin-top: 5.5rem;
}

.niche-perspective-task__header {
  align-items: flex-start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.niche-perspective-task__header .eyebrow {
  margin-bottom: 0.12rem;
}

.niche-perspective-task > p {
  color: #4f5968;
  margin: 0.45rem 0 0.85rem;
}

.niche-perspective-task__match {
  background: rgb(255 255 255 / 78%);
  border: 1px solid #e4dccf;
  border-radius: 8px;
  display: grid;
  gap: 0.05rem;
  margin-bottom: 0.85rem;
  padding: 0.7rem 0.8rem;
}

.niche-perspective-task__match span {
  color: #7a6541;
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.niche-perspective-task__match strong {
  color: #27313d;
  font-size: 0.95rem;
}

.niche-perspective-task__match small {
  color: #687485;
  font-size: 0.76rem;
}

.niche-perspective-task__form {
  display: grid;
  gap: 0.75rem;
}

.niche-perspective-task__confirmation {
  margin-left: 0.1rem;
}

.niche-perspective-task__confirmation .text-danger {
  display: block;
  margin-top: 0.2rem;
}

.niche-perspective-task__actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem 1rem;
}

.niche-perspective-task__actions a {
  font-size: 0.8rem;
  font-weight: 800;
}

.perspective-status-message {
  background: #edf8f1;
  border: 1px solid #b9dfc6;
  border-radius: 8px;
  color: #255d38;
  font-size: 0.84rem;
  font-weight: 750;
  margin: 1rem 0;
  padding: 0.7rem 0.8rem;
}

.school-logo-repair {
  background: #f8fafb;
  border: 1px solid #d7e0e6;
  border-radius: 8px;
  margin-bottom: 1rem;
  padding: 0.85rem 1rem;
}

.school-logo-repair > summary {
  cursor: pointer;
  font-weight: 800;
}

.school-logo-repair__body {
  display: grid;
  gap: 1rem;
  margin-top: 1rem;
  max-width: 760px;
}

.school-logo-repair__body h2 {
  font-size: 1.2rem;
  font-weight: 800;
}

.school-logo-repair__current {
  display: grid;
  gap: 0.4rem;
  margin: 0.8rem 0 0;
}

.school-logo-repair__current div {
  display: grid;
  gap: 0.15rem;
}

.school-logo-repair__current dt {
  color: #637083;
  font-size: 0.75rem;
  text-transform: uppercase;
}

.school-logo-repair__current dd {
  margin: 0;
}

.school-logo-repair__form {
  display: grid;
  gap: 0.85rem;
}

.school-logo-repair__preview {
  align-items: center;
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  display: grid;
  gap: 0.5rem;
  justify-items: start;
  padding: 0.75rem;
}

.school-logo-repair__preview[hidden] {
  display: none;
}

.school-logo-repair__preview img {
  max-height: 160px;
  max-width: min(100%, 320px);
  object-fit: contain;
}

.school-logo-repair__preview small {
  color: #9b2c2c;
}

.btn-outline-perspective {
  background: #f6f2ff;
  border: 1px solid #cbbce8;
  color: #563c8c;
  font-weight: 800;
}

.btn-outline-perspective:hover,
.btn-outline-perspective:focus-visible {
  background: #eee6ff;
  border-color: #a68bd7;
  color: #422b73;
}

.student-perspective__header {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.student-perspective__header .eyebrow {
  margin-bottom: 0.12rem;
}

.student-perspective__manage {
  font-size: 0.82rem;
  font-weight: 800;
}

.student-perspective__intro {
  color: #455466;
  margin: 0.4rem 0 0.85rem;
}

.perspective-resource-list {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.perspective-resource {
  align-items: start;
  background: #fff;
  border: 1px solid #dce2ea;
  border-radius: 8px;
  color: #1d2733;
  display: grid;
  gap: 0.65rem;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-width: 0;
  min-height: 44px;
  padding: 0.8rem;
  text-decoration: none;
  transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}

.perspective-resource:hover {
  border-color: #8eabd0;
  box-shadow: 0 6px 16px rgb(31 95 139 / 10%);
  color: #1d2733;
  transform: translateY(-1px);
}

.perspective-resource__icon {
  align-items: center;
  background: #e8f0f8;
  border-radius: 999px;
  color: #285f87;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 0.72rem;
  font-weight: 900;
  height: 2rem;
  justify-content: center;
  width: 2rem;
}

.perspective-resource__copy {
  display: grid;
  gap: 0.18rem;
  min-width: 0;
}

.perspective-resource__lens {
  background: #eee8fb;
  border: 1px solid #ddd1f4;
  border-radius: 999px;
  color: #5a3f8f !important;
  font-size: 0.65rem !important;
  font-weight: 850;
  justify-self: start;
  letter-spacing: 0.025em;
  line-height: 1.2 !important;
  padding: 0.2rem 0.45rem;
  text-transform: uppercase;
}

.perspective-resource__copy strong {
  font-size: 0.9rem;
  line-height: 1.2;
}

.perspective-resource__description {
  color: #566477;
  font-size: 0.78rem;
  line-height: 1.3;
}

.perspective-resource__guidance {
  border-left: 2px solid #d9ccef;
  color: #4e5b6c;
  display: grid;
  font-size: 0.72rem;
  gap: 0.12rem;
  line-height: 1.3;
  margin: 0.18rem 0;
  padding-left: 0.48rem;
}

.perspective-resource__guidance b {
  color: #354356;
}

.perspective-resource__copy small {
  color: #748092;
  font-size: 0.7rem;
  font-weight: 700;
}

.perspective-resource__external {
  color: #527ca0;
  font-size: 1rem;
  font-weight: 800;
}

.student-perspective__disclaimer {
  color: #697587;
  font-size: 0.74rem;
  margin: 0;
}

.student-perspective__footer {
  align-items: center;
  border-top: 1px solid #e1e6ed;
  display: flex;
  gap: 0.75rem 1.25rem;
  justify-content: space-between;
  margin-top: 0.8rem;
  padding-top: 0.65rem;
}

.student-perspective__discuss {
  flex: 0 0 auto;
  font-size: 0.76rem;
  font-weight: 800;
}

.perspective-resource-more {
  margin-top: 0.65rem;
}

.perspective-resource-more summary {
  color: #1f5f8b;
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 800;
  margin-bottom: 0.6rem;
}

.perspective-editor__note {
  margin-top: 1rem;
}

.perspective-editor {
  scroll-margin-top: 5.5rem;
}

.perspective-resource-editor-list {
  display: grid;
  gap: 0.85rem;
  margin-bottom: 0.85rem;
}

.perspective-resource-editor {
  background: #f8fafc;
  border: 1px solid #d8dee8;
  border-radius: 8px;
  padding: 0.85rem;
}

.perspective-resource-editor__heading {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.perspective-resource-editor__status {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: flex-end;
}

#discussion,
#discussion-comment {
  scroll-margin-top: 5.5rem;
}

.perspective-resource-empty {
  background: #f8fafc;
  border: 1px dashed #cfd7e2;
  border-radius: 8px;
  color: #637083;
  margin: 0 0 0.85rem;
  padding: 0.8rem;
}

.badge-stack {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.metric-row,
.detail-panel dl,
.rating-summary {
  display: grid;
  gap: 0.75rem;
  margin: 0;
}

.metric-row {
  grid-template-columns: repeat(3, 1fr);
}

.rating-summary {
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}

.metric-row--compact {
  gap: 0.5rem;
  grid-template-columns: repeat(auto-fit, minmax(88px, 1fr));
}

dt {
  color: #637083;
  font-size: 0.78rem;
  font-weight: 700;
}

.help-tooltip {
  align-items: center;
  background: #eef2f6;
  border: 1px solid #cdd5df;
  border-radius: 50%;
  color: #455466;
  cursor: help;
  display: inline-flex;
  font-size: 0.68rem;
  font-weight: 800;
  height: 1.05rem;
  justify-content: center;
  line-height: 1;
  margin-left: 0.25rem;
  position: relative;
  vertical-align: text-top;
  width: 1.05rem;
}

.help-tooltip:focus {
  outline: 2px solid #2f74a6;
  outline-offset: 2px;
}

.help-tooltip::after {
  background: #1f2937;
  border-radius: 6px;
  bottom: calc(100% + 0.55rem);
  box-shadow: 0 8px 24px rgb(29 39 51 / 18%);
  color: #fff;
  content: attr(aria-label);
  font-size: 0.78rem;
  font-weight: 600;
  left: 50%;
  line-height: 1.35;
  max-width: min(280px, calc(100vw - 2rem));
  opacity: 0;
  padding: 0.55rem 0.65rem;
  pointer-events: none;
  position: absolute;
  text-transform: none;
  transform: translateX(-50%) translateY(0.2rem);
  transition: opacity 120ms ease, transform 120ms ease;
  visibility: hidden;
  white-space: normal;
  width: max-content;
  z-index: 20;
}

.help-tooltip:hover::after,
.help-tooltip:focus::after {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
  visibility: visible;
}

dd {
  margin: 0;
}

.muted-inline {
  color: #637083;
  font-size: 0.85rem;
  margin-left: 0.35rem;
}

.roster-source {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.coach-contact {
  border-top: 1px solid #e7ebf0;
  display: grid;
  gap: 0.6rem;
  padding-top: 0.75rem;
}

.coach-contact h3 {
  font-size: 1rem;
  font-weight: 750;
  margin: 0;
}

.coach-contact p {
  color: #455466;
  margin: 0;
}

.volleyball-more-details {
  background: #f8fafb;
  border: 1px solid #dfe6ec;
  border-radius: 8px;
  padding: 0.8rem 0.9rem;
}

.decision-disclosure > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 0.5rem;
  list-style: none;
  min-height: 2.5rem;
}

.decision-disclosure > summary::-webkit-details-marker {
  display: none;
}

.decision-disclosure > summary::after {
  color: currentColor;
  content: "›";
  flex: 0 0 auto;
  font-size: 1.25rem;
  line-height: 1;
  margin-left: .15rem;
  transition: transform 150ms ease;
}

.decision-disclosure[open] > summary::after {
  transform: rotate(90deg);
}

.decision-disclosure > summary:focus-visible {
  border-radius: .35rem;
  outline: 3px solid rgb(36 95 134 / 35%);
  outline-offset: .2rem;
}

.decision-disclosure--quiet > summary {
  min-height: 2.1rem;
}

@media (min-width: 721px) {
  .mobile-filter-panel.decision-disclosure > summary {
    display: none;
  }

  /* A panel closed during a mobile visit must become available again on resize. */
  .mobile-filter-panel.decision-disclosure:not([open]) > .filter-grid {
    display: grid;
  }

  .mobile-filter-panel.decision-disclosure:not([open]) > .search-actions {
    display: flex;
  }
}

.volleyball-more-details > summary {
  color: #28465f;
  cursor: pointer;
  font-weight: 750;
}

.volleyball-more-details[open] > summary {
  margin-bottom: 0.9rem;
}

.roster-breakdown {
  border-top: 1px solid #e7ebf0;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-top: 0.75rem;
}

.roster-breakdown h3 {
  font-size: 0.95rem;
  font-weight: 750;
  margin: 0 0 0.5rem;
}

.card-note {
  color: #455466;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.card-actions,
.button-row,
.form-actions,
.link-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.editor-form {
  display: grid;
  gap: 1rem;
}

.form-section {
  padding: 1rem;
}

.form-section h2 {
  margin-bottom: 1rem;
}

.section-note {
  color: #637083;
  margin: -0.5rem 0 1rem;
}

.form-subheading {
  border-top: 1px solid #e7ebf0;
  color: #37465a;
  font-size: 0.96rem;
  font-weight: 800;
  margin: 1rem 0 0.75rem;
  padding-top: 0.85rem;
}

.section-note + .form-subheading {
  border-top: 0;
  margin-top: 0;
  padding-top: 0;
}

.edit-disclosure {
  display: block;
}

.edit-disclosure summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  list-style: none;
  position: relative;
}

.edit-disclosure summary::-webkit-details-marker {
  display: none;
}

.edit-disclosure summary::after {
  color: #637083;
  content: "+";
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1;
}

.edit-disclosure[open] summary {
  border-bottom: 1px solid #e7ebf0;
  margin-bottom: 1rem;
  padding-bottom: 0.75rem;
}

.edit-disclosure[open] summary::after {
  content: "-";
}

.edit-disclosure summary span {
  font-size: 1.1rem;
  font-weight: 750;
}

.edit-disclosure summary small {
  color: #637083;
  font-size: 0.82rem;
  font-weight: 500;
  text-align: right;
}

.form-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.rating-field {
  display: grid;
  gap: 0.35rem;
}

.rating-field label {
  font-weight: 650;
}

.rating-scale {
  color: #637083;
  display: flex;
  font-size: 0.78rem;
  justify-content: space-between;
}

.rating-ticks {
  color: #637083;
  display: grid;
  font-size: 0.72rem;
  grid-template-columns: repeat(11, minmax(0, 1fr));
  line-height: 1;
  text-align: center;
}

.rating-bubbles {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.rating-bubble {
  align-items: center;
  background: #eef2f6;
  border: 1px solid #d7dde5;
  border-radius: 999px;
  color: #455466;
  display: inline-flex;
  gap: 0.4rem;
  padding: 0.35rem 0.65rem;
}

.rating-bubble--positive {
  background: #dff3e7;
  border-color: #b6dfc5;
  color: #17643a;
}

.rating-bubble--negative {
  background: #fff0f0;
  border-color: #f3c6c6;
  color: #9a2d2d;
}

.rating-bubble--neutral {
  background: #f6f7f9;
}

.evaluation-panel {
  display: grid;
  gap: 0.75rem;
}

.academic-snapshot {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.snapshot-card {
  background: #f8fafb;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  display: grid;
  gap: 0.25rem;
  min-height: 116px;
  padding: 0.85rem;
}

.snapshot-card--primary {
  background: #f1f7f4;
  border-color: #c7e0d0;
}

.snapshot-card dd {
  font-size: 1.45rem;
  font-weight: 800;
  line-height: 1.1;
}

.snapshot-card p {
  color: #637083;
  font-size: 0.84rem;
  margin: 0;
}

.planning-source-pill {
  border-radius: 999px;
  display: inline-flex;
  font-size: 0.72rem;
  font-weight: 800;
  justify-self: start;
  padding: 0.25rem 0.5rem;
  width: fit-content;
}

.planning-source-pill--family {
  background: #dff3e7;
  color: #17643a;
}

.planning-source-pill--baseline {
  background: #eef2f6;
  color: #455466;
}

.planning-source-pill--adjusted {
  background: #dfeffd;
  color: #1f5f8b;
}

.checkbox-field {
  align-content: start;
  display: grid;
  gap: 0.12rem;
}

.checkbox-field label {
  align-items: center;
  display: inline-flex;
  gap: 0.45rem;
  font-weight: 700;
  width: fit-content;
}

.checkbox-field small {
  display: block;
}

.form-field small {
  color: #637083;
  font-size: 0.82rem;
}

.academic-bars {
  border-top: 1px solid #e7ebf0;
  display: grid;
  gap: 0.85rem;
  margin-bottom: 1rem;
  padding-top: 0.75rem;
}

.cost-breakdown {
  border-top: 1px solid #e7ebf0;
  display: grid;
  gap: 0.75rem;
  padding-top: 0.75rem;
}

.cost-breakdown h2 {
  margin: 0;
}

.cost-breakdown p {
  color: #455466;
  margin: 0;
  white-space: pre-wrap;
}

.value-assessment {
  border: 1px solid #dfe3e8;
  border-left-width: 5px;
  border-radius: 8px;
  display: grid;
  gap: 0.85rem;
  padding: 1rem;
}

.value-assessment--strong {
  background: #f1f7f4;
  border-color: #2e7d59;
}

.value-assessment--proof {
  background: #eef6fb;
  border-color: #2f74a6;
}

.value-assessment--viable {
  background: #fbfaf1;
  border-color: #b58b19;
}

.value-assessment--stretch {
  background: #fff7ed;
  border-color: #c56a1a;
}

.value-assessment--hold {
  background: #fff4f4;
  border-color: #b23a3a;
}

.value-assessment--unknown {
  background: #f8fafb;
  border-color: #9aa5b1;
}

.value-assessment__header {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.value-assessment__header .eyebrow {
  margin-bottom: 0.1rem;
}

.value-assessment__header h2,
.value-summary,
.planning-note {
  margin: 0;
}

.decision-bucket {
  border-radius: 999px;
  display: inline-flex;
  font-size: 0.82rem;
  font-weight: 800;
  padding: 0.4rem 0.7rem;
  white-space: nowrap;
}

.decision-bucket--strong {
  background: #dff3e7;
  color: #17643a;
}

.decision-bucket--proof {
  background: #dfeffd;
  color: #1f5f8b;
}

.decision-bucket--viable {
  background: #fff3d8;
  color: #7a4b00;
}

.decision-bucket--stretch {
  background: #ffe8d5;
  color: #8a3d00;
}

.decision-bucket--hold {
  background: #ffe0e0;
  color: #9a2d2d;
}

.decision-bucket--unknown {
  background: #eef2f6;
  color: #455466;
}

.value-summary {
  color: #1f2937;
  font-weight: 650;
}

.value-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pillar-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.value-grid article {
  background: rgb(255 255 255 / 72%);
  border: 1px solid rgb(215 221 229 / 80%);
  border-radius: 8px;
  display: grid;
  gap: 0.25rem;
  min-height: 106px;
  padding: 0.8rem;
}

.stretch-scenario {
  align-items: center;
  background: rgb(255 255 255 / 72%);
  border: 1px dashed #d79b5f;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 0.8rem;
}

.stretch-scenario dt {
  color: #637083;
  font-size: 0.82rem;
  font-weight: 800;
}

.stretch-scenario dd {
  color: #1d2733;
  font-size: 1.15rem;
  font-weight: 850;
  margin: 0;
}

.stretch-scenario dd span {
  color: #637083;
  display: block;
  font-size: 0.86rem;
  font-weight: 650;
  margin-top: 0.15rem;
}

.pillar-card {
  background: rgb(255 255 255 / 74%);
  border: 1px solid rgb(215 221 229 / 80%);
  border-left-width: 4px;
  border-radius: 8px;
  display: grid;
  gap: 0.3rem;
  min-height: 122px;
  padding: 0.8rem;
}

.pillar-card--strong {
  border-left-color: #2e7d59;
}

.pillar-card--solid {
  border-left-color: #4e7f9f;
}

.pillar-card--proof {
  border-left-color: #2f74a6;
}

.pillar-card--mixed {
  border-left-color: #b58b19;
}

.pillar-card--stretch {
  border-left-color: #c56a1a;
}

.pillar-card--hold {
  border-left-color: #b23a3a;
}

.pillar-card--unknown {
  border-left-color: #9aa5b1;
}

.value-grid dd {
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1.1;
}

.pillar-card dd {
  font-size: 1.15rem;
  font-weight: 850;
  line-height: 1.1;
}

.value-grid p,
.pillar-card p,
.planning-note {
  color: #637083;
  font-size: 0.84rem;
}

.value-grid p,
.pillar-card p {
  margin: 0;
}

.value-score-row {
  border-top: 1px solid rgb(215 221 229 / 80%);
  padding-top: 0.75rem;
}

.value-score-row dd {
  font-weight: 800;
}

.culture-panel {
  background: #f8fafb;
  border: 1px solid #dfe3e8;
  border-left: 5px solid #9aa5b1;
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  padding: 1rem;
}

.culture-panel--comfortable {
  background: #f1f7f4;
  border-left-color: #2e7d59;
}

.culture-panel--checking {
  background: #fbfaf1;
  border-left-color: #b58b19;
}

.culture-panel--concern {
  background: #fff4f4;
  border-left-color: #b23a3a;
}

.culture-panel__header {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.culture-panel__header .eyebrow,
.culture-panel__header h2,
.culture-panel p {
  margin: 0;
}

.culture-signal-row {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.culture-signal {
  background: rgb(255 255 255 / 72%);
  border: 1px solid rgb(215 221 229 / 80%);
  border-radius: 8px;
  color: #455466;
  display: grid;
  gap: 0.2rem;
  padding: 0.7rem;
}

.culture-signal strong {
  color: #637083;
  font-size: 0.78rem;
}

.culture-signal small {
  color: #637083;
  font-size: 0.76rem;
}

.culture-facts {
  border-top: 1px solid rgb(215 221 229 / 80%);
  padding-top: 0.75rem;
}

.culture-links {
  border-top: 1px solid rgb(215 221 229 / 80%);
  padding-top: 0.75rem;
}

.culture-provenance {
  color: #637083;
  font-size: 0.84rem;
}

.culture-provenance span {
  margin-left: 0.35rem;
}

.culture-notes {
  color: #455466;
  white-space: pre-wrap;
}

.decision-flags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.decision-flag {
  border-radius: 999px;
  display: inline-flex;
  font-size: 0.8rem;
  font-weight: 700;
  padding: 0.35rem 0.65rem;
}

.decision-flag--hard {
  background: #ffe0e0;
  color: #9a2d2d;
}

.decision-flag--warning {
  background: #ffe8d5;
  color: #8a3d00;
}

.decision-flag--watch {
  background: #fff3d8;
  color: #7a4b00;
}

.decision-flag--info {
  background: #e7f0f7;
  color: #1f5f8b;
}

.next-question {
  background: rgb(255 255 255 / 72%);
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem;
}

.next-question dd {
  color: #1f2937;
  font-weight: 650;
}

.bar-metric {
  display: grid;
  gap: 0.35rem;
}

.bar-metric > div {
  align-items: baseline;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.bar-metric dd {
  font-weight: 800;
}

.bar-track {
  background: #e7ebf0;
  border-radius: 999px;
  display: block;
  height: 10px;
  overflow: hidden;
}

.bar-track span {
  background: #2e7d59;
  border-radius: inherit;
  display: block;
  height: 100%;
}

.credential-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.comment-thread {
  border-top: 1px solid #e7ebf0;
  display: grid;
  gap: 0.75rem;
  padding-top: 0.75rem;
}

.empty-comment {
  color: #637083;
  margin: 0;
}

.comment-item {
  background: #f8fafb;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  display: grid;
  gap: 0.35rem;
  padding: 0.75rem;
}

.comment-item header {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: space-between;
}

.comment-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.comment-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.comment-author {
  background: #e7f0f7;
  border-radius: 999px;
  color: #1f5f8b;
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 800;
  padding: 0.25rem 0.55rem;
}

.comment-item time {
  color: #637083;
  font-size: 0.8rem;
}

.comment-item p {
  margin: 0;
  white-space: pre-wrap;
}

.comment-form {
  border-bottom: 1px solid #e7ebf0;
  display: grid;
  gap: 0.75rem;
  padding-bottom: 1rem;
}

.comment-delete-form {
  margin: 0;
}

.readonly-field {
  background: #eef2f6;
  border: 1px solid #d7dde5;
  border-radius: 6px;
  color: #455466;
  padding: 0.375rem 0.75rem;
}

.inline-action-field {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.detail-bottom-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  padding-top: 0.25rem;
}

.profile-section-nav {
  background: #1f4f6d;
  border: 1px solid #183e56;
  border-radius: 10px;
  box-shadow: 0 6px 18px rgba(24, 62, 86, 0.2);
  display: flex;
  gap: 0.35rem;
  margin: 0.9rem 0;
  overflow-x: auto;
  padding: 0.4rem;
  position: sticky;
  scrollbar-width: thin;
  top: 4.75rem;
  z-index: 1010;
}

.profile-section-nav a {
  border: 1px solid transparent;
  border-radius: 7px;
  color: #f7fbfe;
  flex: 0 0 auto;
  font-size: 0.88rem;
  font-weight: 750;
  padding: 0.5rem 0.65rem;
  text-decoration: none;
  white-space: nowrap;
}

.profile-section-nav a:hover {
  background: #dcecf5;
  color: #173d59;
}

.profile-section-nav a:focus-visible {
  background: #dcecf5;
  color: #173d59;
  outline: 3px solid #fff;
  outline-offset: 1px;
}

.detail-main h2[id],
.detail-main section[id] {
  scroll-margin-top: 9.5rem;
}

.span-2 {
  grid-column: span 2;
}

.detail-layout {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) 320px;
}

@media (max-width: 900px) {
  .detail-layout { grid-template-columns: minmax(0, 1fr); }
}

.detail-main,
.detail-panel {
  padding: 1rem;
}

.detail-main {
  display: grid;
  gap: 0.75rem;
}

.detail-panel dl {
  gap: 1rem;
}

.location-map {
  border-bottom: 1px solid #e7ebf0;
  display: grid;
  gap: 0.7rem;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}

.location-map h2 {
  font-size: 1rem;
  font-weight: 800;
  margin: 0;
}

.school-location-map {
  aspect-ratio: 1.2;
  background: #eef2f6;
  border: 1px solid #d7dde5;
  border-radius: 8px;
  min-height: 230px;
  overflow: hidden;
}

.school-location-map .leaflet-control-attribution {
  font-size: 0.62rem;
}

.school-location-map .leaflet-popup-content {
  font-family: inherit;
  margin: 0.55rem 0.7rem;
}

.locator-summary {
  align-items: center;
  display: flex;
  gap: 0.6rem;
  justify-content: space-between;
}

.locator-summary div {
  display: grid;
  gap: 0.1rem;
}

.locator-summary strong {
  font-size: 1.25rem;
}

.locator-summary div span {
  color: #637083;
  font-size: 0.82rem;
}

.delete-form {
  margin-top: 1rem;
}

.delete-confirmation-token {
  background: #fff1f2;
  border: 1px solid #fecdd3;
  border-radius: 6px;
  color: #9f1239;
  display: inline-block;
  margin: 0.35rem 0 0.6rem;
  padding: 0.35rem 0.5rem;
}

.scorecard-search-panel {
  margin-bottom: 1.25rem;
}

.scorecard-results {
  display: grid;
  gap: 0.85rem;
}

.scorecard-result {
  align-items: center;
  border: 1px solid #d8dee8;
  border-radius: 8px;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 320px);
  padding: 1rem;
}

.scorecard-result h3 {
  font-size: 1.1rem;
  margin: 0 0 0.25rem;
}

.scorecard-result p {
  color: #637083;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 0.8rem;
  margin: 0.15rem 0;
}

.scorecard-result__actions {
  display: grid;
  gap: 0.5rem;
}

@media (max-width: 767.98px) {
  .detail-layout {
    display: block;
  }

  .button-row {
    margin-top: 1rem;
  }
}

@media (max-width: 720px) {

  .value-assessment__header {
    align-items: flex-start;
    flex-direction: column;
  }

  .form-grid,
  .metric-row,
  .roster-breakdown,
  .academic-snapshot,
  .value-grid,
  .stretch-scenario,
  .pillar-grid,
  .culture-signal-row,
  .coach-sheet-shell,
  .filter-grid,
  .saved-search-bar,
  .save-search-panel,
  .result-summary-panel,
  .recruiting-hero,
  .recruiting-section,
  .recruiting-section--video,
  .scorecard-result,
  .private-detail-grid {
    grid-template-columns: 1fr;
  }

  .parent-picks-board,
  .parent-picks-intro {
    grid-template-columns: 1fr;
  }

  .parent-pick-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .parker-take-ratings {
    grid-template-columns: 1fr;
  }

  .parker-take-heading__actions {
    align-items: stretch;
    display: grid;
    justify-content: stretch;
    width: 100%;
  }

  .parker-take-heading__actions .btn {
    min-height: 44px;
  }

  .parker-take-heading__desktop-links {
    display: none;
  }

  .parker-take-heading__more-links {
    background: #f7f9fb;
    border: 1px solid #d7e0e7;
    border-radius: 0.55rem;
    display: block;
  }

  .parker-take-heading__more-links summary {
    color: #245f86;
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 800;
    min-height: 44px;
    padding: 0.7rem 0.8rem;
  }

  .parker-take-heading__more-links > div {
    border-top: 1px solid #d7e0e7;
    display: grid;
  }

  .parker-take-heading__more-links a {
    color: #245f86;
    font-weight: 700;
    min-height: 44px;
    padding: 0.7rem 0.8rem;
  }

  .parker-take-heading__more-links a + a {
    border-top: 1px solid #e2e8ed;
  }

  .parker-take-evidence__facts,
  .parker-take-evidence__research {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .parker-take-season-performance__scoreboard {
    grid-template-columns: 1fr;
  }

  .parker-take-season-performance__metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .parker-take-value-map__heading {
    align-items: start;
    display: grid;
  }

  .parker-take-value-map__heading > p {
    text-align: left;
  }

  .parker-take-value-map__plot {
    height: 250px;
    margin-right: 0.25rem;
  }

  .parker-take-value-map__legend {
    gap: 0.45rem 0.75rem;
  }

  .parker-take-value-map__dimensions {
    grid-template-columns: 1fr;
  }

  .parker-take-deep-dive-prompt {
    align-items: stretch;
    display: grid;
  }

  .parker-take-niche-prompt {
    align-items: stretch;
    display: grid;
  }

  .parker-take-deep-dive-prompt .btn {
    min-height: 44px;
    width: 100%;
  }

  .parker-take-niche-prompt .btn {
    min-height: 44px;
    width: 100%;
  }

  .parker-take-research-modal .modal-content {
    border-radius: 0;
  }

  .parker-take-research-modal .modal-dialog {
    max-width: none;
  }

  .parker-take-research-modal .modal-header {
    padding: 0.8rem 0.75rem;
  }

  .parker-take-research-modal .modal-title {
    font-size: 1.15rem;
  }

  .parker-take-research-modal .modal-body {
    padding: 0.75rem;
  }

  .parker-take-research-modal__nav {
    flex-wrap: nowrap;
    margin: 0 -0.75rem;
    overflow-x: auto;
    padding: 0.55rem 0.75rem;
    top: -0.75rem;
  }

  .parker-take-research-modal__nav a {
    flex: 0 0 auto;
    min-height: 44px;
  }

  .parker-take-research-modal .psv2-panel {
    padding: 0.9rem;
  }

  .parker-take-research-modal .modal-footer {
    display: grid;
    gap: 0.45rem;
    grid-template-columns: 1fr;
    padding: 0.65rem 0.75rem;
  }

  .parker-take-research-modal .modal-footer .btn {
    margin: 0;
    min-height: 44px;
    width: 100%;
  }

  .perspective-resource-list {
    grid-template-columns: 1fr;
  }

  .student-perspective__header,
  .student-perspective__footer,
  .niche-perspective-task__header {
    align-items: flex-start;
    flex-direction: column;
  }

  .niche-perspective-task__actions {
    align-items: stretch;
    display: grid;
  }

  .niche-perspective-task__actions .btn {
    min-height: 44px;
    width: 100%;
  }

  .perspective-resource {
    padding: 0.9rem 0.8rem;
  }

  .student-perspective__discuss {
    flex-basis: auto;
  }

  .perspective-resource-editor__heading {
    align-items: flex-start;
    gap: 0.6rem;
  }

  .result-summary-panel {
    align-items: flex-start;
    flex-direction: column;
  }

  .mobile-results-overview {
    align-items: center;
    background: #f3f8fb;
    border: 1px solid #cbdde8;
    border-radius: 8px;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    margin-bottom: 0.75rem;
    padding: 0.75rem 0.85rem;
  }

  .mobile-results-overview p {
    margin-bottom: 0.1rem;
  }

  .mobile-results-overview strong {
    color: #1d2733;
    font-size: 1rem;
  }

  .active-filter-chips {
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: flex-end;
  }

  .active-filter-chips span {
    background: #fff;
    border: 1px solid #b8d0df;
    border-radius: 999px;
    color: #28465f;
    font-size: 0.72rem;
    font-weight: 750;
    padding: 0.25rem 0.45rem;
  }

  .mobile-filter-panel {
    border-top: 1px solid #e1e7ed;
    margin-top: 0.85rem;
    padding-top: 0.85rem;
  }

  .mobile-filter-panel > summary {
    align-items: center;
    color: #28465f;
    cursor: pointer;
    display: flex;
    font-weight: 800;
    justify-content: space-between;
  }

  .mobile-filter-panel > summary span {
    color: #637083;
    font-size: 0.8rem;
    font-weight: 700;
  }

  .mobile-filter-panel[open] > summary {
    margin-bottom: 0.9rem;
  }

  .result-summary-panel > :first-child,
  .result-summary-panel__meta > .status-pill {
    display: none;
  }

  .result-summary-panel,
  .result-summary-panel__meta {
    align-items: center;
    justify-content: flex-start;
    width: 100%;
  }

  .compact-row {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .compact-row--header {
    display: none;
  }

  .compact-row dt {
    display: block;
  }

  .compact-actions {
    justify-content: flex-start;
  }

  .search-actions {
    justify-content: flex-start;
  }

  .edit-disclosure summary {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.25rem;
  }

  .inline-action-field {
    grid-template-columns: 1fr;
  }

  .edit-disclosure summary::after {
    position: absolute;
    right: 1rem;
  }

  .edit-disclosure summary small {
    padding-right: 1.5rem;
    text-align: left;
  }

  .saved-search-delete {
    justify-content: flex-start;
  }

  .span-2 {
    grid-column: span 1;
  }
}

.my-schools-page {
  display: grid;
  gap: 1.25rem;
}

.my-schools-tools {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.my-schools-tools__controls {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
}

.my-schools-tools__sort,
.my-schools-tools__filter {
  align-items: center;
  background: #fff;
  border: 1px solid #d8e1e8;
  border-radius: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  padding: 0.25rem;
}

.my-schools-tools__sort > span,
.my-schools-tools__filter > span {
  color: #637083;
  font-size: 0.83rem;
  font-weight: 750;
  padding: 0.35rem 0.5rem;
}

.my-schools-compare,
.link-button {
  background: transparent;
  border: 0;
  color: #28465f;
  cursor: pointer;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 750;
  padding: 0.35rem 0.5rem;
  text-decoration: none;
}

.my-schools-tools__option {
  background: transparent;
  border: 1px solid transparent;
  border-radius: 7px;
  color: #3f566b;
  font-size: 0.82rem;
  font-weight: 800;
  padding: 0.45rem 0.65rem;
  text-decoration: none;
  transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease, box-shadow 140ms ease;
}

@media (min-width: 761px) and (max-width: 991.98px) {
  .my-schools-tools {
    align-items: stretch;
    flex-direction: column;
  }

  .my-schools-tools__controls {
    align-items: flex-start;
    flex-direction: column;
  }

  .my-schools-tools__sort,
  .my-schools-tools__filter {
    flex-wrap: nowrap;
    max-width: 100%;
  }

  .my-schools-tools__sort > span,
  .my-schools-tools__filter > span,
  .my-schools-tools__option,
  .my-schools-visualize {
    white-space: nowrap;
  }

  .my-schools-visualize {
    align-self: flex-start;
  }
}

.my-schools-tools__option:hover {
  background: #edf7f6;
  border-color: #c3e1de;
  color: #176b6c;
}

.my-schools-tools__option:focus-visible {
  outline: 3px solid #9ed6db;
  outline-offset: 2px;
}

.my-schools-tools__option.is-active {
  background: #dcefed;
  border-color: #a9d3cf;
  box-shadow: 0 1px 2px rgb(23 107 108 / 12%);
  color: #12595a;
}

.my-schools-tools__option.is-disabled,
.my-schools-tools__option.is-disabled:hover {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  color: #a1aab4;
  cursor: not-allowed;
}

.my-schools-value-filter-note {
  background: #edf7f6;
  border-left: 3px solid #2b7b82;
  border-radius: .35rem;
  color: #4d6070;
  font-size: .86rem;
  margin: .8rem 0;
  padding: .55rem .7rem;
}

.my-schools-value-filter-note strong {
  color: #1f555a;
}

.my-schools-visualize {
  align-items: center;
  background: #fff;
  border: 1px solid #d8e1e8;
  border-radius: 10px;
  box-shadow: 0 1px 2px rgb(28 53 73 / 6%);
  color: #23394d;
  display: inline-flex;
  gap: 0.65rem;
  padding: 0.55rem 0.65rem;
  text-align: left;
  transition: background-color 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
}

.my-schools-visualize:hover {
  background: #f4faf9;
  border-color: #a9d3cf;
  box-shadow: 0 3px 9px rgb(23 107 108 / 12%);
  color: #12595a;
}

.my-schools-visualize:focus-visible {
  border-color: #2b7b82;
  box-shadow: 0 0 0 3px #9ed6db;
  outline: 0;
}

.my-schools-visualize__plot {
  align-items: center;
  background: #edf7f6;
  border: 1px solid #c3e1de;
  border-radius: 6px;
  color: #2b7b82;
  display: inline-flex;
  flex: 0 0 auto;
  height: 1.75rem;
  justify-content: center;
  width: 1.75rem;
}

.my-schools-visualize__plot svg {
  fill: none;
  height: 1.15rem;
  stroke: currentcolor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 1.15rem;
}

.my-schools-visualize__copy {
  display: grid;
  line-height: 1.15;
}

.my-schools-visualize__copy strong {
  font-size: 0.82rem;
  font-weight: 800;
}

.my-schools-visualize__copy small {
  color: #637083;
  font-size: 0.68rem;
  font-weight: 650;
  margin-top: 0.14rem;
  white-space: nowrap;
}

.my-schools-visualize__arrow {
  color: #2b7b82;
  font-size: 1rem;
  margin-left: 0.15rem;
  transition: transform 140ms ease;
}

.my-schools-visualize[aria-expanded="true"] .my-schools-visualize__arrow {
  transform: rotate(90deg);
}

.my-schools-value-workspace {
  display: grid;
  gap: 1.25rem;
}

.my-schools-value-workspace__empty {
  background: #f6f8fa;
  border: 1px solid #dfe6ec;
  border-radius: 10px;
  color: #526273;
  display: grid;
  gap: 0.25rem;
  padding: 1rem 1.1rem;
}

.my-schools-value-workspace__empty strong {
  color: #1d2733;
}

.my-schools-compare {
  align-items: center;
  display: inline-flex;
  gap: 0.3rem;
  white-space: nowrap;
}

/* Keep the card dense on scaled/zoomed desktop windows as well as tablets. */


@media (max-width: 760px) {
  .my-schools-tools {
    align-items: stretch;
    flex-direction: column;
  }

  .my-schools-tools > .btn {
    align-self: flex-start;
  }

  .my-schools-tools__controls {
    align-items: stretch;
    flex-direction: column;
  }

  .shortlist-mobile-card__actions {
    flex-wrap: wrap;
  }
}

@media (prefers-reduced-motion: reduce) {
  .parker-take-research-modal,
  .parker-take-research-modal .modal-dialog,
  .parker-take-research-modal .psv2-dimension > summary > span::after {
    transition: none !important;
  }
}

/* Parent cost scenarios stay paired on desktop and stack on narrow screens. */
.cost-scenarios { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.cost-scenario { padding: 1.1rem; border: 1px solid #ced9e2; border-radius: .75rem; background: #fff; }
.cost-scenario--within { border-color: #b8d6c2; border-top: 3px solid #57926c; background: #f7fbf8; }
.cost-scenario--stretch { border-color: #e4d2a9; border-top: 3px solid #b58a38; background: #fdfbf6; }
.cost-scenario--outside { border-color: #e1c1c1; border-top: 3px solid #b26969; background: #fdf8f8; }
.cost-scenario--within .cost-scenario__status { color: #326346; }
.cost-scenario--stretch .cost-scenario__status { color: #795a1f; }
.cost-scenario--outside .cost-scenario__status { color: #8b4444; }
.cost-scenario h3 { font-size: 1rem; margin: 0 0 .8rem; }
.cost-scenario__annual { font-size: 1.8rem; font-weight: 700; margin: 0 0 .6rem; }
.cost-scenario__annual span { font-size: .9rem; font-weight: 400; }
.cost-scenario dl { margin-bottom: 0; }
.cost-scenario dl > div { margin-top: .7rem; }
.cost-scenario dd { margin: .15rem 0 0; font-weight: 600; }
.cost-planning-details { margin: 1rem 0; }
.cost-planning-details summary { cursor: pointer; font-weight: 600; padding: .6rem 0; }
.cost-planning-details p { margin-top: .8rem; }
@media (max-width: 600px) { .cost-scenarios { grid-template-columns: 1fr; } }

.parker-cost-summary { margin: 1rem 0; padding: 1rem; border: 1px solid #d5dfe7; border-radius: .75rem; background: #f7fafc; }
.parker-cost-summary h3 { margin: 0 0 .85rem; font-size: 1.1rem; }
.parker-cost-summary__scenarios { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.parker-cost-summary h4 { margin: 0 0 .65rem; font-size: .95rem; }
.parker-cost-summary dl { margin: 0; }
.parker-cost-summary dl > div + div { margin-top: .55rem; }
.parker-cost-summary dt { font-size: .85rem; font-weight: 400; color: #526477; }
.parker-cost-summary dd { margin: .1rem 0 0; font-size: 1.1rem; font-weight: 650; }
.parker-cost-summary .parker-cost-summary__note { margin: .85rem 0 0; font-size: .85rem; color: #526477; }
@media (max-width: 600px) { .parker-cost-summary__scenarios { grid-template-columns: 1fr; } }

/* College Guide: legacy single-turn fallback plus the Phase 7 conversation shell. */
.college-guide-nav-item { display: flex; align-items: center; }
.college-guide-drawer { --bs-offcanvas-width: min(29rem, 100vw); }
.college-guide-drawer .offcanvas-header { align-items: flex-start; border-bottom: 1px solid #d5dfe7; }
.college-guide-drawer .offcanvas-body { display: grid; gap: 1rem; padding-top: 1.25rem; }
.college-guide {
  background: #f7fafc;
  border: 1px solid #d5dfe7;
  border-radius: .75rem;
  display: grid;
  gap: 1rem;
  margin: 1rem 0;
  padding: 1rem;
}

.college-guide-drawer--session {
  --guide-border: #d8e1e8;
  --guide-muted: #5b6c78;
  --guide-navy: #173f57;
  --guide-soft: #f4f8fa;
  background: #fbfcfd;
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto auto auto auto auto;
  height: 100dvh;
  max-width: 100vw;
  overflow: hidden;
  --bs-offcanvas-width: min(40rem, 100vw);
  width: min(40rem, 100vw);
}
.college-guide-drawer--session > .college-guide-shell__header { grid-row: 1; }
.college-guide-drawer--session > .college-guide-shell__capture { grid-row: 2; }
.college-guide-drawer--session > .college-guide-shell__continuity { grid-row: 3; }
.college-guide-drawer--session > .college-guide-shell__transcript { grid-row: 4; }
.college-guide-drawer--session > .college-guide-shell__more { grid-row: 5; }
.college-guide-drawer--session > .college-guide-shell__live { grid-row: 6; }
.college-guide-drawer--session > .college-guide-shell__confirm { grid-row: 7; }
.college-guide-drawer--session > .college-guide-shell__composer { grid-row: 8; }
.college-guide-drawer--session > .college-guide-shell__trust { grid-row: 9; }
.college-guide-shell__header {
  align-items: flex-start;
  background: #fff;
  border-bottom: 1px solid var(--guide-border);
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  padding: 1rem 1.1rem .85rem;
}
.college-guide-shell__header .eyebrow { color: #39708d; font-size: .72rem; letter-spacing: .09em; margin: 0 0 .2rem; }
.college-guide-shell__header h2 { color: #102f42; font-size: 1.05rem; line-height: 1.25; margin: 0; }
.college-guide-shell__scope { color: var(--guide-muted); font-size: .78rem; margin: .25rem 0 0; }
.college-guide-shell__scope.is-pending::after { animation: guide-pulse 1.2s infinite; content: ' · working'; }
.college-guide-shell__header-actions { align-items: center; display: flex; flex: 0 0 auto; gap: .45rem; }
.college-guide-shell__new,
.college-guide-turn__action {
  background: transparent;
  border: 0;
  color: #235f80;
  font-size: .78rem;
  font-weight: 750;
  min-height: 44px;
  padding: .35rem .45rem;
}
.college-guide-turn__copy { background: transparent; border: 0; color: #315f78; font-size: .75rem; font-weight: 750; min-height: 44px; padding: .4rem 0; }
.college-guide-shell__continuity {
  background: #fff7df;
  border-bottom: 1px solid #ead79d;
  color: #5f4a16;
  font-size: .78rem;
  margin: 0;
  padding: .65rem 1.1rem;
}
.college-guide-shell__capture { background: #fff7df; border-bottom: 1px solid #ead79d; color: #534216; font-size: .76rem; margin: 0; padding: .42rem 1.1rem; }
.college-guide-diagnostics__controls, .college-guide-diagnostics__review { display: flex; gap: 1rem; justify-content: space-between; margin-bottom: 1.25rem; }
.college-guide-diagnostics__controls h2, .college-guide-diagnostics__review h2, .college-guide-diagnostics__heading h2 { font-size: 1.1rem; margin: 0; }
.college-guide-diagnostics__controls p, .college-guide-diagnostics__heading p { color: #526477; margin: .35rem 0 0; }
.college-guide-diagnostics__actions { align-items: center; display: flex; flex-wrap: wrap; gap: .5rem; }
.college-guide-diagnostics__actions form { margin: 0; }
.college-guide-diagnostics__heading { align-items: start; display: flex; gap: 1rem; justify-content: space-between; margin-bottom: .85rem; }
.college-guide-diagnostics__filter { align-items: center; display: flex; flex-wrap: wrap; gap: .4rem; }
.college-guide-diagnostics__filter select { max-width: 14rem; }
.college-guide-diagnostics__list { display: grid; gap: .7rem; }
.college-guide-diagnostic { border: 1px solid #d5dfe7; border-radius: .65rem; display: flex; gap: 1rem; justify-content: space-between; padding: .85rem 1rem; }
.college-guide-diagnostic h3 { font-size: .92rem; margin: .15rem 0 .45rem; }
.college-guide-diagnostic p { margin: .3rem 0; }
.college-guide-diagnostic__metrics, .college-guide-diagnostics__empty { color: #526477; font-size: .85rem; }
.college-guide-diagnostics__review { display: block; margin-top: 1.5rem; }
.college-guide-diagnostics__review pre { background: #f4f7f9; max-height: 28rem; overflow: auto; padding: .8rem; white-space: pre-wrap; }
.college-guide-diagnostics__warning { background: #fff7df; border-left: 3px solid #b78a2b; padding: .65rem .8rem; }
@media (max-width: 767px) { .college-guide-diagnostics__controls, .college-guide-diagnostics__heading, .college-guide-diagnostic { align-items: stretch; flex-direction: column; } }
.college-guide-shell__transcript {
  min-height: 160px;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 1rem 1.1rem 1.5rem;
  position: relative;
  scroll-behavior: smooth;
}
.college-guide-shell__empty { margin: clamp(1.5rem, 8vh, 4rem) auto 0; max-width: 25rem; text-align: center; }
.college-guide-shell__spark { align-items: center; background: #e7f1f6; border-radius: 50%; color: #266582; display: inline-flex; font-size: 1.25rem; height: 2.75rem; justify-content: center; width: 2.75rem; }
.college-guide-shell__empty h3 { color: #163d54; font-size: 1.2rem; margin: .9rem 0 .4rem; }
.college-guide-shell__empty > p { color: var(--guide-muted); font-size: .9rem; line-height: 1.5; margin: 0 auto 1rem; }
.college-guide-shell__starters,
.college-guide-turn__suggestions { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; }
.college-guide-turn { display: grid; gap: .8rem; margin-bottom: 1.35rem; }
.college-guide-turn__user { margin-left: clamp(1rem, 9%, 3rem); }
.college-guide-turn__user > span,
.college-guide-turn__assistant > span { color: var(--guide-muted); display: block; font-size: .7rem; font-weight: 750; letter-spacing: .04em; margin-bottom: .25rem; text-transform: uppercase; }
.college-guide-turn__user > p { background: #e8f1f5; border-radius: 1rem 1rem .2rem 1rem; color: #17384a; line-height: 1.45; margin: 0; padding: .72rem .85rem; white-space: pre-wrap; }
.college-guide-turn__assistant { min-width: 0; }
.college-guide-answer { color: #243844; font-size: .92rem; line-height: 1.58; overflow-wrap: anywhere; }
.college-guide-answer > :first-child { margin-top: 0; }
.college-guide-answer > :last-child { margin-bottom: 0; }
.college-guide-answer h2,
.college-guide-answer h3,
.college-guide-answer h4 { color: #173f57; font-size: 1rem; margin: 1rem 0 .4rem; }
.college-guide-answer pre { background: #eef3f6; border-radius: .45rem; max-width: 100%; overflow: auto; padding: .65rem; }
.college-guide-answer code { background: #eef3f6; border-radius: .2rem; padding: .08rem .2rem; }
.college-guide-answer blockquote { border-left: 3px solid #8aaabd; color: #465e6d; margin-left: 0; padding-left: .75rem; }
.college-guide-answer--comparison > h2 {
  font-size: 1.15rem;
  margin-bottom: .2rem;
}
.college-guide-answer--comparison > h3 {
  border-top: 1px solid var(--guide-border);
  font-size: .78rem;
  letter-spacing: .055em;
  margin-top: 1.25rem;
  padding-top: .9rem;
  text-transform: uppercase;
}
.college-guide-answer--comparison blockquote {
  background: #fff;
  border: 1px solid #d5e0e7;
  border-left: .28rem solid #39708d;
  border-radius: .7rem;
  box-shadow: 0 2px 8px rgba(20, 49, 66, .045);
  color: #2c424f;
  margin: .7rem 0;
  padding: .8rem .9rem;
}
.college-guide-answer--comparison blockquote > :first-child { color: #173f57; font-size: .96rem; }
.college-guide-answer--comparison blockquote p { margin: 0; }
.college-guide-answer--comparison blockquote p + p { margin-top: .5rem; }
.college-guide-answer--comparison blockquote em { color: #4d6d7f; font-size: .76rem; font-style: normal; font-weight: 750; letter-spacing: .035em; text-transform: uppercase; }
.college-guide-answer--comparison > h3:last-of-type + blockquote {
  background: #edf5f8;
  border-left-color: #6a91a6;
  box-shadow: none;
}
/* Complete-cohort answers use school cards, so names and finding labels have room. */
.college-guide-answer--comparison { overflow-wrap: break-word; word-break: normal; }
.college-guide-answer--comparison blockquote { min-width: 0; }
.college-guide-answer--comparison blockquote > p:last-child { font-size: .8rem; }
.college-guide-answer--comparison blockquote a { overflow-wrap: anywhere; }
.college-guide-shell__more { border-top: 1px solid var(--guide-border); padding: .3rem 1.1rem; }
.college-guide-shell__more > summary { color: var(--guide-accent, #266582); cursor: pointer; font-size: .8rem; font-weight: 650; min-height: 44px; padding: .6rem 0; }
.college-guide-shell__more[open] > .college-guide-shell__starters { justify-content: flex-start; padding: .3rem 0 .5rem; }
.college-guide-shell__more .college-guide__question { font-size: .8rem; padding: .45rem .65rem; }
.college-guide-table { max-width: 100%; overflow-x: auto; }
.college-guide-table table { border-collapse: collapse; min-width: 100%; }
.college-guide-table th,
.college-guide-table td { border: 1px solid #ccd9e1; padding: .45rem .55rem; text-align: left; vertical-align: top; }
.college-guide-turn__working { color: var(--guide-muted); font-style: italic; margin: .25rem 0 0; }
.college-guide-turn__working::before { animation: guide-pulse 1.1s infinite; content: '●'; display: inline-block; margin-right: .45rem; }
.college-guide-turn__notice { background: #eef4f7; border-radius: .45rem; color: var(--guide-muted); font-size: .76rem; padding: .55rem .7rem; text-align: center; }
.college-guide-sources { border-top: 1px solid var(--guide-border); font-size: .8rem; margin-top: .8rem; padding-top: .6rem; }
.college-guide-sources summary { color: #315c72; cursor: pointer; font-weight: 750; min-height: 44px; padding: .65rem 0; }
.college-guide-sources ul { display: grid; gap: .6rem; list-style: none; margin: 0; padding: 0; }
.college-guide-sources li { background: var(--guide-soft); border-radius: .45rem; display: grid; gap: .12rem; padding: .55rem .65rem; }
.college-guide-sources small { color: var(--guide-muted); }
.college-guide-sources__missing { color: var(--guide-muted); font-size: .78rem; font-style: italic; margin: .7rem 0 0; }
.college-guide-turn__suggestions { justify-content: flex-start; margin-top: .75rem; }
.college-guide-turn__reference { color: var(--guide-muted); font-size: .74rem; margin: .65rem 0 0; }
.college-guide-shell__new-answer { background: #173f57; border: 0; border-radius: 999px; bottom: .55rem; color: #fff; font-size: .78rem; left: 50%; min-height: 38px; padding: .45rem .8rem; position: sticky; transform: translateX(-50%); }
.college-guide-shell__live { background: #fff; color: var(--guide-muted); font-size: .78rem; min-height: 1.75rem; padding: .3rem 1.1rem; }
.college-guide-shell__confirm { background: #fff7df; border-block: 1px solid #ead79d; padding: .7rem 1.1rem; }
.college-guide-shell__confirm p { color: #534216; font-size: .82rem; margin: 0 0 .55rem; }
.college-guide-shell__confirm > div { display: flex; gap: .5rem; }
.college-guide-shell__composer { background: #fff; border-top: 1px solid var(--guide-border); padding: .7rem 1.1rem .65rem; }
.college-guide-shell__composer textarea {
  background: #f9fbfc;
  border: 1px solid #aebfc9;
  border-radius: .75rem;
  color: #1f3440;
  display: block;
  font: inherit;
  font-size: 16px;
  line-height: 1.45;
  max-height: 30vh;
  min-height: 46px;
  padding: .65rem .75rem;
  resize: none;
  width: 100%;
}
.college-guide-shell__composer textarea:focus { border-color: #326f8f; box-shadow: 0 0 0 3px rgba(50, 111, 143, .16); outline: 0; }
.college-guide-shell__composer-row { align-items: center; display: flex; gap: .55rem; justify-content: flex-end; margin-top: .42rem; }
.college-guide-shell__composer-row > span { color: var(--guide-muted); font-size: .72rem; margin-right: auto; }
.college-guide-shell__send,
.college-guide-shell__stop { border-radius: 999px; font-size: .82rem; font-weight: 750; min-height: 44px; padding: .45rem .9rem; }
.college-guide-shell__send { background: #173f57; border: 1px solid #173f57; color: #fff; }
.college-guide-shell__send:disabled { cursor: not-allowed; opacity: .45; }
.college-guide-shell__stop { background: #fff; border: 1px solid #9b4c45; color: #7e332d; }
.college-guide-shell__trust { background: #f4f7f9; border-top: 1px solid var(--guide-border); color: var(--guide-muted); font-size: .68rem; line-height: 1.35; padding: .55rem 1.1rem calc(.55rem + env(safe-area-inset-bottom)); text-align: center; }
@keyframes guide-pulse { 50% { opacity: .35; } }

@media (min-width: 1920px) {
  body.college-guide-dock-open { padding-right: 40rem !important; }
  .college-guide-drawer--session { border-left: 1px solid #c7d5de; box-shadow: -8px 0 24px rgba(20, 49, 66, .08); }
}
@media (max-width: 1199.98px) and (min-width: 768px) {
  .college-guide-drawer--session {
    --bs-offcanvas-width: min(34rem, calc(100vw - 2rem));
    width: min(34rem, calc(100vw - 2rem));
  }
}
@media (max-width: 767.98px) {
  .college-guide-drawer--session { --bs-offcanvas-width: 100vw; border: 0; height: 100dvh; width: 100vw; }
  .college-guide-shell__header { padding-inline: .85rem; }
  .college-guide-shell__header h2 { font-size: .98rem; }
  .college-guide-shell__new { font-size: .72rem; padding-inline: .25rem; }
  .college-guide-shell__transcript,
  .college-guide-shell__composer { padding-inline: .85rem; }
}
@media (prefers-reduced-motion: reduce) {
  .college-guide-shell__scope.is-pending::after,
  .college-guide-turn__working::before { animation: none; }
  .college-guide-shell__transcript { scroll-behavior: auto; }
}
.college-guide__heading .eyebrow { margin-bottom: .2rem; }
.college-guide__heading h2 { font-size: 1.2rem; margin: 0; }
.college-guide__heading p:not(.eyebrow) { color: #526477; margin: .35rem 0 0; }
.college-guide__form { display: grid; gap: .55rem; }
.college-guide__form > label { font-weight: 700; }
.college-guide__form > .btn { justify-self: start; }
.college-guide__entry { align-items: end; display: grid; gap: .65rem; grid-template-columns: minmax(0, 1fr) auto; }
.college-guide__entry textarea { min-height: 3.3rem; resize: vertical; }
.college-guide__entry .btn { align-self: stretch; white-space: nowrap; }
.college-guide__boundary { color: #637083; font-size: .85rem; margin: 0; }
.college-guide__examples,
.college-guide__suggestions,
.college-guide__suggestions > div { align-items: center; display: flex; flex-wrap: wrap; gap: .45rem; }
.college-guide__examples > span,
.college-guide__suggestions > span { color: #526477; font-size: .85rem; font-weight: 700; }
.college-guide__question {
  background: #fff;
  border: 1px solid #c8d6e1;
  border-radius: 999px;
  color: #1f4f6d;
  cursor: pointer;
  font: inherit;
  font-size: .85rem;
  line-height: 1.25;
  padding: .38rem .65rem;
  text-align: left;
}
.college-guide__question:hover:not(:disabled) { background: #e7f0f7; border-color: #7da3bd; }
.college-guide__question:focus-visible { outline: 3px solid #1f4f6d; outline-offset: 2px; }
.college-guide__question:disabled { cursor: wait; opacity: .65; }
.college-guide__status { color: #526477; font-weight: 650; margin: 0; }
.college-guide__result { border-top: 1px solid #d5dfe7; display: grid; gap: .7rem; padding-top: 1rem; }
.college-guide__result h3 { font-size: 1rem; margin: 0; }
.college-guide__result > p { line-height: 1.55; margin: 0; white-space: pre-wrap; }
.college-guide__sources { color: #526477; font-size: .85rem; font-weight: 650; }
.college-guide__external-sources { border-top: 1px solid #e1e8ee; color: #526477; font-size: .85rem; padding-top: .75rem; }
.college-guide__external-sources > span { font-weight: 700; }
.college-guide__external-sources ul { margin: .35rem 0 0; padding-left: 1.15rem; }
.college-guide__external-sources a { overflow-wrap: anywhere; }
.college-guide__suggestions { border-top: 1px solid #e1e8ee; padding-top: .75rem; }
.business-accreditation { background: #f7fafc; border: 1px solid #d5dfe7; border-radius: .75rem; margin: 1rem 0; padding: 1rem; }
.business-accreditation h2 { font-size: 1.15rem; margin: 0 0 .45rem; }
.business-accreditation p { margin: 0; }
.business-accreditation__designations { display: grid; gap: .25rem; list-style: none; margin: 0; padding: 0; }
.business-accreditation__meta { color: #526477; font-size: .85rem; margin-top: .55rem !important; }
.business-accreditation__needs-review { color: #8a4b08; font-weight: 650; }
.business-accreditation__name { background: none; border: 0; color: #1f4f6d; cursor: pointer; font: inherit; padding: 0; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.business-accreditation__name span { font-size: .8em; margin-left: .2rem; text-decoration: none; }
.business-accreditation__name:focus-visible { border-radius: 2px; outline: 3px solid #8fc8d1; outline-offset: 2px; }
.business-accreditation-guide .modal-dialog { max-width: min(58rem, calc(100vw - 2rem)); }
.business-accreditation-guide__body { color: #293845; line-height: 1.55; }
.business-accreditation-guide__body h3 { font-size: 1.1rem; margin: 1.5rem 0 .55rem; }
.business-accreditation-guide__body ul { padding-left: 1.25rem; }
.business-accreditation-guide__body li + li { margin-top: .35rem; }
.business-accreditation-guide__table { margin-bottom: 0; min-width: 34rem; }
.college-guide-shortcut { align-items: center; background: #f7fafc; border: 1px solid #d5dfe7; border-radius: .75rem; display: flex; gap: 1rem; justify-content: space-between; margin: 1rem 0; padding: 1rem; }
.college-guide-shortcut .eyebrow { margin-bottom: .2rem; }
.college-guide-shortcut p:not(.eyebrow) { color: #526477; margin: 0; }
@media (max-width: 600px) {
  .college-guide__entry { align-items: stretch; grid-template-columns: 1fr; }
  .college-guide__entry .btn { min-height: 2.75rem; }
  .college-guide-drawer { --bs-offcanvas-width: 100vw; }
  .college-guide__form > .btn { min-height: 2.75rem; width: 100%; }
  .college-guide-shortcut { align-items: stretch; flex-direction: column; }
  .college-guide-shortcut .btn { min-height: 2.75rem; width: 100%; }
}
.school-status-modal {
  width: min(42rem, calc(100vw - 2rem));
  max-height: min(90vh, 52rem);
  overflow: auto;
  border: 1px solid #cbd5e1;
  border-radius: 0.8rem;
  padding: 1.25rem;
  color: inherit;
  background: #fff;
  box-shadow: 0 1rem 3rem rgba(15, 23, 42, 0.2);
}

.school-status-modal::backdrop { background: rgba(15, 23, 42, 0.55); }
.school-status-modal__heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
.school-status-modal__heading h2 { margin: 0 0 0.5rem; }
.school-status-modal__history { margin-top: 1.5rem; }
.school-status-modal__history ol { padding-left: 1.5rem; max-height: 18rem; overflow: auto; }
.school-status-modal__history li + li { margin-top: 0.5rem; }
.coach-interactions-trigger { margin-top: .75rem; }
.coach-interactions-modal {
  width: min(42rem, calc(100vw - 2rem)); max-height: min(90vh, 52rem); overflow: auto;
  border: 1px solid #cbd5e1; border-radius: .8rem; padding: 1.25rem;
  color: inherit; background: #fff; box-shadow: 0 1rem 3rem rgba(15, 23, 42, .2);
}
.coach-interactions-modal::backdrop { background: rgba(15, 23, 42, .55); }
.coach-interactions-log { margin: .5rem 0 1rem; }
.coach-interactions-modal form { border-top: 1px solid #e2e8f0; padding: 1rem 0; }
.coach-interactions-modal .form-field + .form-field { margin-top: .75rem; }
.coach-interactions-form-actions, .coach-interactions-entry-actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .75rem; }
.coach-interactions-list { padding-left: 1.3rem; max-height: 19rem; overflow: auto; }
.coach-interactions-list li + li { border-top: 1px solid #e2e8f0; margin-top: .75rem; padding-top: .75rem; }
.coach-interactions-entry-heading { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem; }
.coach-interactions-notes { white-space: pre-wrap; overflow-wrap: anywhere; margin: .5rem 0; }
@media (max-width: 600px) { .coach-interactions-modal { padding: 1rem; } }
