:root {
  --green: #1a7f37;
  --green-bg: #e6f4ea;
  --red: #c0362c;
  --amber: #9a6700;
  --amber-bg: #fff8e1;
  --border: #e2e2e2;
  --muted: #6b7280;
  --bg: #fafafa;
  --blue: #1b6ef3;
  --blue-bg: #eaf2ff;
  --yellow: #ffbf17;
  --yellow-shadow: #f08a00;
  --block-yellow-bg: #fff8e1;
  --block-yellow-border: #f3d98b;
  --block-blue-bg: #eaf2ff;
  --block-blue-border: #c8dcfb;
  --site-page-width: 82%;
}

* { box-sizing: border-box; }

[hidden] {
  display: none !important;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  margin: 0;
  background: var(--bg);
  color: #1b1b1b;
  font-size: 14px;
  line-height: 1.5;
}

a,
a:visited {
  color: var(--blue);
  text-decoration: none;
}

header {
  background: #fff;
  border-bottom: 1px solid var(--border);
  display: block;
  padding: 14px 28px 18px;
}

.site-topbar {
  display: flex;
  align-items: center;
  margin-bottom: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--border);
  gap: 28px;
}

.site-topbar-left {
  display: flex;
  align-items: center;
  gap: 28px;
  min-width: 0;
  width: 100%;
}

.site-logo {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: #1b1b1b;
  font-weight: 700;
  font-size: 15px;
}

.site-logo img {
  height: 30px;
  width: auto;
  border-radius: 6px;
}

.site-nav {
  display: flex;
  gap: 4px;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  flex: 1;
}

.tab-btn {
  padding: 10px 16px;
  border: none;
  background: none;
  cursor: pointer;
  font-size: 14px;
  color: var(--muted);
  border-bottom: 2px solid transparent;
  text-decoration: none;
  display: inline-block;
}

.tab-btn.active {
  color: #1b1b1b;
  border-bottom-color: #1b1b1b;
  font-weight: 600;
}

.tab-btn.cta-2027 {
  background: var(--yellow);
  color: #15243a;
  border-bottom: 4px solid var(--yellow-shadow);
  border-radius: 8px;
  font-weight: 800;
  margin-left: 8px;
  padding: 9px 18px;
}

.site-footer {
  background: #fff;
  border-top: 1px solid var(--border);
  padding: 26px 28px 32px;
  margin-top: 40px;
}

.site-footer-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  gap: 14px;
}

.site-footer-brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  color: #1b1b1b;
  text-decoration: none;
  font-weight: 700;
  font-size: 15px;
}

.site-footer-brand img {
  display: block;
  width: 30px;
  min-width: 30px;
  max-width: 30px;
  height: 30px;
  object-fit: contain;
  border-radius: 6px;
}

.site-footer-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 22px;
}

.site-footer-nav a {
  color: var(--muted);
  text-decoration: none;
  font-size: 14px;
}

.site-footer-nav a:hover { color: var(--blue); }

.site-footer-note {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}

@media (max-width: 720px) {
  header { padding: 12px 16px 14px; }
  .site-topbar-left { align-items: flex-start; flex-direction: column; gap: 12px; }
  .site-nav { justify-content: flex-start; }
  .site-footer { padding: 24px 22px 28px; }
  .site-footer-nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 14px; }
}


/* Professions page */
body.professions-page {
      --card: #fff;
      --text: #1b1b1b;
      --muted: #6b7280;
      --blue: #1b6ef3;
      --blue-soft: #eaf2ff;
      --line: #e2e2e2;
      --yellow: #ffbf17;
      --yellow-shadow: #f08a00;
      --green: #168447;
      --green-soft: #e8f8ee;
      --peach: #fff4e7;
    }
body.professions-page .wrap {
      max-width: 1200px;
      margin: 0 auto;
      padding: 28px 24px 64px;
    }
body.professions-page .hero {
      background: linear-gradient(100deg, #fff 0%, #eaf3ff 75%, #fff 100%);
      border: 1px solid #d9e8fb;
      border-radius: 12px;
      padding: 24px;
      display: grid;
      grid-template-columns: minmax(0, 1fr) 220px;
      gap: 22px;
      align-items: center;
      box-shadow: 0 12px 30px rgba(34, 78, 135, .07);
    }
body.professions-page .eyebrow {
      display: inline-flex;
      align-items: center;
      width: fit-content;
      padding: 6px 12px;
      border-radius: 999px;
      background: #dcecff;
      color: var(--blue);
      font-weight: 700;
      margin-bottom: 12px;
      font-size: 13px;
    }
body.professions-page h1 {
      margin: 0 0 10px;
      font-size: clamp(26px, 3vw, 34px);
      line-height: 1.1;
      letter-spacing: 0;
    }
body.professions-page h1 span { color: var(--blue); }
body.professions-page .hero p {
      margin: 0 0 18px;
      max-width: 760px;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.5;
    }
body.professions-page .hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
body.professions-page .btn {
      border: 0;
      background: var(--blue);
      color: #fff;
      border-radius: 8px;
      padding: 11px 16px;
      font: inherit;
      font-weight: 700;
      cursor: pointer;
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 40px;
    }
body.professions-page .btn-yellow {
      background: var(--yellow);
      color: var(--text);
      box-shadow: 0 5px 0 var(--yellow-shadow);
    }
body.professions-page .btn-light {
      background: #fff;
      color: var(--text);
      border: 1px solid var(--line);
    }
body.professions-page .hero-visual {
      min-height: 140px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 12px;
      background: rgba(255, 255, 255, .56);
      border: 1px solid rgba(217, 232, 251, .7);
    }
body.professions-page .hero-visual strong {
      font-size: 54px;
      line-height: 1;
    }
body.professions-page .panel {
      margin-top: 22px;
      background: var(--card);
      border: 1px solid #d9e8fb;
      border-radius: 12px;
      padding: 18px;
      box-shadow: 0 12px 30px rgba(34, 78, 135, .06);
    }
body.professions-page .closer {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 18px;
      flex-wrap: wrap;
    }
body.professions-page .closer h2, body.professions-page .section-head h2 {
      margin: 0;
      font-size: 18px;
      line-height: 1.2;
    }
body.professions-page .chips {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      margin-top: 14px;
    }
body.professions-page .chip {
      border: 1px solid var(--line);
      background: #fff;
      color: #4a566b;
      border-radius: 999px;
      padding: 7px 12px;
      font: inherit;
      font-weight: 600;
      cursor: pointer;
      min-height: 36px;
    }
body.professions-page .chip.active {
      background: var(--blue);
      color: #fff;
      border-color: var(--blue);
    }
body.professions-page .guide-card {
      margin-top: 22px;
      background: #dcebfd;
      border-radius: 10px;
      padding: 16px 18px;
      display: flex;
      justify-content: space-between;
      gap: 18px;
      align-items: center;
      text-decoration: none;
      color: var(--text);
    }
body.professions-page .guide-card b {
      display: block;
      color: var(--blue);
      font-size: 16px;
      margin-bottom: 5px;
    }
body.professions-page .guide-card span { color: #4a566b; font-weight: 700; font-size: 13px; }
body.professions-page .collection-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
      margin-top: 22px;
    }
body.professions-page .collection {
      border: 0;
      text-align: left;
      border-radius: 10px;
      padding: 16px;
      min-height: 96px;
      font: inherit;
      cursor: pointer;
      color: var(--text);
    }
body.professions-page .collection b {
      display: block;
      font-size: 15px;
      margin-bottom: 7px;
    }
body.professions-page .collection span { color: #4a566b; font-weight: 700; font-size: 13px; }
body.professions-page .collection[data-tag="востребованные"] { background: var(--peach); }
body.professions-page .collection[data-tag="будущее"] { background: #dcecff; }
body.professions-page .collection[data-tag="высокая зарплата"] { background: var(--green-soft); }
body.professions-page .filters {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 132px 230px 230px;
      gap: 12px;
      align-items: center;
      margin-top: 18px;
    }
body.professions-page .search-submit {
      min-height: 44px;
      justify-content: center;
    }
body.professions-page .search-panel {
      margin-top: 0;
      margin-bottom: 18px;
      position: relative;
      z-index: 3;
    }
body.professions-page .search-panel .filters {
      margin-top: 0;
    }
body.professions-page .profession-search-wrap {
      position: relative;
      min-width: 0;
    }
body.professions-page .input, body.professions-page .select {
      width: 100%;
      min-height: 44px;
      border: 2px solid var(--line);
      border-radius: 8px;
      background: #f8fbff;
      color: var(--text);
      padding: 0 16px;
      font: inherit;
      font-weight: 500;
    }
body.professions-page .profession-suggest {
      position: absolute;
      top: calc(100% + 6px);
      left: 0;
      right: 0;
      display: none;
      max-height: 360px;
      overflow: auto;
      background: #fff;
      border: 1px solid #d9e8fb;
      border-radius: 10px;
      box-shadow: 0 18px 38px rgba(34, 78, 135, .14);
      padding: 6px;
      z-index: 20;
    }
body.professions-page .profession-suggest.open {
      display: flex;
      flex-direction: column;
      gap: 4px;
    }
body.professions-page .profession-suggest-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      width: 100%;
      box-sizing: border-box;
      padding: 10px 12px;
      border-radius: 8px;
      border: 0;
      background: transparent;
      text-decoration: none;
      color: var(--text);
      font: inherit;
      text-align: left;
      cursor: pointer;
    }
body.professions-page .profession-suggest-item:hover {
      background: var(--blue-soft);
    }
body.professions-page .profession-suggest-item span {
      display: grid;
      gap: 2px;
      min-width: 0;
    }
body.professions-page .profession-suggest-item b {
      font-size: 14px;
      line-height: 1.25;
    }
body.professions-page .profession-suggest-item small {
      color: var(--muted);
      font-weight: 700;
    }
body.professions-page .profession-suggest-item em {
      flex: none;
      color: var(--green);
      font-style: normal;
      font-weight: 900;
      font-size: 12px;
    }
body.professions-page .active-filter {
      margin: 10px 0 0;
      color: var(--muted);
      font-weight: 800;
      font-size: 13px;
    }
body.professions-page .section-head {
      display: flex;
      justify-content: space-between;
      align-items: end;
      gap: 16px;
      margin: 30px 0 14px;
    }
body.professions-page .directions-panel {
      margin-top: 28px;
      padding: 20px;
      border: 1px solid var(--line);
      border-radius: 12px;
      background: linear-gradient(180deg, #f8fbff 0%, #eef6ff 100%);
      box-shadow: 0 14px 34px rgba(34, 78, 135, .05);
    }
body.professions-page .directions-panel .section-head {
      margin-top: 0;
    }
body.professions-page #profession-results { scroll-margin-top: 24px; }
body.professions-page .section-head p {
      margin: 0;
      color: var(--muted);
      font-weight: 700;
      font-size: 13px;
    }
body.professions-page .catalog-counter {
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      gap: 3px;
      text-align: right;
    }
body.professions-page .catalog-counter small {
      color: var(--muted);
      font-size: 12px;
      font-weight: 700;
      max-width: 360px;
    }
body.professions-page .category-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 16px;
    }
body.professions-page .category-card {
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 10px;
      padding: 18px;
      min-height: 154px;
      box-shadow: 0 14px 34px rgba(34, 78, 135, .06);
    }
body.professions-page .category-top {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 14px;
      margin-bottom: 14px;
    }
body.professions-page .category-card h3 {
      margin: 0;
      font-size: 15px;
      line-height: 1.25;
    }
body.professions-page .count {
      flex: 0 0 auto;
      border-radius: 999px;
      background: #dcecff;
      color: var(--blue);
      font-weight: 800;
      padding: 5px 9px;
      font-size: 12px;
    }
body.professions-page .examples {
      color: #516176;
      font-weight: 600;
      line-height: 1.5;
      min-height: 64px;
      font-size: 13px;
    }
body.professions-page .category-link {
      border: 0;
      background: transparent;
      color: var(--blue);
      font: inherit;
      font-weight: 800;
      padding: 0;
      cursor: pointer;
    }
body.professions-page .profession-list {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 16px;
    }
body.professions-page .profession-card {
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 10px;
      padding: 16px;
      min-height: 210px;
      display: flex;
      flex-direction: column;
      gap: 12px;
      color: var(--text);
      text-decoration: none;
      transition: background .16s ease, border-color .16s ease, box-shadow .16s ease;
    }
body.professions-page .profession-card,
body.professions-page .profession-card * {
      text-decoration: none;
    }
body.professions-page .profession-card:hover {
      background: #f3f8ff;
      border-color: #b9d5fb;
      box-shadow: 0 12px 24px rgba(34, 78, 135, .08);
    }
body.professions-page .profession-card:focus-visible {
      outline: 3px solid rgba(27, 110, 243, .35);
      outline-offset: 3px;
    }
body.professions-page .profession-card h3 {
      margin: 0;
      font-size: 15px;
      line-height: 1.25;
      color: var(--text);
    }
body.professions-page .profession-card:hover h3 {
      color: var(--blue);
    }
body.professions-page .profession-card p {
      margin: 0;
      color: #516176;
      line-height: 1.5;
      flex: 1;
      font-size: 13px;
    }
body.professions-page .meta-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }
body.professions-page .pill {
      border-radius: 999px;
      background: var(--blue-soft);
      color: var(--blue);
      padding: 5px 9px;
      font-size: 11px;
      font-weight: 800;
    }
body.professions-page .salary { color: var(--green); font-weight: 900; }
body.professions-page .empty {
      padding: 32px;
      text-align: center;
      color: var(--muted);
      font-weight: 800;
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 10px;
      grid-column: 1 / -1;
    }
body.professions-page .fallback-notice {
      padding: 16px 18px;
      text-align: left;
      color: #8a4b00;
      background: #fff8e9;
      border-color: #ffd79c;
    }
    @media (max-width: 980px) {

  body.professions-page .hero { grid-template-columns: 1fr; }
  body.professions-page .hero-visual { min-height: 140px; }
  body.professions-page .filters, body.professions-page .category-grid, body.professions-page .profession-list, body.professions-page .collection-grid { grid-template-columns: 1fr; }
    }
    @media (max-width: 720px) {
  body.professions-page .wrap { padding: 24px 14px 52px; }
  body.professions-page .hero, body.professions-page .panel { padding: 18px; border-radius: 12px; }
  body.professions-page .guide-card { align-items: flex-start; flex-direction: column; }
  body.professions-page .section-head { align-items: flex-start; flex-direction: column; }
    }

/* Proforientation page */
body.proforientation-page { background: linear-gradient(90deg, #eef6ff 0%, #f7fbff 72%, #fffbea 100%); color: #11243a; }
body.proforientation-page .wrap { max-width: 1200px; margin: 0 auto; padding: 28px 20px 72px; }
body.proforientation-page .hero {
  background: linear-gradient(100deg, #fff 0%, #eaf3ff 72%, #dcecff 100%);
  border: 1px solid #d9e8fb;
  border-radius: 12px;
  padding: 26px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 240px;
  gap: 24px;
  align-items: center;
  box-shadow: 0 12px 30px rgba(34, 78, 135, .08);
}
body.proforientation-page .badge { display: inline-flex; width: fit-content; padding: 7px 14px; border-radius: 999px; background: #2f68ee; color: #fff; font-size: 14px; font-weight: 800; margin-bottom: 14px; }
body.proforientation-page h1 { margin: 0 0 14px; font-size: 34px; line-height: 1.18; letter-spacing: 0; }
body.proforientation-page h2 { margin: 0 0 10px; font-size: 28px; line-height: 1.2; letter-spacing: 0; }
body.proforientation-page h3 { margin: 0 0 10px; font-size: 18px; line-height: 1.25; }
body.proforientation-page p { color: #5c6b80; font-size: 15px; line-height: 1.6; margin: 0 0 12px; }
body.proforientation-page .hero p { max-width: 820px; font-size: 16px; }
body.proforientation-page .hero-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
body.proforientation-page .btn { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; border-radius: 8px; padding: 10px 16px; text-decoration: none; font-size: 14px; font-weight: 800; border: 1px solid #d9e8fb; background: #fff; color: #11243a; }
body.proforientation-page .btn-primary { background: #2f68ee; color: #fff; border-color: #2f68ee; }
body.proforientation-page .hero-visual { min-height: 160px; border-radius: 12px; border: 1px solid #d9e8fb; background: rgba(255,255,255,.58); display: flex; align-items: center; justify-content: center; }
body.proforientation-page .hero-visual span { font-size: 62px; }
body.proforientation-page .section { margin-top: 34px; }
body.proforientation-page .section-head { margin-bottom: 16px; }
body.proforientation-page .grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
body.proforientation-page .grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
body.proforientation-page .grid-5 { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
body.proforientation-page .card {
  background: #fff;
  border: 1px solid #d9e8fb;
  border-radius: 10px;
  padding: 18px;
  box-shadow: 0 10px 26px rgba(34, 78, 135, .06);
}
body.proforientation-page .card-icon { font-size: 24px; margin-bottom: 12px; }
body.proforientation-page .card-link { display: inline-flex; margin-top: 12px; font-weight: 800; text-decoration: none; }
body.proforientation-page .chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
body.proforientation-page .chip { display: inline-flex; padding: 6px 10px; border-radius: 999px; background: #eaf2ff; color: #2f68ee; font-size: 12px; font-weight: 800; }
body.proforientation-page .type-card { min-height: 390px; }
body.proforientation-page .type-card p { font-size: 15px; }
body.proforientation-page .type-card .links { display: grid; gap: 8px; margin-top: 14px; }
body.proforientation-page .type-card a { font-size: 14px; line-height: 1.35; font-weight: 800; text-decoration: none; }
body.proforientation-page .steps { display: grid; gap: 14px; }
body.proforientation-page .step { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 18px; align-items: start; }
body.proforientation-page .num { width: 34px; height: 34px; border-radius: 999px; background: #ffd44d; display: inline-flex; align-items: center; justify-content: center; font-size: 15px; font-weight: 900; }
body.proforientation-page .notice { border: 2px solid #2f68ee; background: #fff; }
body.proforientation-page .notice-row { display: grid; grid-template-columns: 92px minmax(0, 1fr) auto; gap: 18px; align-items: center; }
body.proforientation-page .notice img { width: 78px; max-width: 100%; }
body.proforientation-page .faq h3 { margin-top: 18px; }
body.proforientation-page .footer-note { color: #9aa8bb; font-size: 13px; margin-top: 24px; }
@media (max-width: 980px) {
  body.proforientation-page .hero,
  body.proforientation-page .grid-2,
  body.proforientation-page .grid-3,
  body.proforientation-page .grid-5,
  body.proforientation-page .notice-row { grid-template-columns: 1fr; }
  body.proforientation-page .type-card { min-height: auto; }
  body.proforientation-page .hero-visual { min-height: 120px; }
}
@media (max-width: 720px) {
  body.proforientation-page .wrap { padding: 24px 14px 54px; }
  body.proforientation-page .hero { padding: 18px; }
  body.proforientation-page h1 { font-size: 28px; }
  body.proforientation-page h2 { font-size: 23px; }
  body.proforientation-page .step { grid-template-columns: 40px minmax(0, 1fr); }
}

/* Profession detail page */
body.profession-detail-page {
  --card: #fff;
  --text: #1b1b1b;
  --muted: #6b7280;
  --blue: #1b6ef3;
  --blue-soft: #eaf2ff;
  --line: #e2e2e2;
  --yellow: #ffbf17;
  --yellow-shadow: #f08a00;
}
body.profession-detail-page .wrap { max-width: 1200px; margin: 0 auto; padding: 28px 24px 64px; }
body.profession-detail-page .breadcrumbs { color: var(--muted); margin: 0 0 16px; font-size: 13px; }
body.profession-detail-page .breadcrumbs a { text-decoration: none; font-weight: 700; }
body.profession-detail-page .hero {
  background: linear-gradient(100deg, #fff 0%, #eaf3ff 75%, #fff 100%);
  border: 1px solid #d9e8fb;
  border-radius: 12px;
  padding: 24px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 22px;
  align-items: center;
  box-shadow: 0 12px 30px rgba(34, 78, 135, .07);
}
body.profession-detail-page .eyebrow {
  display: inline-flex;
  width: fit-content;
  padding: 6px 12px;
  border-radius: 999px;
  background: #dcecff;
  color: var(--blue);
  font-weight: 700;
  margin-bottom: 12px;
  font-size: 13px;
}
body.profession-detail-page .category-eyebrow {
  text-decoration: none;
  transition: background .16s ease, box-shadow .16s ease, transform .16s ease;
}
body.profession-detail-page .category-eyebrow:hover {
  background: #d2e7ff;
  box-shadow: 0 8px 18px rgba(27, 110, 243, .12);
  transform: translateY(-1px);
}
body.profession-detail-page .category-eyebrow:focus-visible {
  outline: 3px solid rgba(27, 110, 243, .35);
  outline-offset: 3px;
}
body.profession-detail-page h1 { margin: 0 0 10px; font-size: clamp(26px, 3vw, 34px); line-height: 1.1; letter-spacing: 0; }
body.profession-detail-page h2 { margin: 0 0 12px; font-size: 18px; line-height: 1.2; letter-spacing: 0; }
body.profession-detail-page p,
body.profession-detail-page li { color: var(--muted); font-size: 14px; line-height: 1.55; }
body.profession-detail-page ul { margin: 0; padding-left: 20px; }
body.profession-detail-page .exam-guide {
  display: grid;
  gap: 14px;
}
body.profession-detail-page .exam-guide b {
  display: block;
  margin-bottom: 8px;
  color: var(--text);
  font-size: 13px;
}
body.profession-detail-page .exam-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
body.profession-detail-page .exam-pill {
  border-radius: 999px;
  background: #fff8e9;
  color: #8a4b00;
  border: 1px solid #ffd79c;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 800;
}
body.profession-detail-page .exam-required {
  background: var(--blue-soft);
  color: var(--blue);
  border-color: #d9e8fb;
}
body.profession-detail-page .exam-muted {
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
}
body.profession-detail-page .exam-guide p {
  margin: 0;
  padding: 10px 12px;
  border-radius: 8px;
  background: #f8fbff;
  border: 1px solid #d9e8fb;
  font-size: 13px;
}
body.profession-detail-page .suitability-guide {
  display: grid;
  gap: 12px;
}
body.profession-detail-page .suitability-guide p {
  margin: 0;
}
body.profession-detail-page .suitability-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
body.profession-detail-page .suitability-label {
  display: block;
  margin-bottom: 8px;
  color: var(--text);
  font-size: 13px;
}
body.profession-detail-page .suitability-guide ul {
  display: grid;
  gap: 8px;
  padding-left: 0;
  list-style: none;
}
body.profession-detail-page .suitability-guide li {
  display: grid;
  gap: 2px;
  padding: 9px 10px;
  border-radius: 8px;
  background: #f8fbff;
  border: 1px solid #d9e8fb;
}
body.profession-detail-page .suitability-guide li b {
  color: var(--text);
  font-size: 13px;
}
body.profession-detail-page .suitability-guide li span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.45;
}
body.profession-detail-page .score-board {
  display: grid;
  gap: 14px;
}
body.profession-detail-page .outlook-panel {
  margin-top: 16px;
}
body.profession-detail-page .outlook-panel .score-board {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
body.profession-detail-page .score-item {
  display: grid;
  gap: 8px;
  padding: 12px;
  border-radius: 10px;
  border: 1px solid #d9e8fb;
  background: #f8fbff;
}
body.profession-detail-page .score-top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
body.profession-detail-page .score-top b {
  color: var(--text);
  font-size: 14px;
}
body.profession-detail-page .score-top strong {
  color: var(--blue);
  font-size: 20px;
  line-height: 1;
}
body.profession-detail-page .score-track {
  height: 12px;
  border-radius: 999px;
  background: #eaf2ff;
  overflow: hidden;
}
body.profession-detail-page .score-track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #1b6ef3, #21a366);
}
body.profession-detail-page .score-future .score-track span {
  background: linear-gradient(90deg, #7c3aed, #1b6ef3);
}
body.profession-detail-page .score-item p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.45;
}
body.profession-detail-page .direction-list {
  display: grid;
  gap: 10px;
  padding-left: 0;
  list-style: none;
}
body.profession-detail-page .direction-list li {
  display: block;
  border: 1px solid #d9e8fb;
  border-radius: 8px;
  background: #f8fbff;
  overflow: hidden;
}
body.profession-detail-page .direction-list a {
  color: var(--text);
  font-weight: 800;
  text-decoration: none;
}
body.profession-detail-page .direction-list .direction-card-link {
  display: grid;
  gap: 3px;
  min-height: 100%;
  padding: 10px 12px;
}
body.profession-detail-page .direction-list a:hover {
  color: var(--blue);
  background: var(--blue-soft);
  text-decoration: none;
}
body.profession-detail-page .direction-list a:focus-visible {
  outline: 3px solid rgba(27, 110, 243, .35);
  outline-offset: -3px;
}
body.profession-detail-page .direction-list small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}
body.profession-detail-page .is-hidden { display: none !important; }
body.profession-detail-page .more-directions {
  margin-top: 12px;
  border: 1px solid #d9e8fb;
  border-radius: 8px;
  background: var(--blue-soft);
  color: var(--blue);
  padding: 9px 12px;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
body.profession-detail-page .hero p { max-width: 760px; margin: 0 0 18px; }
body.profession-detail-page .hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
body.profession-detail-page .btn {
  border: 0;
  background: var(--blue);
  color: #fff;
  border-radius: 8px;
  padding: 11px 16px;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
}
body.profession-detail-page .btn-yellow { background: var(--yellow); color: var(--text); box-shadow: 0 5px 0 var(--yellow-shadow); }
body.profession-detail-page .btn-light { background: #fff; color: var(--text); border: 1px solid var(--line); }
body.profession-detail-page .salary-box {
  border: 1px solid #d9e8fb;
  border-radius: 12px;
  background: rgba(255, 255, 255, .64);
  padding: 20px;
}
body.profession-detail-page .salary-box span,
body.profession-detail-page .salary-box small { display: block; color: var(--muted); font-size: 13px; }
body.profession-detail-page .salary-box strong { display: block; margin: 8px 0; color: var(--blue); font-size: 28px; line-height: 1.1; }
body.profession-detail-page .detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 22px; }
body.profession-detail-page .panel {
  background: var(--card);
  border: 1px solid #d9e8fb;
  border-radius: 12px;
  padding: 18px;
  box-shadow: 0 12px 30px rgba(34, 78, 135, .06);
}
body.profession-detail-page .chips { display: flex; flex-wrap: wrap; gap: 8px; }
body.profession-detail-page .chip { border-radius: 999px; background: var(--blue-soft); color: var(--blue); padding: 7px 12px; font-weight: 700; font-size: 13px; }
body.profession-detail-page .next-step { margin-top: 22px; }
@media (max-width: 820px) {
  body.profession-detail-page .hero,
  body.profession-detail-page .detail-grid { grid-template-columns: 1fr; }
  body.profession-detail-page .outlook-panel .score-board { grid-template-columns: 1fr; }
  body.profession-detail-page .suitability-columns { grid-template-columns: 1fr; }
  body.profession-detail-page .wrap { padding: 24px 14px 52px; }
}

/* Static /vuzy/ catalogue. Keep page-scoped; this is the site's single CSS file. */
body.universities-catalog-page{background:#eef6ff}
body.universities-catalog-page .site-header{background:#f4f8ff}
body.universities-catalog-page .catalog-main{max-width:1400px!important;padding-top:34px!important}
body.universities-catalog-page .university-filter{background:#fff;border:1px solid #e6edf7;border-radius:12px;padding:26px 28px;box-shadow:0 12px 32px rgba(24,61,110,.07);margin-bottom:28px}
body.universities-catalog-page .university-filter label>span{display:block;margin-bottom:8px;color:#4e5c72;font-size:12px;font-weight:800;text-transform:uppercase}
body.universities-catalog-page .university-filter input[type="search"],body.universities-catalog-page .university-filter select{width:100%;height:52px;border:2px solid #d7e7ff;border-radius:9px;background:#f8fbff;color:#19304d;font:inherit;padding:0 16px;outline:none}
body.universities-catalog-page .university-filter input[type="search"]:focus,body.universities-catalog-page .university-filter select:focus{border-color:#1769e8;box-shadow:0 0 0 3px rgba(23,105,232,.1)}
body.universities-catalog-page .filter-search{display:block;margin-bottom:20px}
body.universities-catalog-page .filter-selects{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
body.universities-catalog-page .filter-checks{display:flex;align-items:center;flex-wrap:wrap;gap:14px 28px;margin-top:22px}
body.universities-catalog-page .filter-checks label{display:flex;align-items:center;gap:8px;color:#19304d;font-size:14px;font-weight:700;cursor:pointer}
body.universities-catalog-page .filter-checks label>span{display:inline;margin:0;color:inherit;font-size:inherit;text-transform:none}
body.universities-catalog-page .filter-checks input{width:20px;height:20px;margin:0;accent-color:#1769e8}
body.universities-catalog-page .filter-actions{display:flex;align-items:center;gap:12px;margin-top:20px}
body.universities-catalog-page .filter-submit,body.universities-catalog-page .filter-reset,body.universities-catalog-page .city-shortcuts button{font:inherit;cursor:pointer}
body.universities-catalog-page .filter-submit{border:0;border-radius:9px;background:#1769e8;color:#fff;padding:12px 22px;font-weight:800;box-shadow:0 4px 0 #0c4fc2}
body.universities-catalog-page .filter-submit:hover{background:#0f5edb}
body.universities-catalog-page .filter-reset{border:0;background:transparent;color:#687386;padding:12px;font-weight:700}
body.universities-catalog-page .city-shortcuts{margin:0 0 28px}
body.universities-catalog-page .city-shortcuts>div:first-child{display:flex;align-items:center;gap:14px}
body.universities-catalog-page .city-shortcuts h2{margin:0;font-size:20px;color:#12233c}
body.universities-catalog-page .city-shortcuts .all-cities{border:0;background:transparent;color:#1769e8;font-weight:700;padding:5px}
body.universities-catalog-page .city-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}
body.universities-catalog-page .city-chips button{border:1px solid #e3ebf6;border-radius:999px;background:#fff;color:#536176;padding:8px 13px;font-size:13px;font-weight:700}
body.universities-catalog-page .city-chips button:hover{border-color:#1769e8;color:#1769e8}
body.universities-catalog-page .city-chips span{color:#91a0b5;font-weight:500}
body.universities-catalog-page .catalog-count{color:#687386;margin:0 0 14px}
body.universities-catalog-page .catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin-bottom:20px}
body.universities-catalog-page .program-card{background:#fff;border:1px solid #e2e5ea;border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:12px;transition:box-shadow .15s,border-color .15s}
body.universities-catalog-page .program-card:hover{border-color:#1769e8;box-shadow:0 2px 12px rgba(0,0,0,.06)}
body.universities-catalog-page .program-card-link{cursor:pointer;color:#1d2430;text-decoration:none}
body.universities-catalog-page .program-card-link:hover .pc-name{color:#1769e8}
body.universities-catalog-page .pc-top{display:flex;gap:10px;align-items:flex-start}
body.universities-catalog-page .pc-icon{flex:0 0 auto;width:38px;height:38px;border-radius:8px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}
body.universities-catalog-page .pc-titlewrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
body.universities-catalog-page .pc-name{font-size:15px;font-weight:700;line-height:1.3}
body.universities-catalog-page .pc-badges{display:flex;flex-wrap:wrap;gap:5px}
body.universities-catalog-page .pc-badge{font-size:11px;padding:3px 8px;background:#fafafa;border:1px solid #e2e5ea;border-radius:999px;color:#687386;font-weight:600}
body.universities-catalog-page .pc-stats-line{font-size:12px;color:#687386}
body.universities-catalog-page .card-accent{display:flex;flex-wrap:wrap;gap:6px}
body.universities-catalog-page .accent-chip{font-size:12px;font-weight:700;padding:6px 10px;border-radius:8px}
body.universities-catalog-page .accent-budget{background:#eaf7ee;color:#16833d}
body.universities-catalog-page .accent-cost{background:#eaf2ff;color:#1769e8}
body.universities-catalog-page .catalog-empty{padding:24px;background:#fff;border:1px solid #e2e5ea;border-radius:8px;color:#687386}
@media(max-width:900px){body.universities-catalog-page .filter-selects{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body.universities-catalog-page .catalog-main{padding-left:16px!important;padding-right:16px!important}body.universities-catalog-page .university-filter{padding:20px 16px}body.universities-catalog-page .filter-selects{grid-template-columns:1fr}body.universities-catalog-page .filter-checks{align-items:flex-start;flex-direction:column}body.universities-catalog-page .catalog-grid{grid-template-columns:1fr}}

/* Static university and direction pages. */
body.static-university-page{margin:0;background:#fafafa;color:#1d2430;font-size:16px;line-height:1.45}
body.static-university-page main{max-width:1640px!important;margin:0 auto!important;padding:28px 20px 72px!important}
body.static-university-page .back{display:inline-block;margin-bottom:16px}
body.static-university-page .hero{background:#fff8df;border:1px solid #f0d98e;border-radius:10px;padding:24px;margin-bottom:18px}
body.static-university-page .hero h1{margin:0 0 14px;font-size:clamp(25px,3vw,42px);line-height:1.12;color:#12233c}
body.static-university-page .contacts{color:#687386;display:grid;gap:3px;font-size:16px}
body.static-university-page .contacts>div{display:flex;align-items:baseline;gap:5px}
body.static-university-page .contacts b{font-weight:700;color:#687386}
body.static-university-page .contact-icon{display:inline-block;width:20px;text-align:center;font-size:17px;font-family:"Apple Color Emoji","Segoe UI Emoji",sans-serif}
body.static-university-page .docs{margin-top:14px}
body.static-university-page .docs summary{font-size:18px;font-weight:700;cursor:pointer;color:#1b1b1b}
body.static-university-page .docs ul{display:none;margin:8px 0 0;padding-left:20px}
body.static-university-page .doc-section{margin:0 0 12px}
body.static-university-page .doc-section h3{margin:0 0 8px;font-size:18px;line-height:1.25;color:#1b1b1b}
body.static-university-page .doc-links{display:flex;flex-wrap:wrap;gap:0 24px;min-height:1.25em;font-size:16px;line-height:1.45}
body.static-university-page .doc-links a{color:#1769e8;text-decoration:none}
body.static-university-page .doc-links a:hover{text-decoration:underline}
body.static-university-page .badge{display:inline-block;background:#1769e8;color:#fff;border-radius:7px;padding:9px 13px;font-weight:700;margin:4px 0 16px}
body.static-university-page .stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:20px}
body.static-university-page .stat{background:#eaf2ff;border:1px solid #73a5ff;border-radius:9px;padding:14px}
body.static-university-page .stat b{display:block;font-size:25px;color:#12233c}
body.static-university-page .stat span{color:#687386;font-size:13px}
body.static-university-page .toolbar{background:#fff;border:1px solid #e2e5ea;padding:14px;border-radius:9px;margin-bottom:14px}
body.static-university-page .toolbar input{width:100%;font:inherit;padding:10px 12px;border:1px solid #b8c0cc;border-radius:7px}
body.static-university-page .direction{background:#fff;border:1px solid #e2e5ea;border-radius:9px;margin:10px 0;overflow:hidden}
body.static-university-page .direction summary{cursor:pointer;list-style:none;padding:15px 17px;display:grid;grid-template-columns:130px 1fr auto;gap:14px;align-items:start}
body.static-university-page .direction summary::-webkit-details-marker{display:none}
body.static-university-page .code{font-weight:700;color:#687386}
body.static-university-page .direction-name{font-weight:700}
body.static-university-page .direction-meta{color:#687386;font-size:14px}
body.static-university-page .programs{border-top:1px solid #e2e5ea;padding:0 17px 14px}
body.static-university-page .program{padding:12px 0;border-bottom:1px solid #e2e5ea;display:grid;grid-template-columns:minmax(220px,1fr) 1.2fr minmax(150px,.8fr) 90px 120px;gap:12px;align-items:start}
body.static-university-page .program:last-child{border-bottom:0}
body.static-university-page .program-header{padding:8px 0 5px;border-bottom:1px solid #e2e5ea;color:#687386;font-size:11px;font-weight:700}
body.static-university-page .program-links-heading{line-height:1.25}
body.static-university-page .program-header .static-cutoffs{display:flex;flex-direction:column;align-items:stretch;gap:4px}
body.static-university-page .program-header .static-cutoffs strong{font-size:11px;font-weight:700;line-height:1.2}
body.static-university-page .program-header .cutoff-years{display:flex;gap:8px}
body.static-university-page .program-header .cutoff-years span{flex:1;white-space:nowrap}
body.static-university-page .program-header>div:nth-child(4),body.static-university-page .program-header>div:nth-child(5){text-align:left}
body.static-university-page .program-name{font-weight:600}
body.static-university-page .muted{color:#687386;font-size:13px}
body.static-university-page .program-links{display:flex;flex-direction:column;gap:3px}
body.static-university-page .program-links a{display:block}
body.static-university-page .static-cutoffs{display:flex;flex-wrap:wrap;gap:8px}
body.static-university-page .static-cutoff{display:flex;align-items:baseline;gap:5px;min-width:64px;padding:6px 8px;border-radius:7px;background:#eaf2ff;color:#687386;font-size:12px;line-height:1.2}
body.static-university-page .static-cutoff b{color:#12233c;font-size:16px;white-space:nowrap}
body.static-university-page .static-cutoff span{font-size:11px}
body.static-university-page .outcomes{margin-top:20px;border-left:4px solid #1769e8;background:#eaf2ff;padding:16px}
body.static-university-page .outcomes h2{margin:0 0 10px;font-size:20px}
body.static-university-page .table-wrap{overflow-x:auto}
body.static-university-page table{width:100%;border-collapse:collapse;background:#fff}
body.static-university-page th,body.static-university-page td{border-bottom:1px solid #e2e5ea;padding:10px;text-align:left;vertical-align:top}
body.static-university-page th{background:#f1f3f5;color:#687386;font-size:13px}
@media(max-width:800px){body.static-university-page .stats{grid-template-columns:repeat(2,1fr)}body.static-university-page .direction summary{grid-template-columns:1fr}body.static-university-page .program{grid-template-columns:1fr}body.static-university-page .program-header{display:none}body.static-university-page .static-cutoffs{margin-top:2px}body.static-university-page .hero h1{font-size:28px}}

/* Canonical university card layout. Keep this beside the base static-page rules. */
html body.static-university-page .site-header-title {
  display: none !important;
}

html body.static-university-page main {
  width: var(--site-page-width) !important;
  max-width: 1640px !important;
  padding-top: 28px !important;
}

html body.static-university-page .hero {
  margin: 0 0 20px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.static-university-page .hero h1 {
  max-width: 1040px;
  margin: 0 0 20px !important;
  color: #1b1b1b !important;
  font-size: 30px !important;
  font-weight: 700;
  line-height: 1.2 !important;
}

html body.static-university-page .university-characteristics {
  margin: 0 0 12px;
  padding: 18px;
  border: 1px solid var(--block-blue-border);
  border-radius: 8px;
  background: var(--block-blue-bg);
}

html body.static-university-page .university-characteristics h2,
html body.static-university-page .docs-title {
  margin: 0 0 14px;
  color: #1b1b1b;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

html body.static-university-page .university-characteristics dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px 22px;
  margin: 0;
}

html body.static-university-page .university-characteristic {
  min-width: 0;
}

html body.static-university-page .university-characteristic dt {
  margin: 0 0 2px;
  color: #687386;
  font-size: 12px;
  font-weight: 500;
}

html body.static-university-page .university-characteristic dd {
  margin: 0;
  color: #26364d;
  font-size: 14px;
  font-weight: 600;
}

html body.static-university-page .contacts {
  display: grid !important;
  gap: 7px !important;
  margin: 0 !important;
  padding: 16px 18px !important;
  border: 1px solid var(--block-yellow-border) !important;
  border-radius: 8px !important;
  background: var(--block-yellow-bg) !important;
  color: #4f5968 !important;
  font-size: 14px !important;
}

html body.static-university-page .contacts b {
  color: #303846 !important;
  font-weight: 600 !important;
}

html body.static-university-page .docs {
  display: block;
  margin: 12px 0 0 !important;
  padding: 18px !important;
  border: 1px solid var(--block-blue-border) !important;
  border-radius: 8px !important;
  background: var(--block-blue-bg) !important;
  color: #303846;
}

html body.static-university-page details.docs > summary {
  display: none !important;
}

html body.static-university-page details.docs > ul {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html body.static-university-page .doc-section h3 {
  margin: 0 0 5px !important;
  color: #303846 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

html body.static-university-page .doc-links {
  min-height: 18px;
  font-size: 14px !important;
  line-height: 1.45;
}

body.universities-catalog-page .pc-statuses {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 7px;
}

body.universities-catalog-page .pc-status {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 3px 8px;
  border: 1px solid #d8e1ec;
  border-radius: 999px;
  background: #f7f9fc;
  color: #506079;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.2;
}

body.universities-catalog-page .pc-status-military {
  border-color: var(--block-yellow-border);
  background: var(--block-yellow-bg);
  color: #8b5700;
}

body.universities-catalog-page .pc-status-hostel {
  border-color: #b9e5ca;
  background: #effaf3;
  color: #217a43;
}

@media (max-width: 900px) {
  html body.static-university-page main {
    width: 100% !important;
    padding: 24px 16px 54px !important;
  }

  html body.static-university-page .university-characteristics dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  html body.static-university-page .hero h1 {
    font-size: 24px !important;
  }

  html body.static-university-page .university-characteristics,
  html body.static-university-page .contacts,
  html body.static-university-page .docs {
    padding: 16px !important;
  }

  html body.static-university-page .university-characteristics dl {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

/* Main application page: extracted from the canonical homepage. */
body.site-app-page{
    --green: #1a7f37; --green-bg: #e6f4ea;
    --red: #c0362c; --amber: #9a6700; --amber-bg: #fff8e1;
    --border: #e2e2e2; --muted: #6b7280; --bg: #fafafa;
    --blue: #1b6ef3; --blue-bg: #eaf2ff;
    --card: #fff; --line: #d8e8ff; --ink: #12233c; --ink-2: #566377; --ink-3: #9aa8bd;
    --blue-soft: #dcebfd; --warn-bg: #fff7e8; --warn-ink: #b45309; --ok-bg: #e8f8ef; --ok-ink: #168344;
    --shadow: 0 12px 28px rgba(15,41,66,.06);
  }
  body.site-app-page *{ box-sizing: border-box; }
  body.site-app-page{
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    margin: 0; background: var(--bg); color: #1b1b1b; line-height: 1.5;
  }
  body.site-app-page header{
    background: #fff; border-bottom: 1px solid var(--border);
    padding: 18px 28px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px;
  }
  body.site-app-page header h1{ font-size: 18px; margin: 0; }
  body.site-app-page header .meta{ color: var(--muted); font-size: 13px; }
  body.site-app-page header{ display: block; padding: 14px 28px 18px; }
  body.site-app-page .site-topbar{ display: flex; align-items: center; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--border); gap: 28px; }
  body.site-app-page .site-logo{ display: flex; align-items: center; gap: 8px; text-decoration: none; color: #1b1b1b; font-weight: 700; font-size: 15px; }
  body.site-app-page .site-logo img{ height: 30px; width: auto; border-radius: 6px; }
  body.site-app-page .site-header-main{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }
  body.site-app-page .site-topbar-left{ display: flex; align-items: center; gap: 28px; min-width: 0; width: 100%; }
  body.site-app-page .site-nav{ display: flex; gap: 4px; align-items: center; flex-wrap: wrap; justify-content: space-between; flex: 1; }
  /* Общий отступ страницы увеличен (было 20px 16px 60px) -- по фидбоку
     "ощущение слипленности": больше воздуха по краям и снизу. */
  body.site-app-page main{ max-width: 1200px; margin: 0 auto; padding: 28px 20px 72px; }
  body.site-app-page .tabs{ display: flex; gap: 4px; margin-bottom: 20px; border-bottom: 1px solid var(--border); }
  body.site-app-page .tab-btn{
    padding: 10px 16px; border: none; background: none; cursor: pointer;
    font-size: 14px; color: var(--muted); border-bottom: 2px solid transparent;
    text-decoration: none; display: inline-block;
  }
  body.site-app-page .tab-btn.active{ color: #1b1b1b; border-bottom-color: #1b1b1b; font-weight: 600; }
  body.site-app-page .tab-btn.cta-2027{
    background: #ffbf17; color: #15243a; border-bottom: 4px solid #f08a00; border-radius: 8px;
    font-weight: 800; margin-left: 8px; padding: 9px 18px;
  }
  body.site-app-page .tab-btn.cta-2027.active{ border-bottom-color: #f08a00; color: #15243a; }
  body.site-app-page .panel{ display: none; }
  body.site-app-page .panel.active{ display: block; }
  body.site-app-page .search-row{ display: flex; gap: 8px; margin-bottom: 16px; flex-wrap: wrap; }
  body.site-app-page input[type=text],body.site-app-page input[type=number]{
    flex: 1; min-width: 220px; padding: 10px 12px; border: 1px solid var(--border);
    border-radius: 8px; font-size: 14px;
  }
  body.site-app-page button.primary{
    padding: 10px 18px; border: none; border-radius: 8px; background: #1b1b1b; color: #fff;
    font-size: 14px; cursor: pointer;
  }
  body.site-app-page button.primary:hover{ background: #333; }
  body.site-app-page button.secondary{
    padding: 8px 14px; border: 1px solid var(--border); border-radius: 8px; background: #fff;
    font-size: 13px; cursor: pointer; color: #1b1b1b;
  }
  body.site-app-page button.secondary:hover{ background: #f3f3f3; }
  body.site-app-page button:disabled{ opacity: 0.5; cursor: default; }
  body.site-app-page .sort-row{ display: flex; align-items: center; gap: 8px; margin-bottom: 14px; flex-wrap: wrap; }
  body.site-app-page .sort-row .lbl{ color: var(--muted); font-size: 13px; }
  body.site-app-page .sort-row select{
    padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; background: #fff;
    font-size: 13px; color: #1b1b1b; max-width: 260px;
  }
  body.site-app-page button.sort-btn.active{ background: var(--blue); color: #fff; border-color: var(--blue); }
  body.site-app-page a.link-btn{
    display: inline-block; padding: 6px 12px; border: 1px solid var(--border); border-radius: 8px;
    font-size: 13px; color: #1b1b1b; text-decoration: none; background: #fff;
  }
  body.site-app-page a.link-btn:hover{ background: #f3f3f3; }
  body.site-app-page table{ width: 100%; border-collapse: collapse; background: #fff; border-radius: 10px; overflow: hidden; }
  body.site-app-page th,body.site-app-page td{ text-align: left; padding: 5px 5px; font-size: 13px; border-bottom: 1px solid var(--border); white-space: nowrap; }
  body.site-app-page th{ background: #f3f3f3; font-weight: 600; color: #444; position: sticky; top: 0; }
  body.site-app-page th.sortable{ cursor: pointer; user-select: none; }
  body.site-app-page th.sortable:hover{ background: #e8e8e8; }
  body.site-app-page th.sortable .arrow{ color: var(--muted); font-size: 11px; margin-left: 4px; }
  body.site-app-page tr.consent-yes{ background: var(--green-bg); }
  body.site-app-page tr.highlight-row{ background: var(--blue-bg) !important; outline: 2px solid var(--blue); outline-offset: -2px; }
  body.site-app-page tr:hover{ background: #f5f5f5; }
  body.site-app-page tr.consent-yes:hover{ background: #dcefe1; }
  body.site-app-page tr.highlight-row:hover{ background: #dcebfd !important; }
  body.site-app-page tr.own-row-toolbar td{ background: #dcebfd; border-top: none; padding: 8px 10px; white-space: normal; font-size: 13px; }
  body.site-app-page .own-row-toolbar-inner{ display: flex; gap: 16px; flex-wrap: wrap; }
  body.site-app-page tr.own-row-toolbar label{ display: inline-flex; align-items: center; gap: 5px; cursor: pointer; }
  body.site-app-page .badge{ display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 12px; font-weight: 600; }
  body.site-app-page .badge.yes{ background: var(--green); color: #fff; }
  body.site-app-page .badge.no{ background: #eee; color: var(--muted); }
  /* в таблице конкурсного списка бейдж согласия -- не таблетка вокруг слова,
     а сплошная квадратная полоса на всю ширину ячейки (поверх уже подсвеченной
     зелёным строки -- получается двухтоновая полоска) */
  body.site-app-page .detail-table .badge{ display: block; width: 100%; box-sizing: border-box; text-align: center; border-radius: 0; padding: 4px 0; }
  body.site-app-page .fresh-consent-badge{
    display: block; margin-top: 3px; font-size: 11px; font-weight: 600; color: var(--amber);
    background: var(--amber-bg); padding: 1px 3px; border-radius: 0; width: fit-content; white-space: nowrap;
  }
  body.site-app-page .card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 16px; margin-bottom: 12px; }
  body.site-app-page .card h3{ margin: 0 0 4px; font-size: 15px; }
  body.site-app-page .card .sub{ color: var(--muted); font-size: 13px; margin-bottom: 10px; }
  body.site-app-page .card .actions{ margin-top: 10px; }
  body.site-app-page .empty{ color: var(--muted); padding: 24px; text-align: center; }
  body.site-app-page .table-wrap{ overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; max-height: 70vh; overflow-y: auto; }
  body.site-app-page .table-wrap.full-list{ max-height: none; overflow-y: visible; }
  body.site-app-page .note{ font-size: 12px; color: var(--muted); margin-top: 8px; }
  body.site-app-page .list-footer{ display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 14px; }
  body.site-app-page .elsewhere-link{ color: var(--blue); text-decoration: none; }
  body.site-app-page .elsewhere-link:hover{ text-decoration: underline; }
  body.site-app-page .breadcrumb{ font-size: 13px; color: var(--muted); margin-bottom: 10px; }
  body.site-app-page .breadcrumb a{ color: var(--blue); text-decoration: none; }
  body.site-app-page .breadcrumb a:hover{ text-decoration: underline; }
  body.site-app-page .back-link{ display: inline-block; margin-bottom: 14px; color: var(--blue); text-decoration: none; font-size: 14px; }
  body.site-app-page .back-link:hover{ text-decoration: underline; }
  /* переключатель "Списки: Конкурсные / Подавших документы" -- по образцу
     самих Госуслуг (см. их страницу программы) */
  body.site-app-page .list-toggle{ display: flex; gap: 8px; margin-bottom: 10px; }
  body.site-app-page .list-toggle-btn{
    padding: 6px 14px; border-radius: 8px; border: 1px solid var(--border);
    color: var(--muted); text-decoration: none; font-size: 13px; font-weight: 600;
    background: var(--card-bg, #fff);
  }
  body.site-app-page .list-toggle-btn:hover{ border-color: var(--blue); color: var(--blue); }
  body.site-app-page .list-toggle-btn.active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-app-page .detail-header h2{ margin: 0 0 6px; font-size: 22px; }
  body.site-app-page .detail-header .university-link{ color: var(--blue); text-decoration: none; font-weight: 600; }
  body.site-app-page .detail-header .university-link:hover{ text-decoration: underline; }
  body.site-app-page .detail-header .sub{ color: var(--muted); font-size: 13px; margin-bottom: 16px; }
  body.site-app-page .detail-stats{ display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
  body.site-app-page .stat-box{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 12px 16px; min-width: 120px; }
  body.site-app-page .stat-box .val{ font-size: 22px; font-weight: 700; }
  body.site-app-page .stat-box .lbl{ font-size: 12px; color: var(--muted); margin-top: 2px; }
  body.site-app-page .filter-row{ display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin-bottom: 14px; font-size: 13px; }
  body.site-app-page .filter-row label{ display: flex; align-items: center; gap: 6px; cursor: pointer; }
  /* Excel-подобные фильтры по колонкам в конкурсном списке (задача #33) */
  body.site-app-page .filter-th{ position: relative; }
  body.site-app-page .col-filter-btn{ cursor: pointer; color: var(--muted); font-size: 11px; margin-left: 3px; user-select: none; }
  body.site-app-page .col-filter-btn:hover{ color: var(--blue); }
  body.site-app-page .col-filter-btn.active{ color: var(--blue); font-weight: 700; }
  body.site-app-page .col-filter-popover{
    position: absolute; top: 100%; left: 0; z-index: 20; background: #fff; border: 1px solid var(--border);
    border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.12); padding: 8px; min-width: 200px; max-height: 280px;
    overflow-y: auto; font-weight: 400; text-transform: none; letter-spacing: normal; white-space: normal;
  }
  body.site-app-page .col-filter-actions{ display: flex; gap: 8px; margin-bottom: 6px; border-bottom: 1px solid var(--border); padding-bottom: 6px; }
  body.site-app-page .col-filter-actions button{ border: none; background: none; color: var(--blue); font-size: 12px; cursor: pointer; padding: 0; }
  body.site-app-page .col-filter-actions button:hover{ text-decoration: underline; }
  body.site-app-page .col-filter-options{ display: flex; flex-direction: column; gap: 4px; }
  body.site-app-page .col-filter-option{ display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 400; cursor: pointer; white-space: nowrap; }
  body.site-app-page #col-filters-reset-btn{ padding: 4px 10px; font-size: 12px; }
  body.site-app-page .pagination{ display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 16px; }
  body.site-app-page .pagination .page-info{ font-size: 13px; color: var(--muted); }
  body.site-app-page .detail-table-wrap{ overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; }
  body.site-app-page .detail-table-wrap table.detail-table{ table-layout: fixed; }
  /* Ширины колонок задаются динамически через <colgroup> в JS (tableColgroupHtml) --
     число колонок меняется (платные места добавляют колонку "Договор", а
     "Подавшие документы" не имеет ОВП/ВПП), фиксированные nth-child были некорректны. */
  body.site-app-page .detail-table-wrap table.detail-table td{ white-space: normal; word-break: break-word; line-height: 1.35; }
  body.site-app-page .detail-table-wrap table.detail-table .consent-target-inner{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body.site-app-page .benefit-badge{ color: var(--blue); font-weight: 700; font-size: 12px; white-space: nowrap; }
  body.site-app-page .benefit-badge.vpp{ color: var(--amber); }
  body.site-app-page .benefit-badge.paid{ color: var(--green); }
  body.site-app-page .leaving-link{ color: var(--amber); font-weight: 600; text-decoration: none; }
  body.site-app-page .leaving-link:hover{ text-decoration: underline; }
  body.site-app-page .estimate-tag{ color: var(--muted); font-weight: 400; font-size: 11px; }
  body.site-app-page .consent-forecast{ font-size: 12px; color: var(--muted); margin-top: 3px; }
  body.site-app-page .catalog-filters{
    background: #fff; border: 1px solid var(--border); border-radius: 10px;
    padding: 14px 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 12px;
  }
  body.site-app-page .catalog-filter-group{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
  body.site-app-page .catalog-filter-group .cf-title{ flex-basis: 100%; font-size: 12px; color: var(--muted); font-weight: 600; text-transform: uppercase; letter-spacing: .02em; }
  body.site-app-page .catalog-filter-group .cf-chips{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-app-page .catalog-filter-group .cf-level-groups{ flex-basis: 100%; display: flex; flex-direction: column; gap: 10px; }
  body.site-app-page .cf-level-group-title{ color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; margin-bottom: 6px; }
  body.site-app-page .catalog-chip{
    display: inline-flex; align-items: center; gap: 5px; padding: 5px 10px;
    border: 1px solid var(--border); border-radius: 999px; font-size: 13px; cursor: pointer; user-select: none; background: #fff;
  }
  body.site-app-page .catalog-chip:has(input:checked){ background: var(--blue-bg); border-color: var(--blue); color: var(--blue); font-weight: 600; }
  body.site-app-page .catalog-chip input{ margin: 0; }
  body.site-app-page .cf-count{ color: var(--muted); font-size: 11px; }
  body.site-app-page .catalog-chip:has(input:checked) .cf-count{ color: var(--blue); }
  body.site-app-page .catalog-filter-cost{ padding-top: 2px; }
  body.site-app-page .catalog-cost-lbl{ font-size: 13px; color: var(--muted); display: inline-flex; align-items: center; gap: 6px; }
  body.site-app-page .catalog-cost-lbl input{ width: 120px; padding: 5px 8px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; }
  body.site-app-page .catalog-filter-sort{ border-top: 1px solid var(--border); padding-top: 10px; flex-wrap: wrap; }
  body.site-app-page .catalog-filter-sort select{ padding: 6px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; background: #fff; }
  body.site-app-page .catalog-filter-section{ border-top: 1px solid var(--border); padding-top: 10px; }
  body.site-app-page .catalog-filter-section:first-child{ border-top: none; padding-top: 0; }
  body.site-app-page .catalog-filter-section summary{
    cursor: pointer; font-size: 14px; font-weight: 600; list-style: none; display: flex; align-items: center; gap: 8px;
  }
  body.site-app-page .catalog-filter-section summary::-webkit-details-marker{ display: none; }
  body.site-app-page .catalog-filter-section summary::before{ content: "▸"; color: var(--muted); font-size: 11px; transition: transform .15s; }
  body.site-app-page .catalog-filter-section[open] summary::before{ transform: rotate(90deg); }
  body.site-app-page .catalog-filter-section > *:not(summary){ margin-top: 10px; }
  body.site-app-page .cfs-count{ color: var(--blue); font-size: 12px; font-weight: 600; }
  body.site-app-page .catalog-direction-search{ display: flex; flex-direction: column; gap: 8px; }
  body.site-app-page .direction-search-row{ display: flex; gap: 8px; }
  body.site-app-page .direction-search-row .okso-search-wrap > input{
    width: 100%; box-sizing: border-box; padding: 6px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px;
  }
  body.site-app-page .selected-chips{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-app-page .selected-chip{
    display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px;
    background: var(--blue-bg); border: 1px solid var(--blue); border-radius: 999px; font-size: 12px; color: var(--blue); font-weight: 600;
  }
  body.site-app-page .selected-chip .remove-x{ cursor: pointer; font-weight: 700; }
  /* Мульти-выбор направления с фильтром (2026-09-05) -- раньше был обычный
     native <input list="datalist">: клик по варианту сразу закрывал список
     и очищал поле, поэтому отметить несколько направлений подряд можно было
     только вводя название заново каждый раз. Теперь список -- свой div с
     чекбоксами, который не закрывается при клике -- можно отметить сколько
     угодно вариантов, не перепечатывая запрос. */
  body.site-app-page .okso-search-wrap{ position: relative; flex: 1; }
  body.site-app-page .okso-ms-dropdown{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.08); max-height: 280px; overflow-y: auto; z-index: 20; }
  body.site-app-page .okso-ms-dropdown.open{ display: block; }
  body.site-app-page .okso-ms-item{ display: flex; align-items: center; gap: 8px; padding: 8px 12px; cursor: pointer; font-size: 13px; }
  body.site-app-page .okso-ms-item:hover{ background: var(--blue-bg); }
  body.site-app-page .okso-ms-item input[type="checkbox"]{ flex: none; }
  body.site-app-page .okso-ms-code{ color: var(--muted); font-size: 12px; }
  body.site-app-page .okso-ms-empty,body.site-app-page .okso-ms-more{ padding: 8px 12px; color: var(--muted); font-size: 12px; }
  body.site-app-page .cf-note{ font-size: 12px; color: var(--muted); }
  body.site-app-page .score-intro{ font-size: 13px; color: var(--muted); margin-bottom: 14px; line-height: 1.5; max-width: 720px; }
  body.site-app-page .score-form{ display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-bottom: 14px; }
  body.site-app-page .score-field{ display: flex; flex-direction: column; gap: 4px; }
  body.site-app-page .score-field label{ font-size: 13px; color: var(--muted); }
  body.site-app-page .score-field input{
    padding: 7px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 14px;
  }
  body.site-app-page .score-actions{ display: flex; gap: 10px; margin-bottom: 16px; }
  body.site-app-page .score-result-uni{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; }
  body.site-app-page .score-result-uni .sru-name{ font-weight: 700; font-size: 15px; margin-bottom: 8px; }
  body.site-app-page .score-result-row{
    display: flex; justify-content: space-between; align-items: center; gap: 10px;
    font-size: 13px; padding: 7px 8px; border-radius: 6px; cursor: pointer; border: 1px solid var(--border); margin-top: 6px; background: var(--bg);
  }
  body.site-app-page .score-result-row:hover{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-app-page .score-result-row .srr-info{ color: #1b1b1b; }
  body.site-app-page .score-result-row .srr-nums{ color: var(--muted); white-space: nowrap; }
  body.site-app-page .catalog-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 18px; margin-bottom: 20px; }
  body.site-app-page .program-card{
    background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 20px;
    display: flex; flex-direction: column; gap: 12px; transition: box-shadow .15s, border-color .15s;
  }
  body.site-app-page .program-card:hover{ border-color: var(--blue); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
  /* Вся карточка вуза кликабельна -- ведёт на список направлений этого вуза
     (кнопка "Показать направления" убрана как избыточная). */
  body.site-app-page .program-card-link{ cursor: pointer; }
  body.site-app-page .program-card-link:hover .pc-name{ color: var(--blue); }
  body.site-app-page .pc-top{ display: flex; gap: 10px; align-items: flex-start; }
  body.site-app-page .pc-icon{
    flex: 0 0 auto; width: 38px; height: 38px; border-radius: 10px; color: #fff;
    display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px; letter-spacing: .01em;
  }
  body.site-app-page .pc-titlewrap{ flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
  body.site-app-page .pc-name{ font-size: 15px; font-weight: 700; line-height: 1.3; }
  body.site-app-page .pc-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-app-page .pc-badge{ font-size: 11px; padding: 3px 8px; background: var(--bg); border: 1px solid var(--border); border-radius: 999px; color: var(--muted); font-weight: 600; }
  body.site-app-page .pc-stats-line{ font-size: 12px; color: var(--muted); }
  body.site-app-page .card-accent{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-app-page .accent-chip{ font-size: 12px; font-weight: 700; padding: 6px 10px; border-radius: 8px; }
  body.site-app-page .accent-budget{ background: var(--green-bg); color: var(--green); }
  body.site-app-page .accent-cost{ background: var(--blue-bg); color: var(--blue); }
  /* ---- Подбор ВУза: группировка по шансам ---- */
  body.site-app-page .cf-checkbox-group{ display: flex; gap: 14px; flex-wrap: wrap; }
  body.site-app-page .pick-tier-section{ margin: 22px 0 10px; }
  body.site-app-page .pick-tier-title{ font-size: 15px; font-weight: 700; display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
  body.site-app-page .pick-tier-dot{ width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
  body.site-app-page .pick-tier-high .pick-tier-dot{ background: var(--green); }
  body.site-app-page .pick-tier-medium .pick-tier-dot{ background: var(--amber); }
  body.site-app-page .pick-tier-low .pick-tier-dot{ background: var(--red); }
  body.site-app-page span.pick-tier-high{ color: var(--green); font-weight: 600; }
  body.site-app-page span.pick-tier-medium{ color: var(--amber); font-weight: 600; }
  body.site-app-page span.pick-tier-low{ color: var(--red); font-weight: 600; }
  body.site-app-page .pick-tier-count{ color: var(--muted); font-weight: 500; font-size: 13px; }
  body.site-app-page .pick-uni-card{ border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; background: #fff; }
  body.site-app-page .pick-uni-head{ display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
  body.site-app-page .pick-uni-name{ font-weight: 700; font-size: 15px; }
  body.site-app-page .pick-uni-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-app-page .pick-match-row{ display: flex; flex-direction: column; align-items: stretch; gap: 4px; padding: 10px 0; border-top: 1px solid var(--border); cursor: pointer; }
  body.site-app-page .pick-match-row:hover{ background: var(--blue-bg); }
  body.site-app-page .pick-match-row:first-of-type{ border-top: none; }
  body.site-app-page .pick-match-direction{ font-weight: 700; font-size: 14px; }
  body.site-app-page .pick-match-program{ font-size: 13px; color: #444; margin-top: 1px; }
  body.site-app-page .pick-match-level-row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 3px; }
  body.site-app-page .pick-match-exams{ color: var(--muted); font-size: 12px; }
  body.site-app-page .pick-avg-score-row{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-app-page .pick-avg-score-row input{ width: 100px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; }
  body.site-app-page .pick-match-tier-badge{ font-size: 11px; font-weight: 700; padding: 3px 9px; border-radius: 999px; white-space: nowrap; }
  body.site-app-page .pick-match-tier-high{ background: var(--green-bg); color: var(--green); }
  body.site-app-page .pick-match-tier-medium{ background: var(--amber-bg); color: var(--amber); }
  body.site-app-page .pick-match-tier-low{ background: #fbe9e7; color: var(--red); }
  body.site-app-page .pick-match-level{ color: var(--muted); font-size: 13px; }
  body.site-app-page .pick-match-nums{ color: var(--muted); font-size: 12px; white-space: nowrap; }
  body.site-app-page .pick-heuristic-note{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }
  /* Богаче карточка -- перенос части элементов дизайна карточки конкурента
     (Поступашкин), обсуждение 2026-09-05: профиль отдельной строкой, разбор
     экзаменов с минимумами по группам, числовой отступ ("не хватает N" /
     "запас +N") рядом с текстовым тиром, БВИ-предупреждение, три среза
     проходных по годам и процент шансов как отдельный бейдж. */
  body.site-app-page .pick-match-top{ display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
  body.site-app-page .pick-match-content{ flex: 1; min-width: 0; }
  body.site-app-page .pick-match-profile{ color: var(--blue); font-size: 13px; margin-top: 2px; }
  body.site-app-page .pick-match-exams-detailed{ color: var(--muted); font-size: 12px; margin-top: 5px; }
  body.site-app-page .pick-exam-row{ display: flex; gap: 6px; flex-wrap: wrap; line-height: 1.45; }
  body.site-app-page .pick-exam-row + .pick-exam-row{ margin-top: 2px; }
  body.site-app-page .pick-exam-label{ color: var(--text); font-weight: 700; }
  body.site-app-page .entrance-tests-list:has(.entrance-test-line){ display: block; }
  body.site-app-page .entrance-test-line{ padding: 3px 0; line-height: 1.45; }
  body.site-app-page .entrance-test-line-choice{ color: var(--muted); }
  body.site-app-page .pick-match-bvi-warning{ color: var(--red); font-size: 12px; margin-top: 5px; font-weight: 600; }
  body.site-app-page .pick-match-score-line{ font-size: 13px; margin-top: 7px; }
  body.site-app-page .pick-match-score-ok{ color: var(--green); font-weight: 700; }
  body.site-app-page .pick-match-score-bad{ color: var(--red); font-weight: 700; }
  body.site-app-page .pick-match-score-neutral{ color: var(--muted); font-weight: 700; }
  body.site-app-page .pick-match-cutoffs-row{ display: flex; flex-wrap: wrap; gap: 6px; margin-top: 7px; }
  body.site-app-page .pick-match-cutoff-chip{ font-size: 11px; color: var(--muted); background: var(--blue-bg); border: 1px solid var(--border); border-radius: 6px; padding: 3px 8px; white-space: nowrap; }
  body.site-app-page .pick-match-cutoff-chip b{ color: #222; font-weight: 700; }
  body.site-app-page .pick-match-percent{ flex: none; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px 12px; border-radius: 10px; min-width: 56px; }
  body.site-app-page .pick-match-percent-value{ font-size: 19px; font-weight: 700; line-height: 1.1; }
  body.site-app-page .pick-match-percent-label{ font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; margin-top: 2px; white-space: nowrap; }
  body.site-app-page .pick-match-percent-high{ background: var(--green-bg); color: var(--green); }
  body.site-app-page .pick-match-percent-medium{ background: var(--amber-bg); color: var(--amber); }
  body.site-app-page .pick-match-percent-low{ background: #fbe9e7; color: var(--red); }
  body.site-app-page .pick-match-bottom-row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 7px; }
  body.site-app-page .pick-paywall{
    background: #fff; border: 1px solid var(--blue); border-radius: 10px; padding: 14px 16px;
    margin: 0 0 14px; display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap;
  }
  body.site-app-page .pick-paywall-title{ font-weight: 800; font-size: 15px; margin-bottom: 2px; }
  body.site-app-page .pick-paywall-text{ color: var(--muted); font-size: 13px; }
  body.site-app-page .pick-paywall-actions{ display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
  body.site-app-page .pick-payment-note{ color: var(--green); font-size: 13px; font-weight: 700; margin-bottom: 12px; }
  body.site-app-page .directions-stat-intro{ font-size: 13px; color: var(--muted); margin: 0 0 14px; max-width: 860px; }
  body.site-app-page .directions-filter-card{
    background: #fff; border: 1px solid var(--border); border-radius: 12px;
    padding: 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 12px;
  }
  body.site-app-page .directions-filter-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  body.site-app-page .directions-filter-field{ display: flex; flex-direction: column; gap: 6px; min-width: 0; }
  body.site-app-page .directions-filter-field label,body.site-app-page .directions-filter-title{
    font-size: 12px; color: var(--muted); font-weight: 700; text-transform: uppercase; letter-spacing: .02em;
  }
  body.site-app-page .directions-filter-field > input,body.site-app-page .directions-filter-field .okso-search-wrap > input,body.site-app-page .directions-filter-field .competition-city-wrap > input{
    width: 100%; min-width: 0; padding: 9px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px;
  }
  body.site-app-page #panel-directions .okso-search-wrap{ display: flex; flex: none; flex-direction: column; gap: 6px; }
  body.site-app-page #panel-directions .directions-filter-field input[type="text"],body.site-app-page #panel-directions .directions-filter-field input[type="number"]{
    flex: none; height: 42px; line-height: 1.2;
  }
  body.site-app-page #panel-directions .competition-city-wrap{
    flex: none; height: 42px; min-height: 42px; align-self: stretch;
  }
  body.site-app-page #panel-directions .competition-city-suggest{
    top: calc(100% + 6px);
  }
  body.site-app-page #panel-directions .okso-ms-dropdown{
    position: static; left: auto; right: auto; top: auto; width: 100%;
    box-shadow: none; max-height: 260px; margin-top: 0; z-index: 5;
  }
  body.site-app-page #panel-directions .okso-ms-item{
    color: #1b1b1b; background: #fff; line-height: 1.35; min-height: 38px;
    justify-content: flex-start; white-space: normal;
  }
  body.site-app-page #panel-directions .okso-ms-item input[type="checkbox"]{
    width: auto; min-width: 0; padding: 0; flex: 0 0 auto;
  }
  body.site-app-page #panel-directions .okso-ms-item span:first-of-type{ flex: 1; min-width: 0; }
  body.site-app-page #panel-directions .okso-ms-code{ flex: none; }
  body.site-app-page .directions-filter-row{ display: flex; flex-wrap: wrap; align-items: flex-start; gap: 10px; }
  body.site-app-page .directions-filter-row .catalog-filter-group{ flex: 1 1 240px; }
  body.site-app-page #panel-directions .directions-filter-row .catalog-filter-group{ align-self: flex-start; }
  body.site-app-page .directions-filter-actions{ display: flex; gap: 10px; flex-wrap: wrap; align-items: center; border-top: 1px solid var(--border); padding-top: 12px; }
  body.site-app-page .directions-summary{ display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
  body.site-app-page .directions-summary-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 12px; }
  body.site-app-page .directions-summary-card .val{ font-size: 20px; font-weight: 800; color: var(--blue); line-height: 1.1; }
  body.site-app-page .directions-summary-card .lbl{ font-size: 11px; color: var(--muted); margin-top: 4px; }
  body.site-app-page .directions-view-controls{
    display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
    background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 10px 12px; margin-bottom: 12px;
  }
  body.site-app-page .directions-control-group{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
  body.site-app-page .directions-control-label{ color: var(--muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; }
  body.site-app-page .directions-toggle-btn{
    border: 1px solid var(--border); background: #fff; color: #1b1b1b; border-radius: 8px;
    padding: 7px 10px; font-size: 13px; font-weight: 600; cursor: pointer;
  }
  body.site-app-page .directions-toggle-btn.active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-app-page .directions-sort-select{ padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; background: #fff; font-size: 13px; }
  body.site-app-page .directions-stat-table td{ white-space: normal; vertical-align: top; }
  body.site-app-page .directions-stat-table tbody tr{ cursor: pointer; }
  body.site-app-page .directions-group-row td{
    background: var(--blue-bg); color: var(--blue); font-weight: 800; font-size: 13px;
    cursor: default; border-top: 1px solid var(--border);
  }
  body.site-app-page .directions-row-title{ font-weight: 700; }
  body.site-app-page .directions-row-code{ color: var(--blue); font-size: 12px; font-weight: 700; }
  body.site-app-page .directions-row-sub{ color: var(--muted); font-size: 12px; margin-top: 2px; }
  body.site-app-page .directions-row-exams{ color: var(--muted); font-size: 12px; max-width: 260px; }
  body.site-app-page .directions-competition-strong{ color: var(--red); font-weight: 800; }
  body.site-app-page .directions-competition-mid{ color: var(--amber); font-weight: 800; }
  body.site-app-page .directions-competition-ok{ color: var(--green); font-weight: 800; }
  body.site-app-page .directions-result-note{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }
  @media (max-width: 900px){body.site-app-page .directions-filter-grid{ grid-template-columns: 1fr; }
    body.site-app-page .directions-summary{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
  body.site-app-page .direction-card{ background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 20px; display: flex; flex-direction: column; gap: 10px; transition: box-shadow .15s, border-color .15s; }
  body.site-app-page .direction-card:hover{ border-color: var(--blue); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
  body.site-app-page .dc-code{ font-size: 12px; color: var(--muted); }
  body.site-app-page .dc-name{ font-size: 15px; font-weight: 700; line-height: 1.3; }
  /* Вся карточка направления в общей сетке кликабельна -- ведёт на отдельную
     страницу направления (showDirectionDetail), а не сразу в список. */
  body.site-app-page .direction-card-link{ cursor: pointer; }
  body.site-app-page .direction-card-link:hover .dc-name{ color: var(--blue); }
  /* Заголовок отдельной страницы направления (showDirectionDetail) -- по
     образцу карточки "Специальность в вузе" на Госуслугах: крупный белый
     блок, код мелко сверху, название крупным заголовком, бейджи и сводка
     ниже. */
  body.site-app-page .direction-detail-head{ background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin-bottom: 32px; }
  body.site-app-page .direction-detail-head .dc-code{ font-size: 13px; }
  body.site-app-page .direction-detail-head h2{ margin: 6px 0 18px; font-size: 26px; font-weight: 800; line-height: 1.3; }
  body.site-app-page .direction-detail-head .dc-badges{ margin-bottom: 14px; gap: 8px; }
  body.site-app-page .direction-detail-head .dc-stats{ font-size: 14px; line-height: 1.6; }
  body.site-app-page #direction-detail h3{ font-size: 22px; font-weight: 800; margin: 4px 0 20px; }
  body.site-app-page .dc-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-app-page .dc-stats{ font-size: 12px; color: var(--muted); }
  /* Средний уровень: программы внутри направления (по полю program_names) --
     аккордеон по образцу Госуслуг (карточка "Специальность в вузе" ->
     "Образовательные программы" -> раскрывающийся список). Раньше все
     group_id направления шли плоским списком без этого уровня. Отступы
     увеличены (было 14/16/10px) -- по фидбеку "ощущение слипленности". */
  body.site-app-page .dc-programs{ display: flex; flex-direction: column; gap: 20px; margin-top: 4px; }
  body.site-app-page .dc-program{ border: 1px solid var(--border); border-radius: 16px; overflow: hidden; background: #fff; }
  body.site-app-page .dc-program-header{
    display: flex; justify-content: space-between; align-items: center; gap: 12px;
    padding: 20px 24px; cursor: pointer; font-size: 15px;
  }
  body.site-app-page .dc-program-header:hover{ background: var(--blue-bg); }
  body.site-app-page .dc-program-title{ font-weight: 700; color: #1b1b1b; font-size: 16px; }
  body.site-app-page .dc-program-nums{ color: var(--muted); white-space: nowrap; font-size: 13px; }
  /* Круглая кнопка-шеврон, как раскрывающиеся стрелки на карточках программ
     у Госуслуг. */
  body.site-app-page .dc-program-chevron{
    display: flex; align-items: center; justify-content: center; flex: none;
    width: 30px; height: 30px; border-radius: 50%; background: var(--blue-bg);
    color: var(--blue); font-size: 13px; transition: transform .15s;
  }
  body.site-app-page .dc-program.expanded .dc-program-chevron{ transform: rotate(180deg); }
  body.site-app-page .dc-program-body{ display: none; padding: 4px 24px 24px; border-top: 1px solid var(--border); }
  body.site-app-page .dc-program.expanded .dc-program-body{ display: block; padding-top: 22px; }
  body.site-app-page .dc-program-badges{ margin-bottom: 20px; }
  /* Переключатель "Бюджетные/Платные" внутри раскрытой программы -- по
     образцу сегмент-контрола на Госуслугах (светло-синяя капсула, активная
     вкладка белая). Показывается только если у программы есть оба варианта
     финансирования. */
  body.site-app-page .dc-cost-tabs{ display: inline-flex; background: var(--blue-bg); border-radius: 10px; padding: 3px; margin-bottom: 16px; gap: 2px; }
  body.site-app-page .dc-cost-tab{
    border: none; background: none; padding: 8px 18px; border-radius: 8px; font-size: 13px; font-weight: 600;
    color: var(--blue); cursor: pointer;
  }
  body.site-app-page .dc-cost-tab.active{ background: #fff; color: #1b1b1b; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
  body.site-app-page .dc-cost-panel + .dc-cost-panel{ margin-top: 0; }
  body.site-app-page .dc-variants{ display: flex; flex-direction: column; gap: 16px; margin-top: 4px; }
  body.site-app-page .dc-variants.nested{ margin-top: 0; }
  /* Карточки категорий мест (Основные/Отдельная квота/Особая квота/...) --
     по образцу карточек "Конкурсные места" на Госуслугах: заголовок жирным
     слева, справа -- ДВЕ отдельные ссылки на списки (Конкурсные / Подавших
     документы), а не единый клик по всей карточке с списком по умолчанию. */
  body.site-app-page .dc-variant{
    display: flex; justify-content: space-between; align-items: center; gap: 20px;
    font-size: 13px; padding: 18px 22px; border: 1px solid var(--border); border-radius: 12px;
    background: #fff;
  }
  body.site-app-page .dc-variant:hover{ border-color: var(--border); }
  body.site-app-page .dv-title{ color: #1b1b1b; font-weight: 700; font-size: 15px; }
  body.site-app-page .dv-sub{ color: var(--muted); font-size: 12px; margin-top: 5px; line-height: 1.5; }
  body.site-app-page .dv-links{ display: flex; flex-direction: column; gap: 9px; align-items: flex-end; white-space: nowrap; flex: none; }
  body.site-app-page .dv-cutoffs{ display: flex; gap: 10px; align-items: stretch; flex: none; }
  body.site-app-page .dv-cutoffs > div{ min-width: 62px; padding: 7px 9px; border: 1px solid var(--border); border-radius: 8px; background: var(--blue-bg); text-align: center; }
  body.site-app-page .dv-cutoffs span{ display: block; color: var(--muted); font-size: 10px; font-weight: 800; }
  body.site-app-page .dv-cutoffs b{ display: block; margin-top: 3px; color: var(--ink); font-size: 13px; white-space: nowrap; }
  body.site-app-page .dv-link{ color: var(--blue); font-size: 13px; font-weight: 600; text-decoration: none; }
  body.site-app-page .dv-link:hover{ text-decoration: underline; }
  body.site-app-page tr.boundary-row td{ text-align: center; font-size: 12px; font-weight: 700; padding: 6px 10px; white-space: normal; }
  body.site-app-page tr.boundary-ovp td{ background: var(--blue-bg); color: var(--blue); border-top: 2px solid var(--blue); border-bottom: 2px solid var(--blue); }
  body.site-app-page tr.boundary-vpp td{ background: var(--amber-bg); color: var(--amber); border-top: 2px dashed var(--amber); border-bottom: 2px dashed var(--amber); }
  body.site-app-page .university-cell-link{ color: var(--blue); text-decoration: none; }
  body.site-app-page .university-cell-link:hover{ text-decoration: underline; }
  body.site-app-page .share-link-box{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; background: var(--blue-bg); border: 1px solid var(--border); border-radius: 8px; padding: 10px 14px; margin: 12px 0; font-size: 13px; }
  body.site-app-page .share-link-box .lbl{ color: var(--muted); white-space: nowrap; }
  body.site-app-page .share-link-box input{ flex: 1; min-width: 180px; border: 1px solid var(--border); border-radius: 6px; background: #fff; font-size: 13px; padding: 4px 8px; color: #1b1b1b; }
  body.site-app-page .share-link-box .copied-note{ color: var(--blue); font-weight: 600; white-space: nowrap; }
  body.site-app-page .recent-ids-lbl{ font-size: 13px; color: var(--muted); margin: 10px 0 6px; }
  body.site-app-page .recent-ids-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 4px; }
  body.site-app-page .recent-id-chip{ border: 1px solid var(--border); background: #fff; border-radius: 999px; padding: 5px 14px; font-size: 13px; cursor: pointer; color: var(--blue); }
  body.site-app-page .recent-id-chip:hover{ background: var(--blue-bg); border-color: var(--blue); }
  body.site-app-page .entrance-tests-box{ margin-bottom: 14px; }
  body.site-app-page .entrance-tests-title{ font-size: 13px; color: var(--muted); font-weight: 800; margin-bottom: 8px; }
  body.site-app-page .entrance-tests-details summary{ cursor: pointer; font-size: 13px; color: var(--muted); font-weight: 700; margin-bottom: 8px; }
  body.site-app-page .entrance-tests-details summary .count{ font-weight: 400; }
  body.site-app-page .entrance-type-stack{ display: grid; gap: 10px; margin-top: 8px; }
  body.site-app-page .entrance-type-group{
    border: 1px solid #d9e8fb;
    border-radius: 10px;
    background: #f8fbff;
    padding: 10px;
  }
  body.site-app-page .entrance-type-group.type-ege{ border-color: #bfd8ff; background: #f2f7ff; }
  body.site-app-page .entrance-type-group.type-spo{ border-color: #bdebcf; background: #f1fbf5; }
  body.site-app-page .entrance-type-group.type-dvi{ border-color: #ffd69a; background: #fff8ec; }
  body.site-app-page .entrance-type-group.type-belarus{ border-color: #b9d7ff; background: #f4f8ff; }
  body.site-app-page .entrance-type-group.type-foreign{ border-color: #c7dcff; background: #f7faff; }
  body.site-app-page .entrance-type-group.type-internal{ border-color: #d8ccff; background: #f7f4ff; }
  body.site-app-page .entrance-type-head{ display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; }
  body.site-app-page .entrance-type-title{
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    border-radius: 8px;
    padding: 4px 9px;
    background: #eaf2ff;
    color: var(--blue);
    font-size: 12px;
    font-weight: 900;
  }
  body.site-app-page .entrance-type-group.type-spo .entrance-type-title{ background: #dff8e8; color: var(--green); }
  body.site-app-page .entrance-type-group.type-dvi .entrance-type-title{ background: #fff0d8; color: #b75b17; }
  body.site-app-page .entrance-type-group.type-belarus .entrance-type-title{ background: #e2eeff; color: #2554a8; }
  body.site-app-page .entrance-type-group.type-foreign .entrance-type-title{ background: #e8f1ff; color: #315b9f; }
  body.site-app-page .entrance-type-group.type-internal .entrance-type-title{ background: #ece6ff; color: #5b3cc4; }
  body.site-app-page .entrance-type-count{ color: var(--muted); font-size: 12px; font-weight: 700; white-space: nowrap; }
  body.site-app-page .entrance-other-details{
    border: 1px solid #d9e8fb;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
  }
  body.site-app-page .entrance-other-details summary{
    margin: 0;
    padding: 10px;
    color: var(--blue);
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
    background: #f8fbff;
  }
  body.site-app-page .entrance-other-details .entrance-type-group{
    border: 0;
    border-top: 1px solid #d9e8fb;
    border-radius: 0;
    margin: 0;
  }
  body.site-app-page .entrance-tests-list{ display: flex; flex-wrap: wrap; gap: 8px; }
  body.site-app-page .entrance-test-chip{
    border: 1px solid #d9e8fb;
    border-radius: 8px;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 700;
    background: #fff;
    color: #15243a;
  }
  body.site-app-page .entrance-test-chip strong{ color: var(--muted); font-size: 11px; text-transform: uppercase; margin-right: 4px; }
  body.site-app-page #university-header{ margin-bottom: 12px; font-size: 15px; }
  body.site-app-page #university-header a{ color: var(--blue); text-decoration: none; }
  body.site-app-page #university-header a:hover{ text-decoration: underline; }
  body.site-app-page .uni-back-link{ display: inline-block; margin-bottom: 14px; font-size: 14px; font-weight: 700; }
  body.site-app-page .uni-hero{
    border: 1px solid var(--line);
    border-radius: 12px;
    background: linear-gradient(180deg, #f5f9ff 0%, #ffffff 100%);
    padding: 24px;
    margin-bottom: 14px;
  }
  body.site-app-page .uni-title{ margin: 0 0 14px; font-size: 30px; line-height: 1.15; color: var(--ink); font-weight: 900; }
  body.site-app-page .uni-contact-list{ display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; color: var(--ink-2); font-size: 14px; font-weight: 700; }
  body.site-app-page .uni-official-card{
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #f5f9ff;
    padding: 16px;
    margin-top: 14px;
  }
  body.site-app-page .uni-official-card summary{
    cursor: pointer;
    color: var(--ink);
    font-size: 16px;
    font-weight: 900;
  }
  body.site-app-page .uni-official-card .count{ color: var(--blue); font-size: 13px; }
  body.site-app-page .uni-doc-grid{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
  body.site-app-page .uni-doc-link{
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 7px 10px;
    background: #fff;
    color: var(--blue);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
  }
  body.site-app-page .uni-doc-link:hover{ background: var(--blue-bg); border-color: #bcd6ff; text-decoration: none; }
  body.site-app-page .uni-directions-card{
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: none;
  }
  body.site-app-page .uni-directions-head{
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 18px;
    border-bottom: 1px solid var(--line);
    background: #f8fbff;
  }
  body.site-app-page .uni-directions-title{ font-size: 18px; font-weight: 900; color: var(--ink); }
  body.site-app-page .uni-directions-sub{ color: var(--muted); font-size: 13px; font-weight: 700; }
  body.site-app-page .uni-directions-count{ color: var(--blue); font-size: 13px; font-weight: 900; white-space: nowrap; }
  body.site-app-page .uni-row-code{ color: var(--ink-3); font-size: 12px; font-weight: 900; margin-bottom: 2px; }
  body.site-app-page .uni-row-name{ color: var(--ink); font-weight: 800; line-height: 1.25; }
  body.site-app-page .uni-row-meta{ color: var(--ink-2); font-weight: 700; }
  body.site-app-page .level-grid{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
  body.site-app-page .level-card{ border: 1px solid var(--border); border-radius: 10px; padding: 16px 20px; cursor: pointer; background: #fff; min-width: 220px; }
  body.site-app-page .level-card:hover{ border-color: var(--blue); }
  body.site-app-page .level-card .name{ font-weight: 700; font-size: 16px; margin-bottom: 4px; }
  body.site-app-page .level-card .count{ color: var(--muted); font-size: 13px; }
  body.site-app-page tr.direction-row td{ background: var(--blue-bg); font-weight: 700; padding: 8px 10px; border-top: 2px solid var(--border); white-space: normal; }
  body.site-app-page tr.direction-row .count{ color: var(--muted); font-weight: 500; font-size: 12px; }
  body.site-app-page #programs-table.uni-mode{ table-layout: fixed; }
  body.site-app-page #programs-table.uni-mode th:nth-child(1),body.site-app-page #programs-table.uni-mode td:nth-child(1){ width: 38%; }
  body.site-app-page #programs-table.uni-mode th:nth-child(2),body.site-app-page #programs-table.uni-mode td:nth-child(2){ width: 11%; }
  body.site-app-page #programs-table.uni-mode th:nth-child(3),body.site-app-page #programs-table.uni-mode td:nth-child(3){ width: 9%; }
  body.site-app-page #programs-table.uni-mode th:nth-child(4),body.site-app-page #programs-table.uni-mode td:nth-child(4){ width: 20%; }
  body.site-app-page #programs-table.uni-mode th:nth-child(5),body.site-app-page #programs-table.uni-mode td:nth-child(5){ width: 11%; }
  body.site-app-page #programs-table.uni-mode th:nth-child(6),body.site-app-page #programs-table.uni-mode td:nth-child(6){ width: 11%; }
  body.site-app-page #programs-table.uni-mode td{ white-space: normal; word-break: break-word; line-height: 1.35; }
  body.site-app-page #programs-table.uni-mode td.prog-name-cell{ padding: 8px 12px; }
  body.site-app-page #programs-table.uni-mode .prog-name-inner{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body.site-app-page .home-banners{ display: flex; flex-direction: column; gap: 10px; margin: 20px 0 0; }
  body.site-app-page .home-banner{ display: block; text-align: center; padding: 14px 20px; border-radius: 10px; text-decoration: none; font-weight: 700; font-size: 14px; cursor: pointer; }
  body.site-app-page .home-banner-blue{ background: var(--blue); color: #fff; }
  body.site-app-page .home-banner-blue:hover{ background: #1558c9; }
  body.site-app-page .home-banner-amber{ background: var(--amber-bg); color: var(--amber); border: 1px solid #f3d98b; }
  body.site-app-page .home-banner-amber:hover{ background: #ffedb8; }
  body.site-app-page .home-hero{ padding: 40px 8px 28px; text-align: left; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
  body.site-app-page .home-hero-text{ flex: 1 1 420px; min-width: 280px; }
  body.site-app-page .home-hero-badge{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 13px; font-weight: 600; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
  body.site-app-page .home-hero-cta{ display: inline-block; margin-top: 16px; background: #F7B500; color: #152A54; font-weight: 700; font-size: 15px; padding: 12px 24px; border-radius: 10px; text-decoration: none; }
  body.site-app-page .home-hero-cta:hover{ background: #e0a400; }
  body.site-app-page .home-promo27{ background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin: 8px 0 40px; }
  body.site-app-page .home-promo27-badge{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 13px; font-weight: 600; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
  body.site-app-page .home-promo27-title{ font-size: 30px; font-weight: 800; margin: 0 0 10px; }
  body.site-app-page .home-promo27-title span{ color: var(--blue); }
  body.site-app-page .home-promo27-sub{ font-size: 16px; color: var(--muted); margin: 0 0 28px; max-width: 640px; }
  body.site-app-page .home-promo27-card{ display: flex; gap: 28px; align-items: center; background: var(--bg); border-radius: 14px; padding: 24px; flex-wrap: wrap; }
  body.site-app-page .home-promo27-image{ flex: 0 0 260px; border-radius: 12px; overflow: hidden; }
  body.site-app-page .home-promo27-image img{ width: 100%; height: auto; display: block; border-radius: 12px; }
  body.site-app-page .home-promo27-text{ flex: 1 1 360px; min-width: 260px; }
  body.site-app-page .home-promo27-text p{ font-size: 15px; line-height: 1.55; color: #333; margin: 0 0 20px; }
  body.site-app-page .home-promo27-text p b{ color: #1a1a1a; }
  body.site-app-page .home-promo27-actions{ display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
  body.site-app-page .home-promo27-cta{ display: inline-block; background: var(--blue); color: #fff; font-weight: 700; font-size: 15px; padding: 12px 24px; border-radius: 10px; text-decoration: none; }
  body.site-app-page .home-promo27-cta:hover{ background: #1558c9; }
  body.site-app-page .home-promo27-link{ font-size: 14px; color: var(--blue); text-decoration: none; font-weight: 600; }
  body.site-app-page .home-promo27-link:hover{ text-decoration: underline; }
  @media (max-width: 640px){body.site-app-page .home-promo27-card{ flex-direction: column; } body.site-app-page .home-promo27-image{ width: 100%; flex-basis: auto; }}
  body.site-app-page .home-hero-owl{ flex: 0 0 440px; max-width: 46%; }
  body.site-app-page .owl-hero-photo{ width: 100%; height: auto; display: block; border-radius: 16px; }
  @media (max-width: 900px){body.site-app-page .home-hero-owl{ flex: 1 1 100%; max-width: 380px; order: -1; margin: 0 auto; }}
  body.site-app-page .home-hero-title{ font-size: 36px; line-height: 1.15; margin: 0 0 14px; font-weight: 800; }
  body.site-app-page .home-hero-accent{ background: #ffe082; padding: 2px 10px; border-radius: 6px; text-transform: uppercase; }
  body.site-app-page .home-hero-sub{ font-size: 16px; color: var(--muted); max-width: 620px; margin: 0 0 24px; }
  body.site-app-page .home-search-row{ max-width: 480px; }
  body.site-app-page .home-stats{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: 12px; overflow: hidden; margin: 8px 0 36px; }
  body.site-app-page .home-stat{ background: #fff; padding: 18px 20px; }
  body.site-app-page a.home-stat-link{ display: block; text-decoration: none; color: inherit; cursor: pointer; }
  body.site-app-page a.home-stat-link:hover{ background: var(--bg); }
  body.site-app-page .home-stat-n{ font-size: 24px; font-weight: 800; color: var(--blue); }
  body.site-app-page .home-stat-l{ font-size: 13px; color: var(--muted); margin-top: 2px; }
  body.site-app-page .home-section-title{ font-size: 22px; font-weight: 800; margin: 40px 0 18px; }
  body.site-app-page .home-tools-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
  body.site-app-page .home-tool-card{ display: block; border: 1px solid var(--border); border-radius: 12px; padding: 18px; text-decoration: none; color: inherit; background: #fff; cursor: pointer; position: relative; transition: box-shadow .15s, transform .15s; }
  body.site-app-page .home-tool-card:hover{ box-shadow: 0 4px 14px rgba(0,0,0,.08); transform: translateY(-1px); }
  body.site-app-page .home-tool-card.pending{ opacity: .6; cursor: default; }
  body.site-app-page .home-tool-card.pending:hover{ box-shadow: none; transform: none; }
  body.site-app-page .home-tool-icon{ width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 20px; margin-bottom: 12px; }
  body.site-app-page .home-tool-title{ font-weight: 700; font-size: 15px; margin-bottom: 6px; }
  body.site-app-page .home-tool-sub{ font-size: 13px; color: var(--muted); line-height: 1.4; }
  body.site-app-page .home-tool-badge{ position: absolute; top: 14px; right: 14px; background: var(--amber-bg); color: var(--amber); font-size: 11px; font-weight: 700; padding: 3px 8px; border-radius: 999px; }
  body.site-app-page .home-steps{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
  body.site-app-page .home-step{ border: 1px solid var(--border); border-radius: 12px; padding: 20px; background: #fff; }
  body.site-app-page .home-step-n{ width: 32px; height: 32px; border-radius: 50%; background: #ffe082; display: flex; align-items: center; justify-content: center; font-weight: 800; margin-bottom: 12px; }
  body.site-app-page .home-step-title{ font-weight: 700; margin-bottom: 6px; }
  body.site-app-page .home-step-sub{ font-size: 13px; color: var(--muted); line-height: 1.4; }
  body.site-app-page .home-feedback{ display: flex; justify-content: space-between; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 12px; padding: 20px 24px; margin-top: 40px; background: #fff; flex-wrap: wrap; }
  body.site-app-page .home-feedback-title{ font-weight: 700; }
  body.site-app-page .home-feedback-sub{ font-size: 13px; color: var(--muted); margin-top: 2px; }
  @media (max-width: 720px){body.site-app-page .home-stats{ grid-template-columns: repeat(2, 1fr); }
    body.site-app-page .home-steps{ grid-template-columns: 1fr; }
    body.site-app-page .home-hero-title{ font-size: 28px; }}
  body.site-app-page .orders-note{ color: var(--muted); font-size: 14px; max-width: 760px; line-height: 1.5; margin: 0 0 24px; }
  body.site-app-page .orders-filters{ display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 18px; }
  body.site-app-page .orders-filter-chip{ border: 1px solid var(--border); border-radius: 999px; padding: 10px 16px; font-size: 13px; font-weight: 600; background: #fff; cursor: pointer; color: var(--muted); }
  body.site-app-page .orders-filter-chip.active{ border-color: var(--blue); color: var(--blue); background: var(--blue-bg); }
  body.site-app-page .orders-search{ margin-bottom: 18px; max-width: 360px; }
  body.site-app-page .orders-search input{ width: 100%; padding: 10px 14px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; }
  body.site-app-page .orders-list{ display: flex; flex-direction: column; gap: 10px; }
  body.site-app-page .orders-row{ display: flex; justify-content: space-between; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 10px; padding: 14px 18px; background: #fff; flex-wrap: wrap; }
  body.site-app-page .orders-row-name{ font-weight: 700; font-size: 14px; }
  body.site-app-page .orders-row-meta{ font-size: 12px; color: var(--muted); margin-top: 3px; }
  body.site-app-page .orders-row-badge{ font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
  body.site-app-page .orders-badge-collected{ background: var(--green-bg); color: var(--green); }
  body.site-app-page .orders-badge-in-progress{ background: var(--amber-bg); color: var(--amber); }
  body.site-app-page .orders-badge-not-started{ background: #f1f1f1; color: var(--muted); }
  body.site-app-page .orders-footer{ margin-top: 18px; text-align: center; }
  body.site-app-page .orders-calendar{ border: 1px solid var(--border); border-radius: 12px; padding: 20px 22px; margin-bottom: 22px; background: #fff; }
  body.site-app-page .orders-calendar-title{ font-weight: 700; font-size: 15px; margin: 0 0 14px; display: flex; align-items: center; gap: 8px; }
  body.site-app-page .orders-calendar-item{ display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; padding: 10px 0; border-top: 1px solid var(--border); }
  body.site-app-page .orders-calendar-item:first-of-type{ border-top: none; padding-top: 0; }
  body.site-app-page .orders-calendar-item-text{ font-size: 14px; line-height: 1.5; }
  body.site-app-page .orders-calendar-badge{ flex-shrink: 0; font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
  body.site-app-page .orders-calendar-badge-done{ background: #f1f1f1; color: var(--muted); }
  body.site-app-page .orders-calendar-badge-active{ background: var(--green-bg); color: var(--green); }
  body.site-app-page .orders-calendar-source{ font-size: 12px; color: var(--muted); margin-top: 12px; line-height: 1.5; }
  body.site-app-page .admission-cards{ display: flex; gap: 14px; flex-wrap: wrap; margin: 0 0 26px; }
  body.site-app-page .admission-card{ flex: 1 1 260px; border: 1px solid var(--border); border-radius: 12px; padding: 18px 20px; background: #fff; cursor: pointer; text-decoration: none; color: inherit; display: block; transition: border-color .15s; }
  body.site-app-page .admission-card:hover{ border-color: var(--blue); }
  body.site-app-page .admission-card.active{ border-color: var(--blue); background: var(--blue-bg); cursor: default; }
  body.site-app-page .admission-card-title{ font-size: 13px; font-weight: 400; color: var(--muted); text-transform: none; letter-spacing: normal; margin-bottom: 4px; }
  body.site-app-page .admission-card-number{ font-size: 34px; font-weight: 800; line-height: 1.08; margin-bottom: 4px; }
  body.site-app-page .admission-card-meta{ font-size: 12px; color: var(--muted); line-height: 1.5; }
  body.site-app-page .admission-overview-table{ table-layout: fixed; width: 100%; border-collapse: collapse; font-size: 13px; }
  body.site-app-page .admission-overview-table th,body.site-app-page .admission-overview-table td{ padding: 8px 8px; border-bottom: 1px solid var(--border); vertical-align: top; white-space: normal; word-wrap: break-word; overflow-wrap: break-word; }
  body.site-app-page .admission-overview-table th{ text-align: left; border-bottom: 2px solid var(--border); color: var(--muted); font-weight: 700; font-size: 11px; text-transform: uppercase; }
  body.site-app-page .admission-overview-table th:nth-child(1),body.site-app-page .admission-overview-table td:nth-child(1){ width: 38%; }
  body.site-app-page .admission-overview-table th:nth-child(2),body.site-app-page .admission-overview-table td:nth-child(2){ width: 7%; }
  body.site-app-page .admission-overview-table th:nth-child(3),body.site-app-page .admission-overview-table td:nth-child(3){ width: 8%; }
  body.site-app-page .admission-overview-table th:nth-child(4),body.site-app-page .admission-overview-table td:nth-child(4){ width: 9%; }
  body.site-app-page .admission-overview-table th:nth-child(5),body.site-app-page .admission-overview-table td:nth-child(5){ width: 11%; }
  body.site-app-page .admission-overview-table th:nth-child(6),body.site-app-page .admission-overview-table td:nth-child(6){ width: 9%; }
  body.site-app-page .admission-overview-table th:nth-child(7),body.site-app-page .admission-overview-table td:nth-child(7){ width: 11%; text-align: right; }
  body.site-app-page .admission-overview-table td:nth-child(1) a{ display: block; }
  body.site-app-page .admission-overview-table tr:hover td{ background: var(--blue-bg); }
  body.site-app-page .table-scroll{ overflow-x: auto; }
  body.site-app-page #panel-competition .orders-search{ display: flex; flex-wrap: wrap; gap: 10px; align-items: center; max-width: none; }
  body.site-app-page #panel-competition .orders-search input[type=text]{ flex: 1 1 220px; }
  body.site-app-page .content-page{ font-size: 14px; color: #1b1b1b; }
  body.site-app-page .content-page h2,body.site-app-page .content-page h3{ letter-spacing: 0; }
  body.site-app-page .admission26-hero{ padding: 18px 0 28px; }
  body.site-app-page .admission26-kicker{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 12px; font-weight: 700; padding: 5px 12px; border-radius: 999px; margin-bottom: 12px; }
  body.site-app-page .admission26-title{ font-size: 28px; line-height: 1.2; margin: 0 0 10px; font-weight: 800; max-width: 900px; }
  body.site-app-page .admission26-title span{ color: var(--blue); }
  body.site-app-page .admission26-lead{ color: var(--muted); font-size: 14px; line-height: 1.5; max-width: 980px; margin: 0 0 8px; }
  body.site-app-page .admission26-note{ color: #92a0b4; font-size: 12px; font-weight: 600; margin: 0 0 16px; }
  body.site-app-page .admission26-alert{ border: 1px solid #f3c85d; background: #fffaf0; border-radius: 10px; padding: 14px 16px; margin: 18px 0; box-shadow: none; }
  body.site-app-page .admission26-alert-top{ color: #b75b17; font-size: 12px; font-weight: 800; text-transform: uppercase; margin-bottom: 4px; }
  body.site-app-page .admission26-alert-title{ font-size: 16px; font-weight: 800; color: #15243a; margin-bottom: 4px; }
  body.site-app-page .admission26-alert-sub{ color: var(--muted); font-size: 13px; line-height: 1.45; }
  body.site-app-page .admission26-stats{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0; }
  body.site-app-page .admission26-stat{ border: 1px solid #f3c85d; background: #fffaf4; border-radius: 10px; padding: 16px; }
  body.site-app-page .admission26-stat.green{ border-color: #9bdfb4; background: #eaf8ef; }
  body.site-app-page .admission26-stat-label{ color: #b75b17; font-size: 12px; font-weight: 800; text-transform: uppercase; margin-bottom: 6px; }
  body.site-app-page .admission26-stat.green .admission26-stat-label{ color: var(--green); }
  body.site-app-page .admission26-stat-number{ font-size: 22px; font-weight: 800; color: #15243a; line-height: 1.1; margin-bottom: 4px; }
  body.site-app-page .admission26-stat-text{ color: var(--muted); font-size: 13px; font-weight: 600; }
  body.site-app-page .admission26-search-box{ border: 1px solid var(--blue); border-radius: 10px; padding: 16px; background: #fff; margin: 20px 0 14px; }
  body.site-app-page .admission26-search-title{ font-size: 18px; font-weight: 800; margin-bottom: 6px; color: #15243a; }
  body.site-app-page .admission26-search-sub{ color: var(--muted); font-size: 14px; line-height: 1.45; margin-bottom: 12px; }
  body.site-app-page .admission26-search-status{ display: inline-block; max-width: 100%; background: var(--green-bg); color: var(--green); border: 1px solid #9bdfb4; border-radius: 8px; padding: 7px 10px; font-size: 12px; font-weight: 700; margin-bottom: 12px; }
  body.site-app-page .admission26-search-row{ display: flex; gap: 10px; flex-wrap: wrap; }
  body.site-app-page .admission26-search-row input{ flex: 0 1 260px; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-weight: 600; }
  body.site-app-page .admission26-search-row button{ border-radius: 8px; box-shadow: none; }
  body.site-app-page .admission26-links{ display: flex; flex-direction: column; gap: 8px; margin: 14px 0 24px; }
  body.site-app-page .admission26-links a{ color: var(--blue); text-decoration: none; font-weight: 700; }
  body.site-app-page .admission26-links a:hover{ text-decoration: underline; }
  body.site-app-page .admission26-toolbar{ display: grid; grid-template-columns: minmax(180px, 280px) minmax(240px, 1fr) auto; gap: 12px; align-items: center; margin: 24px 0 16px; }
  body.site-app-page .admission26-toolbar input{ min-width: 0; width: 100%; background: #fff; }
  body.site-app-page .admission26-total{ color: #92a0b4; font-size: 13px; font-weight: 800; white-space: nowrap; }
  body.site-app-page .admission26-table-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 14px; box-shadow: none; }
  body.site-app-page #admission26-list .admission-overview-table th,body.site-app-page #admission26-list .admission-overview-table td{ padding: 8px; }
  body.site-app-page #admission26-list .admission-overview-table td{ font-size: 13px; }
  body.site-app-page .admission26-num-orange{ color: #c85e20; font-weight: 800; }
  body.site-app-page .admission26-num-green{ color: var(--green); font-weight: 900; }
  body.site-app-page .admission26-link{ color: var(--blue); text-decoration: none; font-weight: 700; white-space: nowrap; }
  body.site-app-page .admission26-help{ margin: 24px 0 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
  body.site-app-page .admission26-help h3{ color: #15243a; font-size: 18px; margin: 0 0 8px; }
  @media (max-width: 820px){body.site-app-page .admission26-title{ font-size: 24px; }
    body.site-app-page .admission26-stats{ grid-template-columns: 1fr; }
    body.site-app-page .admission26-toolbar{ grid-template-columns: 1fr; }}
  body.site-app-page .competition-city-wrap{ position: relative; flex: 1 1 220px; min-width: 160px; }
  body.site-app-page .competition-city-input{ width: 100%; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; box-sizing: border-box; }
  body.site-app-page .competition-city-suggest{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.08); max-height: 260px; overflow-y: auto; z-index: 20; }
  body.site-app-page .competition-city-suggest.open{ display: block; }
  body.site-app-page .competition-city-suggest-item{ padding: 8px 12px; cursor: pointer; font-size: 14px; }
  body.site-app-page .competition-city-suggest-item:hover,body.site-app-page .competition-city-suggest-item.active{ background: var(--blue-bg); }
  body.site-app-page .uni-row-code{ font-size: 11px; color: var(--muted); font-weight: 600; }
  body.site-app-page .uni-back-link{ display: block; font-size: 13px; color: var(--muted); text-decoration: none; margin-bottom: 8px; }
  body.site-app-page .uni-back-link:hover{ text-decoration: underline; }
  body.site-app-page .uni-title{ font-size: 28px; font-weight: 800; margin: 0; line-height: 1.25; }
  body.site-app-page .university-groups-table tbody tr{ cursor: pointer; }
  body.site-app-page .university-groups-table tbody tr:hover td{ background: var(--blue-bg); }
  body.site-app-page .university-groups-table{ font-size: 12px; }
  body.site-app-page .university-groups-table th{ font-size: 10px; }
  body.site-app-page .university-groups-table th:nth-child(1),body.site-app-page .university-groups-table td:nth-child(1){ width: 24%; white-space: normal; }
  body.site-app-page .university-groups-table th:nth-child(2),body.site-app-page .university-groups-table td:nth-child(2){ width: 38%; white-space: nowrap; }
  body.site-app-page .university-groups-table th:nth-child(3),body.site-app-page .university-groups-table td:nth-child(3){ width: 10%; }
  body.site-app-page .university-groups-table th:nth-child(4),body.site-app-page .university-groups-table td:nth-child(4){ width: 14%; }
  body.site-app-page .university-groups-table th:nth-child(5),body.site-app-page .university-groups-table td:nth-child(5){ width: 14%; }
  body.site-app-page .simple-page{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 22px; margin-bottom: 18px; }
  body.site-app-page .simple-page h2{ margin: 0 0 8px; font-size: 28px; line-height: 1.2; }
  body.site-app-page .simple-page p{ color: var(--muted); margin: 0 0 16px; max-width: 760px; }
  body.site-app-page .simple-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px; }
  body.site-app-page .simple-card{ display: block; background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 16px; color: inherit; text-decoration: none; }
  body.site-app-page .simple-card:hover{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-app-page .simple-card-title{ font-weight: 800; margin-bottom: 6px; }
  body.site-app-page .simple-card-sub{ color: var(--muted); font-size: 13px; }
  body.site-app-page .simple-actions{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
  body.site-app-page .simple-cta{ display: inline-block; padding: 11px 18px; border-radius: 8px; background: var(--blue); color: #fff; text-decoration: none; font-weight: 800; }
  body.site-app-page .simple-cta.yellow{ background: #ffbf17; color: #15243a; border-bottom: 4px solid #f08a00; }
  body.site-app-page .route27{ display: flex; flex-direction: column; gap: 18px; padding: 18px 0 48px; font-size: 14px; }
  body.site-app-page .route27-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 18px; box-shadow: none; }
  body.site-app-page .route27-main{ border: 1px solid var(--blue); background: #fff; }
  body.site-app-page .route27-save{ display: grid; grid-template-columns: minmax(260px, 1fr) auto; gap: 10px; align-items: start; width: 100%; margin: 0 0 16px; padding: 12px; background: #f4f8ff; border: 1px solid #d8e8ff; border-radius: 10px; }
  body.site-app-page .route27-save.paid{ background: rgba(232,248,239,.74); border-color: #9bdfb4; }
  body.site-app-page .route27-save input{ width: 100%; min-width: 0; padding: 10px 12px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; background: #fff; }
  body.site-app-page .route27-save button{ padding: 10px 16px; border: none; border-radius: 8px; background: var(--blue); color: #fff; font-size: 14px; font-weight: 700; cursor: pointer; white-space: nowrap; }
  body.site-app-page .route27-save.paid button{ background: var(--green); }
  body.site-app-page .route27-save-hint{ grid-column: 1 / -1; color: var(--muted); font-size: 13px; text-align: left; }
  body.site-app-page .route27-save.paid .route27-save-hint{ color: var(--green); font-weight: 800; }
  body.site-app-page .route27-link-box{ grid-column: 1 / -1; display: none; background: #fff; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 13px; color: #24364f; overflow-wrap: anywhere; text-align: left; }
  body.site-app-page .route27-save.saved .route27-link-box{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-app-page .route27-save.paid .route27-link-box{ border-color: #9bdfb4; }
  body.site-app-page .route27-account-url{ min-width: 0; flex: 1 1 360px; overflow-wrap: anywhere; }
  body.site-app-page .route27-access-badge{ display: inline-flex; align-items: center; margin-left: 8px; padding: 3px 8px; border-radius: 999px; background: #dcebfd; color: var(--blue); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; font-size: 12px; font-weight: 800; vertical-align: middle; }
  body.site-app-page .route27-save.paid .route27-access-badge{ background: var(--green-bg); color: var(--green); }
  body.site-app-page .route27-head{ display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; align-items: start; }
  body.site-app-page .route27-kicker{ font-size: 14px; font-weight: 800; color: #15243a; margin-bottom: 4px; }
  body.site-app-page .route27-title{ font-size: 22px; line-height: 1.25; font-weight: 800; margin: 0 0 6px; color: #12233c; }
  body.site-app-page .route27-sub{ color: var(--muted); font-size: 14px; line-height: 1.45; margin: 0 0 14px; }
  body.site-app-page .route27-progress{ min-width: 124px; text-align: center; background: var(--blue); color: #fff; border-radius: 10px; padding: 12px 14px; font-weight: 700; font-size: 12px; }
  body.site-app-page .route27-progress-n{ font-size: 24px; line-height: 1; }
  body.site-app-page .route27-steps{ display: grid; grid-template-columns: repeat(8, minmax(100px, 1fr)); gap: 10px; }
  body.site-app-page .route27-step{ border: 1px solid #d8e8ff; background: #fff; border-radius: 8px; padding: 10px; text-align: center; min-height: 74px; cursor: pointer; }
  body.site-app-page .route27-step.active{ border: 1px solid var(--blue); }
  body.site-app-page .route27-step-num{ width: 24px; height: 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: var(--blue-bg); color: var(--blue); font-weight: 800; margin-bottom: 5px; font-size: 12px; }
  body.site-app-page .route27-step.active .route27-step-num{ background: var(--blue); color: #fff; }
  body.site-app-page .route27-step-title{ font-size: 12px; font-weight: 800; color: #3d4b63; }
  body.site-app-page .route27-step-pct{ color: #92a0b4; font-size: 11px; font-weight: 700; }
  body.site-app-page .route27-section-title{ font-size: 20px; margin: 0 0 6px; color: #12233c; font-weight: 800; }
  body.site-app-page .route27-subhead{ font-size: 14px; margin: 18px 0 10px; color: #12233c; font-weight: 800; }
  body.site-app-page #route27-interests-section{ scroll-margin-top: 110px; }
  body.site-app-page .route27-stage-tag{ display: inline-block; background: var(--blue-bg); color: var(--blue); border-radius: 999px; padding: 5px 10px; font-size: 12px; font-weight: 800; margin-bottom: 10px; }
  body.site-app-page .route27-two{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .9fr); gap: 22px; align-items: start; }
  body.site-app-page .route27-card ul{ margin: 10px 0 0; padding-left: 20px; color: var(--muted); line-height: 1.5; }
  body.site-app-page .route27-aside{ border-left: 3px solid var(--blue); padding-left: 16px; color: #566377; }
  body.site-app-page .route27-checklist{ margin-top: 20px; border-top: 1px dashed #d8e8ff; }
  body.site-app-page .route27-task{ display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px dashed #d8e8ff; color: #3d4b63; font-weight: 600; }
  body.site-app-page .route27-task label{ display: flex; align-items: center; gap: 10px; cursor: pointer; }
  body.site-app-page .route27-task input{ width: 16px; height: 16px; }
  body.site-app-page .route27-mini-btn{ border: none; border-radius: 8px; background: var(--blue-bg); color: var(--blue); padding: 7px 10px; font-weight: 700; text-decoration: none; white-space: nowrap; font-size: 13px; }
  body.site-app-page .route27-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
  body.site-app-page .route27-test-results{ grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
  body.site-app-page .route27-tile{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 12px; background: #fbfdff; }
  body.site-app-page .route27-tile-title{ font-weight: 800; color: #12233c; margin-bottom: 6px; }
  body.site-app-page .route27-muted{ color: var(--muted); font-size: 13px; line-height: 1.45; }
  body.site-app-page .route27-pay{ border: 1px solid var(--blue); background: #fff; }
  body.site-app-page .route27-pay-row{ display: grid; grid-template-columns: minmax(220px, 1fr) auto auto; gap: 12px; align-items: center; margin-top: 16px; }
  body.site-app-page form.route27-pay-row{ margin-top: 16px; }
  body.site-app-page .route27-pay-row input,body.site-app-page .route27-form input,body.site-app-page .route27-form select{ min-width: 0; width: 100%; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-size: 14px; background: #fff; }
  body.site-app-page .route27-blue-btn{ display: inline-block; border: none; border-radius: 8px; background: var(--blue); color: #fff; padding: 10px 16px; font-weight: 700; text-decoration: none; cursor: pointer; font-size: 14px; }
  body.site-app-page .route27-program{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 12px; margin-top: 10px; }
  body.site-app-page .route27-program-head{ display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
  body.site-app-page .route27-program-title{ font-weight: 800; color: #12233c; }
  body.site-app-page .route27-recommendations{ margin-top: 22px; }
  body.site-app-page .route27-rec-filters{ background: #f4f8ff; border-radius: 10px; padding: 12px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
  body.site-app-page .route27-rec-filter{ display: flex; flex-direction: column; gap: 5px; min-width: 0; }
  body.site-app-page .route27-rec-filter label{ color: var(--muted); font-size: 12px; font-weight: 800; }
  body.site-app-page .route27-rec-filter select,body.site-app-page .route27-rec-filter input{ width: 100%; border: 1px solid #d8e8ff; border-radius: 8px; padding: 9px 10px; font-size: 13px; background: #fff; }
  body.site-app-page .route27-rec-filter .competition-city-wrap{ flex: 0 0 auto; min-width: 0; width: 100%; }
  body.site-app-page .route27-rec-actions{ grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-app-page .route27-rec-cards{ display: grid; gap: 10px; margin-top: 12px; }
  body.site-app-page .route27-rec-card{ border: 1px solid #d8e8ff; border-radius: 10px; padding: 12px; background: #fff; }
  body.site-app-page .route27-rec-card-head{ display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
  body.site-app-page .route27-rec-card-title{ font-weight: 800; color: #12233c; }
  body.site-app-page .route27-rec-meta{ color: var(--muted); font-size: 13px; margin-top: 4px; line-height: 1.45; }
  body.site-app-page .route27-rec-reason{ background: #dcebfd; color: var(--blue); border-radius: 8px; padding: 8px 10px; font-size: 12px; font-weight: 700; margin-top: 10px; }
  body.site-app-page .route27-auto-filters{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
  body.site-app-page .route27-auto-filters span{ border: 1px solid #d8e8ff; background: #fff; color: var(--blue); border-radius: 999px; padding: 6px 10px; font-size: 12px; font-weight: 800; }
  body.site-app-page .route27-direction-group{ border: 1px solid #d8e8ff; border-radius: 10px; background: #fff; overflow: hidden; }
  body.site-app-page .route27-direction-head{ display: flex; justify-content: space-between; gap: 14px; padding: 12px 14px; background: #f4f8ff; border-bottom: 1px solid #d8e8ff; }
  body.site-app-page .route27-direction-code{ color: var(--blue); font-size: 12px; font-weight: 800; margin-bottom: 2px; }
  body.site-app-page .route27-direction-title{ color: #12233c; font-size: 15px; font-weight: 800; line-height: 1.25; }
  body.site-app-page .route27-direction-reason{ color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 4px; }
  body.site-app-page .route27-direction-count{ color: var(--green); font-size: 12px; font-weight: 800; white-space: nowrap; }
  body.site-app-page .route27-direction-options{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
  body.site-app-page .route27-direction-option{ padding: 12px 14px; border-left: 1px solid #d8e8ff; }
  body.site-app-page .route27-direction-option:first-child{ border-left: 0; }
  body.site-app-page .route27-direction-option .route27-pill{ margin-bottom: 8px; }
  body.site-app-page .route27-option-title{ color: #12233c; font-weight: 800; font-size: 13px; line-height: 1.25; }
  body.site-app-page .route27-option-meta{ color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 4px; }
  body.site-app-page .route27-option-stats{ display: flex; flex-wrap: wrap; gap: 6px; margin: 9px 0; color: #3d4b63; font-size: 12px; font-weight: 700; }
  body.site-app-page .route27-map-head{ display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 22px; }
  body.site-app-page .route27-map-score{ display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-size: 13px; font-weight: 700; }
  body.site-app-page .route27-map-score input{ width: 120px; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; font-size: 13px; }
  body.site-app-page .route27-map-legend{ display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 10px; }
  body.site-app-page .route27-map-legend span{ border-radius: 999px; padding: 5px 9px; font-size: 12px; font-weight: 800; }
  body.site-app-page .route27-map-dream{ background: #fff1df; }
  body.site-app-page .route27-map-real{ background: #e8f8ef; }
  body.site-app-page .route27-map-safe{ background: #fff8d8; }
  body.site-app-page .route27-map-unknown{ background: #f4f8ff; }
  body.site-app-page .route27-map-table{ width: 100%; border-collapse: collapse; font-size: 11px; background: #fff; table-layout: fixed; }
  body.site-app-page .route27-map-table th{ background: #f4f8ff; color: var(--muted); text-align: left; font-size: 10px; padding: 6px 7px; border-bottom: 1px solid #d8e8ff; }
  body.site-app-page .route27-map-table td{ padding: 7px; border-bottom: 1px solid #d8e8ff; vertical-align: top; line-height: 1.25; font-weight: 400; overflow: hidden; }
  body.site-app-page .route27-map-table .route27-map-program{ font-weight: 650; color: #12233c; font-size: 12px; line-height: 1.2; }
  body.site-app-page .route27-map-table .route27-map-sub{ color: var(--muted); font-size: 10px; margin-top: 3px; line-height: 1.25; }
  body.site-app-page .route27-map-table .route27-uni-name{ display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; word-break: normal; overflow-wrap: anywhere; }
  body.site-app-page .route27-map-table .route27-format-main{ display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  body.site-app-page .route27-map-table .route27-exams-line{ display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  body.site-app-page .route27-map-table .route27-blue-btn{ padding: 6px 9px; border-radius: 7px; font-size: 11px; white-space: nowrap; }
  body.site-app-page .route27-easier-btn{ display: inline-flex; align-items: center; gap: 5px; margin-top: 8px; border: 1px solid #d8e8ff; border-radius: 8px; background: var(--blue-bg); color: var(--blue); padding: 6px 9px; font-size: 12px; font-weight: 800; cursor: pointer; font-family: inherit; }
  body.site-app-page .route27-easier-btn:hover,body.site-app-page .route27-easier-btn.active{ border-color: var(--blue); background: #fff; }
  body.site-app-page .route27-easier-row td{ padding: 0 8px 10px; background: #fff; }
  body.site-app-page .route27-easier-box{ margin-top: 4px; border-top: 1px solid #d8e8ff; padding: 10px 0 0 0; }
  body.site-app-page .route27-easier-head{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; color: #12233c; font-size: 13px; font-weight: 800; margin-bottom: 8px; }
  body.site-app-page .route27-easier-chip{ border: 0; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 9px; font-size: 12px; font-weight: 800; cursor: pointer; font-family: inherit; }
  body.site-app-page .route27-easier-list{ display: grid; gap: 6px; max-width: 980px; }
  body.site-app-page .route27-easier-item{ display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 10px; align-items: center; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; background: #fbfdff; }
  body.site-app-page .route27-easier-score{ color: var(--blue); font-size: 13px; font-weight: 900; }
  body.site-app-page .route27-easier-margin{ color: var(--green); font-size: 12px; font-weight: 800; margin-top: 2px; }
  body.site-app-page .route27-easier-title{ color: #12233c; font-size: 13px; font-weight: 800; line-height: 1.25; }
  body.site-app-page .route27-easier-meta{ color: var(--muted); font-size: 11px; line-height: 1.35; margin-top: 2px; }
  body.site-app-page .route27-map-table .route27-pill{ padding: 3px 7px; font-size: 10px; font-weight: 650; }
  body.site-app-page .route27-map-table th.route27-tight,body.site-app-page .route27-map-table td.route27-tight{ width: 32px; padding-left: 6px; padding-right: 4px; }
  body.site-app-page .route27-map-table th.route27-action,body.site-app-page .route27-map-table td.route27-action{ width: 96px; text-align: right; }
  body.site-app-page .route27-map-remove{ border: 0; background: transparent; color: var(--muted); cursor: pointer; font-weight: 800; font-size: 16px; }
  body.site-app-page .route27-pill{ display: inline-block; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 10px; font-size: 12px; font-weight: 700; }
  body.site-app-page .route27-calendar-item{ display: grid; grid-template-columns: 110px 1fr auto; gap: 12px; align-items: center; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; margin-top: 8px; }
  body .route27-calendar-shell{ display: grid; grid-template-columns: minmax(240px, 1fr) minmax(0, 2fr); gap: 14px; margin-top: 16px; align-items: start; }
  body .route27-calendar-box,body .route27-calendar-side,body .route27-calendar-suggested{ border: 1px solid #d8e8ff; border-radius: 10px; background: #fbfdff; padding: 14px; min-width: 0; }
  body .route27-calendar-head,body .route27-calendar-side-head{ display: flex; align-items: center; justify-content: space-between; gap: 10px; }
  body .route27-calendar-month{ color: #12233c; font-size: 15px; font-weight: 900; text-align: center; }
  body .route27-calendar-nav{ width: 34px; height: 34px; border: 1px solid #d8e8ff; border-radius: 8px; background: #fff; color: var(--blue); font: inherit; font-size: 22px; font-weight: 900; line-height: 1; cursor: pointer; }
  body .route27-calendar-weekdays,body .route27-calendar-grid{ display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; }
  body .route27-calendar-weekdays{ margin: 12px 0 6px; color: var(--muted); font-size: 11px; font-weight: 900; text-align: center; }
  body .route27-calendar-day{ position: relative; min-height: 42px; border: 1px solid transparent; border-radius: 8px; background: #fff; color: #12233c; font: inherit; font-size: 13px; font-weight: 850; cursor: pointer; }
  body .route27-calendar-day:hover{ border-color: var(--blue); }
  body .route27-calendar-day.is-empty{ visibility: hidden; pointer-events: none; }
  body .route27-calendar-day.has-events{ border-color: #b7d6ff; background: #f4f8ff; color: var(--blue); }
  body .route27-calendar-day.is-active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body .route27-calendar-day-count{ position: absolute; right: 4px; bottom: 4px; min-width: 17px; height: 17px; border-radius: 999px; background: #e8f8ef; color: var(--green); font-size: 10px; line-height: 17px; font-weight: 900; }
  body .route27-calendar-day.is-active .route27-calendar-day-count{ background: rgba(255,255,255,.22); color: #fff; }
  body .route27-calendar-events{ display: grid; gap: 10px; margin-top: 12px; }
  body .route27-calendar-event{ display: grid; grid-template-columns: 94px minmax(0, 1fr); gap: 12px; border: 1px solid #d8e8ff; border-radius: 9px; background: #fff; padding: 11px; }
  body .route27-calendar-event-date{ color: var(--blue); font-size: 12px; font-weight: 900; line-height: 1.35; }
  body .route27-calendar-event-title{ color: #12233c; font-size: 14px; font-weight: 900; line-height: 1.25; margin: 0 0 4px; }
  body .route27-calendar-event-org{ color: var(--blue); font-size: 12px; font-weight: 800; line-height: 1.35; }
  body .route27-calendar-event-meta{ display: flex; flex-wrap: wrap; gap: 6px; margin-top: 7px; }
  body .route27-calendar-event-meta span{ border: 1px solid #e3ebf6; border-radius: 999px; padding: 4px 7px; color: #3d4b63; font-size: 11px; font-weight: 800; background: #fff; }
  body .route27-calendar-event-actions{ display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 8px; }
  body .route27-calendar-event .route27-calendar-event-actions .elsewhere-link{ margin-top: 0; }
  body .route27-calendar-event .elsewhere-link{ display: inline-block; margin-top: 8px; }
  body .route27-calendar-suggested{ margin-top: 14px; }
  body .route27-calendar-suggested-list{ display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 10px; margin-top: 12px; }
  body .route27-calendar-suggested-list .route27-calendar-event{ grid-template-columns: 78px minmax(0, 1fr); }
  body.site-app-page .route27-date{ color: var(--blue); font-weight: 800; }
  body.site-app-page .route27-form{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 16px; }
  body.site-app-page .route27-score-card{ border: 1px solid #d8e8ff; border-radius: 10px; overflow: hidden; background: #fbfdff; margin-top: 14px; }
  body.site-app-page .route27-ege-bridge{ display: none; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; background: #f4f8ff; margin-top: 12px; }
  body.site-app-page .route27-ege-bridge.active{ display: block; }
  body.site-app-page .route27-ege-bridge-title{ color: #12233c; font-size: 13px; font-weight: 800; margin-bottom: 4px; }
  body.site-app-page .route27-ege-bridge-actions{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 9px; }
  body.site-app-page .route27-score-table{ width: 100%; border-collapse: collapse; font-size: 13px; }
  body.site-app-page .route27-score-table th{ background: #dcebfd; color: #3d4b63; padding: 9px 12px; text-align: left; font-size: 12px; }
  body.site-app-page .route27-score-table td{ border-top: 1px dashed #d8e8ff; padding: 9px 12px; vertical-align: middle; }
  body.site-app-page .route27-score-table input{ width: 120px; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; font-size: 13px; background: #fff; }
  body.site-app-page .route27-score-summary{ background: #f4f8ff; color: var(--muted); font-size: 12px; padding: 9px 12px; }
  body.site-app-page .route27-score-summary b{ color: #12233c; }
  body.site-app-page .route27-note-card{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 11px 12px; background: #fff; margin-top: 10px; }
  body.site-app-page .route27-note-card.is-alert{ border-color: #ffb34d; background: #fff9ef; }
  body.site-app-page .route27-note-card b{ color: #12233c; }
  body.site-app-page .route27-chips{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
  body.site-app-page .route27-chip{ border: 1px solid #d8e8ff; border-radius: 999px; padding: 7px 11px; font-weight: 700; color: #12233c; background: #fff; font-size: 13px; cursor: pointer; font-family: inherit; }
  body.site-app-page .route27-chip.active{ background: var(--blue); color: #fff; border-color: var(--blue); }
  body.site-app-page .route27-opportunities{ margin-top: 18px; border: 1px solid #d8e8ff; border-radius: 10px; padding: 14px; background: #fbfdff; }
  body.site-app-page .route27-opportunities-head{ display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; }
  body.site-app-page .route27-opportunity-filters{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
  body.site-app-page .route27-opportunity-search{ display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 10px; margin-top: 12px; }
  body.site-app-page .route27-opportunity-search input,body.site-app-page .route27-opportunity-search select{ width: 100%; min-width: 0; border: 1px solid #d8e8ff; border-radius: 8px; padding: 9px 11px; font-size: 13px; background: #fff; }
  body.site-app-page .route27-opportunity-count{ margin-top: 12px; color: var(--muted); font-size: 12px; font-weight: 800; }
  body.site-app-page .route27-opportunity-list{ display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 12px; margin-top: 10px; }
  body.site-app-page .route27-opportunity-card{ display: flex; flex-direction: column; gap: 8px; min-width: 0; border: 1px solid #d8e8ff; border-radius: 10px; padding: 12px; background: #fff; }
  body.site-app-page .route27-opportunity-top{ display: flex; justify-content: space-between; gap: 8px; align-items: center; }
  body.site-app-page .route27-opportunity-status{ color: var(--green); background: var(--green-bg); border-radius: 999px; padding: 5px 9px; font-size: 11px; font-weight: 800; white-space: nowrap; }
  body.site-app-page .route27-opportunity-title{ margin: 0; color: #12233c; font-size: 15px; line-height: 1.25; font-weight: 850; }
  body.site-app-page .route27-opportunity-org{ color: var(--blue); font-size: 12px; font-weight: 800; line-height: 1.35; }
  body.site-app-page .route27-opportunity-meta{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-app-page .route27-opportunity-meta span{ border: 1px solid #e3ebf6; border-radius: 999px; padding: 5px 8px; color: #3d4b63; font-size: 11px; font-weight: 800; background: #fff; }
  body.site-app-page .route27-opportunity-subjects{ color: var(--muted); font-size: 12px; line-height: 1.4; }
  body.site-app-page .route27-opportunity-actions{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: auto; padding-top: 4px; }
  body.site-app-page .route27-result-box{ display: none; margin-top: 12px; padding: 0; border: 0; border-radius: 0; background: transparent; }
  body.site-app-page .route27-result-box.active{ display: block; }
  body.site-app-page .route27-result-title{ font-size: 14px; font-weight: 800; color: #12233c; margin-bottom: 6px; }
  body.site-app-page .route27-result-text{ color: var(--muted); line-height: 1.55; font-size: 13px; }
  body.site-app-page .route27-rec-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
  body.site-app-page .route27-rec-list a{ border: 1px solid #d8e8ff; border-radius: 999px; padding: 7px 10px; color: var(--blue); background: #fff; font-weight: 700; font-size: 13px; text-decoration: none; }
  body.site-app-page .route27-bars{ display: grid; gap: 7px; margin-top: 10px; }
  body.site-app-page .route27-bar{ display: grid; grid-template-columns: 130px 1fr 58px; gap: 10px; align-items: center; color: #12233c; font-size: 13px; font-weight: 700; }
  body.site-app-page .route27-bar-track{ display: block; height: 9px; border-radius: 999px; background: #dbeaff; overflow: hidden; }
  body.site-app-page .route27-bar-fill{ display: block; height: 100%; border-radius: inherit; background: var(--blue); }
  body.site-app-page .route27-bar.is-top .route27-bar-fill{ background: #ffd44d; }
  body.site-app-page .route27-repeat-link{ display: inline-flex; margin-top: 10px; }
  body.site-app-page .route27-ai{ display: grid; grid-template-columns: 120px 1fr; gap: 18px; align-items: start; }
  body.site-app-page .route27-ai img{ width: 90px; max-width: 100%; border-radius: 10px; }
  body.site-app-page .route27-answer{ background: #dcebfd; border-radius: 8px; padding: 12px; color: #24364f; line-height: 1.45; font-size: 13px; }
  body.site-app-page .route27-panel{ display: none; }
  body.site-app-page .route27-panel.active{ display: block; }
  body.site-app-page .route27-offer{ margin-bottom: 16px; padding: 16px 18px; border: 1px solid #bcd5ff; border-radius: 10px; background: linear-gradient(135deg, #f4f8ff 0%, #fff 72%); }
  body.site-app-page .route27-offer-title{ margin: 0 0 7px; color: #12233c; font-size: 25px; line-height: 1.2; }
  body.site-app-page .route27-offer-grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
  body.site-app-page .route27-offer-grid > div{ display: flex; flex-direction: column; gap: 3px; min-width: 0; padding: 10px 12px; border: 1px solid #d8e8ff; border-radius: 8px; background: #fff; }
  body.site-app-page .route27-offer-grid b{ color: #12233c; font-size: 13px; }
  body.site-app-page .route27-offer-grid span{ color: var(--muted); font-size: 12px; line-height: 1.35; }
  body.site-app-page .route27-access-note{ display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 16px; padding: 12px 14px; border: 1px solid #f3c66e; border-radius: 8px; background: #fff8e8; color: #6d4d12; font-size: 13px; line-height: 1.45; }
  body.site-app-page .route27-access-note.paid{ display: none; }
  body.site-app-page .route27-step.is-locked{ background: #f8fafc; border-color: #dfe7f2; }
  body.site-app-page .route27-step.is-locked .route27-step-num{ background: #eef2f7; color: #758197; }
  body.site-app-page .route27-step-lock{ display: block; margin-top: 3px; color: var(--blue); font-size: 10px; font-weight: 800; }
  body.site-app-page .route27-paid-benefits{ margin-top: 12px; }
  body.site-app-page .kim-page{ width: 100%; margin: 0; }
  body.site-app-page .kim-crumbs{ font-size: 13px; color: var(--ink-3); margin-bottom: 14px; }
  body.site-app-page .kim-crumbs a{ color: var(--ink-2); text-decoration: none; }
  body.site-app-page .kim-hero{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 20px 22px; margin-bottom: 14px; }
  body.site-app-page .kim-kicker{ display: inline-block; background: var(--blue-bg); color: var(--blue); border-radius: 999px; padding: 5px 11px; font-size: 12px; font-weight: 800; margin-bottom: 12px; }
  body.site-app-page .kim-hero h2{ font-size: 28px; line-height: 1.2; margin: 0 0 10px; color: #1b1b1b; }
  body.site-app-page .kim-hero h2 span{ color: var(--blue); }
  body.site-app-page .kim-hero p,body.site-app-page .kim-card p{ color: var(--ink-2); line-height: 1.6; margin: 0 0 14px; }
  body.site-app-page .kim-status{ display: inline-flex; align-items: center; border-radius: 999px; padding: 7px 13px; font-size: 13px; font-weight: 800; background: var(--warn-bg); color: var(--warn-ink); }
  body.site-app-page .kim-steps{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 18px; }
  body.site-app-page .kim-step{ border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; color: var(--muted); font-size: 12px; background: #fff; }
  body.site-app-page .kim-step b{ display: block; color: #1b1b1b; margin-bottom: 3px; }
  body.site-app-page .kim-step.active{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-app-page .kim-links,body.site-app-page .kim-filter,body.site-app-page .kim-docs{ display: flex; flex-wrap: wrap; gap: 8px; }
  body.site-app-page .kim-links{ margin-top: 16px; }
  body.site-app-page .kim-links a,body.site-app-page .kim-docs a,body.site-app-page .kim-filter button{ border: 1px solid var(--border); border-radius: 8px; padding: 8px 12px; color: #1b1b1b; background: #fff; text-decoration: none; font-size: 13px; font-weight: 800; }
  body.site-app-page .kim-links a.primary,body.site-app-page .kim-docs a.primary,body.site-app-page .kim-filter button.on{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-app-page .kim-stats{ display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 20px; }
  body.site-app-page .kim-stat,body.site-app-page .kim-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; }
  body.site-app-page .kim-stat{ padding: 14px 16px; }
  body.site-app-page .kim-stat b{ display: block; color: #1b1b1b; font-size: 22px; line-height: 1.2; }
  body.site-app-page .kim-stat span{ display: block; color: var(--muted); font-size: 12px; font-weight: 700; }
  body.site-app-page .kim-card{ padding: 18px 20px; margin-bottom: 14px; }
  body.site-app-page .kim-card h2{ margin: 0 0 8px; color: #1b1b1b; font-size: 20px; }
  body.site-app-page .kim-filter{ margin: 14px 0; }
  body.site-app-page .kim-filter button{ cursor: pointer; font-family: inherit; }
  body.site-app-page .kim-row{ border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin: 10px 0; background: #fff; }
  body.site-app-page .kim-row.changed{ border-color: #f59e0b; background: #fffaf2; }
  body.site-app-page .kim-row-head{ display: flex; align-items: center; justify-content: space-between; gap: 12px; }
  body.site-app-page .kim-row h3{ margin: 0; color: #1b1b1b; font-size: 16px; }
  body.site-app-page .kim-pill{ flex: none; border-radius: 999px; padding: 4px 9px; font-size: 11px; font-weight: 800; background: var(--ok-bg); color: var(--ok-ink); }
  body.site-app-page .kim-row.changed .kim-pill{ background: var(--warn-bg); color: var(--warn-ink); }
  body.site-app-page .kim-look{ border-left: 3px solid var(--blue); padding-left: 10px; color: var(--ink-2); }
  body.site-app-page .kim-docs{ margin-top: 11px; }
  body.site-app-page .kim-docs a{ color: var(--blue); }
  body.site-app-page .kim-docs a.primary{ color: #fff; }
  body.site-app-page .kim-card ul{ margin: 0; padding-left: 22px; color: var(--ink-2); line-height: 1.7; }
  body.site-app-page .kim-card li a{ color: var(--blue); font-weight: 800; }
  body.site-app-page .kim-article .kim-card h2{ font-size: 22px; }
  body.site-app-page .kim-lead{ font-size: 16px; border-left: 4px solid var(--blue); background: var(--blue-bg); padding: 13px 16px; border-radius: 0 8px 8px 0; }
  body.site-app-page .kim-warning{ border-color: #ef4444; background: #fef2f2; }
  body.site-app-page .kim-article-table{ table-layout: auto; }
  body.site-app-page .kim-article-table th,body.site-app-page .kim-article-table td{ white-space: normal; vertical-align: top; padding: 10px 12px; line-height: 1.45; }
  body.site-app-page .kim-steps-list{ margin: 0; padding-left: 22px; color: var(--ink-2); line-height: 1.7; }
  body.site-app-page .score-converter{ display: grid; grid-template-columns: minmax(220px, 1fr) 140px minmax(190px, .8fr); gap: 10px; align-items: center; margin-top: 14px; }
  body.site-app-page .score-converter select,body.site-app-page .score-converter input{ width: 100%; min-width: 0; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font: inherit; background: #fff; }
  body.site-app-page .score-output{ font-size: 18px; font-weight: 800; color: #1b1b1b; }
  body.site-app-page .score-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(54px, 1fr)); gap: 5px; margin-top: 12px; }
  body.site-app-page .score-cell{ border: 1px solid var(--border); border-radius: 8px; padding: 5px 4px; text-align: center; background: #fff; font-variant-numeric: tabular-nums; }
  body.site-app-page .score-cell .primary-score{ display: block; color: var(--muted); font-size: 11px; }
  body.site-app-page .score-cell .test-score{ display: block; color: #1b1b1b; font-size: 13px; font-weight: 800; }
  body.site-app-page .score-cell.threshold{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-app-page .kim-qa .q{ margin: 16px 0 6px; color: var(--ink); font-size: 16px; font-weight: 800; }
  body.site-app-page .kim-qa .a{ color: var(--ink-2); margin: 0; line-height: 1.65; }
  body.olymp-page main{ max-width: 1240px; }
  body.olymp-page .olymp-hero{ display: grid; grid-template-columns: minmax(0, 1fr) 230px; gap: 18px; align-items: stretch; margin-bottom: 16px; padding: 22px; border: 1px solid var(--border); border-radius: 10px; background: #fff; }
  body.olymp-page .olymp-kicker{ display: inline-flex; width: fit-content; margin-bottom: 10px; border-radius: 999px; padding: 5px 11px; background: var(--blue-bg); color: var(--blue); font-size: 12px; font-weight: 850; }
  body.olymp-page .olymp-hero h2{ margin: 0 0 10px; color: var(--ink); font-size: 30px; line-height: 1.16; letter-spacing: 0; }
  body.olymp-page .olymp-hero p{ max-width: 850px; margin: 0; color: var(--ink-2); line-height: 1.6; }
  body.olymp-page .olymp-hero-aside{ display: flex; flex-direction: column; justify-content: center; gap: 6px; min-width: 0; padding: 16px; border: 1px solid #d8e8ff; border-radius: 8px; background: #fbfdff; }
  body.olymp-page .olymp-hero-aside b{ color: var(--blue); font-size: 36px; line-height: 1; }
  body.olymp-page .olymp-hero-aside span{ color: var(--muted); font-size: 13px; font-weight: 750; }
  body.olymp-page .olymp-hero-aside a{ width: fit-content; margin-top: 6px; color: var(--blue); font-size: 13px; font-weight: 850; text-decoration: none; }
  body.olymp-page .olymp-panel{ margin-bottom: 14px; padding: 14px; border: 1px solid var(--border); border-radius: 10px; background: #fff; }
  body.olymp-page .olymp-filter-row{ display: grid; grid-template-columns: minmax(0, 1fr) 190px 210px 190px; gap: 10px; }
  body.olymp-page .olymp-filter-row input,body.olymp-page .olymp-filter-row select{ width: 100%; min-width: 0; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; background: #fff; font: inherit; font-size: 14px; }
  body.olymp-page .olymp-summary{ margin-top: 10px; color: var(--muted); font-size: 13px; font-weight: 850; }
  body.olymp-page .olymp-layout{ display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 14px; align-items: start; }
  body.olymp-page .olymp-guide{ position: sticky; top: 12px; border: 1px solid var(--border); border-radius: 10px; padding: 16px; background: #fff; }
  body.olymp-page .olymp-guide h3{ margin: 0 0 10px; color: var(--ink); font-size: 18px; }
  body.olymp-page .olymp-guide p{ margin: 10px 0 0; color: var(--ink-2); font-size: 13px; line-height: 1.55; }
  body.olymp-page .olymp-list{ display: grid; grid-template-columns: repeat(auto-fit, minmax(310px, 1fr)); gap: 12px; min-width: 0; }
  body.olymp-page .olymp-card{ display: flex; flex-direction: column; gap: 9px; min-width: 0; border: 1px solid #d8e8ff; border-radius: 10px; padding: 14px; background: #fff; }
  body.olymp-page .olymp-card-top{ display: flex; justify-content: space-between; gap: 8px; align-items: center; }
  body.olymp-page .olymp-pill{ display: inline-flex; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 10px; font-size: 12px; font-weight: 850; }
  body.olymp-page .olymp-status{ border-radius: 999px; background: var(--green-bg); color: var(--green); padding: 5px 9px; font-size: 11px; font-weight: 850; white-space: nowrap; }
  body.olymp-page .olymp-card h3{ margin: 0; color: var(--ink); font-size: 17px; line-height: 1.25; letter-spacing: 0; }
  body.olymp-page .olymp-org{ color: var(--blue); font-size: 12px; font-weight: 850; line-height: 1.35; }
  body.olymp-page .olymp-meta{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.olymp-page .olymp-meta span{ border: 1px solid #e3ebf6; border-radius: 999px; padding: 5px 8px; color: #3d4b63; font-size: 11px; font-weight: 850; background: #fff; }
  body.olymp-page .olymp-card p{ margin: 0; color: var(--ink-2); font-size: 13px; line-height: 1.55; }
  body.olymp-page .olymp-subjects{ color: var(--muted); font-size: 12px; line-height: 1.45; }
  body.olymp-page .olymp-actions{ display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: auto; padding-top: 4px; }
  body.olymp-page .olymp-actions a{ color: var(--blue); font-size: 13px; font-weight: 850; text-decoration: none; }
  body.olymp-page .olymp-actions a.primary{ border-radius: 8px; padding: 8px 11px; background: var(--blue); color: #fff; }
  body.olymp-page .olymp-loader{ margin-top: 14px; padding: 12px 14px; border: 1px dashed #bcd5ff; border-radius: 10px; background: #fbfdff; color: var(--muted); font-size: 13px; font-weight: 850; text-align: center; }
  @media (max-width: 980px){body.site-app-page .route27-steps{ grid-template-columns: repeat(2, 1fr); }
    body.site-app-page .route27-head,body.site-app-page .route27-save,body.site-app-page .route27-two,body.site-app-page .route27-pay-row,body.site-app-page .route27-form,body.site-app-page .route27-calendar-item,body.site-app-page .route27-ai,body.site-app-page .route27-test-results,body.site-app-page .route27-rec-filters,body.site-app-page .route27-offer-grid{ grid-template-columns: 1fr; }
    body .route27-calendar-shell,body .route27-calendar-event{ grid-template-columns: 1fr; }
    body .route27-calendar-suggested-list .route27-calendar-event{ grid-template-columns: 1fr; }
    body.site-app-page .route27-opportunities-head,body.site-app-page .route27-opportunity-search{ grid-template-columns: 1fr; flex-direction: column; }
    body.site-app-page .route27-direction-options{ grid-template-columns: 1fr; }
    body.site-app-page .route27-direction-option{ border-left: 0; border-top: 1px solid #d8e8ff; }
    body.site-app-page .route27-direction-option:first-child{ border-top: 0; }
    body.site-app-page .route27-progress{ display: inline-block; margin-bottom: 14px; }
    body.site-app-page .route27-save button{ width: 100%; }
    body.site-app-page .route27-access-note{ align-items: stretch; flex-direction: column; }
    body.site-app-page .kim-steps{ grid-template-columns: 1fr 1fr; }
    body.site-app-page .score-converter{ grid-template-columns: 1fr; }
    body.olymp-page .olymp-hero,body.olymp-page .olymp-filter-row,body.olymp-page .olymp-layout{ grid-template-columns: 1fr; }
    body.olymp-page .olymp-guide{ position: static; }
    body.olymp-page .olymp-hero h2{ font-size: 24px; }}
/* End main application page. */

/* Consolidated page style 068b595ac6c5. */
body.site-style-068b595ac6c5{
    --green: #1a7f37; --green-bg: #e6f4ea;
    --red: #c0362c; --amber: #9a6700; --amber-bg: #fff8e1;
    --border: #e2e2e2; --muted: #6b7280; --bg: #fafafa;
    --blue: #1b6ef3; --blue-bg: #eaf2ff;
    --card: #fff; --line: #d8e8ff; --ink: #12233c; --ink-2: #566377; --ink-3: #9aa8bd;
    --blue-soft: #dcebfd; --warn-bg: #fff7e8; --warn-ink: #b45309; --ok-bg: #e8f8ef; --ok-ink: #168344;
    --shadow: 0 12px 28px rgba(15,41,66,.06);
  }
  body.site-style-068b595ac6c5 *{ box-sizing: border-box; }
  body.site-style-068b595ac6c5{
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    margin: 0; background: var(--bg); color: #1b1b1b; line-height: 1.5;
  }
  body.site-style-068b595ac6c5 header{
    background: #fff; border-bottom: 1px solid var(--border);
    padding: 18px 28px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px;
  }
  body.site-style-068b595ac6c5 header h1{ font-size: 18px; margin: 0; }
  body.site-style-068b595ac6c5 header .meta{ color: var(--muted); font-size: 13px; }
  body.site-style-068b595ac6c5 header{ display: block; padding: 14px 28px 18px; }
  body.site-style-068b595ac6c5 .site-topbar{ display: flex; align-items: center; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--border); gap: 28px; }
  body.site-style-068b595ac6c5 .site-logo{ display: flex; align-items: center; gap: 8px; text-decoration: none; color: #1b1b1b; font-weight: 700; font-size: 15px; }
  body.site-style-068b595ac6c5 .site-logo img{ height: 30px; width: auto; border-radius: 6px; }
  body.site-style-068b595ac6c5 .site-header-main{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }
  body.site-style-068b595ac6c5 .site-topbar-left{ display: flex; align-items: center; gap: 28px; min-width: 0; width: 100%; }
  body.site-style-068b595ac6c5 .site-nav{ display: flex; gap: 4px; align-items: center; flex-wrap: wrap; justify-content: space-between; flex: 1; }
  /* Общий отступ страницы увеличен (было 20px 16px 60px) -- по фидбоку
     "ощущение слипленности": больше воздуха по краям и снизу. */
  body.site-style-068b595ac6c5 main{ max-width: 1200px; margin: 0 auto; padding: 28px 20px 72px; }
  body.site-style-068b595ac6c5 .tabs{ display: flex; gap: 4px; margin-bottom: 20px; border-bottom: 1px solid var(--border); }
  body.site-style-068b595ac6c5 .tab-btn{
    padding: 10px 16px; border: none; background: none; cursor: pointer;
    font-size: 14px; color: var(--muted); border-bottom: 2px solid transparent;
    text-decoration: none; display: inline-block;
  }
  body.site-style-068b595ac6c5 .tab-btn.active{ color: #1b1b1b; border-bottom-color: #1b1b1b; font-weight: 600; }
  body.site-style-068b595ac6c5 .tab-btn.cta-2027{
    background: #ffbf17; color: #15243a; border-bottom: 4px solid #f08a00; border-radius: 8px;
    font-weight: 800; margin-left: 8px; padding: 9px 18px;
  }
  body.site-style-068b595ac6c5 .tab-btn.cta-2027.active{ border-bottom-color: #f08a00; color: #15243a; }
  body.site-style-068b595ac6c5 .panel{ display: none; }
  body.site-style-068b595ac6c5 .panel.active{ display: block; }
  body.site-style-068b595ac6c5 .search-row{ display: flex; gap: 8px; margin-bottom: 16px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 input[type=text],body.site-style-068b595ac6c5 input[type=number]{
    flex: 1; min-width: 220px; padding: 10px 12px; border: 1px solid var(--border);
    border-radius: 8px; font-size: 14px;
  }
  body.site-style-068b595ac6c5 button.primary{
    padding: 10px 18px; border: none; border-radius: 8px; background: #1b1b1b; color: #fff;
    font-size: 14px; cursor: pointer;
  }
  body.site-style-068b595ac6c5 button.primary:hover{ background: #333; }
  body.site-style-068b595ac6c5 button.secondary{
    padding: 8px 14px; border: 1px solid var(--border); border-radius: 8px; background: #fff;
    font-size: 13px; cursor: pointer; color: #1b1b1b;
  }
  body.site-style-068b595ac6c5 button.secondary:hover{ background: #f3f3f3; }
  body.site-style-068b595ac6c5 button:disabled{ opacity: 0.5; cursor: default; }
  body.site-style-068b595ac6c5 .sort-row{ display: flex; align-items: center; gap: 8px; margin-bottom: 14px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .sort-row .lbl{ color: var(--muted); font-size: 13px; }
  body.site-style-068b595ac6c5 .sort-row select{
    padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; background: #fff;
    font-size: 13px; color: #1b1b1b; max-width: 260px;
  }
  body.site-style-068b595ac6c5 button.sort-btn.active{ background: var(--blue); color: #fff; border-color: var(--blue); }
  body.site-style-068b595ac6c5 a.link-btn{
    display: inline-block; padding: 6px 12px; border: 1px solid var(--border); border-radius: 8px;
    font-size: 13px; color: #1b1b1b; text-decoration: none; background: #fff;
  }
  body.site-style-068b595ac6c5 a.link-btn:hover{ background: #f3f3f3; }
  body.site-style-068b595ac6c5 table{ width: 100%; border-collapse: collapse; background: #fff; border-radius: 10px; overflow: hidden; }
  body.site-style-068b595ac6c5 th,body.site-style-068b595ac6c5 td{ text-align: left; padding: 5px 5px; font-size: 13px; border-bottom: 1px solid var(--border); white-space: nowrap; }
  body.site-style-068b595ac6c5 th{ background: #f3f3f3; font-weight: 600; color: #444; position: sticky; top: 0; }
  body.site-style-068b595ac6c5 th.sortable{ cursor: pointer; user-select: none; }
  body.site-style-068b595ac6c5 th.sortable:hover{ background: #e8e8e8; }
  body.site-style-068b595ac6c5 th.sortable .arrow{ color: var(--muted); font-size: 11px; margin-left: 4px; }
  body.site-style-068b595ac6c5 tr.consent-yes{ background: var(--green-bg); }
  body.site-style-068b595ac6c5 tr.highlight-row{ background: var(--blue-bg) !important; outline: 2px solid var(--blue); outline-offset: -2px; }
  body.site-style-068b595ac6c5 tr:hover{ background: #f5f5f5; }
  body.site-style-068b595ac6c5 tr.consent-yes:hover{ background: #dcefe1; }
  body.site-style-068b595ac6c5 tr.highlight-row:hover{ background: #dcebfd !important; }
  body.site-style-068b595ac6c5 tr.own-row-toolbar td{ background: #dcebfd; border-top: none; padding: 8px 10px; white-space: normal; font-size: 13px; }
  body.site-style-068b595ac6c5 .own-row-toolbar-inner{ display: flex; gap: 16px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 tr.own-row-toolbar label{ display: inline-flex; align-items: center; gap: 5px; cursor: pointer; }
  body.site-style-068b595ac6c5 .badge{ display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 12px; font-weight: 600; }
  body.site-style-068b595ac6c5 .badge.yes{ background: var(--green); color: #fff; }
  body.site-style-068b595ac6c5 .badge.no{ background: #eee; color: var(--muted); }
  /* в таблице конкурсного списка бейдж согласия -- не таблетка вокруг слова,
     а сплошная квадратная полоса на всю ширину ячейки (поверх уже подсвеченной
     зелёным строки -- получается двухтоновая полоска) */
  body.site-style-068b595ac6c5 .detail-table .badge{ display: block; width: 100%; box-sizing: border-box; text-align: center; border-radius: 0; padding: 4px 0; }
  body.site-style-068b595ac6c5 .fresh-consent-badge{
    display: block; margin-top: 3px; font-size: 11px; font-weight: 600; color: var(--amber);
    background: var(--amber-bg); padding: 1px 3px; border-radius: 0; width: fit-content; white-space: nowrap;
  }
  body.site-style-068b595ac6c5 .card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 16px; margin-bottom: 12px; }
  body.site-style-068b595ac6c5 .card h3{ margin: 0 0 4px; font-size: 15px; }
  body.site-style-068b595ac6c5 .card .sub{ color: var(--muted); font-size: 13px; margin-bottom: 10px; }
  body.site-style-068b595ac6c5 .card .actions{ margin-top: 10px; }
  body.site-style-068b595ac6c5 .empty{ color: var(--muted); padding: 24px; text-align: center; }
  body.site-style-068b595ac6c5 .table-wrap{ overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; max-height: 70vh; overflow-y: auto; }
  body.site-style-068b595ac6c5 .table-wrap.full-list{ max-height: none; overflow-y: visible; }
  body.site-style-068b595ac6c5 .note{ font-size: 12px; color: var(--muted); margin-top: 8px; }
  body.site-style-068b595ac6c5 .list-footer{ display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 14px; }
  body.site-style-068b595ac6c5 .elsewhere-link{ color: var(--blue); text-decoration: none; }
  body.site-style-068b595ac6c5 .elsewhere-link:hover{ text-decoration: underline; }
  body.site-style-068b595ac6c5 .breadcrumb{ font-size: 13px; color: var(--muted); margin-bottom: 10px; }
  body.site-style-068b595ac6c5 .breadcrumb a{ color: var(--blue); text-decoration: none; }
  body.site-style-068b595ac6c5 .breadcrumb a:hover{ text-decoration: underline; }
  body.site-style-068b595ac6c5 .back-link{ display: inline-block; margin-bottom: 14px; color: var(--blue); text-decoration: none; font-size: 14px; }
  body.site-style-068b595ac6c5 .back-link:hover{ text-decoration: underline; }
  /* переключатель "Списки: Конкурсные / Подавших документы" -- по образцу
     самих Госуслуг (см. их страницу программы) */
  body.site-style-068b595ac6c5 .list-toggle{ display: flex; gap: 8px; margin-bottom: 10px; }
  body.site-style-068b595ac6c5 .list-toggle-btn{
    padding: 6px 14px; border-radius: 8px; border: 1px solid var(--border);
    color: var(--muted); text-decoration: none; font-size: 13px; font-weight: 600;
    background: var(--card-bg, #fff);
  }
  body.site-style-068b595ac6c5 .list-toggle-btn:hover{ border-color: var(--blue); color: var(--blue); }
  body.site-style-068b595ac6c5 .list-toggle-btn.active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-068b595ac6c5 .detail-header h2{ margin: 0 0 6px; font-size: 22px; }
  body.site-style-068b595ac6c5 .detail-header .university-link{ color: var(--blue); text-decoration: none; font-weight: 600; }
  body.site-style-068b595ac6c5 .detail-header .university-link:hover{ text-decoration: underline; }
  body.site-style-068b595ac6c5 .detail-header .sub{ color: var(--muted); font-size: 13px; margin-bottom: 16px; }
  body.site-style-068b595ac6c5 .detail-stats{ display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
  body.site-style-068b595ac6c5 .stat-box{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 12px 16px; min-width: 120px; }
  body.site-style-068b595ac6c5 .stat-box .val{ font-size: 22px; font-weight: 700; }
  body.site-style-068b595ac6c5 .stat-box .lbl{ font-size: 12px; color: var(--muted); margin-top: 2px; }
  body.site-style-068b595ac6c5 .filter-row{ display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin-bottom: 14px; font-size: 13px; }
  body.site-style-068b595ac6c5 .filter-row label{ display: flex; align-items: center; gap: 6px; cursor: pointer; }
  /* Excel-подобные фильтры по колонкам в конкурсном списке (задача #33) */
  body.site-style-068b595ac6c5 .filter-th{ position: relative; }
  body.site-style-068b595ac6c5 .col-filter-btn{ cursor: pointer; color: var(--muted); font-size: 11px; margin-left: 3px; user-select: none; }
  body.site-style-068b595ac6c5 .col-filter-btn:hover{ color: var(--blue); }
  body.site-style-068b595ac6c5 .col-filter-btn.active{ color: var(--blue); font-weight: 700; }
  body.site-style-068b595ac6c5 .col-filter-popover{
    position: absolute; top: 100%; left: 0; z-index: 20; background: #fff; border: 1px solid var(--border);
    border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.12); padding: 8px; min-width: 200px; max-height: 280px;
    overflow-y: auto; font-weight: 400; text-transform: none; letter-spacing: normal; white-space: normal;
  }
  body.site-style-068b595ac6c5 .col-filter-actions{ display: flex; gap: 8px; margin-bottom: 6px; border-bottom: 1px solid var(--border); padding-bottom: 6px; }
  body.site-style-068b595ac6c5 .col-filter-actions button{ border: none; background: none; color: var(--blue); font-size: 12px; cursor: pointer; padding: 0; }
  body.site-style-068b595ac6c5 .col-filter-actions button:hover{ text-decoration: underline; }
  body.site-style-068b595ac6c5 .col-filter-options{ display: flex; flex-direction: column; gap: 4px; }
  body.site-style-068b595ac6c5 .col-filter-option{ display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 400; cursor: pointer; white-space: nowrap; }
  body.site-style-068b595ac6c5 #col-filters-reset-btn{ padding: 4px 10px; font-size: 12px; }
  body.site-style-068b595ac6c5 .pagination{ display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 16px; }
  body.site-style-068b595ac6c5 .pagination .page-info{ font-size: 13px; color: var(--muted); }
  body.site-style-068b595ac6c5 .detail-table-wrap{ overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; }
  body.site-style-068b595ac6c5 .detail-table-wrap table.detail-table{ table-layout: fixed; }
  /* Ширины колонок задаются динамически через <colgroup> в JS (tableColgroupHtml) --
     число колонок меняется (платные места добавляют колонку "Договор", а
     "Подавшие документы" не имеет ОВП/ВПП), фиксированные nth-child были некорректны. */
  body.site-style-068b595ac6c5 .detail-table-wrap table.detail-table td{ white-space: normal; word-break: break-word; line-height: 1.35; }
  body.site-style-068b595ac6c5 .detail-table-wrap table.detail-table .consent-target-inner{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body.site-style-068b595ac6c5 .benefit-badge{ color: var(--blue); font-weight: 700; font-size: 12px; white-space: nowrap; }
  body.site-style-068b595ac6c5 .benefit-badge.vpp{ color: var(--amber); }
  body.site-style-068b595ac6c5 .benefit-badge.paid{ color: var(--green); }
  body.site-style-068b595ac6c5 .leaving-link{ color: var(--amber); font-weight: 600; text-decoration: none; }
  body.site-style-068b595ac6c5 .leaving-link:hover{ text-decoration: underline; }
  body.site-style-068b595ac6c5 .estimate-tag{ color: var(--muted); font-weight: 400; font-size: 11px; }
  body.site-style-068b595ac6c5 .consent-forecast{ font-size: 12px; color: var(--muted); margin-top: 3px; }
  body.site-style-068b595ac6c5 .catalog-filters{
    background: #fff; border: 1px solid var(--border); border-radius: 10px;
    padding: 14px 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 12px;
  }
  body.site-style-068b595ac6c5 .catalog-filter-group{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
  body.site-style-068b595ac6c5 .catalog-filter-group .cf-title{ flex-basis: 100%; font-size: 12px; color: var(--muted); font-weight: 600; text-transform: uppercase; letter-spacing: .02em; }
  body.site-style-068b595ac6c5 .catalog-filter-group .cf-chips{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-068b595ac6c5 .catalog-filter-group .cf-level-groups{ flex-basis: 100%; display: flex; flex-direction: column; gap: 10px; }
  body.site-style-068b595ac6c5 .cf-level-group-title{ color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; margin-bottom: 6px; }
  body.site-style-068b595ac6c5 .catalog-chip{
    display: inline-flex; align-items: center; gap: 5px; padding: 5px 10px;
    border: 1px solid var(--border); border-radius: 999px; font-size: 13px; cursor: pointer; user-select: none; background: #fff;
  }
  body.site-style-068b595ac6c5 .catalog-chip:has(input:checked){ background: var(--blue-bg); border-color: var(--blue); color: var(--blue); font-weight: 600; }
  body.site-style-068b595ac6c5 .catalog-chip input{ margin: 0; }
  body.site-style-068b595ac6c5 .cf-count{ color: var(--muted); font-size: 11px; }
  body.site-style-068b595ac6c5 .catalog-chip:has(input:checked) .cf-count{ color: var(--blue); }
  body.site-style-068b595ac6c5 .catalog-filter-cost{ padding-top: 2px; }
  body.site-style-068b595ac6c5 .catalog-cost-lbl{ font-size: 13px; color: var(--muted); display: inline-flex; align-items: center; gap: 6px; }
  body.site-style-068b595ac6c5 .catalog-cost-lbl input{ width: 120px; padding: 5px 8px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; }
  body.site-style-068b595ac6c5 .catalog-filter-sort{ border-top: 1px solid var(--border); padding-top: 10px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .catalog-filter-sort select{ padding: 6px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; background: #fff; }
  body.site-style-068b595ac6c5 .catalog-filter-section{ border-top: 1px solid var(--border); padding-top: 10px; }
  body.site-style-068b595ac6c5 .catalog-filter-section:first-child{ border-top: none; padding-top: 0; }
  body.site-style-068b595ac6c5 .catalog-filter-section summary{
    cursor: pointer; font-size: 14px; font-weight: 600; list-style: none; display: flex; align-items: center; gap: 8px;
  }
  body.site-style-068b595ac6c5 .catalog-filter-section summary::-webkit-details-marker{ display: none; }
  body.site-style-068b595ac6c5 .catalog-filter-section summary::before{ content: "▸"; color: var(--muted); font-size: 11px; transition: transform .15s; }
  body.site-style-068b595ac6c5 .catalog-filter-section[open] summary::before{ transform: rotate(90deg); }
  body.site-style-068b595ac6c5 .catalog-filter-section > *:not(summary){ margin-top: 10px; }
  body.site-style-068b595ac6c5 .pick-compact-filter-grid{ display: grid; grid-template-columns: minmax(180px, 1.1fr) minmax(220px, 1.5fr) minmax(170px, 1fr) auto; gap: 12px; align-items: start; }
  body.site-style-068b595ac6c5 .pick-basic-grid{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .8fr); gap: 18px; align-items: start; }
  body.site-style-068b595ac6c5 .pick-form-column{ min-width: 0; }
  body.site-style-068b595ac6c5 .pick-form-column .catalog-filter-group{ margin: 0; }
  body.site-style-068b595ac6c5 .pick-form-column .catalog-chip{ padding: 7px 9px; }
  body.site-style-068b595ac6c5 .pick-filter-field{ min-width: 0; }
  body.site-style-068b595ac6c5 .pick-filter-field > label, body.site-style-068b595ac6c5 .pick-filter-field > .cf-title{ display: block; color: var(--muted); font-size: 12px; font-weight: 700; margin-bottom: 6px; }
  body.site-style-068b595ac6c5 .pick-filter-field > input{ width: 100%; box-sizing: border-box; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 13px; }
  body.site-style-068b595ac6c5 .pick-filter-field .catalog-filter-group{ margin: 0; }
  body.site-style-068b595ac6c5 .pick-filter-field .catalog-filter-group .cf-title{ display: none; }
  body.site-style-068b595ac6c5 .pick-filter-field .catalog-chip{ padding: 7px 9px; }
  body.site-style-068b595ac6c5 .pick-filter-toggles{ display: flex; flex-direction: column; gap: 7px; padding-top: 20px; }
  body.site-style-068b595ac6c5 .pick-filter-toggles .catalog-chip{ white-space: nowrap; }
  body.site-style-068b595ac6c5 .cfs-count{ color: var(--blue); font-size: 12px; font-weight: 600; }
  body.site-style-068b595ac6c5 .catalog-direction-search{ display: flex; flex-direction: column; gap: 8px; }
  body.site-style-068b595ac6c5 .direction-search-row{ display: flex; gap: 8px; }
  body.site-style-068b595ac6c5 .direction-search-row .okso-search-wrap > input{
    width: 100%; box-sizing: border-box; padding: 6px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px;
  }
  body.site-style-068b595ac6c5 .selected-chips{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-068b595ac6c5 .selected-chip{
    display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px;
    background: var(--blue-bg); border: 1px solid var(--blue); border-radius: 999px; font-size: 12px; color: var(--blue); font-weight: 600;
  }
  body.site-style-068b595ac6c5 .selected-chip .remove-x{ cursor: pointer; font-weight: 700; }
  /* Мульти-выбор направления с фильтром (2026-09-05) -- раньше был обычный
     native <input list="datalist">: клик по варианту сразу закрывал список
     и очищал поле, поэтому отметить несколько направлений подряд можно было
     только вводя название заново каждый раз. Теперь список -- свой div с
     чекбоксами, который не закрывается при клике -- можно отметить сколько
     угодно вариантов, не перепечатывая запрос. */
  body.site-style-068b595ac6c5 .okso-search-wrap{ position: relative; flex: 1; }
  body.site-style-068b595ac6c5 .okso-ms-dropdown{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.08); max-height: 280px; overflow-y: auto; z-index: 20; }
  body.site-style-068b595ac6c5 .okso-ms-dropdown.open{ display: block; }
  body.site-style-068b595ac6c5 .okso-ms-item{ display: flex; align-items: center; gap: 8px; padding: 8px 12px; cursor: pointer; font-size: 13px; }
  body.site-style-068b595ac6c5 .okso-ms-item:hover{ background: var(--blue-bg); }
  body.site-style-068b595ac6c5 .okso-ms-item input[type="checkbox"]{ flex: none; }
  body.site-style-068b595ac6c5 .okso-ms-code{ color: var(--muted); font-size: 12px; }
  body.site-style-068b595ac6c5 .okso-ms-empty,body.site-style-068b595ac6c5 .okso-ms-more{ padding: 8px 12px; color: var(--muted); font-size: 12px; }
  body.site-style-068b595ac6c5 .cf-note{ font-size: 12px; color: var(--muted); }
  body.site-style-068b595ac6c5 .score-intro{ font-size: 13px; color: var(--muted); margin-bottom: 14px; line-height: 1.5; max-width: 720px; }
  body.site-style-068b595ac6c5 .score-form{ display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-bottom: 14px; }
  body.site-style-068b595ac6c5 .score-field{ display: flex; flex-direction: column; gap: 4px; }
  body.site-style-068b595ac6c5 .score-field label{ font-size: 13px; color: var(--muted); }
  body.site-style-068b595ac6c5 .score-field input{
    padding: 7px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 14px;
  }
  body.site-style-068b595ac6c5 .score-actions{ display: flex; gap: 10px; margin-bottom: 16px; }
  body.site-style-068b595ac6c5 .score-result-uni{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; }
  body.site-style-068b595ac6c5 .score-result-uni .sru-name{ font-weight: 700; font-size: 15px; margin-bottom: 8px; }
  body.site-style-068b595ac6c5 .score-result-row{
    display: flex; justify-content: space-between; align-items: center; gap: 10px;
    font-size: 13px; padding: 7px 8px; border-radius: 6px; cursor: pointer; border: 1px solid var(--border); margin-top: 6px; background: var(--bg);
  }
  body.site-style-068b595ac6c5 .score-result-row:hover{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-068b595ac6c5 .score-result-row .srr-info{ color: #1b1b1b; }
  body.site-style-068b595ac6c5 .score-result-row .srr-nums{ color: var(--muted); white-space: nowrap; }
  body.site-style-068b595ac6c5 .catalog-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 18px; margin-bottom: 20px; }
  body.site-style-068b595ac6c5 .program-card{
    background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 20px;
    display: flex; flex-direction: column; gap: 12px; transition: box-shadow .15s, border-color .15s;
  }
  body.site-style-068b595ac6c5 .program-card:hover{ border-color: var(--blue); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
  /* Вся карточка вуза кликабельна -- ведёт на список направлений этого вуза
     (кнопка "Показать направления" убрана как избыточная). */
  body.site-style-068b595ac6c5 .program-card-link{ cursor: pointer; }
  body.site-style-068b595ac6c5 .program-card-link:hover .pc-name{ color: var(--blue); }
  body.site-style-068b595ac6c5 .pc-top{ display: flex; gap: 10px; align-items: flex-start; }
  body.site-style-068b595ac6c5 .pc-icon{
    flex: 0 0 auto; width: 38px; height: 38px; border-radius: 10px; color: #fff;
    display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px; letter-spacing: .01em;
  }
  body.site-style-068b595ac6c5 .pc-titlewrap{ flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
  body.site-style-068b595ac6c5 .pc-name{ font-size: 15px; font-weight: 700; line-height: 1.3; }
  body.site-style-068b595ac6c5 .pc-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-068b595ac6c5 .pc-badge{ font-size: 11px; padding: 3px 8px; background: var(--bg); border: 1px solid var(--border); border-radius: 999px; color: var(--muted); font-weight: 600; }
  body.site-style-068b595ac6c5 .pc-stats-line{ font-size: 12px; color: var(--muted); }
  body.site-style-068b595ac6c5 .card-accent{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-068b595ac6c5 .accent-chip{ font-size: 12px; font-weight: 700; padding: 6px 10px; border-radius: 8px; }
  body.site-style-068b595ac6c5 .accent-budget{ background: var(--green-bg); color: var(--green); }
  body.site-style-068b595ac6c5 .accent-cost{ background: var(--blue-bg); color: var(--blue); }
  /* ---- Подбор ВУза: группировка по шансам ---- */
  body.site-style-068b595ac6c5 .cf-checkbox-group{ display: flex; gap: 14px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .pick-tier-section{ margin: 22px 0 10px; }
  body.site-style-068b595ac6c5 .pick-tier-title{ font-size: 15px; font-weight: 700; display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
  body.site-style-068b595ac6c5 .pick-tier-dot{ width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
  body.site-style-068b595ac6c5 .pick-tier-high .pick-tier-dot{ background: var(--green); }
  body.site-style-068b595ac6c5 .pick-tier-medium .pick-tier-dot{ background: var(--amber); }
  body.site-style-068b595ac6c5 .pick-tier-low .pick-tier-dot{ background: var(--red); }
  body.site-style-068b595ac6c5 span.pick-tier-high{ color: var(--green); font-weight: 600; }
  body.site-style-068b595ac6c5 span.pick-tier-medium{ color: var(--amber); font-weight: 600; }
  body.site-style-068b595ac6c5 span.pick-tier-low{ color: var(--red); font-weight: 600; }
  body.site-style-068b595ac6c5 .pick-tier-count{ color: var(--muted); font-weight: 500; font-size: 13px; }
  body.site-style-068b595ac6c5 .pick-uni-card{ border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; background: #fff; }
  body.site-style-068b595ac6c5 .pick-uni-head{ display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
  body.site-style-068b595ac6c5 .pick-uni-name{ font-weight: 700; font-size: 15px; }
  body.site-style-068b595ac6c5 .pick-uni-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-068b595ac6c5 .pick-match-row{ display: flex; flex-direction: column; align-items: stretch; gap: 4px; padding: 10px 0; border-top: 1px solid var(--border); cursor: pointer; }
  body.site-style-068b595ac6c5 .pick-match-row:hover{ background: var(--blue-bg); }
  body.site-style-068b595ac6c5 .pick-match-row:first-of-type{ border-top: none; }
  body.site-style-068b595ac6c5 .pick-match-direction{ font-weight: 700; font-size: 14px; }
  body.site-style-068b595ac6c5 .pick-match-program{ font-size: 13px; color: #444; margin-top: 1px; }
  body.site-style-068b595ac6c5 .pick-match-level-row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 3px; }
  body.site-style-068b595ac6c5 .pick-match-exams{ color: var(--muted); font-size: 12px; }
  body.site-style-068b595ac6c5 .pick-avg-score-row{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .pick-avg-score-row input{ width: 100px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; }
  body.site-style-068b595ac6c5 .pick-match-tier-badge{ font-size: 11px; font-weight: 700; padding: 3px 9px; border-radius: 999px; white-space: nowrap; }
  body.site-style-068b595ac6c5 .pick-match-tier-high{ background: var(--green-bg); color: var(--green); }
  body.site-style-068b595ac6c5 .pick-match-tier-medium{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-068b595ac6c5 .pick-match-tier-low{ background: #fbe9e7; color: var(--red); }
  body.site-style-068b595ac6c5 .pick-match-level{ color: var(--muted); font-size: 13px; }
  body.site-style-068b595ac6c5 .pick-match-nums{ color: var(--muted); font-size: 12px; white-space: nowrap; }
  body.site-style-068b595ac6c5 .pick-heuristic-note{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }
  /* Богаче карточка -- перенос части элементов дизайна карточки конкурента
     (Поступашкин), обсуждение 2026-09-05: профиль отдельной строкой, разбор
     экзаменов с минимумами по группам, числовой отступ ("не хватает N" /
     "запас +N") рядом с текстовым тиром, БВИ-предупреждение, три среза
     проходного (по заявлениям / по согласиям / по конкурсам) и процент
     шансов как отдельный бейдж. "мин. 2025" сознательно не добавлен --
     исторические данные за прошлый цикл приёма в проекте не собирались
     (см. коммент в начале api/pick.php). */
  body.site-style-068b595ac6c5 .pick-match-top{ display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
  body.site-style-068b595ac6c5 .pick-match-content{ flex: 1; min-width: 0; }
  body.site-style-068b595ac6c5 .pick-match-profile{ color: var(--blue); font-size: 13px; margin-top: 2px; }
  body.site-style-068b595ac6c5 .pick-match-exams-detailed{ color: var(--muted); font-size: 12px; margin-top: 5px; }
  body.site-style-068b595ac6c5 .pick-match-bvi-warning{ color: var(--red); font-size: 12px; margin-top: 5px; font-weight: 600; }
  body.site-style-068b595ac6c5 .pick-match-score-line{ font-size: 13px; margin-top: 7px; }
  body.site-style-068b595ac6c5 .pick-match-score-ok{ color: var(--green); font-weight: 700; }
  body.site-style-068b595ac6c5 .pick-match-score-bad{ color: var(--red); font-weight: 700; }
  body.site-style-068b595ac6c5 .pick-match-score-neutral{ color: var(--muted); font-weight: 700; }
  body.site-style-068b595ac6c5 .pick-match-cutoffs-row{ display: flex; flex-wrap: wrap; gap: 6px; margin-top: 7px; }
  body.site-style-068b595ac6c5 .pick-match-cutoff-chip{ font-size: 11px; color: var(--muted); background: var(--blue-bg); border: 1px solid var(--border); border-radius: 6px; padding: 3px 8px; white-space: nowrap; }
  body.site-style-068b595ac6c5 .pick-match-cutoff-chip b{ color: #222; font-weight: 700; }
  body.site-style-068b595ac6c5 .pick-match-percent{ flex: none; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px 12px; border-radius: 10px; min-width: 56px; }
  body.site-style-068b595ac6c5 .pick-match-percent-value{ font-size: 19px; font-weight: 700; line-height: 1.1; }
  body.site-style-068b595ac6c5 .pick-match-percent-label{ font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; margin-top: 2px; white-space: nowrap; }
  body.site-style-068b595ac6c5 .pick-match-percent-high{ background: var(--green-bg); color: var(--green); }
  body.site-style-068b595ac6c5 .pick-match-percent-medium{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-068b595ac6c5 .pick-match-percent-low{ background: #fbe9e7; color: var(--red); }
  body.site-style-068b595ac6c5 .pick-match-bottom-row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 7px; }
  body.site-style-068b595ac6c5 .pick-paywall{
    background: #fff; border: 1px solid var(--blue); border-radius: 10px; padding: 14px 16px;
    margin: 0 0 14px; display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap;
  }
  body.site-style-068b595ac6c5 .pick-paywall-title{ font-weight: 800; font-size: 15px; margin-bottom: 2px; }
  body.site-style-068b595ac6c5 .pick-paywall-text{ color: var(--muted); font-size: 13px; }
  body.site-style-068b595ac6c5 .pick-paywall-actions{ display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .pick-payment-note{ color: var(--green); font-size: 13px; font-weight: 700; margin-bottom: 12px; }
  body.site-style-068b595ac6c5 .directions-stat-intro{ font-size: 13px; color: var(--muted); margin: 0 0 14px; max-width: 860px; }
  body.site-style-068b595ac6c5 .directions-filter-card{
    background: #fff; border: 1px solid var(--border); border-radius: 12px;
    padding: 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 12px;
  }
  body.site-style-068b595ac6c5 .directions-filter-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  body.site-style-068b595ac6c5 .directions-filter-field{ display: flex; flex-direction: column; gap: 6px; min-width: 0; }
  body.site-style-068b595ac6c5 .directions-filter-field label,body.site-style-068b595ac6c5 .directions-filter-title{
    font-size: 12px; color: var(--muted); font-weight: 700; text-transform: uppercase; letter-spacing: .02em;
  }
  body.site-style-068b595ac6c5 .directions-filter-field > input,body.site-style-068b595ac6c5 .directions-filter-field .okso-search-wrap > input,body.site-style-068b595ac6c5 .directions-filter-field .competition-city-wrap > input{
    width: 100%; min-width: 0; padding: 9px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px;
  }
  body.site-style-068b595ac6c5 #panel-directions .okso-search-wrap{ display: flex; flex: none; flex-direction: column; gap: 6px; }
  body.site-style-068b595ac6c5 #panel-directions .directions-filter-field input[type="text"],body.site-style-068b595ac6c5 #panel-directions .directions-filter-field input[type="number"]{
    flex: none; height: 42px; line-height: 1.2;
  }
  body.site-style-068b595ac6c5 #panel-directions .competition-city-wrap{
    flex: none; height: 42px; min-height: 42px; align-self: stretch;
  }
  body.site-style-068b595ac6c5 #panel-directions .competition-city-suggest{
    top: calc(100% + 6px);
  }
  body.site-style-068b595ac6c5 #panel-directions .okso-ms-dropdown{
    position: static; left: auto; right: auto; top: auto; width: 100%;
    box-shadow: none; max-height: 260px; margin-top: 0; z-index: 5;
  }
  body.site-style-068b595ac6c5 #panel-directions .okso-ms-item{
    color: #1b1b1b; background: #fff; line-height: 1.35; min-height: 38px;
    justify-content: flex-start; white-space: normal;
  }
  body.site-style-068b595ac6c5 #panel-directions .okso-ms-item input[type="checkbox"]{
    width: auto; min-width: 0; padding: 0; flex: 0 0 auto;
  }
  body.site-style-068b595ac6c5 #panel-directions .okso-ms-item span:first-of-type{ flex: 1; min-width: 0; }
  body.site-style-068b595ac6c5 #panel-directions .okso-ms-code{ flex: none; }
  body.site-style-068b595ac6c5 .directions-filter-row{ display: flex; flex-wrap: wrap; align-items: flex-start; gap: 10px; }
  body.site-style-068b595ac6c5 .directions-filter-row .catalog-filter-group{ flex: 1 1 240px; }
  body.site-style-068b595ac6c5 #panel-directions .directions-filter-row .catalog-filter-group{ align-self: flex-start; }
  body.site-style-068b595ac6c5 .directions-filter-actions{ display: flex; gap: 10px; flex-wrap: wrap; align-items: center; border-top: 1px solid var(--border); padding-top: 12px; }
  body.site-style-068b595ac6c5 .directions-summary{ display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
  body.site-style-068b595ac6c5 .directions-summary-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 12px; }
  body.site-style-068b595ac6c5 .directions-summary-card .val{ font-size: 20px; font-weight: 800; color: var(--blue); line-height: 1.1; }
  body.site-style-068b595ac6c5 .directions-summary-card .lbl{ font-size: 11px; color: var(--muted); margin-top: 4px; }
  body.site-style-068b595ac6c5 .directions-view-controls{
    display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
    background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 10px 12px; margin-bottom: 12px;
  }
  body.site-style-068b595ac6c5 .directions-control-group{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .directions-control-label{ color: var(--muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; }
  body.site-style-068b595ac6c5 .directions-toggle-btn{
    border: 1px solid var(--border); background: #fff; color: #1b1b1b; border-radius: 8px;
    padding: 7px 10px; font-size: 13px; font-weight: 600; cursor: pointer;
  }
  body.site-style-068b595ac6c5 .directions-toggle-btn.active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-068b595ac6c5 .directions-sort-select{ padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; background: #fff; font-size: 13px; }
  body.site-style-068b595ac6c5 .directions-stat-table td{ white-space: normal; vertical-align: top; }
  body.site-style-068b595ac6c5 .directions-stat-table tbody tr{ cursor: pointer; }
  body.site-style-068b595ac6c5 .directions-group-row td{
    background: var(--blue-bg); color: var(--blue); font-weight: 800; font-size: 13px;
    cursor: default; border-top: 1px solid var(--border);
  }
  body.site-style-068b595ac6c5 .directions-row-title{ font-weight: 700; }
  body.site-style-068b595ac6c5 .directions-row-code{ color: var(--blue); font-size: 12px; font-weight: 700; }
  body.site-style-068b595ac6c5 .directions-row-sub{ color: var(--muted); font-size: 12px; margin-top: 2px; }
  body.site-style-068b595ac6c5 .directions-row-exams{ color: var(--muted); font-size: 12px; max-width: 260px; }
  body.site-style-068b595ac6c5 .directions-competition-strong{ color: var(--red); font-weight: 800; }
  body.site-style-068b595ac6c5 .directions-competition-mid{ color: var(--amber); font-weight: 800; }
  body.site-style-068b595ac6c5 .directions-competition-ok{ color: var(--green); font-weight: 800; }
  body.site-style-068b595ac6c5 .directions-result-note{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }
  @media (max-width: 900px){body.site-style-068b595ac6c5 .directions-filter-grid{ grid-template-columns: 1fr; }
    body.site-style-068b595ac6c5 .directions-summary{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
  body.site-style-068b595ac6c5 .direction-card{ background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 20px; display: flex; flex-direction: column; gap: 10px; transition: box-shadow .15s, border-color .15s; }
  body.site-style-068b595ac6c5 .direction-card:hover{ border-color: var(--blue); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
  body.site-style-068b595ac6c5 .dc-code{ font-size: 12px; color: var(--muted); }
  body.site-style-068b595ac6c5 .dc-name{ font-size: 15px; font-weight: 700; line-height: 1.3; }
  /* Вся карточка направления в общей сетке кликабельна -- ведёт на отдельную
     страницу направления (showDirectionDetail), а не сразу в список. */
  body.site-style-068b595ac6c5 .direction-card-link{ cursor: pointer; }
  body.site-style-068b595ac6c5 .direction-card-link:hover .dc-name{ color: var(--blue); }
  /* Заголовок отдельной страницы направления (showDirectionDetail) -- по
     образцу карточки "Специальность в вузе" на Госуслугах: крупный белый
     блок, код мелко сверху, название крупным заголовком, бейджи и сводка
     ниже. */
  body.site-style-068b595ac6c5 .direction-detail-head{ background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin-bottom: 32px; }
  body.site-style-068b595ac6c5 .direction-detail-head .dc-code{ font-size: 13px; }
  body.site-style-068b595ac6c5 .direction-detail-head h2{ margin: 6px 0 18px; font-size: 26px; font-weight: 800; line-height: 1.3; }
  body.site-style-068b595ac6c5 .direction-detail-head .dc-badges{ margin-bottom: 14px; gap: 8px; }
  body.site-style-068b595ac6c5 .direction-detail-head .dc-stats{ font-size: 14px; line-height: 1.6; }
  body.site-style-068b595ac6c5 #direction-detail h3{ font-size: 22px; font-weight: 800; margin: 4px 0 20px; }
  body.site-style-068b595ac6c5 .dc-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-068b595ac6c5 .dc-stats{ font-size: 12px; color: var(--muted); }
  /* Средний уровень: программы внутри направления (по полю program_names) --
     аккордеон по образцу Госуслуг (карточка "Специальность в вузе" ->
     "Образовательные программы" -> раскрывающийся список). Раньше все
     group_id направления шли плоским списком без этого уровня. Отступы
     увеличены (было 14/16/10px) -- по фидбеку "ощущение слипленности". */
  body.site-style-068b595ac6c5 .dc-programs{ display: flex; flex-direction: column; gap: 20px; margin-top: 4px; }
  body.site-style-068b595ac6c5 .dc-program{ border: 1px solid var(--border); border-radius: 16px; overflow: hidden; background: #fff; }
  body.site-style-068b595ac6c5 .dc-program-header{
    display: flex; justify-content: space-between; align-items: center; gap: 12px;
    padding: 20px 24px; cursor: pointer; font-size: 15px;
  }
  body.site-style-068b595ac6c5 .dc-program-header:hover{ background: var(--blue-bg); }
  body.site-style-068b595ac6c5 .dc-program-title{ font-weight: 700; color: #1b1b1b; font-size: 16px; }
  body.site-style-068b595ac6c5 .dc-program-nums{ color: var(--muted); white-space: nowrap; font-size: 13px; }
  /* Круглая кнопка-шеврон, как раскрывающиеся стрелки на карточках программ
     у Госуслуг. */
  body.site-style-068b595ac6c5 .dc-program-chevron{
    display: flex; align-items: center; justify-content: center; flex: none;
    width: 30px; height: 30px; border-radius: 50%; background: var(--blue-bg);
    color: var(--blue); font-size: 13px; transition: transform .15s;
  }
  body.site-style-068b595ac6c5 .dc-program.expanded .dc-program-chevron{ transform: rotate(180deg); }
  body.site-style-068b595ac6c5 .dc-program-body{ display: none; padding: 4px 24px 24px; border-top: 1px solid var(--border); }
  body.site-style-068b595ac6c5 .dc-program.expanded .dc-program-body{ display: block; padding-top: 22px; }
  body.site-style-068b595ac6c5 .dc-program-badges{ margin-bottom: 20px; }
  /* Переключатель "Бюджетные/Платные" внутри раскрытой программы -- по
     образцу сегмент-контрола на Госуслугах (светло-синяя капсула, активная
     вкладка белая). Показывается только если у программы есть оба варианта
     финансирования. */
  body.site-style-068b595ac6c5 .dc-cost-tabs{ display: inline-flex; background: var(--blue-bg); border-radius: 10px; padding: 3px; margin-bottom: 16px; gap: 2px; }
  body.site-style-068b595ac6c5 .dc-cost-tab{
    border: none; background: none; padding: 8px 18px; border-radius: 8px; font-size: 13px; font-weight: 600;
    color: var(--blue); cursor: pointer;
  }
  body.site-style-068b595ac6c5 .dc-cost-tab.active{ background: #fff; color: #1b1b1b; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
  body.site-style-068b595ac6c5 .dc-cost-panel + .dc-cost-panel{ margin-top: 0; }
  body.site-style-068b595ac6c5 .dc-variants{ display: flex; flex-direction: column; gap: 16px; margin-top: 4px; }
  body.site-style-068b595ac6c5 .dc-variants.nested{ margin-top: 0; }
  /* Карточки категорий мест (Основные/Отдельная квота/Особая квота/...) --
     по образцу карточек "Конкурсные места" на Госуслугах: заголовок жирным
     слева, справа -- ДВЕ отдельные ссылки на списки (Конкурсные / Подавших
     документы), а не единый клик по всей карточке с списком по умолчанию. */
  body.site-style-068b595ac6c5 .dc-variant{
    display: flex; justify-content: space-between; align-items: center; gap: 20px;
    font-size: 13px; padding: 18px 22px; border: 1px solid var(--border); border-radius: 12px;
    background: #fff;
  }
  body.site-style-068b595ac6c5 .dc-variant:hover{ border-color: var(--border); }
  body.site-style-068b595ac6c5 .dv-title{ color: #1b1b1b; font-weight: 700; font-size: 15px; }
  body.site-style-068b595ac6c5 .dv-sub{ color: var(--muted); font-size: 12px; margin-top: 5px; line-height: 1.5; }
  body.site-style-068b595ac6c5 .dv-links{ display: flex; flex-direction: column; gap: 9px; align-items: flex-end; white-space: nowrap; flex: none; }
  body.site-style-068b595ac6c5 .dv-link{ color: var(--blue); font-size: 13px; font-weight: 600; text-decoration: none; }
  body.site-style-068b595ac6c5 .dv-link:hover{ text-decoration: underline; }
  body.site-style-068b595ac6c5 tr.boundary-row td{ text-align: center; font-size: 12px; font-weight: 700; padding: 6px 10px; white-space: normal; }
  body.site-style-068b595ac6c5 tr.boundary-ovp td{ background: var(--blue-bg); color: var(--blue); border-top: 2px solid var(--blue); border-bottom: 2px solid var(--blue); }
  body.site-style-068b595ac6c5 tr.boundary-vpp td{ background: var(--amber-bg); color: var(--amber); border-top: 2px dashed var(--amber); border-bottom: 2px dashed var(--amber); }
  body.site-style-068b595ac6c5 .university-cell-link{ color: var(--blue); text-decoration: none; }
  body.site-style-068b595ac6c5 .university-cell-link:hover{ text-decoration: underline; }
  body.site-style-068b595ac6c5 .share-link-box{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; background: var(--blue-bg); border: 1px solid var(--border); border-radius: 8px; padding: 10px 14px; margin: 12px 0; font-size: 13px; }
  body.site-style-068b595ac6c5 .share-link-box .lbl{ color: var(--muted); white-space: nowrap; }
  body.site-style-068b595ac6c5 .share-link-box input{ flex: 1; min-width: 180px; border: 1px solid var(--border); border-radius: 6px; background: #fff; font-size: 13px; padding: 4px 8px; color: #1b1b1b; }
  body.site-style-068b595ac6c5 .share-link-box .copied-note{ color: var(--blue); font-weight: 600; white-space: nowrap; }
  body.site-style-068b595ac6c5 .recent-ids-lbl{ font-size: 13px; color: var(--muted); margin: 10px 0 6px; }
  body.site-style-068b595ac6c5 .recent-ids-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 4px; }
  body.site-style-068b595ac6c5 .recent-id-chip{ border: 1px solid var(--border); background: #fff; border-radius: 999px; padding: 5px 14px; font-size: 13px; cursor: pointer; color: var(--blue); }
  body.site-style-068b595ac6c5 .recent-id-chip:hover{ background: var(--blue-bg); border-color: var(--blue); }
  body.site-style-068b595ac6c5 .entrance-tests-box{ margin-bottom: 14px; }
  body.site-style-068b595ac6c5 .entrance-tests-details summary{ cursor: pointer; font-size: 13px; color: var(--muted); font-weight: 600; margin-bottom: 6px; }
  body.site-style-068b595ac6c5 .entrance-tests-details summary .count{ font-weight: 400; }
  body.site-style-068b595ac6c5 .entrance-type-group{ margin-top: 10px; }
  body.site-style-068b595ac6c5 .entrance-type-group:first-of-type{ margin-top: 8px; }
  body.site-style-068b595ac6c5 .entrance-type-group .type-lbl{ font-size: 12px; color: var(--muted); font-weight: 600; margin-bottom: 4px; }
  body.site-style-068b595ac6c5 .entrance-tests-list{ display: flex; flex-wrap: wrap; gap: 8px; }
  body.site-style-068b595ac6c5 .entrance-test-chip{ border: 1px solid var(--border); border-radius: 8px; padding: 6px 12px; font-size: 13px; background: #fff; }
  body.site-style-068b595ac6c5 #university-header{ margin-bottom: 12px; font-size: 15px; }
  body.site-style-068b595ac6c5 #university-header a{ color: var(--blue); text-decoration: none; }
  body.site-style-068b595ac6c5 #university-header a:hover{ text-decoration: underline; }
  body.site-style-068b595ac6c5 .level-grid{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
  body.site-style-068b595ac6c5 .level-card{ border: 1px solid var(--border); border-radius: 10px; padding: 16px 20px; cursor: pointer; background: #fff; min-width: 220px; }
  body.site-style-068b595ac6c5 .level-card:hover{ border-color: var(--blue); }
  body.site-style-068b595ac6c5 .level-card .name{ font-weight: 700; font-size: 16px; margin-bottom: 4px; }
  body.site-style-068b595ac6c5 .level-card .count{ color: var(--muted); font-size: 13px; }
  body.site-style-068b595ac6c5 tr.direction-row td{ background: var(--blue-bg); font-weight: 700; padding: 8px 10px; border-top: 2px solid var(--border); white-space: normal; }
  body.site-style-068b595ac6c5 tr.direction-row .count{ color: var(--muted); font-weight: 500; font-size: 12px; }
  body.site-style-068b595ac6c5 #programs-table.uni-mode{ table-layout: fixed; }
  body.site-style-068b595ac6c5 #programs-table.uni-mode th:nth-child(1),body.site-style-068b595ac6c5 #programs-table.uni-mode td:nth-child(1){ width: 38%; }
  body.site-style-068b595ac6c5 #programs-table.uni-mode th:nth-child(2),body.site-style-068b595ac6c5 #programs-table.uni-mode td:nth-child(2){ width: 11%; }
  body.site-style-068b595ac6c5 #programs-table.uni-mode th:nth-child(3),body.site-style-068b595ac6c5 #programs-table.uni-mode td:nth-child(3){ width: 9%; }
  body.site-style-068b595ac6c5 #programs-table.uni-mode th:nth-child(4),body.site-style-068b595ac6c5 #programs-table.uni-mode td:nth-child(4){ width: 20%; }
  body.site-style-068b595ac6c5 #programs-table.uni-mode th:nth-child(5),body.site-style-068b595ac6c5 #programs-table.uni-mode td:nth-child(5){ width: 11%; }
  body.site-style-068b595ac6c5 #programs-table.uni-mode th:nth-child(6),body.site-style-068b595ac6c5 #programs-table.uni-mode td:nth-child(6){ width: 11%; }
  body.site-style-068b595ac6c5 #programs-table.uni-mode td{ white-space: normal; word-break: break-word; line-height: 1.35; }
  body.site-style-068b595ac6c5 #programs-table.uni-mode td.prog-name-cell{ padding: 8px 12px; }
  body.site-style-068b595ac6c5 #programs-table.uni-mode .prog-name-inner{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body.site-style-068b595ac6c5 .home-banners{ display: flex; flex-direction: column; gap: 10px; margin: 20px 0 0; }
  body.site-style-068b595ac6c5 .home-banner{ display: block; text-align: center; padding: 14px 20px; border-radius: 10px; text-decoration: none; font-weight: 700; font-size: 14px; cursor: pointer; }
  body.site-style-068b595ac6c5 .home-banner-blue{ background: var(--blue); color: #fff; }
  body.site-style-068b595ac6c5 .home-banner-blue:hover{ background: #1558c9; }
  body.site-style-068b595ac6c5 .home-banner-amber{ background: var(--amber-bg); color: var(--amber); border: 1px solid #f3d98b; }
  body.site-style-068b595ac6c5 .home-banner-amber:hover{ background: #ffedb8; }
  body.site-style-068b595ac6c5 .home-hero{ padding: 40px 8px 28px; text-align: left; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .home-hero-text{ flex: 1 1 420px; min-width: 280px; }
  body.site-style-068b595ac6c5 .home-hero-badge{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 13px; font-weight: 600; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
  body.site-style-068b595ac6c5 .home-hero-cta{ display: inline-block; margin-top: 16px; background: #F7B500; color: #152A54; font-weight: 700; font-size: 15px; padding: 12px 24px; border-radius: 10px; text-decoration: none; }
  body.site-style-068b595ac6c5 .home-hero-cta:hover{ background: #e0a400; }
  body.site-style-068b595ac6c5 .home-promo27{ background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin: 8px 0 40px; }
  body.site-style-068b595ac6c5 .home-promo27-badge{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 13px; font-weight: 600; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
  body.site-style-068b595ac6c5 .home-promo27-title{ font-size: 30px; font-weight: 800; margin: 0 0 10px; }
  body.site-style-068b595ac6c5 .home-promo27-title span{ color: var(--blue); }
  body.site-style-068b595ac6c5 .home-promo27-sub{ font-size: 16px; color: var(--muted); margin: 0 0 28px; max-width: 640px; }
  body.site-style-068b595ac6c5 .home-promo27-card{ display: flex; gap: 28px; align-items: center; background: var(--bg); border-radius: 14px; padding: 24px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .home-promo27-image{ flex: 0 0 260px; border-radius: 12px; overflow: hidden; }
  body.site-style-068b595ac6c5 .home-promo27-image img{ width: 100%; height: auto; display: block; border-radius: 12px; }
  body.site-style-068b595ac6c5 .home-promo27-text{ flex: 1 1 360px; min-width: 260px; }
  body.site-style-068b595ac6c5 .home-promo27-text p{ font-size: 15px; line-height: 1.55; color: #333; margin: 0 0 20px; }
  body.site-style-068b595ac6c5 .home-promo27-text p b{ color: #1a1a1a; }
  body.site-style-068b595ac6c5 .home-promo27-actions{ display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .home-promo27-cta{ display: inline-block; background: var(--blue); color: #fff; font-weight: 700; font-size: 15px; padding: 12px 24px; border-radius: 10px; text-decoration: none; }
  body.site-style-068b595ac6c5 .home-promo27-cta:hover{ background: #1558c9; }
  body.site-style-068b595ac6c5 .home-promo27-link{ font-size: 14px; color: var(--blue); text-decoration: none; font-weight: 600; }
  body.site-style-068b595ac6c5 .home-promo27-link:hover{ text-decoration: underline; }
  @media (max-width: 640px){body.site-style-068b595ac6c5 .home-promo27-card{ flex-direction: column; } body.site-style-068b595ac6c5 .home-promo27-image{ width: 100%; flex-basis: auto; }}
  body.site-style-068b595ac6c5 .home-hero-owl{ flex: 0 0 440px; max-width: 46%; }
  body.site-style-068b595ac6c5 .owl-hero-photo{ width: 100%; height: auto; display: block; border-radius: 16px; }
  @media (max-width: 900px){body.site-style-068b595ac6c5 .home-hero-owl{ flex: 1 1 100%; max-width: 380px; order: -1; margin: 0 auto; }}
  body.site-style-068b595ac6c5 .home-hero-title{ font-size: 36px; line-height: 1.15; margin: 0 0 14px; font-weight: 800; }
  body.site-style-068b595ac6c5 .home-hero-accent{ background: #ffe082; padding: 2px 10px; border-radius: 6px; text-transform: uppercase; }
  body.site-style-068b595ac6c5 .home-hero-sub{ font-size: 16px; color: var(--muted); max-width: 620px; margin: 0 0 24px; }
  body.site-style-068b595ac6c5 .home-search-row{ max-width: 480px; }
  body.site-style-068b595ac6c5 .home-stats{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: 12px; overflow: hidden; margin: 8px 0 36px; }
  body.site-style-068b595ac6c5 .home-stat{ background: #fff; padding: 18px 20px; }
  body.site-style-068b595ac6c5 a.home-stat-link{ display: block; text-decoration: none; color: inherit; cursor: pointer; }
  body.site-style-068b595ac6c5 a.home-stat-link:hover{ background: var(--bg); }
  body.site-style-068b595ac6c5 .home-stat-n{ font-size: 24px; font-weight: 800; color: var(--blue); }
  body.site-style-068b595ac6c5 .home-stat-l{ font-size: 13px; color: var(--muted); margin-top: 2px; }
  body.site-style-068b595ac6c5 .home-section-title{ font-size: 22px; font-weight: 800; margin: 40px 0 18px; }
  body.site-style-068b595ac6c5 .home-tools-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
  body.site-style-068b595ac6c5 .home-tool-card{ display: block; border: 1px solid var(--border); border-radius: 12px; padding: 18px; text-decoration: none; color: inherit; background: #fff; cursor: pointer; position: relative; transition: box-shadow .15s, transform .15s; }
  body.site-style-068b595ac6c5 .home-tool-card:hover{ box-shadow: 0 4px 14px rgba(0,0,0,.08); transform: translateY(-1px); }
  body.site-style-068b595ac6c5 .home-tool-card.pending{ opacity: .6; cursor: default; }
  body.site-style-068b595ac6c5 .home-tool-card.pending:hover{ box-shadow: none; transform: none; }
  body.site-style-068b595ac6c5 .home-tool-icon{ width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 20px; margin-bottom: 12px; }
  body.site-style-068b595ac6c5 .home-tool-title{ font-weight: 700; font-size: 15px; margin-bottom: 6px; }
  body.site-style-068b595ac6c5 .home-tool-sub{ font-size: 13px; color: var(--muted); line-height: 1.4; }
  body.site-style-068b595ac6c5 .home-tool-badge{ position: absolute; top: 14px; right: 14px; background: var(--amber-bg); color: var(--amber); font-size: 11px; font-weight: 700; padding: 3px 8px; border-radius: 999px; }
  body.site-style-068b595ac6c5 .home-steps{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
  body.site-style-068b595ac6c5 .home-step{ border: 1px solid var(--border); border-radius: 12px; padding: 20px; background: #fff; }
  body.site-style-068b595ac6c5 .home-step-n{ width: 32px; height: 32px; border-radius: 50%; background: #ffe082; display: flex; align-items: center; justify-content: center; font-weight: 800; margin-bottom: 12px; }
  body.site-style-068b595ac6c5 .home-step-title{ font-weight: 700; margin-bottom: 6px; }
  body.site-style-068b595ac6c5 .home-step-sub{ font-size: 13px; color: var(--muted); line-height: 1.4; }
  body.site-style-068b595ac6c5 .home-feedback{ display: flex; justify-content: space-between; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 12px; padding: 20px 24px; margin-top: 40px; background: #fff; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .home-feedback-title{ font-weight: 700; }
  body.site-style-068b595ac6c5 .home-feedback-sub{ font-size: 13px; color: var(--muted); margin-top: 2px; }
  @media (max-width: 720px){body.site-style-068b595ac6c5 .home-stats{ grid-template-columns: repeat(2, 1fr); }
    body.site-style-068b595ac6c5 .home-steps{ grid-template-columns: 1fr; }
    body.site-style-068b595ac6c5 .home-hero-title{ font-size: 28px; }}
  body.site-style-068b595ac6c5 .orders-note{ color: var(--muted); font-size: 14px; max-width: 760px; line-height: 1.5; margin: 0 0 24px; }
  body.site-style-068b595ac6c5 .orders-filters{ display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 18px; }
  body.site-style-068b595ac6c5 .orders-filter-chip{ border: 1px solid var(--border); border-radius: 999px; padding: 10px 16px; font-size: 13px; font-weight: 600; background: #fff; cursor: pointer; color: var(--muted); }
  body.site-style-068b595ac6c5 .orders-filter-chip.active{ border-color: var(--blue); color: var(--blue); background: var(--blue-bg); }
  body.site-style-068b595ac6c5 .orders-search{ margin-bottom: 18px; max-width: 360px; }
  body.site-style-068b595ac6c5 .orders-search input{ width: 100%; padding: 10px 14px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; }
  body.site-style-068b595ac6c5 .orders-list{ display: flex; flex-direction: column; gap: 10px; }
  body.site-style-068b595ac6c5 .orders-row{ display: flex; justify-content: space-between; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 10px; padding: 14px 18px; background: #fff; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .orders-row-name{ font-weight: 700; font-size: 14px; }
  body.site-style-068b595ac6c5 .orders-row-meta{ font-size: 12px; color: var(--muted); margin-top: 3px; }
  body.site-style-068b595ac6c5 .orders-row-badge{ font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
  body.site-style-068b595ac6c5 .orders-badge-collected{ background: var(--green-bg); color: var(--green); }
  body.site-style-068b595ac6c5 .orders-badge-in-progress{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-068b595ac6c5 .orders-badge-not-started{ background: #f1f1f1; color: var(--muted); }
  body.site-style-068b595ac6c5 .orders-footer{ margin-top: 18px; text-align: center; }
  body.site-style-068b595ac6c5 .orders-calendar{ border: 1px solid var(--border); border-radius: 12px; padding: 20px 22px; margin-bottom: 22px; background: #fff; }
  body.site-style-068b595ac6c5 .orders-calendar-title{ font-weight: 700; font-size: 15px; margin: 0 0 14px; display: flex; align-items: center; gap: 8px; }
  body.site-style-068b595ac6c5 .orders-calendar-item{ display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; padding: 10px 0; border-top: 1px solid var(--border); }
  body.site-style-068b595ac6c5 .orders-calendar-item:first-of-type{ border-top: none; padding-top: 0; }
  body.site-style-068b595ac6c5 .orders-calendar-item-text{ font-size: 14px; line-height: 1.5; }
  body.site-style-068b595ac6c5 .orders-calendar-badge{ flex-shrink: 0; font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
  body.site-style-068b595ac6c5 .orders-calendar-badge-done{ background: #f1f1f1; color: var(--muted); }
  body.site-style-068b595ac6c5 .orders-calendar-badge-active{ background: var(--green-bg); color: var(--green); }
  body.site-style-068b595ac6c5 .orders-calendar-source{ font-size: 12px; color: var(--muted); margin-top: 12px; line-height: 1.5; }
  body.site-style-068b595ac6c5 .admission-cards{ display: flex; gap: 14px; flex-wrap: wrap; margin: 0 0 26px; }
  body.site-style-068b595ac6c5 .admission-card{ flex: 1 1 260px; border: 1px solid var(--border); border-radius: 12px; padding: 18px 20px; background: #fff; cursor: pointer; text-decoration: none; color: inherit; display: block; transition: border-color .15s; }
  body.site-style-068b595ac6c5 .admission-card:hover{ border-color: var(--blue); }
  body.site-style-068b595ac6c5 .admission-card.active{ border-color: var(--blue); background: var(--blue-bg); cursor: default; }
  body.site-style-068b595ac6c5 .admission-card-title{ font-size: 13px; font-weight: 400; color: var(--muted); text-transform: none; letter-spacing: normal; margin-bottom: 4px; }
  body.site-style-068b595ac6c5 .admission-card-number{ font-size: 34px; font-weight: 800; line-height: 1.08; margin-bottom: 4px; }
  body.site-style-068b595ac6c5 .admission-card-meta{ font-size: 12px; color: var(--muted); line-height: 1.5; }
  body.site-style-068b595ac6c5 .admission-overview-table{ table-layout: fixed; width: 100%; border-collapse: collapse; font-size: 13px; }
  body.site-style-068b595ac6c5 .admission-overview-table th,body.site-style-068b595ac6c5 .admission-overview-table td{ padding: 8px 8px; border-bottom: 1px solid var(--border); vertical-align: top; white-space: normal; word-wrap: break-word; overflow-wrap: break-word; }
  body.site-style-068b595ac6c5 .admission-overview-table th{ text-align: left; border-bottom: 2px solid var(--border); color: var(--muted); font-weight: 700; font-size: 11px; text-transform: uppercase; }
  body.site-style-068b595ac6c5 .admission-overview-table th:nth-child(1),body.site-style-068b595ac6c5 .admission-overview-table td:nth-child(1){ width: 38%; }
  body.site-style-068b595ac6c5 .admission-overview-table th:nth-child(2),body.site-style-068b595ac6c5 .admission-overview-table td:nth-child(2){ width: 7%; }
  body.site-style-068b595ac6c5 .admission-overview-table th:nth-child(3),body.site-style-068b595ac6c5 .admission-overview-table td:nth-child(3){ width: 8%; }
  body.site-style-068b595ac6c5 .admission-overview-table th:nth-child(4),body.site-style-068b595ac6c5 .admission-overview-table td:nth-child(4){ width: 9%; }
  body.site-style-068b595ac6c5 .admission-overview-table th:nth-child(5),body.site-style-068b595ac6c5 .admission-overview-table td:nth-child(5){ width: 11%; }
  body.site-style-068b595ac6c5 .admission-overview-table th:nth-child(6),body.site-style-068b595ac6c5 .admission-overview-table td:nth-child(6){ width: 9%; }
  body.site-style-068b595ac6c5 .admission-overview-table th:nth-child(7),body.site-style-068b595ac6c5 .admission-overview-table td:nth-child(7){ width: 11%; text-align: right; }
  body.site-style-068b595ac6c5 .admission-overview-table td:nth-child(1) a{ display: block; }
  body.site-style-068b595ac6c5 .admission-overview-table tr:hover td{ background: var(--blue-bg); }
  body.site-style-068b595ac6c5 .table-scroll{ overflow-x: auto; }
  body.site-style-068b595ac6c5 #panel-competition .orders-search{ display: flex; flex-wrap: wrap; gap: 10px; align-items: center; max-width: none; }
  body.site-style-068b595ac6c5 #panel-competition .orders-search input[type=text]{ flex: 1 1 220px; }
  body.site-style-068b595ac6c5 .content-page{ font-size: 14px; color: #1b1b1b; }
  body.site-style-068b595ac6c5 .content-page h2,body.site-style-068b595ac6c5 .content-page h3{ letter-spacing: 0; }
  body.site-style-068b595ac6c5 .admission26-hero{ padding: 18px 0 28px; }
  body.site-style-068b595ac6c5 .admission26-kicker{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 12px; font-weight: 700; padding: 5px 12px; border-radius: 999px; margin-bottom: 12px; }
  body.site-style-068b595ac6c5 .admission26-title{ font-size: 28px; line-height: 1.2; margin: 0 0 10px; font-weight: 800; max-width: 900px; }
  body.site-style-068b595ac6c5 .admission26-title span{ color: var(--blue); }
  body.site-style-068b595ac6c5 .admission26-lead{ color: var(--muted); font-size: 14px; line-height: 1.5; max-width: 980px; margin: 0 0 8px; }
  body.site-style-068b595ac6c5 .admission26-note{ color: #92a0b4; font-size: 12px; font-weight: 600; margin: 0 0 16px; }
  body.site-style-068b595ac6c5 .admission26-alert{ border: 1px solid #f3c85d; background: #fffaf0; border-radius: 10px; padding: 14px 16px; margin: 18px 0; box-shadow: none; }
  body.site-style-068b595ac6c5 .admission26-alert-top{ color: #b75b17; font-size: 12px; font-weight: 800; text-transform: uppercase; margin-bottom: 4px; }
  body.site-style-068b595ac6c5 .admission26-alert-title{ font-size: 16px; font-weight: 800; color: #15243a; margin-bottom: 4px; }
  body.site-style-068b595ac6c5 .admission26-alert-sub{ color: var(--muted); font-size: 13px; line-height: 1.45; }
  body.site-style-068b595ac6c5 .admission26-stats{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0; }
  body.site-style-068b595ac6c5 .admission26-stat{ border: 1px solid #f3c85d; background: #fffaf4; border-radius: 10px; padding: 16px; }
  body.site-style-068b595ac6c5 .admission26-stat.green{ border-color: #9bdfb4; background: #eaf8ef; }
  body.site-style-068b595ac6c5 .admission26-stat-label{ color: #b75b17; font-size: 12px; font-weight: 800; text-transform: uppercase; margin-bottom: 6px; }
  body.site-style-068b595ac6c5 .admission26-stat.green .admission26-stat-label{ color: var(--green); }
  body.site-style-068b595ac6c5 .admission26-stat-number{ font-size: 22px; font-weight: 800; color: #15243a; line-height: 1.1; margin-bottom: 4px; }
  body.site-style-068b595ac6c5 .admission26-stat-text{ color: var(--muted); font-size: 13px; font-weight: 600; }
  body.site-style-068b595ac6c5 .admission26-search-box{ border: 1px solid var(--blue); border-radius: 10px; padding: 16px; background: #fff; margin: 20px 0 14px; }
  body.site-style-068b595ac6c5 .admission26-search-title{ font-size: 18px; font-weight: 800; margin-bottom: 6px; color: #15243a; }
  body.site-style-068b595ac6c5 .admission26-search-sub{ color: var(--muted); font-size: 14px; line-height: 1.45; margin-bottom: 12px; }
  body.site-style-068b595ac6c5 .admission26-search-status{ display: inline-block; max-width: 100%; background: var(--green-bg); color: var(--green); border: 1px solid #9bdfb4; border-radius: 8px; padding: 7px 10px; font-size: 12px; font-weight: 700; margin-bottom: 12px; }
  body.site-style-068b595ac6c5 .admission26-search-row{ display: flex; gap: 10px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .admission26-search-row input{ flex: 0 1 260px; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-weight: 600; }
  body.site-style-068b595ac6c5 .admission26-search-row button{ border-radius: 8px; box-shadow: none; }
  body.site-style-068b595ac6c5 .admission26-links{ display: flex; flex-direction: column; gap: 8px; margin: 14px 0 24px; }
  body.site-style-068b595ac6c5 .admission26-links a{ color: var(--blue); text-decoration: none; font-weight: 700; }
  body.site-style-068b595ac6c5 .admission26-links a:hover{ text-decoration: underline; }
  body.site-style-068b595ac6c5 .admission26-toolbar{ display: grid; grid-template-columns: minmax(180px, 280px) minmax(240px, 1fr) auto; gap: 12px; align-items: center; margin: 24px 0 16px; }
  body.site-style-068b595ac6c5 .admission26-toolbar input{ min-width: 0; width: 100%; background: #fff; }
  body.site-style-068b595ac6c5 .admission26-total{ color: #92a0b4; font-size: 13px; font-weight: 800; white-space: nowrap; }
  body.site-style-068b595ac6c5 .admission26-table-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 14px; box-shadow: none; }
  body.site-style-068b595ac6c5 #admission26-list .admission-overview-table th,body.site-style-068b595ac6c5 #admission26-list .admission-overview-table td{ padding: 8px; }
  body.site-style-068b595ac6c5 #admission26-list .admission-overview-table td{ font-size: 13px; }
  body.site-style-068b595ac6c5 .admission26-num-orange{ color: #c85e20; font-weight: 800; }
  body.site-style-068b595ac6c5 .admission26-num-green{ color: var(--green); font-weight: 900; }
  body.site-style-068b595ac6c5 .admission26-link{ color: var(--blue); text-decoration: none; font-weight: 700; white-space: nowrap; }
  body.site-style-068b595ac6c5 .admission26-help{ margin: 24px 0 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
  body.site-style-068b595ac6c5 .admission26-help h3{ color: #15243a; font-size: 18px; margin: 0 0 8px; }
  @media (max-width: 820px){body.site-style-068b595ac6c5 .admission26-title{ font-size: 24px; }
    body.site-style-068b595ac6c5 .admission26-stats{ grid-template-columns: 1fr; }
    body.site-style-068b595ac6c5 .admission26-toolbar{ grid-template-columns: 1fr; }}
  body.site-style-068b595ac6c5 .competition-city-wrap{ position: relative; flex: 1 1 220px; min-width: 160px; }
  body.site-style-068b595ac6c5 .competition-city-input{ width: 100%; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; box-sizing: border-box; }
  body.site-style-068b595ac6c5 .competition-city-suggest{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.08); max-height: 260px; overflow-y: auto; z-index: 20; }
  body.site-style-068b595ac6c5 .competition-city-suggest.open{ display: block; }
  body.site-style-068b595ac6c5 .competition-city-suggest-item{ padding: 8px 12px; cursor: pointer; font-size: 14px; }
  body.site-style-068b595ac6c5 .competition-city-suggest-item:hover,body.site-style-068b595ac6c5 .competition-city-suggest-item.active{ background: var(--blue-bg); }
  @media (max-width: 900px){
    body.site-style-068b595ac6c5 .pick-basic-grid{ grid-template-columns: 1fr; }
    body.site-style-068b595ac6c5 .pick-compact-filter-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.site-style-068b595ac6c5 .pick-filter-toggles{ padding-top: 0; }
  }
  @media (max-width: 560px){
    body.site-style-068b595ac6c5 .pick-compact-filter-grid{ grid-template-columns: 1fr; }
  }
  body.site-style-0c66156b2815 .pick-compact-filter-grid, body.site-app-page .pick-compact-filter-grid{ display: grid; grid-template-columns: minmax(180px, 1.1fr) minmax(220px, 1.5fr) minmax(170px, 1fr) auto; gap: 12px; align-items: start; }
  body.site-style-0c66156b2815 #pick-filter-level .cf-level-groups, body.site-app-page #pick-filter-level .cf-level-groups{ gap: 6px; }
  body.site-style-0c66156b2815 #pick-filter-level .cf-level-group, body.site-app-page #pick-filter-level .cf-level-group{ display: flex; align-items: center; gap: 12px; }
  body.site-style-0c66156b2815 #pick-filter-level .cf-level-group-title, body.site-app-page #pick-filter-level .cf-level-group-title{ flex: 0 0 125px; color: var(--muted); font-size: 12px; font-weight: 700; text-transform: none; }
  body.site-style-0c66156b2815 #pick-filter-level .cf-chips, body.site-app-page #pick-filter-level .cf-chips{ flex: 1 1 auto; }
  body.site-style-0c66156b2815 #pick-filter-form, body.site-app-page #pick-filter-form, body.site-style-0c66156b2815 #pick-filter-place, body.site-app-page #pick-filter-place{ display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
  body.site-style-0c66156b2815 #pick-filter-form > .cf-title, body.site-app-page #pick-filter-form > .cf-title, body.site-style-0c66156b2815 #pick-filter-place > .cf-title, body.site-app-page #pick-filter-place > .cf-title{ flex: 0 0 125px; }
  body.site-style-0c66156b2815 #pick-filter-form > .cf-chips, body.site-app-page #pick-filter-form > .cf-chips, body.site-style-0c66156b2815 #pick-filter-place > .cf-chips, body.site-app-page #pick-filter-place > .cf-chips{ flex: 1 1 auto; }
  body.site-style-0c66156b2815 .pick-compact-filter-grid, body.site-app-page .pick-compact-filter-grid{ grid-template-columns: minmax(300px, 1.6fr) minmax(180px, .85fr) auto; }
  body.site-style-0c66156b2815 .pick-university-wrap, body.site-app-page .pick-university-wrap{ position: relative; }
  body.site-style-0c66156b2815 .pick-university-suggest, body.site-app-page .pick-university-suggest{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; max-height: 260px; overflow-y: auto; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.1); z-index: 30; }
  body.site-style-0c66156b2815 .pick-university-suggest.open, body.site-app-page .pick-university-suggest.open{ display: block; }
  body.site-style-0c66156b2815 .pick-university-suggest-item, body.site-app-page .pick-university-suggest-item{ display: block; width: 100%; padding: 9px 12px; border: 0; background: #fff; text-align: left; cursor: pointer; font: inherit; font-size: 13px; }
  body.site-style-0c66156b2815 .pick-university-suggest-item:hover, body.site-app-page .pick-university-suggest-item:hover{ background: var(--blue-bg); }
  body.site-style-0c66156b2815 .pick-ugsn-details, body.site-app-page .pick-ugsn-details{ margin: 0 0 10px; border-bottom: 1px solid var(--border); }
  body.site-style-0c66156b2815 .pick-ugsn-details > summary, body.site-app-page .pick-ugsn-details > summary{ color: var(--muted); font-size: 13px; font-weight: 700; cursor: pointer; padding: 4px 0 8px; }
  body.site-style-0c66156b2815 .pick-ugsn-details .catalog-filter-group, body.site-app-page .pick-ugsn-details .catalog-filter-group{ margin: 0 0 8px; }
  body.site-style-0c66156b2815 .pick-basic-grid, body.site-app-page .pick-basic-grid{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .8fr); gap: 18px; align-items: start; }
  body.site-style-0c66156b2815 .pick-form-column, body.site-app-page .pick-form-column{ min-width: 0; }
  body.site-style-0c66156b2815 .pick-form-column .catalog-filter-group, body.site-app-page .pick-form-column .catalog-filter-group{ margin: 0; }
  body.site-style-0c66156b2815 .pick-form-column .catalog-chip, body.site-app-page .pick-form-column .catalog-chip{ padding: 7px 9px; }
  body.site-style-0c66156b2815 .pick-filter-field, body.site-app-page .pick-filter-field{ min-width: 0; }
  body.site-style-0c66156b2815 .pick-filter-field > label, body.site-style-0c66156b2815 .pick-filter-field > .cf-title, body.site-app-page .pick-filter-field > label, body.site-app-page .pick-filter-field > .cf-title{ display: block; color: var(--muted); font-size: 12px; font-weight: 700; margin-bottom: 6px; }
  body.site-style-0c66156b2815 .pick-filter-field > input, body.site-app-page .pick-filter-field > input{ width: 100%; box-sizing: border-box; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 13px; }
  body.site-style-0c66156b2815 .pick-filter-field .catalog-filter-group, body.site-app-page .pick-filter-field .catalog-filter-group{ margin: 0; }
  body.site-style-0c66156b2815 .pick-filter-field .catalog-filter-group .cf-title, body.site-app-page .pick-filter-field .catalog-filter-group .cf-title{ display: none; }
  body.site-style-0c66156b2815 .pick-filter-field .catalog-chip, body.site-app-page .pick-filter-field .catalog-chip{ padding: 7px 9px; }
  body.site-style-0c66156b2815 .pick-filter-toggles, body.site-app-page .pick-filter-toggles{ display: flex; flex-direction: column; gap: 7px; padding-top: 20px; }
  body.site-style-0c66156b2815 .pick-filter-toggles .catalog-chip, body.site-app-page .pick-filter-toggles .catalog-chip{ white-space: nowrap; }
  @media (max-width: 900px){
    body.site-style-0c66156b2815 .pick-basic-grid, body.site-app-page .pick-basic-grid{ grid-template-columns: 1fr; }
    body.site-style-0c66156b2815 .pick-compact-filter-grid, body.site-app-page .pick-compact-filter-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.site-style-0c66156b2815 .pick-filter-toggles, body.site-app-page .pick-filter-toggles{ padding-top: 0; }
  }
  @media (max-width: 560px){
    body.site-style-0c66156b2815 .pick-compact-filter-grid, body.site-app-page .pick-compact-filter-grid{ grid-template-columns: 1fr; }
  }
  body.site-style-068b595ac6c5 .uni-row-code{ font-size: 11px; color: var(--muted); font-weight: 600; }
  body.site-style-068b595ac6c5 .uni-back-link{ display: block; font-size: 13px; color: var(--muted); text-decoration: none; margin-bottom: 8px; }
  body.site-style-068b595ac6c5 .uni-back-link:hover{ text-decoration: underline; }
  body.site-style-068b595ac6c5 .uni-title{ font-size: 28px; font-weight: 800; margin: 0; line-height: 1.25; }
  body.site-style-068b595ac6c5 .university-groups-table tbody tr{ cursor: pointer; }
  body.site-style-068b595ac6c5 .university-groups-table tbody tr:hover td{ background: var(--blue-bg); }
  body.site-style-068b595ac6c5 .university-groups-table{ font-size: 12px; }
  body.site-style-068b595ac6c5 .university-groups-table th{ font-size: 10px; }
  body.site-style-068b595ac6c5 .university-groups-table th:nth-child(1),body.site-style-068b595ac6c5 .university-groups-table td:nth-child(1){ width: 24%; white-space: normal; }
  body.site-style-068b595ac6c5 .university-groups-table th:nth-child(2),body.site-style-068b595ac6c5 .university-groups-table td:nth-child(2){ width: 38%; white-space: nowrap; }
  body.site-style-068b595ac6c5 .university-groups-table th:nth-child(3),body.site-style-068b595ac6c5 .university-groups-table td:nth-child(3){ width: 10%; }
  body.site-style-068b595ac6c5 .university-groups-table th:nth-child(4),body.site-style-068b595ac6c5 .university-groups-table td:nth-child(4){ width: 14%; }
  body.site-style-068b595ac6c5 .university-groups-table th:nth-child(5),body.site-style-068b595ac6c5 .university-groups-table td:nth-child(5){ width: 14%; }
  body.site-style-068b595ac6c5 .simple-page{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 22px; margin-bottom: 18px; }
  body.site-style-068b595ac6c5 .simple-page h2{ margin: 0 0 8px; font-size: 28px; line-height: 1.2; }
  body.site-style-068b595ac6c5 .simple-page p{ color: var(--muted); margin: 0 0 16px; max-width: 760px; }
  body.site-style-068b595ac6c5 .simple-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px; }
  body.site-style-068b595ac6c5 .simple-card{ display: block; background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 16px; color: inherit; text-decoration: none; }
  body.site-style-068b595ac6c5 .simple-card:hover{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-068b595ac6c5 .simple-card-title{ font-weight: 800; margin-bottom: 6px; }
  body.site-style-068b595ac6c5 .simple-card-sub{ color: var(--muted); font-size: 13px; }
  body.site-style-068b595ac6c5 .simple-actions{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
  body.site-style-068b595ac6c5 .simple-cta{ display: inline-block; padding: 11px 18px; border-radius: 8px; background: var(--blue); color: #fff; text-decoration: none; font-weight: 800; }
  body.site-style-068b595ac6c5 .simple-cta.yellow{ background: #ffbf17; color: #15243a; border-bottom: 4px solid #f08a00; }
  body.site-style-068b595ac6c5 .route27{ display: flex; flex-direction: column; gap: 18px; padding: 18px 0 48px; font-size: 14px; }
  body.site-style-068b595ac6c5 .route27-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 18px; box-shadow: none; }
  body.site-style-068b595ac6c5 .route27-main{ border: 1px solid var(--blue); background: #fff; }
  body.site-style-068b595ac6c5 .route27-save{ float: right; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; justify-content: flex-end; max-width: 460px; }
  body.site-style-068b595ac6c5 .route27-save input{ width: 230px; min-width: 180px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 13px; }
  body.site-style-068b595ac6c5 .route27-save button{ padding: 8px 12px; border: none; border-radius: 8px; background: var(--blue); color: #fff; font-size: 13px; font-weight: 700; cursor: pointer; }
  body.site-style-068b595ac6c5 .route27-save-hint{ flex-basis: 100%; color: var(--muted); font-size: 12px; text-align: right; }
  body.site-style-068b595ac6c5 .route27-link-box{ flex-basis: 100%; display: none; background: #f4f8ff; border: 1px solid #d8e8ff; border-radius: 8px; padding: 9px 10px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; color: #24364f; overflow-wrap: anywhere; text-align: left; }
  body.site-style-068b595ac6c5 .route27-save.saved .route27-link-box{ display: block; }
  body.site-style-068b595ac6c5 .route27-kicker{ font-size: 14px; font-weight: 800; color: #15243a; margin-bottom: 4px; }
  body.site-style-068b595ac6c5 .route27-title{ font-size: 22px; line-height: 1.25; font-weight: 800; margin: 0 0 6px; color: #12233c; }
  body.site-style-068b595ac6c5 .route27-sub{ color: var(--muted); font-size: 14px; line-height: 1.45; margin: 0 0 14px; }
  body.site-style-068b595ac6c5 .route27-progress{ float: right; min-width: 104px; text-align: center; background: var(--blue); color: #fff; border-radius: 10px; padding: 10px 12px; font-weight: 700; font-size: 12px; }
  body.site-style-068b595ac6c5 .route27-progress-n{ font-size: 24px; line-height: 1; }
  body.site-style-068b595ac6c5 .route27-steps{ display: grid; grid-template-columns: repeat(8, minmax(100px, 1fr)); gap: 10px; clear: both; }
  body.site-style-068b595ac6c5 .route27-step{ border: 1px solid #d8e8ff; background: #fff; border-radius: 8px; padding: 10px; text-align: center; min-height: 74px; cursor: pointer; }
  body.site-style-068b595ac6c5 .route27-step.active{ border: 1px solid var(--blue); }
  body.site-style-068b595ac6c5 .route27-step-num{ width: 24px; height: 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: var(--blue-bg); color: var(--blue); font-weight: 800; margin-bottom: 5px; font-size: 12px; }
  body.site-style-068b595ac6c5 .route27-step.active .route27-step-num{ background: var(--blue); color: #fff; }
  body.site-style-068b595ac6c5 .route27-step-title{ font-size: 12px; font-weight: 800; color: #3d4b63; }
  body.site-style-068b595ac6c5 .route27-step-pct{ color: #92a0b4; font-size: 11px; font-weight: 700; }
  body.site-style-068b595ac6c5 .route27-section-title{ font-size: 20px; margin: 0 0 6px; color: #12233c; font-weight: 800; }
  body.site-style-068b595ac6c5 .route27-subhead{ font-size: 14px; margin: 18px 0 10px; color: #12233c; font-weight: 800; }
  body.site-style-068b595ac6c5 #route27-interests-section{ scroll-margin-top: 110px; }
  body.site-style-068b595ac6c5 .route27-stage-tag{ display: inline-block; background: var(--blue-bg); color: var(--blue); border-radius: 999px; padding: 5px 10px; font-size: 12px; font-weight: 800; margin-bottom: 10px; }
  body.site-style-068b595ac6c5 .route27-two{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .9fr); gap: 22px; align-items: start; }
  body.site-style-068b595ac6c5 .route27-card ul{ margin: 10px 0 0; padding-left: 20px; color: var(--muted); line-height: 1.5; }
  body.site-style-068b595ac6c5 .route27-aside{ border-left: 3px solid var(--blue); padding-left: 16px; color: #566377; }
  body.site-style-068b595ac6c5 .route27-checklist{ margin-top: 20px; border-top: 1px dashed #d8e8ff; }
  body.site-style-068b595ac6c5 .route27-task{ display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px dashed #d8e8ff; color: #3d4b63; font-weight: 600; }
  body.site-style-068b595ac6c5 .route27-task label{ display: flex; align-items: center; gap: 10px; cursor: pointer; }
  body.site-style-068b595ac6c5 .route27-task input{ width: 16px; height: 16px; }
  body.site-style-068b595ac6c5 .route27-mini-btn{ border: none; border-radius: 8px; background: var(--blue-bg); color: var(--blue); padding: 7px 10px; font-weight: 700; text-decoration: none; white-space: nowrap; font-size: 13px; }
  body.site-style-068b595ac6c5 .route27-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
  body.site-style-068b595ac6c5 .route27-test-results{ grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
  body.site-style-068b595ac6c5 .route27-tile{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 12px; background: #fbfdff; }
  body.site-style-068b595ac6c5 .route27-tile-title{ font-weight: 800; color: #12233c; margin-bottom: 6px; }
  body.site-style-068b595ac6c5 .route27-muted{ color: var(--muted); font-size: 13px; line-height: 1.45; }
  body.site-style-068b595ac6c5 .route27-pay{ border: 1px solid var(--blue); background: #fff; }
  body.site-style-068b595ac6c5 .route27-pay-row{ display: grid; grid-template-columns: minmax(220px, 1fr) auto auto; gap: 12px; align-items: center; margin-top: 16px; }
  body.site-style-068b595ac6c5 form.route27-pay-row{ margin-top: 16px; }
  body.site-style-068b595ac6c5 .route27-pay-row input,body.site-style-068b595ac6c5 .route27-form input,body.site-style-068b595ac6c5 .route27-form select{ min-width: 0; width: 100%; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-size: 14px; background: #fff; }
  body.site-style-068b595ac6c5 .route27-blue-btn{ display: inline-block; border: none; border-radius: 8px; background: var(--blue); color: #fff; padding: 10px 16px; font-weight: 700; text-decoration: none; cursor: pointer; font-size: 14px; }
  body.site-style-068b595ac6c5 .route27-green-note{ border: 1px solid #9bdfb4; background: var(--green-bg); color: var(--green); border-radius: 8px; padding: 10px 12px; font-weight: 700; margin-top: 12px; font-size: 13px; }
  body.site-style-068b595ac6c5 .route27-program{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 12px; margin-top: 10px; }
  body.site-style-068b595ac6c5 .route27-program-head{ display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
  body.site-style-068b595ac6c5 .route27-program-title{ font-weight: 800; color: #12233c; }
  body.site-style-068b595ac6c5 .route27-recommendations{ margin-top: 22px; }
  body.site-style-068b595ac6c5 .route27-rec-filters{ background: #f4f8ff; border-radius: 10px; padding: 12px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
  body.site-style-068b595ac6c5 .route27-rec-filter{ display: flex; flex-direction: column; gap: 5px; min-width: 0; }
  body.site-style-068b595ac6c5 .route27-rec-filter label{ color: var(--muted); font-size: 12px; font-weight: 800; }
  body.site-style-068b595ac6c5 .route27-rec-filter select,body.site-style-068b595ac6c5 .route27-rec-filter input{ width: 100%; border: 1px solid #d8e8ff; border-radius: 8px; padding: 9px 10px; font-size: 13px; background: #fff; }
  body.site-style-068b595ac6c5 .route27-rec-actions{ grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-style-068b595ac6c5 .route27-rec-cards{ display: grid; gap: 10px; margin-top: 12px; }
  body.site-style-068b595ac6c5 .route27-rec-card{ border: 1px solid #d8e8ff; border-radius: 10px; padding: 12px; background: #fff; }
  body.site-style-068b595ac6c5 .route27-rec-card-head{ display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
  body.site-style-068b595ac6c5 .route27-rec-card-title{ font-weight: 800; color: #12233c; }
  body.site-style-068b595ac6c5 .route27-rec-meta{ color: var(--muted); font-size: 13px; margin-top: 4px; line-height: 1.45; }
  body.site-style-068b595ac6c5 .route27-rec-reason{ background: #dcebfd; color: var(--blue); border-radius: 8px; padding: 8px 10px; font-size: 12px; font-weight: 700; margin-top: 10px; }
  body.site-style-068b595ac6c5 .route27-direction-group{ border: 1px solid #d8e8ff; border-radius: 10px; background: #fff; overflow: hidden; }
  body.site-style-068b595ac6c5 .route27-direction-head{ display: flex; justify-content: space-between; gap: 14px; padding: 12px 14px; background: #f4f8ff; border-bottom: 1px solid #d8e8ff; }
  body.site-style-068b595ac6c5 .route27-direction-code{ color: var(--blue); font-size: 12px; font-weight: 800; margin-bottom: 2px; }
  body.site-style-068b595ac6c5 .route27-direction-title{ color: #12233c; font-size: 15px; font-weight: 800; line-height: 1.25; }
  body.site-style-068b595ac6c5 .route27-direction-reason{ color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 4px; }
  body.site-style-068b595ac6c5 .route27-direction-count{ color: var(--green); font-size: 12px; font-weight: 800; white-space: nowrap; }
  body.site-style-068b595ac6c5 .route27-direction-options{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
  body.site-style-068b595ac6c5 .route27-direction-option{ padding: 12px 14px; border-left: 1px solid #d8e8ff; }
  body.site-style-068b595ac6c5 .route27-direction-option:first-child{ border-left: 0; }
  body.site-style-068b595ac6c5 .route27-direction-option .route27-pill{ margin-bottom: 8px; }
  body.site-style-068b595ac6c5 .route27-option-title{ color: #12233c; font-weight: 800; font-size: 13px; line-height: 1.25; }
  body.site-style-068b595ac6c5 .route27-option-meta{ color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 4px; }
  body.site-style-068b595ac6c5 .route27-option-stats{ display: flex; flex-wrap: wrap; gap: 6px; margin: 9px 0; color: #3d4b63; font-size: 12px; font-weight: 700; }
  body.site-style-068b595ac6c5 .route27-map-head{ display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 22px; }
  body.site-style-068b595ac6c5 .route27-map-score{ display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-size: 13px; font-weight: 700; }
  body.site-style-068b595ac6c5 .route27-map-score input{ width: 120px; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; font-size: 13px; }
  body.site-style-068b595ac6c5 .route27-map-legend{ display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 10px; }
  body.site-style-068b595ac6c5 .route27-map-legend span{ border-radius: 999px; padding: 5px 9px; font-size: 12px; font-weight: 800; }
  body.site-style-068b595ac6c5 .route27-map-dream{ background: #fff1df; }
  body.site-style-068b595ac6c5 .route27-map-real{ background: #e8f8ef; }
  body.site-style-068b595ac6c5 .route27-map-safe{ background: #fff8d8; }
  body.site-style-068b595ac6c5 .route27-map-unknown{ background: #f4f8ff; }
  body.site-style-068b595ac6c5 .route27-map-table{ width: 100%; border-collapse: collapse; font-size: 12px; background: #fff; table-layout: fixed; }
  body.site-style-068b595ac6c5 .route27-map-table th{ background: #f4f8ff; color: var(--muted); text-align: left; font-size: 11px; padding: 7px 8px; border-bottom: 1px solid #d8e8ff; }
  body.site-style-068b595ac6c5 .route27-map-table td{ padding: 8px; border-bottom: 1px solid #d8e8ff; vertical-align: top; line-height: 1.3; }
  body.site-style-068b595ac6c5 .route27-map-table .route27-map-program{ font-weight: 800; color: #12233c; font-size: 13px; line-height: 1.25; }
  body.site-style-068b595ac6c5 .route27-map-table .route27-map-sub{ color: var(--muted); font-size: 11px; margin-top: 3px; line-height: 1.3; }
  body.site-style-068b595ac6c5 .route27-map-table .route27-blue-btn{ padding: 7px 10px; border-radius: 7px; font-size: 12px; white-space: nowrap; }
  body.site-style-068b595ac6c5 .route27-easier-btn{ display: inline-flex; align-items: center; gap: 5px; margin-top: 8px; border: 1px solid #d8e8ff; border-radius: 8px; background: var(--blue-bg); color: var(--blue); padding: 6px 9px; font-size: 12px; font-weight: 800; cursor: pointer; font-family: inherit; }
  body.site-style-068b595ac6c5 .route27-easier-btn:hover,body.site-style-068b595ac6c5 .route27-easier-btn.active{ border-color: var(--blue); background: #fff; }
  body.site-style-068b595ac6c5 .route27-easier-row td{ padding: 0 8px 10px; background: #fff; }
  body.site-style-068b595ac6c5 .route27-easier-box{ margin-top: 4px; border-top: 1px solid #d8e8ff; padding: 10px 0 0 0; }
  body.site-style-068b595ac6c5 .route27-easier-head{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; color: #12233c; font-size: 13px; font-weight: 800; margin-bottom: 8px; }
  body.site-style-068b595ac6c5 .route27-easier-chip{ border: 0; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 9px; font-size: 12px; font-weight: 800; cursor: pointer; font-family: inherit; }
  body.site-style-068b595ac6c5 .route27-easier-list{ display: grid; gap: 6px; max-width: 980px; }
  body.site-style-068b595ac6c5 .route27-easier-item{ display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 10px; align-items: center; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; background: #fbfdff; }
  body.site-style-068b595ac6c5 .route27-easier-score{ color: var(--blue); font-size: 13px; font-weight: 900; }
  body.site-style-068b595ac6c5 .route27-easier-margin{ color: var(--green); font-size: 12px; font-weight: 800; margin-top: 2px; }
  body.site-style-068b595ac6c5 .route27-easier-title{ color: #12233c; font-size: 13px; font-weight: 800; line-height: 1.25; }
  body.site-style-068b595ac6c5 .route27-easier-meta{ color: var(--muted); font-size: 11px; line-height: 1.35; margin-top: 2px; }
  body.site-style-068b595ac6c5 .route27-map-table .route27-pill{ padding: 4px 8px; font-size: 11px; }
  body.site-style-068b595ac6c5 .route27-map-table th.route27-tight,body.site-style-068b595ac6c5 .route27-map-table td.route27-tight{ width: 32px; padding-left: 6px; padding-right: 4px; }
  body.site-style-068b595ac6c5 .route27-map-table th.route27-action,body.site-style-068b595ac6c5 .route27-map-table td.route27-action{ width: 96px; text-align: right; }
  body.site-style-068b595ac6c5 .route27-map-remove{ border: 0; background: transparent; color: var(--muted); cursor: pointer; font-weight: 800; font-size: 16px; }
  body.site-style-068b595ac6c5 .route27-pill{ display: inline-block; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 10px; font-size: 12px; font-weight: 700; }
  body.site-style-068b595ac6c5 .route27-calendar-item{ display: grid; grid-template-columns: 110px 1fr auto; gap: 12px; align-items: center; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; margin-top: 8px; }
  body.site-style-068b595ac6c5 .route27-date{ color: var(--blue); font-weight: 800; }
  body.site-style-068b595ac6c5 .route27-form{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 16px; }
  body.site-style-068b595ac6c5 .route27-score-card{ border: 1px solid #d8e8ff; border-radius: 10px; overflow: hidden; background: #fbfdff; margin-top: 14px; }
  body.site-style-068b595ac6c5 .route27-score-table{ width: 100%; border-collapse: collapse; font-size: 13px; }
  body.site-style-068b595ac6c5 .route27-score-table th{ background: #dcebfd; color: #3d4b63; padding: 9px 12px; text-align: left; font-size: 12px; }
  body.site-style-068b595ac6c5 .route27-score-table td{ border-top: 1px dashed #d8e8ff; padding: 9px 12px; vertical-align: middle; }
  body.site-style-068b595ac6c5 .route27-score-table input{ width: 120px; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; font-size: 13px; background: #fff; }
  body.site-style-068b595ac6c5 .route27-score-summary{ background: #f4f8ff; color: var(--muted); font-size: 12px; padding: 9px 12px; }
  body.site-style-068b595ac6c5 .route27-score-summary b{ color: #12233c; }
  body.site-style-068b595ac6c5 .route27-note-card{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 11px 12px; background: #fff; margin-top: 10px; }
  body.site-style-068b595ac6c5 .route27-note-card.is-alert{ border-color: #ffb34d; background: #fff9ef; }
  body.site-style-068b595ac6c5 .route27-note-card b{ color: #12233c; }
  body.site-style-068b595ac6c5 .route27-chips{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
  body.site-style-068b595ac6c5 .route27-chip{ border: 1px solid #d8e8ff; border-radius: 999px; padding: 7px 11px; font-weight: 700; color: #12233c; background: #fff; font-size: 13px; cursor: pointer; font-family: inherit; }
  body.site-style-068b595ac6c5 .route27-chip.active{ background: var(--blue); color: #fff; border-color: var(--blue); }
  body.site-style-068b595ac6c5 .route27-result-box{ display: none; margin-top: 12px; padding: 0; border: 0; border-radius: 0; background: transparent; }
  body.site-style-068b595ac6c5 .route27-result-box.active{ display: block; }
  body.site-style-068b595ac6c5 .route27-result-title{ font-size: 14px; font-weight: 800; color: #12233c; margin-bottom: 6px; }
  body.site-style-068b595ac6c5 .route27-result-text{ color: var(--muted); line-height: 1.55; font-size: 13px; }
  body.site-style-068b595ac6c5 .route27-rec-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
  body.site-style-068b595ac6c5 .route27-rec-list a{ border: 1px solid #d8e8ff; border-radius: 999px; padding: 7px 10px; color: var(--blue); background: #fff; font-weight: 700; font-size: 13px; text-decoration: none; }
  body.site-style-068b595ac6c5 .route27-bars{ display: grid; gap: 7px; margin-top: 10px; }
  body.site-style-068b595ac6c5 .route27-bar{ display: grid; grid-template-columns: 130px 1fr 58px; gap: 10px; align-items: center; color: #12233c; font-size: 13px; font-weight: 700; }
  body.site-style-068b595ac6c5 .route27-bar-track{ display: block; height: 9px; border-radius: 999px; background: #dbeaff; overflow: hidden; }
  body.site-style-068b595ac6c5 .route27-bar-fill{ display: block; height: 100%; border-radius: inherit; background: var(--blue); }
  body.site-style-068b595ac6c5 .route27-bar.is-top .route27-bar-fill{ background: #ffd44d; }
  body.site-style-068b595ac6c5 .route27-repeat-link{ display: inline-flex; margin-top: 10px; }
  body.site-style-068b595ac6c5 .route27-ai{ display: grid; grid-template-columns: 120px 1fr; gap: 18px; align-items: start; }
  body.site-style-068b595ac6c5 .route27-ai img{ width: 90px; max-width: 100%; border-radius: 10px; }
  body.site-style-068b595ac6c5 .route27-answer{ background: #dcebfd; border-radius: 8px; padding: 12px; color: #24364f; line-height: 1.45; font-size: 13px; }
  body.site-style-068b595ac6c5 .route27-panel{ display: none; }
  body.site-style-068b595ac6c5 .route27-panel.active{ display: block; }
  body.site-style-068b595ac6c5 .kim-page{ width: 100%; margin: 0; }
  body.site-style-068b595ac6c5 .kim-crumbs{ font-size: 13px; color: var(--ink-3); margin-bottom: 14px; }
  body.site-style-068b595ac6c5 .kim-crumbs a{ color: var(--ink-2); text-decoration: none; }
  body.site-style-068b595ac6c5 .kim-hero{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 20px 22px; margin-bottom: 14px; }
  body.site-style-068b595ac6c5 .kim-kicker{ display: inline-block; background: var(--blue-bg); color: var(--blue); border-radius: 999px; padding: 5px 11px; font-size: 12px; font-weight: 800; margin-bottom: 12px; }
  body.site-style-068b595ac6c5 .kim-hero h2{ font-size: 28px; line-height: 1.2; margin: 0 0 10px; color: #1b1b1b; }
  body.site-style-068b595ac6c5 .kim-hero h2 span{ color: var(--blue); }
  body.site-style-068b595ac6c5 .kim-hero p,body.site-style-068b595ac6c5 .kim-card p{ color: var(--ink-2); line-height: 1.6; margin: 0 0 14px; }
  body.site-style-068b595ac6c5 .kim-status{ display: inline-flex; align-items: center; border-radius: 999px; padding: 7px 13px; font-size: 13px; font-weight: 800; background: var(--warn-bg); color: var(--warn-ink); }
  body.site-style-068b595ac6c5 .kim-steps{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 18px; }
  body.site-style-068b595ac6c5 .kim-step{ border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; color: var(--muted); font-size: 12px; background: #fff; }
  body.site-style-068b595ac6c5 .kim-step b{ display: block; color: #1b1b1b; margin-bottom: 3px; }
  body.site-style-068b595ac6c5 .kim-step.active{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-068b595ac6c5 .kim-links,body.site-style-068b595ac6c5 .kim-filter,body.site-style-068b595ac6c5 .kim-docs{ display: flex; flex-wrap: wrap; gap: 8px; }
  body.site-style-068b595ac6c5 .kim-links{ margin-top: 16px; }
  body.site-style-068b595ac6c5 .kim-links a,body.site-style-068b595ac6c5 .kim-docs a,body.site-style-068b595ac6c5 .kim-filter button{ border: 1px solid var(--border); border-radius: 8px; padding: 8px 12px; color: #1b1b1b; background: #fff; text-decoration: none; font-size: 13px; font-weight: 800; }
  body.site-style-068b595ac6c5 .kim-links a.primary,body.site-style-068b595ac6c5 .kim-docs a.primary,body.site-style-068b595ac6c5 .kim-filter button.on{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-068b595ac6c5 .kim-stats{ display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 20px; }
  body.site-style-068b595ac6c5 .kim-stat,body.site-style-068b595ac6c5 .kim-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; }
  body.site-style-068b595ac6c5 .kim-stat{ padding: 14px 16px; }
  body.site-style-068b595ac6c5 .kim-stat b{ display: block; color: #1b1b1b; font-size: 22px; line-height: 1.2; }
  body.site-style-068b595ac6c5 .kim-stat span{ display: block; color: var(--muted); font-size: 12px; font-weight: 700; }
  body.site-style-068b595ac6c5 .kim-card{ padding: 18px 20px; margin-bottom: 14px; }
  body.site-style-068b595ac6c5 .kim-card h2{ margin: 0 0 8px; color: #1b1b1b; font-size: 20px; }
  body.site-style-068b595ac6c5 .kim-filter{ margin: 14px 0; }
  body.site-style-068b595ac6c5 .kim-filter button{ cursor: pointer; font-family: inherit; }
  body.site-style-068b595ac6c5 .kim-row{ border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin: 10px 0; background: #fff; }
  body.site-style-068b595ac6c5 .kim-row.changed{ border-color: #f59e0b; background: #fffaf2; }
  body.site-style-068b595ac6c5 .kim-row-head{ display: flex; align-items: center; justify-content: space-between; gap: 12px; }
  body.site-style-068b595ac6c5 .kim-row h3{ margin: 0; color: #1b1b1b; font-size: 16px; }
  body.site-style-068b595ac6c5 .kim-pill{ flex: none; border-radius: 999px; padding: 4px 9px; font-size: 11px; font-weight: 800; background: var(--ok-bg); color: var(--ok-ink); }
  body.site-style-068b595ac6c5 .kim-row.changed .kim-pill{ background: var(--warn-bg); color: var(--warn-ink); }
  body.site-style-068b595ac6c5 .kim-look{ border-left: 3px solid var(--blue); padding-left: 10px; color: var(--ink-2); }
  body.site-style-068b595ac6c5 .kim-docs{ margin-top: 11px; }
  body.site-style-068b595ac6c5 .kim-docs a{ color: var(--blue); }
  body.site-style-068b595ac6c5 .kim-docs a.primary{ color: #fff; }
  body.site-style-068b595ac6c5 .kim-card ul{ margin: 0; padding-left: 22px; color: var(--ink-2); line-height: 1.7; }
  body.site-style-068b595ac6c5 .kim-card li a{ color: var(--blue); font-weight: 800; }
  body.site-style-068b595ac6c5 .kim-article .kim-card h2{ font-size: 22px; }
  body.site-style-068b595ac6c5 .kim-lead{ font-size: 16px; border-left: 4px solid var(--blue); background: var(--blue-bg); padding: 13px 16px; border-radius: 0 8px 8px 0; }
  body.site-style-068b595ac6c5 .kim-warning{ border-color: #ef4444; background: #fef2f2; }
  body.site-style-068b595ac6c5 .kim-article-table{ table-layout: auto; }
  body.site-style-068b595ac6c5 .kim-article-table th,body.site-style-068b595ac6c5 .kim-article-table td{ white-space: normal; vertical-align: top; padding: 10px 12px; line-height: 1.45; }
  body.site-style-068b595ac6c5 .kim-steps-list{ margin: 0; padding-left: 22px; color: var(--ink-2); line-height: 1.7; }
  body.site-style-068b595ac6c5 .score-converter{ display: grid; grid-template-columns: minmax(220px, 1fr) 140px minmax(190px, .8fr); gap: 10px; align-items: center; margin-top: 14px; }
  body.site-style-068b595ac6c5 .score-converter select,body.site-style-068b595ac6c5 .score-converter input{ width: 100%; min-width: 0; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font: inherit; background: #fff; }
  body.site-style-068b595ac6c5 .score-output{ font-size: 18px; font-weight: 800; color: #1b1b1b; }
  body.site-style-068b595ac6c5 .score-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(54px, 1fr)); gap: 5px; margin-top: 12px; }
  body.site-style-068b595ac6c5 .score-cell{ border: 1px solid var(--border); border-radius: 8px; padding: 5px 4px; text-align: center; background: #fff; font-variant-numeric: tabular-nums; }
  body.site-style-068b595ac6c5 .score-cell .primary-score{ display: block; color: var(--muted); font-size: 11px; }
  body.site-style-068b595ac6c5 .score-cell .test-score{ display: block; color: #1b1b1b; font-size: 13px; font-weight: 800; }
  body.site-style-068b595ac6c5 .score-cell.threshold{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-068b595ac6c5 .kim-qa .q{ margin: 16px 0 6px; color: var(--ink); font-size: 16px; font-weight: 800; }
  body.site-style-068b595ac6c5 .kim-qa .a{ color: var(--ink-2); margin: 0; line-height: 1.65; }
  @media (max-width: 980px){body.site-style-068b595ac6c5 .route27-steps{ grid-template-columns: repeat(2, 1fr); }
    body.site-style-068b595ac6c5 .route27-two,body.site-style-068b595ac6c5 .route27-pay-row,body.site-style-068b595ac6c5 .route27-form,body.site-style-068b595ac6c5 .route27-calendar-item,body.site-style-068b595ac6c5 .route27-ai,body.site-style-068b595ac6c5 .route27-test-results,body.site-style-068b595ac6c5 .route27-rec-filters{ grid-template-columns: 1fr; }
    body.site-style-068b595ac6c5 .route27-direction-options{ grid-template-columns: 1fr; }
    body.site-style-068b595ac6c5 .route27-direction-option{ border-left: 0; border-top: 1px solid #d8e8ff; }
    body.site-style-068b595ac6c5 .route27-direction-option:first-child{ border-top: 0; }
    body.site-style-068b595ac6c5 .route27-progress{ float: none; display: inline-block; margin-bottom: 14px; }
    body.site-style-068b595ac6c5 .route27-save{ float: none; display: flex; justify-content: flex-start; margin-bottom: 14px; max-width: none; }
    body.site-style-068b595ac6c5 .route27-save-hint{ text-align: left; }
    body.site-style-068b595ac6c5 .kim-steps{ grid-template-columns: 1fr 1fr; }
    body.site-style-068b595ac6c5 .score-converter{ grid-template-columns: 1fr; }}

/* Consolidated page style 0c66156b2815. */
body.site-style-0c66156b2815{
    --green: #1a7f37; --green-bg: #e6f4ea;
    --red: #c0362c; --amber: #9a6700; --amber-bg: #fff8e1;
    --border: #e2e2e2; --muted: #6b7280; --bg: #fafafa;
    --blue: #1b6ef3; --blue-bg: #eaf2ff;
    --card: #fff; --line: #d8e8ff; --ink: #12233c; --ink-2: #566377; --ink-3: #9aa8bd;
    --blue-soft: #dcebfd; --warn-bg: #fff7e8; --warn-ink: #b45309; --ok-bg: #e8f8ef; --ok-ink: #168344;
    --shadow: 0 12px 28px rgba(15,41,66,.06);
  }
  body.site-style-0c66156b2815 *{ box-sizing: border-box; }
  body.site-style-0c66156b2815{
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    margin: 0; background: var(--bg); color: #1b1b1b; line-height: 1.5;
  }
  body.site-style-0c66156b2815 header{
    background: #fff; border-bottom: 1px solid var(--border);
    padding: 18px 28px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px;
  }
  body.site-style-0c66156b2815 header h1{ font-size: 18px; margin: 0; }
  body.site-style-0c66156b2815 header .meta{ color: var(--muted); font-size: 13px; }
  body.site-style-0c66156b2815 header{ display: block; padding: 14px 28px 18px; }
  body.site-style-0c66156b2815 .site-topbar{ display: flex; align-items: center; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--border); gap: 28px; }
  body.site-style-0c66156b2815 .site-logo{ display: flex; align-items: center; gap: 8px; text-decoration: none; color: #1b1b1b; font-weight: 700; font-size: 15px; }
  body.site-style-0c66156b2815 .site-logo img{ height: 30px; width: auto; border-radius: 6px; }
  body.site-style-0c66156b2815 .site-header-main{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }
  body.site-style-0c66156b2815 .site-topbar-left{ display: flex; align-items: center; gap: 28px; min-width: 0; width: 100%; }
  body.site-style-0c66156b2815 .site-nav{ display: flex; gap: 4px; align-items: center; flex-wrap: wrap; justify-content: space-between; flex: 1; }
  /* Общий отступ страницы увеличен (было 20px 16px 60px) -- по фидбоку
     "ощущение слипленности": больше воздуха по краям и снизу. */
  body.site-style-0c66156b2815 main{ max-width: 1200px; margin: 0 auto; padding: 28px 20px 72px; }
  body.site-style-0c66156b2815 .tabs{ display: flex; gap: 4px; margin-bottom: 20px; border-bottom: 1px solid var(--border); }
  body.site-style-0c66156b2815 .tab-btn{
    padding: 10px 16px; border: none; background: none; cursor: pointer;
    font-size: 14px; color: var(--muted); border-bottom: 2px solid transparent;
    text-decoration: none; display: inline-block;
  }
  body.site-style-0c66156b2815 .tab-btn.active{ color: #1b1b1b; border-bottom-color: #1b1b1b; font-weight: 600; }
  body.site-style-0c66156b2815 .tab-btn.cta-2027{
    background: #ffbf17; color: #15243a; border-bottom: 4px solid #f08a00; border-radius: 8px;
    font-weight: 800; margin-left: 8px; padding: 9px 18px;
  }
  body.site-style-0c66156b2815 .tab-btn.cta-2027.active{ border-bottom-color: #f08a00; color: #15243a; }
  body.site-style-0c66156b2815 .panel{ display: none; }
  body.site-style-0c66156b2815 .panel.active{ display: block; }
  body.site-style-0c66156b2815 .search-row{ display: flex; gap: 8px; margin-bottom: 16px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 input[type=text],body.site-style-0c66156b2815 input[type=number]{
    flex: 1; min-width: 220px; padding: 10px 12px; border: 1px solid var(--border);
    border-radius: 8px; font-size: 14px;
  }
  body.site-style-0c66156b2815 button.primary{
    padding: 10px 18px; border: none; border-radius: 8px; background: #1b1b1b; color: #fff;
    font-size: 14px; cursor: pointer;
  }
  body.site-style-0c66156b2815 button.primary:hover{ background: #333; }
  body.site-style-0c66156b2815 button.secondary{
    padding: 8px 14px; border: 1px solid var(--border); border-radius: 8px; background: #fff;
    font-size: 13px; cursor: pointer; color: #1b1b1b;
  }
  body.site-style-0c66156b2815 button.secondary:hover{ background: #f3f3f3; }
  body.site-style-0c66156b2815 button:disabled{ opacity: 0.5; cursor: default; }
  body.site-style-0c66156b2815 .sort-row{ display: flex; align-items: center; gap: 8px; margin-bottom: 14px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .sort-row .lbl{ color: var(--muted); font-size: 13px; }
  body.site-style-0c66156b2815 .sort-row select{
    padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; background: #fff;
    font-size: 13px; color: #1b1b1b; max-width: 260px;
  }
  body.site-style-0c66156b2815 button.sort-btn.active{ background: var(--blue); color: #fff; border-color: var(--blue); }
  body.site-style-0c66156b2815 a.link-btn{
    display: inline-block; padding: 6px 12px; border: 1px solid var(--border); border-radius: 8px;
    font-size: 13px; color: #1b1b1b; text-decoration: none; background: #fff;
  }
  body.site-style-0c66156b2815 a.link-btn:hover{ background: #f3f3f3; }
  body.site-style-0c66156b2815 table{ width: 100%; border-collapse: collapse; background: #fff; border-radius: 10px; overflow: hidden; }
  body.site-style-0c66156b2815 th,body.site-style-0c66156b2815 td{ text-align: left; padding: 5px 5px; font-size: 13px; border-bottom: 1px solid var(--border); white-space: nowrap; }
  body.site-style-0c66156b2815 th{ background: #f3f3f3; font-weight: 600; color: #444; position: sticky; top: 0; }
  body.site-style-0c66156b2815 th.sortable{ cursor: pointer; user-select: none; }
  body.site-style-0c66156b2815 th.sortable:hover{ background: #e8e8e8; }
  body.site-style-0c66156b2815 th.sortable .arrow{ color: var(--muted); font-size: 11px; margin-left: 4px; }
  body.site-style-0c66156b2815 tr.consent-yes{ background: var(--green-bg); }
  body.site-style-0c66156b2815 tr.highlight-row{ background: var(--blue-bg) !important; outline: 2px solid var(--blue); outline-offset: -2px; }
  body.site-style-0c66156b2815 tr:hover{ background: #f5f5f5; }
  body.site-style-0c66156b2815 tr.consent-yes:hover{ background: #dcefe1; }
  body.site-style-0c66156b2815 tr.highlight-row:hover{ background: #dcebfd !important; }
  body.site-style-0c66156b2815 tr.own-row-toolbar td{ background: #dcebfd; border-top: none; padding: 8px 10px; white-space: normal; font-size: 13px; }
  body.site-style-0c66156b2815 .own-row-toolbar-inner{ display: flex; gap: 16px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 tr.own-row-toolbar label{ display: inline-flex; align-items: center; gap: 5px; cursor: pointer; }
  body.site-style-0c66156b2815 .badge{ display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 12px; font-weight: 600; }
  body.site-style-0c66156b2815 .badge.yes{ background: var(--green); color: #fff; }
  body.site-style-0c66156b2815 .badge.no{ background: #eee; color: var(--muted); }
  /* в таблице конкурсного списка бейдж согласия -- не таблетка вокруг слова,
     а сплошная квадратная полоса на всю ширину ячейки (поверх уже подсвеченной
     зелёным строки -- получается двухтоновая полоска) */
  body.site-style-0c66156b2815 .detail-table .badge{ display: block; width: 100%; box-sizing: border-box; text-align: center; border-radius: 0; padding: 4px 0; }
  body.site-style-0c66156b2815 .fresh-consent-badge{
    display: block; margin-top: 3px; font-size: 11px; font-weight: 600; color: var(--amber);
    background: var(--amber-bg); padding: 1px 3px; border-radius: 0; width: fit-content; white-space: nowrap;
  }
  body.site-style-0c66156b2815 .card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 16px; margin-bottom: 12px; }
  body.site-style-0c66156b2815 .card h3{ margin: 0 0 4px; font-size: 15px; }
  body.site-style-0c66156b2815 .card .sub{ color: var(--muted); font-size: 13px; margin-bottom: 10px; }
  body.site-style-0c66156b2815 .card .actions{ margin-top: 10px; }
  body.site-style-0c66156b2815 .empty{ color: var(--muted); padding: 24px; text-align: center; }
  body.site-style-0c66156b2815 .table-wrap{ overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; max-height: 70vh; overflow-y: auto; }
  body.site-style-0c66156b2815 .table-wrap.full-list{ max-height: none; overflow-y: visible; }
  body.site-style-0c66156b2815 .note{ font-size: 12px; color: var(--muted); margin-top: 8px; }
  body.site-style-0c66156b2815 .list-footer{ display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 14px; }
  body.site-style-0c66156b2815 .elsewhere-link{ color: var(--blue); text-decoration: none; }
  body.site-style-0c66156b2815 .elsewhere-link:hover{ text-decoration: underline; }
  body.site-style-0c66156b2815 .breadcrumb{ font-size: 13px; color: var(--muted); margin-bottom: 10px; }
  body.site-style-0c66156b2815 .breadcrumb a{ color: var(--blue); text-decoration: none; }
  body.site-style-0c66156b2815 .breadcrumb a:hover{ text-decoration: underline; }
  body.site-style-0c66156b2815 .back-link{ display: inline-block; margin-bottom: 14px; color: var(--blue); text-decoration: none; font-size: 14px; }
  body.site-style-0c66156b2815 .back-link:hover{ text-decoration: underline; }
  /* переключатель "Списки: Конкурсные / Подавших документы" -- по образцу
     самих Госуслуг (см. их страницу программы) */
  body.site-style-0c66156b2815 .list-toggle{ display: flex; gap: 8px; margin-bottom: 10px; }
  body.site-style-0c66156b2815 .list-toggle-btn{
    padding: 6px 14px; border-radius: 8px; border: 1px solid var(--border);
    color: var(--muted); text-decoration: none; font-size: 13px; font-weight: 600;
    background: var(--card-bg, #fff);
  }
  body.site-style-0c66156b2815 .list-toggle-btn:hover{ border-color: var(--blue); color: var(--blue); }
  body.site-style-0c66156b2815 .list-toggle-btn.active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-0c66156b2815 .detail-header h2{ margin: 0 0 6px; font-size: 22px; }
  body.site-style-0c66156b2815 .detail-header .university-link{ color: var(--blue); text-decoration: none; font-weight: 600; }
  body.site-style-0c66156b2815 .detail-header .university-link:hover{ text-decoration: underline; }
  body.site-style-0c66156b2815 .detail-header .sub{ color: var(--muted); font-size: 13px; margin-bottom: 16px; }
  body.site-style-0c66156b2815 .detail-stats{ display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
  body.site-style-0c66156b2815 .stat-box{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 12px 16px; min-width: 120px; }
  body.site-style-0c66156b2815 .stat-box .val{ font-size: 22px; font-weight: 700; }
  body.site-style-0c66156b2815 .stat-box .lbl{ font-size: 12px; color: var(--muted); margin-top: 2px; }
  body.site-style-0c66156b2815 .filter-row{ display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin-bottom: 14px; font-size: 13px; }
  body.site-style-0c66156b2815 .filter-row label{ display: flex; align-items: center; gap: 6px; cursor: pointer; }
  /* Excel-подобные фильтры по колонкам в конкурсном списке (задача #33) */
  body.site-style-0c66156b2815 .filter-th{ position: relative; }
  body.site-style-0c66156b2815 .col-filter-btn{ cursor: pointer; color: var(--muted); font-size: 11px; margin-left: 3px; user-select: none; }
  body.site-style-0c66156b2815 .col-filter-btn:hover{ color: var(--blue); }
  body.site-style-0c66156b2815 .col-filter-btn.active{ color: var(--blue); font-weight: 700; }
  body.site-style-0c66156b2815 .col-filter-popover{
    position: absolute; top: 100%; left: 0; z-index: 20; background: #fff; border: 1px solid var(--border);
    border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.12); padding: 8px; min-width: 200px; max-height: 280px;
    overflow-y: auto; font-weight: 400; text-transform: none; letter-spacing: normal; white-space: normal;
  }
  body.site-style-0c66156b2815 .col-filter-actions{ display: flex; gap: 8px; margin-bottom: 6px; border-bottom: 1px solid var(--border); padding-bottom: 6px; }
  body.site-style-0c66156b2815 .col-filter-actions button{ border: none; background: none; color: var(--blue); font-size: 12px; cursor: pointer; padding: 0; }
  body.site-style-0c66156b2815 .col-filter-actions button:hover{ text-decoration: underline; }
  body.site-style-0c66156b2815 .col-filter-options{ display: flex; flex-direction: column; gap: 4px; }
  body.site-style-0c66156b2815 .col-filter-option{ display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 400; cursor: pointer; white-space: nowrap; }
  body.site-style-0c66156b2815 #col-filters-reset-btn{ padding: 4px 10px; font-size: 12px; }
  body.site-style-0c66156b2815 .pagination{ display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 16px; }
  body.site-style-0c66156b2815 .pagination .page-info{ font-size: 13px; color: var(--muted); }
  body.site-style-0c66156b2815 .detail-table-wrap{ overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; }
  body.site-style-0c66156b2815 .detail-table-wrap table.detail-table{ table-layout: fixed; }
  /* Ширины колонок задаются динамически через <colgroup> в JS (tableColgroupHtml) --
     число колонок меняется (платные места добавляют колонку "Договор", а
     "Подавшие документы" не имеет ОВП/ВПП), фиксированные nth-child были некорректны. */
  body.site-style-0c66156b2815 .detail-table-wrap table.detail-table td{ white-space: normal; word-break: break-word; line-height: 1.35; }
  body.site-style-0c66156b2815 .detail-table-wrap table.detail-table .consent-target-inner{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body.site-style-0c66156b2815 .benefit-badge{ color: var(--blue); font-weight: 700; font-size: 12px; white-space: nowrap; }
  body.site-style-0c66156b2815 .benefit-badge.vpp{ color: var(--amber); }
  body.site-style-0c66156b2815 .benefit-badge.paid{ color: var(--green); }
  body.site-style-0c66156b2815 .leaving-link{ color: var(--amber); font-weight: 600; text-decoration: none; }
  body.site-style-0c66156b2815 .leaving-link:hover{ text-decoration: underline; }
  body.site-style-0c66156b2815 .estimate-tag{ color: var(--muted); font-weight: 400; font-size: 11px; }
  body.site-style-0c66156b2815 .consent-forecast{ font-size: 12px; color: var(--muted); margin-top: 3px; }
  body.site-style-0c66156b2815 .catalog-filters{
    background: #fff; border: 1px solid var(--border); border-radius: 10px;
    padding: 14px 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 12px;
  }
  body.site-style-0c66156b2815 .catalog-filter-group{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
  body.site-style-0c66156b2815 .catalog-filter-group .cf-title{ flex-basis: 100%; font-size: 12px; color: var(--muted); font-weight: 600; text-transform: uppercase; letter-spacing: .02em; }
  body.site-style-0c66156b2815 .catalog-filter-group .cf-chips{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-0c66156b2815 .catalog-filter-group .cf-level-groups{ flex-basis: 100%; display: flex; flex-direction: column; gap: 10px; }
  body.site-style-0c66156b2815 .cf-level-group-title{ color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; margin-bottom: 6px; }
  body.site-style-0c66156b2815 .catalog-chip{
    display: inline-flex; align-items: center; gap: 5px; padding: 5px 10px;
    border: 1px solid var(--border); border-radius: 999px; font-size: 13px; cursor: pointer; user-select: none; background: #fff;
  }
  body.site-style-0c66156b2815 .catalog-chip:has(input:checked){ background: var(--blue-bg); border-color: var(--blue); color: var(--blue); font-weight: 600; }
  body.site-style-0c66156b2815 .catalog-chip input{ margin: 0; }
  body.site-style-0c66156b2815 .cf-count{ color: var(--muted); font-size: 11px; }
  body.site-style-0c66156b2815 .catalog-chip:has(input:checked) .cf-count{ color: var(--blue); }
  body.site-style-0c66156b2815 .catalog-filter-cost{ padding-top: 2px; }
  body.site-style-0c66156b2815 .catalog-cost-lbl{ font-size: 13px; color: var(--muted); display: inline-flex; align-items: center; gap: 6px; }
  body.site-style-0c66156b2815 .catalog-cost-lbl input{ width: 120px; padding: 5px 8px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; }
  body.site-style-0c66156b2815 .catalog-filter-sort{ border-top: 1px solid var(--border); padding-top: 10px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .catalog-filter-sort select{ padding: 6px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; background: #fff; }
  body.site-style-0c66156b2815 .catalog-filter-section{ border-top: 1px solid var(--border); padding-top: 10px; }
  body.site-style-0c66156b2815 .catalog-filter-section:first-child{ border-top: none; padding-top: 0; }
  body.site-style-0c66156b2815 .catalog-filter-section summary{
    cursor: pointer; font-size: 14px; font-weight: 600; list-style: none; display: flex; align-items: center; gap: 8px;
  }
  body.site-style-0c66156b2815 .catalog-filter-section summary::-webkit-details-marker{ display: none; }
  body.site-style-0c66156b2815 .catalog-filter-section summary::before{ content: "▸"; color: var(--muted); font-size: 11px; transition: transform .15s; }
  body.site-style-0c66156b2815 .catalog-filter-section[open] summary::before{ transform: rotate(90deg); }
  body.site-style-0c66156b2815 .catalog-filter-section > *:not(summary){ margin-top: 10px; }
  body.site-style-0c66156b2815 .cfs-count{ color: var(--blue); font-size: 12px; font-weight: 600; }
  body.site-style-0c66156b2815 .catalog-direction-search{ display: flex; flex-direction: column; gap: 8px; }
  body.site-style-0c66156b2815 .direction-search-row{ display: flex; gap: 8px; }
  body.site-style-0c66156b2815 .direction-search-row .okso-search-wrap > input{
    width: 100%; box-sizing: border-box; padding: 6px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px;
  }
  body.site-style-0c66156b2815 .selected-chips{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-0c66156b2815 .selected-chip{
    display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px;
    background: var(--blue-bg); border: 1px solid var(--blue); border-radius: 999px; font-size: 12px; color: var(--blue); font-weight: 600;
  }
  body.site-style-0c66156b2815 .selected-chip .remove-x{ cursor: pointer; font-weight: 700; }
  /* Мульти-выбор направления с фильтром (2026-09-05) -- раньше был обычный
     native <input list="datalist">: клик по варианту сразу закрывал список
     и очищал поле, поэтому отметить несколько направлений подряд можно было
     только вводя название заново каждый раз. Теперь список -- свой div с
     чекбоксами, который не закрывается при клике -- можно отметить сколько
     угодно вариантов, не перепечатывая запрос. */
  body.site-style-0c66156b2815 .okso-search-wrap{ position: relative; flex: 1; }
  body.site-style-0c66156b2815 .okso-ms-dropdown{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.08); max-height: 280px; overflow-y: auto; z-index: 20; }
  body.site-style-0c66156b2815 .okso-ms-dropdown.open{ display: block; }
  body.site-style-0c66156b2815 .okso-ms-item{ display: flex; align-items: center; gap: 8px; padding: 8px 12px; cursor: pointer; font-size: 13px; }
  body.site-style-0c66156b2815 .okso-ms-item:hover{ background: var(--blue-bg); }
  body.site-style-0c66156b2815 .okso-ms-item input[type="checkbox"]{ flex: none; }
  body.site-style-0c66156b2815 .okso-ms-code{ color: var(--muted); font-size: 12px; }
  body.site-style-0c66156b2815 .okso-ms-empty,body.site-style-0c66156b2815 .okso-ms-more{ padding: 8px 12px; color: var(--muted); font-size: 12px; }
  body.site-style-0c66156b2815 .cf-note{ font-size: 12px; color: var(--muted); }
  body.site-style-0c66156b2815 .score-intro{ font-size: 13px; color: var(--muted); margin-bottom: 14px; line-height: 1.5; max-width: 720px; }
  body.site-style-0c66156b2815 .score-form{ display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-bottom: 14px; }
  body.site-style-0c66156b2815 .score-field{ display: flex; flex-direction: column; gap: 4px; }
  body.site-style-0c66156b2815 .score-field label{ font-size: 13px; color: var(--muted); }
  body.site-style-0c66156b2815 .score-field input{
    padding: 7px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 14px;
  }
  body.site-style-0c66156b2815 .score-actions{ display: flex; gap: 10px; margin-bottom: 16px; }
  body.site-style-0c66156b2815 .score-result-uni{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; }
  body.site-style-0c66156b2815 .score-result-uni .sru-name{ font-weight: 700; font-size: 15px; margin-bottom: 8px; }
  body.site-style-0c66156b2815 .score-result-row{
    display: flex; justify-content: space-between; align-items: center; gap: 10px;
    font-size: 13px; padding: 7px 8px; border-radius: 6px; cursor: pointer; border: 1px solid var(--border); margin-top: 6px; background: var(--bg);
  }
  body.site-style-0c66156b2815 .score-result-row:hover{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-0c66156b2815 .score-result-row .srr-info{ color: #1b1b1b; }
  body.site-style-0c66156b2815 .score-result-row .srr-nums{ color: var(--muted); white-space: nowrap; }
  body.site-style-0c66156b2815 .catalog-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 18px; margin-bottom: 20px; }
  body.site-style-0c66156b2815 .program-card{
    background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 20px;
    display: flex; flex-direction: column; gap: 12px; transition: box-shadow .15s, border-color .15s;
  }
  body.site-style-0c66156b2815 .program-card:hover{ border-color: var(--blue); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
  /* Вся карточка вуза кликабельна -- ведёт на список направлений этого вуза
     (кнопка "Показать направления" убрана как избыточная). */
  body.site-style-0c66156b2815 .program-card-link{ cursor: pointer; }
  body.site-style-0c66156b2815 .program-card-link:hover .pc-name{ color: var(--blue); }
  body.site-style-0c66156b2815 .pc-top{ display: flex; gap: 10px; align-items: flex-start; }
  body.site-style-0c66156b2815 .pc-icon{
    flex: 0 0 auto; width: 38px; height: 38px; border-radius: 10px; color: #fff;
    display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px; letter-spacing: .01em;
  }
  body.site-style-0c66156b2815 .pc-titlewrap{ flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
  body.site-style-0c66156b2815 .pc-name{ font-size: 15px; font-weight: 700; line-height: 1.3; }
  body.site-style-0c66156b2815 .pc-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-0c66156b2815 .pc-badge{ font-size: 11px; padding: 3px 8px; background: var(--bg); border: 1px solid var(--border); border-radius: 999px; color: var(--muted); font-weight: 600; }
  body.site-style-0c66156b2815 .pc-stats-line{ font-size: 12px; color: var(--muted); }
  body.site-style-0c66156b2815 .card-accent{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-0c66156b2815 .accent-chip{ font-size: 12px; font-weight: 700; padding: 6px 10px; border-radius: 8px; }
  body.site-style-0c66156b2815 .accent-budget{ background: var(--green-bg); color: var(--green); }
  body.site-style-0c66156b2815 .accent-cost{ background: var(--blue-bg); color: var(--blue); }
  /* ---- Подбор ВУза: группировка по шансам ---- */
  body.site-style-0c66156b2815 .cf-checkbox-group{ display: flex; gap: 14px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .pick-tier-section{ margin: 22px 0 10px; }
  body.site-style-0c66156b2815 .pick-tier-title{ font-size: 15px; font-weight: 700; display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
  body.site-style-0c66156b2815 .pick-tier-dot{ width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
  body.site-style-0c66156b2815 .pick-tier-high .pick-tier-dot{ background: var(--green); }
  body.site-style-0c66156b2815 .pick-tier-medium .pick-tier-dot{ background: var(--amber); }
  body.site-style-0c66156b2815 .pick-tier-low .pick-tier-dot{ background: var(--red); }
  body.site-style-0c66156b2815 span.pick-tier-high{ color: var(--green); font-weight: 600; }
  body.site-style-0c66156b2815 span.pick-tier-medium{ color: var(--amber); font-weight: 600; }
  body.site-style-0c66156b2815 span.pick-tier-low{ color: var(--red); font-weight: 600; }
  body.site-style-0c66156b2815 .pick-tier-count{ color: var(--muted); font-weight: 500; font-size: 13px; }
  body.site-style-0c66156b2815 .pick-uni-card{ border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; background: #fff; }
  body.site-style-0c66156b2815 .pick-uni-head{ display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
  body.site-style-0c66156b2815 .pick-uni-name{ font-weight: 700; font-size: 15px; }
  body.site-style-0c66156b2815 .pick-uni-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-0c66156b2815 .pick-match-row{ display: flex; flex-direction: column; align-items: stretch; gap: 4px; padding: 10px 0; border-top: 1px solid var(--border); cursor: pointer; }
  body.site-style-0c66156b2815 .pick-match-row:hover{ background: var(--blue-bg); }
  body.site-style-0c66156b2815 .pick-match-row:first-of-type{ border-top: none; }
  body.site-style-0c66156b2815 .pick-match-direction{ font-weight: 700; font-size: 14px; }
  body.site-style-0c66156b2815 .pick-match-program{ font-size: 13px; color: #444; margin-top: 1px; }
  body.site-style-0c66156b2815 .pick-match-level-row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 3px; }
  body.site-style-0c66156b2815 .pick-match-exams{ color: var(--muted); font-size: 12px; }
  body.site-style-0c66156b2815 .pick-avg-score-row{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .pick-avg-score-row input{ width: 100px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; }
  body.site-style-0c66156b2815 .pick-match-tier-badge{ font-size: 11px; font-weight: 700; padding: 3px 9px; border-radius: 999px; white-space: nowrap; }
  body.site-style-0c66156b2815 .pick-match-tier-high{ background: var(--green-bg); color: var(--green); }
  body.site-style-0c66156b2815 .pick-match-tier-medium{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-0c66156b2815 .pick-match-tier-low{ background: #fbe9e7; color: var(--red); }
  body.site-style-0c66156b2815 .pick-match-level{ color: var(--muted); font-size: 13px; }
  body.site-style-0c66156b2815 .pick-match-nums{ color: var(--muted); font-size: 12px; white-space: nowrap; }
  body.site-style-0c66156b2815 .pick-heuristic-note{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }
  /* Богаче карточка -- перенос части элементов дизайна карточки конкурента
     (Поступашкин), обсуждение 2026-09-05: профиль отдельной строкой, разбор
     экзаменов с минимумами по группам, числовой отступ ("не хватает N" /
     "запас +N") рядом с текстовым тиром, БВИ-предупреждение, три среза
     проходного (по заявлениям / по согласиям / по конкурсам) и процент
     шансов как отдельный бейдж. "мин. 2025" сознательно не добавлен --
     исторические данные за прошлый цикл приёма в проекте не собирались
     (см. коммент в начале api/pick.php). */
  body.site-style-0c66156b2815 .pick-match-top{ display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
  body.site-style-0c66156b2815 .pick-match-content{ flex: 1; min-width: 0; }
  body.site-style-0c66156b2815 .pick-match-profile{ color: var(--blue); font-size: 13px; margin-top: 2px; }
  body.site-style-0c66156b2815 .pick-match-exams-detailed{ color: var(--muted); font-size: 12px; margin-top: 5px; }
  body.site-style-0c66156b2815 .pick-exam-row{ display: flex; gap: 6px; flex-wrap: wrap; line-height: 1.45; }
  body.site-style-0c66156b2815 .pick-exam-row + .pick-exam-row{ margin-top: 2px; }
  body.site-style-0c66156b2815 .pick-exam-label{ color: var(--text); font-weight: 700; }
  body.site-style-0c66156b2815 .entrance-tests-list:has(.entrance-test-line){ display: block; }
  body.site-style-0c66156b2815 .entrance-test-line{ padding: 3px 0; line-height: 1.45; }
  body.site-style-0c66156b2815 .entrance-test-line-choice{ color: var(--muted); }
  body.site-style-0c66156b2815 .pick-match-bvi-warning{ color: var(--red); font-size: 12px; margin-top: 5px; font-weight: 600; }
  body.site-style-0c66156b2815 .pick-match-score-line{ font-size: 13px; margin-top: 7px; }
  body.site-style-0c66156b2815 .pick-match-score-ok{ color: var(--green); font-weight: 700; }
  body.site-style-0c66156b2815 .pick-match-score-bad{ color: var(--red); font-weight: 700; }
  body.site-style-0c66156b2815 .pick-match-score-neutral{ color: var(--muted); font-weight: 700; }
  body.site-style-0c66156b2815 .pick-match-cutoffs-row{ display: flex; flex-wrap: wrap; gap: 6px; margin-top: 7px; }
  body.site-style-0c66156b2815 .pick-match-cutoff-chip{ font-size: 11px; color: var(--muted); background: var(--blue-bg); border: 1px solid var(--border); border-radius: 6px; padding: 3px 8px; white-space: nowrap; }
  body.site-style-0c66156b2815 .pick-match-cutoff-chip b{ color: #222; font-weight: 700; }
  body.site-style-0c66156b2815 .pick-match-percent{ flex: none; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px 12px; border-radius: 10px; min-width: 56px; }
  body.site-style-0c66156b2815 .pick-match-percent-value{ font-size: 19px; font-weight: 700; line-height: 1.1; }
  body.site-style-0c66156b2815 .pick-match-percent-label{ font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; margin-top: 2px; white-space: nowrap; }
  body.site-style-0c66156b2815 .pick-match-percent-high{ background: var(--green-bg); color: var(--green); }
  body.site-style-0c66156b2815 .pick-match-percent-medium{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-0c66156b2815 .pick-match-percent-low{ background: #fbe9e7; color: var(--red); }
  body.site-style-0c66156b2815 .pick-match-bottom-row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 7px; }
  body.site-style-0c66156b2815 .pick-paywall{
    background: #fff; border: 1px solid var(--blue); border-radius: 10px; padding: 14px 16px;
    margin: 0 0 14px; display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap;
  }
  body.site-style-0c66156b2815 .pick-paywall-title{ font-weight: 800; font-size: 15px; margin-bottom: 2px; }
  body.site-style-0c66156b2815 .pick-paywall-text{ color: var(--muted); font-size: 13px; }
  body.site-style-0c66156b2815 .pick-paywall-actions{ display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .pick-payment-note{ color: var(--green); font-size: 13px; font-weight: 700; margin-bottom: 12px; }
  body.site-style-0c66156b2815 .directions-stat-intro{ font-size: 13px; color: var(--muted); margin: 0 0 14px; max-width: 860px; }
  body.site-style-0c66156b2815 .directions-filter-card{
    background: #fff; border: 1px solid var(--border); border-radius: 12px;
    padding: 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 12px;
  }
  body.site-style-0c66156b2815 .directions-filter-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  body.site-style-0c66156b2815 .directions-filter-field{ display: flex; flex-direction: column; gap: 6px; min-width: 0; }
  body.site-style-0c66156b2815 .directions-filter-field label,body.site-style-0c66156b2815 .directions-filter-title{
    font-size: 12px; color: var(--muted); font-weight: 700; text-transform: uppercase; letter-spacing: .02em;
  }
  body.site-style-0c66156b2815 .directions-filter-field > input,body.site-style-0c66156b2815 .directions-filter-field .okso-search-wrap > input,body.site-style-0c66156b2815 .directions-filter-field .competition-city-wrap > input{
    width: 100%; min-width: 0; padding: 9px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px;
  }
  body.site-style-0c66156b2815 #panel-directions .okso-search-wrap{ display: flex; flex: none; flex-direction: column; gap: 6px; }
  body.site-style-0c66156b2815 #panel-directions .directions-filter-field input[type="text"],body.site-style-0c66156b2815 #panel-directions .directions-filter-field input[type="number"]{
    flex: none; height: 42px; line-height: 1.2;
  }
  body.site-style-0c66156b2815 #panel-directions .competition-city-wrap{
    flex: none; height: 42px; min-height: 42px; align-self: stretch;
  }
  body.site-style-0c66156b2815 #panel-directions .competition-city-suggest{
    top: calc(100% + 6px);
  }
  body.site-style-0c66156b2815 #panel-directions .okso-ms-dropdown{
    position: static; left: auto; right: auto; top: auto; width: 100%;
    box-shadow: none; max-height: 260px; margin-top: 0; z-index: 5;
  }
  body.site-style-0c66156b2815 #panel-directions .okso-ms-item{
    color: #1b1b1b; background: #fff; line-height: 1.35; min-height: 38px;
    justify-content: flex-start; white-space: normal;
  }
  body.site-style-0c66156b2815 #panel-directions .okso-ms-item input[type="checkbox"]{
    width: auto; min-width: 0; padding: 0; flex: 0 0 auto;
  }
  body.site-style-0c66156b2815 #panel-directions .okso-ms-item span:first-of-type{ flex: 1; min-width: 0; }
  body.site-style-0c66156b2815 #panel-directions .okso-ms-code{ flex: none; }
  body.site-style-0c66156b2815 .directions-filter-row{ display: flex; flex-wrap: wrap; align-items: flex-start; gap: 10px; }
  body.site-style-0c66156b2815 .directions-filter-row .catalog-filter-group{ flex: 1 1 240px; }
  body.site-style-0c66156b2815 #panel-directions .directions-filter-row .catalog-filter-group{ align-self: flex-start; }
  body.site-style-0c66156b2815 .directions-filter-actions{ display: flex; gap: 10px; flex-wrap: wrap; align-items: center; border-top: 1px solid var(--border); padding-top: 12px; }
  body.site-style-0c66156b2815 .directions-summary{ display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
  body.site-style-0c66156b2815 .directions-summary-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 12px; }
  body.site-style-0c66156b2815 .directions-summary-card .val{ font-size: 20px; font-weight: 800; color: var(--blue); line-height: 1.1; }
  body.site-style-0c66156b2815 .directions-summary-card .lbl{ font-size: 11px; color: var(--muted); margin-top: 4px; }
  body.site-style-0c66156b2815 .directions-view-controls{
    display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
    background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 10px 12px; margin-bottom: 12px;
  }
  body.site-style-0c66156b2815 .directions-control-group{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .directions-control-label{ color: var(--muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; }
  body.site-style-0c66156b2815 .directions-toggle-btn{
    border: 1px solid var(--border); background: #fff; color: #1b1b1b; border-radius: 8px;
    padding: 7px 10px; font-size: 13px; font-weight: 600; cursor: pointer;
  }
  body.site-style-0c66156b2815 .directions-toggle-btn.active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-0c66156b2815 .directions-sort-select{ padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; background: #fff; font-size: 13px; }
  body.site-style-0c66156b2815 .directions-stat-table td{ white-space: normal; vertical-align: top; }
  body.site-style-0c66156b2815 .directions-stat-table tbody tr{ cursor: pointer; }
  body.site-style-0c66156b2815 .directions-group-row td{
    background: var(--blue-bg); color: var(--blue); font-weight: 800; font-size: 13px;
    cursor: default; border-top: 1px solid var(--border);
  }
  body.site-style-0c66156b2815 .directions-row-title{ font-weight: 700; }
  body.site-style-0c66156b2815 .directions-row-code{ color: var(--blue); font-size: 12px; font-weight: 700; }
  body.site-style-0c66156b2815 .directions-row-sub{ color: var(--muted); font-size: 12px; margin-top: 2px; }
  body.site-style-0c66156b2815 .directions-row-exams{ color: var(--muted); font-size: 12px; max-width: 260px; }
  body.site-style-0c66156b2815 .directions-competition-strong{ color: var(--red); font-weight: 800; }
  body.site-style-0c66156b2815 .directions-competition-mid{ color: var(--amber); font-weight: 800; }
  body.site-style-0c66156b2815 .directions-competition-ok{ color: var(--green); font-weight: 800; }
  body.site-style-0c66156b2815 .directions-result-note{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }
  @media (max-width: 900px){body.site-style-0c66156b2815 .directions-filter-grid{ grid-template-columns: 1fr; }
    body.site-style-0c66156b2815 .directions-summary{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
  body.site-style-0c66156b2815 .direction-card{ background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 20px; display: flex; flex-direction: column; gap: 10px; transition: box-shadow .15s, border-color .15s; }
  body.site-style-0c66156b2815 .direction-card:hover{ border-color: var(--blue); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
  body.site-style-0c66156b2815 .dc-code{ font-size: 12px; color: var(--muted); }
  body.site-style-0c66156b2815 .dc-name{ font-size: 15px; font-weight: 700; line-height: 1.3; }
  /* Вся карточка направления в общей сетке кликабельна -- ведёт на отдельную
     страницу направления (showDirectionDetail), а не сразу в список. */
  body.site-style-0c66156b2815 .direction-card-link{ cursor: pointer; }
  body.site-style-0c66156b2815 .direction-card-link:hover .dc-name{ color: var(--blue); }
  /* Заголовок отдельной страницы направления (showDirectionDetail) -- по
     образцу карточки "Специальность в вузе" на Госуслугах: крупный белый
     блок, код мелко сверху, название крупным заголовком, бейджи и сводка
     ниже. */
  body.site-style-0c66156b2815 .direction-detail-head{ background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin-bottom: 32px; }
  body.site-style-0c66156b2815 .direction-detail-head .dc-code{ font-size: 13px; }
  body.site-style-0c66156b2815 .direction-detail-head h2{ margin: 6px 0 18px; font-size: 26px; font-weight: 800; line-height: 1.3; }
  body.site-style-0c66156b2815 .direction-detail-head .dc-badges{ margin-bottom: 14px; gap: 8px; }
  body.site-style-0c66156b2815 .direction-detail-head .dc-stats{ font-size: 14px; line-height: 1.6; }
  body.site-style-0c66156b2815 #direction-detail h3{ font-size: 22px; font-weight: 800; margin: 4px 0 20px; }
  body.site-style-0c66156b2815 .dc-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-0c66156b2815 .dc-stats{ font-size: 12px; color: var(--muted); }
  /* Средний уровень: программы внутри направления (по полю program_names) --
     аккордеон по образцу Госуслуг (карточка "Специальность в вузе" ->
     "Образовательные программы" -> раскрывающийся список). Раньше все
     group_id направления шли плоским списком без этого уровня. Отступы
     увеличены (было 14/16/10px) -- по фидбеку "ощущение слипленности". */
  body.site-style-0c66156b2815 .dc-programs{ display: flex; flex-direction: column; gap: 20px; margin-top: 4px; }
  body.site-style-0c66156b2815 .dc-program{ border: 1px solid var(--border); border-radius: 16px; overflow: hidden; background: #fff; }
  body.site-style-0c66156b2815 .dc-program-header{
    display: flex; justify-content: space-between; align-items: center; gap: 12px;
    padding: 20px 24px; cursor: pointer; font-size: 15px;
  }
  body.site-style-0c66156b2815 .dc-program-header:hover{ background: var(--blue-bg); }
  body.site-style-0c66156b2815 .dc-program-title{ font-weight: 700; color: #1b1b1b; font-size: 16px; }
  body.site-style-0c66156b2815 .dc-program-nums{ color: var(--muted); white-space: nowrap; font-size: 13px; }
  /* Круглая кнопка-шеврон, как раскрывающиеся стрелки на карточках программ
     у Госуслуг. */
  body.site-style-0c66156b2815 .dc-program-chevron{
    display: flex; align-items: center; justify-content: center; flex: none;
    width: 30px; height: 30px; border-radius: 50%; background: var(--blue-bg);
    color: var(--blue); font-size: 13px; transition: transform .15s;
  }
  body.site-style-0c66156b2815 .dc-program.expanded .dc-program-chevron{ transform: rotate(180deg); }
  body.site-style-0c66156b2815 .dc-program-body{ display: none; padding: 4px 24px 24px; border-top: 1px solid var(--border); }
  body.site-style-0c66156b2815 .dc-program.expanded .dc-program-body{ display: block; padding-top: 22px; }
body.site-style-0c66156b2815 .dc-program-badges{ margin-bottom: 20px; }

/* Static direction pages: the document contains the initial dataset so the
   first view is indexable and fast; these controls only filter that snapshot. */
body.static-direction-page{ background:var(--page-bg,#f7f9fc); color:var(--ink,#172238); }
body.static-direction-page .static-direction-shell{ max-width:1180px; margin:0 auto; padding:34px 22px 70px; }
body.static-direction-page .static-direction-breadcrumb{ display:flex; gap:10px; color:var(--muted); font-size:14px; margin-bottom:18px; }
body.static-direction-page .static-direction-breadcrumb a{ color:var(--blue); text-decoration:none; }
body.static-direction-page .static-direction-hero{ background:#eef5ff; border:1px solid #cfe0ff; border-radius:16px; padding:32px; }
body.static-direction-page .static-direction-code{ display:inline-flex; background:#dceaff; color:var(--blue); border-radius:999px; padding:8px 13px; font-weight:700; font-size:14px; }
body.static-direction-page .static-direction-hero h1{ margin:16px 0 12px; font-size:clamp(28px,4vw,44px); line-height:1.1; }
body.static-direction-page .static-direction-hero p{ max-width:850px; color:var(--muted); font-size:17px; line-height:1.55; margin:0; }
body.static-direction-page .static-direction-stats{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:24px; }
body.static-direction-page .static-direction-stats div{ background:#fff; border:1px solid var(--border); border-radius:10px; padding:15px; }
body.static-direction-page .static-direction-stats b{ display:block; font-size:24px; }
body.static-direction-page .static-direction-stats span{ color:var(--muted); font-size:13px; }
body.static-direction-page .static-direction-exams{ background:#fff; border:1px solid var(--border); border-radius:12px; padding:22px 26px; margin:18px 0; }
body.static-direction-page .static-direction-exams h2{ margin:0 0 8px; font-size:19px; }
body.static-direction-page .static-direction-exams div{ color:var(--muted); line-height:1.6; }
body.static-direction-page .static-direction-exams p{ color:var(--muted); font-size:12px; margin:12px 0 0; }
body.static-direction-page .static-direction-exam-line{ display:flex; gap:8px; margin:5px 0; }
body.static-direction-page .static-direction-exam-line b{ color:var(--ink); min-width:112px; }
body.static-direction-page .static-direction-filter{ display:grid; grid-template-columns:minmax(190px,1.15fr) minmax(220px,1.25fr) minmax(180px,1fr) minmax(180px,1fr) auto; align-items:start; gap:14px; background:#fff; border:1px solid var(--border); border-radius:12px; padding:18px; margin:18px 0 28px; }
body.static-direction-page .static-direction-filter>#direction-clear{ align-self:end; }
body.static-direction-page .static-direction-filter-field{ flex:1; min-width:0; }
body.static-direction-page .static-direction-filter-field label{ display:block; color:var(--muted); font-size:13px; font-weight:700; margin-bottom:6px; }
body.static-direction-page .static-direction-filter-field input{ width:100%; box-sizing:border-box; border:1px solid #cdd6e4; border-radius:8px; padding:12px 13px; font:inherit; }
body.static-direction-page .static-direction-filter-field select{ width:100%; box-sizing:border-box; border:1px solid #cdd6e4; border-radius:8px; padding:12px 13px; font:inherit; background:#fff; }
body.static-direction-page .static-direction-input-wrap{ position:relative; }
body.static-direction-page .static-direction-suggest{ display:none; position:absolute; z-index:5; top:calc(100% + 4px); left:0; right:0; background:#fff; border:1px solid var(--border); border-radius:8px; box-shadow:0 8px 24px rgba(23,34,56,.12); padding:4px; }
body.static-direction-page .static-direction-suggest.is-open{ display:block; }
body.static-direction-page .static-direction-suggest button{ display:block; width:100%; border:0; background:#fff; text-align:left; padding:9px 10px; border-radius:6px; cursor:pointer; font:inherit; }
body.static-direction-page .static-direction-suggest button:hover{ background:#eef5ff; color:var(--blue); }
body.static-direction-page .static-direction-university-field{ position:relative; }
body.static-direction-page .static-direction-selected{ display:flex; flex-wrap:wrap; gap:6px; margin-top:7px; }
body.static-direction-page .static-direction-selected-chip{ background:#e7f0ff; color:var(--blue); border-radius:999px; padding:5px 8px 5px 10px; font-size:12px; }
body.static-direction-page .static-direction-selected-chip button{ border:0; background:transparent; color:var(--blue); cursor:pointer; padding:0 0 0 5px; font-size:15px; line-height:1; }
body.static-direction-page .static-direction-checks{ display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; background:#fff; border:1px solid var(--border); border-radius:12px; padding:16px 18px; margin:-16px 0 28px; }
body.static-direction-page .static-direction-checks label{ display:inline-flex; align-items:center; gap:7px; color:var(--ink); font-size:13px; font-weight:600; }
body.static-direction-page .static-direction-checks input{ width:17px; height:17px; accent-color:var(--blue); }
body.static-direction-page .static-direction-checks label.is-disabled{ color:var(--muted); opacity:.75; }
body.static-direction-page .static-direction-checks small{ color:var(--muted); font-weight:400; }
body.static-direction-page .static-direction-results-head{ display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin-bottom:12px; }
body.static-direction-page .static-direction-results-head h2{ margin:0; font-size:24px; }
body.static-direction-page #direction-result-count{ color:var(--muted); font-size:13px; }
body.static-direction-page .static-direction-university{ background:#fff; border:1px solid var(--border); border-radius:12px; margin:12px 0; overflow:hidden; }
body.static-direction-page .static-direction-university-head{ width:100%; border:0; background:#fff; color:inherit; text-align:left; display:flex; justify-content:space-between; align-items:center; gap:18px; padding:18px 20px; cursor:pointer; font:inherit; }
body.static-direction-page .static-direction-university-head:hover{ background:#f3f7ff; }
body.static-direction-page .static-direction-university-head strong{ display:block; font-size:17px; }
body.static-direction-page .static-direction-university-head small{ display:block; color:var(--muted); margin-top:5px; }
body.static-direction-page .static-direction-chevron{ color:var(--blue); font-size:22px; transition:transform .15s; }
body.static-direction-page .static-direction-university.is-open .static-direction-chevron{ transform:rotate(180deg); }
body.static-direction-page .static-direction-university-body{ display:none; border-top:1px solid var(--border); padding:16px 20px 20px; }
body.static-direction-page .static-direction-university.is-open .static-direction-university-body{ display:block; }
body.static-direction-page .static-direction-place-summary{ background:#f6f9ff; border-radius:8px; padding:12px 14px; margin-bottom:16px; }
body.static-direction-page .static-direction-place-summary>b{ display:block; margin-bottom:8px; }
body.static-direction-page .static-direction-place-summary>div{ display:flex; flex-wrap:wrap; gap:7px; }
body.static-direction-page .static-direction-place-chip{ background:#e7f0ff; border-radius:999px; color:var(--muted); padding:6px 10px; font-size:12px; }
body.static-direction-page .static-direction-place-chip b{ color:var(--ink); }
body.static-direction-page .static-direction-column-labels{ display:grid; grid-template-columns:24% 20% 19% 16% 8% 13%; column-gap:0; color:var(--muted); font-size:12px; font-weight:700; padding:0 0 7px; }
body.static-direction-page .static-direction-column-labels>*{ padding-right:16px; box-sizing:border-box; }
body.static-direction-page .static-direction-score-heading{ display:block; }
body.static-direction-page .static-direction-score-heading>b{ display:block; font-weight:700; }
body.static-direction-page .static-direction-score-heading>span{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:7px; }
body.static-direction-page .static-direction-score-heading i{ font-style:normal; text-align:center; }
body.static-direction-page .static-direction-program{ border-top:1px solid #e8edf5; padding:14px 0; }
body.static-direction-page .static-direction-program-main{ display:grid; grid-template-columns:24% 20% 19% 16% 8% 13%; column-gap:0; align-items:start; }
body.static-direction-page .static-direction-program-main>*{ padding-right:16px; box-sizing:border-box; }
body.static-direction-page .static-direction-muted{ color:var(--muted); font-size:13px; margin-top:5px; line-height:1.45; }
body.static-direction-page .static-direction-meta-lines{ display:flex; flex-direction:column; gap:2px; }
body.static-direction-page .static-direction-exams-cell{ color:var(--muted); font-size:12px; line-height:1.45; }
body.static-direction-page .static-direction-exams-cell b{ display:block; color:var(--ink); font-size:11px; margin-bottom:4px; }
body.static-direction-page .static-direction-exams-cell span{ display:block; }
body.static-direction-page .static-direction-exams-cell span+span{ margin-top:6px; }
body.static-direction-page .static-direction-exams-cell span strong{ color:var(--ink); white-space:nowrap; }
body.static-direction-page .static-direction-score{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
body.static-direction-page .static-direction-score span{ min-width:0; background:#edf4ff; border-radius:7px; padding:7px 8px; }
body.static-direction-page .static-direction-score b{ display:block; font-size:16px; }
body.static-direction-page .static-direction-score small{ color:var(--muted); font-size:11px; }
body.static-direction-page .static-direction-places b{ display:block; font-size:16px; }
body.static-direction-page .static-direction-places small{ color:var(--muted); font-size:12px; }
body.static-direction-page .static-direction-live-lists{ display:flex; flex-direction:column; gap:5px; font-size:13px; }
body.static-direction-page .static-direction-live-lists a{ color:var(--blue); text-decoration:none; }
body.static-direction-page .static-direction-cost b{ display:block; font-size:16px; }
body.static-direction-page .static-direction-cost small{ color:var(--muted); font-size:12px; }
body.static-direction-page .static-direction-program-link{ color:inherit; text-decoration:none; }
body.static-direction-page .static-direction-program-link:hover{ color:var(--blue); text-decoration:underline; }
body.static-university-page .static-university-program-link{ color:inherit; text-decoration:none; }
body.static-university-page .static-university-program-link:hover{ color:var(--blue); text-decoration:underline; }
body.static-program-page .static-program-focus{ margin:0 0 12px; padding:10px 14px; border-left:3px solid var(--blue); background:var(--blue-bg); color:var(--text); border-radius:6px; }
body.static-program-page .static-program-selected-university{ border-color:var(--blue); box-shadow:0 0 0 1px var(--blue); }
body.static-direction-page .static-map-add, body.static-university-page .static-map-add{ margin-top:6px; border:1px solid var(--blue); border-radius:7px; padding:5px 9px; background:#fff; color:var(--blue); font-size:12px; cursor:pointer; }
body.static-direction-page .static-map-add:hover, body.static-university-page .static-map-add:hover{ background:var(--blue-bg); }
body.static-direction-page .static-map-add:disabled, body.static-university-page .static-map-add:disabled{ opacity:.7; cursor:default; background:var(--blue-bg); }
.static-map-message{ position:fixed; right:18px; bottom:18px; z-index:100; max-width:340px; padding:13px 16px; border:1px solid var(--blue); border-radius:10px; background:#fff; box-shadow:0 8px 28px rgba(24,55,100,.18); color:var(--text); font-size:13px; line-height:1.45; opacity:0; transform:translateY(10px); pointer-events:none; transition:opacity .18s, transform .18s; }
.static-map-message.is-open{ opacity:1; transform:translateY(0); }
.route27-plan-move{ min-width:24px; margin-right:3px; border:0; background:transparent; color:var(--blue); font-size:16px; line-height:1.2; cursor:pointer; }
.route27-plan-move:disabled{ opacity:.25; cursor:default; }
body.static-direction-page .static-direction-empty{ background:#fff; border:1px solid var(--border); border-radius:12px; padding:30px; text-align:center; color:var(--muted); }
@media (max-width:760px){
  body.static-direction-page .static-direction-shell{ padding:22px 14px 50px; }
  body.static-direction-page .static-direction-hero{ padding:22px; }
  body.static-direction-page .static-direction-stats{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.static-direction-page .static-direction-filter{ align-items:stretch; flex-direction:column; }
  body.static-direction-page .static-direction-checks{ margin:-14px 0 22px; align-items:flex-start; flex-direction:column; }
  body.static-direction-page .static-direction-results-head{ display:block; }
  body.static-direction-page #direction-result-count{ display:block; margin-top:6px; }
  body.static-direction-page .static-direction-column-labels{ display:none; }
  body.static-direction-page .static-direction-program-main{ grid-template-columns:minmax(0,1fr) auto; }
  body.static-direction-page .static-direction-exams-cell{ grid-column:1 / -1; grid-row:2; }
  body.static-direction-page .static-direction-live-lists{ grid-column:1 / -1; grid-row:3; }
  body.static-direction-page .static-direction-places{ grid-column:2; grid-row:1; text-align:right; }
  body.static-direction-page .static-direction-cost{ grid-column:1 / -1; grid-row:4; }
  body.static-direction-page .static-direction-score{ grid-column:1 / -1; grid-row:5; }
}
body.static-direction-page .program-catalog-filter{ grid-template-columns:minmax(0,1fr); }
body.static-direction-page .program-catalog-list{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
body.static-direction-page .program-catalog-item{ display:block; background:#fff; border:1px solid var(--border); border-radius:10px; padding:14px 16px; color:var(--ink); text-decoration:none; line-height:1.35; }
body.static-direction-page .program-catalog-item:hover{ border-color:var(--blue); background:#f3f7ff; }
body.static-direction-page .program-catalog-item small{ display:block; color:var(--muted); margin-top:5px; font-size:12px; }
@media (max-width:760px){ body.static-direction-page .program-catalog-list{ grid-template-columns:1fr; } }
  /* Переключатель "Бюджетные/Платные" внутри раскрытой программы -- по
     образцу сегмент-контрола на Госуслугах (светло-синяя капсула, активная
     вкладка белая). Показывается только если у программы есть оба варианта
     финансирования. */
  body.site-style-0c66156b2815 .dc-cost-tabs{ display: inline-flex; background: var(--blue-bg); border-radius: 10px; padding: 3px; margin-bottom: 16px; gap: 2px; }
  body.site-style-0c66156b2815 .dc-cost-tab{
    border: none; background: none; padding: 8px 18px; border-radius: 8px; font-size: 13px; font-weight: 600;
    color: var(--blue); cursor: pointer;
  }
  body.site-style-0c66156b2815 .dc-cost-tab.active{ background: #fff; color: #1b1b1b; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
  body.site-style-0c66156b2815 .dc-cost-panel + .dc-cost-panel{ margin-top: 0; }
  body.site-style-0c66156b2815 .dc-variants{ display: flex; flex-direction: column; gap: 16px; margin-top: 4px; }
  body.site-style-0c66156b2815 .dc-variants.nested{ margin-top: 0; }
  /* Карточки категорий мест (Основные/Отдельная квота/Особая квота/...) --
     по образцу карточек "Конкурсные места" на Госуслугах: заголовок жирным
     слева, справа -- ДВЕ отдельные ссылки на списки (Конкурсные / Подавших
     документы), а не единый клик по всей карточке с списком по умолчанию. */
  body.site-style-0c66156b2815 .dc-variant{
    display: flex; justify-content: space-between; align-items: center; gap: 20px;
    font-size: 13px; padding: 18px 22px; border: 1px solid var(--border); border-radius: 12px;
    background: #fff;
  }
  body.site-style-0c66156b2815 .dc-variant:hover{ border-color: var(--border); }
  body.site-style-0c66156b2815 .dv-title{ color: #1b1b1b; font-weight: 700; font-size: 15px; }
  body.site-style-0c66156b2815 .dv-sub{ color: var(--muted); font-size: 12px; margin-top: 5px; line-height: 1.5; }
  body.site-style-0c66156b2815 .dv-links{ display: flex; flex-direction: column; gap: 9px; align-items: flex-end; white-space: nowrap; flex: none; }
  body.site-style-0c66156b2815 .dv-cutoffs{ display: flex; gap: 10px; align-items: stretch; flex: none; }
  body.site-style-0c66156b2815 .dv-cutoffs > div{ min-width: 62px; padding: 7px 9px; border: 1px solid var(--border); border-radius: 8px; background: var(--blue-bg); text-align: center; }
  body.site-style-0c66156b2815 .dv-cutoffs span{ display: block; color: var(--muted); font-size: 10px; font-weight: 800; }
  body.site-style-0c66156b2815 .dv-cutoffs b{ display: block; margin-top: 3px; color: var(--ink); font-size: 13px; white-space: nowrap; }
  body.site-style-0c66156b2815 .dv-link{ color: var(--blue); font-size: 13px; font-weight: 600; text-decoration: none; }
  body.site-style-0c66156b2815 .dv-link:hover{ text-decoration: underline; }
  body.site-style-0c66156b2815 tr.boundary-row td{ text-align: center; font-size: 12px; font-weight: 700; padding: 6px 10px; white-space: normal; }
  body.site-style-0c66156b2815 tr.boundary-ovp td{ background: var(--blue-bg); color: var(--blue); border-top: 2px solid var(--blue); border-bottom: 2px solid var(--blue); }
  body.site-style-0c66156b2815 tr.boundary-vpp td{ background: var(--amber-bg); color: var(--amber); border-top: 2px dashed var(--amber); border-bottom: 2px dashed var(--amber); }
  body.site-style-0c66156b2815 .university-cell-link{ color: var(--blue); text-decoration: none; }
  body.site-style-0c66156b2815 .university-cell-link:hover{ text-decoration: underline; }
  body.site-style-0c66156b2815 .share-link-box{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; background: var(--blue-bg); border: 1px solid var(--border); border-radius: 8px; padding: 10px 14px; margin: 12px 0; font-size: 13px; }
  body.site-style-0c66156b2815 .share-link-box .lbl{ color: var(--muted); white-space: nowrap; }
  body.site-style-0c66156b2815 .share-link-box input{ flex: 1; min-width: 180px; border: 1px solid var(--border); border-radius: 6px; background: #fff; font-size: 13px; padding: 4px 8px; color: #1b1b1b; }
  body.site-style-0c66156b2815 .share-link-box .copied-note{ color: var(--blue); font-weight: 600; white-space: nowrap; }
  body.site-style-0c66156b2815 .recent-ids-lbl{ font-size: 13px; color: var(--muted); margin: 10px 0 6px; }
  body.site-style-0c66156b2815 .recent-ids-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 4px; }
  body.site-style-0c66156b2815 .recent-id-chip{ border: 1px solid var(--border); background: #fff; border-radius: 999px; padding: 5px 14px; font-size: 13px; cursor: pointer; color: var(--blue); }
  body.site-style-0c66156b2815 .recent-id-chip:hover{ background: var(--blue-bg); border-color: var(--blue); }
  body.site-style-0c66156b2815 .entrance-tests-box{ margin-bottom: 14px; }
  body.site-style-0c66156b2815 .entrance-tests-title{ font-size: 13px; color: var(--muted); font-weight: 800; margin-bottom: 8px; }
  body.site-style-0c66156b2815 .entrance-tests-details summary{ cursor: pointer; font-size: 13px; color: var(--muted); font-weight: 700; margin-bottom: 8px; }
  body.site-style-0c66156b2815 .entrance-tests-details summary .count{ font-weight: 400; }
  body.site-style-0c66156b2815 .entrance-type-stack{ display: grid; gap: 10px; margin-top: 8px; }
  body.site-style-0c66156b2815 .entrance-type-group{
    border: 1px solid #d9e8fb;
    border-radius: 10px;
    background: #f8fbff;
    padding: 10px;
  }
  body.site-style-0c66156b2815 .entrance-type-group.type-ege{ border-color: #bfd8ff; background: #f2f7ff; }
  body.site-style-0c66156b2815 .entrance-type-group.type-spo{ border-color: #bdebcf; background: #f1fbf5; }
  body.site-style-0c66156b2815 .entrance-type-group.type-dvi{ border-color: #ffd69a; background: #fff8ec; }
  body.site-style-0c66156b2815 .entrance-type-group.type-belarus{ border-color: #b9d7ff; background: #f4f8ff; }
  body.site-style-0c66156b2815 .entrance-type-group.type-foreign{ border-color: #c7dcff; background: #f7faff; }
  body.site-style-0c66156b2815 .entrance-type-group.type-internal{ border-color: #d8ccff; background: #f7f4ff; }
  body.site-style-0c66156b2815 .entrance-type-head{ display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; }
  body.site-style-0c66156b2815 .entrance-type-title{
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    border-radius: 8px;
    padding: 4px 9px;
    background: #eaf2ff;
    color: var(--blue);
    font-size: 12px;
    font-weight: 900;
  }
  body.site-style-0c66156b2815 .entrance-type-group.type-spo .entrance-type-title{ background: #dff8e8; color: var(--green); }
  body.site-style-0c66156b2815 .entrance-type-group.type-dvi .entrance-type-title{ background: #fff0d8; color: #b75b17; }
  body.site-style-0c66156b2815 .entrance-type-group.type-belarus .entrance-type-title{ background: #e2eeff; color: #2554a8; }
  body.site-style-0c66156b2815 .entrance-type-group.type-foreign .entrance-type-title{ background: #e8f1ff; color: #315b9f; }
  body.site-style-0c66156b2815 .entrance-type-group.type-internal .entrance-type-title{ background: #ece6ff; color: #5b3cc4; }
  body.site-style-0c66156b2815 .entrance-type-count{ color: var(--muted); font-size: 12px; font-weight: 700; white-space: nowrap; }
  body.site-style-0c66156b2815 .entrance-other-details{
    border: 1px solid #d9e8fb;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
  }
  body.site-style-0c66156b2815 .entrance-other-details summary{
    margin: 0;
    padding: 10px;
    color: var(--blue);
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
    background: #f8fbff;
  }
  body.site-style-0c66156b2815 .entrance-other-details .entrance-type-group{
    border: 0;
    border-top: 1px solid #d9e8fb;
    border-radius: 0;
    margin: 0;
  }
  body.site-style-0c66156b2815 .entrance-tests-list{ display: flex; flex-wrap: wrap; gap: 8px; }
  body.site-style-0c66156b2815 .entrance-test-chip{
    border: 1px solid #d9e8fb;
    border-radius: 8px;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 700;
    background: #fff;
    color: #15243a;
  }
  body.site-style-0c66156b2815 .entrance-test-chip strong{ color: var(--muted); font-size: 11px; text-transform: uppercase; margin-right: 4px; }
  body.site-style-0c66156b2815 #university-header{ margin-bottom: 12px; font-size: 15px; }
  body.site-style-0c66156b2815 #university-header a{ color: var(--blue); text-decoration: none; }
  body.site-style-0c66156b2815 #university-header a:hover{ text-decoration: underline; }
  body.site-style-0c66156b2815 .uni-back-link{ display: inline-block; margin-bottom: 14px; font-size: 14px; font-weight: 700; }
  body.site-style-0c66156b2815 .uni-hero{
    border: 1px solid var(--line);
    border-radius: 12px;
    background: linear-gradient(180deg, #f5f9ff 0%, #ffffff 100%);
    padding: 24px;
    margin-bottom: 14px;
  }
  body.site-style-0c66156b2815 .uni-title{ margin: 0 0 14px; font-size: 30px; line-height: 1.15; color: var(--ink); font-weight: 900; }
  body.site-style-0c66156b2815 .uni-contact-list{ display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; color: var(--ink-2); font-size: 14px; font-weight: 700; }
  body.site-style-0c66156b2815 .uni-official-card{
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #f5f9ff;
    padding: 16px;
    margin-top: 14px;
  }
  body.site-style-0c66156b2815 .uni-official-card summary{
    cursor: pointer;
    color: var(--ink);
    font-size: 16px;
    font-weight: 900;
  }
  body.site-style-0c66156b2815 .uni-official-card .count{ color: var(--blue); font-size: 13px; }
  body.site-style-0c66156b2815 .uni-doc-grid{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
  body.site-style-0c66156b2815 .uni-doc-link{
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 7px 10px;
    background: #fff;
    color: var(--blue);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
  }
  body.site-style-0c66156b2815 .uni-doc-link:hover{ background: var(--blue-bg); border-color: #bcd6ff; text-decoration: none; }
  body.site-style-0c66156b2815 .level-grid{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
  body.site-style-0c66156b2815 .level-card{ border: 1px solid var(--border); border-radius: 10px; padding: 16px 20px; cursor: pointer; background: #fff; min-width: 220px; }
  body.site-style-0c66156b2815 .level-card:hover{ border-color: var(--blue); }
  body.site-style-0c66156b2815 .level-card .name{ font-weight: 700; font-size: 16px; margin-bottom: 4px; }
  body.site-style-0c66156b2815 .level-card .count{ color: var(--muted); font-size: 13px; }
  body.site-style-0c66156b2815 tr.direction-row td{ background: var(--blue-bg); font-weight: 700; padding: 8px 10px; border-top: 2px solid var(--border); white-space: normal; }
  body.site-style-0c66156b2815 tr.direction-row .count{ color: var(--muted); font-weight: 500; font-size: 12px; }
  body.site-style-0c66156b2815 #programs-table.uni-mode{ table-layout: fixed; }
  body.site-style-0c66156b2815 #programs-table.uni-mode th:nth-child(1),body.site-style-0c66156b2815 #programs-table.uni-mode td:nth-child(1){ width: 38%; }
  body.site-style-0c66156b2815 #programs-table.uni-mode th:nth-child(2),body.site-style-0c66156b2815 #programs-table.uni-mode td:nth-child(2){ width: 11%; }
  body.site-style-0c66156b2815 #programs-table.uni-mode th:nth-child(3),body.site-style-0c66156b2815 #programs-table.uni-mode td:nth-child(3){ width: 9%; }
  body.site-style-0c66156b2815 #programs-table.uni-mode th:nth-child(4),body.site-style-0c66156b2815 #programs-table.uni-mode td:nth-child(4){ width: 20%; }
  body.site-style-0c66156b2815 #programs-table.uni-mode th:nth-child(5),body.site-style-0c66156b2815 #programs-table.uni-mode td:nth-child(5){ width: 11%; }
  body.site-style-0c66156b2815 #programs-table.uni-mode th:nth-child(6),body.site-style-0c66156b2815 #programs-table.uni-mode td:nth-child(6){ width: 11%; }
  body.site-style-0c66156b2815 #programs-table.uni-mode td{ white-space: normal; word-break: break-word; line-height: 1.35; }
  body.site-style-0c66156b2815 #programs-table.uni-mode td.prog-name-cell{ padding: 8px 12px; }
  body.site-style-0c66156b2815 #programs-table.uni-mode .prog-name-inner{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body.site-style-0c66156b2815 .home-banners{ display: flex; flex-direction: column; gap: 10px; margin: 20px 0 0; }
  body.site-style-0c66156b2815 .home-banner{ display: block; text-align: center; padding: 14px 20px; border-radius: 10px; text-decoration: none; font-weight: 700; font-size: 14px; cursor: pointer; }
  body.site-style-0c66156b2815 .home-banner-blue{ background: var(--blue); color: #fff; }
  body.site-style-0c66156b2815 .home-banner-blue:hover{ background: #1558c9; }
  body.site-style-0c66156b2815 .home-banner-amber{ background: var(--amber-bg); color: var(--amber); border: 1px solid #f3d98b; }
  body.site-style-0c66156b2815 .home-banner-amber:hover{ background: #ffedb8; }
  body.site-style-0c66156b2815 .home-hero{ padding: 40px 8px 28px; text-align: left; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .home-hero-text{ flex: 1 1 420px; min-width: 280px; }
  body.site-style-0c66156b2815 .home-hero-badge{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 13px; font-weight: 600; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
  body.site-style-0c66156b2815 .home-hero-cta{ display: inline-block; margin-top: 16px; background: #F7B500; color: #152A54; font-weight: 700; font-size: 15px; padding: 12px 24px; border-radius: 10px; text-decoration: none; }
  body.site-style-0c66156b2815 .home-hero-cta:hover{ background: #e0a400; }
  body.site-style-0c66156b2815 .home-promo27{ background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin: 8px 0 40px; }
  body.site-style-0c66156b2815 .home-promo27-badge{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 13px; font-weight: 600; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
  body.site-style-0c66156b2815 .home-promo27-title{ font-size: 30px; font-weight: 800; margin: 0 0 10px; }
  body.site-style-0c66156b2815 .home-promo27-title span{ color: var(--blue); }
  body.site-style-0c66156b2815 .home-promo27-sub{ font-size: 16px; color: var(--muted); margin: 0 0 28px; max-width: 640px; }
  body.site-style-0c66156b2815 .home-promo27-card{ display: flex; gap: 28px; align-items: center; background: var(--bg); border-radius: 14px; padding: 24px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .home-promo27-image{ flex: 0 0 260px; border-radius: 12px; overflow: hidden; }
  body.site-style-0c66156b2815 .home-promo27-image img{ width: 100%; height: auto; display: block; border-radius: 12px; }
  body.site-style-0c66156b2815 .home-promo27-text{ flex: 1 1 360px; min-width: 260px; }
  body.site-style-0c66156b2815 .home-promo27-text p{ font-size: 15px; line-height: 1.55; color: #333; margin: 0 0 20px; }
  body.site-style-0c66156b2815 .home-promo27-text p b{ color: #1a1a1a; }
  body.site-style-0c66156b2815 .home-promo27-actions{ display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .home-promo27-cta{ display: inline-block; background: var(--blue); color: #fff; font-weight: 700; font-size: 15px; padding: 12px 24px; border-radius: 10px; text-decoration: none; }
  body.site-style-0c66156b2815 .home-promo27-cta:hover{ background: #1558c9; }
  body.site-style-0c66156b2815 .home-promo27-link{ font-size: 14px; color: var(--blue); text-decoration: none; font-weight: 600; }
  body.site-style-0c66156b2815 .home-promo27-link:hover{ text-decoration: underline; }
  @media (max-width: 640px){body.site-style-0c66156b2815 .home-promo27-card{ flex-direction: column; } body.site-style-0c66156b2815 .home-promo27-image{ width: 100%; flex-basis: auto; }}
  body.site-style-0c66156b2815 .home-hero-owl{ flex: 0 0 440px; max-width: 46%; }
  body.site-style-0c66156b2815 .owl-hero-photo{ width: 100%; height: auto; display: block; border-radius: 16px; }
  @media (max-width: 900px){body.site-style-0c66156b2815 .home-hero-owl{ flex: 1 1 100%; max-width: 380px; order: -1; margin: 0 auto; }}
  body.site-style-0c66156b2815 .home-hero-title{ font-size: 36px; line-height: 1.15; margin: 0 0 14px; font-weight: 800; }
  body.site-style-0c66156b2815 .home-hero-accent{ background: #ffe082; padding: 2px 10px; border-radius: 6px; text-transform: uppercase; }
  body.site-style-0c66156b2815 .home-hero-sub{ font-size: 16px; color: var(--muted); max-width: 620px; margin: 0 0 24px; }
  body.site-style-0c66156b2815 .home-search-row{ max-width: 480px; }
  body.site-style-0c66156b2815 .home-stats{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: 12px; overflow: hidden; margin: 8px 0 36px; }
  body.site-style-0c66156b2815 .home-stat{ background: #fff; padding: 18px 20px; }
  body.site-style-0c66156b2815 a.home-stat-link{ display: block; text-decoration: none; color: inherit; cursor: pointer; }
  body.site-style-0c66156b2815 a.home-stat-link:hover{ background: var(--bg); }
  body.site-style-0c66156b2815 .home-stat-n{ font-size: 24px; font-weight: 800; color: var(--blue); }
  body.site-style-0c66156b2815 .home-stat-l{ font-size: 13px; color: var(--muted); margin-top: 2px; }
  body.site-style-0c66156b2815 .home-section-title{ font-size: 22px; font-weight: 800; margin: 40px 0 18px; }
  body.site-style-0c66156b2815 .home-tools-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
  body.site-style-0c66156b2815 .home-tool-card{ display: block; border: 1px solid var(--border); border-radius: 12px; padding: 18px; text-decoration: none; color: inherit; background: #fff; cursor: pointer; position: relative; transition: box-shadow .15s, transform .15s; }
  body.site-style-0c66156b2815 .home-tool-card:hover{ box-shadow: 0 4px 14px rgba(0,0,0,.08); transform: translateY(-1px); }
  body.site-style-0c66156b2815 .home-tool-card.pending{ opacity: .6; cursor: default; }
  body.site-style-0c66156b2815 .home-tool-card.pending:hover{ box-shadow: none; transform: none; }
  body.site-style-0c66156b2815 .home-tool-icon{ width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 20px; margin-bottom: 12px; }
  body.site-style-0c66156b2815 .home-tool-title{ font-weight: 700; font-size: 15px; margin-bottom: 6px; }
  body.site-style-0c66156b2815 .home-tool-sub{ font-size: 13px; color: var(--muted); line-height: 1.4; }
  body.site-style-0c66156b2815 .home-tool-badge{ position: absolute; top: 14px; right: 14px; background: var(--amber-bg); color: var(--amber); font-size: 11px; font-weight: 700; padding: 3px 8px; border-radius: 999px; }
  body.site-style-0c66156b2815 .home-steps{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
  body.site-style-0c66156b2815 .home-step{ border: 1px solid var(--border); border-radius: 12px; padding: 20px; background: #fff; }
  body.site-style-0c66156b2815 .home-step-n{ width: 32px; height: 32px; border-radius: 50%; background: #ffe082; display: flex; align-items: center; justify-content: center; font-weight: 800; margin-bottom: 12px; }
  body.site-style-0c66156b2815 .home-step-title{ font-weight: 700; margin-bottom: 6px; }
  body.site-style-0c66156b2815 .home-step-sub{ font-size: 13px; color: var(--muted); line-height: 1.4; }
  body.site-style-0c66156b2815 .home-feedback{ display: flex; justify-content: space-between; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 12px; padding: 20px 24px; margin-top: 40px; background: #fff; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .home-feedback-title{ font-weight: 700; }
  body.site-style-0c66156b2815 .home-feedback-sub{ font-size: 13px; color: var(--muted); margin-top: 2px; }
  @media (max-width: 720px){body.site-style-0c66156b2815 .home-stats{ grid-template-columns: repeat(2, 1fr); }
    body.site-style-0c66156b2815 .home-steps{ grid-template-columns: 1fr; }
    body.site-style-0c66156b2815 .home-hero-title{ font-size: 28px; }}
  body.site-style-0c66156b2815 .orders-note{ color: var(--muted); font-size: 14px; max-width: 760px; line-height: 1.5; margin: 0 0 24px; }
  body.site-style-0c66156b2815 .orders-filters{ display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 18px; }
  body.site-style-0c66156b2815 .orders-filter-chip{ border: 1px solid var(--border); border-radius: 999px; padding: 10px 16px; font-size: 13px; font-weight: 600; background: #fff; cursor: pointer; color: var(--muted); }
  body.site-style-0c66156b2815 .orders-filter-chip.active{ border-color: var(--blue); color: var(--blue); background: var(--blue-bg); }
  body.site-style-0c66156b2815 .orders-search{ margin-bottom: 18px; max-width: 360px; }
  body.site-style-0c66156b2815 .orders-search input{ width: 100%; padding: 10px 14px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; }
  body.site-style-0c66156b2815 .orders-list{ display: flex; flex-direction: column; gap: 10px; }
  body.site-style-0c66156b2815 .orders-row{ display: flex; justify-content: space-between; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 10px; padding: 14px 18px; background: #fff; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .orders-row-name{ font-weight: 700; font-size: 14px; }
  body.site-style-0c66156b2815 .orders-row-meta{ font-size: 12px; color: var(--muted); margin-top: 3px; }
  body.site-style-0c66156b2815 .orders-row-badge{ font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
  body.site-style-0c66156b2815 .orders-badge-collected{ background: var(--green-bg); color: var(--green); }
  body.site-style-0c66156b2815 .orders-badge-in-progress{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-0c66156b2815 .orders-badge-not-started{ background: #f1f1f1; color: var(--muted); }
  body.site-style-0c66156b2815 .orders-footer{ margin-top: 18px; text-align: center; }
  body.site-style-0c66156b2815 .orders-calendar{ border: 1px solid var(--border); border-radius: 12px; padding: 20px 22px; margin-bottom: 22px; background: #fff; }
  body.site-style-0c66156b2815 .orders-calendar-title{ font-weight: 700; font-size: 15px; margin: 0 0 14px; display: flex; align-items: center; gap: 8px; }
  body.site-style-0c66156b2815 .orders-calendar-item{ display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; padding: 10px 0; border-top: 1px solid var(--border); }
  body.site-style-0c66156b2815 .orders-calendar-item:first-of-type{ border-top: none; padding-top: 0; }
  body.site-style-0c66156b2815 .orders-calendar-item-text{ font-size: 14px; line-height: 1.5; }
  body.site-style-0c66156b2815 .orders-calendar-badge{ flex-shrink: 0; font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
  body.site-style-0c66156b2815 .orders-calendar-badge-done{ background: #f1f1f1; color: var(--muted); }
  body.site-style-0c66156b2815 .orders-calendar-badge-active{ background: var(--green-bg); color: var(--green); }
  body.site-style-0c66156b2815 .orders-calendar-source{ font-size: 12px; color: var(--muted); margin-top: 12px; line-height: 1.5; }
  body.site-style-0c66156b2815 .admission-cards{ display: flex; gap: 14px; flex-wrap: wrap; margin: 0 0 26px; }
  body.site-style-0c66156b2815 .admission-card{ flex: 1 1 260px; border: 1px solid var(--border); border-radius: 12px; padding: 18px 20px; background: #fff; cursor: pointer; text-decoration: none; color: inherit; display: block; transition: border-color .15s; }
  body.site-style-0c66156b2815 .admission-card:hover{ border-color: var(--blue); }
  body.site-style-0c66156b2815 .admission-card.active{ border-color: var(--blue); background: var(--blue-bg); cursor: default; }
  body.site-style-0c66156b2815 .admission-card-title{ font-size: 13px; font-weight: 400; color: var(--muted); text-transform: none; letter-spacing: normal; margin-bottom: 4px; }
  body.site-style-0c66156b2815 .admission-card-number{ font-size: 34px; font-weight: 800; line-height: 1.08; margin-bottom: 4px; }
  body.site-style-0c66156b2815 .admission-card-meta{ font-size: 12px; color: var(--muted); line-height: 1.5; }
  body.site-style-0c66156b2815 .admission-overview-table{ table-layout: fixed; width: 100%; border-collapse: collapse; font-size: 13px; }
  body.site-style-0c66156b2815 .admission-overview-table th,body.site-style-0c66156b2815 .admission-overview-table td{ padding: 8px 8px; border-bottom: 1px solid var(--border); vertical-align: top; white-space: normal; word-wrap: break-word; overflow-wrap: break-word; }
  body.site-style-0c66156b2815 .admission-overview-table th{ text-align: left; border-bottom: 2px solid var(--border); color: var(--muted); font-weight: 700; font-size: 11px; text-transform: uppercase; }
  body.site-style-0c66156b2815 .admission-overview-table th:nth-child(1),body.site-style-0c66156b2815 .admission-overview-table td:nth-child(1){ width: 38%; }
  body.site-style-0c66156b2815 .admission-overview-table th:nth-child(2),body.site-style-0c66156b2815 .admission-overview-table td:nth-child(2){ width: 7%; }
  body.site-style-0c66156b2815 .admission-overview-table th:nth-child(3),body.site-style-0c66156b2815 .admission-overview-table td:nth-child(3){ width: 8%; }
  body.site-style-0c66156b2815 .admission-overview-table th:nth-child(4),body.site-style-0c66156b2815 .admission-overview-table td:nth-child(4){ width: 9%; }
  body.site-style-0c66156b2815 .admission-overview-table th:nth-child(5),body.site-style-0c66156b2815 .admission-overview-table td:nth-child(5){ width: 11%; }
  body.site-style-0c66156b2815 .admission-overview-table th:nth-child(6),body.site-style-0c66156b2815 .admission-overview-table td:nth-child(6){ width: 9%; }
  body.site-style-0c66156b2815 .admission-overview-table th:nth-child(7),body.site-style-0c66156b2815 .admission-overview-table td:nth-child(7){ width: 11%; text-align: right; }
  body.site-style-0c66156b2815 .admission-overview-table td:nth-child(1) a{ display: block; }
  body.site-style-0c66156b2815 .admission-overview-table tr:hover td{ background: var(--blue-bg); }
  body.site-style-0c66156b2815 .table-scroll{ overflow-x: auto; }
  body.site-style-0c66156b2815 #panel-competition .orders-search{ display: flex; flex-wrap: wrap; gap: 10px; align-items: center; max-width: none; }
  body.site-style-0c66156b2815 #panel-competition .orders-search input[type=text]{ flex: 1 1 220px; }
  body.site-style-0c66156b2815 .content-page{ font-size: 14px; color: #1b1b1b; }
  body.site-style-0c66156b2815 .content-page h2,body.site-style-0c66156b2815 .content-page h3{ letter-spacing: 0; }
  body.site-style-0c66156b2815 .admission26-hero{ padding: 18px 0 28px; }
  body.site-style-0c66156b2815 .admission26-kicker{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 12px; font-weight: 700; padding: 5px 12px; border-radius: 999px; margin-bottom: 12px; }
  body.site-style-0c66156b2815 .admission26-title{ font-size: 28px; line-height: 1.2; margin: 0 0 10px; font-weight: 800; max-width: 900px; }
  body.site-style-0c66156b2815 .admission26-title span{ color: var(--blue); }
  body.site-style-0c66156b2815 .admission26-lead{ color: var(--muted); font-size: 14px; line-height: 1.5; max-width: 980px; margin: 0 0 8px; }
  body.site-style-0c66156b2815 .admission26-note{ color: #92a0b4; font-size: 12px; font-weight: 600; margin: 0 0 16px; }
  body.site-style-0c66156b2815 .admission26-alert{ border: 1px solid #f3c85d; background: #fffaf0; border-radius: 10px; padding: 14px 16px; margin: 18px 0; box-shadow: none; }
  body.site-style-0c66156b2815 .admission26-alert-top{ color: #b75b17; font-size: 12px; font-weight: 800; text-transform: uppercase; margin-bottom: 4px; }
  body.site-style-0c66156b2815 .admission26-alert-title{ font-size: 16px; font-weight: 800; color: #15243a; margin-bottom: 4px; }
  body.site-style-0c66156b2815 .admission26-alert-sub{ color: var(--muted); font-size: 13px; line-height: 1.45; }
  body.site-style-0c66156b2815 .admission26-stats{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0; }
  body.site-style-0c66156b2815 .admission26-stat{ border: 1px solid #f3c85d; background: #fffaf4; border-radius: 10px; padding: 16px; }
  body.site-style-0c66156b2815 .admission26-stat.green{ border-color: #9bdfb4; background: #eaf8ef; }
  body.site-style-0c66156b2815 .admission26-stat-label{ color: #b75b17; font-size: 12px; font-weight: 800; text-transform: uppercase; margin-bottom: 6px; }
  body.site-style-0c66156b2815 .admission26-stat.green .admission26-stat-label{ color: var(--green); }
  body.site-style-0c66156b2815 .admission26-stat-number{ font-size: 22px; font-weight: 800; color: #15243a; line-height: 1.1; margin-bottom: 4px; }
  body.site-style-0c66156b2815 .admission26-stat-text{ color: var(--muted); font-size: 13px; font-weight: 600; }
  body.site-style-0c66156b2815 .admission26-search-box{ border: 1px solid var(--blue); border-radius: 10px; padding: 16px; background: #fff; margin: 20px 0 14px; }
  body.site-style-0c66156b2815 .admission26-search-title{ font-size: 18px; font-weight: 800; margin-bottom: 6px; color: #15243a; }
  body.site-style-0c66156b2815 .admission26-search-sub{ color: var(--muted); font-size: 14px; line-height: 1.45; margin-bottom: 12px; }
  body.site-style-0c66156b2815 .admission26-search-status{ display: inline-block; max-width: 100%; background: var(--green-bg); color: var(--green); border: 1px solid #9bdfb4; border-radius: 8px; padding: 7px 10px; font-size: 12px; font-weight: 700; margin-bottom: 12px; }
  body.site-style-0c66156b2815 .admission26-search-row{ display: flex; gap: 10px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .admission26-search-row input{ flex: 0 1 260px; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-weight: 600; }
  body.site-style-0c66156b2815 .admission26-search-row button{ border-radius: 8px; box-shadow: none; }
  body.site-style-0c66156b2815 .admission26-links{ display: flex; flex-direction: column; gap: 8px; margin: 14px 0 24px; }
  body.site-style-0c66156b2815 .admission26-links a{ color: var(--blue); text-decoration: none; font-weight: 700; }
  body.site-style-0c66156b2815 .admission26-links a:hover{ text-decoration: underline; }
  body.site-style-0c66156b2815 .admission26-toolbar{ display: grid; grid-template-columns: minmax(180px, 280px) minmax(240px, 1fr) auto; gap: 12px; align-items: center; margin: 24px 0 16px; }
  body.site-style-0c66156b2815 .admission26-toolbar input{ min-width: 0; width: 100%; background: #fff; }
  body.site-style-0c66156b2815 .admission26-total{ color: #92a0b4; font-size: 13px; font-weight: 800; white-space: nowrap; }
  body.site-style-0c66156b2815 .admission26-table-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 14px; box-shadow: none; }
  body.site-style-0c66156b2815 #admission26-list .admission-overview-table th,body.site-style-0c66156b2815 #admission26-list .admission-overview-table td{ padding: 8px; }
  body.site-style-0c66156b2815 #admission26-list .admission-overview-table td{ font-size: 13px; }
  body.site-style-0c66156b2815 .admission26-num-orange{ color: #c85e20; font-weight: 800; }
  body.site-style-0c66156b2815 .admission26-num-green{ color: var(--green); font-weight: 900; }
  body.site-style-0c66156b2815 .admission26-link{ color: var(--blue); text-decoration: none; font-weight: 700; white-space: nowrap; }
  body.site-style-0c66156b2815 .admission26-help{ margin: 24px 0 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
  body.site-style-0c66156b2815 .admission26-help h3{ color: #15243a; font-size: 18px; margin: 0 0 8px; }
  @media (max-width: 820px){body.site-style-0c66156b2815 .admission26-title{ font-size: 24px; }
    body.site-style-0c66156b2815 .admission26-stats{ grid-template-columns: 1fr; }
    body.site-style-0c66156b2815 .admission26-toolbar{ grid-template-columns: 1fr; }}
  body.site-style-0c66156b2815 .competition-city-wrap{ position: relative; flex: 1 1 220px; min-width: 160px; }
  body.site-style-0c66156b2815 .competition-city-input{ width: 100%; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; box-sizing: border-box; }
  body.site-style-0c66156b2815 .competition-city-suggest{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.08); max-height: 260px; overflow-y: auto; z-index: 20; }
  body.site-style-0c66156b2815 .competition-city-suggest.open{ display: block; }
  body.site-style-0c66156b2815 .competition-city-suggest-item{ padding: 8px 12px; cursor: pointer; font-size: 14px; }
  body.site-style-0c66156b2815 .competition-city-suggest-item:hover,body.site-style-0c66156b2815 .competition-city-suggest-item.active{ background: var(--blue-bg); }
  body.site-style-0c66156b2815 .uni-row-code{ font-size: 11px; color: var(--muted); font-weight: 600; }
  body.site-style-0c66156b2815 .uni-back-link{ display: block; font-size: 13px; color: var(--muted); text-decoration: none; margin-bottom: 8px; }
  body.site-style-0c66156b2815 .uni-back-link:hover{ text-decoration: underline; }
  body.site-style-0c66156b2815 .uni-title{ font-size: 28px; font-weight: 800; margin: 0; line-height: 1.25; }
  body.site-style-0c66156b2815 .university-groups-table tbody tr{ cursor: pointer; }
  body.site-style-0c66156b2815 .university-groups-table tbody tr:hover td{ background: var(--blue-bg); }
  body.site-style-0c66156b2815 .university-groups-table{ font-size: 12px; }
  body.site-style-0c66156b2815 .university-groups-table th{ font-size: 10px; }
  body.site-style-0c66156b2815 .university-groups-table th:nth-child(1),body.site-style-0c66156b2815 .university-groups-table td:nth-child(1){ width: 24%; white-space: normal; }
  body.site-style-0c66156b2815 .university-groups-table th:nth-child(2),body.site-style-0c66156b2815 .university-groups-table td:nth-child(2){ width: 38%; white-space: nowrap; }
  body.site-style-0c66156b2815 .university-groups-table th:nth-child(3),body.site-style-0c66156b2815 .university-groups-table td:nth-child(3){ width: 10%; }
  body.site-style-0c66156b2815 .university-groups-table th:nth-child(4),body.site-style-0c66156b2815 .university-groups-table td:nth-child(4){ width: 14%; }
  body.site-style-0c66156b2815 .university-groups-table th:nth-child(5),body.site-style-0c66156b2815 .university-groups-table td:nth-child(5){ width: 14%; }
  body.site-style-0c66156b2815 .simple-page{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 22px; margin-bottom: 18px; }
  body.site-style-0c66156b2815 .simple-page h2{ margin: 0 0 8px; font-size: 28px; line-height: 1.2; }
  body.site-style-0c66156b2815 .simple-page p{ color: var(--muted); margin: 0 0 16px; max-width: 760px; }
  body.site-style-0c66156b2815 .simple-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px; }
  body.site-style-0c66156b2815 .simple-card{ display: block; background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 16px; color: inherit; text-decoration: none; }
  body.site-style-0c66156b2815 .simple-card:hover{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-0c66156b2815 .simple-card-title{ font-weight: 800; margin-bottom: 6px; }
  body.site-style-0c66156b2815 .simple-card-sub{ color: var(--muted); font-size: 13px; }
  body.site-style-0c66156b2815 .simple-actions{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
  body.site-style-0c66156b2815 .simple-cta{ display: inline-block; padding: 11px 18px; border-radius: 8px; background: var(--blue); color: #fff; text-decoration: none; font-weight: 800; }
  body.site-style-0c66156b2815 .simple-cta.yellow{ background: #ffbf17; color: #15243a; border-bottom: 4px solid #f08a00; }
  body.site-style-0c66156b2815 .route27{ display: flex; flex-direction: column; gap: 18px; padding: 18px 0 48px; font-size: 14px; }
  body.site-style-0c66156b2815 .route27-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 18px; box-shadow: none; }
  body.site-style-0c66156b2815 .route27-main{ border: 1px solid var(--blue); background: #fff; }
  body.site-style-0c66156b2815 .route27-save{ display: grid; grid-template-columns: minmax(260px, 1fr) auto; gap: 10px; align-items: start; width: 100%; margin: 0 0 16px; padding: 12px; background: #f4f8ff; border: 1px solid #d8e8ff; border-radius: 10px; }
  body.site-style-0c66156b2815 .route27-save.paid{ background: rgba(232,248,239,.74); border-color: #9bdfb4; }
  body.site-style-0c66156b2815 .route27-save input{ width: 100%; min-width: 0; padding: 10px 12px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; background: #fff; }
  body.site-style-0c66156b2815 .route27-save button{ padding: 10px 16px; border: none; border-radius: 8px; background: var(--blue); color: #fff; font-size: 14px; font-weight: 700; cursor: pointer; white-space: nowrap; }
  body.site-style-0c66156b2815 .route27-save.paid button{ background: var(--green); }
  body.site-style-0c66156b2815 .route27-save-hint{ grid-column: 1 / -1; color: var(--muted); font-size: 13px; text-align: left; }
  body.site-style-0c66156b2815 .route27-save.paid .route27-save-hint{ color: var(--green); font-weight: 800; }
  body.site-style-0c66156b2815 .route27-link-box{ grid-column: 1 / -1; display: none; background: #fff; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 13px; color: #24364f; overflow-wrap: anywhere; text-align: left; }
  body.site-style-0c66156b2815 .route27-save.saved .route27-link-box{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .route27-save.paid .route27-link-box{ border-color: #9bdfb4; }
  body.site-style-0c66156b2815 .route27-account-url{ min-width: 0; flex: 1 1 360px; overflow-wrap: anywhere; }
  body.site-style-0c66156b2815 .route27-access-badge{ display: inline-flex; align-items: center; margin-left: 8px; padding: 3px 8px; border-radius: 999px; background: #dcebfd; color: var(--blue); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; font-size: 12px; font-weight: 800; vertical-align: middle; }
  body.site-style-0c66156b2815 .route27-save.paid .route27-access-badge{ background: var(--green-bg); color: var(--green); }
  body.site-style-0c66156b2815 .route27-head{ display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; align-items: start; }
  body.site-style-0c66156b2815 .route27-kicker{ font-size: 14px; font-weight: 800; color: #15243a; margin-bottom: 4px; }
  body.site-style-0c66156b2815 .route27-title{ font-size: 22px; line-height: 1.25; font-weight: 800; margin: 0 0 6px; color: #12233c; }
  body.site-style-0c66156b2815 .route27-sub{ color: var(--muted); font-size: 14px; line-height: 1.45; margin: 0 0 14px; }
  body.site-style-0c66156b2815 .route27-progress{ min-width: 124px; text-align: center; background: var(--blue); color: #fff; border-radius: 10px; padding: 12px 14px; font-weight: 700; font-size: 12px; }
  body.site-style-0c66156b2815 .route27-progress-n{ font-size: 24px; line-height: 1; }
  body.site-style-0c66156b2815 .route27-steps{ display: grid; grid-template-columns: repeat(8, minmax(100px, 1fr)); gap: 10px; }
  body.site-style-0c66156b2815 .route27-step{ border: 1px solid #d8e8ff; background: #fff; border-radius: 8px; padding: 10px; text-align: center; min-height: 74px; cursor: pointer; }
  body.site-style-0c66156b2815 .route27-step.active{ border: 1px solid var(--blue); }
  body.site-style-0c66156b2815 .route27-step-num{ width: 24px; height: 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: var(--blue-bg); color: var(--blue); font-weight: 800; margin-bottom: 5px; font-size: 12px; }
  body.site-style-0c66156b2815 .route27-step.active .route27-step-num{ background: var(--blue); color: #fff; }
  body.site-style-0c66156b2815 .route27-step-title{ font-size: 12px; font-weight: 800; color: #3d4b63; }
  body.site-style-0c66156b2815 .route27-step-pct{ color: #92a0b4; font-size: 11px; font-weight: 700; }
  body.site-style-0c66156b2815 .route27-section-title{ font-size: 20px; margin: 0 0 6px; color: #12233c; font-weight: 800; }
  body.site-style-0c66156b2815 .route27-subhead{ font-size: 14px; margin: 18px 0 10px; color: #12233c; font-weight: 800; }
  body.site-style-0c66156b2815 #route27-interests-section{ scroll-margin-top: 110px; }
  body.site-style-0c66156b2815 .route27-stage-tag{ display: inline-block; background: var(--blue-bg); color: var(--blue); border-radius: 999px; padding: 5px 10px; font-size: 12px; font-weight: 800; margin-bottom: 10px; }
  body.site-style-0c66156b2815 .route27-two{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .9fr); gap: 22px; align-items: start; }
  body.site-style-0c66156b2815 .route27-card ul{ margin: 10px 0 0; padding-left: 20px; color: var(--muted); line-height: 1.5; }
  body.site-style-0c66156b2815 .route27-aside{ border-left: 3px solid var(--blue); padding-left: 16px; color: #566377; }
  body.site-style-0c66156b2815 .route27-checklist{ margin-top: 20px; border-top: 1px dashed #d8e8ff; }
  body.site-style-0c66156b2815 .route27-task{ display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px dashed #d8e8ff; color: #3d4b63; font-weight: 600; }
  body.site-style-0c66156b2815 .route27-task label{ display: flex; align-items: center; gap: 10px; cursor: pointer; }
  body.site-style-0c66156b2815 .route27-task input{ width: 16px; height: 16px; }
  body.site-style-0c66156b2815 .route27-mini-btn{ border: none; border-radius: 8px; background: var(--blue-bg); color: var(--blue); padding: 7px 10px; font-weight: 700; text-decoration: none; white-space: nowrap; font-size: 13px; }
  body.site-style-0c66156b2815 .route27-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
  body.site-style-0c66156b2815 .route27-test-results{ grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
  body.site-style-0c66156b2815 .route27-tile{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 12px; background: #fbfdff; }
  body.site-style-0c66156b2815 .route27-tile-title{ font-weight: 800; color: #12233c; margin-bottom: 6px; }
  body.site-style-0c66156b2815 .route27-muted{ color: var(--muted); font-size: 13px; line-height: 1.45; }
  body.site-style-0c66156b2815 .route27-pay{ border: 1px solid var(--blue); background: #fff; }
  body.site-style-0c66156b2815 .route27-pay-row{ display: grid; grid-template-columns: minmax(220px, 1fr) auto auto; gap: 12px; align-items: center; margin-top: 16px; }
  body.site-style-0c66156b2815 form.route27-pay-row{ margin-top: 16px; }
  body.site-style-0c66156b2815 .route27-pay-row input,body.site-style-0c66156b2815 .route27-form input,body.site-style-0c66156b2815 .route27-form select{ min-width: 0; width: 100%; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-size: 14px; background: #fff; }
  body.site-style-0c66156b2815 .route27-blue-btn{ display: inline-block; border: none; border-radius: 8px; background: var(--blue); color: #fff; padding: 10px 16px; font-weight: 700; text-decoration: none; cursor: pointer; font-size: 14px; }
  body.site-style-0c66156b2815 .route27-program{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 12px; margin-top: 10px; }
  body.site-style-0c66156b2815 .route27-program-head{ display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
  body.site-style-0c66156b2815 .route27-program-title{ font-weight: 800; color: #12233c; }
  body.site-style-0c66156b2815 .route27-recommendations{ margin-top: 22px; }
  body.site-style-0c66156b2815 .route27-rec-filters{ background: #f4f8ff; border-radius: 10px; padding: 12px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
  body.site-style-0c66156b2815 .route27-rec-filter{ display: flex; flex-direction: column; gap: 5px; min-width: 0; }
  body.site-style-0c66156b2815 .route27-rec-filter label{ color: var(--muted); font-size: 12px; font-weight: 800; }
  body.site-style-0c66156b2815 .route27-rec-filter select,body.site-style-0c66156b2815 .route27-rec-filter input{ width: 100%; border: 1px solid #d8e8ff; border-radius: 8px; padding: 9px 10px; font-size: 13px; background: #fff; }
  body.site-style-0c66156b2815 .route27-rec-filter .competition-city-wrap{ flex: 0 0 auto; min-width: 0; width: 100%; }
  body.site-style-0c66156b2815 .route27-rec-actions{ grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-style-0c66156b2815 .route27-rec-cards{ display: grid; gap: 10px; margin-top: 12px; }
  body.site-style-0c66156b2815 .route27-rec-card{ border: 1px solid #d8e8ff; border-radius: 10px; padding: 12px; background: #fff; }
  body.site-style-0c66156b2815 .route27-rec-card-head{ display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
  body.site-style-0c66156b2815 .route27-rec-card-title{ font-weight: 800; color: #12233c; }
  body.site-style-0c66156b2815 .route27-rec-meta{ color: var(--muted); font-size: 13px; margin-top: 4px; line-height: 1.45; }
  body.site-style-0c66156b2815 .route27-rec-reason{ background: #dcebfd; color: var(--blue); border-radius: 8px; padding: 8px 10px; font-size: 12px; font-weight: 700; margin-top: 10px; }
  body.site-style-0c66156b2815 .route27-auto-filters{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
  body.site-style-0c66156b2815 .route27-auto-filters span{ border: 1px solid #d8e8ff; background: #fff; color: var(--blue); border-radius: 999px; padding: 6px 10px; font-size: 12px; font-weight: 800; }
  body.site-style-0c66156b2815 .route27-direction-group{ border: 1px solid #d8e8ff; border-radius: 10px; background: #fff; overflow: hidden; }
  body.site-style-0c66156b2815 .route27-direction-head{ display: flex; justify-content: space-between; gap: 14px; padding: 12px 14px; background: #f4f8ff; border-bottom: 1px solid #d8e8ff; }
  body.site-style-0c66156b2815 .route27-direction-code{ color: var(--blue); font-size: 12px; font-weight: 800; margin-bottom: 2px; }
  body.site-style-0c66156b2815 .route27-direction-title{ color: #12233c; font-size: 15px; font-weight: 800; line-height: 1.25; }
  body.site-style-0c66156b2815 .route27-direction-reason{ color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 4px; }
  body.site-style-0c66156b2815 .route27-direction-count{ color: var(--green); font-size: 12px; font-weight: 800; white-space: nowrap; }
  body.site-style-0c66156b2815 .route27-direction-options{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
  body.site-style-0c66156b2815 .route27-direction-option{ padding: 12px 14px; border-left: 1px solid #d8e8ff; }
  body.site-style-0c66156b2815 .route27-direction-option:first-child{ border-left: 0; }
  body.site-style-0c66156b2815 .route27-direction-option .route27-pill{ margin-bottom: 8px; }
  body.site-style-0c66156b2815 .route27-option-title{ color: #12233c; font-weight: 800; font-size: 13px; line-height: 1.25; }
  body.site-style-0c66156b2815 .route27-option-meta{ color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 4px; }
  body.site-style-0c66156b2815 .route27-option-stats{ display: flex; flex-wrap: wrap; gap: 6px; margin: 9px 0; color: #3d4b63; font-size: 12px; font-weight: 700; }
  body.site-style-0c66156b2815 .route27-map-head{ display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 22px; }
  body.site-style-0c66156b2815 .route27-map-score{ display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-size: 13px; font-weight: 700; }
  body.site-style-0c66156b2815 .route27-map-score input{ width: 120px; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; font-size: 13px; }
  body.site-style-0c66156b2815 .route27-map-legend{ display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 10px; }
  body.site-style-0c66156b2815 .route27-map-legend span{ border-radius: 999px; padding: 5px 9px; font-size: 12px; font-weight: 800; }
  body.site-style-0c66156b2815 .route27-map-dream{ background: #fff1df; }
  body.site-style-0c66156b2815 .route27-map-real{ background: #e8f8ef; }
  body.site-style-0c66156b2815 .route27-map-safe{ background: #fff8d8; }
  body.site-style-0c66156b2815 .route27-map-unknown{ background: #f4f8ff; }
  body.site-style-0c66156b2815 .route27-map-table{ width: 100%; border-collapse: collapse; font-size: 11px; background: #fff; table-layout: fixed; }
  body.site-style-0c66156b2815 .route27-map-table th{ background: #f4f8ff; color: var(--muted); text-align: left; font-size: 10px; padding: 6px 7px; border-bottom: 1px solid #d8e8ff; }
  body.site-style-0c66156b2815 .route27-map-table td{ padding: 7px; border-bottom: 1px solid #d8e8ff; vertical-align: top; line-height: 1.25; font-weight: 400; overflow: hidden; }
  body.site-style-0c66156b2815 .route27-map-table .route27-map-program{ font-weight: 650; color: #12233c; font-size: 12px; line-height: 1.2; }
  body.site-style-0c66156b2815 .route27-map-table .route27-map-sub{ color: var(--muted); font-size: 10px; margin-top: 3px; line-height: 1.25; }
  body.site-style-0c66156b2815 .route27-map-table .route27-uni-name{ display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; word-break: normal; overflow-wrap: anywhere; }
  body.site-style-0c66156b2815 .route27-map-table .route27-format-main{ display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  body.site-style-0c66156b2815 .route27-map-table .route27-exams-line{ display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  body.site-style-0c66156b2815 .route27-map-table .route27-blue-btn{ padding: 6px 9px; border-radius: 7px; font-size: 11px; white-space: nowrap; }
  body.site-style-0c66156b2815 .route27-easier-btn{ display: inline-flex; align-items: center; gap: 5px; margin-top: 8px; border: 1px solid #d8e8ff; border-radius: 8px; background: var(--blue-bg); color: var(--blue); padding: 6px 9px; font-size: 12px; font-weight: 800; cursor: pointer; font-family: inherit; }
  body.site-style-0c66156b2815 .route27-easier-btn:hover,body.site-style-0c66156b2815 .route27-easier-btn.active{ border-color: var(--blue); background: #fff; }
  body.site-style-0c66156b2815 .route27-easier-row td{ padding: 0 8px 10px; background: #fff; }
  body.site-style-0c66156b2815 .route27-easier-box{ margin-top: 4px; border-top: 1px solid #d8e8ff; padding: 10px 0 0 0; }
  body.site-style-0c66156b2815 .route27-easier-head{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; color: #12233c; font-size: 13px; font-weight: 800; margin-bottom: 8px; }
  body.site-style-0c66156b2815 .route27-easier-chip{ border: 0; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 9px; font-size: 12px; font-weight: 800; cursor: pointer; font-family: inherit; }
  body.site-style-0c66156b2815 .route27-easier-list{ display: grid; gap: 6px; max-width: 980px; }
  body.site-style-0c66156b2815 .route27-easier-item{ display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 10px; align-items: center; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; background: #fbfdff; }
  body.site-style-0c66156b2815 .route27-easier-score{ color: var(--blue); font-size: 13px; font-weight: 900; }
  body.site-style-0c66156b2815 .route27-easier-margin{ color: var(--green); font-size: 12px; font-weight: 800; margin-top: 2px; }
  body.site-style-0c66156b2815 .route27-easier-title{ color: #12233c; font-size: 13px; font-weight: 800; line-height: 1.25; }
  body.site-style-0c66156b2815 .route27-easier-meta{ color: var(--muted); font-size: 11px; line-height: 1.35; margin-top: 2px; }
  body.site-style-0c66156b2815 .route27-map-table .route27-pill{ padding: 3px 7px; font-size: 10px; font-weight: 650; }
  body.site-style-0c66156b2815 .route27-map-table th.route27-tight,body.site-style-0c66156b2815 .route27-map-table td.route27-tight{ width: 32px; padding-left: 6px; padding-right: 4px; }
  body.site-style-0c66156b2815 .route27-map-table th.route27-action,body.site-style-0c66156b2815 .route27-map-table td.route27-action{ width: 96px; text-align: right; }
  body.site-style-0c66156b2815 .route27-map-remove{ border: 0; background: transparent; color: var(--muted); cursor: pointer; font-weight: 800; font-size: 16px; }
  body.site-style-0c66156b2815 .route27-pill{ display: inline-block; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 10px; font-size: 12px; font-weight: 700; }
  body.site-style-0c66156b2815 .route27-calendar-item{ display: grid; grid-template-columns: 110px 1fr auto; gap: 12px; align-items: center; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; margin-top: 8px; }
  body.site-style-0c66156b2815 .route27-date{ color: var(--blue); font-weight: 800; }
  body.site-style-0c66156b2815 .route27-form{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 16px; }
  body.site-style-0c66156b2815 .route27-score-card{ border: 1px solid #d8e8ff; border-radius: 10px; overflow: hidden; background: #fbfdff; margin-top: 14px; }
  body.site-style-0c66156b2815 .route27-ege-bridge{ display: none; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; background: #f4f8ff; margin-top: 12px; }
  body.site-style-0c66156b2815 .route27-ege-bridge.active{ display: block; }
  body.site-style-0c66156b2815 .route27-ege-bridge-title{ color: #12233c; font-size: 13px; font-weight: 800; margin-bottom: 4px; }
  body.site-style-0c66156b2815 .route27-ege-bridge-actions{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 9px; }
  body.site-style-0c66156b2815 .route27-score-table{ width: 100%; border-collapse: collapse; font-size: 13px; }
  body.site-style-0c66156b2815 .route27-score-table th{ background: #dcebfd; color: #3d4b63; padding: 9px 12px; text-align: left; font-size: 12px; }
  body.site-style-0c66156b2815 .route27-score-table td{ border-top: 1px dashed #d8e8ff; padding: 9px 12px; vertical-align: middle; }
  body.site-style-0c66156b2815 .route27-score-table input{ width: 120px; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; font-size: 13px; background: #fff; }
  body.site-style-0c66156b2815 .route27-score-summary{ background: #f4f8ff; color: var(--muted); font-size: 12px; padding: 9px 12px; }
  body.site-style-0c66156b2815 .route27-score-summary b{ color: #12233c; }
  body.site-style-0c66156b2815 .route27-note-card{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 11px 12px; background: #fff; margin-top: 10px; }
  body.site-style-0c66156b2815 .route27-note-card.is-alert{ border-color: #ffb34d; background: #fff9ef; }
  body.site-style-0c66156b2815 .route27-note-card b{ color: #12233c; }
  body.site-style-0c66156b2815 .route27-chips{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
  body.site-style-0c66156b2815 .route27-chip{ border: 1px solid #d8e8ff; border-radius: 999px; padding: 7px 11px; font-weight: 700; color: #12233c; background: #fff; font-size: 13px; cursor: pointer; font-family: inherit; }
  body.site-style-0c66156b2815 .route27-chip.active{ background: var(--blue); color: #fff; border-color: var(--blue); }
  body.site-style-0c66156b2815 .route27-result-box{ display: none; margin-top: 12px; padding: 0; border: 0; border-radius: 0; background: transparent; }
  body.site-style-0c66156b2815 .route27-result-box.active{ display: block; }
  body.site-style-0c66156b2815 .route27-result-title{ font-size: 14px; font-weight: 800; color: #12233c; margin-bottom: 6px; }
  body.site-style-0c66156b2815 .route27-result-text{ color: var(--muted); line-height: 1.55; font-size: 13px; }
  body.site-style-0c66156b2815 .route27-rec-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
  body.site-style-0c66156b2815 .route27-rec-list a{ border: 1px solid #d8e8ff; border-radius: 999px; padding: 7px 10px; color: var(--blue); background: #fff; font-weight: 700; font-size: 13px; text-decoration: none; }
  body.site-style-0c66156b2815 .route27-bars{ display: grid; gap: 7px; margin-top: 10px; }
  body.site-style-0c66156b2815 .route27-bar{ display: grid; grid-template-columns: 130px 1fr 58px; gap: 10px; align-items: center; color: #12233c; font-size: 13px; font-weight: 700; }
  body.site-style-0c66156b2815 .route27-bar-track{ display: block; height: 9px; border-radius: 999px; background: #dbeaff; overflow: hidden; }
  body.site-style-0c66156b2815 .route27-bar-fill{ display: block; height: 100%; border-radius: inherit; background: var(--blue); }
  body.site-style-0c66156b2815 .route27-bar.is-top .route27-bar-fill{ background: #ffd44d; }
  body.site-style-0c66156b2815 .route27-repeat-link{ display: inline-flex; margin-top: 10px; }
  body.site-style-0c66156b2815 .route27-ai{ display: grid; grid-template-columns: 120px 1fr; gap: 18px; align-items: start; }
  body.site-style-0c66156b2815 .route27-ai img{ width: 90px; max-width: 100%; border-radius: 10px; }
  body.site-style-0c66156b2815 .route27-answer{ background: #dcebfd; border-radius: 8px; padding: 12px; color: #24364f; line-height: 1.45; font-size: 13px; }
  body.site-style-0c66156b2815 .route27-panel{ display: none; }
  body.site-style-0c66156b2815 .route27-panel.active{ display: block; }
  body.site-style-0c66156b2815 .kim-page{ width: 100%; margin: 0; }
  body.site-style-0c66156b2815 .kim-crumbs{ font-size: 13px; color: var(--ink-3); margin-bottom: 14px; }
  body.site-style-0c66156b2815 .kim-crumbs a{ color: var(--ink-2); text-decoration: none; }
  body.site-style-0c66156b2815 .kim-hero{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 20px 22px; margin-bottom: 14px; }
  body.site-style-0c66156b2815 .kim-kicker{ display: inline-block; background: var(--blue-bg); color: var(--blue); border-radius: 999px; padding: 5px 11px; font-size: 12px; font-weight: 800; margin-bottom: 12px; }
  body.site-style-0c66156b2815 .kim-hero h2{ font-size: 28px; line-height: 1.2; margin: 0 0 10px; color: #1b1b1b; }
  body.site-style-0c66156b2815 .kim-hero h2 span{ color: var(--blue); }
  body.site-style-0c66156b2815 .kim-hero p,body.site-style-0c66156b2815 .kim-card p{ color: var(--ink-2); line-height: 1.6; margin: 0 0 14px; }
  body.site-style-0c66156b2815 .kim-status{ display: inline-flex; align-items: center; border-radius: 999px; padding: 7px 13px; font-size: 13px; font-weight: 800; background: var(--warn-bg); color: var(--warn-ink); }
  body.site-style-0c66156b2815 .kim-steps{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 18px; }
  body.site-style-0c66156b2815 .kim-step{ border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; color: var(--muted); font-size: 12px; background: #fff; }
  body.site-style-0c66156b2815 .kim-step b{ display: block; color: #1b1b1b; margin-bottom: 3px; }
  body.site-style-0c66156b2815 .kim-step.active{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-0c66156b2815 .kim-links,body.site-style-0c66156b2815 .kim-filter,body.site-style-0c66156b2815 .kim-docs{ display: flex; flex-wrap: wrap; gap: 8px; }
  body.site-style-0c66156b2815 .kim-links{ margin-top: 16px; }
  body.site-style-0c66156b2815 .kim-links a,body.site-style-0c66156b2815 .kim-docs a,body.site-style-0c66156b2815 .kim-filter button{ border: 1px solid var(--border); border-radius: 8px; padding: 8px 12px; color: #1b1b1b; background: #fff; text-decoration: none; font-size: 13px; font-weight: 800; }
  body.site-style-0c66156b2815 .kim-links a.primary,body.site-style-0c66156b2815 .kim-docs a.primary,body.site-style-0c66156b2815 .kim-filter button.on{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-0c66156b2815 .kim-stats{ display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 20px; }
  body.site-style-0c66156b2815 .kim-stat,body.site-style-0c66156b2815 .kim-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; }
  body.site-style-0c66156b2815 .kim-stat{ padding: 14px 16px; }
  body.site-style-0c66156b2815 .kim-stat b{ display: block; color: #1b1b1b; font-size: 22px; line-height: 1.2; }
  body.site-style-0c66156b2815 .kim-stat span{ display: block; color: var(--muted); font-size: 12px; font-weight: 700; }
  body.site-style-0c66156b2815 .kim-card{ padding: 18px 20px; margin-bottom: 14px; }
  body.site-style-0c66156b2815 .kim-card h2{ margin: 0 0 8px; color: #1b1b1b; font-size: 20px; }
  body.site-style-0c66156b2815 .kim-filter{ margin: 14px 0; }
  body.site-style-0c66156b2815 .kim-filter button{ cursor: pointer; font-family: inherit; }
  body.site-style-0c66156b2815 .kim-row{ border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin: 10px 0; background: #fff; }
  body.site-style-0c66156b2815 .kim-row.changed{ border-color: #f59e0b; background: #fffaf2; }
  body.site-style-0c66156b2815 .kim-row-head{ display: flex; align-items: center; justify-content: space-between; gap: 12px; }
  body.site-style-0c66156b2815 .kim-row h3{ margin: 0; color: #1b1b1b; font-size: 16px; }
  body.site-style-0c66156b2815 .kim-pill{ flex: none; border-radius: 999px; padding: 4px 9px; font-size: 11px; font-weight: 800; background: var(--ok-bg); color: var(--ok-ink); }
  body.site-style-0c66156b2815 .kim-row.changed .kim-pill{ background: var(--warn-bg); color: var(--warn-ink); }
  body.site-style-0c66156b2815 .kim-look{ border-left: 3px solid var(--blue); padding-left: 10px; color: var(--ink-2); }
  body.site-style-0c66156b2815 .kim-docs{ margin-top: 11px; }
  body.site-style-0c66156b2815 .kim-docs a{ color: var(--blue); }
  body.site-style-0c66156b2815 .kim-docs a.primary{ color: #fff; }
  body.site-style-0c66156b2815 .kim-card ul{ margin: 0; padding-left: 22px; color: var(--ink-2); line-height: 1.7; }
  body.site-style-0c66156b2815 .kim-card li a{ color: var(--blue); font-weight: 800; }
  body.site-style-0c66156b2815 .kim-article .kim-card h2{ font-size: 22px; }
  body.site-style-0c66156b2815 .kim-lead{ font-size: 16px; border-left: 4px solid var(--blue); background: var(--blue-bg); padding: 13px 16px; border-radius: 0 8px 8px 0; }
  body.site-style-0c66156b2815 .kim-warning{ border-color: #ef4444; background: #fef2f2; }
  body.site-style-0c66156b2815 .kim-article-table{ table-layout: auto; }
  body.site-style-0c66156b2815 .kim-article-table th,body.site-style-0c66156b2815 .kim-article-table td{ white-space: normal; vertical-align: top; padding: 10px 12px; line-height: 1.45; }
  body.site-style-0c66156b2815 .kim-steps-list{ margin: 0; padding-left: 22px; color: var(--ink-2); line-height: 1.7; }
  body.site-style-0c66156b2815 .score-converter{ display: grid; grid-template-columns: minmax(220px, 1fr) 140px minmax(190px, .8fr); gap: 10px; align-items: center; margin-top: 14px; }
  body.site-style-0c66156b2815 .score-converter select,body.site-style-0c66156b2815 .score-converter input{ width: 100%; min-width: 0; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font: inherit; background: #fff; }
  body.site-style-0c66156b2815 .score-output{ font-size: 18px; font-weight: 800; color: #1b1b1b; }
  body.site-style-0c66156b2815 .score-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(54px, 1fr)); gap: 5px; margin-top: 12px; }
  body.site-style-0c66156b2815 .score-cell{ border: 1px solid var(--border); border-radius: 8px; padding: 5px 4px; text-align: center; background: #fff; font-variant-numeric: tabular-nums; }
  body.site-style-0c66156b2815 .score-cell .primary-score{ display: block; color: var(--muted); font-size: 11px; }
  body.site-style-0c66156b2815 .score-cell .test-score{ display: block; color: #1b1b1b; font-size: 13px; font-weight: 800; }
  body.site-style-0c66156b2815 .score-cell.threshold{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-0c66156b2815 .kim-qa .q{ margin: 16px 0 6px; color: var(--ink); font-size: 16px; font-weight: 800; }
  body.site-style-0c66156b2815 .kim-qa .a{ color: var(--ink-2); margin: 0; line-height: 1.65; }
  @media (max-width: 980px){body.site-style-0c66156b2815 .route27-steps{ grid-template-columns: repeat(2, 1fr); }
    body.site-style-0c66156b2815 .route27-head,body.site-style-0c66156b2815 .route27-save,body.site-style-0c66156b2815 .route27-two,body.site-style-0c66156b2815 .route27-pay-row,body.site-style-0c66156b2815 .route27-form,body.site-style-0c66156b2815 .route27-calendar-item,body.site-style-0c66156b2815 .route27-ai,body.site-style-0c66156b2815 .route27-test-results,body.site-style-0c66156b2815 .route27-rec-filters{ grid-template-columns: 1fr; }
    body.site-style-0c66156b2815 .route27-direction-options{ grid-template-columns: 1fr; }
    body.site-style-0c66156b2815 .route27-direction-option{ border-left: 0; border-top: 1px solid #d8e8ff; }
    body.site-style-0c66156b2815 .route27-direction-option:first-child{ border-top: 0; }
    body.site-style-0c66156b2815 .route27-progress{ display: inline-block; margin-bottom: 14px; }
    body.site-style-0c66156b2815 .route27-save button{ width: 100%; }
    body.site-style-0c66156b2815 .kim-steps{ grid-template-columns: 1fr 1fr; }
    body.site-style-0c66156b2815 .score-converter{ grid-template-columns: 1fr; }}

/* Consolidated page style 287fd34584f1. */
body.site-style-287fd34584f1{
    --green: #1a7f37; --green-bg: #e6f4ea;
    --red: #c0362c; --amber: #9a6700; --amber-bg: #fff8e1;
    --border: #e2e2e2; --muted: #6b7280; --bg: #fafafa;
    --blue: #1b6ef3; --blue-bg: #eaf2ff;
    --card: #fff; --line: #d8e8ff; --ink: #12233c; --ink-2: #566377; --ink-3: #9aa8bd;
    --blue-soft: #dcebfd; --warn-bg: #fff7e8; --warn-ink: #b45309; --ok-bg: #e8f8ef; --ok-ink: #168344;
    --shadow: 0 12px 28px rgba(15,41,66,.06);
  }
  body.site-style-287fd34584f1 *{ box-sizing: border-box; }
  body.site-style-287fd34584f1{
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    margin: 0; background: var(--bg); color: #1b1b1b; line-height: 1.5;
  }
  /* Не показываем домашнюю панель до восстановления маршрута из URL. */
  body.site-style-287fd34584f1.app-booting .panel{ visibility: hidden; }
  body.site-style-287fd34584f1 header{
    background: #fff; border-bottom: 1px solid var(--border);
    padding: 18px 28px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px;
  }
  body.site-style-287fd34584f1 header h1{ font-size: 18px; margin: 0; }
  body.site-style-287fd34584f1 header .meta{ color: var(--muted); font-size: 13px; }
  body.site-style-287fd34584f1 header{ display: block; padding: 14px 28px 18px; }
  body.site-style-287fd34584f1 .site-topbar{ display: flex; align-items: center; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--border); gap: 28px; }
  body.site-style-287fd34584f1 .site-logo{ display: flex; align-items: center; gap: 8px; text-decoration: none; color: #1b1b1b; font-weight: 700; font-size: 15px; }
  body.site-style-287fd34584f1 .site-logo img{ height: 30px; width: auto; border-radius: 6px; }
  body.site-style-287fd34584f1 .site-header-main{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }
  body.site-style-287fd34584f1 .site-topbar-left{ display: flex; align-items: center; gap: 28px; min-width: 0; width: 100%; }
  body.site-style-287fd34584f1 .site-nav{ display: flex; gap: 4px; align-items: center; flex-wrap: wrap; justify-content: space-between; flex: 1; }
  body.site-style-287fd34584f1 .site-footer{ background: #fff; border-top: 1px solid var(--border); padding: 26px 28px 32px; margin-top: 40px; }
  body.site-style-287fd34584f1 .site-footer-inner{ max-width: 1640px; margin: 0 auto; display: grid; gap: 14px; }
  body.site-style-287fd34584f1 .site-footer-brand{ display: flex; align-items: center; gap: 8px; color: #1b1b1b; text-decoration: none; font-weight: 700; font-size: 15px; }
  body.site-style-287fd34584f1 .site-footer-brand img{ height: 30px; width: auto; border-radius: 6px; }
  body.site-style-287fd34584f1 .site-footer-nav{ display: flex; flex-wrap: wrap; gap: 6px 22px; }
  body.site-style-287fd34584f1 .site-footer-nav a{ color: var(--muted); text-decoration: none; font-size: 14px; }
  body.site-style-287fd34584f1 .site-footer-nav a:hover{ color: var(--blue); }
  body.site-style-287fd34584f1 .site-footer-note{ margin: 0; color: var(--muted); font-size: 13px; }
  /* Общий отступ страницы увеличен (было 20px 16px 60px) -- по фидбоку
     "ощущение слипленности": больше воздуха по краям и снизу. */
  body.site-style-287fd34584f1 main{ max-width: 1200px; margin: 0 auto; padding: 28px 20px 72px; }
  body.site-style-287fd34584f1 .tabs{ display: flex; gap: 4px; margin-bottom: 20px; border-bottom: 1px solid var(--border); }
  body.site-style-287fd34584f1 .tab-btn{
    padding: 10px 16px; border: none; background: none; cursor: pointer;
    font-size: 14px; color: var(--muted); border-bottom: 2px solid transparent;
    text-decoration: none; display: inline-block;
  }
  body.site-style-287fd34584f1 .tab-btn.active{ color: #1b1b1b; border-bottom-color: #1b1b1b; font-weight: 600; }
  body.site-style-287fd34584f1 .tab-btn.cta-2027{
    background: #ffbf17; color: #15243a; border-bottom: 4px solid #f08a00; border-radius: 8px;
    font-weight: 800; margin-left: 8px; padding: 9px 18px;
  }
  body.site-style-287fd34584f1 .tab-btn.cta-2027.active{ border-bottom-color: #f08a00; color: #15243a; }
  @media (max-width: 800px){body.site-style-287fd34584f1 header{ padding: 14px 22px 18px; }
    body.site-style-287fd34584f1 .site-topbar,body.site-style-287fd34584f1 .site-topbar-left{ align-items: center; flex-wrap: wrap; gap: 10px 14px; }
    body.site-style-287fd34584f1 .site-nav{ flex: 1 0 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px 8px; justify-content: initial; }
    body.site-style-287fd34584f1 .site-nav .tab-btn{ text-align: center; padding: 9px 4px; }
    body.site-style-287fd34584f1 .site-nav .cta-2027{ justify-self: start; text-align: left; padding-left: 14px; padding-right: 14px; }
    body.site-style-287fd34584f1 .site-header-main{ align-items: flex-start; flex-direction: column; }
    body.site-style-287fd34584f1 .site-footer{ padding: 24px 22px 28px; }
    body.site-style-287fd34584f1 .site-footer-nav{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 14px; }}
  body.site-style-287fd34584f1 .panel{ display: none; }
  body.site-style-287fd34584f1 .panel.active{ display: block; }
  body.site-style-287fd34584f1 .search-row{ display: flex; gap: 8px; margin-bottom: 16px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 input[type=text],body.site-style-287fd34584f1 input[type=number]{
    flex: 1; min-width: 220px; padding: 10px 12px; border: 1px solid var(--border);
    border-radius: 8px; font-size: 14px;
  }
  body.site-style-287fd34584f1 button.primary{
    padding: 10px 18px; border: none; border-radius: 8px; background: #1b1b1b; color: #fff;
    font-size: 14px; cursor: pointer;
  }
  body.site-style-287fd34584f1 button.primary:hover{ background: #333; }
  body.site-style-287fd34584f1 button.secondary{
    padding: 8px 14px; border: 1px solid var(--border); border-radius: 8px; background: #fff;
    font-size: 13px; cursor: pointer; color: #1b1b1b;
  }
  body.site-style-287fd34584f1 button.secondary:hover{ background: #f3f3f3; }
  body.site-style-287fd34584f1 button:disabled{ opacity: 0.5; cursor: default; }
  body.site-style-287fd34584f1 .sort-row{ display: flex; align-items: center; gap: 8px; margin-bottom: 14px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .sort-row .lbl{ color: var(--muted); font-size: 13px; }
  body.site-style-287fd34584f1 .sort-row select{
    padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; background: #fff;
    font-size: 13px; color: #1b1b1b; max-width: 260px;
  }
  body.site-style-287fd34584f1 button.sort-btn.active{ background: var(--blue); color: #fff; border-color: var(--blue); }
  body.site-style-287fd34584f1 a.link-btn{
    display: inline-block; padding: 6px 12px; border: 1px solid var(--border); border-radius: 8px;
    font-size: 13px; color: #1b1b1b; text-decoration: none; background: #fff;
  }
  body.site-style-287fd34584f1 a.link-btn:hover{ background: #f3f3f3; }
  body.site-style-287fd34584f1 table{ width: 100%; border-collapse: collapse; background: #fff; border-radius: 10px; overflow: hidden; }
  body.site-style-287fd34584f1 th,body.site-style-287fd34584f1 td{ text-align: left; padding: 5px 5px; font-size: 13px; border-bottom: 1px solid var(--border); white-space: nowrap; }
  body.site-style-287fd34584f1 th{ background: #f3f3f3; font-weight: 600; color: #444; position: sticky; top: 0; }
  body.site-style-287fd34584f1 th.sortable{ cursor: pointer; user-select: none; }
  body.site-style-287fd34584f1 th.sortable:hover{ background: #e8e8e8; }
  body.site-style-287fd34584f1 th.sortable .arrow{ color: var(--muted); font-size: 11px; margin-left: 4px; }
  body.site-style-287fd34584f1 tr.consent-yes{ background: var(--green-bg); }
  body.site-style-287fd34584f1 tr.highlight-row{ background: var(--blue-bg) !important; outline: 2px solid var(--blue); outline-offset: -2px; }
  body.site-style-287fd34584f1 tr:hover{ background: #f5f5f5; }
  body.site-style-287fd34584f1 tr.consent-yes:hover{ background: #dcefe1; }
  body.site-style-287fd34584f1 tr.highlight-row:hover{ background: #dcebfd !important; }
  body.site-style-287fd34584f1 tr.own-row-toolbar td{ background: #dcebfd; border-top: none; padding: 8px 10px; white-space: normal; font-size: 13px; }
  body.site-style-287fd34584f1 .own-row-toolbar-inner{ display: flex; gap: 16px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 tr.own-row-toolbar label{ display: inline-flex; align-items: center; gap: 5px; cursor: pointer; }
  body.site-style-287fd34584f1 .badge{ display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 12px; font-weight: 600; }
  body.site-style-287fd34584f1 .badge.yes{ background: var(--green); color: #fff; }
  body.site-style-287fd34584f1 .badge.no{ background: #eee; color: var(--muted); }
  /* в таблице конкурсного списка бейдж согласия -- не таблетка вокруг слова,
     а сплошная квадратная полоса на всю ширину ячейки (поверх уже подсвеченной
     зелёным строки -- получается двухтоновая полоска) */
  body.site-style-287fd34584f1 .detail-table .badge{ display: block; width: 100%; box-sizing: border-box; text-align: center; border-radius: 0; padding: 4px 0; }
  body.site-style-287fd34584f1 .fresh-consent-badge{
    display: block; margin-top: 3px; font-size: 11px; font-weight: 600; color: var(--amber);
    background: var(--amber-bg); padding: 1px 3px; border-radius: 0; width: fit-content; white-space: nowrap;
  }
  body.site-style-287fd34584f1 .card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 16px; margin-bottom: 12px; }
  body.site-style-287fd34584f1 .card h3{ margin: 0 0 4px; font-size: 15px; }
  body.site-style-287fd34584f1 .card .sub{ color: var(--muted); font-size: 13px; margin-bottom: 10px; }
  body.site-style-287fd34584f1 .card .actions{ margin-top: 10px; }
  body.site-style-287fd34584f1 .empty{ color: var(--muted); padding: 24px; text-align: center; }
  body.site-style-287fd34584f1 .table-wrap{ overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; max-height: 70vh; overflow-y: auto; }
  body.site-style-287fd34584f1 .table-wrap.full-list{ max-height: none; overflow-y: visible; }
  body.site-style-287fd34584f1 .note{ font-size: 12px; color: var(--muted); margin-top: 8px; }
  body.site-style-287fd34584f1 .list-footer{ display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 14px; }
  body.site-style-287fd34584f1 .elsewhere-link{ color: var(--blue); text-decoration: none; }
  body.site-style-287fd34584f1 .elsewhere-link:hover{ text-decoration: underline; }
  body.site-style-287fd34584f1 .breadcrumb{ font-size: 13px; color: var(--muted); margin-bottom: 10px; }
  body.site-style-287fd34584f1 .breadcrumb a{ color: var(--blue); text-decoration: none; }
  body.site-style-287fd34584f1 .breadcrumb a:hover{ text-decoration: underline; }
  body.site-style-287fd34584f1 .back-link{ display: inline-block; margin-bottom: 14px; color: var(--blue); text-decoration: none; font-size: 14px; }
  body.site-style-287fd34584f1 .back-link:hover{ text-decoration: underline; }
  /* переключатель "Списки: Конкурсные / Подавших документы" -- по образцу
     самих Госуслуг (см. их страницу программы) */
  body.site-style-287fd34584f1 .list-toggle{ display: flex; gap: 8px; margin-bottom: 10px; }
  body.site-style-287fd34584f1 .list-toggle-btn{
    padding: 6px 14px; border-radius: 8px; border: 1px solid var(--border);
    color: var(--muted); text-decoration: none; font-size: 13px; font-weight: 600;
    background: var(--card-bg, #fff);
  }
  body.site-style-287fd34584f1 .list-toggle-btn:hover{ border-color: var(--blue); color: var(--blue); }
  body.site-style-287fd34584f1 .list-toggle-btn.active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-287fd34584f1 .detail-header h2{ margin: 0 0 6px; font-size: 22px; }
  body.site-style-287fd34584f1 .detail-header .university-link{ color: var(--blue); text-decoration: none; font-weight: 600; }
  body.site-style-287fd34584f1 .detail-header .university-link:hover{ text-decoration: underline; }
  body.site-style-287fd34584f1 .detail-header .sub{ color: var(--muted); font-size: 13px; margin-bottom: 16px; }
  body.site-style-287fd34584f1 .detail-stats{ display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
  body.site-style-287fd34584f1 .stat-box{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 12px 16px; min-width: 120px; }
  body.site-style-287fd34584f1 .stat-box .val{ font-size: 22px; font-weight: 700; }
  body.site-style-287fd34584f1 .stat-box .lbl{ font-size: 12px; color: var(--muted); margin-top: 2px; }
  body.site-style-287fd34584f1 .filter-row{ display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin-bottom: 14px; font-size: 13px; }
  body.site-style-287fd34584f1 .filter-row label{ display: flex; align-items: center; gap: 6px; cursor: pointer; }
  /* Excel-подобные фильтры по колонкам в конкурсном списке (задача #33) */
  body.site-style-287fd34584f1 .filter-th{ position: relative; }
  body.site-style-287fd34584f1 .col-filter-btn{ cursor: pointer; color: var(--muted); font-size: 11px; margin-left: 3px; user-select: none; }
  body.site-style-287fd34584f1 .col-filter-btn:hover{ color: var(--blue); }
  body.site-style-287fd34584f1 .col-filter-btn.active{ color: var(--blue); font-weight: 700; }
  body.site-style-287fd34584f1 .col-filter-popover{
    position: absolute; top: 100%; left: 0; z-index: 20; background: #fff; border: 1px solid var(--border);
    border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.12); padding: 8px; min-width: 200px; max-height: 280px;
    overflow-y: auto; font-weight: 400; text-transform: none; letter-spacing: normal; white-space: normal;
  }
  body.site-style-287fd34584f1 .col-filter-actions{ display: flex; gap: 8px; margin-bottom: 6px; border-bottom: 1px solid var(--border); padding-bottom: 6px; }
  body.site-style-287fd34584f1 .col-filter-actions button{ border: none; background: none; color: var(--blue); font-size: 12px; cursor: pointer; padding: 0; }
  body.site-style-287fd34584f1 .col-filter-actions button:hover{ text-decoration: underline; }
  body.site-style-287fd34584f1 .col-filter-options{ display: flex; flex-direction: column; gap: 4px; }
  body.site-style-287fd34584f1 .col-filter-option{ display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 400; cursor: pointer; white-space: nowrap; }
  body.site-style-287fd34584f1 #col-filters-reset-btn{ padding: 4px 10px; font-size: 12px; }
  body.site-style-287fd34584f1 .pagination{ display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 16px; }
  body.site-style-287fd34584f1 .pagination .page-info{ font-size: 13px; color: var(--muted); }
  body.site-style-287fd34584f1 .detail-table-wrap{ overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; }
  body.site-style-287fd34584f1 .detail-table-wrap table.detail-table{ table-layout: fixed; }
  /* Ширины колонок задаются динамически через <colgroup> в JS (tableColgroupHtml) --
     число колонок меняется (платные места добавляют колонку "Договор", а
     "Подавшие документы" не имеет ОВП/ВПП), фиксированные nth-child были некорректны. */
  body.site-style-287fd34584f1 .detail-table-wrap table.detail-table td{ white-space: normal; word-break: break-word; line-height: 1.35; }
  body.site-style-287fd34584f1 .detail-table-wrap table.detail-table .consent-target-inner{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body.site-style-287fd34584f1 .benefit-badge{ color: var(--blue); font-weight: 700; font-size: 12px; white-space: nowrap; }
  body.site-style-287fd34584f1 .benefit-badge.vpp{ color: var(--amber); }
  body.site-style-287fd34584f1 .benefit-badge.paid{ color: var(--green); }
  body.site-style-287fd34584f1 .leaving-link{ color: var(--amber); font-weight: 600; text-decoration: none; }
  body.site-style-287fd34584f1 .leaving-link:hover{ text-decoration: underline; }
  body.site-style-287fd34584f1 .estimate-tag{ color: var(--muted); font-weight: 400; font-size: 11px; }
  body.site-style-287fd34584f1 .consent-forecast{ font-size: 12px; color: var(--muted); margin-top: 3px; }
  body.site-style-287fd34584f1 .catalog-filters{
    background: #fff; border: 1px solid var(--border); border-radius: 10px;
    padding: 14px 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 12px;
  }
  body.site-style-287fd34584f1 .catalog-filter-group{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
  body.site-style-287fd34584f1 .catalog-filter-group .cf-title{ flex-basis: 100%; font-size: 12px; color: var(--muted); font-weight: 600; text-transform: uppercase; letter-spacing: .02em; }
  body.site-style-287fd34584f1 .catalog-filter-group .cf-chips{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-287fd34584f1 .catalog-filter-group .cf-level-groups{ flex-basis: 100%; display: flex; flex-direction: column; gap: 10px; }
  body.site-style-287fd34584f1 .cf-level-group-title{ color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; margin-bottom: 6px; }
  body.site-style-287fd34584f1 .catalog-chip{
    display: inline-flex; align-items: center; gap: 5px; padding: 5px 10px;
    border: 1px solid var(--border); border-radius: 999px; font-size: 13px; cursor: pointer; user-select: none; background: #fff;
  }
  body.site-style-287fd34584f1 .catalog-chip:has(input:checked){ background: var(--blue-bg); border-color: var(--blue); color: var(--blue); font-weight: 600; }
  body.site-style-287fd34584f1 .catalog-chip input{ margin: 0; }
  body.site-style-287fd34584f1 .cf-count{ color: var(--muted); font-size: 11px; }
  body.site-style-287fd34584f1 .catalog-chip:has(input:checked) .cf-count{ color: var(--blue); }
  body.site-style-287fd34584f1 .catalog-filter-cost{ padding-top: 2px; }
  body.site-style-287fd34584f1 .catalog-cost-lbl{ font-size: 13px; color: var(--muted); display: inline-flex; align-items: center; gap: 6px; }
  body.site-style-287fd34584f1 .catalog-cost-lbl input{ width: 120px; padding: 5px 8px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; }
  body.site-style-287fd34584f1 .catalog-filter-sort{ border-top: 1px solid var(--border); padding-top: 10px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .catalog-filter-sort select{ padding: 6px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; background: #fff; }
  body.site-style-287fd34584f1 .catalog-filter-section{ border-top: 1px solid var(--border); padding-top: 10px; }
  body.site-style-287fd34584f1 .catalog-filter-section:first-child{ border-top: none; padding-top: 0; }
  body.site-style-287fd34584f1 .catalog-filter-section summary{
    cursor: pointer; font-size: 14px; font-weight: 600; list-style: none; display: flex; align-items: center; gap: 8px;
  }
  body.site-style-287fd34584f1 .catalog-filter-section summary::-webkit-details-marker{ display: none; }
  body.site-style-287fd34584f1 .catalog-filter-section summary::before{ content: "▸"; color: var(--muted); font-size: 11px; transition: transform .15s; }
  body.site-style-287fd34584f1 .catalog-filter-section[open] summary::before{ transform: rotate(90deg); }
  body.site-style-287fd34584f1 .catalog-filter-section > *:not(summary){ margin-top: 10px; }
  body.site-style-287fd34584f1 .cfs-count{ color: var(--blue); font-size: 12px; font-weight: 600; }
  body.site-style-287fd34584f1 .catalog-direction-search{ display: flex; flex-direction: column; gap: 8px; }
  body.site-style-287fd34584f1 .direction-search-row{ display: flex; gap: 8px; }
  body.site-style-287fd34584f1 .direction-search-row .okso-search-wrap > input{
    width: 100%; box-sizing: border-box; padding: 6px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px;
  }
  body.site-style-287fd34584f1 .selected-chips{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-287fd34584f1 .selected-chip{
    display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px;
    background: var(--blue-bg); border: 1px solid var(--blue); border-radius: 999px; font-size: 12px; color: var(--blue); font-weight: 600;
  }
  body.site-style-287fd34584f1 .selected-chip .remove-x{ cursor: pointer; font-weight: 700; }
  /* Мульти-выбор направления с фильтром (2026-09-05) -- раньше был обычный
     native <input list="datalist">: клик по варианту сразу закрывал список
     и очищал поле, поэтому отметить несколько направлений подряд можно было
     только вводя название заново каждый раз. Теперь список -- свой div с
     чекбоксами, который не закрывается при клике -- можно отметить сколько
     угодно вариантов, не перепечатывая запрос. */
  body.site-style-287fd34584f1 .okso-search-wrap{ position: relative; flex: 1; }
  body.site-style-287fd34584f1 .okso-ms-dropdown{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.08); max-height: 280px; overflow-y: auto; z-index: 20; }
  body.site-style-287fd34584f1 .okso-ms-dropdown.open{ display: block; }
  body.site-style-287fd34584f1 .okso-ms-item{ display: flex; align-items: center; gap: 8px; padding: 8px 12px; cursor: pointer; font-size: 13px; }
  body.site-style-287fd34584f1 .okso-ms-item:hover{ background: var(--blue-bg); }
  body.site-style-287fd34584f1 .okso-ms-item input[type="checkbox"]{ flex: none; }
  body.site-style-287fd34584f1 .okso-ms-code{ color: var(--muted); font-size: 12px; }
  body.site-style-287fd34584f1 .okso-ms-empty,body.site-style-287fd34584f1 .okso-ms-more{ padding: 8px 12px; color: var(--muted); font-size: 12px; }
  body.site-style-287fd34584f1 .cf-note{ font-size: 12px; color: var(--muted); }
  body.site-style-287fd34584f1 .score-intro{ font-size: 13px; color: var(--muted); margin-bottom: 14px; line-height: 1.5; max-width: 720px; }
  body.site-style-287fd34584f1 .score-form{ display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-bottom: 14px; }
  body.site-style-287fd34584f1 .score-field{ display: flex; flex-direction: column; gap: 4px; }
  body.site-style-287fd34584f1 .score-field label{ font-size: 13px; color: var(--muted); }
  body.site-style-287fd34584f1 .score-field input{
    padding: 7px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 14px;
  }
  body.site-style-287fd34584f1 .score-actions{ display: flex; gap: 10px; margin-bottom: 16px; }
  body.site-style-287fd34584f1 .score-result-uni{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; }
  body.site-style-287fd34584f1 .score-result-uni .sru-name{ font-weight: 700; font-size: 15px; margin-bottom: 8px; }
  body.site-style-287fd34584f1 .score-result-row{
    display: flex; justify-content: space-between; align-items: center; gap: 10px;
    font-size: 13px; padding: 7px 8px; border-radius: 6px; cursor: pointer; border: 1px solid var(--border); margin-top: 6px; background: var(--bg);
  }
  body.site-style-287fd34584f1 .score-result-row:hover{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-287fd34584f1 .score-result-row .srr-info{ color: #1b1b1b; }
  body.site-style-287fd34584f1 .score-result-row .srr-nums{ color: var(--muted); white-space: nowrap; }
  body.site-style-287fd34584f1 .catalog-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 18px; margin-bottom: 20px; }
  body.site-style-287fd34584f1 .program-card{
    background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 20px;
    display: flex; flex-direction: column; gap: 12px; transition: box-shadow .15s, border-color .15s;
  }
  body.site-style-287fd34584f1 .program-card:hover{ border-color: var(--blue); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
  /* Вся карточка вуза кликабельна -- ведёт на список направлений этого вуза
     (кнопка "Показать направления" убрана как избыточная). */
  body.site-style-287fd34584f1 .program-card-link{ cursor: pointer; }
  body.site-style-287fd34584f1 .program-card-link:hover .pc-name{ color: var(--blue); }
  body.site-style-287fd34584f1 .pc-top{ display: flex; gap: 10px; align-items: flex-start; }
  body.site-style-287fd34584f1 .pc-icon{
    flex: 0 0 auto; width: 38px; height: 38px; border-radius: 10px; color: #fff;
    display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px; letter-spacing: .01em;
  }
  body.site-style-287fd34584f1 .pc-titlewrap{ flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
  body.site-style-287fd34584f1 .pc-name{ font-size: 15px; font-weight: 700; line-height: 1.3; }
  body.site-style-287fd34584f1 .pc-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-287fd34584f1 .pc-badge{ font-size: 11px; padding: 3px 8px; background: var(--bg); border: 1px solid var(--border); border-radius: 999px; color: var(--muted); font-weight: 600; }
  body.site-style-287fd34584f1 .pc-stats-line{ font-size: 12px; color: var(--muted); }
  body.site-style-287fd34584f1 .card-accent{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-287fd34584f1 .accent-chip{ font-size: 12px; font-weight: 700; padding: 6px 10px; border-radius: 8px; }
  body.site-style-287fd34584f1 .accent-budget{ background: var(--green-bg); color: var(--green); }
  body.site-style-287fd34584f1 .accent-cost{ background: var(--blue-bg); color: var(--blue); }
  /* ---- Подбор ВУза: группировка по шансам ---- */
  body.site-style-287fd34584f1 .cf-checkbox-group{ display: flex; gap: 14px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .pick-tier-section{ margin: 22px 0 10px; }
  body.site-style-287fd34584f1 .pick-tier-title{ font-size: 15px; font-weight: 700; display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
  body.site-style-287fd34584f1 .pick-tier-dot{ width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
  body.site-style-287fd34584f1 .pick-tier-high .pick-tier-dot{ background: var(--green); }
  body.site-style-287fd34584f1 .pick-tier-medium .pick-tier-dot{ background: var(--amber); }
  body.site-style-287fd34584f1 .pick-tier-low .pick-tier-dot{ background: var(--red); }
  body.site-style-287fd34584f1 span.pick-tier-high{ color: var(--green); font-weight: 600; }
  body.site-style-287fd34584f1 span.pick-tier-medium{ color: var(--amber); font-weight: 600; }
  body.site-style-287fd34584f1 span.pick-tier-low{ color: var(--red); font-weight: 600; }
  body.site-style-287fd34584f1 .pick-tier-count{ color: var(--muted); font-weight: 500; font-size: 13px; }
  body.site-style-287fd34584f1 .pick-uni-card{ border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; background: #fff; }
  body.site-style-287fd34584f1 .pick-uni-head{ display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
  body.site-style-287fd34584f1 .pick-uni-name{ font-weight: 700; font-size: 15px; }
  body.site-style-287fd34584f1 .pick-uni-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-287fd34584f1 .pick-match-row{ display: flex; flex-direction: column; align-items: stretch; gap: 4px; padding: 10px 0; border-top: 1px solid var(--border); cursor: pointer; }
  body.site-style-287fd34584f1 .pick-match-row:hover{ background: var(--blue-bg); }
  body.site-style-287fd34584f1 .pick-match-row:first-of-type{ border-top: none; }
  body.site-style-287fd34584f1 .pick-match-direction{ font-weight: 700; font-size: 14px; }
  body.site-style-287fd34584f1 .pick-match-program{ font-size: 13px; color: #444; margin-top: 1px; }
  body.site-style-287fd34584f1 .pick-match-level-row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 3px; }
  body.site-style-287fd34584f1 .pick-match-exams{ color: var(--muted); font-size: 12px; }
  body.site-style-287fd34584f1 .pick-avg-score-row{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .pick-avg-score-row input{ width: 100px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; }
  body.site-style-287fd34584f1 .pick-match-tier-badge{ font-size: 11px; font-weight: 700; padding: 3px 9px; border-radius: 999px; white-space: nowrap; }
  body.site-style-287fd34584f1 .pick-match-tier-high{ background: var(--green-bg); color: var(--green); }
  body.site-style-287fd34584f1 .pick-match-tier-medium{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-287fd34584f1 .pick-match-tier-low{ background: #fbe9e7; color: var(--red); }
  body.site-style-287fd34584f1 .pick-match-level{ color: var(--muted); font-size: 13px; }
  body.site-style-287fd34584f1 .pick-match-nums{ color: var(--muted); font-size: 12px; white-space: nowrap; }
  body.site-style-287fd34584f1 .pick-heuristic-note{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }
  /* Богаче карточка -- перенос части элементов дизайна карточки конкурента
     (Поступашкин), обсуждение 2026-09-05: профиль отдельной строкой, разбор
     экзаменов с минимумами по группам, числовой отступ ("не хватает N" /
     "запас +N") рядом с текстовым тиром, БВИ-предупреждение, три среза
     проходного (по заявлениям / по согласиям / по конкурсам) и процент
     шансов как отдельный бейдж. "мин. 2025" сознательно не добавлен --
     исторические данные за прошлый цикл приёма в проекте не собирались
     (см. коммент в начале api/pick.php). */
  body.site-style-287fd34584f1 .pick-match-top{ display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
  body.site-style-287fd34584f1 .pick-match-content{ flex: 1; min-width: 0; }
  body.site-style-287fd34584f1 .pick-match-profile{ color: var(--blue); font-size: 13px; margin-top: 2px; }
  body.site-style-287fd34584f1 .pick-match-exams-detailed{ color: var(--muted); font-size: 12px; margin-top: 5px; }
  body.site-style-287fd34584f1 .pick-match-bvi-warning{ color: var(--red); font-size: 12px; margin-top: 5px; font-weight: 600; }
  body.site-style-287fd34584f1 .pick-match-score-line{ font-size: 13px; margin-top: 7px; }
  body.site-style-287fd34584f1 .pick-match-score-ok{ color: var(--green); font-weight: 700; }
  body.site-style-287fd34584f1 .pick-match-score-bad{ color: var(--red); font-weight: 700; }
  body.site-style-287fd34584f1 .pick-match-cutoffs-row{ display: flex; flex-wrap: wrap; gap: 6px; margin-top: 7px; }
  body.site-style-287fd34584f1 .pick-match-cutoff-chip{ font-size: 11px; color: var(--muted); background: var(--blue-bg); border: 1px solid var(--border); border-radius: 6px; padding: 3px 8px; white-space: nowrap; }
  body.site-style-287fd34584f1 .pick-match-cutoff-chip b{ color: #222; font-weight: 700; }
  body.site-style-287fd34584f1 .pick-match-percent{ flex: none; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px 12px; border-radius: 10px; min-width: 56px; }
  body.site-style-287fd34584f1 .pick-match-percent-value{ font-size: 19px; font-weight: 700; line-height: 1.1; }
  body.site-style-287fd34584f1 .pick-match-percent-label{ font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; margin-top: 2px; white-space: nowrap; }
  body.site-style-287fd34584f1 .pick-match-percent-high{ background: var(--green-bg); color: var(--green); }
  body.site-style-287fd34584f1 .pick-match-percent-medium{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-287fd34584f1 .pick-match-percent-low{ background: #fbe9e7; color: var(--red); }
  body.site-style-287fd34584f1 .pick-match-bottom-row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 7px; }
  body.site-style-287fd34584f1 .pick-paywall{
    background: #fff; border: 1px solid var(--blue); border-radius: 10px; padding: 14px 16px;
    margin: 0 0 14px; display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap;
  }
  body.site-style-287fd34584f1 .pick-paywall-title{ font-weight: 800; font-size: 15px; margin-bottom: 2px; }
  body.site-style-287fd34584f1 .pick-paywall-text{ color: var(--muted); font-size: 13px; }
  body.site-style-287fd34584f1 .pick-paywall-actions{ display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .pick-payment-note{ color: var(--green); font-size: 13px; font-weight: 700; margin-bottom: 12px; }
  body.site-style-287fd34584f1 .directions-stat-intro{ font-size: 13px; color: var(--muted); margin: 0 0 14px; max-width: 860px; }
  body.site-style-287fd34584f1 .directions-filter-card{
    background: #fff; border: 1px solid var(--border); border-radius: 12px;
    padding: 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 12px;
  }
  body.site-style-287fd34584f1 .directions-filter-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  body.site-style-287fd34584f1 .directions-filter-field{ display: flex; flex-direction: column; gap: 6px; min-width: 0; }
  body.site-style-287fd34584f1 .directions-filter-field label,body.site-style-287fd34584f1 .directions-filter-title{
    font-size: 12px; color: var(--muted); font-weight: 700; text-transform: uppercase; letter-spacing: .02em;
  }
  body.site-style-287fd34584f1 .directions-filter-field > input,body.site-style-287fd34584f1 .directions-filter-field .okso-search-wrap > input,body.site-style-287fd34584f1 .directions-filter-field .competition-city-wrap > input{
    width: 100%; min-width: 0; padding: 9px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px;
  }
  body.site-style-287fd34584f1 #panel-directions .okso-search-wrap{ display: flex; flex: none; flex-direction: column; gap: 6px; }
  body.site-style-287fd34584f1 #panel-directions .directions-filter-field input[type="text"],body.site-style-287fd34584f1 #panel-directions .directions-filter-field input[type="number"]{
    flex: none; height: 42px; line-height: 1.2;
  }
  body.site-style-287fd34584f1 #panel-directions .competition-city-wrap{
    flex: none; height: 42px; min-height: 42px; align-self: stretch;
  }
  body.site-style-287fd34584f1 #panel-directions .competition-city-suggest{
    top: calc(100% + 6px);
  }
  body.site-style-287fd34584f1 #panel-directions .okso-ms-dropdown{
    position: static; left: auto; right: auto; top: auto; width: 100%;
    box-shadow: none; max-height: 260px; margin-top: 0; z-index: 5;
  }
  body.site-style-287fd34584f1 #panel-directions .okso-ms-item{
    color: #1b1b1b; background: #fff; line-height: 1.35; min-height: 38px;
    justify-content: flex-start; white-space: normal;
  }
  body.site-style-287fd34584f1 #panel-directions .okso-ms-item input[type="checkbox"]{
    width: auto; min-width: 0; padding: 0; flex: 0 0 auto;
  }
  body.site-style-287fd34584f1 #panel-directions .okso-ms-item span:first-of-type{ flex: 1; min-width: 0; }
  body.site-style-287fd34584f1 #panel-directions .okso-ms-code{ flex: none; }
  body.site-style-287fd34584f1 .directions-filter-row{ display: flex; flex-wrap: wrap; align-items: flex-start; gap: 10px; }
  body.site-style-287fd34584f1 .directions-filter-row .catalog-filter-group{ flex: 1 1 240px; }
  body.site-style-287fd34584f1 #panel-directions .directions-filter-row .catalog-filter-group{ align-self: flex-start; }
  body.site-style-287fd34584f1 .directions-filter-actions{ display: flex; gap: 10px; flex-wrap: wrap; align-items: center; border-top: 1px solid var(--border); padding-top: 12px; }
  body.site-style-287fd34584f1 .directions-summary{ display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
  body.site-style-287fd34584f1 .directions-summary-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 12px; }
  body.site-style-287fd34584f1 .directions-summary-card .val{ font-size: 20px; font-weight: 800; color: var(--blue); line-height: 1.1; }
  body.site-style-287fd34584f1 .directions-summary-card .lbl{ font-size: 11px; color: var(--muted); margin-top: 4px; }
  body.site-style-287fd34584f1 .directions-view-controls{
    display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
    background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 10px 12px; margin-bottom: 12px;
  }
  body.site-style-287fd34584f1 .directions-control-group{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .directions-control-label{ color: var(--muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; }
  body.site-style-287fd34584f1 .directions-toggle-btn{
    border: 1px solid var(--border); background: #fff; color: #1b1b1b; border-radius: 8px;
    padding: 7px 10px; font-size: 13px; font-weight: 600; cursor: pointer;
  }
  body.site-style-287fd34584f1 .directions-toggle-btn.active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-287fd34584f1 .directions-sort-select{ padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; background: #fff; font-size: 13px; }
  body.site-style-287fd34584f1 .directions-stat-table td{ white-space: normal; vertical-align: top; }
  body.site-style-287fd34584f1 .directions-stat-table tbody tr{ cursor: pointer; }
  body.site-style-287fd34584f1 .directions-group-row td{
    background: var(--blue-bg); color: var(--blue); font-weight: 800; font-size: 13px;
    cursor: default; border-top: 1px solid var(--border);
  }
  body.site-style-287fd34584f1 .directions-row-title{ font-weight: 700; }
  body.site-style-287fd34584f1 .directions-row-code{ color: var(--blue); font-size: 12px; font-weight: 700; }
  body.site-style-287fd34584f1 .directions-row-sub{ color: var(--muted); font-size: 12px; margin-top: 2px; }
  body.site-style-287fd34584f1 .directions-row-exams{ color: var(--muted); font-size: 12px; max-width: 260px; }
  body.site-style-287fd34584f1 .directions-competition-strong{ color: var(--red); font-weight: 800; }
  body.site-style-287fd34584f1 .directions-competition-mid{ color: var(--amber); font-weight: 800; }
  body.site-style-287fd34584f1 .directions-competition-ok{ color: var(--green); font-weight: 800; }
  body.site-style-287fd34584f1 .directions-result-note{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }
  @media (max-width: 900px){body.site-style-287fd34584f1 .directions-filter-grid{ grid-template-columns: 1fr; }
    body.site-style-287fd34584f1 .directions-summary{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
  body.site-style-287fd34584f1 .direction-card{ background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 20px; display: flex; flex-direction: column; gap: 10px; transition: box-shadow .15s, border-color .15s; }
  body.site-style-287fd34584f1 .direction-card:hover{ border-color: var(--blue); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
  body.site-style-287fd34584f1 .dc-code{ font-size: 12px; color: var(--muted); }
  body.site-style-287fd34584f1 .dc-name{ font-size: 15px; font-weight: 700; line-height: 1.3; }
  /* Вся карточка направления в общей сетке кликабельна -- ведёт на отдельную
     страницу направления (showDirectionDetail), а не сразу в список. */
  body.site-style-287fd34584f1 .direction-card-link{ cursor: pointer; }
  body.site-style-287fd34584f1 .direction-card-link:hover .dc-name{ color: var(--blue); }
  /* Заголовок отдельной страницы направления (showDirectionDetail) -- по
     образцу карточки "Специальность в вузе" на Госуслугах: крупный белый
     блок, код мелко сверху, название крупным заголовком, бейджи и сводка
     ниже. */
  body.site-style-287fd34584f1 .direction-detail-head{ background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin-bottom: 32px; }
  body.site-style-287fd34584f1 .direction-detail-head .dc-code{ font-size: 13px; }
  body.site-style-287fd34584f1 .direction-detail-head h2{ margin: 6px 0 18px; font-size: 26px; font-weight: 800; line-height: 1.3; }
  body.site-style-287fd34584f1 .direction-detail-head .dc-badges{ margin-bottom: 14px; gap: 8px; }
  body.site-style-287fd34584f1 .direction-detail-head .dc-stats{ font-size: 14px; line-height: 1.6; }
  body.site-style-287fd34584f1 #direction-detail h3{ font-size: 22px; font-weight: 800; margin: 4px 0 20px; }
  body.site-style-287fd34584f1 .dc-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-287fd34584f1 .dc-stats{ font-size: 12px; color: var(--muted); }
  /* Средний уровень: программы внутри направления (по полю program_names) --
     аккордеон по образцу Госуслуг (карточка "Специальность в вузе" ->
     "Образовательные программы" -> раскрывающийся список). Раньше все
     group_id направления шли плоским списком без этого уровня. Отступы
     увеличены (было 14/16/10px) -- по фидбеку "ощущение слипленности". */
  body.site-style-287fd34584f1 .dc-programs{ display: flex; flex-direction: column; gap: 20px; margin-top: 4px; }
  body.site-style-287fd34584f1 .dc-program{ border: 1px solid var(--border); border-radius: 16px; overflow: hidden; background: #fff; }
  body.site-style-287fd34584f1 .dc-program-header{
    display: flex; justify-content: space-between; align-items: center; gap: 12px;
    padding: 20px 24px; cursor: pointer; font-size: 15px;
  }
  body.site-style-287fd34584f1 .dc-program-header:hover{ background: var(--blue-bg); }
  body.site-style-287fd34584f1 .dc-program-title{ font-weight: 700; color: #1b1b1b; font-size: 16px; }
  body.site-style-287fd34584f1 .dc-program-nums{ color: var(--muted); white-space: nowrap; font-size: 13px; }
  /* Круглая кнопка-шеврон, как раскрывающиеся стрелки на карточках программ
     у Госуслуг. */
  body.site-style-287fd34584f1 .dc-program-chevron{
    display: flex; align-items: center; justify-content: center; flex: none;
    width: 30px; height: 30px; border-radius: 50%; background: var(--blue-bg);
    color: var(--blue); font-size: 13px; transition: transform .15s;
  }
  body.site-style-287fd34584f1 .dc-program.expanded .dc-program-chevron{ transform: rotate(180deg); }
  body.site-style-287fd34584f1 .dc-program-body{ display: none; padding: 4px 24px 24px; border-top: 1px solid var(--border); }
  body.site-style-287fd34584f1 .dc-program.expanded .dc-program-body{ display: block; padding-top: 22px; }
  body.site-style-287fd34584f1 .dc-program-badges{ margin-bottom: 20px; }
  /* Переключатель "Бюджетные/Платные" внутри раскрытой программы -- по
     образцу сегмент-контрола на Госуслугах (светло-синяя капсула, активная
     вкладка белая). Показывается только если у программы есть оба варианта
     финансирования. */
  body.site-style-287fd34584f1 .dc-cost-tabs{ display: inline-flex; background: var(--blue-bg); border-radius: 10px; padding: 3px; margin-bottom: 16px; gap: 2px; }
  body.site-style-287fd34584f1 .dc-cost-tab{
    border: none; background: none; padding: 8px 18px; border-radius: 8px; font-size: 13px; font-weight: 600;
    color: var(--blue); cursor: pointer;
  }
  body.site-style-287fd34584f1 .dc-cost-tab.active{ background: #fff; color: #1b1b1b; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
  body.site-style-287fd34584f1 .dc-cost-panel + .dc-cost-panel{ margin-top: 0; }
  body.site-style-287fd34584f1 .dc-variants{ display: flex; flex-direction: column; gap: 16px; margin-top: 4px; }
  body.site-style-287fd34584f1 .dc-variants.nested{ margin-top: 0; }
  /* Карточки категорий мест (Основные/Отдельная квота/Особая квота/...) --
     по образцу карточек "Конкурсные места" на Госуслугах: заголовок жирным
     слева, справа -- ДВЕ отдельные ссылки на списки (Конкурсные / Подавших
     документы), а не единый клик по всей карточке с списком по умолчанию. */
  body.site-style-287fd34584f1 .dc-variant{
    display: flex; justify-content: space-between; align-items: center; gap: 20px;
    font-size: 13px; padding: 18px 22px; border: 1px solid var(--border); border-radius: 12px;
    background: #fff;
  }
  body.site-style-287fd34584f1 .dc-variant:hover{ border-color: var(--border); }
  body.site-style-287fd34584f1 .dv-title{ color: #1b1b1b; font-weight: 700; font-size: 15px; }
  body.site-style-287fd34584f1 .dv-sub{ color: var(--muted); font-size: 12px; margin-top: 5px; line-height: 1.5; }
  body.site-style-287fd34584f1 .dv-links{ display: flex; flex-direction: column; gap: 9px; align-items: flex-end; white-space: nowrap; flex: none; }
  body.site-style-287fd34584f1 .dv-link{ color: var(--blue); font-size: 13px; font-weight: 600; text-decoration: none; }
  body.site-style-287fd34584f1 .dv-link:hover{ text-decoration: underline; }
  body.site-style-287fd34584f1 tr.boundary-row td{ text-align: center; font-size: 12px; font-weight: 700; padding: 6px 10px; white-space: normal; }
  body.site-style-287fd34584f1 tr.boundary-ovp td{ background: var(--blue-bg); color: var(--blue); border-top: 2px solid var(--blue); border-bottom: 2px solid var(--blue); }
  body.site-style-287fd34584f1 tr.boundary-vpp td{ background: var(--amber-bg); color: var(--amber); border-top: 2px dashed var(--amber); border-bottom: 2px dashed var(--amber); }
  body.site-style-287fd34584f1 .university-cell-link{ color: var(--blue); text-decoration: none; }
  body.site-style-287fd34584f1 .university-cell-link:hover{ text-decoration: underline; }
  body.site-style-287fd34584f1 .share-link-box{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; background: var(--blue-bg); border: 1px solid var(--border); border-radius: 8px; padding: 10px 14px; margin: 12px 0; font-size: 13px; }
  body.site-style-287fd34584f1 .share-link-box .lbl{ color: var(--muted); white-space: nowrap; }
  body.site-style-287fd34584f1 .share-link-box input{ flex: 1; min-width: 180px; border: 1px solid var(--border); border-radius: 6px; background: #fff; font-size: 13px; padding: 4px 8px; color: #1b1b1b; }
  body.site-style-287fd34584f1 .share-link-box .copied-note{ color: var(--blue); font-weight: 600; white-space: nowrap; }
  body.site-style-287fd34584f1 .recent-ids-lbl{ font-size: 13px; color: var(--muted); margin: 10px 0 6px; }
  body.site-style-287fd34584f1 .recent-ids-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 4px; }
  body.site-style-287fd34584f1 .recent-id-chip{ border: 1px solid var(--border); background: #fff; border-radius: 999px; padding: 5px 14px; font-size: 13px; cursor: pointer; color: var(--blue); }
  body.site-style-287fd34584f1 .recent-id-chip:hover{ background: var(--blue-bg); border-color: var(--blue); }
  body.site-style-287fd34584f1 .entrance-tests-box{ margin-bottom: 14px; }
  body.site-style-287fd34584f1 .entrance-tests-details summary{ cursor: pointer; font-size: 13px; color: var(--muted); font-weight: 600; margin-bottom: 6px; }
  body.site-style-287fd34584f1 .entrance-tests-details summary .count{ font-weight: 400; }
  body.site-style-287fd34584f1 .entrance-type-group{ margin-top: 10px; }
  body.site-style-287fd34584f1 .entrance-type-group:first-of-type{ margin-top: 8px; }
  body.site-style-287fd34584f1 .entrance-type-group .type-lbl{ font-size: 12px; color: var(--muted); font-weight: 600; margin-bottom: 4px; }
  body.site-style-287fd34584f1 .entrance-tests-list{ display: flex; flex-wrap: wrap; gap: 8px; }
  body.site-style-287fd34584f1 .entrance-test-chip{ border: 1px solid var(--border); border-radius: 8px; padding: 6px 12px; font-size: 13px; background: #fff; }
  body.site-style-287fd34584f1 #university-header{ margin-bottom: 12px; font-size: 15px; }
  body.site-style-287fd34584f1 #university-header{ background: rgba(255, 224, 102, .20); border: 1px solid rgba(220, 170, 0, .28); border-radius: 10px; padding: 16px 18px; }
  body.site-style-287fd34584f1 #uni-official-info{ background: transparent; border: 0; padding: 0; }
  body.site-style-287fd34584f1 .uni-contact-row{ display: block; margin: 4px 0; }
  body.site-style-287fd34584f1 .uni-doc-row{ display: block; margin: 6px 0; }
  body.site-style-287fd34584f1 .uni-doc-title{ display: block; margin-bottom: 3px; }
  body.site-style-287fd34584f1 .uni-doc-links{ display: block; }
  body.site-style-287fd34584f1 .uni-inline-controls{ display: none; margin: 0 0 10px; padding: 8px 10px; background: #fff; border: 1px solid var(--border); border-radius: 8px; }
  body.site-style-287fd34584f1 .uni-inline-controls.open{ display: flex; }
  body.site-style-287fd34584f1 .uni-head-action{ border: 0; background: transparent; color: var(--blue); cursor: pointer; font: inherit; padding: 0; text-decoration: underline; }
  body.site-style-287fd34584f1 .uni-header-menu{ display: inline-block; position: relative; }
  body.site-style-287fd34584f1 .uni-header-menu summary{ display: inline; cursor: pointer; color: var(--blue); text-decoration: underline; }
  body.site-style-287fd34584f1 .uni-header-popover{ position: absolute; z-index: 5; top: 22px; left: 0; min-width: 210px; max-height: 240px; overflow: auto; padding: 8px; background: #fff; border: 1px solid var(--border); box-shadow: 0 6px 18px rgba(0,0,0,.12); font-weight: 400; }
  body.site-style-287fd34584f1 .uni-header-popover label{ display: block; white-space: nowrap; padding: 4px; }
  body.site-style-287fd34584f1 .uni-site-url{ color: var(--blue); text-decoration: underline; overflow-wrap: anywhere; }
  body.site-style-287fd34584f1 .uni-doc-link{ color: var(--blue); text-decoration: underline; margin-right: 12px; }
  body.site-style-287fd34584f1 #uni-official-info .entrance-test-chip{ background: rgba(255, 224, 102, .20); border-color: rgba(220, 170, 0, .30); }
  body.site-style-287fd34584f1 #uni-official-info .entrance-test-chip:hover{ background: rgba(255, 224, 102, .42); }
  body.site-style-287fd34584f1 #university-header a{ color: var(--blue); text-decoration: none; }
  body.site-style-287fd34584f1 #university-header a:hover{ text-decoration: underline; }
  body.site-style-287fd34584f1 .level-grid{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
  body.site-style-287fd34584f1 .level-card{ border: 1px solid var(--border); border-radius: 10px; padding: 16px 20px; cursor: pointer; background: #fff; min-width: 220px; }
  body.site-style-287fd34584f1 .level-card:hover{ border-color: var(--blue); }
  body.site-style-287fd34584f1 .level-card .name{ font-weight: 700; font-size: 16px; margin-bottom: 4px; }
  body.site-style-287fd34584f1 .level-card .count{ color: var(--muted); font-size: 13px; }
  body.site-style-287fd34584f1 tr.direction-row td{ background: var(--blue-bg); font-weight: 700; padding: 8px 10px; border-top: 2px solid var(--border); white-space: normal; }
  body.site-style-287fd34584f1 tr.direction-row .count{ color: var(--muted); font-weight: 500; font-size: 12px; }
  body.site-style-287fd34584f1 #programs-table.uni-mode{ table-layout: fixed; }
  body.site-style-287fd34584f1 #programs-table.uni-mode th:nth-child(1),body.site-style-287fd34584f1 #programs-table.uni-mode td:nth-child(1){ width: 38%; }
  body.site-style-287fd34584f1 #programs-table.uni-mode th:nth-child(2),body.site-style-287fd34584f1 #programs-table.uni-mode td:nth-child(2){ width: 11%; }
  body.site-style-287fd34584f1 #programs-table.uni-mode th:nth-child(3),body.site-style-287fd34584f1 #programs-table.uni-mode td:nth-child(3){ width: 9%; }
  body.site-style-287fd34584f1 #programs-table.uni-mode th:nth-child(4),body.site-style-287fd34584f1 #programs-table.uni-mode td:nth-child(4){ width: 20%; }
  body.site-style-287fd34584f1 #programs-table.uni-mode th:nth-child(5),body.site-style-287fd34584f1 #programs-table.uni-mode td:nth-child(5){ width: 11%; }
  body.site-style-287fd34584f1 #programs-table.uni-mode th:nth-child(6),body.site-style-287fd34584f1 #programs-table.uni-mode td:nth-child(6){ width: 11%; }
  body.site-style-287fd34584f1 #programs-table.uni-mode td{ white-space: normal; word-break: break-word; line-height: 1.35; }
  body.site-style-287fd34584f1 #programs-table.uni-mode td.prog-name-cell{ padding: 8px 12px; }
  body.site-style-287fd34584f1 #programs-table.uni-mode .prog-name-inner{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body.site-style-287fd34584f1 .home-banners{ display: flex; flex-direction: column; gap: 10px; margin: 20px 0 0; }
  body.site-style-287fd34584f1 .home-banner{ display: block; text-align: center; padding: 14px 20px; border-radius: 10px; text-decoration: none; font-weight: 700; font-size: 14px; cursor: pointer; }
  body.site-style-287fd34584f1 .home-banner-blue{ background: var(--blue); color: #fff; }
  body.site-style-287fd34584f1 .home-banner-blue:hover{ background: #1558c9; }
  body.site-style-287fd34584f1 .home-banner-amber{ background: var(--amber-bg); color: var(--amber); border: 1px solid #f3d98b; }
  body.site-style-287fd34584f1 .home-banner-amber:hover{ background: #ffedb8; }
  body.site-style-287fd34584f1 .home-hero{ padding: 40px 8px 28px; text-align: left; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .home-hero-text{ flex: 1 1 420px; min-width: 280px; }
  body.site-style-287fd34584f1 .home-hero-badge{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 13px; font-weight: 600; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
  body.site-style-287fd34584f1 .home-hero-cta{ display: inline-block; margin-top: 16px; background: #F7B500; color: #152A54; font-weight: 700; font-size: 15px; padding: 12px 24px; border-radius: 10px; text-decoration: none; }
  body.site-style-287fd34584f1 .home-hero-cta:hover{ background: #e0a400; }
  body.site-style-287fd34584f1 .home-promo27{ background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin: 8px 0 40px; }
  body.site-style-287fd34584f1 .home-promo27-badge{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 13px; font-weight: 600; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
  body.site-style-287fd34584f1 .home-promo27-title{ font-size: 30px; font-weight: 800; margin: 0 0 10px; }
  body.site-style-287fd34584f1 .home-promo27-title span{ color: var(--blue); }
  body.site-style-287fd34584f1 .home-promo27-sub{ font-size: 16px; color: var(--muted); margin: 0 0 28px; max-width: 640px; }
  body.site-style-287fd34584f1 .home-promo27-card{ display: flex; gap: 28px; align-items: center; background: var(--bg); border-radius: 14px; padding: 24px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .home-promo27-image{ flex: 0 0 260px; border-radius: 12px; overflow: hidden; }
  body.site-style-287fd34584f1 .home-promo27-image img{ width: 100%; height: auto; display: block; border-radius: 12px; }
  body.site-style-287fd34584f1 .home-promo27-text{ flex: 1 1 360px; min-width: 260px; }
  body.site-style-287fd34584f1 .home-promo27-text p{ font-size: 15px; line-height: 1.55; color: #333; margin: 0 0 20px; }
  body.site-style-287fd34584f1 .home-promo27-text p b{ color: #1a1a1a; }
  body.site-style-287fd34584f1 .home-promo27-actions{ display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .home-promo27-cta{ display: inline-block; background: var(--blue); color: #fff; font-weight: 700; font-size: 15px; padding: 12px 24px; border-radius: 10px; text-decoration: none; }
  body.site-style-287fd34584f1 .home-promo27-cta:hover{ background: #1558c9; }
  body.site-style-287fd34584f1 .home-promo27-link{ font-size: 14px; color: var(--blue); text-decoration: none; font-weight: 600; }
  body.site-style-287fd34584f1 .home-promo27-link:hover{ text-decoration: underline; }
  @media (max-width: 640px){body.site-style-287fd34584f1 .home-promo27-card{ flex-direction: column; } body.site-style-287fd34584f1 .home-promo27-image{ width: 100%; flex-basis: auto; }}
  body.site-style-287fd34584f1 .home-hero-owl{ flex: 0 0 440px; max-width: 46%; }
  body.site-style-287fd34584f1 .owl-hero-photo{ width: 100%; height: auto; display: block; border-radius: 16px; }
  @media (max-width: 900px){body.site-style-287fd34584f1 .home-hero-owl{ flex: 1 1 100%; max-width: 380px; order: -1; margin: 0 auto; }}
  body.site-style-287fd34584f1 .home-hero-title{ font-size: 36px; line-height: 1.15; margin: 0 0 14px; font-weight: 800; }
  body.site-style-287fd34584f1 .home-hero-accent{ background: #ffe082; padding: 2px 10px; border-radius: 6px; text-transform: uppercase; }
  body.site-style-287fd34584f1 .home-hero-sub{ font-size: 16px; color: var(--muted); max-width: 620px; margin: 0 0 24px; }
  body.site-style-287fd34584f1 .home-search-row{ max-width: 480px; }
  body.site-style-287fd34584f1 .home-stats{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: 12px; overflow: hidden; margin: 8px 0 36px; }
  body.site-style-287fd34584f1 .home-stat{ background: #fff; padding: 18px 20px; }
  body.site-style-287fd34584f1 a.home-stat-link{ display: block; text-decoration: none; color: inherit; cursor: pointer; }
  body.site-style-287fd34584f1 a.home-stat-link:hover{ background: var(--bg); }
  body.site-style-287fd34584f1 .home-stat-n{ font-size: 24px; font-weight: 800; color: var(--blue); }
  body.site-style-287fd34584f1 .home-stat-l{ font-size: 13px; color: var(--muted); margin-top: 2px; }
  body.site-style-287fd34584f1 .home-section-title{ font-size: 22px; font-weight: 800; margin: 40px 0 18px; }
  body.site-style-287fd34584f1 .home-tools-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
  body.site-style-287fd34584f1 .home-tool-card{ display: block; border: 1px solid var(--border); border-radius: 12px; padding: 18px; text-decoration: none; color: inherit; background: #fff; cursor: pointer; position: relative; transition: box-shadow .15s, transform .15s; }
  body.site-style-287fd34584f1 .home-tool-card:hover{ box-shadow: 0 4px 14px rgba(0,0,0,.08); transform: translateY(-1px); }
  body.site-style-287fd34584f1 .home-tool-card.pending{ opacity: .6; cursor: default; }
  body.site-style-287fd34584f1 .home-tool-card.pending:hover{ box-shadow: none; transform: none; }
  body.site-style-287fd34584f1 .home-tool-icon{ width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 20px; margin-bottom: 12px; }
  body.site-style-287fd34584f1 .home-tool-title{ font-weight: 700; font-size: 15px; margin-bottom: 6px; }
  body.site-style-287fd34584f1 .home-tool-sub{ font-size: 13px; color: var(--muted); line-height: 1.4; }
  body.site-style-287fd34584f1 .home-tool-badge{ position: absolute; top: 14px; right: 14px; background: var(--amber-bg); color: var(--amber); font-size: 11px; font-weight: 700; padding: 3px 8px; border-radius: 999px; }
  body.site-style-287fd34584f1 .home-steps{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
  body.site-style-287fd34584f1 .home-step{ border: 1px solid var(--border); border-radius: 12px; padding: 20px; background: #fff; }
  body.site-style-287fd34584f1 .home-step-n{ width: 32px; height: 32px; border-radius: 50%; background: #ffe082; display: flex; align-items: center; justify-content: center; font-weight: 800; margin-bottom: 12px; }
  body.site-style-287fd34584f1 .home-step-title{ font-weight: 700; margin-bottom: 6px; }
  body.site-style-287fd34584f1 .home-step-sub{ font-size: 13px; color: var(--muted); line-height: 1.4; }
  body.site-style-287fd34584f1 .home-feedback{ display: flex; justify-content: space-between; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 12px; padding: 20px 24px; margin-top: 40px; background: #fff; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .home-feedback-title{ font-weight: 700; }
  body.site-style-287fd34584f1 .home-feedback-sub{ font-size: 13px; color: var(--muted); margin-top: 2px; }
  @media (max-width: 720px){body.site-style-287fd34584f1 .home-stats{ grid-template-columns: repeat(2, 1fr); }
    body.site-style-287fd34584f1 .home-steps{ grid-template-columns: 1fr; }
    body.site-style-287fd34584f1 .home-hero-title{ font-size: 28px; }}
  body.site-style-287fd34584f1 .orders-note{ color: var(--muted); font-size: 14px; max-width: 760px; line-height: 1.5; margin: 0 0 24px; }
  body.site-style-287fd34584f1 .orders-filters{ display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 18px; }
  body.site-style-287fd34584f1 .orders-filter-chip{ border: 1px solid var(--border); border-radius: 999px; padding: 10px 16px; font-size: 13px; font-weight: 600; background: #fff; cursor: pointer; color: var(--muted); }
  body.site-style-287fd34584f1 .orders-filter-chip.active{ border-color: var(--blue); color: var(--blue); background: var(--blue-bg); }
  body.site-style-287fd34584f1 .orders-search{ margin-bottom: 18px; max-width: 360px; }
  body.site-style-287fd34584f1 .orders-search input{ width: 100%; padding: 10px 14px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; }
  body.site-style-287fd34584f1 .orders-list{ display: flex; flex-direction: column; gap: 10px; }
  body.site-style-287fd34584f1 .orders-row{ display: flex; justify-content: space-between; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 10px; padding: 14px 18px; background: #fff; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .orders-row-name{ font-weight: 700; font-size: 14px; }
  body.site-style-287fd34584f1 .orders-row-meta{ font-size: 12px; color: var(--muted); margin-top: 3px; }
  body.site-style-287fd34584f1 .orders-row-badge{ font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
  body.site-style-287fd34584f1 .orders-badge-collected{ background: var(--green-bg); color: var(--green); }
  body.site-style-287fd34584f1 .orders-badge-in-progress{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-287fd34584f1 .orders-badge-not-started{ background: #f1f1f1; color: var(--muted); }
  body.site-style-287fd34584f1 .orders-footer{ margin-top: 18px; text-align: center; }
  body.site-style-287fd34584f1 .orders-calendar{ border: 1px solid var(--border); border-radius: 12px; padding: 20px 22px; margin-bottom: 22px; background: #fff; }
  body.site-style-287fd34584f1 .orders-calendar-title{ font-weight: 700; font-size: 15px; margin: 0 0 14px; display: flex; align-items: center; gap: 8px; }
  body.site-style-287fd34584f1 .orders-calendar-item{ display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; padding: 10px 0; border-top: 1px solid var(--border); }
  body.site-style-287fd34584f1 .orders-calendar-item:first-of-type{ border-top: none; padding-top: 0; }
  body.site-style-287fd34584f1 .orders-calendar-item-text{ font-size: 14px; line-height: 1.5; }
  body.site-style-287fd34584f1 .orders-calendar-badge{ flex-shrink: 0; font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
  body.site-style-287fd34584f1 .orders-calendar-badge-done{ background: #f1f1f1; color: var(--muted); }
  body.site-style-287fd34584f1 .orders-calendar-badge-active{ background: var(--green-bg); color: var(--green); }
  body.site-style-287fd34584f1 .orders-calendar-source{ font-size: 12px; color: var(--muted); margin-top: 12px; line-height: 1.5; }
  body.site-style-287fd34584f1 .admission-cards{ display: flex; gap: 14px; flex-wrap: wrap; margin: 0 0 26px; }
  body.site-style-287fd34584f1 .admission-card{ flex: 1 1 260px; border: 1px solid var(--border); border-radius: 12px; padding: 18px 20px; background: #fff; cursor: pointer; text-decoration: none; color: inherit; display: block; transition: border-color .15s; }
  body.site-style-287fd34584f1 .admission-card:hover{ border-color: var(--blue); }
  body.site-style-287fd34584f1 .admission-card.active{ border-color: var(--blue); background: var(--blue-bg); cursor: default; }
  body.site-style-287fd34584f1 .admission-card-title{ font-size: 13px; font-weight: 400; color: var(--muted); text-transform: none; letter-spacing: normal; margin-bottom: 4px; }
  body.site-style-287fd34584f1 .admission-card-number{ font-size: 34px; font-weight: 800; line-height: 1.08; margin-bottom: 4px; }
  body.site-style-287fd34584f1 .admission-card-meta{ font-size: 12px; color: var(--muted); line-height: 1.5; }
  body.site-style-287fd34584f1 #uni-stats-cards{ flex-wrap: nowrap; }
  body.site-style-287fd34584f1 #uni-stats-cards .admission-card{ flex: 1 1 0; min-width: 0; }
  body.site-style-287fd34584f1 .admission-overview-table{ table-layout: fixed; width: 100%; border-collapse: collapse; font-size: 13px; }
  body.site-style-287fd34584f1 .admission-overview-table th,body.site-style-287fd34584f1 .admission-overview-table td{ padding: 8px 8px; border-bottom: 1px solid var(--border); vertical-align: top; white-space: normal; word-wrap: break-word; overflow-wrap: break-word; }
  body.site-style-287fd34584f1 .admission-overview-table th{ text-align: left; border-bottom: 2px solid var(--border); color: var(--muted); font-weight: 700; font-size: 11px; text-transform: uppercase; }
  body.site-style-287fd34584f1 .admission-overview-table th:nth-child(1),body.site-style-287fd34584f1 .admission-overview-table td:nth-child(1){ width: 38%; }
  body.site-style-287fd34584f1 .admission-overview-table th:nth-child(2),body.site-style-287fd34584f1 .admission-overview-table td:nth-child(2){ width: 7%; }
  body.site-style-287fd34584f1 .admission-overview-table th:nth-child(3),body.site-style-287fd34584f1 .admission-overview-table td:nth-child(3){ width: 8%; }
  body.site-style-287fd34584f1 .admission-overview-table th:nth-child(4),body.site-style-287fd34584f1 .admission-overview-table td:nth-child(4){ width: 9%; }
  body.site-style-287fd34584f1 .admission-overview-table th:nth-child(5),body.site-style-287fd34584f1 .admission-overview-table td:nth-child(5){ width: 11%; }
  body.site-style-287fd34584f1 .admission-overview-table th:nth-child(6),body.site-style-287fd34584f1 .admission-overview-table td:nth-child(6){ width: 9%; }
  body.site-style-287fd34584f1 .admission-overview-table th:nth-child(7),body.site-style-287fd34584f1 .admission-overview-table td:nth-child(7){ width: 11%; text-align: right; }
  body.site-style-287fd34584f1 .admission-overview-table td:nth-child(1) a{ display: block; }
  body.site-style-287fd34584f1 .admission-overview-table tr:hover td{ background: var(--blue-bg); }
  body.site-style-287fd34584f1 .table-scroll{ overflow-x: auto; }
  body.site-style-287fd34584f1 #panel-competition .orders-search{ display: flex; flex-wrap: wrap; gap: 10px; align-items: center; max-width: none; }
  body.site-style-287fd34584f1 #panel-competition .orders-search input[type=text]{ flex: 1 1 220px; }
  body.site-style-287fd34584f1 .content-page{ font-size: 14px; color: #1b1b1b; }
  body.site-style-287fd34584f1 .content-page h2,body.site-style-287fd34584f1 .content-page h3{ letter-spacing: 0; }
  body.site-style-287fd34584f1 .admission26-hero{ padding: 18px 0 28px; }
  body.site-style-287fd34584f1 .admission26-kicker{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 12px; font-weight: 700; padding: 5px 12px; border-radius: 999px; margin-bottom: 12px; }
  body.site-style-287fd34584f1 .admission26-title{ font-size: 28px; line-height: 1.2; margin: 0 0 10px; font-weight: 800; max-width: 900px; }
  body.site-style-287fd34584f1 .admission26-title span{ color: var(--blue); }
  body.site-style-287fd34584f1 .admission26-lead{ color: var(--muted); font-size: 14px; line-height: 1.5; max-width: 980px; margin: 0 0 8px; }
  body.site-style-287fd34584f1 .admission26-note{ color: #92a0b4; font-size: 12px; font-weight: 600; margin: 0 0 16px; }
  body.site-style-287fd34584f1 .admission26-alert{ border: 1px solid #f3c85d; background: #fffaf0; border-radius: 10px; padding: 14px 16px; margin: 18px 0; box-shadow: none; }
  body.site-style-287fd34584f1 .admission26-alert-top{ color: #b75b17; font-size: 12px; font-weight: 800; text-transform: uppercase; margin-bottom: 4px; }
  body.site-style-287fd34584f1 .admission26-alert-title{ font-size: 16px; font-weight: 800; color: #15243a; margin-bottom: 4px; }
  body.site-style-287fd34584f1 .admission26-alert-sub{ color: var(--muted); font-size: 13px; line-height: 1.45; }
  body.site-style-287fd34584f1 .admission26-stats{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0; }
  body.site-style-287fd34584f1 .admission26-stat{ border: 1px solid #f3c85d; background: #fffaf4; border-radius: 10px; padding: 16px; }
  body.site-style-287fd34584f1 .admission26-stat.green{ border-color: #9bdfb4; background: #eaf8ef; }
  body.site-style-287fd34584f1 .admission26-stat-label{ color: #b75b17; font-size: 12px; font-weight: 800; text-transform: uppercase; margin-bottom: 6px; }
  body.site-style-287fd34584f1 .admission26-stat.green .admission26-stat-label{ color: var(--green); }
  body.site-style-287fd34584f1 .admission26-stat-number{ font-size: 22px; font-weight: 800; color: #15243a; line-height: 1.1; margin-bottom: 4px; }
  body.site-style-287fd34584f1 .admission26-stat-text{ color: var(--muted); font-size: 13px; font-weight: 600; }
  body.site-style-287fd34584f1 .admission26-search-box{ border: 1px solid var(--blue); border-radius: 10px; padding: 16px; background: #fff; margin: 20px 0 14px; }
  body.site-style-287fd34584f1 .admission26-search-title{ font-size: 18px; font-weight: 800; margin-bottom: 6px; color: #15243a; }
  body.site-style-287fd34584f1 .admission26-search-sub{ color: var(--muted); font-size: 14px; line-height: 1.45; margin-bottom: 12px; }
  body.site-style-287fd34584f1 .admission26-search-status{ display: inline-block; max-width: 100%; background: var(--green-bg); color: var(--green); border: 1px solid #9bdfb4; border-radius: 8px; padding: 7px 10px; font-size: 12px; font-weight: 700; margin-bottom: 12px; }
  body.site-style-287fd34584f1 .admission26-search-row{ display: flex; gap: 10px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .admission26-search-row input{ flex: 0 1 260px; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-weight: 600; }
  body.site-style-287fd34584f1 .admission26-search-row button{ border-radius: 8px; box-shadow: none; }
  body.site-style-287fd34584f1 .admission26-links{ display: flex; flex-direction: column; gap: 8px; margin: 14px 0 24px; }
  body.site-style-287fd34584f1 .admission26-links a{ color: var(--blue); text-decoration: none; font-weight: 700; }
  body.site-style-287fd34584f1 .admission26-links a:hover{ text-decoration: underline; }
  body.site-style-287fd34584f1 .admission26-toolbar{ display: grid; grid-template-columns: minmax(180px, 280px) minmax(240px, 1fr) auto; gap: 12px; align-items: center; margin: 24px 0 16px; }
  body.site-style-287fd34584f1 .admission26-toolbar input{ min-width: 0; width: 100%; background: #fff; }
  body.site-style-287fd34584f1 .admission26-total{ color: #92a0b4; font-size: 13px; font-weight: 800; white-space: nowrap; }
  body.site-style-287fd34584f1 .admission26-table-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 14px; box-shadow: none; }
  body.site-style-287fd34584f1 #admission26-list .admission-overview-table th,body.site-style-287fd34584f1 #admission26-list .admission-overview-table td{ padding: 8px; }
  body.site-style-287fd34584f1 #admission26-list .admission-overview-table td{ font-size: 13px; }
  body.site-style-287fd34584f1 .admission26-num-orange{ color: #c85e20; font-weight: 800; }
  body.site-style-287fd34584f1 .admission26-num-green{ color: var(--green); font-weight: 900; }
  body.site-style-287fd34584f1 .admission26-link{ color: var(--blue); text-decoration: none; font-weight: 700; white-space: nowrap; }
  body.site-style-287fd34584f1 .admission26-help{ margin: 24px 0 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
  body.site-style-287fd34584f1 .admission26-help h3{ color: #15243a; font-size: 18px; margin: 0 0 8px; }
  @media (max-width: 820px){body.site-style-287fd34584f1 .admission26-title{ font-size: 24px; }
    body.site-style-287fd34584f1 .admission26-stats{ grid-template-columns: 1fr; }
    body.site-style-287fd34584f1 .admission26-toolbar{ grid-template-columns: 1fr; }}
  body.site-style-287fd34584f1 .competition-city-wrap{ position: relative; flex: 1 1 220px; min-width: 160px; }
  body.site-style-287fd34584f1 .competition-city-input{ width: 100%; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; box-sizing: border-box; }
  body.site-style-287fd34584f1 .competition-city-suggest{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.08); max-height: 260px; overflow-y: auto; z-index: 20; }
  body.site-style-287fd34584f1 .competition-city-suggest.open{ display: block; }
  body.site-style-287fd34584f1 .competition-city-suggest-item{ padding: 8px 12px; cursor: pointer; font-size: 14px; }
  body.site-style-287fd34584f1 .competition-city-suggest-item:hover,body.site-style-287fd34584f1 .competition-city-suggest-item.active{ background: var(--blue-bg); }
  body.site-style-287fd34584f1 .uni-row-code{ font-size: 11px; color: var(--muted); font-weight: 600; }
  body.site-style-287fd34584f1 .direction-group-toggle{ border: 0; background: transparent; color: var(--muted); padding: 0 4px 0 0; margin: 0; min-width: 14px; font-size: 12px; line-height: 1; vertical-align: 1px; cursor: pointer; }
  body.site-style-287fd34584f1 .direction-group-label{ font-size: 10px; color: var(--muted); margin-top: 2px; white-space: normal; line-height: 1.2; width: calc(100vw - 390px); max-width: none; overflow-wrap: anywhere; word-break: break-word; }
  body.site-style-287fd34584f1 #uni-filter-place .cf-chips{ display: inline; }
  body.site-style-287fd34584f1 #uni-filter-place .filter-row-break{ margin-left: 0; }
  body.site-style-287fd34584f1 #uni-filter-place .uni-paid-cost,body.site-style-287fd34584f1 #uni-filter-place .uni-filter-reset-inline{ display: inline-flex; vertical-align: middle; margin: 8px 8px 0 0; }
  body.site-style-287fd34584f1 .uni-back-link{ display: block; font-size: 13px; color: var(--muted); text-decoration: none; margin-bottom: 8px; }
  body.site-style-287fd34584f1 .uni-back-link:hover{ text-decoration: underline; }
  body.site-style-287fd34584f1 .uni-title{ font-size: 28px; font-weight: 800; margin: 0; line-height: 1.25; }
  body.site-style-287fd34584f1 .university-groups-table tbody tr{ cursor: pointer; }
  body.site-style-287fd34584f1 .university-groups-table tbody tr:hover td{ background: var(--blue-bg); }
  body.site-style-287fd34584f1 .university-groups-table{ font-size: 12px; }
  body.site-style-287fd34584f1 .university-groups-table th{ font-size: 10px; }
  body.site-style-287fd34584f1 .university-groups-table th:nth-child(1),body.site-style-287fd34584f1 .university-groups-table td:nth-child(1){ width: 24%; white-space: normal; }
  body.site-style-287fd34584f1 .university-groups-table th:nth-child(2),body.site-style-287fd34584f1 .university-groups-table td:nth-child(2){ width: 38%; white-space: nowrap; }
  body.site-style-287fd34584f1 .university-groups-table th:nth-child(3),body.site-style-287fd34584f1 .university-groups-table td:nth-child(3){ width: 10%; }
  body.site-style-287fd34584f1 .university-groups-table th:nth-child(4),body.site-style-287fd34584f1 .university-groups-table td:nth-child(4){ width: 14%; }
  body.site-style-287fd34584f1 .university-groups-table th:nth-child(5),body.site-style-287fd34584f1 .university-groups-table td:nth-child(5){ width: 14%; }
  body.site-style-287fd34584f1 .simple-page{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 22px; margin-bottom: 18px; }
  body.site-style-287fd34584f1 .simple-page h2{ margin: 0 0 8px; font-size: 28px; line-height: 1.2; }
  body.site-style-287fd34584f1 .simple-page p{ color: var(--muted); margin: 0 0 16px; max-width: 760px; }
  body.site-style-287fd34584f1 .simple-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px; }
  body.site-style-287fd34584f1 .simple-card{ display: block; background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 16px; color: inherit; text-decoration: none; }
  body.site-style-287fd34584f1 .simple-card:hover{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-287fd34584f1 .simple-card-title{ font-weight: 800; margin-bottom: 6px; }
  body.site-style-287fd34584f1 .simple-card-sub{ color: var(--muted); font-size: 13px; }
  body.site-style-287fd34584f1 .simple-actions{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
  body.site-style-287fd34584f1 .simple-cta{ display: inline-block; padding: 11px 18px; border-radius: 8px; background: var(--blue); color: #fff; text-decoration: none; font-weight: 800; }
  body.site-style-287fd34584f1 .simple-cta.yellow{ background: #ffbf17; color: #15243a; border-bottom: 4px solid #f08a00; }
  body.site-style-287fd34584f1 .route27{ display: flex; flex-direction: column; gap: 18px; padding: 18px 0 48px; font-size: 14px; }
  body.site-style-287fd34584f1 .route27-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 18px; box-shadow: none; }
  body.site-style-287fd34584f1 .route27-main{ border: 1px solid var(--blue); background: #fff; }
  body.site-style-287fd34584f1 .route27-save{ display: grid; grid-template-columns: minmax(260px, 1fr) auto; gap: 10px; align-items: start; width: 100%; margin: 0 0 16px; padding: 12px; background: #f4f8ff; border: 1px solid #d8e8ff; border-radius: 10px; }
  body.site-style-287fd34584f1 .route27-save.paid{ background: rgba(232,248,239,.74); border-color: #9bdfb4; }
  body.site-style-287fd34584f1 .route27-save input{ width: 100%; min-width: 0; padding: 10px 12px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; background: #fff; }
  body.site-style-287fd34584f1 .route27-save button{ padding: 10px 16px; border: none; border-radius: 8px; background: var(--blue); color: #fff; font-size: 14px; font-weight: 700; cursor: pointer; white-space: nowrap; }
  body.site-style-287fd34584f1 .route27-save.paid button{ background: var(--green); }
  body.site-style-287fd34584f1 .route27-save-hint{ grid-column: 1 / -1; color: var(--muted); font-size: 13px; text-align: left; }
  body.site-style-287fd34584f1 .route27-save.paid .route27-save-hint{ color: var(--green); font-weight: 800; }
  body.site-style-287fd34584f1 .route27-link-box{ grid-column: 1 / -1; display: none; background: #fff; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 13px; color: #24364f; overflow-wrap: anywhere; text-align: left; }
  body.site-style-287fd34584f1 .route27-save.saved .route27-link-box{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .route27-save.paid .route27-link-box{ border-color: #9bdfb4; }
  body.site-style-287fd34584f1 .route27-account-url{ min-width: 0; flex: 1 1 360px; overflow-wrap: anywhere; }
  body.site-style-287fd34584f1 .route27-access-badge{ display: inline-flex; align-items: center; margin-left: 8px; padding: 3px 8px; border-radius: 999px; background: #dcebfd; color: var(--blue); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; font-size: 12px; font-weight: 800; vertical-align: middle; }
  body.site-style-287fd34584f1 .route27-save.paid .route27-access-badge{ background: var(--green-bg); color: var(--green); }
  body.site-style-287fd34584f1 .route27-head{ display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; align-items: start; }
  body.site-style-287fd34584f1 .route27-kicker{ font-size: 14px; font-weight: 800; color: #15243a; margin-bottom: 4px; }
  body.site-style-287fd34584f1 .route27-title{ font-size: 22px; line-height: 1.25; font-weight: 800; margin: 0 0 6px; color: #12233c; }
  body.site-style-287fd34584f1 .route27-sub{ color: var(--muted); font-size: 14px; line-height: 1.45; margin: 0 0 14px; }
  body.site-style-287fd34584f1 .route27-progress{ min-width: 124px; text-align: center; background: var(--blue); color: #fff; border-radius: 10px; padding: 12px 14px; font-weight: 700; font-size: 12px; }
  body.site-style-287fd34584f1 .route27-progress-n{ font-size: 24px; line-height: 1; }
  body.site-style-287fd34584f1 .route27-steps{ display: grid; grid-template-columns: repeat(8, minmax(100px, 1fr)); gap: 10px; }
  body.site-style-287fd34584f1 .route27-step{ border: 1px solid #d8e8ff; background: #fff; border-radius: 8px; padding: 10px; text-align: center; min-height: 74px; cursor: pointer; }
  body.site-style-287fd34584f1 .route27-step.active{ border: 1px solid var(--blue); }
  body.site-style-287fd34584f1 .route27-step-num{ width: 24px; height: 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: var(--blue-bg); color: var(--blue); font-weight: 800; margin-bottom: 5px; font-size: 12px; }
  body.site-style-287fd34584f1 .route27-step.active .route27-step-num{ background: var(--blue); color: #fff; }
  body.site-style-287fd34584f1 .route27-step-title{ font-size: 12px; font-weight: 800; color: #3d4b63; }
  body.site-style-287fd34584f1 .route27-step-pct{ color: #92a0b4; font-size: 11px; font-weight: 700; }
  body.site-style-287fd34584f1 .route27-section-title{ font-size: 20px; margin: 0 0 6px; color: #12233c; font-weight: 800; }
  body.site-style-287fd34584f1 .route27-subhead{ font-size: 14px; margin: 18px 0 10px; color: #12233c; font-weight: 800; }
  body.site-style-287fd34584f1 #route27-interests-section{ scroll-margin-top: 110px; }
  body.site-style-287fd34584f1 .route27-stage-tag{ display: inline-block; background: var(--blue-bg); color: var(--blue); border-radius: 999px; padding: 5px 10px; font-size: 12px; font-weight: 800; margin-bottom: 10px; }
  body.site-style-287fd34584f1 .route27-two{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .9fr); gap: 22px; align-items: start; }
  body.site-style-287fd34584f1 .route27-card ul{ margin: 10px 0 0; padding-left: 20px; color: var(--muted); line-height: 1.5; }
  body.site-style-287fd34584f1 .route27-aside{ border-left: 3px solid var(--blue); padding-left: 16px; color: #566377; }
  body.site-style-287fd34584f1 .route27-checklist{ margin-top: 20px; border-top: 1px dashed #d8e8ff; }
  body.site-style-287fd34584f1 .route27-task{ display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px dashed #d8e8ff; color: #3d4b63; font-weight: 600; }
  body.site-style-287fd34584f1 .route27-task label{ display: flex; align-items: center; gap: 10px; cursor: pointer; }
  body.site-style-287fd34584f1 .route27-task input{ width: 16px; height: 16px; }
  body.site-style-287fd34584f1 .route27-mini-btn{ border: none; border-radius: 8px; background: var(--blue-bg); color: var(--blue); padding: 7px 10px; font-weight: 700; text-decoration: none; white-space: nowrap; font-size: 13px; }
  body.site-style-287fd34584f1 .route27-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
  body.site-style-287fd34584f1 .route27-test-results{ grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
  body.site-style-287fd34584f1 .route27-tile{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 12px; background: #fbfdff; }
  body.site-style-287fd34584f1 .route27-tile-title{ font-weight: 800; color: #12233c; margin-bottom: 6px; }
  body.site-style-287fd34584f1 .route27-muted{ color: var(--muted); font-size: 13px; line-height: 1.45; }
  body.site-style-287fd34584f1 .route27-pay{ border: 1px solid var(--blue); background: #fff; }
  body.site-style-287fd34584f1 .route27-pay-row{ display: grid; grid-template-columns: minmax(220px, 1fr) auto auto; gap: 12px; align-items: center; margin-top: 16px; }
  body.site-style-287fd34584f1 form.route27-pay-row{ margin-top: 16px; }
  body.site-style-287fd34584f1 .route27-pay-row input,body.site-style-287fd34584f1 .route27-form input,body.site-style-287fd34584f1 .route27-form select{ min-width: 0; width: 100%; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-size: 14px; background: #fff; }
  body.site-style-287fd34584f1 .route27-blue-btn{ display: inline-block; border: none; border-radius: 8px; background: var(--blue); color: #fff; padding: 10px 16px; font-weight: 700; text-decoration: none; cursor: pointer; font-size: 14px; }
  body.site-style-287fd34584f1 .route27-program{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 12px; margin-top: 10px; }
  body.site-style-287fd34584f1 .route27-program-head{ display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
  body.site-style-287fd34584f1 .route27-program-title{ font-weight: 800; color: #12233c; }
  body.site-style-287fd34584f1 .route27-recommendations{ margin-top: 22px; }
  body.site-style-287fd34584f1 .route27-rec-filters{ background: #f4f8ff; border-radius: 10px; padding: 12px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
  body.site-style-287fd34584f1 .route27-rec-filter{ display: flex; flex-direction: column; gap: 5px; min-width: 0; }
  body.site-style-287fd34584f1 .route27-rec-filter label{ color: var(--muted); font-size: 12px; font-weight: 800; }
  body.site-style-287fd34584f1 .route27-rec-filter select,body.site-style-287fd34584f1 .route27-rec-filter input{ width: 100%; border: 1px solid #d8e8ff; border-radius: 8px; padding: 9px 10px; font-size: 13px; background: #fff; }
  body.site-style-287fd34584f1 .route27-rec-filter .competition-city-wrap{ flex: 0 0 auto; min-width: 0; width: 100%; }
  body.site-style-287fd34584f1 .route27-rec-actions{ grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-style-287fd34584f1 .route27-rec-cards{ display: grid; gap: 10px; margin-top: 12px; }
  body.site-style-287fd34584f1 .route27-rec-card{ border: 1px solid #d8e8ff; border-radius: 10px; padding: 12px; background: #fff; }
  body.site-style-287fd34584f1 .route27-rec-card-head{ display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
  body.site-style-287fd34584f1 .route27-rec-card-title{ font-weight: 800; color: #12233c; }
  body.site-style-287fd34584f1 .route27-rec-meta{ color: var(--muted); font-size: 13px; margin-top: 4px; line-height: 1.45; }
  body.site-style-287fd34584f1 .route27-rec-reason{ background: #dcebfd; color: var(--blue); border-radius: 8px; padding: 8px 10px; font-size: 12px; font-weight: 700; margin-top: 10px; }
  body.site-style-287fd34584f1 .route27-auto-filters{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
  body.site-style-287fd34584f1 .route27-auto-filters span{ border: 1px solid #d8e8ff; background: #fff; color: var(--blue); border-radius: 999px; padding: 6px 10px; font-size: 12px; font-weight: 800; }
  body.site-style-287fd34584f1 .route27-direction-group{ border: 1px solid #d8e8ff; border-radius: 10px; background: #fff; overflow: hidden; }
  body.site-style-287fd34584f1 .route27-direction-head{ display: flex; justify-content: space-between; gap: 14px; padding: 12px 14px; background: #f4f8ff; border-bottom: 1px solid #d8e8ff; }
  body.site-style-287fd34584f1 .route27-direction-code{ color: var(--blue); font-size: 12px; font-weight: 800; margin-bottom: 2px; }
  body.site-style-287fd34584f1 .route27-direction-title{ color: #12233c; font-size: 15px; font-weight: 800; line-height: 1.25; }
  body.site-style-287fd34584f1 .route27-direction-reason{ color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 4px; }
  body.site-style-287fd34584f1 .route27-direction-count{ color: var(--green); font-size: 12px; font-weight: 800; white-space: nowrap; }
  body.site-style-287fd34584f1 .route27-direction-options{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
  body.site-style-287fd34584f1 .route27-direction-option{ padding: 12px 14px; border-left: 1px solid #d8e8ff; }
  body.site-style-287fd34584f1 .route27-direction-option:first-child{ border-left: 0; }
  body.site-style-287fd34584f1 .route27-direction-option .route27-pill{ margin-bottom: 8px; }
  body.site-style-287fd34584f1 .route27-option-title{ color: #12233c; font-weight: 800; font-size: 13px; line-height: 1.25; }
  body.site-style-287fd34584f1 .route27-option-meta{ color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 4px; }
  body.site-style-287fd34584f1 .route27-option-stats{ display: flex; flex-wrap: wrap; gap: 6px; margin: 9px 0; color: #3d4b63; font-size: 12px; font-weight: 700; }
  body.site-style-287fd34584f1 .route27-map-head{ display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 22px; }
  body.site-style-287fd34584f1 .route27-map-score{ display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-size: 13px; font-weight: 700; }
  body.site-style-287fd34584f1 .route27-map-score input{ width: 120px; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; font-size: 13px; }
  body.site-style-287fd34584f1 .route27-map-legend{ display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 10px; }
  body.site-style-287fd34584f1 .route27-map-legend span{ border-radius: 999px; padding: 5px 9px; font-size: 12px; font-weight: 800; }
  body.site-style-287fd34584f1 .route27-map-dream{ background: #fff1df; }
  body.site-style-287fd34584f1 .route27-map-real{ background: #e8f8ef; }
  body.site-style-287fd34584f1 .route27-map-safe{ background: #fff8d8; }
  body.site-style-287fd34584f1 .route27-map-unknown{ background: #f4f8ff; }
  body.site-style-287fd34584f1 .route27-map-table{ width: 100%; border-collapse: collapse; font-size: 11px; background: #fff; table-layout: fixed; }
  body.site-style-287fd34584f1 .route27-map-table th{ background: #f4f8ff; color: var(--muted); text-align: left; font-size: 10px; padding: 6px 7px; border-bottom: 1px solid #d8e8ff; }
  body.site-style-287fd34584f1 .route27-map-table td{ padding: 7px; border-bottom: 1px solid #d8e8ff; vertical-align: top; line-height: 1.25; font-weight: 400; overflow: hidden; }
  body.site-style-287fd34584f1 .route27-map-table .route27-map-program{ font-weight: 650; color: #12233c; font-size: 12px; line-height: 1.2; }
  body.site-style-287fd34584f1 .route27-map-table .route27-map-sub{ color: var(--muted); font-size: 10px; margin-top: 3px; line-height: 1.25; }
  body.site-style-287fd34584f1 .route27-map-table .route27-uni-name{ display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; word-break: normal; overflow-wrap: anywhere; }
  body.site-style-287fd34584f1 .route27-map-table .route27-format-main{ display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  body.site-style-287fd34584f1 .route27-map-table .route27-exams-line{ display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  body.site-style-287fd34584f1 .route27-map-table .route27-blue-btn{ padding: 6px 9px; border-radius: 7px; font-size: 11px; white-space: nowrap; }
  body.site-style-287fd34584f1 .route27-easier-btn{ display: inline-flex; align-items: center; gap: 5px; margin-top: 8px; border: 1px solid #d8e8ff; border-radius: 8px; background: var(--blue-bg); color: var(--blue); padding: 6px 9px; font-size: 12px; font-weight: 800; cursor: pointer; font-family: inherit; }
  body.site-style-287fd34584f1 .route27-easier-btn:hover,body.site-style-287fd34584f1 .route27-easier-btn.active{ border-color: var(--blue); background: #fff; }
  body.site-style-287fd34584f1 .route27-easier-row td{ padding: 0 8px 10px; background: #fff; }
  body.site-style-287fd34584f1 .route27-easier-box{ margin-top: 4px; border-top: 1px solid #d8e8ff; padding: 10px 0 0 0; }
  body.site-style-287fd34584f1 .route27-easier-head{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; color: #12233c; font-size: 13px; font-weight: 800; margin-bottom: 8px; }
  body.site-style-287fd34584f1 .route27-easier-chip{ border: 0; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 9px; font-size: 12px; font-weight: 800; cursor: pointer; font-family: inherit; }
  body.site-style-287fd34584f1 .route27-easier-list{ display: grid; gap: 6px; max-width: 980px; }
  body.site-style-287fd34584f1 .route27-easier-item{ display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 10px; align-items: center; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; background: #fbfdff; }
  body.site-style-287fd34584f1 .route27-easier-score{ color: var(--blue); font-size: 13px; font-weight: 900; }
  body.site-style-287fd34584f1 .route27-easier-margin{ color: var(--green); font-size: 12px; font-weight: 800; margin-top: 2px; }
  body.site-style-287fd34584f1 .route27-easier-title{ color: #12233c; font-size: 13px; font-weight: 800; line-height: 1.25; }
  body.site-style-287fd34584f1 .route27-easier-meta{ color: var(--muted); font-size: 11px; line-height: 1.35; margin-top: 2px; }
  body.site-style-287fd34584f1 .route27-map-table .route27-pill{ padding: 3px 7px; font-size: 10px; font-weight: 650; }
  body.site-style-287fd34584f1 .route27-map-table th.route27-tight,body.site-style-287fd34584f1 .route27-map-table td.route27-tight{ width: 32px; padding-left: 6px; padding-right: 4px; }
  body.site-style-287fd34584f1 .route27-map-table th.route27-action,body.site-style-287fd34584f1 .route27-map-table td.route27-action{ width: 96px; text-align: right; }
  body.site-style-287fd34584f1 .route27-map-remove{ border: 0; background: transparent; color: var(--muted); cursor: pointer; font-weight: 800; font-size: 16px; }
  body.site-style-287fd34584f1 .route27-pill{ display: inline-block; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 10px; font-size: 12px; font-weight: 700; }
  body.site-style-287fd34584f1 .route27-calendar-item{ display: grid; grid-template-columns: 110px 1fr auto; gap: 12px; align-items: center; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; margin-top: 8px; }
  body.site-style-287fd34584f1 .route27-date{ color: var(--blue); font-weight: 800; }
  body.site-style-287fd34584f1 .route27-form{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 16px; }
  body.site-style-287fd34584f1 .route27-score-card{ border: 1px solid #d8e8ff; border-radius: 10px; overflow: hidden; background: #fbfdff; margin-top: 14px; }
  body.site-style-287fd34584f1 .route27-ege-bridge{ display: none; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; background: #f4f8ff; margin-top: 12px; }
  body.site-style-287fd34584f1 .route27-ege-bridge.active{ display: block; }
  body.site-style-287fd34584f1 .route27-ege-bridge-title{ color: #12233c; font-size: 13px; font-weight: 800; margin-bottom: 4px; }
  body.site-style-287fd34584f1 .route27-ege-bridge-actions{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 9px; }
  body.site-style-287fd34584f1 .route27-score-table{ width: 100%; border-collapse: collapse; font-size: 13px; }
  body.site-style-287fd34584f1 .route27-score-table th{ background: #dcebfd; color: #3d4b63; padding: 9px 12px; text-align: left; font-size: 12px; }
  body.site-style-287fd34584f1 .route27-score-table td{ border-top: 1px dashed #d8e8ff; padding: 9px 12px; vertical-align: middle; }
  body.site-style-287fd34584f1 .route27-score-table input{ width: 120px; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; font-size: 13px; background: #fff; }
  body.site-style-287fd34584f1 .route27-score-summary{ background: #f4f8ff; color: var(--muted); font-size: 12px; padding: 9px 12px; }
  body.site-style-287fd34584f1 .route27-score-summary b{ color: #12233c; }
  body.site-style-287fd34584f1 .route27-note-card{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 11px 12px; background: #fff; margin-top: 10px; }
  body.site-style-287fd34584f1 .route27-note-card.is-alert{ border-color: #ffb34d; background: #fff9ef; }
  body.site-style-287fd34584f1 .route27-note-card b{ color: #12233c; }
  body.site-style-287fd34584f1 .route27-chips{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
  body.site-style-287fd34584f1 .route27-chip{ border: 1px solid #d8e8ff; border-radius: 999px; padding: 7px 11px; font-weight: 700; color: #12233c; background: #fff; font-size: 13px; cursor: pointer; font-family: inherit; }
  body.site-style-287fd34584f1 .route27-chip.active{ background: var(--blue); color: #fff; border-color: var(--blue); }
  body.site-style-287fd34584f1 .route27-result-box{ display: none; margin-top: 12px; padding: 0; border: 0; border-radius: 0; background: transparent; }
  body.site-style-287fd34584f1 .route27-result-box.active{ display: block; }
  body.site-style-287fd34584f1 .route27-result-title{ font-size: 14px; font-weight: 800; color: #12233c; margin-bottom: 6px; }
  body.site-style-287fd34584f1 .route27-result-text{ color: var(--muted); line-height: 1.55; font-size: 13px; }
  body.site-style-287fd34584f1 .route27-rec-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
  body.site-style-287fd34584f1 .route27-rec-list a{ border: 1px solid #d8e8ff; border-radius: 999px; padding: 7px 10px; color: var(--blue); background: #fff; font-weight: 700; font-size: 13px; text-decoration: none; }
  body.site-style-287fd34584f1 .route27-bars{ display: grid; gap: 7px; margin-top: 10px; }
  body.site-style-287fd34584f1 .route27-bar{ display: grid; grid-template-columns: 130px 1fr 58px; gap: 10px; align-items: center; color: #12233c; font-size: 13px; font-weight: 700; }
  body.site-style-287fd34584f1 .route27-bar-track{ display: block; height: 9px; border-radius: 999px; background: #dbeaff; overflow: hidden; }
  body.site-style-287fd34584f1 .route27-bar-fill{ display: block; height: 100%; border-radius: inherit; background: var(--blue); }
  body.site-style-287fd34584f1 .route27-bar.is-top .route27-bar-fill{ background: #ffd44d; }
  body.site-style-287fd34584f1 .route27-repeat-link{ display: inline-flex; margin-top: 10px; }
  body.site-style-287fd34584f1 .route27-ai{ display: grid; grid-template-columns: 120px 1fr; gap: 18px; align-items: start; }
  body.site-style-287fd34584f1 .route27-ai img{ width: 90px; max-width: 100%; border-radius: 10px; }
  body.site-style-287fd34584f1 .route27-answer{ background: #dcebfd; border-radius: 8px; padding: 12px; color: #24364f; line-height: 1.45; font-size: 13px; }
  body.site-style-287fd34584f1 .route27-panel{ display: none; }
  body.site-style-287fd34584f1 .route27-panel.active{ display: block; }
  body.site-style-287fd34584f1 .kim-page{ width: 100%; margin: 0; }
  body.site-style-287fd34584f1 .kim-crumbs{ font-size: 13px; color: var(--ink-3); margin-bottom: 14px; }
  body.site-style-287fd34584f1 .kim-crumbs a{ color: var(--ink-2); text-decoration: none; }
  body.site-style-287fd34584f1 .kim-hero{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 20px 22px; margin-bottom: 14px; }
  body.site-style-287fd34584f1 .kim-kicker{ display: inline-block; background: var(--blue-bg); color: var(--blue); border-radius: 999px; padding: 5px 11px; font-size: 12px; font-weight: 800; margin-bottom: 12px; }
  body.site-style-287fd34584f1 .kim-hero h2{ font-size: 28px; line-height: 1.2; margin: 0 0 10px; color: #1b1b1b; }
  body.site-style-287fd34584f1 .kim-hero h2 span{ color: var(--blue); }
  body.site-style-287fd34584f1 .kim-hero p,body.site-style-287fd34584f1 .kim-card p{ color: var(--ink-2); line-height: 1.6; margin: 0 0 14px; }
  body.site-style-287fd34584f1 .kim-status{ display: inline-flex; align-items: center; border-radius: 999px; padding: 7px 13px; font-size: 13px; font-weight: 800; background: var(--warn-bg); color: var(--warn-ink); }
  body.site-style-287fd34584f1 .kim-steps{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 18px; }
  body.site-style-287fd34584f1 .kim-step{ border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; color: var(--muted); font-size: 12px; background: #fff; }
  body.site-style-287fd34584f1 .kim-step b{ display: block; color: #1b1b1b; margin-bottom: 3px; }
  body.site-style-287fd34584f1 .kim-step.active{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-287fd34584f1 .kim-links,body.site-style-287fd34584f1 .kim-filter,body.site-style-287fd34584f1 .kim-docs{ display: flex; flex-wrap: wrap; gap: 8px; }
  body.site-style-287fd34584f1 .kim-links{ margin-top: 16px; }
  body.site-style-287fd34584f1 .kim-links a,body.site-style-287fd34584f1 .kim-docs a,body.site-style-287fd34584f1 .kim-filter button{ border: 1px solid var(--border); border-radius: 8px; padding: 8px 12px; color: #1b1b1b; background: #fff; text-decoration: none; font-size: 13px; font-weight: 800; }
  body.site-style-287fd34584f1 .kim-links a.primary,body.site-style-287fd34584f1 .kim-docs a.primary,body.site-style-287fd34584f1 .kim-filter button.on{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-287fd34584f1 .kim-stats{ display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 20px; }
  body.site-style-287fd34584f1 .kim-stat,body.site-style-287fd34584f1 .kim-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; }
  body.site-style-287fd34584f1 .kim-stat{ padding: 14px 16px; }
  body.site-style-287fd34584f1 .kim-stat b{ display: block; color: #1b1b1b; font-size: 22px; line-height: 1.2; }
  body.site-style-287fd34584f1 .kim-stat span{ display: block; color: var(--muted); font-size: 12px; font-weight: 700; }
  body.site-style-287fd34584f1 .kim-card{ padding: 18px 20px; margin-bottom: 14px; }
  body.site-style-287fd34584f1 .kim-card h2{ margin: 0 0 8px; color: #1b1b1b; font-size: 20px; }
  body.site-style-287fd34584f1 .kim-filter{ margin: 14px 0; }
  body.site-style-287fd34584f1 .kim-filter button{ cursor: pointer; font-family: inherit; }
  body.site-style-287fd34584f1 .kim-row{ border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin: 10px 0; background: #fff; }
  body.site-style-287fd34584f1 .kim-row.changed{ border-color: #f59e0b; background: #fffaf2; }
  body.site-style-287fd34584f1 .kim-row-head{ display: flex; align-items: center; justify-content: space-between; gap: 12px; }
  body.site-style-287fd34584f1 .kim-row h3{ margin: 0; color: #1b1b1b; font-size: 16px; }
  body.site-style-287fd34584f1 .kim-pill{ flex: none; border-radius: 999px; padding: 4px 9px; font-size: 11px; font-weight: 800; background: var(--ok-bg); color: var(--ok-ink); }
  body.site-style-287fd34584f1 .kim-row.changed .kim-pill{ background: var(--warn-bg); color: var(--warn-ink); }
  body.site-style-287fd34584f1 .kim-look{ border-left: 3px solid var(--blue); padding-left: 10px; color: var(--ink-2); }
  body.site-style-287fd34584f1 .kim-docs{ margin-top: 11px; }
  body.site-style-287fd34584f1 .kim-docs a{ color: var(--blue); }
  body.site-style-287fd34584f1 .kim-docs a.primary{ color: #fff; }
  body.site-style-287fd34584f1 .kim-card ul{ margin: 0; padding-left: 22px; color: var(--ink-2); line-height: 1.7; }
  body.site-style-287fd34584f1 .kim-card li a{ color: var(--blue); font-weight: 800; }
  body.site-style-287fd34584f1 .kim-article .kim-card h2{ font-size: 22px; }
  body.site-style-287fd34584f1 .kim-lead{ font-size: 16px; border-left: 4px solid var(--blue); background: var(--blue-bg); padding: 13px 16px; border-radius: 0 8px 8px 0; }
  body.site-style-287fd34584f1 .kim-warning{ border-color: #ef4444; background: #fef2f2; }
  body.site-style-287fd34584f1 .kim-article-table{ table-layout: auto; }
  body.site-style-287fd34584f1 .kim-article-table th,body.site-style-287fd34584f1 .kim-article-table td{ white-space: normal; vertical-align: top; padding: 10px 12px; line-height: 1.45; }
  body.site-style-287fd34584f1 .kim-steps-list{ margin: 0; padding-left: 22px; color: var(--ink-2); line-height: 1.7; }
  body.site-style-287fd34584f1 .score-converter{ display: grid; grid-template-columns: minmax(220px, 1fr) 140px minmax(190px, .8fr); gap: 10px; align-items: center; margin-top: 14px; }
  body.site-style-287fd34584f1 .score-converter select,body.site-style-287fd34584f1 .score-converter input{ width: 100%; min-width: 0; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font: inherit; background: #fff; }
  body.site-style-287fd34584f1 .score-output{ font-size: 18px; font-weight: 800; color: #1b1b1b; }
  body.site-style-287fd34584f1 .score-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(54px, 1fr)); gap: 5px; margin-top: 12px; }
  body.site-style-287fd34584f1 .score-cell{ border: 1px solid var(--border); border-radius: 8px; padding: 5px 4px; text-align: center; background: #fff; font-variant-numeric: tabular-nums; }
  body.site-style-287fd34584f1 .score-cell .primary-score{ display: block; color: var(--muted); font-size: 11px; }
  body.site-style-287fd34584f1 .score-cell .test-score{ display: block; color: #1b1b1b; font-size: 13px; font-weight: 800; }
  body.site-style-287fd34584f1 .score-cell.threshold{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-287fd34584f1 .kim-qa .q{ margin: 16px 0 6px; color: var(--ink); font-size: 16px; font-weight: 800; }
  body.site-style-287fd34584f1 .kim-qa .a{ color: var(--ink-2); margin: 0; line-height: 1.65; }
  @media (max-width: 980px){body.site-style-287fd34584f1 .route27-steps{ grid-template-columns: repeat(2, 1fr); }
    body.site-style-287fd34584f1 .route27-head,body.site-style-287fd34584f1 .route27-save,body.site-style-287fd34584f1 .route27-two,body.site-style-287fd34584f1 .route27-pay-row,body.site-style-287fd34584f1 .route27-form,body.site-style-287fd34584f1 .route27-calendar-item,body.site-style-287fd34584f1 .route27-ai,body.site-style-287fd34584f1 .route27-test-results,body.site-style-287fd34584f1 .route27-rec-filters{ grid-template-columns: 1fr; }
    body.site-style-287fd34584f1 .route27-direction-options{ grid-template-columns: 1fr; }
    body.site-style-287fd34584f1 .route27-direction-option{ border-left: 0; border-top: 1px solid #d8e8ff; }
    body.site-style-287fd34584f1 .route27-direction-option:first-child{ border-top: 0; }
    body.site-style-287fd34584f1 .route27-progress{ display: inline-block; margin-bottom: 14px; }
    body.site-style-287fd34584f1 .route27-save button{ width: 100%; }
    body.site-style-287fd34584f1 .kim-steps{ grid-template-columns: 1fr 1fr; }
    body.site-style-287fd34584f1 .score-converter{ grid-template-columns: 1fr; }}

/* Consolidated page style 64c937a8c085. */
body.site-style-64c937a8c085{ --bg:#eef6ff; --card:#fff; --text:#11243a; --muted:#66758c; --blue:#2f68ee; --blue-bg:#eaf3ff; --line:#d9e8fb; --yellow:#ffd44d; --green:#168447; }
    body.site-style-64c937a8c085 *{ box-sizing: border-box; }
    body.site-style-64c937a8c085{ margin: 0; font-family: Arial, sans-serif; background: linear-gradient(90deg,#eef6ff 0%,#f7fbff 72%,#fffbea 100%); color: var(--text); }
    body.site-style-64c937a8c085 a{ color: var(--blue); }
    body.site-style-64c937a8c085 .nav{ background: #eef5ff; border-bottom: 1px solid #e2ecfb; position: sticky; top: 0; z-index: 5; }
    body.site-style-64c937a8c085 .nav-inner{ max-width: 1320px; margin: 0 auto; padding: 18px 24px; display: flex; align-items: center; gap: 22px; }
    body.site-style-64c937a8c085 .logo{ color: var(--text); text-decoration: none; font-size: 24px; font-weight: 900; white-space: nowrap; }
    body.site-style-64c937a8c085 .nav-links{ display: flex; gap: 18px; align-items: center; flex: 1; justify-content: flex-end; flex-wrap: wrap; }
    body.site-style-64c937a8c085 .nav-links a{ color: #4a566b; text-decoration: none; font-weight: 700; font-size: 15px; }
    body.site-style-64c937a8c085 .cta{ background: var(--yellow); color: var(--text) !important; padding: 13px 18px; border-radius: 8px; box-shadow: 0 5px 0 #f0a000; }
    body.site-style-64c937a8c085 .wrap{ max-width: 1040px; margin: 0 auto; padding: 34px 24px 60px; }
    body.site-style-64c937a8c085 .crumbs{ color: var(--muted); font-size: 13px; margin-bottom: 14px; }
    body.site-style-64c937a8c085 .hero,body.site-style-64c937a8c085 .quiz,body.site-style-64c937a8c085 .card,body.site-style-64c937a8c085 .faq details{ background: var(--card); border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 16px 40px rgba(34,78,135,.08); }
    body.site-style-64c937a8c085 .hero{ padding: 28px; text-align: center; }
    body.site-style-64c937a8c085 .hero h1{ margin: 0 0 10px; font-size: clamp(28px,4vw,42px); line-height: 1.12; }
    body.site-style-64c937a8c085 .hero p{ margin: 0 auto 14px; max-width: 740px; color: var(--muted); line-height: 1.55; font-size: 16px; }
    body.site-style-64c937a8c085 .notice{ margin: 16px auto 0; max-width: 760px; padding: 12px 14px; border-radius: 10px; background: #fff8e1; color: #785500; font-size: 13px; line-height: 1.45; }
    body.site-style-64c937a8c085 .btn{ border: 0; background: var(--blue); color: #fff; border-radius: 8px; padding: 12px 18px; font: inherit; font-weight: 800; cursor: pointer; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; }
    body.site-style-64c937a8c085 .btn-light{ background: var(--blue-bg); color: var(--blue); }
    body.site-style-64c937a8c085 .quiz{ margin-top: 18px; padding: 26px; }
    body.site-style-64c937a8c085 .progress{ height: 10px; background: var(--blue-bg); border-radius: 999px; overflow: hidden; margin-bottom: 20px; }
    body.site-style-64c937a8c085 .progress span{ display: block; height: 100%; width: 0; background: var(--blue); border-radius: inherit; transition: width .2s; }
    body.site-style-64c937a8c085 .counter{ color: var(--muted); font-size: 13px; font-weight: 800; text-transform: uppercase; margin-bottom: 8px; }
    body.site-style-64c937a8c085 .question{ font-size: 22px; font-weight: 900; margin-bottom: 14px; }
    body.site-style-64c937a8c085 .scale{ display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
    body.site-style-64c937a8c085 .scale button{ border: 2px solid var(--line); border-radius: 10px; background: #fff; padding: 14px 10px; font: inherit; cursor: pointer; color: var(--text); min-height: 86px; }
    body.site-style-64c937a8c085 .scale button:hover,body.site-style-64c937a8c085 .scale button.active{ border-color: var(--blue); background: var(--blue-bg); }
    body.site-style-64c937a8c085 .scale b{ display: block; font-size: 22px; margin-bottom: 5px; color: var(--blue); }
    body.site-style-64c937a8c085 .scale span{ display: block; font-size: 12px; line-height: 1.25; color: var(--muted); font-weight: 700; }
    body.site-style-64c937a8c085 .actions{ display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; margin-top: 20px; }
    body.site-style-64c937a8c085 .back{ margin-top: 14px; background: transparent; border: 0; color: var(--muted); font: inherit; font-weight: 700; cursor: pointer; }
    body.site-style-64c937a8c085 .result h2{ text-align: center; font-size: 28px; margin: 0 0 16px; }
    body.site-style-64c937a8c085 .bars{ display: grid; gap: 10px; }
    body.site-style-64c937a8c085 .bar{ display: grid; grid-template-columns: 160px 1fr 70px; gap: 10px; align-items: center; font-weight: 700; }
    body.site-style-64c937a8c085 .track{ height: 12px; background: var(--blue-bg); border-radius: 999px; overflow: hidden; }
    body.site-style-64c937a8c085 .fill{ height: 100%; background: var(--blue); border-radius: inherit; }
    body.site-style-64c937a8c085 .chips{ display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 16px; }
    body.site-style-64c937a8c085 .chip{ border: 1px solid var(--line); border-radius: 999px; padding: 8px 11px; color: var(--blue); background: #fff; font-weight: 800; font-size: 13px; text-decoration: none; }
    body.site-style-64c937a8c085 .say{ margin-top: 18px; padding: 16px; border-radius: 10px; background: var(--blue-bg); color: #28415f; line-height: 1.55; }
    body.site-style-64c937a8c085 .cards{ display: grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); gap: 14px; margin-top: 26px; }
    body.site-style-64c937a8c085 .card{ padding: 18px; }
    body.site-style-64c937a8c085 .card h3{ margin: 0 0 8px; font-size: 18px; }
    body.site-style-64c937a8c085 .card p{ color: var(--muted); line-height: 1.55; margin: 0; }
    body.site-style-64c937a8c085 .faq{ margin-top: 26px; }
    body.site-style-64c937a8c085 .faq h2{ font-size: 24px; }
    body.site-style-64c937a8c085 .faq details{ padding: 14px 16px; margin-bottom: 10px; box-shadow: none; }
    body.site-style-64c937a8c085 .faq summary{ cursor: pointer; font-weight: 800; }
    body.site-style-64c937a8c085 .faq p{ color: var(--muted); line-height: 1.55; }
    body.site-style-64c937a8c085 [hidden]{ display: none !important; }
    @media (max-width: 760px){body.site-style-64c937a8c085 .nav-inner{ align-items: flex-start; flex-direction: column; } body.site-style-64c937a8c085 .nav-links{ justify-content: flex-start; } body.site-style-64c937a8c085 .scale{ grid-template-columns: 1fr; } body.site-style-64c937a8c085 .bar{ grid-template-columns: 1fr; }}

/* Consolidated page style 2a9d74be5a93. */
body.site-style-2a9d74be5a93{ --bg:#eef6ff; --card:#fff; --text:#11243a; --muted:#66758c; --blue:#2f68ee; --blue-bg:#eaf3ff; --line:#d9e8fb; --yellow:#ffd44d; --green:#168447; }
    body.site-style-2a9d74be5a93 *{ box-sizing: border-box; }
    body.site-style-2a9d74be5a93{ margin: 0; font-family: Arial, sans-serif; background: linear-gradient(90deg,#eef6ff 0%,#f7fbff 72%,#fffbea 100%); color: var(--text); }
    body.site-style-2a9d74be5a93 a{ color: var(--blue); }
    body.site-style-2a9d74be5a93 .nav{ background: #eef5ff; border-bottom: 1px solid #e2ecfb; position: sticky; top: 0; z-index: 5; }
    body.site-style-2a9d74be5a93 .nav-inner{ max-width: 1320px; margin: 0 auto; padding: 18px 24px; display: flex; align-items: center; gap: 22px; }
    body.site-style-2a9d74be5a93 .logo{ color: var(--text); text-decoration: none; font-size: 24px; font-weight: 900; white-space: nowrap; }
    body.site-style-2a9d74be5a93 .nav-links{ display: flex; gap: 18px; align-items: center; flex: 1; justify-content: flex-end; flex-wrap: wrap; }
    body.site-style-2a9d74be5a93 .nav-links a{ color: #4a566b; text-decoration: none; font-weight: 700; font-size: 15px; }
    body.site-style-2a9d74be5a93 .cta{ background: var(--yellow); color: var(--text) !important; padding: 13px 18px; border-radius: 8px; box-shadow: 0 5px 0 #f0a000; }
    body.site-style-2a9d74be5a93 .wrap{ max-width: 1040px; margin: 0 auto; padding: 34px 24px 60px; }
    body.site-style-2a9d74be5a93 .crumbs{ color: var(--muted); font-size: 13px; margin-bottom: 14px; }
    body.site-style-2a9d74be5a93 .hero{ background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: 28px; box-shadow: 0 16px 40px rgba(34,78,135,.08); text-align: center; }
    body.site-style-2a9d74be5a93 .hero h1{ margin: 0 0 10px; font-size: clamp(28px,4vw,42px); line-height: 1.12; }
    body.site-style-2a9d74be5a93 .hero p{ margin: 0 auto 14px; max-width: 700px; color: var(--muted); line-height: 1.55; font-size: 16px; }
    body.site-style-2a9d74be5a93 .btn{ border: 0; background: var(--blue); color: #fff; border-radius: 8px; padding: 12px 18px; font: inherit; font-weight: 800; cursor: pointer; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; }
    body.site-style-2a9d74be5a93 .btn-light{ background: var(--blue-bg); color: var(--blue); }
    body.site-style-2a9d74be5a93 .quiz{ margin-top: 18px; background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: 26px; box-shadow: 0 16px 40px rgba(34,78,135,.08); }
    body.site-style-2a9d74be5a93 .progress{ height: 10px; background: var(--blue-bg); border-radius: 999px; overflow: hidden; margin-bottom: 20px; }
    body.site-style-2a9d74be5a93 .progress span{ display: block; height: 100%; width: 0; background: var(--blue); border-radius: inherit; transition: width .2s; }
    body.site-style-2a9d74be5a93 .counter{ color: var(--muted); font-size: 13px; font-weight: 800; text-transform: uppercase; margin-bottom: 8px; }
    body.site-style-2a9d74be5a93 .question{ font-size: 22px; font-weight: 900; margin-bottom: 14px; }
    body.site-style-2a9d74be5a93 .opts{ display: grid; gap: 12px; }
    body.site-style-2a9d74be5a93 .opts button{ text-align: left; border: 2px solid var(--line); border-radius: 10px; background: #fff; padding: 15px 16px; font: inherit; font-weight: 700; line-height: 1.45; cursor: pointer; color: var(--text); }
    body.site-style-2a9d74be5a93 .opts button:hover{ border-color: var(--blue); background: var(--blue-bg); }
    body.site-style-2a9d74be5a93 .or{ color: var(--muted); text-align: center; font-size: 12px; font-weight: 800; text-transform: uppercase; }
    body.site-style-2a9d74be5a93 .back{ margin-top: 14px; background: transparent; border: 0; color: var(--muted); font: inherit; font-weight: 700; cursor: pointer; }
    body.site-style-2a9d74be5a93 .result h2{ text-align: center; font-size: 28px; margin: 0 0 16px; }
    body.site-style-2a9d74be5a93 .bars{ display: grid; gap: 10px; }
    body.site-style-2a9d74be5a93 .bar{ display: grid; grid-template-columns: 170px 1fr 80px; gap: 10px; align-items: center; font-weight: 700; }
    body.site-style-2a9d74be5a93 .track{ height: 12px; background: var(--blue-bg); border-radius: 999px; overflow: hidden; }
    body.site-style-2a9d74be5a93 .fill{ height: 100%; background: var(--blue); border-radius: inherit; }
    body.site-style-2a9d74be5a93 .say{ margin-top: 18px; padding: 16px; border-radius: 10px; background: var(--blue-bg); color: #28415f; line-height: 1.55; }
    body.site-style-2a9d74be5a93 .cards{ display: grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); gap: 14px; margin-top: 26px; }
    body.site-style-2a9d74be5a93 .card{ background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: 18px; }
    body.site-style-2a9d74be5a93 .card h3{ margin: 0 0 8px; font-size: 18px; }
    body.site-style-2a9d74be5a93 .card p{ color: var(--muted); line-height: 1.55; margin: 0; }
    body.site-style-2a9d74be5a93 .actions{ display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; margin-top: 20px; }
    body.site-style-2a9d74be5a93 .faq{ margin-top: 26px; }
    body.site-style-2a9d74be5a93 .faq h2{ font-size: 24px; }
    body.site-style-2a9d74be5a93 .faq details{ background: var(--card); border: 1px solid var(--line); border-radius: 10px; padding: 14px 16px; margin-bottom: 10px; }
    body.site-style-2a9d74be5a93 .faq summary{ cursor: pointer; font-weight: 800; }
    body.site-style-2a9d74be5a93 .faq p{ color: var(--muted); line-height: 1.55; }
    body.site-style-2a9d74be5a93 [hidden]{ display: none !important; }
    @media (max-width: 720px){body.site-style-2a9d74be5a93 .nav-inner{ align-items: flex-start; flex-direction: column; } body.site-style-2a9d74be5a93 .nav-links{ justify-content: flex-start; } body.site-style-2a9d74be5a93 .bar{ grid-template-columns: 1fr; }}

/* Consolidated page style 4327610d4542. */
body.site-style-4327610d4542{
    --green: #1a7f37; --green-bg: #e6f4ea;
    --red: #c0362c; --amber: #9a6700; --amber-bg: #fff8e1;
    --border: #e2e2e2; --muted: #6b7280; --bg: #fafafa;
    --blue: #1b6ef3; --blue-bg: #eaf2ff;
    --card: #fff; --line: #d8e8ff; --ink: #12233c; --ink-2: #566377; --ink-3: #9aa8bd;
    --blue-soft: #dcebfd; --warn-bg: #fff7e8; --warn-ink: #b45309; --ok-bg: #e8f8ef; --ok-ink: #168344;
    --shadow: 0 12px 28px rgba(15,41,66,.06);
  }
  body.site-style-4327610d4542 *{ box-sizing: border-box; }
  body.site-style-4327610d4542{
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    margin: 0; background: var(--bg); color: #1b1b1b; line-height: 1.5;
  }
  body.site-style-4327610d4542 header{
    background: #fff; border-bottom: 1px solid var(--border);
    padding: 18px 28px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px;
  }
  body.site-style-4327610d4542 header h1{ font-size: 18px; margin: 0; }
  body.site-style-4327610d4542 header .meta{ color: var(--muted); font-size: 13px; }
  body.site-style-4327610d4542 header{ display: block; padding: 14px 28px 18px; }
  body.site-style-4327610d4542 .site-topbar{ display: flex; align-items: center; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--border); gap: 28px; }
  body.site-style-4327610d4542 .site-logo{ display: flex; align-items: center; gap: 8px; text-decoration: none; color: #1b1b1b; font-weight: 700; font-size: 15px; }
  body.site-style-4327610d4542 .site-logo img{ height: 30px; width: auto; border-radius: 6px; }
  body.site-style-4327610d4542 .site-cabinet-link{ background: #1b1b1b; color: #fff; padding: 8px 16px; border-radius: 8px; text-decoration: none; font-weight: 600; font-size: 14px; }
  body.site-style-4327610d4542 .site-cabinet-link:hover{ background: #333; }
  body.site-style-4327610d4542 .site-header-main{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }
  body.site-style-4327610d4542 .site-topbar-left{ display: flex; align-items: center; gap: 28px; min-width: 0; width: 100%; }
  body.site-style-4327610d4542 .site-nav{ display: flex; gap: 4px; align-items: center; flex-wrap: wrap; justify-content: space-between; flex: 1; }
  /* Общий отступ страницы увеличен (было 20px 16px 60px) -- по фидбоку
     "ощущение слипленности": больше воздуха по краям и снизу. */
  body.site-style-4327610d4542 main{ max-width: 1200px; margin: 0 auto; padding: 28px 20px 72px; }
  body.site-style-4327610d4542 .tabs{ display: flex; gap: 4px; margin-bottom: 20px; border-bottom: 1px solid var(--border); }
  body.site-style-4327610d4542 .tab-btn{
    padding: 10px 16px; border: none; background: none; cursor: pointer;
    font-size: 14px; color: var(--muted); border-bottom: 2px solid transparent;
    text-decoration: none; display: inline-block;
  }
  body.site-style-4327610d4542 .tab-btn.active{ color: #1b1b1b; border-bottom-color: #1b1b1b; font-weight: 600; }
  body.site-style-4327610d4542 .tab-btn.cta-2027{
    background: #ffbf17; color: #15243a; border-bottom: 4px solid #f08a00; border-radius: 8px;
    font-weight: 800; margin-left: 8px; padding: 9px 18px;
  }
  body.site-style-4327610d4542 .tab-btn.cta-2027.active{ border-bottom-color: #f08a00; color: #15243a; }
  body.site-style-4327610d4542 .panel{ display: none; }
  body.site-style-4327610d4542 .panel.active{ display: block; }
  body.site-style-4327610d4542 .search-row{ display: flex; gap: 8px; margin-bottom: 16px; flex-wrap: wrap; }
  body.site-style-4327610d4542 input[type=text],body.site-style-4327610d4542 input[type=number]{
    flex: 1; min-width: 220px; padding: 10px 12px; border: 1px solid var(--border);
    border-radius: 8px; font-size: 14px;
  }
  body.site-style-4327610d4542 button.primary{
    padding: 10px 18px; border: none; border-radius: 8px; background: #1b1b1b; color: #fff;
    font-size: 14px; cursor: pointer;
  }
  body.site-style-4327610d4542 button.primary:hover{ background: #333; }
  body.site-style-4327610d4542 button.secondary{
    padding: 8px 14px; border: 1px solid var(--border); border-radius: 8px; background: #fff;
    font-size: 13px; cursor: pointer; color: #1b1b1b;
  }
  body.site-style-4327610d4542 button.secondary:hover{ background: #f3f3f3; }
  body.site-style-4327610d4542 button:disabled{ opacity: 0.5; cursor: default; }
  body.site-style-4327610d4542 .sort-row{ display: flex; align-items: center; gap: 8px; margin-bottom: 14px; flex-wrap: wrap; }
  body.site-style-4327610d4542 .sort-row .lbl{ color: var(--muted); font-size: 13px; }
  body.site-style-4327610d4542 .sort-row select{
    padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; background: #fff;
    font-size: 13px; color: #1b1b1b; max-width: 260px;
  }
  body.site-style-4327610d4542 button.sort-btn.active{ background: var(--blue); color: #fff; border-color: var(--blue); }
  body.site-style-4327610d4542 a.link-btn{
    display: inline-block; padding: 6px 12px; border: 1px solid var(--border); border-radius: 8px;
    font-size: 13px; color: #1b1b1b; text-decoration: none; background: #fff;
  }
  body.site-style-4327610d4542 a.link-btn:hover{ background: #f3f3f3; }
  body.site-style-4327610d4542 table{ width: 100%; border-collapse: collapse; background: #fff; border-radius: 10px; overflow: hidden; }
  body.site-style-4327610d4542 th,body.site-style-4327610d4542 td{ text-align: left; padding: 5px 5px; font-size: 13px; border-bottom: 1px solid var(--border); white-space: nowrap; }
  body.site-style-4327610d4542 th{ background: #f3f3f3; font-weight: 600; color: #444; position: sticky; top: 0; }
  body.site-style-4327610d4542 th.sortable{ cursor: pointer; user-select: none; }
  body.site-style-4327610d4542 th.sortable:hover{ background: #e8e8e8; }
  body.site-style-4327610d4542 th.sortable .arrow{ color: var(--muted); font-size: 11px; margin-left: 4px; }
  body.site-style-4327610d4542 tr.consent-yes{ background: var(--green-bg); }
  body.site-style-4327610d4542 tr.highlight-row{ background: var(--blue-bg) !important; outline: 2px solid var(--blue); outline-offset: -2px; }
  body.site-style-4327610d4542 tr:hover{ background: #f5f5f5; }
  body.site-style-4327610d4542 tr.consent-yes:hover{ background: #dcefe1; }
  body.site-style-4327610d4542 tr.highlight-row:hover{ background: #dcebfd !important; }
  body.site-style-4327610d4542 tr.own-row-toolbar td{ background: #dcebfd; border-top: none; padding: 8px 10px; white-space: normal; font-size: 13px; }
  body.site-style-4327610d4542 .own-row-toolbar-inner{ display: flex; gap: 16px; flex-wrap: wrap; }
  body.site-style-4327610d4542 tr.own-row-toolbar label{ display: inline-flex; align-items: center; gap: 5px; cursor: pointer; }
  body.site-style-4327610d4542 .badge{ display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 12px; font-weight: 600; }
  body.site-style-4327610d4542 .badge.yes{ background: var(--green); color: #fff; }
  body.site-style-4327610d4542 .badge.no{ background: #eee; color: var(--muted); }
  /* в таблице конкурсного списка бейдж согласия -- не таблетка вокруг слова,
     а сплошная квадратная полоса на всю ширину ячейки (поверх уже подсвеченной
     зелёным строки -- получается двухтоновая полоска) */
  body.site-style-4327610d4542 .detail-table .badge{ display: block; width: 100%; box-sizing: border-box; text-align: center; border-radius: 0; padding: 4px 0; }
  body.site-style-4327610d4542 .fresh-consent-badge{
    display: block; margin-top: 3px; font-size: 11px; font-weight: 600; color: var(--amber);
    background: var(--amber-bg); padding: 1px 3px; border-radius: 0; width: fit-content; white-space: nowrap;
  }
  body.site-style-4327610d4542 .card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 16px; margin-bottom: 12px; }
  body.site-style-4327610d4542 .card h3{ margin: 0 0 4px; font-size: 15px; }
  body.site-style-4327610d4542 .card .sub{ color: var(--muted); font-size: 13px; margin-bottom: 10px; }
  body.site-style-4327610d4542 .card .actions{ margin-top: 10px; }
  body.site-style-4327610d4542 .empty{ color: var(--muted); padding: 24px; text-align: center; }
  body.site-style-4327610d4542 .table-wrap{ overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; max-height: 70vh; overflow-y: auto; }
  body.site-style-4327610d4542 .table-wrap.full-list{ max-height: none; overflow-y: visible; }
  body.site-style-4327610d4542 .note{ font-size: 12px; color: var(--muted); margin-top: 8px; }
  body.site-style-4327610d4542 .list-footer{ display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 14px; }
  body.site-style-4327610d4542 .elsewhere-link{ color: var(--blue); text-decoration: none; }
  body.site-style-4327610d4542 .elsewhere-link:hover{ text-decoration: underline; }
  body.site-style-4327610d4542 .breadcrumb{ font-size: 13px; color: var(--muted); margin-bottom: 10px; }
  body.site-style-4327610d4542 .breadcrumb a{ color: var(--blue); text-decoration: none; }
  body.site-style-4327610d4542 .breadcrumb a:hover{ text-decoration: underline; }
  body.site-style-4327610d4542 .back-link{ display: inline-block; margin-bottom: 14px; color: var(--blue); text-decoration: none; font-size: 14px; }
  body.site-style-4327610d4542 .back-link:hover{ text-decoration: underline; }
  /* переключатель "Списки: Конкурсные / Подавших документы" -- по образцу
     самих Госуслуг (см. их страницу программы) */
  body.site-style-4327610d4542 .list-toggle{ display: flex; gap: 8px; margin-bottom: 10px; }
  body.site-style-4327610d4542 .list-toggle-btn{
    padding: 6px 14px; border-radius: 8px; border: 1px solid var(--border);
    color: var(--muted); text-decoration: none; font-size: 13px; font-weight: 600;
    background: var(--card-bg, #fff);
  }
  body.site-style-4327610d4542 .list-toggle-btn:hover{ border-color: var(--blue); color: var(--blue); }
  body.site-style-4327610d4542 .list-toggle-btn.active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-4327610d4542 .detail-header h2{ margin: 0 0 6px; font-size: 22px; }
  body.site-style-4327610d4542 .detail-header .university-link{ color: var(--blue); text-decoration: none; font-weight: 600; }
  body.site-style-4327610d4542 .detail-header .university-link:hover{ text-decoration: underline; }
  body.site-style-4327610d4542 .detail-header .sub{ color: var(--muted); font-size: 13px; margin-bottom: 16px; }
  body.site-style-4327610d4542 .detail-stats{ display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
  body.site-style-4327610d4542 .stat-box{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 12px 16px; min-width: 120px; }
  body.site-style-4327610d4542 .stat-box .val{ font-size: 22px; font-weight: 700; }
  body.site-style-4327610d4542 .stat-box .lbl{ font-size: 12px; color: var(--muted); margin-top: 2px; }
  body.site-style-4327610d4542 .filter-row{ display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin-bottom: 14px; font-size: 13px; }
  body.site-style-4327610d4542 .filter-row label{ display: flex; align-items: center; gap: 6px; cursor: pointer; }
  /* Excel-подобные фильтры по колонкам в конкурсном списке (задача #33) */
  body.site-style-4327610d4542 .filter-th{ position: relative; }
  body.site-style-4327610d4542 .col-filter-btn{ cursor: pointer; color: var(--muted); font-size: 11px; margin-left: 3px; user-select: none; }
  body.site-style-4327610d4542 .col-filter-btn:hover{ color: var(--blue); }
  body.site-style-4327610d4542 .col-filter-btn.active{ color: var(--blue); font-weight: 700; }
  body.site-style-4327610d4542 .col-filter-popover{
    position: absolute; top: 100%; left: 0; z-index: 20; background: #fff; border: 1px solid var(--border);
    border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.12); padding: 8px; min-width: 200px; max-height: 280px;
    overflow-y: auto; font-weight: 400; text-transform: none; letter-spacing: normal; white-space: normal;
  }
  body.site-style-4327610d4542 .col-filter-actions{ display: flex; gap: 8px; margin-bottom: 6px; border-bottom: 1px solid var(--border); padding-bottom: 6px; }
  body.site-style-4327610d4542 .col-filter-actions button{ border: none; background: none; color: var(--blue); font-size: 12px; cursor: pointer; padding: 0; }
  body.site-style-4327610d4542 .col-filter-actions button:hover{ text-decoration: underline; }
  body.site-style-4327610d4542 .col-filter-options{ display: flex; flex-direction: column; gap: 4px; }
  body.site-style-4327610d4542 .col-filter-option{ display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 400; cursor: pointer; white-space: nowrap; }
  body.site-style-4327610d4542 #col-filters-reset-btn{ padding: 4px 10px; font-size: 12px; }
  body.site-style-4327610d4542 .pagination{ display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 16px; }
  body.site-style-4327610d4542 .pagination .page-info{ font-size: 13px; color: var(--muted); }
  body.site-style-4327610d4542 .detail-table-wrap{ overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; }
  body.site-style-4327610d4542 .detail-table-wrap table.detail-table{ table-layout: fixed; }
  /* Ширины колонок задаются динамически через <colgroup> в JS (tableColgroupHtml) --
     число колонок меняется (платные места добавляют колонку "Договор", а
     "Подавшие документы" не имеет ОВП/ВПП), фиксированные nth-child были некорректны. */
  body.site-style-4327610d4542 .detail-table-wrap table.detail-table td{ white-space: normal; word-break: break-word; line-height: 1.35; }
  body.site-style-4327610d4542 .detail-table-wrap table.detail-table .consent-target-inner{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body.site-style-4327610d4542 .benefit-badge{ color: var(--blue); font-weight: 700; font-size: 12px; white-space: nowrap; }
  body.site-style-4327610d4542 .benefit-badge.vpp{ color: var(--amber); }
  body.site-style-4327610d4542 .benefit-badge.paid{ color: var(--green); }
  body.site-style-4327610d4542 .leaving-link{ color: var(--amber); font-weight: 600; text-decoration: none; }
  body.site-style-4327610d4542 .leaving-link:hover{ text-decoration: underline; }
  body.site-style-4327610d4542 .estimate-tag{ color: var(--muted); font-weight: 400; font-size: 11px; }
  body.site-style-4327610d4542 .consent-forecast{ font-size: 12px; color: var(--muted); margin-top: 3px; }
  body.site-style-4327610d4542 .catalog-filters{
    background: #fff; border: 1px solid var(--border); border-radius: 10px;
    padding: 14px 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 12px;
  }
  body.site-style-4327610d4542 .catalog-filter-group{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
  body.site-style-4327610d4542 .catalog-filter-group .cf-title{ flex-basis: 100%; font-size: 12px; color: var(--muted); font-weight: 600; text-transform: uppercase; letter-spacing: .02em; }
  body.site-style-4327610d4542 .catalog-filter-group .cf-chips{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-4327610d4542 .catalog-filter-group .cf-level-groups{ flex-basis: 100%; display: flex; flex-direction: column; gap: 10px; }
  body.site-style-4327610d4542 .cf-level-group-title{ color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; margin-bottom: 6px; }
  body.site-style-4327610d4542 .catalog-chip{
    display: inline-flex; align-items: center; gap: 5px; padding: 5px 10px;
    border: 1px solid var(--border); border-radius: 999px; font-size: 13px; cursor: pointer; user-select: none; background: #fff;
  }
  body.site-style-4327610d4542 .catalog-chip:has(input:checked){ background: var(--blue-bg); border-color: var(--blue); color: var(--blue); font-weight: 600; }
  body.site-style-4327610d4542 .catalog-chip input{ margin: 0; }
  body.site-style-4327610d4542 .cf-count{ color: var(--muted); font-size: 11px; }
  body.site-style-4327610d4542 .catalog-chip:has(input:checked) .cf-count{ color: var(--blue); }
  body.site-style-4327610d4542 .catalog-filter-cost{ padding-top: 2px; }
  body.site-style-4327610d4542 .catalog-cost-lbl{ font-size: 13px; color: var(--muted); display: inline-flex; align-items: center; gap: 6px; }
  body.site-style-4327610d4542 .catalog-cost-lbl input{ width: 120px; padding: 5px 8px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; }
  body.site-style-4327610d4542 .catalog-filter-sort{ border-top: 1px solid var(--border); padding-top: 10px; flex-wrap: wrap; }
  body.site-style-4327610d4542 .catalog-filter-sort select{ padding: 6px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px; background: #fff; }
  body.site-style-4327610d4542 .catalog-filter-section{ border-top: 1px solid var(--border); padding-top: 10px; }
  body.site-style-4327610d4542 .catalog-filter-section:first-child{ border-top: none; padding-top: 0; }
  body.site-style-4327610d4542 .catalog-filter-section summary{
    cursor: pointer; font-size: 14px; font-weight: 600; list-style: none; display: flex; align-items: center; gap: 8px;
  }
  body.site-style-4327610d4542 .catalog-filter-section summary::-webkit-details-marker{ display: none; }
  body.site-style-4327610d4542 .catalog-filter-section summary::before{ content: "▸"; color: var(--muted); font-size: 11px; transition: transform .15s; }
  body.site-style-4327610d4542 .catalog-filter-section[open] summary::before{ transform: rotate(90deg); }
  body.site-style-4327610d4542 .catalog-filter-section > *:not(summary){ margin-top: 10px; }
  body.site-style-4327610d4542 .cfs-count{ color: var(--blue); font-size: 12px; font-weight: 600; }
  body.site-style-4327610d4542 .catalog-direction-search{ display: flex; flex-direction: column; gap: 8px; }
  body.site-style-4327610d4542 .direction-search-row{ display: flex; gap: 8px; }
  body.site-style-4327610d4542 .direction-search-row .okso-search-wrap > input{
    width: 100%; box-sizing: border-box; padding: 6px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 13px;
  }
  body.site-style-4327610d4542 .selected-chips{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-4327610d4542 .selected-chip{
    display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px;
    background: var(--blue-bg); border: 1px solid var(--blue); border-radius: 999px; font-size: 12px; color: var(--blue); font-weight: 600;
  }
  body.site-style-4327610d4542 .selected-chip .remove-x{ cursor: pointer; font-weight: 700; }
  /* Мульти-выбор направления с фильтром (2026-09-05) -- раньше был обычный
     native <input list="datalist">: клик по варианту сразу закрывал список
     и очищал поле, поэтому отметить несколько направлений подряд можно было
     только вводя название заново каждый раз. Теперь список -- свой div с
     чекбоксами, который не закрывается при клике -- можно отметить сколько
     угодно вариантов, не перепечатывая запрос. */
  body.site-style-4327610d4542 .okso-search-wrap{ position: relative; flex: 1; }
  body.site-style-4327610d4542 .okso-ms-dropdown{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.08); max-height: 280px; overflow-y: auto; z-index: 20; }
  body.site-style-4327610d4542 .okso-ms-dropdown.open{ display: block; }
  body.site-style-4327610d4542 .okso-ms-item{ display: flex; align-items: center; gap: 8px; padding: 8px 12px; cursor: pointer; font-size: 13px; }
  body.site-style-4327610d4542 .okso-ms-item:hover{ background: var(--blue-bg); }
  body.site-style-4327610d4542 .okso-ms-item input[type="checkbox"]{ flex: none; }
  body.site-style-4327610d4542 .okso-ms-code{ color: var(--muted); font-size: 12px; }
  body.site-style-4327610d4542 .okso-ms-empty,body.site-style-4327610d4542 .okso-ms-more{ padding: 8px 12px; color: var(--muted); font-size: 12px; }
  body.site-style-4327610d4542 .cf-note{ font-size: 12px; color: var(--muted); }
  body.site-style-4327610d4542 .score-intro{ font-size: 13px; color: var(--muted); margin-bottom: 14px; line-height: 1.5; max-width: 720px; }
  body.site-style-4327610d4542 .score-form{ display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-bottom: 14px; }
  body.site-style-4327610d4542 .score-field{ display: flex; flex-direction: column; gap: 4px; }
  body.site-style-4327610d4542 .score-field label{ font-size: 13px; color: var(--muted); }
  body.site-style-4327610d4542 .score-field input{
    padding: 7px 10px; border: 1px solid var(--border); border-radius: 6px; font-size: 14px;
  }
  body.site-style-4327610d4542 .score-actions{ display: flex; gap: 10px; margin-bottom: 16px; }
  body.site-style-4327610d4542 .score-result-uni{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; }
  body.site-style-4327610d4542 .score-result-uni .sru-name{ font-weight: 700; font-size: 15px; margin-bottom: 8px; }
  body.site-style-4327610d4542 .score-result-row{
    display: flex; justify-content: space-between; align-items: center; gap: 10px;
    font-size: 13px; padding: 7px 8px; border-radius: 6px; cursor: pointer; border: 1px solid var(--border); margin-top: 6px; background: var(--bg);
  }
  body.site-style-4327610d4542 .score-result-row:hover{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-4327610d4542 .score-result-row .srr-info{ color: #1b1b1b; }
  body.site-style-4327610d4542 .score-result-row .srr-nums{ color: var(--muted); white-space: nowrap; }
  body.site-style-4327610d4542 .catalog-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 18px; margin-bottom: 20px; }
  body.site-style-4327610d4542 .program-card{
    background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 20px;
    display: flex; flex-direction: column; gap: 12px; transition: box-shadow .15s, border-color .15s;
  }
  body.site-style-4327610d4542 .program-card:hover{ border-color: var(--blue); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
  /* Вся карточка вуза кликабельна -- ведёт на список направлений этого вуза
     (кнопка "Показать направления" убрана как избыточная). */
  body.site-style-4327610d4542 .program-card-link{ cursor: pointer; }
  body.site-style-4327610d4542 .program-card-link:hover .pc-name{ color: var(--blue); }
  body.site-style-4327610d4542 .pc-top{ display: flex; gap: 10px; align-items: flex-start; }
  body.site-style-4327610d4542 .pc-icon{
    flex: 0 0 auto; width: 38px; height: 38px; border-radius: 10px; color: #fff;
    display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px; letter-spacing: .01em;
  }
  body.site-style-4327610d4542 .pc-titlewrap{ flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
  body.site-style-4327610d4542 .pc-name{ font-size: 15px; font-weight: 700; line-height: 1.3; }
  body.site-style-4327610d4542 .pc-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-4327610d4542 .pc-badge{ font-size: 11px; padding: 3px 8px; background: var(--bg); border: 1px solid var(--border); border-radius: 999px; color: var(--muted); font-weight: 600; }
  body.site-style-4327610d4542 .pc-stats-line{ font-size: 12px; color: var(--muted); }
  body.site-style-4327610d4542 .card-accent{ display: flex; flex-wrap: wrap; gap: 6px; }
  body.site-style-4327610d4542 .accent-chip{ font-size: 12px; font-weight: 700; padding: 6px 10px; border-radius: 8px; }
  body.site-style-4327610d4542 .accent-budget{ background: var(--green-bg); color: var(--green); }
  body.site-style-4327610d4542 .accent-cost{ background: var(--blue-bg); color: var(--blue); }
  /* ---- Подбор ВУза: группировка по шансам ---- */
  body.site-style-4327610d4542 .cf-checkbox-group{ display: flex; gap: 14px; flex-wrap: wrap; }
  body.site-style-4327610d4542 .pick-tier-section{ margin: 22px 0 10px; }
  body.site-style-4327610d4542 .pick-tier-title{ font-size: 15px; font-weight: 700; display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
  body.site-style-4327610d4542 .pick-tier-dot{ width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
  body.site-style-4327610d4542 .pick-tier-high .pick-tier-dot{ background: var(--green); }
  body.site-style-4327610d4542 .pick-tier-medium .pick-tier-dot{ background: var(--amber); }
  body.site-style-4327610d4542 .pick-tier-low .pick-tier-dot{ background: var(--red); }
  body.site-style-4327610d4542 span.pick-tier-high{ color: var(--green); font-weight: 600; }
  body.site-style-4327610d4542 span.pick-tier-medium{ color: var(--amber); font-weight: 600; }
  body.site-style-4327610d4542 span.pick-tier-low{ color: var(--red); font-weight: 600; }
  body.site-style-4327610d4542 .pick-tier-count{ color: var(--muted); font-weight: 500; font-size: 13px; }
  body.site-style-4327610d4542 .pick-uni-card{ border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; background: #fff; }
  body.site-style-4327610d4542 .pick-uni-head{ display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
  body.site-style-4327610d4542 .pick-uni-name{ font-weight: 700; font-size: 15px; }
  body.site-style-4327610d4542 .pick-uni-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-4327610d4542 .pick-match-row{ display: flex; flex-direction: column; align-items: stretch; gap: 4px; padding: 10px 0; border-top: 1px solid var(--border); cursor: pointer; }
  body.site-style-4327610d4542 .pick-match-row:hover{ background: var(--blue-bg); }
  body.site-style-4327610d4542 .pick-match-row:first-of-type{ border-top: none; }
  body.site-style-4327610d4542 .pick-match-direction{ font-weight: 700; font-size: 14px; }
  body.site-style-4327610d4542 .pick-match-program{ font-size: 13px; color: #444; margin-top: 1px; }
  body.site-style-4327610d4542 .pick-match-level-row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 3px; }
  body.site-style-4327610d4542 .pick-match-exams{ color: var(--muted); font-size: 12px; }
  body.site-style-4327610d4542 .pick-avg-score-row{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-style-4327610d4542 .pick-avg-score-row input{ width: 100px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; }
  body.site-style-4327610d4542 .pick-match-tier-badge{ font-size: 11px; font-weight: 700; padding: 3px 9px; border-radius: 999px; white-space: nowrap; }
  body.site-style-4327610d4542 .pick-match-tier-high{ background: var(--green-bg); color: var(--green); }
  body.site-style-4327610d4542 .pick-match-tier-medium{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-4327610d4542 .pick-match-tier-low{ background: #fbe9e7; color: var(--red); }
  body.site-style-4327610d4542 .pick-match-level{ color: var(--muted); font-size: 13px; }
  body.site-style-4327610d4542 .pick-match-nums{ color: var(--muted); font-size: 12px; white-space: nowrap; }
  body.site-style-4327610d4542 .pick-heuristic-note{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }
  /* Богаче карточка -- перенос части элементов дизайна карточки конкурента
     (Поступашкин), обсуждение 2026-09-05: профиль отдельной строкой, разбор
     экзаменов с минимумами по группам, числовой отступ ("не хватает N" /
     "запас +N") рядом с текстовым тиром, БВИ-предупреждение, три среза
     проходного (по заявлениям / по согласиям / по конкурсам) и процент
     шансов как отдельный бейдж. "мин. 2025" сознательно не добавлен --
     исторические данные за прошлый цикл приёма в проекте не собирались
     (см. коммент в начале api/pick.php). */
  body.site-style-4327610d4542 .pick-match-top{ display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
  body.site-style-4327610d4542 .pick-match-content{ flex: 1; min-width: 0; }
  body.site-style-4327610d4542 .pick-match-profile{ color: var(--blue); font-size: 13px; margin-top: 2px; }
  body.site-style-4327610d4542 .pick-match-exams-detailed{ color: var(--muted); font-size: 12px; margin-top: 5px; }
  body.site-style-4327610d4542 .pick-match-bvi-warning{ color: var(--red); font-size: 12px; margin-top: 5px; font-weight: 600; }
  body.site-style-4327610d4542 .pick-match-score-line{ font-size: 13px; margin-top: 7px; }
  body.site-style-4327610d4542 .pick-match-score-ok{ color: var(--green); font-weight: 700; }
  body.site-style-4327610d4542 .pick-match-score-bad{ color: var(--red); font-weight: 700; }
  body.site-style-4327610d4542 .pick-match-cutoffs-row{ display: flex; flex-wrap: wrap; gap: 6px; margin-top: 7px; }
  body.site-style-4327610d4542 .pick-match-cutoff-chip{ font-size: 11px; color: var(--muted); background: var(--blue-bg); border: 1px solid var(--border); border-radius: 6px; padding: 3px 8px; white-space: nowrap; }
  body.site-style-4327610d4542 .pick-match-cutoff-chip b{ color: #222; font-weight: 700; }
  body.site-style-4327610d4542 .pick-match-percent{ flex: none; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px 12px; border-radius: 10px; min-width: 56px; }
  body.site-style-4327610d4542 .pick-match-percent-value{ font-size: 19px; font-weight: 700; line-height: 1.1; }
  body.site-style-4327610d4542 .pick-match-percent-label{ font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; margin-top: 2px; white-space: nowrap; }
  body.site-style-4327610d4542 .pick-match-percent-high{ background: var(--green-bg); color: var(--green); }
  body.site-style-4327610d4542 .pick-match-percent-medium{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-4327610d4542 .pick-match-percent-low{ background: #fbe9e7; color: var(--red); }
  body.site-style-4327610d4542 .pick-match-bottom-row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 7px; }
  body.site-style-4327610d4542 .directions-stat-intro{ font-size: 13px; color: var(--muted); margin: 0 0 14px; max-width: 860px; }
  body.site-style-4327610d4542 .directions-filter-card{
    background: #fff; border: 1px solid var(--border); border-radius: 12px;
    padding: 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 12px;
  }
  body.site-style-4327610d4542 .directions-filter-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  body.site-style-4327610d4542 .directions-filter-field{ display: flex; flex-direction: column; gap: 6px; min-width: 0; }
  body.site-style-4327610d4542 .directions-filter-field label,body.site-style-4327610d4542 .directions-filter-title{
    font-size: 12px; color: var(--muted); font-weight: 700; text-transform: uppercase; letter-spacing: .02em;
  }
  body.site-style-4327610d4542 .directions-filter-field > input,body.site-style-4327610d4542 .directions-filter-field .okso-search-wrap > input,body.site-style-4327610d4542 .directions-filter-field .competition-city-wrap > input{
    width: 100%; min-width: 0; padding: 9px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px;
  }
  body.site-style-4327610d4542 #panel-directions .okso-search-wrap{ display: flex; flex: none; flex-direction: column; gap: 6px; }
  body.site-style-4327610d4542 #panel-directions .directions-filter-field input[type="text"],body.site-style-4327610d4542 #panel-directions .directions-filter-field input[type="number"]{
    flex: none; height: 42px; line-height: 1.2;
  }
  body.site-style-4327610d4542 #panel-directions .competition-city-wrap{
    flex: none; height: 42px; min-height: 42px; align-self: stretch;
  }
  body.site-style-4327610d4542 #panel-directions .competition-city-suggest{
    top: calc(100% + 6px);
  }
  body.site-style-4327610d4542 #panel-directions .okso-ms-dropdown{
    position: static; left: auto; right: auto; top: auto; width: 100%;
    box-shadow: none; max-height: 260px; margin-top: 0; z-index: 5;
  }
  body.site-style-4327610d4542 #panel-directions .okso-ms-item{
    color: #1b1b1b; background: #fff; line-height: 1.35; min-height: 38px;
    justify-content: flex-start; white-space: normal;
  }
  body.site-style-4327610d4542 #panel-directions .okso-ms-item input[type="checkbox"]{
    width: auto; min-width: 0; padding: 0; flex: 0 0 auto;
  }
  body.site-style-4327610d4542 #panel-directions .okso-ms-item span:first-of-type{ flex: 1; min-width: 0; }
  body.site-style-4327610d4542 #panel-directions .okso-ms-code{ flex: none; }
  body.site-style-4327610d4542 .directions-filter-row{ display: flex; flex-wrap: wrap; align-items: flex-start; gap: 10px; }
  body.site-style-4327610d4542 .directions-filter-row .catalog-filter-group{ flex: 1 1 240px; }
  body.site-style-4327610d4542 #panel-directions .directions-filter-row .catalog-filter-group{ align-self: flex-start; }
  body.site-style-4327610d4542 .directions-filter-actions{ display: flex; gap: 10px; flex-wrap: wrap; align-items: center; border-top: 1px solid var(--border); padding-top: 12px; }
  body.site-style-4327610d4542 .directions-summary{ display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
  body.site-style-4327610d4542 .directions-summary-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 12px; }
  body.site-style-4327610d4542 .directions-summary-card .val{ font-size: 20px; font-weight: 800; color: var(--blue); line-height: 1.1; }
  body.site-style-4327610d4542 .directions-summary-card .lbl{ font-size: 11px; color: var(--muted); margin-top: 4px; }
  body.site-style-4327610d4542 .directions-view-controls{
    display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
    background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 10px 12px; margin-bottom: 12px;
  }
  body.site-style-4327610d4542 .directions-control-group{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
  body.site-style-4327610d4542 .directions-control-label{ color: var(--muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; }
  body.site-style-4327610d4542 .directions-toggle-btn{
    border: 1px solid var(--border); background: #fff; color: #1b1b1b; border-radius: 8px;
    padding: 7px 10px; font-size: 13px; font-weight: 600; cursor: pointer;
  }
  body.site-style-4327610d4542 .directions-toggle-btn.active{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-4327610d4542 .directions-sort-select{ padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; background: #fff; font-size: 13px; }
  body.site-style-4327610d4542 .directions-stat-table td{ white-space: normal; vertical-align: top; }
  body.site-style-4327610d4542 .directions-stat-table tbody tr{ cursor: pointer; }
  body.site-style-4327610d4542 .directions-group-row td{
    background: var(--blue-bg); color: var(--blue); font-weight: 800; font-size: 13px;
    cursor: default; border-top: 1px solid var(--border);
  }
  body.site-style-4327610d4542 .directions-row-title{ font-weight: 700; }
  body.site-style-4327610d4542 .directions-row-code{ color: var(--blue); font-size: 12px; font-weight: 700; }
  body.site-style-4327610d4542 .directions-row-sub{ color: var(--muted); font-size: 12px; margin-top: 2px; }
  body.site-style-4327610d4542 .directions-row-exams{ color: var(--muted); font-size: 12px; max-width: 260px; }
  body.site-style-4327610d4542 .directions-competition-strong{ color: var(--red); font-weight: 800; }
  body.site-style-4327610d4542 .directions-competition-mid{ color: var(--amber); font-weight: 800; }
  body.site-style-4327610d4542 .directions-competition-ok{ color: var(--green); font-weight: 800; }
  body.site-style-4327610d4542 .directions-result-note{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }
  @media (max-width: 900px){body.site-style-4327610d4542 .directions-filter-grid{ grid-template-columns: 1fr; }
    body.site-style-4327610d4542 .directions-summary{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
  body.site-style-4327610d4542 .direction-card{ background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 20px; display: flex; flex-direction: column; gap: 10px; transition: box-shadow .15s, border-color .15s; }
  body.site-style-4327610d4542 .direction-card:hover{ border-color: var(--blue); box-shadow: 0 2px 12px rgba(0,0,0,.06); }
  body.site-style-4327610d4542 .dc-code{ font-size: 12px; color: var(--muted); }
  body.site-style-4327610d4542 .dc-name{ font-size: 15px; font-weight: 700; line-height: 1.3; }
  /* Вся карточка направления в общей сетке кликабельна -- ведёт на отдельную
     страницу направления (showDirectionDetail), а не сразу в список. */
  body.site-style-4327610d4542 .direction-card-link{ cursor: pointer; }
  body.site-style-4327610d4542 .direction-card-link:hover .dc-name{ color: var(--blue); }
  /* Заголовок отдельной страницы направления (showDirectionDetail) -- по
     образцу карточки "Специальность в вузе" на Госуслугах: крупный белый
     блок, код мелко сверху, название крупным заголовком, бейджи и сводка
     ниже. */
  body.site-style-4327610d4542 .direction-detail-head{ background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin-bottom: 32px; }
  body.site-style-4327610d4542 .direction-detail-head .dc-code{ font-size: 13px; }
  body.site-style-4327610d4542 .direction-detail-head h2{ margin: 6px 0 18px; font-size: 26px; font-weight: 800; line-height: 1.3; }
  body.site-style-4327610d4542 .direction-detail-head .dc-badges{ margin-bottom: 14px; gap: 8px; }
  body.site-style-4327610d4542 .direction-detail-head .dc-stats{ font-size: 14px; line-height: 1.6; }
  body.site-style-4327610d4542 #direction-detail h3{ font-size: 22px; font-weight: 800; margin: 4px 0 20px; }
  body.site-style-4327610d4542 .dc-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
  body.site-style-4327610d4542 .dc-stats{ font-size: 12px; color: var(--muted); }
  /* Средний уровень: программы внутри направления (по полю program_names) --
     аккордеон по образцу Госуслуг (карточка "Специальность в вузе" ->
     "Образовательные программы" -> раскрывающийся список). Раньше все
     group_id направления шли плоским списком без этого уровня. Отступы
     увеличены (было 14/16/10px) -- по фидбеку "ощущение слипленности". */
  body.site-style-4327610d4542 .dc-programs{ display: flex; flex-direction: column; gap: 20px; margin-top: 4px; }
  body.site-style-4327610d4542 .dc-program{ border: 1px solid var(--border); border-radius: 16px; overflow: hidden; background: #fff; }
  body.site-style-4327610d4542 .dc-program-header{
    display: flex; justify-content: space-between; align-items: center; gap: 12px;
    padding: 20px 24px; cursor: pointer; font-size: 15px;
  }
  body.site-style-4327610d4542 .dc-program-header:hover{ background: var(--blue-bg); }
  body.site-style-4327610d4542 .dc-program-title{ font-weight: 700; color: #1b1b1b; font-size: 16px; }
  body.site-style-4327610d4542 .dc-program-nums{ color: var(--muted); white-space: nowrap; font-size: 13px; }
  /* Круглая кнопка-шеврон, как раскрывающиеся стрелки на карточках программ
     у Госуслуг. */
  body.site-style-4327610d4542 .dc-program-chevron{
    display: flex; align-items: center; justify-content: center; flex: none;
    width: 30px; height: 30px; border-radius: 50%; background: var(--blue-bg);
    color: var(--blue); font-size: 13px; transition: transform .15s;
  }
  body.site-style-4327610d4542 .dc-program.expanded .dc-program-chevron{ transform: rotate(180deg); }
  body.site-style-4327610d4542 .dc-program-body{ display: none; padding: 4px 24px 24px; border-top: 1px solid var(--border); }
  body.site-style-4327610d4542 .dc-program.expanded .dc-program-body{ display: block; padding-top: 22px; }
  body.site-style-4327610d4542 .dc-program-badges{ margin-bottom: 20px; }
  /* Переключатель "Бюджетные/Платные" внутри раскрытой программы -- по
     образцу сегмент-контрола на Госуслугах (светло-синяя капсула, активная
     вкладка белая). Показывается только если у программы есть оба варианта
     финансирования. */
  body.site-style-4327610d4542 .dc-cost-tabs{ display: inline-flex; background: var(--blue-bg); border-radius: 10px; padding: 3px; margin-bottom: 16px; gap: 2px; }
  body.site-style-4327610d4542 .dc-cost-tab{
    border: none; background: none; padding: 8px 18px; border-radius: 8px; font-size: 13px; font-weight: 600;
    color: var(--blue); cursor: pointer;
  }
  body.site-style-4327610d4542 .dc-cost-tab.active{ background: #fff; color: #1b1b1b; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
  body.site-style-4327610d4542 .dc-cost-panel + .dc-cost-panel{ margin-top: 0; }
  body.site-style-4327610d4542 .dc-variants{ display: flex; flex-direction: column; gap: 16px; margin-top: 4px; }
  body.site-style-4327610d4542 .dc-variants.nested{ margin-top: 0; }
  /* Карточки категорий мест (Основные/Отдельная квота/Особая квота/...) --
     по образцу карточек "Конкурсные места" на Госуслугах: заголовок жирным
     слева, справа -- ДВЕ отдельные ссылки на списки (Конкурсные / Подавших
     документы), а не единый клик по всей карточке с списком по умолчанию. */
  body.site-style-4327610d4542 .dc-variant{
    display: flex; justify-content: space-between; align-items: center; gap: 20px;
    font-size: 13px; padding: 18px 22px; border: 1px solid var(--border); border-radius: 12px;
    background: #fff;
  }
  body.site-style-4327610d4542 .dc-variant:hover{ border-color: var(--border); }
  body.site-style-4327610d4542 .dv-title{ color: #1b1b1b; font-weight: 700; font-size: 15px; }
  body.site-style-4327610d4542 .dv-sub{ color: var(--muted); font-size: 12px; margin-top: 5px; line-height: 1.5; }
  body.site-style-4327610d4542 .dv-links{ display: flex; flex-direction: column; gap: 9px; align-items: flex-end; white-space: nowrap; flex: none; }
  body.site-style-4327610d4542 .dv-link{ color: var(--blue); font-size: 13px; font-weight: 600; text-decoration: none; }
  body.site-style-4327610d4542 .dv-link:hover{ text-decoration: underline; }
  body.site-style-4327610d4542 tr.boundary-row td{ text-align: center; font-size: 12px; font-weight: 700; padding: 6px 10px; white-space: normal; }
  body.site-style-4327610d4542 tr.boundary-ovp td{ background: var(--blue-bg); color: var(--blue); border-top: 2px solid var(--blue); border-bottom: 2px solid var(--blue); }
  body.site-style-4327610d4542 tr.boundary-vpp td{ background: var(--amber-bg); color: var(--amber); border-top: 2px dashed var(--amber); border-bottom: 2px dashed var(--amber); }
  body.site-style-4327610d4542 .university-cell-link{ color: var(--blue); text-decoration: none; }
  body.site-style-4327610d4542 .university-cell-link:hover{ text-decoration: underline; }
  body.site-style-4327610d4542 .share-link-box{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; background: var(--blue-bg); border: 1px solid var(--border); border-radius: 8px; padding: 10px 14px; margin: 12px 0; font-size: 13px; }
  body.site-style-4327610d4542 .share-link-box .lbl{ color: var(--muted); white-space: nowrap; }
  body.site-style-4327610d4542 .share-link-box input{ flex: 1; min-width: 180px; border: 1px solid var(--border); border-radius: 6px; background: #fff; font-size: 13px; padding: 4px 8px; color: #1b1b1b; }
  body.site-style-4327610d4542 .share-link-box .copied-note{ color: var(--blue); font-weight: 600; white-space: nowrap; }
  body.site-style-4327610d4542 .recent-ids-lbl{ font-size: 13px; color: var(--muted); margin: 10px 0 6px; }
  body.site-style-4327610d4542 .recent-ids-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 4px; }
  body.site-style-4327610d4542 .recent-id-chip{ border: 1px solid var(--border); background: #fff; border-radius: 999px; padding: 5px 14px; font-size: 13px; cursor: pointer; color: var(--blue); }
  body.site-style-4327610d4542 .recent-id-chip:hover{ background: var(--blue-bg); border-color: var(--blue); }
  body.site-style-4327610d4542 .entrance-tests-box{ margin-bottom: 14px; }
  body.site-style-4327610d4542 .entrance-tests-details summary{ cursor: pointer; font-size: 13px; color: var(--muted); font-weight: 600; margin-bottom: 6px; }
  body.site-style-4327610d4542 .entrance-tests-details summary .count{ font-weight: 400; }
  body.site-style-4327610d4542 .entrance-type-group{ margin-top: 10px; }
  body.site-style-4327610d4542 .entrance-type-group:first-of-type{ margin-top: 8px; }
  body.site-style-4327610d4542 .entrance-type-group .type-lbl{ font-size: 12px; color: var(--muted); font-weight: 600; margin-bottom: 4px; }
  body.site-style-4327610d4542 .entrance-tests-list{ display: flex; flex-wrap: wrap; gap: 8px; }
  body.site-style-4327610d4542 .entrance-test-chip{ border: 1px solid var(--border); border-radius: 8px; padding: 6px 12px; font-size: 13px; background: #fff; }
  body.site-style-4327610d4542 #university-header{ margin-bottom: 12px; font-size: 15px; }
  body.site-style-4327610d4542 #university-header a{ color: var(--blue); text-decoration: none; }
  body.site-style-4327610d4542 #university-header a:hover{ text-decoration: underline; }
  body.site-style-4327610d4542 .level-grid{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
  body.site-style-4327610d4542 .level-card{ border: 1px solid var(--border); border-radius: 10px; padding: 16px 20px; cursor: pointer; background: #fff; min-width: 220px; }
  body.site-style-4327610d4542 .level-card:hover{ border-color: var(--blue); }
  body.site-style-4327610d4542 .level-card .name{ font-weight: 700; font-size: 16px; margin-bottom: 4px; }
  body.site-style-4327610d4542 .level-card .count{ color: var(--muted); font-size: 13px; }
  body.site-style-4327610d4542 tr.direction-row td{ background: var(--blue-bg); font-weight: 700; padding: 8px 10px; border-top: 2px solid var(--border); white-space: normal; }
  body.site-style-4327610d4542 tr.direction-row .count{ color: var(--muted); font-weight: 500; font-size: 12px; }
  body.site-style-4327610d4542 #programs-table.uni-mode{ table-layout: fixed; }
  body.site-style-4327610d4542 #programs-table.uni-mode th:nth-child(1),body.site-style-4327610d4542 #programs-table.uni-mode td:nth-child(1){ width: 38%; }
  body.site-style-4327610d4542 #programs-table.uni-mode th:nth-child(2),body.site-style-4327610d4542 #programs-table.uni-mode td:nth-child(2){ width: 11%; }
  body.site-style-4327610d4542 #programs-table.uni-mode th:nth-child(3),body.site-style-4327610d4542 #programs-table.uni-mode td:nth-child(3){ width: 9%; }
  body.site-style-4327610d4542 #programs-table.uni-mode th:nth-child(4),body.site-style-4327610d4542 #programs-table.uni-mode td:nth-child(4){ width: 20%; }
  body.site-style-4327610d4542 #programs-table.uni-mode th:nth-child(5),body.site-style-4327610d4542 #programs-table.uni-mode td:nth-child(5){ width: 11%; }
  body.site-style-4327610d4542 #programs-table.uni-mode th:nth-child(6),body.site-style-4327610d4542 #programs-table.uni-mode td:nth-child(6){ width: 11%; }
  body.site-style-4327610d4542 #programs-table.uni-mode td{ white-space: normal; word-break: break-word; line-height: 1.35; }
  body.site-style-4327610d4542 #programs-table.uni-mode td.prog-name-cell{ padding: 8px 12px; }
  body.site-style-4327610d4542 #programs-table.uni-mode .prog-name-inner{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  body.site-style-4327610d4542 .home-banners{ display: flex; flex-direction: column; gap: 10px; margin: 20px 0 0; }
  body.site-style-4327610d4542 .home-banner{ display: block; text-align: center; padding: 14px 20px; border-radius: 10px; text-decoration: none; font-weight: 700; font-size: 14px; cursor: pointer; }
  body.site-style-4327610d4542 .home-banner-blue{ background: var(--blue); color: #fff; }
  body.site-style-4327610d4542 .home-banner-blue:hover{ background: #1558c9; }
  body.site-style-4327610d4542 .home-banner-amber{ background: var(--amber-bg); color: var(--amber); border: 1px solid #f3d98b; }
  body.site-style-4327610d4542 .home-banner-amber:hover{ background: #ffedb8; }
  body.site-style-4327610d4542 .home-hero{ padding: 40px 8px 28px; text-align: left; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
  body.site-style-4327610d4542 .home-hero-text{ flex: 1 1 420px; min-width: 280px; }
  body.site-style-4327610d4542 .home-hero-badge{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 13px; font-weight: 600; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
  body.site-style-4327610d4542 .home-hero-cta{ display: inline-block; margin-top: 16px; background: #F7B500; color: #152A54; font-weight: 700; font-size: 15px; padding: 12px 24px; border-radius: 10px; text-decoration: none; }
  body.site-style-4327610d4542 .home-hero-cta:hover{ background: #e0a400; }
  body.site-style-4327610d4542 .home-promo27{ background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin: 8px 0 40px; }
  body.site-style-4327610d4542 .home-promo27-badge{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 13px; font-weight: 600; padding: 6px 14px; border-radius: 999px; margin-bottom: 14px; }
  body.site-style-4327610d4542 .home-promo27-title{ font-size: 30px; font-weight: 800; margin: 0 0 10px; }
  body.site-style-4327610d4542 .home-promo27-title span{ color: var(--blue); }
  body.site-style-4327610d4542 .home-promo27-sub{ font-size: 16px; color: var(--muted); margin: 0 0 28px; max-width: 640px; }
  body.site-style-4327610d4542 .home-promo27-card{ display: flex; gap: 28px; align-items: center; background: var(--bg); border-radius: 14px; padding: 24px; flex-wrap: wrap; }
  body.site-style-4327610d4542 .home-promo27-image{ flex: 0 0 260px; border-radius: 12px; overflow: hidden; }
  body.site-style-4327610d4542 .home-promo27-image img{ width: 100%; height: auto; display: block; border-radius: 12px; }
  body.site-style-4327610d4542 .home-promo27-text{ flex: 1 1 360px; min-width: 260px; }
  body.site-style-4327610d4542 .home-promo27-text p{ font-size: 15px; line-height: 1.55; color: #333; margin: 0 0 20px; }
  body.site-style-4327610d4542 .home-promo27-text p b{ color: #1a1a1a; }
  body.site-style-4327610d4542 .home-promo27-actions{ display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
  body.site-style-4327610d4542 .home-promo27-cta{ display: inline-block; background: var(--blue); color: #fff; font-weight: 700; font-size: 15px; padding: 12px 24px; border-radius: 10px; text-decoration: none; }
  body.site-style-4327610d4542 .home-promo27-cta:hover{ background: #1558c9; }
  body.site-style-4327610d4542 .home-promo27-link{ font-size: 14px; color: var(--blue); text-decoration: none; font-weight: 600; }
  body.site-style-4327610d4542 .home-promo27-link:hover{ text-decoration: underline; }
  @media (max-width: 640px){body.site-style-4327610d4542 .home-promo27-card{ flex-direction: column; } body.site-style-4327610d4542 .home-promo27-image{ width: 100%; flex-basis: auto; }}
  body.site-style-4327610d4542 .home-hero-owl{ flex: 0 0 440px; max-width: 46%; }
  body.site-style-4327610d4542 .owl-hero-photo{ width: 100%; height: auto; display: block; border-radius: 16px; }
  @media (max-width: 900px){body.site-style-4327610d4542 .home-hero-owl{ flex: 1 1 100%; max-width: 380px; order: -1; margin: 0 auto; }}
  body.site-style-4327610d4542 .home-hero-title{ font-size: 36px; line-height: 1.15; margin: 0 0 14px; font-weight: 800; }
  body.site-style-4327610d4542 .home-hero-accent{ background: #ffe082; padding: 2px 10px; border-radius: 6px; text-transform: uppercase; }
  body.site-style-4327610d4542 .home-hero-sub{ font-size: 16px; color: var(--muted); max-width: 620px; margin: 0 0 24px; }
  body.site-style-4327610d4542 .home-search-row{ max-width: 480px; }
  body.site-style-4327610d4542 .home-stats{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: 12px; overflow: hidden; margin: 8px 0 36px; }
  body.site-style-4327610d4542 .home-stat{ background: #fff; padding: 18px 20px; }
  body.site-style-4327610d4542 a.home-stat-link{ display: block; text-decoration: none; color: inherit; cursor: pointer; }
  body.site-style-4327610d4542 a.home-stat-link:hover{ background: var(--bg); }
  body.site-style-4327610d4542 .home-stat-n{ font-size: 24px; font-weight: 800; color: var(--blue); }
  body.site-style-4327610d4542 .home-stat-l{ font-size: 13px; color: var(--muted); margin-top: 2px; }
  body.site-style-4327610d4542 .home-section-title{ font-size: 22px; font-weight: 800; margin: 40px 0 18px; }
  body.site-style-4327610d4542 .home-tools-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
  body.site-style-4327610d4542 .home-tool-card{ display: block; border: 1px solid var(--border); border-radius: 12px; padding: 18px; text-decoration: none; color: inherit; background: #fff; cursor: pointer; position: relative; transition: box-shadow .15s, transform .15s; }
  body.site-style-4327610d4542 .home-tool-card:hover{ box-shadow: 0 4px 14px rgba(0,0,0,.08); transform: translateY(-1px); }
  body.site-style-4327610d4542 .home-tool-card.pending{ opacity: .6; cursor: default; }
  body.site-style-4327610d4542 .home-tool-card.pending:hover{ box-shadow: none; transform: none; }
  body.site-style-4327610d4542 .home-tool-icon{ width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 20px; margin-bottom: 12px; }
  body.site-style-4327610d4542 .home-tool-title{ font-weight: 700; font-size: 15px; margin-bottom: 6px; }
  body.site-style-4327610d4542 .home-tool-sub{ font-size: 13px; color: var(--muted); line-height: 1.4; }
  body.site-style-4327610d4542 .home-tool-badge{ position: absolute; top: 14px; right: 14px; background: var(--amber-bg); color: var(--amber); font-size: 11px; font-weight: 700; padding: 3px 8px; border-radius: 999px; }
  body.site-style-4327610d4542 .home-steps{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
  body.site-style-4327610d4542 .home-step{ border: 1px solid var(--border); border-radius: 12px; padding: 20px; background: #fff; }
  body.site-style-4327610d4542 .home-step-n{ width: 32px; height: 32px; border-radius: 50%; background: #ffe082; display: flex; align-items: center; justify-content: center; font-weight: 800; margin-bottom: 12px; }
  body.site-style-4327610d4542 .home-step-title{ font-weight: 700; margin-bottom: 6px; }
  body.site-style-4327610d4542 .home-step-sub{ font-size: 13px; color: var(--muted); line-height: 1.4; }
  body.site-style-4327610d4542 .home-feedback{ display: flex; justify-content: space-between; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 12px; padding: 20px 24px; margin-top: 40px; background: #fff; flex-wrap: wrap; }
  body.site-style-4327610d4542 .home-feedback-title{ font-weight: 700; }
  body.site-style-4327610d4542 .home-feedback-sub{ font-size: 13px; color: var(--muted); margin-top: 2px; }
  @media (max-width: 720px){body.site-style-4327610d4542 .home-stats{ grid-template-columns: repeat(2, 1fr); }
    body.site-style-4327610d4542 .home-steps{ grid-template-columns: 1fr; }
    body.site-style-4327610d4542 .home-hero-title{ font-size: 28px; }}
  body.site-style-4327610d4542 .orders-note{ color: var(--muted); font-size: 14px; max-width: 760px; line-height: 1.5; margin: 0 0 24px; }
  body.site-style-4327610d4542 .orders-filters{ display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 18px; }
  body.site-style-4327610d4542 .orders-filter-chip{ border: 1px solid var(--border); border-radius: 999px; padding: 10px 16px; font-size: 13px; font-weight: 600; background: #fff; cursor: pointer; color: var(--muted); }
  body.site-style-4327610d4542 .orders-filter-chip.active{ border-color: var(--blue); color: var(--blue); background: var(--blue-bg); }
  body.site-style-4327610d4542 .orders-search{ margin-bottom: 18px; max-width: 360px; }
  body.site-style-4327610d4542 .orders-search input{ width: 100%; padding: 10px 14px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; }
  body.site-style-4327610d4542 .orders-list{ display: flex; flex-direction: column; gap: 10px; }
  body.site-style-4327610d4542 .orders-row{ display: flex; justify-content: space-between; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 10px; padding: 14px 18px; background: #fff; flex-wrap: wrap; }
  body.site-style-4327610d4542 .orders-row-name{ font-weight: 700; font-size: 14px; }
  body.site-style-4327610d4542 .orders-row-meta{ font-size: 12px; color: var(--muted); margin-top: 3px; }
  body.site-style-4327610d4542 .orders-row-badge{ font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
  body.site-style-4327610d4542 .orders-badge-collected{ background: var(--green-bg); color: var(--green); }
  body.site-style-4327610d4542 .orders-badge-in-progress{ background: var(--amber-bg); color: var(--amber); }
  body.site-style-4327610d4542 .orders-badge-not-started{ background: #f1f1f1; color: var(--muted); }
  body.site-style-4327610d4542 .orders-footer{ margin-top: 18px; text-align: center; }
  body.site-style-4327610d4542 .orders-calendar{ border: 1px solid var(--border); border-radius: 12px; padding: 20px 22px; margin-bottom: 22px; background: #fff; }
  body.site-style-4327610d4542 .orders-calendar-title{ font-weight: 700; font-size: 15px; margin: 0 0 14px; display: flex; align-items: center; gap: 8px; }
  body.site-style-4327610d4542 .orders-calendar-item{ display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; padding: 10px 0; border-top: 1px solid var(--border); }
  body.site-style-4327610d4542 .orders-calendar-item:first-of-type{ border-top: none; padding-top: 0; }
  body.site-style-4327610d4542 .orders-calendar-item-text{ font-size: 14px; line-height: 1.5; }
  body.site-style-4327610d4542 .orders-calendar-badge{ flex-shrink: 0; font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
  body.site-style-4327610d4542 .orders-calendar-badge-done{ background: #f1f1f1; color: var(--muted); }
  body.site-style-4327610d4542 .orders-calendar-badge-active{ background: var(--green-bg); color: var(--green); }
  body.site-style-4327610d4542 .orders-calendar-source{ font-size: 12px; color: var(--muted); margin-top: 12px; line-height: 1.5; }
  body.site-style-4327610d4542 .admission-cards{ display: flex; gap: 14px; flex-wrap: wrap; margin: 0 0 26px; }
  body.site-style-4327610d4542 .admission-card{ flex: 1 1 260px; border: 1px solid var(--border); border-radius: 12px; padding: 18px 20px; background: #fff; cursor: pointer; text-decoration: none; color: inherit; display: block; transition: border-color .15s; }
  body.site-style-4327610d4542 .admission-card:hover{ border-color: var(--blue); }
  body.site-style-4327610d4542 .admission-card.active{ border-color: var(--blue); background: var(--blue-bg); cursor: default; }
  body.site-style-4327610d4542 .admission-card-title{ font-size: 13px; font-weight: 400; color: var(--muted); text-transform: none; letter-spacing: normal; margin-bottom: 4px; }
  body.site-style-4327610d4542 .admission-card-number{ font-size: 34px; font-weight: 800; line-height: 1.08; margin-bottom: 4px; }
  body.site-style-4327610d4542 .admission-card-meta{ font-size: 12px; color: var(--muted); line-height: 1.5; }
  body.site-style-4327610d4542 .admission-overview-table{ table-layout: fixed; width: 100%; border-collapse: collapse; font-size: 13px; }
  body.site-style-4327610d4542 .admission-overview-table th,body.site-style-4327610d4542 .admission-overview-table td{ padding: 8px 8px; border-bottom: 1px solid var(--border); vertical-align: top; white-space: normal; word-wrap: break-word; overflow-wrap: break-word; }
  body.site-style-4327610d4542 .admission-overview-table th{ text-align: left; border-bottom: 2px solid var(--border); color: var(--muted); font-weight: 700; font-size: 11px; text-transform: uppercase; }
  body.site-style-4327610d4542 .admission-overview-table th:nth-child(1),body.site-style-4327610d4542 .admission-overview-table td:nth-child(1){ width: 38%; }
  body.site-style-4327610d4542 .admission-overview-table th:nth-child(2),body.site-style-4327610d4542 .admission-overview-table td:nth-child(2){ width: 7%; }
  body.site-style-4327610d4542 .admission-overview-table th:nth-child(3),body.site-style-4327610d4542 .admission-overview-table td:nth-child(3){ width: 8%; }
  body.site-style-4327610d4542 .admission-overview-table th:nth-child(4),body.site-style-4327610d4542 .admission-overview-table td:nth-child(4){ width: 9%; }
  body.site-style-4327610d4542 .admission-overview-table th:nth-child(5),body.site-style-4327610d4542 .admission-overview-table td:nth-child(5){ width: 11%; }
  body.site-style-4327610d4542 .admission-overview-table th:nth-child(6),body.site-style-4327610d4542 .admission-overview-table td:nth-child(6){ width: 9%; }
  body.site-style-4327610d4542 .admission-overview-table th:nth-child(7),body.site-style-4327610d4542 .admission-overview-table td:nth-child(7){ width: 11%; text-align: right; }
  body.site-style-4327610d4542 .admission-overview-table td:nth-child(1) a{ display: block; }
  body.site-style-4327610d4542 .admission-overview-table tr:hover td{ background: var(--blue-bg); }
  body.site-style-4327610d4542 .table-scroll{ overflow-x: auto; }
  body.site-style-4327610d4542 #panel-competition .orders-search{ display: flex; flex-wrap: wrap; gap: 10px; align-items: center; max-width: none; }
  body.site-style-4327610d4542 #panel-competition .orders-search input[type=text]{ flex: 1 1 220px; }
  body.site-style-4327610d4542 .content-page{ font-size: 14px; color: #1b1b1b; }
  body.site-style-4327610d4542 .content-page h2,body.site-style-4327610d4542 .content-page h3{ letter-spacing: 0; }
  body.site-style-4327610d4542 .admission26-hero{ padding: 18px 0 28px; }
  body.site-style-4327610d4542 .admission26-kicker{ display: inline-block; background: var(--blue-bg); color: var(--blue); font-size: 12px; font-weight: 700; padding: 5px 12px; border-radius: 999px; margin-bottom: 12px; }
  body.site-style-4327610d4542 .admission26-title{ font-size: 28px; line-height: 1.2; margin: 0 0 10px; font-weight: 800; max-width: 900px; }
  body.site-style-4327610d4542 .admission26-title span{ color: var(--blue); }
  body.site-style-4327610d4542 .admission26-lead{ color: var(--muted); font-size: 14px; line-height: 1.5; max-width: 980px; margin: 0 0 8px; }
  body.site-style-4327610d4542 .admission26-note{ color: #92a0b4; font-size: 12px; font-weight: 600; margin: 0 0 16px; }
  body.site-style-4327610d4542 .admission26-alert{ border: 1px solid #f3c85d; background: #fffaf0; border-radius: 10px; padding: 14px 16px; margin: 18px 0; box-shadow: none; }
  body.site-style-4327610d4542 .admission26-alert-top{ color: #b75b17; font-size: 12px; font-weight: 800; text-transform: uppercase; margin-bottom: 4px; }
  body.site-style-4327610d4542 .admission26-alert-title{ font-size: 16px; font-weight: 800; color: #15243a; margin-bottom: 4px; }
  body.site-style-4327610d4542 .admission26-alert-sub{ color: var(--muted); font-size: 13px; line-height: 1.45; }
  body.site-style-4327610d4542 .admission26-stats{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0; }
  body.site-style-4327610d4542 .admission26-stat{ border: 1px solid #f3c85d; background: #fffaf4; border-radius: 10px; padding: 16px; }
  body.site-style-4327610d4542 .admission26-stat.green{ border-color: #9bdfb4; background: #eaf8ef; }
  body.site-style-4327610d4542 .admission26-stat-label{ color: #b75b17; font-size: 12px; font-weight: 800; text-transform: uppercase; margin-bottom: 6px; }
  body.site-style-4327610d4542 .admission26-stat.green .admission26-stat-label{ color: var(--green); }
  body.site-style-4327610d4542 .admission26-stat-number{ font-size: 22px; font-weight: 800; color: #15243a; line-height: 1.1; margin-bottom: 4px; }
  body.site-style-4327610d4542 .admission26-stat-text{ color: var(--muted); font-size: 13px; font-weight: 600; }
  body.site-style-4327610d4542 .admission26-search-box{ border: 1px solid var(--blue); border-radius: 10px; padding: 16px; background: #fff; margin: 20px 0 14px; }
  body.site-style-4327610d4542 .admission26-search-title{ font-size: 18px; font-weight: 800; margin-bottom: 6px; color: #15243a; }
  body.site-style-4327610d4542 .admission26-search-sub{ color: var(--muted); font-size: 14px; line-height: 1.45; margin-bottom: 12px; }
  body.site-style-4327610d4542 .admission26-search-status{ display: inline-block; max-width: 100%; background: var(--green-bg); color: var(--green); border: 1px solid #9bdfb4; border-radius: 8px; padding: 7px 10px; font-size: 12px; font-weight: 700; margin-bottom: 12px; }
  body.site-style-4327610d4542 .admission26-search-row{ display: flex; gap: 10px; flex-wrap: wrap; }
  body.site-style-4327610d4542 .admission26-search-row input{ flex: 0 1 260px; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-weight: 600; }
  body.site-style-4327610d4542 .admission26-search-row button{ border-radius: 8px; box-shadow: none; }
  body.site-style-4327610d4542 .admission26-links{ display: flex; flex-direction: column; gap: 8px; margin: 14px 0 24px; }
  body.site-style-4327610d4542 .admission26-links a{ color: var(--blue); text-decoration: none; font-weight: 700; }
  body.site-style-4327610d4542 .admission26-links a:hover{ text-decoration: underline; }
  body.site-style-4327610d4542 .admission26-toolbar{ display: grid; grid-template-columns: minmax(180px, 280px) minmax(240px, 1fr) auto; gap: 12px; align-items: center; margin: 24px 0 16px; }
  body.site-style-4327610d4542 .admission26-toolbar input{ min-width: 0; width: 100%; background: #fff; }
  body.site-style-4327610d4542 .admission26-total{ color: #92a0b4; font-size: 13px; font-weight: 800; white-space: nowrap; }
  body.site-style-4327610d4542 .admission26-table-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 14px; box-shadow: none; }
  body.site-style-4327610d4542 #admission26-list .admission-overview-table th,body.site-style-4327610d4542 #admission26-list .admission-overview-table td{ padding: 8px; }
  body.site-style-4327610d4542 #admission26-list .admission-overview-table td{ font-size: 13px; }
  body.site-style-4327610d4542 .admission26-num-orange{ color: #c85e20; font-weight: 800; }
  body.site-style-4327610d4542 .admission26-num-green{ color: var(--green); font-weight: 900; }
  body.site-style-4327610d4542 .admission26-link{ color: var(--blue); text-decoration: none; font-weight: 700; white-space: nowrap; }
  body.site-style-4327610d4542 .admission26-help{ margin: 24px 0 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
  body.site-style-4327610d4542 .admission26-help h3{ color: #15243a; font-size: 18px; margin: 0 0 8px; }
  @media (max-width: 820px){body.site-style-4327610d4542 .admission26-title{ font-size: 24px; }
    body.site-style-4327610d4542 .admission26-stats{ grid-template-columns: 1fr; }
    body.site-style-4327610d4542 .admission26-toolbar{ grid-template-columns: 1fr; }}
  body.site-style-4327610d4542 .competition-city-wrap{ position: relative; flex: 1 1 220px; min-width: 160px; }
  body.site-style-4327610d4542 .competition-city-input{ width: 100%; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; box-sizing: border-box; }
  body.site-style-4327610d4542 .competition-city-suggest{ display: none; position: absolute; top: calc(100% + 4px); left: 0; right: 0; background: #fff; border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,.08); max-height: 260px; overflow-y: auto; z-index: 20; }
  body.site-style-4327610d4542 .competition-city-suggest.open{ display: block; }
  body.site-style-4327610d4542 .competition-city-suggest-item{ padding: 8px 12px; cursor: pointer; font-size: 14px; }
  body.site-style-4327610d4542 .competition-city-suggest-item:hover,body.site-style-4327610d4542 .competition-city-suggest-item.active{ background: var(--blue-bg); }
  body.site-style-4327610d4542 .uni-row-code{ font-size: 11px; color: var(--muted); font-weight: 600; }
  body.site-style-4327610d4542 .uni-back-link{ display: block; font-size: 13px; color: var(--muted); text-decoration: none; margin-bottom: 8px; }
  body.site-style-4327610d4542 .uni-back-link:hover{ text-decoration: underline; }
  body.site-style-4327610d4542 .uni-title{ font-size: 28px; font-weight: 800; margin: 0; line-height: 1.25; }
  body.site-style-4327610d4542 .university-groups-table tbody tr{ cursor: pointer; }
  body.site-style-4327610d4542 .university-groups-table tbody tr:hover td{ background: var(--blue-bg); }
  body.site-style-4327610d4542 .university-groups-table{ font-size: 12px; }
  body.site-style-4327610d4542 .university-groups-table th{ font-size: 10px; }
  body.site-style-4327610d4542 .university-groups-table th:nth-child(1),body.site-style-4327610d4542 .university-groups-table td:nth-child(1){ width: 24%; white-space: normal; }
  body.site-style-4327610d4542 .university-groups-table th:nth-child(2),body.site-style-4327610d4542 .university-groups-table td:nth-child(2){ width: 38%; white-space: nowrap; }
  body.site-style-4327610d4542 .university-groups-table th:nth-child(3),body.site-style-4327610d4542 .university-groups-table td:nth-child(3){ width: 10%; }
  body.site-style-4327610d4542 .university-groups-table th:nth-child(4),body.site-style-4327610d4542 .university-groups-table td:nth-child(4){ width: 14%; }
  body.site-style-4327610d4542 .university-groups-table th:nth-child(5),body.site-style-4327610d4542 .university-groups-table td:nth-child(5){ width: 14%; }
  body.site-style-4327610d4542 .simple-page{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 22px; margin-bottom: 18px; }
  body.site-style-4327610d4542 .simple-page h2{ margin: 0 0 8px; font-size: 28px; line-height: 1.2; }
  body.site-style-4327610d4542 .simple-page p{ color: var(--muted); margin: 0 0 16px; max-width: 760px; }
  body.site-style-4327610d4542 .simple-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px; }
  body.site-style-4327610d4542 .simple-card{ display: block; background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 16px; color: inherit; text-decoration: none; }
  body.site-style-4327610d4542 .simple-card:hover{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-4327610d4542 .simple-card-title{ font-weight: 800; margin-bottom: 6px; }
  body.site-style-4327610d4542 .simple-card-sub{ color: var(--muted); font-size: 13px; }
  body.site-style-4327610d4542 .simple-actions{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
  body.site-style-4327610d4542 .simple-cta{ display: inline-block; padding: 11px 18px; border-radius: 8px; background: var(--blue); color: #fff; text-decoration: none; font-weight: 800; }
  body.site-style-4327610d4542 .simple-cta.yellow{ background: #ffbf17; color: #15243a; border-bottom: 4px solid #f08a00; }
  body.site-style-4327610d4542 .route27{ display: flex; flex-direction: column; gap: 18px; padding: 18px 0 48px; font-size: 14px; }
  body.site-style-4327610d4542 .route27-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 18px; box-shadow: none; }
  body.site-style-4327610d4542 .route27-main{ border: 1px solid var(--blue); background: #fff; }
  body.site-style-4327610d4542 .route27-save{ float: right; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; justify-content: flex-end; max-width: 460px; }
  body.site-style-4327610d4542 .route27-save input{ width: 230px; min-width: 180px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 8px; font-size: 13px; }
  body.site-style-4327610d4542 .route27-save button{ padding: 8px 12px; border: none; border-radius: 8px; background: var(--blue); color: #fff; font-size: 13px; font-weight: 700; cursor: pointer; }
  body.site-style-4327610d4542 .route27-save-hint{ flex-basis: 100%; color: var(--muted); font-size: 12px; text-align: right; }
  body.site-style-4327610d4542 .route27-kicker{ font-size: 14px; font-weight: 800; color: #15243a; margin-bottom: 4px; }
  body.site-style-4327610d4542 .route27-title{ font-size: 22px; line-height: 1.25; font-weight: 800; margin: 0 0 6px; color: #12233c; }
  body.site-style-4327610d4542 .route27-sub{ color: var(--muted); font-size: 14px; line-height: 1.45; margin: 0 0 14px; }
  body.site-style-4327610d4542 .route27-progress{ float: right; min-width: 104px; text-align: center; background: var(--blue); color: #fff; border-radius: 10px; padding: 10px 12px; font-weight: 700; font-size: 12px; }
  body.site-style-4327610d4542 .route27-progress-n{ font-size: 24px; line-height: 1; }
  body.site-style-4327610d4542 .route27-steps{ display: grid; grid-template-columns: repeat(8, minmax(100px, 1fr)); gap: 10px; clear: both; }
  body.site-style-4327610d4542 .route27-step{ border: 1px solid #d8e8ff; background: #fff; border-radius: 8px; padding: 10px; text-align: center; min-height: 74px; cursor: pointer; }
  body.site-style-4327610d4542 .route27-step.active{ border: 1px solid var(--blue); }
  body.site-style-4327610d4542 .route27-step-num{ width: 24px; height: 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: var(--blue-bg); color: var(--blue); font-weight: 800; margin-bottom: 5px; font-size: 12px; }
  body.site-style-4327610d4542 .route27-step.active .route27-step-num{ background: var(--blue); color: #fff; }
  body.site-style-4327610d4542 .route27-step-title{ font-size: 12px; font-weight: 800; color: #3d4b63; }
  body.site-style-4327610d4542 .route27-step-pct{ color: #92a0b4; font-size: 11px; font-weight: 700; }
  body.site-style-4327610d4542 .route27-section-title{ font-size: 20px; margin: 0 0 6px; color: #12233c; font-weight: 800; }
  body.site-style-4327610d4542 .route27-subhead{ font-size: 14px; margin: 18px 0 10px; color: #12233c; font-weight: 800; }
  body.site-style-4327610d4542 #route27-interests-section{ scroll-margin-top: 110px; }
  body.site-style-4327610d4542 .route27-stage-tag{ display: inline-block; background: var(--blue-bg); color: var(--blue); border-radius: 999px; padding: 5px 10px; font-size: 12px; font-weight: 800; margin-bottom: 10px; }
  body.site-style-4327610d4542 .route27-two{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .9fr); gap: 22px; align-items: start; }
  body.site-style-4327610d4542 .route27-card ul{ margin: 10px 0 0; padding-left: 20px; color: var(--muted); line-height: 1.5; }
  body.site-style-4327610d4542 .route27-aside{ border-left: 3px solid var(--blue); padding-left: 16px; color: #566377; }
  body.site-style-4327610d4542 .route27-checklist{ margin-top: 20px; border-top: 1px dashed #d8e8ff; }
  body.site-style-4327610d4542 .route27-task{ display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px dashed #d8e8ff; color: #3d4b63; font-weight: 600; }
  body.site-style-4327610d4542 .route27-task label{ display: flex; align-items: center; gap: 10px; cursor: pointer; }
  body.site-style-4327610d4542 .route27-task input{ width: 16px; height: 16px; }
  body.site-style-4327610d4542 .route27-mini-btn{ border: none; border-radius: 8px; background: var(--blue-bg); color: var(--blue); padding: 7px 10px; font-weight: 700; text-decoration: none; white-space: nowrap; font-size: 13px; }
  body.site-style-4327610d4542 .route27-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
  body.site-style-4327610d4542 .route27-test-results{ grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
  body.site-style-4327610d4542 .route27-tile{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 12px; background: #fbfdff; }
  body.site-style-4327610d4542 .route27-tile-title{ font-weight: 800; color: #12233c; margin-bottom: 6px; }
  body.site-style-4327610d4542 .route27-muted{ color: var(--muted); font-size: 13px; line-height: 1.45; }
  body.site-style-4327610d4542 .route27-pay{ border: 1px solid var(--blue); background: #fff; }
  body.site-style-4327610d4542 .route27-pay-row{ display: grid; grid-template-columns: minmax(220px, 1fr) auto auto; gap: 12px; align-items: center; margin-top: 16px; }
  body.site-style-4327610d4542 form.route27-pay-row{ margin-top: 16px; }
  body.site-style-4327610d4542 .route27-pay-row input,body.site-style-4327610d4542 .route27-form input,body.site-style-4327610d4542 .route27-form select{ min-width: 0; width: 100%; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-size: 14px; background: #fff; }
  body.site-style-4327610d4542 .route27-blue-btn{ display: inline-block; border: none; border-radius: 8px; background: var(--blue); color: #fff; padding: 10px 16px; font-weight: 700; text-decoration: none; cursor: pointer; font-size: 14px; }
  body.site-style-4327610d4542 .route27-green-note{ border: 1px solid #9bdfb4; background: var(--green-bg); color: var(--green); border-radius: 8px; padding: 10px 12px; font-weight: 700; margin-top: 12px; font-size: 13px; }
  body.site-style-4327610d4542 .route27-program{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 12px; margin-top: 10px; }
  body.site-style-4327610d4542 .route27-program-head{ display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
  body.site-style-4327610d4542 .route27-program-title{ font-weight: 800; color: #12233c; }
  body.site-style-4327610d4542 .route27-recommendations{ margin-top: 22px; }
  body.site-style-4327610d4542 .route27-rec-filters{ background: #f4f8ff; border-radius: 10px; padding: 12px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
  body.site-style-4327610d4542 .route27-rec-filter{ display: flex; flex-direction: column; gap: 5px; min-width: 0; }
  body.site-style-4327610d4542 .route27-rec-filter label{ color: var(--muted); font-size: 12px; font-weight: 800; }
  body.site-style-4327610d4542 .route27-rec-filter select,body.site-style-4327610d4542 .route27-rec-filter input{ width: 100%; border: 1px solid #d8e8ff; border-radius: 8px; padding: 9px 10px; font-size: 13px; background: #fff; }
  body.site-style-4327610d4542 .route27-rec-actions{ grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
  body.site-style-4327610d4542 .route27-rec-cards{ display: grid; gap: 10px; margin-top: 12px; }
  body.site-style-4327610d4542 .route27-rec-card{ border: 1px solid #d8e8ff; border-radius: 10px; padding: 12px; background: #fff; }
  body.site-style-4327610d4542 .route27-rec-card-head{ display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
  body.site-style-4327610d4542 .route27-rec-card-title{ font-weight: 800; color: #12233c; }
  body.site-style-4327610d4542 .route27-rec-meta{ color: var(--muted); font-size: 13px; margin-top: 4px; line-height: 1.45; }
  body.site-style-4327610d4542 .route27-rec-reason{ background: #dcebfd; color: var(--blue); border-radius: 8px; padding: 8px 10px; font-size: 12px; font-weight: 700; margin-top: 10px; }
  body.site-style-4327610d4542 .route27-profile-recs{ margin-top: 18px; padding: 14px; border: 1px solid #d8e8ff; border-radius: 10px; background: #f8fbff; }
  body.site-style-4327610d4542 .route27-profile-recs .route27-subhead{ margin-top: 0; }
  body.site-style-4327610d4542 .route27-profile-recs-head{ display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; }
  body.site-style-4327610d4542 .route27-profile-directions{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
  body.site-style-4327610d4542 .route27-profile-direction{ display: block; border: 1px solid #d8e8ff; border-radius: 10px; padding: 11px 12px; background: #fff; text-decoration: none; }
  body.site-style-4327610d4542 .route27-profile-direction span{ display: block; color: #12233c; font-size: 13px; font-weight: 800; line-height: 1.3; }
  body.site-style-4327610d4542 .route27-profile-direction small{ display: block; margin-top: 5px; color: var(--muted); font-size: 12px; line-height: 1.35; }
  body.site-style-4327610d4542 .route27-profile-programs{ margin-top: 12px; }
  body.site-style-4327610d4542 .route27-profile-programs-title{ color: #12233c; font-size: 13px; font-weight: 800; margin-bottom: 8px; }
  body.site-style-4327610d4542 .route27-profile-program-list{ display: grid; gap: 8px; }
  body.site-style-4327610d4542 .route27-profile-program{ display: flex; justify-content: space-between; align-items: center; gap: 12px; border: 1px solid #d8e8ff; border-radius: 10px; padding: 10px 12px; background: #fff; }
  body.site-style-4327610d4542 .route27-profile-program b{ display: block; color: #12233c; font-size: 13px; line-height: 1.3; }
  body.site-style-4327610d4542 .route27-profile-program span{ display: block; color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 3px; }
  body.site-style-4327610d4542 .route27-profile-empty{ color: var(--muted); border: 1px dashed #cfe1fb; border-radius: 10px; padding: 12px; background: #fff; font-size: 13px; line-height: 1.45; }
  body.site-style-4327610d4542 .route27-direction-group{ border: 1px solid #d8e8ff; border-radius: 10px; background: #fff; overflow: hidden; }
  body.site-style-4327610d4542 .route27-direction-head{ display: flex; justify-content: space-between; gap: 14px; padding: 12px 14px; background: #f4f8ff; border-bottom: 1px solid #d8e8ff; }
  body.site-style-4327610d4542 .route27-direction-code{ color: var(--blue); font-size: 12px; font-weight: 800; margin-bottom: 2px; }
  body.site-style-4327610d4542 .route27-direction-title{ color: #12233c; font-size: 15px; font-weight: 800; line-height: 1.25; }
  body.site-style-4327610d4542 .route27-direction-reason{ color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 4px; }
  body.site-style-4327610d4542 .route27-direction-count{ color: var(--green); font-size: 12px; font-weight: 800; white-space: nowrap; }
  body.site-style-4327610d4542 .route27-direction-options{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
  body.site-style-4327610d4542 .route27-direction-option{ padding: 12px 14px; border-left: 1px solid #d8e8ff; }
  body.site-style-4327610d4542 .route27-direction-option:first-child{ border-left: 0; }
  body.site-style-4327610d4542 .route27-direction-option .route27-pill{ margin-bottom: 8px; }
  body.site-style-4327610d4542 .route27-option-title{ color: #12233c; font-weight: 800; font-size: 13px; line-height: 1.25; }
  body.site-style-4327610d4542 .route27-option-meta{ color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 4px; }
  body.site-style-4327610d4542 .route27-option-stats{ display: flex; flex-wrap: wrap; gap: 6px; margin: 9px 0; color: #3d4b63; font-size: 12px; font-weight: 700; }
  body.site-style-4327610d4542 .route27-map-head{ display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 22px; }
  body.site-style-4327610d4542 .route27-map-score{ display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-size: 13px; font-weight: 700; }
  body.site-style-4327610d4542 .route27-map-score input{ width: 120px; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; font-size: 13px; }
  body.site-style-4327610d4542 .route27-map-legend{ display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 10px; }
  body.site-style-4327610d4542 .route27-map-legend span{ border-radius: 999px; padding: 5px 9px; font-size: 12px; font-weight: 800; }
  body.site-style-4327610d4542 .route27-map-dream{ background: #fff1df; }
  body.site-style-4327610d4542 .route27-map-real{ background: #e8f8ef; }
  body.site-style-4327610d4542 .route27-map-safe{ background: #fff8d8; }
  body.site-style-4327610d4542 .route27-map-unknown{ background: #f4f8ff; }
  body.site-style-4327610d4542 .route27-map-table{ width: 100%; border-collapse: collapse; font-size: 12px; background: #fff; table-layout: fixed; }
  body.site-style-4327610d4542 .route27-map-table th{ background: #f4f8ff; color: var(--muted); text-align: left; font-size: 11px; padding: 7px 8px; border-bottom: 1px solid #d8e8ff; }
  body.site-style-4327610d4542 .route27-map-table td{ padding: 8px; border-bottom: 1px solid #d8e8ff; vertical-align: top; line-height: 1.3; }
  body.site-style-4327610d4542 .route27-map-table .route27-map-program{ font-weight: 800; color: #12233c; font-size: 13px; line-height: 1.25; }
  body.site-style-4327610d4542 .route27-map-table .route27-map-sub{ color: var(--muted); font-size: 11px; margin-top: 3px; line-height: 1.3; }
  body.site-style-4327610d4542 .route27-map-table .route27-blue-btn{ padding: 7px 10px; border-radius: 7px; font-size: 12px; white-space: nowrap; }
  body.site-style-4327610d4542 .route27-easier-btn{ display: inline-flex; align-items: center; gap: 5px; margin-top: 8px; border: 1px solid #d8e8ff; border-radius: 8px; background: var(--blue-bg); color: var(--blue); padding: 6px 9px; font-size: 12px; font-weight: 800; cursor: pointer; font-family: inherit; }
  body.site-style-4327610d4542 .route27-easier-btn:hover,body.site-style-4327610d4542 .route27-easier-btn.active{ border-color: var(--blue); background: #fff; }
  body.site-style-4327610d4542 .route27-easier-row td{ padding: 0 8px 10px; background: #fff; }
  body.site-style-4327610d4542 .route27-easier-box{ margin-top: 4px; border-top: 1px solid #d8e8ff; padding: 10px 0 0 0; }
  body.site-style-4327610d4542 .route27-easier-head{ display: flex; align-items: center; gap: 8px; flex-wrap: wrap; color: #12233c; font-size: 13px; font-weight: 800; margin-bottom: 8px; }
  body.site-style-4327610d4542 .route27-easier-chip{ border: 0; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 9px; font-size: 12px; font-weight: 800; cursor: pointer; font-family: inherit; }
  body.site-style-4327610d4542 .route27-easier-list{ display: grid; gap: 6px; max-width: 980px; }
  body.site-style-4327610d4542 .route27-easier-item{ display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 10px; align-items: center; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; background: #fbfdff; }
  body.site-style-4327610d4542 .route27-easier-score{ color: var(--blue); font-size: 13px; font-weight: 900; }
  body.site-style-4327610d4542 .route27-easier-margin{ color: var(--green); font-size: 12px; font-weight: 800; margin-top: 2px; }
  body.site-style-4327610d4542 .route27-easier-title{ color: #12233c; font-size: 13px; font-weight: 800; line-height: 1.25; }
  body.site-style-4327610d4542 .route27-easier-meta{ color: var(--muted); font-size: 11px; line-height: 1.35; margin-top: 2px; }
  body.site-style-4327610d4542 .route27-map-table .route27-pill{ padding: 4px 8px; font-size: 11px; }
  body.site-style-4327610d4542 .route27-map-table th.route27-tight,body.site-style-4327610d4542 .route27-map-table td.route27-tight{ width: 32px; padding-left: 6px; padding-right: 4px; }
  body.site-style-4327610d4542 .route27-map-table th.route27-action,body.site-style-4327610d4542 .route27-map-table td.route27-action{ width: 96px; text-align: right; }
  body.site-style-4327610d4542 .route27-map-remove{ border: 0; background: transparent; color: var(--muted); cursor: pointer; font-weight: 800; font-size: 16px; }
  body.site-style-4327610d4542 .route27-pill{ display: inline-block; border-radius: 999px; background: var(--blue-bg); color: var(--blue); padding: 5px 10px; font-size: 12px; font-weight: 700; }
  body.site-style-4327610d4542 .route27-calendar-item{ display: grid; grid-template-columns: 110px 1fr auto; gap: 12px; align-items: center; border: 1px solid #d8e8ff; border-radius: 8px; padding: 10px 12px; margin-top: 8px; }
  body.site-style-4327610d4542 .route27-date{ color: var(--blue); font-weight: 800; }
  body.site-style-4327610d4542 .route27-form{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 16px; }
  body.site-style-4327610d4542 .route27-score-card{ border: 1px solid #d8e8ff; border-radius: 10px; overflow: hidden; background: #fbfdff; margin-top: 14px; }
  body.site-style-4327610d4542 .route27-score-table{ width: 100%; border-collapse: collapse; font-size: 13px; }
  body.site-style-4327610d4542 .route27-score-table th{ background: #dcebfd; color: #3d4b63; padding: 9px 12px; text-align: left; font-size: 12px; }
  body.site-style-4327610d4542 .route27-score-table td{ border-top: 1px dashed #d8e8ff; padding: 9px 12px; vertical-align: middle; }
  body.site-style-4327610d4542 .route27-score-table input{ width: 120px; border: 1px solid #d8e8ff; border-radius: 8px; padding: 8px 10px; font-size: 13px; background: #fff; }
  body.site-style-4327610d4542 .route27-score-summary{ background: #f4f8ff; color: var(--muted); font-size: 12px; padding: 9px 12px; }
  body.site-style-4327610d4542 .route27-score-summary b{ color: #12233c; }
  body.site-style-4327610d4542 .route27-note-card{ border: 1px solid #d8e8ff; border-radius: 8px; padding: 11px 12px; background: #fff; margin-top: 10px; }
  body.site-style-4327610d4542 .route27-note-card.is-alert{ border-color: #ffb34d; background: #fff9ef; }
  body.site-style-4327610d4542 .route27-note-card b{ color: #12233c; }
  body.site-style-4327610d4542 .route27-chips{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
  body.site-style-4327610d4542 .route27-chip{ border: 1px solid #d8e8ff; border-radius: 999px; padding: 7px 11px; font-weight: 700; color: #12233c; background: #fff; font-size: 13px; cursor: pointer; font-family: inherit; }
  body.site-style-4327610d4542 .route27-chip.active{ background: var(--blue); color: #fff; border-color: var(--blue); }
  body.site-style-4327610d4542 .route27-result-box{ display: none; margin-top: 12px; padding: 0; border: 0; border-radius: 0; background: transparent; }
  body.site-style-4327610d4542 .route27-result-box.active{ display: block; }
  body.site-style-4327610d4542 .route27-result-title{ font-size: 14px; font-weight: 800; color: #12233c; margin-bottom: 6px; }
  body.site-style-4327610d4542 .route27-result-text{ color: var(--muted); line-height: 1.55; font-size: 13px; }
  body.site-style-4327610d4542 .route27-rec-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
  body.site-style-4327610d4542 .route27-rec-list a{ border: 1px solid #d8e8ff; border-radius: 999px; padding: 7px 10px; color: var(--blue); background: #fff; font-weight: 700; font-size: 13px; text-decoration: none; }
  body.site-style-4327610d4542 .route27-bars{ display: grid; gap: 7px; margin-top: 10px; }
  body.site-style-4327610d4542 .route27-bar{ display: grid; grid-template-columns: 130px 1fr 58px; gap: 10px; align-items: center; color: #12233c; font-size: 13px; font-weight: 700; }
  body.site-style-4327610d4542 .route27-bar-track{ display: block; height: 9px; border-radius: 999px; background: #dbeaff; overflow: hidden; }
  body.site-style-4327610d4542 .route27-bar-fill{ display: block; height: 100%; border-radius: inherit; background: var(--blue); }
  body.site-style-4327610d4542 .route27-bar.is-top .route27-bar-fill{ background: #ffd44d; }
  body.site-style-4327610d4542 .route27-repeat-link{ display: inline-flex; margin-top: 10px; }
  body.site-style-4327610d4542 .route27-ai{ display: grid; grid-template-columns: 120px 1fr; gap: 18px; align-items: start; }
  body.site-style-4327610d4542 .route27-ai img{ width: 90px; max-width: 100%; border-radius: 10px; }
  body.site-style-4327610d4542 .route27-answer{ background: #dcebfd; border-radius: 8px; padding: 12px; color: #24364f; line-height: 1.45; font-size: 13px; }
  body.site-style-4327610d4542 .route27-panel{ display: none; }
  body.site-style-4327610d4542 .route27-panel.active{ display: block; }
  body.site-style-4327610d4542 .kim-page{ width: 100%; margin: 0; }
  body.site-style-4327610d4542 .kim-crumbs{ font-size: 13px; color: var(--ink-3); margin-bottom: 14px; }
  body.site-style-4327610d4542 .kim-crumbs a{ color: var(--ink-2); text-decoration: none; }
  body.site-style-4327610d4542 .kim-hero{ background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 20px 22px; margin-bottom: 14px; }
  body.site-style-4327610d4542 .kim-kicker{ display: inline-block; background: var(--blue-bg); color: var(--blue); border-radius: 999px; padding: 5px 11px; font-size: 12px; font-weight: 800; margin-bottom: 12px; }
  body.site-style-4327610d4542 .kim-hero h2{ font-size: 28px; line-height: 1.2; margin: 0 0 10px; color: #1b1b1b; }
  body.site-style-4327610d4542 .kim-hero h2 span{ color: var(--blue); }
  body.site-style-4327610d4542 .kim-hero p,body.site-style-4327610d4542 .kim-card p{ color: var(--ink-2); line-height: 1.6; margin: 0 0 14px; }
  body.site-style-4327610d4542 .kim-status{ display: inline-flex; align-items: center; border-radius: 999px; padding: 7px 13px; font-size: 13px; font-weight: 800; background: var(--warn-bg); color: var(--warn-ink); }
  body.site-style-4327610d4542 .kim-steps{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 18px; }
  body.site-style-4327610d4542 .kim-step{ border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; color: var(--muted); font-size: 12px; background: #fff; }
  body.site-style-4327610d4542 .kim-step b{ display: block; color: #1b1b1b; margin-bottom: 3px; }
  body.site-style-4327610d4542 .kim-step.active{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-4327610d4542 .kim-links,body.site-style-4327610d4542 .kim-filter,body.site-style-4327610d4542 .kim-docs{ display: flex; flex-wrap: wrap; gap: 8px; }
  body.site-style-4327610d4542 .kim-links{ margin-top: 16px; }
  body.site-style-4327610d4542 .kim-links a,body.site-style-4327610d4542 .kim-docs a,body.site-style-4327610d4542 .kim-filter button{ border: 1px solid var(--border); border-radius: 8px; padding: 8px 12px; color: #1b1b1b; background: #fff; text-decoration: none; font-size: 13px; font-weight: 800; }
  body.site-style-4327610d4542 .kim-links a.primary,body.site-style-4327610d4542 .kim-docs a.primary,body.site-style-4327610d4542 .kim-filter button.on{ background: var(--blue); border-color: var(--blue); color: #fff; }
  body.site-style-4327610d4542 .kim-stats{ display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 20px; }
  body.site-style-4327610d4542 .kim-stat,body.site-style-4327610d4542 .kim-card{ background: #fff; border: 1px solid var(--border); border-radius: 10px; }
  body.site-style-4327610d4542 .kim-stat{ padding: 14px 16px; }
  body.site-style-4327610d4542 .kim-stat b{ display: block; color: #1b1b1b; font-size: 22px; line-height: 1.2; }
  body.site-style-4327610d4542 .kim-stat span{ display: block; color: var(--muted); font-size: 12px; font-weight: 700; }
  body.site-style-4327610d4542 .kim-card{ padding: 18px 20px; margin-bottom: 14px; }
  body.site-style-4327610d4542 .kim-card h2{ margin: 0 0 8px; color: #1b1b1b; font-size: 20px; }
  body.site-style-4327610d4542 .kim-filter{ margin: 14px 0; }
  body.site-style-4327610d4542 .kim-filter button{ cursor: pointer; font-family: inherit; }
  body.site-style-4327610d4542 .kim-row{ border: 1px solid var(--border); border-radius: 10px; padding: 14px 16px; margin: 10px 0; background: #fff; }
  body.site-style-4327610d4542 .kim-row.changed{ border-color: #f59e0b; background: #fffaf2; }
  body.site-style-4327610d4542 .kim-row-head{ display: flex; align-items: center; justify-content: space-between; gap: 12px; }
  body.site-style-4327610d4542 .kim-row h3{ margin: 0; color: #1b1b1b; font-size: 16px; }
  body.site-style-4327610d4542 .kim-pill{ flex: none; border-radius: 999px; padding: 4px 9px; font-size: 11px; font-weight: 800; background: var(--ok-bg); color: var(--ok-ink); }
  body.site-style-4327610d4542 .kim-row.changed .kim-pill{ background: var(--warn-bg); color: var(--warn-ink); }
  body.site-style-4327610d4542 .kim-look{ border-left: 3px solid var(--blue); padding-left: 10px; color: var(--ink-2); }
  body.site-style-4327610d4542 .kim-docs{ margin-top: 11px; }
  body.site-style-4327610d4542 .kim-docs a{ color: var(--blue); }
  body.site-style-4327610d4542 .kim-docs a.primary{ color: #fff; }
  body.site-style-4327610d4542 .kim-card ul{ margin: 0; padding-left: 22px; color: var(--ink-2); line-height: 1.7; }
  body.site-style-4327610d4542 .kim-card li a{ color: var(--blue); font-weight: 800; }
  body.site-style-4327610d4542 .kim-article .kim-card h2{ font-size: 22px; }
  body.site-style-4327610d4542 .kim-lead{ font-size: 16px; border-left: 4px solid var(--blue); background: var(--blue-bg); padding: 13px 16px; border-radius: 0 8px 8px 0; }
  body.site-style-4327610d4542 .kim-warning{ border-color: #ef4444; background: #fef2f2; }
  body.site-style-4327610d4542 .kim-article-table{ table-layout: auto; }
  body.site-style-4327610d4542 .kim-article-table th,body.site-style-4327610d4542 .kim-article-table td{ white-space: normal; vertical-align: top; padding: 10px 12px; line-height: 1.45; }
  body.site-style-4327610d4542 .kim-steps-list{ margin: 0; padding-left: 22px; color: var(--ink-2); line-height: 1.7; }
  body.site-style-4327610d4542 .score-converter{ display: grid; grid-template-columns: minmax(220px, 1fr) 140px minmax(190px, .8fr); gap: 10px; align-items: center; margin-top: 14px; }
  body.site-style-4327610d4542 .score-converter select,body.site-style-4327610d4542 .score-converter input{ width: 100%; min-width: 0; border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font: inherit; background: #fff; }
  body.site-style-4327610d4542 .score-output{ font-size: 18px; font-weight: 800; color: #1b1b1b; }
  body.site-style-4327610d4542 .score-grid{ display: grid; grid-template-columns: repeat(auto-fill, minmax(54px, 1fr)); gap: 5px; margin-top: 12px; }
  body.site-style-4327610d4542 .score-cell{ border: 1px solid var(--border); border-radius: 8px; padding: 5px 4px; text-align: center; background: #fff; font-variant-numeric: tabular-nums; }
  body.site-style-4327610d4542 .score-cell .primary-score{ display: block; color: var(--muted); font-size: 11px; }
  body.site-style-4327610d4542 .score-cell .test-score{ display: block; color: #1b1b1b; font-size: 13px; font-weight: 800; }
  body.site-style-4327610d4542 .score-cell.threshold{ border-color: var(--blue); background: var(--blue-bg); }
  body.site-style-4327610d4542 .kim-qa .q{ margin: 16px 0 6px; color: var(--ink); font-size: 16px; font-weight: 800; }
  body.site-style-4327610d4542 .kim-qa .a{ color: var(--ink-2); margin: 0; line-height: 1.65; }
  @media (max-width: 980px){body.site-style-4327610d4542 .route27-steps{ grid-template-columns: repeat(2, 1fr); }
    body.site-style-4327610d4542 .route27-two,body.site-style-4327610d4542 .route27-pay-row,body.site-style-4327610d4542 .route27-form,body.site-style-4327610d4542 .route27-calendar-item,body.site-style-4327610d4542 .route27-ai,body.site-style-4327610d4542 .route27-test-results,body.site-style-4327610d4542 .route27-rec-filters,body.site-style-4327610d4542 .route27-profile-directions{ grid-template-columns: 1fr; }
    body.site-style-4327610d4542 .route27-profile-recs-head,body.site-style-4327610d4542 .route27-profile-program{ align-items: flex-start; flex-direction: column; }
    body.site-style-4327610d4542 .route27-direction-options{ grid-template-columns: 1fr; }
    body.site-style-4327610d4542 .route27-direction-option{ border-left: 0; border-top: 1px solid #d8e8ff; }
    body.site-style-4327610d4542 .route27-direction-option:first-child{ border-top: 0; }
    body.site-style-4327610d4542 .route27-progress{ float: none; display: inline-block; margin-bottom: 14px; }
    body.site-style-4327610d4542 .route27-save{ float: none; display: flex; justify-content: flex-start; margin-bottom: 14px; max-width: none; }
    body.site-style-4327610d4542 .route27-save-hint{ text-align: left; }
    body.site-style-4327610d4542 .kim-steps{ grid-template-columns: 1fr 1fr; }
    body.site-style-4327610d4542 .score-converter{ grid-template-columns: 1fr; }}

body.site-app-page .route27-profile-recs{ margin-top: 18px; padding: 14px; border: 1px solid #d8e8ff; border-radius: 10px; background: #f8fbff; }
body.site-app-page .route27-profile-recs .route27-subhead{ margin-top: 0; }
body.site-app-page .route27-profile-recs-head{ display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; }
body.site-app-page .route27-profile-directions{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
body.site-app-page .route27-profile-direction{ display: block; border: 1px solid #d8e8ff; border-radius: 10px; padding: 11px 12px; background: #fff; text-decoration: none; }
body.site-app-page .route27-profile-direction span{ display: block; color: #12233c; font-size: 13px; font-weight: 800; line-height: 1.3; }
body.site-app-page .route27-profile-direction small{ display: block; margin-top: 5px; color: var(--muted); font-size: 12px; line-height: 1.35; }
body.site-app-page .route27-profile-programs{ margin-top: 12px; }
body.site-app-page .route27-profile-programs-title{ color: #12233c; font-size: 13px; font-weight: 800; margin-bottom: 8px; }
body.site-app-page .route27-profile-program-list{ display: grid; gap: 8px; }
body.site-app-page .route27-profile-program{ display: flex; justify-content: space-between; align-items: center; gap: 12px; border: 1px solid #d8e8ff; border-radius: 10px; padding: 10px 12px; background: #fff; }
body.site-app-page .route27-profile-program b{ display: block; color: #12233c; font-size: 13px; line-height: 1.3; }
body.site-app-page .route27-profile-program span{ display: block; color: var(--muted); font-size: 12px; line-height: 1.35; margin-top: 3px; }
body.site-app-page .route27-profile-empty{ color: var(--muted); border: 1px dashed #cfe1fb; border-radius: 10px; padding: 12px; background: #fff; font-size: 13px; line-height: 1.45; }
@media (max-width: 980px){
  body.site-app-page .route27-profile-directions{ grid-template-columns: 1fr; }
  body.site-app-page .route27-profile-recs-head,body.site-app-page .route27-profile-program{ align-items: flex-start; flex-direction: column; }
}

/* Shared site shell: canonical header, navigation and footer. */
body a,
body a:visited,
body a:hover,
body a:active {
  text-decoration: none !important;
  text-decoration-line: none !important;
}

body[class] header {
  display: block;
  padding: 0;
  background: #fff;
  border-bottom: 1px solid #e2e2e2;
}

body[class] .site-topbar {
  display: block;
  max-width: 1200px;
  margin: 0 auto;
  padding: 18px 24px;
  border: 0;
}

body[class] .site-topbar-left {
  display: flex;
  align-items: center;
  gap: 32px;
  width: 100%;
  min-width: 0;
}

body[class] .site-logo,
body[class] .site-logo:visited {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 10px;
  color: #1b1b1b;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
}

body[class] .site-logo img {
  display: block;
  width: 34px;
  min-width: 34px;
  max-width: 34px;
  height: 34px;
  object-fit: contain;
  border-radius: 0;
}

body[class] .site-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
  gap: 4px;
  min-width: 0;
}

body[class] .site-nav a,
body[class] .site-nav a:visited {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 12px 8px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background: transparent;
  color: #6b7280;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
}

body[class] .site-nav a:hover {
  color: #1b1b1b;
  background: #f6f8fb;
}

body[class] .site-nav a[aria-current="page"] {
  color: #1b1b1b;
  border-bottom-color: #1b1b1b;
  font-weight: 800;
}

body[class] .site-nav .site-nav-cta,
body[class] .site-nav .site-nav-cta:visited {
  min-height: 44px;
  margin-left: 8px;
  padding: 10px 17px 8px;
  border: 0;
  border-bottom: 4px solid #f08a00;
  border-radius: 8px;
  background: #ffbf17;
  color: #15243a;
  font-weight: 800;
}

body[class] .site-nav .site-nav-cta:hover {
  background: #ffc92f;
  color: #15243a;
}

body[class] .site-nav .site-nav-cta[aria-current="page"] {
  border-bottom-color: #f08a00;
}

body[class] .site-header-main {
  max-width: 1200px;
  margin: 0 auto;
  padding: 14px 24px 18px;
  border-top: 1px solid #e2e2e2;
}

body[class] .site-footer {
  margin-top: 40px;
  padding: 30px 24px 34px;
  border-top: 1px solid #e2e2e2;
  background: #fff;
}

body[class] .site-footer-inner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 18px 36px;
  max-width: 1200px;
  margin: 0 auto;
}

body[class] .site-footer-brand,
body[class] .site-footer-brand:visited {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  color: #1b1b1b;
  font-size: 15px;
  font-weight: 800;
}

body[class] .site-footer-brand img {
  display: block;
  width: 30px;
  min-width: 30px;
  max-width: 30px;
  height: 30px;
  object-fit: contain;
  border-radius: 0;
}

body[class] .site-footer-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px 22px;
}

body[class] .site-footer-nav a,
body[class] .site-footer-nav a:visited {
  color: #6b7280;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}

body[class] .site-footer-nav a:hover { color: #1b1b1b; }

body[class] .site-footer-note {
  grid-column: 1 / -1;
  margin: 0;
  color: #8a94a3;
  font-size: 13px;
}

body[class] main a:not([class]),
body[class] main a:not([class]):visited {
  color: #1769e8;
  font-weight: 650;
  text-decoration: none;
}

body[class] main a:not([class]):hover { color: #124fae; }

body[class] a:focus-visible {
  outline: 3px solid rgba(27, 110, 243, .28);
  outline-offset: 3px;
}

@media (max-width: 800px) {
  body[class] .site-topbar { padding: 20px 22px 24px; }

  body[class] .site-topbar-left {
    display: block;
  }

  body[class] .site-logo {
    margin-bottom: 18px;
    font-size: 16px;
  }

  body[class] .site-nav {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px 8px;
    width: 100%;
  }

  body[class] .site-nav a,
  body[class] .site-nav a:visited {
    justify-content: flex-start;
    min-width: 0;
    min-height: 46px;
    padding: 11px 12px 9px;
    font-size: 16px;
    white-space: normal;
  }

  body[class] .site-nav .site-nav-cta,
  body[class] .site-nav .site-nav-cta:visited {
    grid-column: 1;
    justify-self: start;
    min-height: 48px;
    margin: 8px 0 0;
    padding: 12px 18px 9px;
    white-space: nowrap;
  }

  body[class] .site-header-main { padding: 14px 22px 18px; }

  body[class] .site-footer {
    margin-top: 32px;
    padding: 26px 22px 30px;
  }

  body[class] .site-footer-inner {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  body[class] .site-footer-nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: initial;
    gap: 10px 16px;
  }

  body[class] .site-footer-note { grid-column: 1; }
}

/* One responsive percentage grid for every public page. */
body[class] .site-topbar,
body[class] .site-header-main,
body[class] .site-header-title,
body[class] .site-footer-inner,
body[class] > main {
  width: var(--site-page-width);
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.universities-catalog-page {
  background: var(--bg);
}

body.universities-catalog-page .site-header {
  background: #fff;
}

body.universities-catalog-page .site-header-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px 20px;
  padding: 14px 0 18px;
  border-top: 1px solid var(--border);
}

body.universities-catalog-page .site-header-title h1 {
  margin: 0;
  color: #1b1b1b;
  font-size: 18px;
  line-height: 1.25;
}

body.universities-catalog-page .site-header-title span {
  color: var(--muted);
  font-size: 13px;
}

body.universities-catalog-page .catalog-main {
  padding-top: 28px !important;
}

body.universities-catalog-page .university-filter {
  border-color: #d9e8fb;
  border-radius: 8px;
  box-shadow: 0 12px 30px rgba(34, 78, 135, .06);
}

body.universities-catalog-page .catalog-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr));
}

@media (max-width: 1200px) {
  :root { --site-page-width: 90%; }
}

@media (max-width: 800px) {
  :root { --site-page-width: 100%; }

  body.universities-catalog-page .site-header-title {
    padding: 14px 22px 18px;
  }

  body.universities-catalog-page .catalog-main {
    padding: 24px 16px 54px !important;
  }

  body.universities-catalog-page .university-filter {
    padding: 20px 16px;
  }
}

/* Searchable multi-selects on the static universities catalogue. */
body.universities-catalog-page .multi-filter-source {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

body.universities-catalog-page .multi-filter {
  position: relative;
  min-width: 0;
}

body.universities-catalog-page .multi-filter-control {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  min-height: 48px;
  padding: 7px 12px;
  border: 2px solid #d5e6ff;
  border-radius: 8px;
  background: #f8fbff;
  color: var(--ink);
  cursor: text;
  transition: border-color .15s, box-shadow .15s, background .15s;
}

body.universities-catalog-page .multi-filter:focus-within .multi-filter-control {
  border-color: var(--blue);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(23, 105, 232, .12);
}

body.universities-catalog-page .multi-filter-values {
  display: contents;
}

body.universities-catalog-page .multi-filter-chip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: 30px;
  padding: 4px 5px 4px 10px;
  border: 1px solid #bfd8ff;
  border-radius: 999px;
  background: #eaf3ff;
  color: #185fbf;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}

body.universities-catalog-page .multi-filter-chip > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.universities-catalog-page .multi-filter-remove {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  margin-left: 3px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #185fbf;
  font: 700 20px/22px Arial, sans-serif;
  cursor: pointer;
}

body.universities-catalog-page .multi-filter-remove:hover,
body.universities-catalog-page .multi-filter-remove:focus-visible {
  background: #d4e7ff;
  outline: none;
}

body.universities-catalog-page .multi-filter-input {
  flex: 1 1 145px;
  min-width: 90px;
  height: 32px;
  padding: 0 3px;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--ink);
  font: inherit;
}

body.universities-catalog-page .multi-filter-input::placeholder {
  color: #7e8999;
  opacity: 1;
}

body.universities-catalog-page .multi-filter-menu {
  position: absolute;
  z-index: 40;
  top: calc(100% + 6px);
  right: 0;
  left: 0;
  max-height: 300px;
  overflow-y: auto;
  padding: 6px;
  border: 1px solid #d7e2f1;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 38px rgba(35, 55, 85, .16);
}

body.universities-catalog-page .multi-filter-menu[hidden] {
  display: none;
}

body.universities-catalog-page .multi-filter-option {
  display: block;
  width: 100%;
  min-height: 40px;
  padding: 9px 11px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--ink);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

body.universities-catalog-page .multi-filter-option:hover,
body.universities-catalog-page .multi-filter-option:focus-visible,
body.universities-catalog-page .multi-filter-option.is-active {
  background: #eaf3ff;
  color: var(--blue);
  outline: none;
}

body.universities-catalog-page .multi-filter-empty {
  padding: 12px 11px;
  color: var(--muted);
  font-size: 14px;
}

body.universities-catalog-page .filter-selects {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.universities-catalog-page .filter-checks label.is-disabled {
  color: #8b94a3;
  cursor: not-allowed;
}

body.universities-catalog-page .filter-checks label.is-disabled small {
  color: #9aa3b1;
  font-size: 11px;
  font-weight: 500;
}

body.universities-catalog-page .filter-checks label.is-disabled input {
  opacity: .55;
}

body.universities-catalog-page .pc-statuses {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 7px;
}

body.universities-catalog-page .pc-status {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 3px 8px;
  border: 1px solid #d8e1ec;
  border-radius: 999px;
  background: #f7f9fc;
  color: #506079;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.2;
}

body.universities-catalog-page .pc-status-military {
  border-color: var(--block-yellow-border);
  background: var(--block-yellow-bg);
  color: #8b5700;
}

body.universities-catalog-page .pc-status-hostel {
  border-color: #b9e5ca;
  background: #effaf3;
  color: #217a43;
}

@media (max-width: 900px) {
  body.universities-catalog-page .filter-selects {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  body.universities-catalog-page .filter-selects {
    grid-template-columns: 1fr;
  }

  body.universities-catalog-page .multi-filter-control {
    min-height: 52px;
  }

  body.universities-catalog-page .multi-filter-menu {
    max-height: 240px;
  }
}

/* Shared semantic information blocks. HTML chooses a role; CSS owns the color. */
body .block-yellow {
  background: var(--block-yellow-bg) !important;
  border: 1px solid var(--block-yellow-border) !important;
}

body .block-blue {
  background: var(--block-blue-bg) !important;
  border: 1px solid var(--block-blue-border) !important;
}

/* University cards use the same typography and rhythm as the rest of the site. */
body.static-university-page {
  background: var(--bg);
  color: #1b1b1b;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
}

body.static-university-page .site-header-title span {
  display: none !important;
}

body.universities-catalog-page .site-header-title,
body.static-university-page .site-header-title {
  display: none !important;
}

body.site-section-napravleniya .site-header-main,
body.site-section-gaidy .site-header-main,
body.site-section-podbor-vuza .site-header-main,
body.site-section-priem-2026 .site-header-main,
body.site-section-priem-2027 .site-header-main {
  display: none !important;
}

body.static-university-page .site-header-title {
  padding: 14px 0 18px;
  border-top: 1px solid var(--border);
}

body.static-university-page .site-header-title h1 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
}

body.static-university-page main {
  padding-top: 28px !important;
}

body.static-university-page .back {
  margin-bottom: 18px;
  font-size: 14px;
  font-weight: 500;
}

body.static-university-page .hero {
  margin: 0 0 20px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body.static-university-page .hero h1 {
  max-width: 1040px;
  margin: 0 0 20px;
  color: #1b1b1b;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.2;
}

body.static-university-page .university-characteristics {
  margin: 0 0 12px;
  padding: 18px;
  border: 1px solid var(--block-blue-border);
  border-radius: 8px;
  background: var(--block-blue-bg);
}

body.static-university-page .university-characteristics h2 {
  margin: 0 0 14px;
  color: #1b1b1b;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

body.static-university-page .university-characteristics dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px 22px;
  margin: 0;
}

body.static-university-page .university-characteristic {
  min-width: 0;
}

body.static-university-page .university-characteristic dt {
  margin: 0 0 2px;
  color: #687386;
  font-size: 12px;
  font-weight: 500;
}

body.static-university-page .university-characteristic dd {
  margin: 0;
  color: #26364d;
  font-size: 14px;
  font-weight: 600;
}

body.static-university-page .contacts {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 16px 18px;
  border-radius: 8px;
  border: 1px solid var(--block-yellow-border);
  background: var(--block-yellow-bg);
  color: #4f5968;
  font-size: 14px;
}

body.static-university-page .contacts > div {
  display: flex;
  align-items: baseline;
  gap: 5px;
}

body.static-university-page .contacts b {
  color: #303846;
  font-weight: 600;
}

body.static-university-page .contact-icon {
  width: 20px;
  font-size: 15px;
}

body.static-university-page .docs {
  margin: 12px 0 0;
  padding: 18px;
  border-radius: 8px;
  border: 1px solid var(--block-blue-border);
  background: var(--block-blue-bg);
  color: #303846;
}

body.static-university-page .docs-title {
  margin: 0 0 14px;
  color: #1b1b1b;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

body.static-university-page .doc-section {
  margin: 0 0 12px;
}

body.static-university-page .doc-section:last-child {
  margin-bottom: 0;
}

body.static-university-page .doc-section h3 {
  margin: 0 0 5px;
  color: #303846;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
}

body.static-university-page .doc-links {
  gap: 4px 22px;
  min-height: 18px;
  font-size: 14px;
  line-height: 1.45;
}

body.static-university-page .doc-links a {
  font-weight: 500;
}

body.static-university-page .dod {
  margin: 0 0 20px;
  padding: 18px;
  border: 1px solid var(--block-yellow-border);
  border-radius: 8px;
  background: var(--block-yellow-bg);
  color: #4f5968;
}

body.static-university-page .dod h2 {
  margin: 0 0 8px;
  color: #9b5a12;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

body.static-university-page .dod > p {
  margin: 0 0 12px;
  color: #687386;
  font-size: 14px;
}

body.static-university-page .dod-empty {
  min-height: 18px;
  margin-bottom: 0 !important;
}

body.static-university-page .dod-item {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(197, 143, 37, .28);
}

body.static-university-page .dod-item h3 {
  margin: 0 0 4px;
  color: #303846;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
}

body.static-university-page .dod-dates {
  margin-bottom: 4px;
  color: #687386;
  font-size: 13px;
}

body.static-university-page .dod-item a {
  font-size: 14px;
  font-weight: 600;
}

body.static-university-page .badge {
  margin: 2px 0 14px;
  padding: 8px 12px;
  border-radius: 7px;
  font-size: 14px;
  font-weight: 600;
}

body.static-university-page .stat {
  padding: 13px 14px;
  border-color: var(--block-blue-border);
  border-radius: 8px;
  background: var(--block-blue-bg);
}

body.static-university-page .stat b {
  color: #17263a;
  font-size: 22px;
  font-weight: 700;
}

body.static-university-page .code,
body.static-university-page .direction-name,
body.static-university-page .program-name,
body.static-university-page .program b {
  font-weight: 600;
}

body.static-university-page .direction summary {
  padding: 14px 16px;
}

@media (max-width: 800px) {
  body.static-university-page .site-header-title {
    padding: 14px 22px 18px;
  }

  body.static-university-page main {
    padding: 24px 16px 54px !important;
  }

  body.static-university-page .hero h1 {
    margin-bottom: 16px;
    font-size: 24px;
  }

  body.static-university-page .contacts,
  body.static-university-page .docs,
  body.static-university-page .university-characteristics {
    padding: 16px;
  }

  body.static-university-page .university-characteristics dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  body.static-university-page .university-characteristics dl {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
/* Admission 2026: route to the preserved direction-list analysis. */
.admission26-directions-link {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  margin: 18px 0;
  padding: 16px 18px;
  border: 1px solid var(--block-blue-border);
  border-radius: 8px;
  background: var(--block-blue-bg);
  color: #17345e;
  text-decoration: none;
}
.admission26-directions-link:hover {
  border-color: #74a6f7;
  background: #e2edff;
}
.admission26-directions-icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 8px;
  background: #1769e8;
  color: #fff;
  font-size: 22px;
  font-weight: 700;
}
.admission26-directions-link strong,
.admission26-directions-link small {
  display: block;
}
.admission26-directions-link strong {
  margin-bottom: 3px;
  color: #12233c;
  font-size: 17px;
  line-height: 1.3;
}
.admission26-directions-link small {
  color: #687386;
  font-size: 13px;
  line-height: 1.45;
}
.admission26-directions-arrow {
  color: #1769e8;
  font-size: 22px;
  font-weight: 700;
}

/* General catalog of study directions. */
body.directions-catalog-page {
  margin: 0;
  background: #fafafa;
  color: #1d2430;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
}
body.directions-catalog-page .directions-catalog-main {
  width: var(--site-page-width);
  max-width: 1640px;
  margin: 0 auto;
  padding: 34px 0 72px;
}
.directions-catalog-intro {
  max-width: 960px;
  margin-bottom: 24px;
}
.directions-catalog-kicker {
  display: inline-block;
  margin-bottom: 12px;
  padding: 7px 11px;
  border-radius: 7px;
  background: var(--block-blue-bg);
  color: #1769e8;
  font-size: 13px;
  font-weight: 700;
}
.directions-catalog-intro h1,
.direction-catalog-detail h1 {
  margin: 0 0 10px;
  color: #1b1b1b;
  font-size: 34px;
  line-height: 1.2;
}
.directions-catalog-intro p,
.direction-catalog-lead {
  margin: 0;
  color: #687386;
  font-size: 16px;
}
.directions-catalog-filter {
  display: block;
  margin-bottom: 20px;
  padding: 24px;
  border: 1px solid var(--block-blue-border);
  border-radius: 8px;
  background: #fff;
}
.directions-catalog-filter .directions-search-field > label,
.directions-catalog-filter .directions-city-field > label,
.directions-catalog-filter .directions-cost-field > span,
.directions-filter-section legend {
  display: block;
  margin-bottom: 7px;
  color: #506079;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}
.directions-catalog-filter input[type="search"],
.directions-catalog-filter input[type="number"] {
  width: 100%;
  min-height: 48px;
  padding: 10px 12px;
  border: 1px solid #c8dcfb;
  border-radius: 7px;
  background: #f8fbff;
  color: #26364d;
  font: inherit;
}
.directions-catalog-filter input:focus {
  border-color: #1769e8;
  outline: 3px solid rgba(23, 105, 232, .12);
}
.directions-search-field,
.directions-query-control {
  position: relative;
}
.directions-query-suggest {
  position: absolute;
  z-index: 30;
  top: calc(100% + 6px);
  right: 0;
  left: 0;
  display: none;
  overflow: hidden;
  border: 1px solid #c8dcfb;
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 14px 32px rgba(31, 49, 75, .16);
}
.directions-query-suggest.open {
  display: block;
}
.directions-query-suggest-list {
  max-height: 356px;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.directions-query-option {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-height: 46px;
  padding: 10px 12px;
  border-bottom: 1px solid #edf0f4;
  color: #26364d;
  cursor: pointer;
}
.directions-query-option:hover,
.directions-query-option:has(input:checked) {
  background: var(--block-blue-bg);
}
.directions-query-option input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: #1769e8;
}
.directions-query-option span {
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
}
.directions-query-option small {
  color: #7d899c;
  font-size: 12px;
  white-space: nowrap;
}
.directions-query-done {
  display: block;
  width: calc(100% - 20px);
  min-height: 38px;
  margin: 10px;
  border: 0;
  border-radius: 7px;
  background: #1769e8;
  color: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}
.directions-query-done:hover {
  background: #0e58ca;
}
.directions-filter-row-main,
.directions-filter-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.directions-filter-row-main {
  margin-bottom: 22px;
}
.directions-filter-columns {
  align-items: start;
}
.directions-filter-section {
  min-width: 0;
  margin: 0 0 20px;
  padding: 0;
  border: 0;
}
.directions-filter-subtitle {
  display: block;
  margin: 10px 0 7px;
  color: #738097;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
}
.directions-filter-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.direction-filter-chip {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  gap: 7px;
  padding: 8px 10px;
  border: 1px solid #dce3ec;
  border-radius: 7px;
  background: #fff;
  color: #26364d;
  cursor: pointer;
}
.direction-filter-chip:has(input:checked) {
  border-color: #1769e8;
  background: var(--block-blue-bg);
  color: #154f9f;
}
.direction-filter-chip input {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  margin: 0;
  accent-color: #1769e8;
}
.direction-filter-chip > span {
  margin: 0;
  color: inherit;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  text-transform: none;
}
.direction-filter-chip small {
  color: #8a95a7;
  font-size: 11px;
}
.directions-city-field,
.directions-city-control {
  position: relative;
}
.directions-city-suggest {
  position: absolute;
  z-index: 20;
  top: calc(100% + 6px);
  right: 0;
  left: 0;
  display: none;
  overflow: hidden;
  border: 1px solid #c8dcfb;
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(31, 49, 75, .14);
}
.directions-city-suggest.open {
  display: block;
}
.directions-city-suggest button {
  display: block;
  width: 100%;
  padding: 10px 12px;
  border: 0;
  border-bottom: 1px solid #edf0f4;
  background: #fff;
  color: #26364d;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.directions-city-suggest button:hover {
  background: var(--block-blue-bg);
}
.directions-selected-directions,
.directions-selected-cities {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}
.directions-selected-direction,
.directions-selected-city {
  padding: 6px 9px;
  border: 1px solid #bcd4fb;
  border-radius: 7px;
  background: var(--block-blue-bg);
  color: #175dbb;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}
.directions-selected-direction {
  max-width: 100%;
  overflow: hidden;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.directions-filter-actions {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  padding-top: 18px;
  border-top: 1px solid #e6e9ee;
}
.directions-cost-field {
  display: grid;
  min-width: 330px;
  grid-template-columns: auto 190px;
  align-items: center;
  gap: 10px;
}
.directions-cost-field > span {
  margin: 0 !important;
  text-transform: none !important;
}
.directions-cost-field input[type="number"] {
  min-height: 42px;
}
.directions-filter-buttons {
  display: flex;
  gap: 10px;
}
.directions-filter-submit,
.directions-filter-reset {
  min-height: 46px;
  padding: 11px 16px;
  border-radius: 7px;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}
.directions-filter-submit {
  border: 1px solid #1769e8;
  background: #1769e8;
  color: #fff;
  box-shadow: 0 3px 0 #0e52bd;
}
.directions-filter-reset {
  border: 1px solid #dce3ec;
  background: #fff;
  color: #5f6b7c;
}
.directions-catalog-count {
  margin: 0 0 12px;
  color: #687386;
}
.directions-catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.direction-catalog-card {
  display: flex;
  min-width: 0;
  min-height: 154px;
  flex-direction: column;
  padding: 18px;
  border: 1px solid #e2e5ea;
  border-radius: 8px;
  background: #fff;
  color: #1d2430;
  text-decoration: none;
}
.direction-catalog-card[hidden] {
  display: none !important;
}
.direction-catalog-card:hover {
  border-color: #73a5ff;
  box-shadow: 0 8px 20px rgba(15, 41, 66, .06);
}
.direction-catalog-code {
  margin-bottom: 7px;
  color: #1769e8;
  font-size: 13px;
  font-weight: 700;
}
.direction-catalog-name {
  margin-bottom: 12px;
  color: #1d2430;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
}
.direction-catalog-meta {
  margin-top: auto;
  color: #687386;
  font-size: 13px;
}
.direction-catalog-levels {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 10px;
}
.direction-catalog-levels span {
  padding: 3px 7px;
  border: 1px solid #d8e1ec;
  border-radius: 999px;
  background: #f7f9fc;
  color: #506079;
  font-size: 11px;
  font-weight: 600;
}
.directions-catalog-empty {
  padding: 24px;
  border: 1px solid #e2e5ea;
  border-radius: 8px;
  background: #fff;
  color: #687386;
}
.direction-catalog-back {
  display: inline-block;
  margin-bottom: 18px;
  color: #1769e8;
  text-decoration: none;
}
.direction-catalog-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 20px 0 24px;
}
.direction-catalog-summary span {
  padding: 8px 11px;
  border-radius: 7px;
  background: var(--block-blue-bg);
  color: #375274;
  font-weight: 600;
}
.direction-university-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.direction-university-card {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 16px;
  border: 1px solid #e2e5ea;
  border-radius: 8px;
  background: #fff;
  color: #1d2430;
  text-decoration: none;
}
.direction-university-card:hover {
  border-color: #73a5ff;
}
.direction-university-name {
  margin-bottom: 6px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
}
.direction-university-meta {
  color: #687386;
  font-size: 12px;
}
.direction-university-arrow {
  flex: 0 0 auto;
  color: #1769e8;
  font-size: 18px;
}
@media (max-width: 980px) {
  .directions-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .directions-filter-columns {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .directions-filter-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .directions-cost-field {
    min-width: 0;
  }
}
@media (max-width: 650px) {
  .admission26-directions-link {
    grid-template-columns: 38px minmax(0, 1fr);
    padding: 14px;
  }
  .admission26-directions-icon {
    width: 38px;
    height: 38px;
  }
  .admission26-directions-arrow {
    display: none;
  }
  body.directions-catalog-page .directions-catalog-main {
    width: 100%;
    padding: 26px 16px 54px;
  }
  .directions-catalog-intro h1,
  .direction-catalog-detail h1 {
    font-size: 27px;
  }
  .directions-catalog-grid,
  .direction-university-list {
    grid-template-columns: 1fr;
  }
  .directions-catalog-filter {
    padding: 16px;
  }
  .directions-filter-row-main {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .direction-filter-chip {
    width: 100%;
  }
  .directions-cost-field {
    grid-template-columns: 1fr;
  }
  .directions-filter-buttons {
    flex-direction: column;
  }
  .directions-filter-submit,
  .directions-filter-reset {
    width: 100%;
  }
}

.pick-add-to-map {
  flex: 0 0 auto;
  white-space: nowrap;
  padding: 7px 10px;
  font-size: 12px;
}
.route27-plan-limit-toast {
  position: fixed;
  z-index: 1000;
  right: 22px;
  bottom: 22px;
  width: min(430px, calc(100vw - 32px));
  padding: 18px 20px;
  color: var(--text, #17233b);
  background: #fff;
  border: 1px solid var(--blue, #2878e8);
  border-radius: 12px;
  box-shadow: 0 14px 36px rgba(15, 35, 70, .18);
  font-size: 14px;
  line-height: 1.45;
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px);
  transition: opacity .18s ease, transform .18s ease;
}
.route27-plan-limit-toast.open {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.route27-plan-limit-toast strong { display: block; margin-bottom: 6px; font-size: 16px; }
.route27-plan-limit-toast ul { margin: 10px 0 14px 18px; padding: 0; }
.route27-plan-limit-toast li { margin: 3px 0; }
.route27-plan-limit-close {
  position: absolute;
  top: 8px;
  right: 10px;
  border: 0;
  background: transparent;
  color: var(--muted, #6d788d);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}
@media (max-width: 650px) {
  .pick-match-bottom-row { align-items: flex-start; flex-wrap: wrap; }
  .pick-add-to-map { width: 100%; }
  .route27-plan-limit-toast { right: 16px; bottom: 16px; }
}

/* Product-preview overrides: keep the save form below the offer on every viewport. */
body.site-app-page .route27-save {
  float: none;
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto;
  gap: 10px;
  align-items: start;
  max-width: none;
  margin: 0 0 16px;
  padding: 12px;
  background: #f4f8ff;
  border: 1px solid #d8e8ff;
  border-radius: 10px;
}
body.site-app-page .route27-save-hint { grid-column: 1 / -1; text-align: left; }
@media (max-width: 980px) {
  body.site-app-page .route27-save { display: grid; grid-template-columns: 1fr; }
}

/* Дополнительное образование: compact catalog with source-first course cards. */
body.dpo-catalog-page { background: #f7f9fc; }
body.dpo-catalog-page .dpo-catalog-shell { max-width: 1180px; margin: 0 auto; padding: 34px 22px 70px; }
body.dpo-catalog-page .dpo-breadcrumb { display: flex; gap: 9px; align-items: center; color: var(--muted); margin-bottom: 18px; }
body.dpo-catalog-page .dpo-breadcrumb a { font-weight: 700; }
body.dpo-catalog-page .dpo-hero { background: #eef5ff; border: 1px solid #cfe0ff; border-radius: 16px; padding: 32px; }
body.dpo-catalog-page .dpo-kicker { color: var(--blue); font-weight: 800; letter-spacing: .04em; text-transform: uppercase; font-size: 12px; }
body.dpo-catalog-page .dpo-hero h1 { margin: 13px 0 12px; max-width: 880px; font-size: clamp(30px, 4vw, 46px); line-height: 1.08; }
body.dpo-catalog-page .dpo-hero p { max-width: 840px; margin: 0; color: var(--muted); font-size: 17px; line-height: 1.6; }
body.dpo-catalog-page .dpo-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 24px; }
body.dpo-catalog-page .dpo-stat { background: #fff; border: 1px solid #dce7f7; border-radius: 10px; padding: 14px 16px; }
body.dpo-catalog-page .dpo-stat strong { display: block; font-size: 24px; color: #15243a; }
body.dpo-catalog-page .dpo-stat span { color: var(--muted); font-size: 13px; }
body.dpo-catalog-page .dpo-explainer { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 18px 0 26px; }
body.dpo-catalog-page .dpo-explainer-item { background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 18px; }
body.dpo-catalog-page .dpo-explainer-item strong { display: block; margin-bottom: 6px; color: #15243a; font-size: 16px; }
body.dpo-catalog-page .dpo-explainer-item p { margin: 0; color: var(--muted); line-height: 1.5; }
body.dpo-catalog-page .dpo-filter { display: grid; grid-template-columns: minmax(220px, 1.4fr) repeat(4, minmax(145px, 1fr)) auto; gap: 12px; align-items: end; background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 18px; margin-bottom: 26px; }
body.dpo-catalog-page .dpo-field label { display: block; color: var(--muted); font-size: 13px; font-weight: 800; margin-bottom: 6px; }
body.dpo-catalog-page .dpo-field input,
body.dpo-catalog-page .dpo-field select { width: 100%; min-height: 44px; border: 1px solid #cdd6e4; border-radius: 8px; padding: 10px 12px; font: inherit; background: #fff; }
body.dpo-catalog-page .dpo-reset { min-height: 44px; border: 1px solid #cdd6e4; border-radius: 8px; background: #fff; padding: 10px 14px; cursor: pointer; font: inherit; white-space: nowrap; }
body.dpo-catalog-page .dpo-reset:hover { border-color: var(--blue); color: var(--blue); }
body.dpo-catalog-page .dpo-results-head { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; margin-bottom: 12px; }
body.dpo-catalog-page .dpo-results-head h2 { margin: 0; font-size: 25px; color: #15243a; }
body.dpo-catalog-page .dpo-results-head span { color: var(--muted); }
body.dpo-catalog-page .dpo-list { display: grid; gap: 12px; }
body.dpo-catalog-page .dpo-card { background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 20px; }
body.dpo-catalog-page .dpo-card-main { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 24px; }
body.dpo-catalog-page .dpo-card-top { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; margin-bottom: 10px; }
body.dpo-catalog-page .dpo-tag { display: inline-flex; align-items: center; min-height: 26px; border-radius: 999px; padding: 4px 9px; background: var(--blue-bg); color: #1557bd; font-size: 12px; font-weight: 800; }
body.dpo-catalog-page .dpo-tag.type { background: #e8f6ec; color: var(--green); }
body.dpo-catalog-page .dpo-card h3 { margin: 0 0 5px; color: #15243a; font-size: 20px; line-height: 1.25; }
body.dpo-catalog-page .dpo-university { color: #263b59; font-weight: 800; }
body.dpo-catalog-page .dpo-card-description { margin: 10px 0 0; color: var(--muted); line-height: 1.5; }
body.dpo-catalog-page .dpo-source { display: inline-flex; margin-top: 15px; font-weight: 800; }
body.dpo-catalog-page .dpo-card-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 14px; align-content: start; }
body.dpo-catalog-page .dpo-fact { border-left: 3px solid #d9e7ff; padding-left: 10px; }
body.dpo-catalog-page .dpo-fact-label { display: block; color: var(--muted); font-size: 12px; }
body.dpo-catalog-page .dpo-fact-value { display: block; color: #15243a; font-weight: 800; line-height: 1.3; }
body.dpo-catalog-page .dpo-card-bottom { display: flex; justify-content: space-between; gap: 14px; align-items: center; border-top: 1px solid #edf0f5; margin-top: 18px; padding-top: 12px; color: var(--muted); font-size: 12px; }
body.dpo-catalog-page .dpo-empty { background: #fff; border: 1px dashed #cdd6e4; border-radius: 10px; padding: 28px; color: var(--muted); text-align: center; }
body.dpo-catalog-page .dpo-method { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--border); color: var(--muted); }
body.dpo-catalog-page .dpo-method h2 { margin: 0 0 8px; color: #15243a; font-size: 20px; }
body.dpo-catalog-page .dpo-method p { max-width: 850px; margin: 0; line-height: 1.6; }
@media (max-width: 1050px) {
  body.dpo-catalog-page .dpo-filter { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.dpo-catalog-page .dpo-field.search { grid-column: 1 / -1; }
  body.dpo-catalog-page .dpo-reset { justify-self: start; }
}
@media (max-width: 760px) {
  body.dpo-catalog-page .dpo-catalog-shell { padding: 22px 14px 50px; }
  body.dpo-catalog-page .dpo-hero { padding: 22px; }
  body.dpo-catalog-page .dpo-stats,
  body.dpo-catalog-page .dpo-explainer { grid-template-columns: 1fr 1fr; }
  body.dpo-catalog-page .dpo-filter { grid-template-columns: 1fr; }
  body.dpo-catalog-page .dpo-field.search { grid-column: auto; }
  body.dpo-catalog-page .dpo-card-main { grid-template-columns: 1fr; }
  body.dpo-catalog-page .dpo-card-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.dpo-catalog-page .dpo-results-head { display: block; }
  body.dpo-catalog-page .dpo-results-head span { display: block; margin-top: 4px; }
}
@media (max-width: 480px) {
  body.dpo-catalog-page .dpo-stats,
  body.dpo-catalog-page .dpo-explainer,
  body.dpo-catalog-page .dpo-card-facts { grid-template-columns: 1fr; }
  body.dpo-catalog-page .dpo-card-bottom { align-items: flex-start; flex-direction: column; }
}
