  :root {
    --ops-ink: #151816;
    --ops-ink-soft: #2b312d;
    --ops-muted: #5f6b63;
    --ops-subtle: #77837b;
    --ops-line: #dfe5df;
    --ops-line-strong: #c9d2ca;
    --ops-page: #f6f8f5;
    --ops-surface: #ffffff;
    --ops-surface-quiet: #eef3ee;
    --ops-red: #b42318;
    --ops-red-dark: #7f1d1d;
    --ops-red-soft: #f8e6e3;
    --ops-green: #0f6b4f;
    --ops-green-soft: #dcebe3;
    --ops-radius: 8px;
    --ops-radius-lg: 12px;
    --ops-shadow: 0 18px 46px rgba(21, 24, 22, 0.08);
    --ops-font: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --ops-display: "Songti SC", "Noto Serif CJK SC", "STSong", Georgia, serif;
  }

  * {
    letter-spacing: 0;
  }

  html {
    background: var(--ops-page);
    overflow-x: visible !important;
  }

  body.ops-ui,
  body {
    font-family: var(--ops-font);
    color: var(--ops-ink);
    background: var(--ops-page);
  }

  body.ops-ui {
    line-height: 1.6;
    overflow-x: visible !important;
  }

  .ops-page {
    background: var(--ops-page);
  }

  .ops-shell {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
  }

  .ops-topbar {
    position: sticky;
    top: 0;
    z-index: 50;
    border-bottom: 1px solid rgba(21, 24, 22, 0.08);
    background: rgba(246, 248, 245, 0.92);
    backdrop-filter: blur(16px);
  }

  .ops-nav {
    height: 68px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
  }

  .ops-brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: var(--ops-ink);
    text-decoration: none;
    min-width: 190px;
  }

  .ops-logo {
    width: 34px;
    height: 34px;
    border-radius: var(--ops-radius);
    object-fit: cover;
    border: 1px solid var(--ops-line);
  }

  .ops-brand-text {
    display: grid;
    line-height: 1.15;
  }

  .ops-brand-name {
    font-size: 15px;
    font-weight: 750;
  }

  .ops-brand-sub {
    font-size: 12px;
    color: var(--ops-muted);
  }

  .ops-links {
    display: flex;
    align-items: center;
    gap: 4px;
  }

  .ops-links a,
  .ops-nav-link {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 12px;
    border-radius: var(--ops-radius);
    color: var(--ops-muted);
    font-size: 14px;
    font-weight: 650;
    text-decoration: none;
  }

  .ops-links a:hover,
  .ops-links a.active,
  .ops-nav-link:hover,
  .ops-nav-link.active {
    color: var(--ops-red-dark);
    background: var(--ops-red-soft);
  }

  .ops-actions {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .ops-btn,
  .btn-primary,
  .btn-outline,
  .btn-download,
  .btn-favorite,
  .btn-share {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 16px;
    border-radius: var(--ops-radius);
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 750;
    text-decoration: none;
    cursor: pointer;
    transition: background 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
  }

  .ops-btn:hover,
  .btn-primary:hover,
  .btn-outline:hover,
  .btn-download:hover,
  .btn-favorite:hover,
  .btn-share:hover {
    transform: translateY(-1px);
  }

  .ops-btn-primary,
  .btn-primary,
  .btn-download {
    background: var(--ops-red);
    color: #fff;
    border-color: var(--ops-red);
  }

  .ops-btn-primary:hover,
  .btn-primary:hover,
  .btn-download:hover {
    background: var(--ops-red-dark);
    border-color: var(--ops-red-dark);
  }

  .ops-btn-quiet,
  .btn-outline,
  .btn-favorite,
  .btn-share {
    background: var(--ops-surface);
    color: var(--ops-ink-soft);
    border-color: var(--ops-line);
  }

  .ops-btn-quiet:hover,
  .btn-outline:hover,
  .btn-favorite:hover,
  .btn-share:hover {
    border-color: var(--ops-line-strong);
    background: var(--ops-surface-quiet);
  }

  .ops-icon {
    width: 18px;
    height: 18px;
    display: inline-block;
    flex: 0 0 auto;
  }

  .ops-hero {
    padding: 72px 0 56px;
  }

  .ops-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(420px, 1.08fr);
    gap: 38px;
    align-items: center;
  }

  .ops-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 5px 10px;
    border-radius: 999px;
    border: 1px solid var(--ops-line);
    color: var(--ops-green);
    background: var(--ops-green-soft);
    font-size: 12px;
    font-weight: 800;
  }

  .ops-h1 {
    margin: 0 0 18px;
    max-width: 760px;
    font-size: clamp(38px, 5.2vw, 64px);
    line-height: 1.05;
    font-weight: 850;
    color: var(--ops-ink);
    font-family: var(--ops-display);
    text-wrap: balance;
  }

  .ops-lede {
    max-width: 640px;
    color: var(--ops-muted);
    font-size: 18px;
    line-height: 1.78;
  }

  .ops-hero-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 28px;
  }

  .ops-proof-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 34px;
    max-width: 620px;
  }

  .ops-proof {
    border: 1px solid var(--ops-line);
    background: rgba(255, 255, 255, 0.72);
    border-radius: var(--ops-radius);
    padding: 14px;
  }

  .ops-proof strong {
    display: block;
    color: var(--ops-ink);
    font-size: 24px;
    line-height: 1;
  }

  .ops-proof span {
    display: block;
    margin-top: 6px;
    color: var(--ops-muted);
    font-size: 12px;
  }

  .ops-preview {
    border: 1px solid var(--ops-line-strong);
    border-radius: var(--ops-radius-lg);
    background: var(--ops-surface);
    box-shadow: var(--ops-shadow);
    overflow: visible;
    padding: 14px;
  }

  .ops-preview-head {
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 18px;
    border: 1px solid var(--ops-line);
    border-bottom: none;
    border-radius: var(--ops-radius) var(--ops-radius) 0 0;
    background: #fbfcfa;
  }

  .ops-window-dots {
    display: flex;
    gap: 6px;
  }

  .ops-window-dots i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--ops-line-strong);
  }

  .ops-preview-title {
    color: var(--ops-muted);
    font-size: 12px;
    font-weight: 750;
  }

  .ops-preview-body {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    min-height: 430px;
    border: 1px solid var(--ops-line);
    border-radius: 0 0 var(--ops-radius) var(--ops-radius);
    overflow: hidden;
  }

  .ops-stage-rail {
    padding: 16px;
    border-right: 1px solid var(--ops-line);
    background: #f9faf7;
  }

  .ops-stage-pill {
    display: block;
    width: 100%;
    margin-bottom: 8px;
    padding: 9px 10px;
    border-radius: var(--ops-radius);
    color: var(--ops-muted);
    font-size: 12px;
    font-weight: 750;
  }

  .ops-stage-pill.active {
    color: var(--ops-red-dark);
    background: var(--ops-red-soft);
  }

  .ops-task-panel {
    padding: 18px;
  }

  .ops-task-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
  }

  .ops-task-title {
    margin: 0;
    color: var(--ops-ink);
    font-size: 20px;
    line-height: 1.28;
  }

  .ops-task-meta {
    margin-top: 6px;
    color: var(--ops-muted);
    font-size: 13px;
  }

  .ops-status {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 9px;
    border-radius: 999px;
    color: var(--ops-green);
    background: var(--ops-green-soft);
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
  }

  .ops-checklist {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .ops-checklist li {
    display: flex;
    gap: 10px;
    padding: 11px 12px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    color: var(--ops-ink-soft);
    background: var(--ops-surface);
    font-size: 14px;
  }

  .ops-checklist li::before {
    content: "";
    width: 8px;
    height: 8px;
    margin-top: 7px;
    border-radius: 50%;
    background: var(--ops-green);
    flex: 0 0 auto;
  }

  .ops-checklist-spaced {
    margin-top: 20px !important;
  }

  .ops-prompt {
    margin-top: 16px;
    padding: 15px;
    border-radius: var(--ops-radius);
    color: var(--ops-ink-soft);
    background: var(--ops-surface-quiet);
    border: 1px solid var(--ops-line);
    font-size: 14px;
  }

  .ops-band {
    padding: 56px 0;
  }

  .ops-band.white {
    background: var(--ops-surface);
  }

  .ops-section-head {
    max-width: 720px;
    margin-bottom: 28px;
  }

  .ops-section-head.center {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }

  .ops-section-label {
    color: var(--ops-red-dark);
    font-size: 13px;
    font-weight: 850;
  }

  .ops-section-title {
    margin: 8px 0 0;
    color: var(--ops-ink);
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.16;
    font-weight: 830;
    font-family: var(--ops-display);
    text-wrap: balance;
  }

  .ops-section-copy {
    margin-top: 10px;
    color: var(--ops-muted);
    font-size: 16px;
    line-height: 1.75;
  }

  .ops-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
  }

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

  .ops-panel {
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: var(--ops-surface);
    padding: 22px;
  }

  .ops-panel h3 {
    margin: 0 0 8px;
    color: var(--ops-ink);
    font-size: 19px;
  }

  .ops-panel p {
    margin: 0;
    color: var(--ops-muted);
    line-height: 1.72;
  }

  .ops-panel-label {
    display: block;
    margin-bottom: 12px;
    color: var(--ops-green);
    font-size: 12px;
    font-weight: 850;
  }

  .ops-timeline {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
  }

  .ops-stage-card {
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: var(--ops-surface);
    padding: 18px;
  }

  .ops-stage-card strong {
    display: block;
    color: var(--ops-ink);
    font-size: 16px;
  }

  .ops-stage-card span {
    display: block;
    margin-top: 8px;
    color: var(--ops-muted);
    font-size: 13px;
    line-height: 1.55;
  }

  .ops-stage-card.acceptance {
    border-color: rgba(15, 107, 79, 0.3);
    background: linear-gradient(180deg, #ffffff 0%, #f1f7f2 100%);
  }

  .ops-pricing {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(360px, 0.6fr);
    gap: 18px;
    align-items: stretch;
  }

  .ops-price-card {
    border: 1px solid var(--ops-red);
    border-radius: var(--ops-radius-lg);
    background: var(--ops-surface);
    padding: 26px;
  }

  .ops-price {
    margin: 12px 0 16px;
    font-size: 46px;
    font-weight: 850;
    color: var(--ops-red-dark);
  }

  .ops-price small {
    font-size: 16px;
    color: var(--ops-muted);
    font-weight: 650;
  }

  .ops-footer {
    padding: 34px 0;
    color: var(--ops-muted);
    border-top: 1px solid var(--ops-line);
    background: var(--ops-surface);
  }

  .ops-footer-grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
  }

  .ops-qr-row {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
  }

  .ops-qr {
    width: 90px;
    height: 90px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: #fff;
    padding: 6px;
    object-fit: contain;
  }

  .nav-dropdown-item-icon,
  .empty-icon,
  .course-icon-emoji,
  .resource-icon {
    font-family: var(--ops-font);
  }

  .nav-dropdown-item-icon {
    width: 24px;
    color: var(--ops-muted);
    font-size: 0;
  }

  .nav-dropdown-item-icon::before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    border-radius: 4px;
    border: 1.5px solid currentColor;
  }

  .nav-avatar-dropdown {
    border-radius: var(--ops-radius);
    border: 1px solid var(--ops-line);
    box-shadow: var(--ops-shadow);
  }

  .nav-dropdown-header {
    background: var(--ops-ink);
  }

  .hero,
  .main-content {
    background: transparent;
  }

  .hero {
    color: var(--ops-ink);
    min-height: auto;
    padding: 0;
    overflow: visible;
  }

  .hero h1,
  .hero-eyebrow,
  .stat-number,
  .gradient-text {
    background: none !important;
    -webkit-text-fill-color: currentColor !important;
    -webkit-background-clip: initial !important;
    background-clip: initial !important;
  }

  body.ops-ui .navbar {
    background: rgba(246, 248, 245, 0.92);
    border-bottom: 1px solid rgba(21, 24, 22, 0.08);
    backdrop-filter: blur(16px);
  }

  body.ops-ui .navbar .container {
    max-width: 1180px;
    height: 68px;
  }

  body.ops-ui .brand-name {
    color: var(--ops-ink);
    font-weight: 780;
  }

  body.ops-ui .navbar-menu a,
  body.ops-ui .nav-item {
    color: var(--ops-muted);
    border-radius: var(--ops-radius);
    font-size: 14px;
    font-weight: 700;
  }

  body.ops-ui .navbar-menu a:hover,
  body.ops-ui .nav-item:hover,
  body.ops-ui .nav-item.active {
    color: var(--ops-red-dark);
    background: var(--ops-red-soft);
  }

  body.ops-ui .search-bar input {
    border-color: var(--ops-line);
    border-radius: var(--ops-radius) 0 0 var(--ops-radius);
    color: var(--ops-ink);
  }

  body.ops-ui .search-bar input::placeholder {
    color: var(--ops-muted);
  }

  body.ops-ui .search-bar button {
    background: var(--ops-red);
    border-radius: 0 var(--ops-radius) var(--ops-radius) 0;
  }

  body.ops-ui .page-header,
  body.ops-ui .resources-header {
    min-height: auto;
    padding: 58px 0 34px;
    background: var(--ops-page) !important;
    color: var(--ops-ink);
    overflow: visible;
  }

  body.ops-ui .page-header h1,
  body.ops-ui .resources-header h1 {
    max-width: 820px;
    margin: 0 auto 12px;
    color: var(--ops-ink);
    font-size: clamp(34px, 4.8vw, 56px);
    line-height: 1.08;
    text-wrap: balance;
  }

  body.ops-ui .page-header p,
  body.ops-ui .resources-header p {
    max-width: 680px;
    margin: 0 auto;
    color: var(--ops-muted);
    font-size: 17px;
    line-height: 1.72;
  }

  body.ops-ui .glow-overlay {
    display: none;
  }

  body.ops-ui .category-sidebar > div > div,
  body.ops-ui .resource-list,
  body.ops-ui .resources-section,
  body.ops-ui .content-filters,
  body.ops-ui .course-card,
  body.ops-ui .resource-card,
  body.ops-ui .history-item,
  body.ops-ui .download-item,
  body.ops-ui .favorite-item {
    border-radius: var(--ops-radius) !important;
    border: 1px solid var(--ops-line) !important;
    box-shadow: none !important;
    background: var(--ops-surface) !important;
  }

  body.ops-ui .category-sidebar > div > div {
    padding: 18px !important;
  }

  body.ops-ui .category-sidebar h2,
  body.ops-ui .category-sidebar h3 {
    color: var(--ops-ink) !important;
    font-weight: 780 !important;
  }

  body.ops-ui .category-group-title {
    margin: 16px 0 8px;
    color: var(--ops-muted);
    font-size: 12px;
    font-weight: 780;
    line-height: 1.2;
  }

  body.ops-ui .category-group-title:first-child {
    margin-top: 0;
  }

  body.ops-ui .category-item {
    border-radius: var(--ops-radius) !important;
    color: var(--ops-muted) !important;
    background: transparent !important;
    border: 1px solid transparent;
  }

  body.ops-ui .category-item.active,
  body.ops-ui .category-item[style*="background: #dc2626"],
  body.ops-ui .category-item:hover {
    color: var(--ops-red-dark) !important;
    background: var(--ops-red-soft) !important;
    border-color: rgba(180, 35, 24, 0.16) !important;
  }

  body.ops-ui .content-filters {
    padding: 6px;
    gap: 4px;
    display: inline-flex;
    margin-bottom: 18px;
  }

  body.ops-ui .filter-item {
    border-radius: var(--ops-radius) !important;
    color: var(--ops-muted);
    min-height: 34px;
    padding: 8px 12px;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 750;
  }

  body.ops-ui .filter-item.active {
    color: #fff !important;
    background: var(--ops-ink) !important;
  }

  body.ops-ui .filter-item.active::after {
    display: none !important;
  }

  body.ops-ui .resources-grid,
  body.ops-ui .courses-grid,
  body.ops-ui #coursesGrid,
  body.ops-ui #resourcesGrid {
    gap: 14px !important;
  }

  body.ops-ui .resource-card,
  body.ops-ui .course-card {
    padding: 18px !important;
  }

  body.ops-ui .resource-title,
  body.ops-ui .course-title {
    color: var(--ops-ink) !important;
    font-weight: 800 !important;
  }

  body.ops-ui .resource-description,
  body.ops-ui .course-description,
  body.ops-ui .resource-meta,
  body.ops-ui .resource-stat,
  body.ops-ui .course-meta {
    color: var(--ops-muted) !important;
  }

  body.ops-ui .resource-tag,
  body.ops-ui .primary-badge,
  body.ops-ui .course-category {
    border-radius: 999px !important;
    color: var(--ops-green) !important;
    background: var(--ops-green-soft) !important;
    border: 1px solid rgba(15, 107, 79, 0.14);
  }

  body.ops-ui .modal-content,
  body.ops-ui .course-modal,
  body.ops-ui .wechat-qr-content {
    border-radius: var(--ops-radius-lg) !important;
    border: 1px solid var(--ops-line);
    box-shadow: var(--ops-shadow) !important;
    overflow: visible !important;
  }

  body.ops-ui .wechat-qr-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    align-items: center;
    justify-content: center;
  }

  body.ops-ui .wechat-qr-modal[hidden] {
    display: none !important;
  }

  body.ops-ui .wechat-qr-overlay {
    position: absolute;
    inset: 0;
    background: rgba(21, 24, 22, 0.52);
  }

  body.ops-ui .wechat-qr-content {
    position: relative;
    width: min(92vw, 380px);
    padding: 24px;
    background: var(--ops-surface);
    text-align: center;
  }

  body.ops-ui .qr-title {
    margin: 0 0 6px;
    color: var(--ops-ink);
    font-size: 22px;
  }

  body.ops-ui .qr-subtitle,
  body.ops-ui .wechat-instructions {
    color: var(--ops-muted);
  }

  body.ops-ui .wechat-qr-code {
    width: 220px;
    height: 220px;
    object-fit: contain;
    margin: 18px auto;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    padding: 8px;
  }

  body.ops-ui .close-qr-button,
  body.ops-ui .pay-button {
    min-height: 42px;
    padding: 0 16px;
    border-radius: var(--ops-radius);
    border: 1px solid var(--ops-red);
    color: #fff;
    background: var(--ops-red);
    font-weight: 760;
    cursor: pointer;
  }

  body.ops-ui .site-footer {
    background: var(--ops-surface) !important;
    color: var(--ops-muted) !important;
    border-top: 1px solid var(--ops-line);
  }

  body.ops-ui .site-footer a,
  body.ops-ui .site-footer p {
    color: var(--ops-muted) !important;
  }

  @media (max-width: 980px) {
    .ops-nav {
      height: auto;
      min-height: 64px;
      padding: 12px 0;
      flex-wrap: wrap;
    }

    .ops-links {
      order: 3;
      width: 100%;
      overflow-x: auto;
      padding-bottom: 4px;
    }

    .ops-hero-grid,
    .ops-pricing,
    .ops-grid-2 {
      grid-template-columns: 1fr;
    }

    .ops-preview-body {
      grid-template-columns: 1fr;
    }

    .ops-stage-rail {
      border-right: 0;
      border-bottom: 1px solid var(--ops-line);
      display: flex;
      overflow-x: auto;
      gap: 8px;
    }

    .ops-stage-pill {
      min-width: 130px;
      margin-bottom: 0;
    }

    .ops-grid-3,
    .ops-timeline,
    .ops-proof-row {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 640px) {
    .ops-shell {
      padding: 0 16px;
    }

    .ops-nav {
      height: auto;
      min-height: 64px;
      flex-wrap: wrap;
      gap: 10px;
      padding: 10px 0;
    }

    .ops-brand {
      min-width: 0;
      flex: 1 1 180px;
    }

    .ops-actions {
      width: auto;
      flex: 0 0 auto;
      justify-content: flex-end;
    }

    .ops-actions .ops-btn-quiet {
      display: none;
    }

    .ops-actions .ops-btn-primary {
      min-height: 38px;
      padding: 0 12px;
      font-size: 13px;
    }

    .ops-links {
      order: 3;
      width: 100%;
      overflow-x: auto;
      justify-content: flex-start;
      padding-bottom: 2px;
    }

    .ops-links a {
      flex: 0 0 auto;
    }

    .ops-preview-title {
      display: none;
    }

    .ops-hero {
      padding: 44px 0 36px;
    }

    .ops-h1 {
      font-size: 34px;
      line-height: 1.14;
      word-break: break-all;
    }

    .ops-lede {
      font-size: 16px;
    }

    .ops-proof-row {
      grid-template-columns: 1fr;
    }

    .ops-preview {
      width: 100%;
      max-width: 100%;
      overflow: hidden;
    }

    .ops-preview-body {
      grid-template-columns: 1fr;
      min-height: auto;
    }

    .ops-stage-rail {
      display: flex;
      gap: 8px;
      overflow-x: auto;
      border-right: none;
      border-bottom: 1px solid var(--ops-line);
    }

    .ops-stage-pill {
      width: auto;
      flex: 0 0 auto;
      margin-bottom: 0;
      white-space: nowrap;
    }

    .ops-preview-body {
      min-height: auto;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
      transition-duration: 0.01ms !important;
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      scroll-behavior: auto !important;
    }
  }

  body.ops-ui .latest-header,
  body.ops-ui .page-header,
  body.ops-ui .resources-header {
    position: relative !important;
    padding: 72px 24px 48px !important;
    text-align: left !important;
    color: var(--ops-ink) !important;
    background: var(--ops-page) !important;
    border-bottom: 1px solid var(--ops-line) !important;
  }

  body.ops-ui .latest-header .glow-overlay,
  body.ops-ui .page-header .glow-overlay,
  body.ops-ui .resources-header .glow-overlay {
    display: none !important;
  }

  body.ops-ui .latest-header h1,
  body.ops-ui .page-header h1,
  body.ops-ui .resources-header h1 {
    max-width: 980px !important;
    margin: 0 auto 14px !important;
    color: var(--ops-ink) !important;
    font-size: clamp(38px, 5vw, 64px) !important;
    line-height: 1.04 !important;
    letter-spacing: 0 !important;
    font-family: var(--ops-display) !important;
  }

  body.ops-ui .latest-header p,
  body.ops-ui .page-header p,
  body.ops-ui .resources-header p {
    max-width: 980px !important;
    margin: 0 auto !important;
    color: var(--ops-muted) !important;
    font-size: 18px !important;
  }

  body.ops-ui .learning-section,
  body.ops-ui .category-nav,
  body.ops-ui .tags-nav,
  body.ops-ui .resource-list,
  body.ops-ui .updates-container {
    background: var(--ops-page) !important;
  }

  body.ops-ui .updates-container {
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 34px 20px 56px !important;
  }

  body.ops-ui .learning-section > .container,
  body.ops-ui .resource-list > .container,
  body.ops-ui .category-nav > .container,
  body.ops-ui .tags-nav > .container {
    max-width: 1180px !important;
  }

  body.ops-ui .category-sidebar > div > div {
    background: var(--ops-surface) !important;
    border: 1px solid var(--ops-line) !important;
    border-radius: var(--ops-radius-lg) !important;
    box-shadow: 0 10px 26px rgba(21, 24, 22, 0.04) !important;
  }

  body.ops-ui .category-sidebar > div {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.ops-ui .category-btn,
  body.ops-ui .tag-btn,
  body.ops-ui .category-item,
  body.ops-ui .filter-item,
  body.ops-ui .resource-tag,
  body.ops-ui .tag {
    border-radius: var(--ops-radius) !important;
  }

  body.ops-ui .category-btn,
  body.ops-ui .tag-btn {
    border: 1px solid var(--ops-line) !important;
    background: var(--ops-surface) !important;
    color: var(--ops-muted) !important;
    font-weight: 700 !important;
  }

  body.ops-ui .category-btn.active,
  body.ops-ui .tag-btn.active,
  body.ops-ui .category-item.active,
  body.ops-ui .filter-item.active {
    background: var(--ops-ink) !important;
    border-color: var(--ops-ink) !important;
    color: #fff !important;
    box-shadow: none !important;
  }

  body.ops-ui .resource-card,
  body.ops-ui .course-card,
  body.ops-ui .card,
  body.ops-ui .empty-state,
  body.ops-ui #downloadsList,
  body.ops-ui #favoritesList,
  body.ops-ui #historyList {
    background: var(--ops-surface) !important;
    border: 1px solid var(--ops-line) !important;
    border-radius: var(--ops-radius-lg) !important;
    box-shadow: 0 10px 26px rgba(21, 24, 22, 0.04) !important;
  }

  body.ops-ui .resource-icon,
  body.ops-ui .course-icon-emoji,
  body.ops-ui .empty-icon,
  body.ops-ui .nav-dropdown-item-icon,
  body.ops-ui .nav-login-icon {
    width: 48px !important;
    height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: var(--ops-radius) !important;
    background: var(--ops-green-soft) !important;
    color: var(--ops-green) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
  }

  body.ops-ui .resource-title,
  body.ops-ui .course-title,
  body.ops-ui .date-title,
  body.ops-ui .section-title {
    color: var(--ops-ink) !important;
    font-weight: 800 !important;
  }

  body.ops-ui .date-title {
    margin: 30px 0 16px !important;
    font-size: 30px !important;
    line-height: 1.15 !important;
    font-family: var(--ops-display) !important;
  }

  body.ops-ui .section-title {
    margin: 16px 0 10px !important;
    color: var(--ops-red-dark) !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
  }

  body.ops-ui .resource-title {
    font-size: 17px !important;
    line-height: 1.42 !important;
  }

  body.ops-ui .tag.format,
  body.ops-ui .tag.primary,
  body.ops-ui .format-badge,
  body.ops-ui .primary-badge {
    color: var(--ops-red) !important;
    background: var(--ops-red-soft) !important;
    border-color: transparent !important;
  }

  body.ops-ui .resource-stat,
  body.ops-ui .meta,
  body.ops-ui .resource-description,
  body.ops-ui .resource-meta-row,
  body.ops-ui .resource-stats-row {
    color: var(--ops-muted) !important;
  }

  body.ops-ui .resource-stat .icon {
    display: inline;
    width: auto;
    height: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: var(--ops-muted);
    font-size: 12px;
    font-weight: 760;
    line-height: inherit;
  }

  body.ops-ui .resource-stat .stat-value {
    font-size: 12px;
  }

  body.ops-ui .modal {
    background: rgba(21, 24, 22, 0.58) !important;
  }

  body.ops-ui .modal-content,
  body.ops-ui .membership-option,
  body.ops-ui .member-benefits {
    background: var(--ops-surface) !important;
    border: 1px solid var(--ops-line) !important;
    border-radius: var(--ops-radius-lg) !important;
    box-shadow: 0 28px 70px rgba(21, 24, 22, 0.16) !important;
  }

  body.ops-ui .popular-tag,
  body.ops-ui .pay-button,
  body.ops-ui .btn-download,
  body.ops-ui .btn-primary,
  body.ops-ui button.pay-button {
    background: var(--ops-red) !important;
    color: #fff !important;
    border-radius: var(--ops-radius) !important;
    box-shadow: none !important;
  }

  body.ops-ui .ops-brand-link,
  body.ops-ui .ops-search-form {
    display: flex;
    align-items: center;
  }

  body.ops-ui .ops-brand-link {
    gap: 12px;
    color: inherit;
    text-decoration: none;
  }

  body.ops-ui .ops-avatar-image[hidden] {
    display: none !important;
  }

  body.ops-ui .ops-avatar-placeholder {
    font-size: 24px;
    font-weight: 850;
  }

  body.ops-ui .ops-wide-container,
  body.ops-ui .ops-resource-shell {
    max-width: 1180px !important;
  }

  body.ops-ui .ops-stage-overview {
    padding: 34px 0;
    background: var(--ops-surface);
    border-top: 1px solid var(--ops-line);
    border-bottom: 1px solid var(--ops-line);
  }

  body.ops-ui .ops-stage-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
  }

  body.ops-ui .ops-stage-tile {
    min-height: 96px;
    padding: 16px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: #fbfcfa;
  }

  body.ops-ui .ops-stage-tile strong,
  body.ops-ui .category-label {
    display: block;
    color: var(--ops-ink);
    font-size: 14px;
    font-weight: 820;
    line-height: 1.35;
  }

  body.ops-ui .ops-stage-tile span {
    display: block;
    margin-top: 8px;
    color: var(--ops-muted);
    font-size: 13px;
    line-height: 1.55;
  }

  body.ops-ui .ops-stage-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 18px;
  }

  body.ops-ui .ops-workbench {
    padding: 42px 0 56px !important;
    background: var(--ops-page) !important;
  }

  body.ops-ui .ops-workbench-title {
    margin: 0 0 20px;
    color: var(--ops-ink);
    font-family: var(--ops-display);
    font-size: 28px;
    line-height: 1.2;
  }

  body.ops-ui .ops-workbench-layout,
  body.ops-ui .ops-resource-layout {
    display: grid;
    grid-template-columns: 230px minmax(0, 1fr);
    gap: 22px;
    align-items: start;
  }

  body.ops-ui .ops-resource-shell {
    margin: 0 auto;
    padding: 40px 20px 56px;
  }

  body.ops-ui .ops-sidebar {
    position: sticky;
    top: 86px;
    width: auto !important;
    max-height: calc(100vh - 110px);
    overflow-y: auto;
    scrollbar-width: thin;
  }

  body.ops-ui .ops-sidebar-panel {
    padding: 16px !important;
  }

  body.ops-ui .ops-sidebar-title {
    margin: 0 0 14px;
    color: var(--ops-ink);
    font-size: 17px;
    line-height: 1.3;
  }

  body.ops-ui .category-group {
    margin-bottom: 10px;
  }

  body.ops-ui .sub-categories {
    margin: 4px 0 0 12px;
  }

  body.ops-ui .category-item {
    display: block;
    margin-bottom: 5px;
    padding: 10px 12px;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
  }

  body.ops-ui .sub-categories .category-item {
    padding: 8px 10px;
    font-size: 13px;
  }

  body.ops-ui .category-item.active .category-label,
  body.ops-ui .category-item:hover .category-label {
    color: inherit;
  }

  body.ops-ui .category-all {
    margin-bottom: 14px;
    border-color: var(--ops-ink) !important;
    background: var(--ops-ink) !important;
    color: #fff !important;
  }

  body.ops-ui .category-all .category-label {
    color: inherit;
    font-size: 13px;
    letter-spacing: 0;
  }

  body.ops-ui .category-primary {
    position: relative;
    margin: 10px 0 4px;
    padding: 11px 12px !important;
    border-color: rgba(21, 24, 22, 0.1) !important;
    background: #f8faf7 !important;
  }

  body.ops-ui .category-primary .category-label {
    color: var(--ops-ink);
    font-size: 14px;
    font-weight: 880;
    line-height: 1.25;
  }

  body.ops-ui .category-primary::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    margin-right: 8px;
    border-radius: 999px;
    background: var(--ops-red);
    vertical-align: 2px;
  }

  body.ops-ui .category-primary .category-label {
    display: inline;
  }

  body.ops-ui .category-child {
    position: relative;
    margin: 0 0 3px 14px;
    padding: 7px 10px 7px 16px !important;
    border-color: transparent !important;
    background: transparent !important;
  }

  body.ops-ui .category-child::before {
    content: "";
    position: absolute;
    left: 4px;
    top: 50%;
    width: 6px;
    height: 1px;
    background: rgba(96, 110, 101, 0.38);
  }

  body.ops-ui .category-child .category-label {
    color: var(--ops-muted);
    font-size: 12px;
    font-weight: 680;
    line-height: 1.3;
  }

  body.ops-ui .category-primary.active,
  body.ops-ui .category-primary:hover {
    background: var(--ops-ink) !important;
    border-color: var(--ops-ink) !important;
    color: #fff !important;
  }

  body.ops-ui .category-primary.active::before,
  body.ops-ui .category-primary:hover::before {
    background: #fff;
  }

  body.ops-ui .category-primary.active .category-label,
  body.ops-ui .category-primary:hover .category-label {
    color: inherit;
  }

  body.ops-ui .category-child.active,
  body.ops-ui .category-child:hover {
    background: var(--ops-red-soft) !important;
    border-color: transparent !important;
    color: var(--ops-red-dark) !important;
  }

  body.ops-ui .category-child.active::before,
  body.ops-ui .category-child:hover::before {
    background: var(--ops-red);
  }

  body.ops-ui .category-child.active .category-label,
  body.ops-ui .category-child:hover .category-label {
    color: inherit;
  }

  body.ops-ui.continuous-resources #resourcesGrid {
    display: block !important;
  }

  body.ops-ui .resource-category-section {
    margin-bottom: 26px;
    scroll-margin-top: 96px;
  }

  body.ops-ui .resource-section-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 10px;
    padding: 0 2px 10px;
    border-bottom: 1px solid var(--ops-line);
  }

  body.ops-ui .resource-section-kicker {
    display: block;
    margin-bottom: 4px;
    color: var(--ops-muted);
    font-size: 11px;
    font-weight: 780;
    line-height: 1;
  }

  body.ops-ui .resource-section-header h2 {
    margin: 0;
    color: var(--ops-ink);
    font-size: 18px;
    font-weight: 880;
    line-height: 1.2;
  }

  body.ops-ui .resource-section-count {
    flex-shrink: 0;
    color: var(--ops-muted);
    font-size: 12px;
    font-weight: 700;
  }

  body.ops-ui .resource-section-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px !important;
  }

  body.ops-ui .resources-grid,
  body.ops-ui #resourcesGrid {
    gap: 10px !important;
  }

  body.ops-ui .resource-card {
    gap: 10px !important;
    padding: 12px !important;
    min-height: 0 !important;
    align-items: flex-start !important;
  }

  body.ops-ui .resource-main {
    gap: 10px !important;
  }

  body.ops-ui .resource-icon {
    width: 38px !important;
    height: 38px !important;
    border-radius: 8px !important;
    font-size: 11px !important;
  }

  body.ops-ui .resource-title {
    margin: 0 0 7px !important;
    font-size: 14px !important;
    line-height: 1.34 !important;
    font-weight: 820 !important;
  }

  body.ops-ui .resource-meta-row,
  body.ops-ui .resource-stats-row {
    gap: 5px !important;
    margin-top: 5px !important;
  }

  body.ops-ui .resource-tag {
    padding: 3px 6px !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
    font-weight: 780 !important;
  }

  body.ops-ui .resource-stat,
  body.ops-ui .resource-stat .icon,
  body.ops-ui .resource-stat .stat-value {
    font-size: 10px !important;
    line-height: 1.2 !important;
  }

  body.ops-ui .resource-actions {
    width: 70px !important;
    gap: 6px !important;
  }

  body.ops-ui .resource-actions button {
    min-height: 26px !important;
    padding: 6px 8px !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
    border-radius: 7px !important;
  }

  body.ops-ui .ops-list-panel {
    min-width: 0;
  }

  body.ops-ui .ops-course-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  body.ops-ui .course-card {
    display: flex;
    flex-direction: column;
    min-height: 190px;
  }

  body.ops-ui .course-click-area,
  body.ops-ui .resource-main {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    cursor: pointer;
  }

  body.ops-ui .course-card-body,
  body.ops-ui .resource-body {
    flex: 1;
    min-width: 0;
  }

  body.ops-ui .course-card-title {
    margin: 0 0 8px;
    color: var(--ops-ink);
    font-size: 17px;
    line-height: 1.42;
    font-weight: 820;
  }

  body.ops-ui .course-owner,
  body.ops-ui .course-recommendation {
    margin: 0;
    color: var(--ops-muted);
    font-size: 13px;
    line-height: 1.65;
  }

  body.ops-ui .course-owner {
    color: var(--ops-subtle);
  }

  body.ops-ui .course-actions,
  body.ops-ui .resource-actions {
    display: flex;
    gap: 10px;
    margin-top: auto;
    padding-top: 14px;
  }

  body.ops-ui .resource-actions {
    width: 70px !important;
    flex-direction: column !important;
    gap: 6px !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body.ops-ui .course-action-btn {
    min-height: 40px;
    flex: 1;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: var(--ops-surface);
    color: var(--ops-ink-soft);
    font-size: 14px;
    font-weight: 760;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease, border-color 160ms ease, transform 160ms ease;
  }

  body.ops-ui .course-action-btn:hover {
    transform: translateY(-1px);
  }

  body.ops-ui .course-action-btn.primary,
  body.ops-ui .course-action-btn.learning {
    background: var(--ops-red);
    border-color: var(--ops-red);
    color: #fff;
  }

  body.ops-ui .course-action-btn.completed {
    background: var(--ops-green);
    border-color: var(--ops-green);
    color: #fff;
  }

  body.ops-ui .course-action-btn.complete-btn {
    flex: 0.7;
    color: var(--ops-red);
    border-color: rgba(180, 35, 24, 0.36);
    background: var(--ops-surface);
  }

  body.ops-ui .course-progress {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--ops-line);
  }

  body.ops-ui .progress-bar {
    width: 100%;
    height: 5px;
    margin-bottom: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: var(--ops-surface-quiet);
  }

  body.ops-ui .progress-fill {
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: var(--ops-green);
  }

  body.ops-ui .progress-caption {
    color: var(--ops-muted);
    font-size: 12px;
    text-align: right;
  }

  body.ops-ui .ops-empty-state,
  body.ops-ui .no-resources {
    grid-column: 1 / -1;
    padding: 34px 22px;
    border: 1px dashed var(--ops-line-strong);
    border-radius: var(--ops-radius);
    color: var(--ops-muted);
    background: rgba(255, 255, 255, 0.56);
    text-align: center;
    font-size: 14px;
  }

  body.ops-ui .ops-empty-state p {
    margin: 4px 0;
  }

  body.ops-ui .ops-preview-modal {
    max-width: 90%;
    max-height: 90vh;
    overflow: auto;
  }

  body.ops-ui .ops-course-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    padding: 20px;
    background: rgba(21, 24, 22, 0.58);
    align-items: center;
    justify-content: center;
  }

  body.ops-ui .ops-course-modal-card {
    width: min(92vw, 820px);
    max-height: 82vh;
    margin: auto;
    display: flex;
    flex-direction: column;
    overflow: visible !important;
    background: var(--ops-surface);
  }

  body.ops-ui .ops-course-modal-header,
  body.ops-ui .ops-course-modal-footer {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 22px;
    border-color: var(--ops-line);
  }

  body.ops-ui .ops-course-modal-header {
    justify-content: space-between;
    border-bottom: 1px solid var(--ops-line);
  }

  body.ops-ui .ops-course-modal-footer {
    border-top: 1px solid var(--ops-line);
  }

  body.ops-ui .ops-course-modal-title {
    flex: 1;
    margin: 0;
    color: var(--ops-ink);
    font-size: 20px;
    line-height: 1.35;
  }

  body.ops-ui .ops-modal-close {
    width: 34px;
    height: 34px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: var(--ops-surface);
    color: var(--ops-muted);
    cursor: pointer;
    font-size: 23px;
    line-height: 1;
  }

  body.ops-ui .ops-course-modal-body {
    flex: 1;
    overflow-y: auto;
    padding: 22px;
  }

  body.ops-ui .ops-course-modal-content {
    color: var(--ops-ink-soft);
    font-size: 15px;
    line-height: 1.85;
  }

  body.ops-ui .ops-course-modal-content a {
    color: var(--ops-red);
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  body.ops-ui .ops-course-links {
    display: none;
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid var(--ops-line);
  }

  body.ops-ui .ops-course-links-title {
    margin-bottom: 14px;
    color: var(--ops-ink);
    font-size: 15px;
    font-weight: 800;
  }

  body.ops-ui .web-link-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 14px;
    margin-bottom: 10px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: #fbfcfa;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease;
  }

  body.ops-ui .web-link-item:hover {
    background: var(--ops-red-soft);
    border-color: rgba(180, 35, 24, 0.28);
  }

  body.ops-ui .web-link-text {
    flex: 1;
    min-width: 0;
    color: var(--ops-red);
    font-size: 14px;
    word-break: break-all;
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  body.ops-ui .web-link-action {
    flex: 0 0 auto;
    min-height: 30px;
    padding: 0 11px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: var(--ops-surface);
    color: var(--ops-muted);
    font-size: 12px;
    font-weight: 760;
  }

  body.ops-ui .ops-modal-primary {
    width: 100%;
    min-height: 44px;
    border: 1px solid var(--ops-red);
    border-radius: var(--ops-radius);
    background: var(--ops-red);
    color: #fff;
    font-size: 15px;
    font-weight: 800;
    cursor: pointer;
  }

  body.ops-ui .ops-loading {
    color: var(--ops-muted);
    padding: 12px 0;
  }

  body.ops-ui .ops-hidden {
    display: none !important;
  }

  body.ops-ui .nav-dropdown-count {
    display: none;
    margin-left: 4px;
    color: var(--ops-muted);
    font-size: 12px;
  }

  body.ops-ui .nav-dropdown-count.is-visible {
    display: inline;
  }

  body.ops-ui .ops-friend-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(21, 24, 22, 0.58);
  }

  body.ops-ui .ops-friend-card {
    width: min(92vw, 340px);
    padding: 26px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius-lg);
    background: var(--ops-surface);
    box-shadow: var(--ops-shadow);
    text-align: center;
  }

  body.ops-ui .ops-friend-title {
    margin-bottom: 18px;
    color: var(--ops-ink);
    font-family: var(--ops-display);
    font-size: 24px;
    line-height: 1.2;
    font-weight: 850;
  }

  body.ops-ui .ops-friend-qr-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 16px;
  }

  body.ops-ui .ops-friend-qr {
    width: 220px;
    height: 220px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    object-fit: contain;
  }

  body.ops-ui .ops-friend-copy {
    margin-bottom: 10px;
    color: var(--ops-muted);
    font-size: 14px;
  }

  body.ops-ui .ops-friend-note {
    margin-bottom: 18px;
    padding: 9px 12px;
    border-radius: var(--ops-radius);
    background: var(--ops-red-soft);
    color: var(--ops-red-dark);
    font-size: 13px;
    line-height: 1.6;
  }

  body.ops-ui .ops-friend-close {
    min-height: 40px;
    padding: 0 24px;
    border: 1px solid var(--ops-red);
    border-radius: var(--ops-radius);
    background: var(--ops-red);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
  }

  body.ops-ui .ops-member-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    padding: 18px;
    align-items: center;
    justify-content: center;
    background: rgba(21, 24, 22, 0.58) !important;
  }

  body.ops-ui .ops-member-card {
    position: relative;
    width: min(92vw, 420px);
    padding: 26px;
    text-align: left;
    background: var(--ops-surface);
  }

  body.ops-ui .ops-member-status-card,
  body.ops-ui .ops-payment-card {
    text-align: center;
  }

  body.ops-ui .ops-member-close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 34px;
    height: 34px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: var(--ops-surface);
    color: var(--ops-muted);
    cursor: pointer;
    font-size: 23px;
    line-height: 1;
  }

  body.ops-ui .ops-member-header {
    margin-bottom: 20px;
    padding-right: 26px;
  }

  body.ops-ui .ops-member-status-card .ops-member-header,
  body.ops-ui .ops-payment-card .ops-member-header {
    padding-right: 0;
  }

  body.ops-ui .ops-member-header h2 {
    margin: 0;
    color: var(--ops-ink);
    font-family: var(--ops-display);
    font-size: 25px;
    line-height: 1.22;
  }

  body.ops-ui .ops-member-header p {
    margin: 8px 0 0;
    color: var(--ops-muted);
    font-size: 14px;
    line-height: 1.7;
  }

  body.ops-ui .ops-membership-options {
    display: grid;
    gap: 12px;
    margin-bottom: 18px;
  }

  body.ops-ui .membership-option {
    width: 100%;
    padding: 18px;
    border: 1px solid var(--ops-line) !important;
    border-radius: var(--ops-radius) !important;
    background: #fbfcfa !important;
    cursor: pointer;
    text-align: left;
  }

  body.ops-ui .membership-option.active {
    border-color: rgba(180, 35, 24, 0.42) !important;
    background: var(--ops-red-soft) !important;
  }

  body.ops-ui .membership-option h3 {
    margin: 8px 0 10px;
    color: var(--ops-ink);
    font-size: 18px;
    line-height: 1.35;
  }

  body.ops-ui .membership-option .price {
    color: var(--ops-red-dark);
    font-size: 34px;
    font-weight: 900;
    line-height: 1;
  }

  body.ops-ui .membership-option .description {
    margin-top: 8px;
    color: var(--ops-muted);
    font-size: 13px;
  }

  body.ops-ui .popular-tag {
    display: inline-flex;
    min-height: 26px;
    align-items: center;
    padding: 0 9px;
    border-radius: var(--ops-radius) !important;
    background: var(--ops-ink) !important;
    color: #fff !important;
    font-size: 12px;
    font-weight: 850;
  }

  body.ops-ui .ops-payment-options {
    margin-bottom: 18px;
  }

  body.ops-ui .ops-payment-options h4,
  body.ops-ui .member-benefits h4 {
    margin: 0 0 10px;
    color: var(--ops-ink);
    font-size: 15px;
  }

  body.ops-ui .payment-option {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 12px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: #fbfcfa;
  }

  body.ops-ui .payment-option img {
    width: 28px;
    height: 28px;
    object-fit: contain;
  }

  body.ops-ui .payment-option > span:nth-child(2) {
    flex: 1;
    color: var(--ops-ink-soft);
    font-weight: 720;
  }

  body.ops-ui .payment-option .radio {
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--ops-red);
    border-radius: 50%;
  }

  body.ops-ui .payment-option .radio span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--ops-red);
  }

  body.ops-ui .pay-button {
    width: 100%;
    min-height: 44px;
    border: 1px solid var(--ops-red) !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    cursor: pointer;
  }

  body.ops-ui .member-benefits {
    margin-top: 18px;
    padding: 15px;
    border-radius: var(--ops-radius) !important;
    background: #fbfcfa !important;
    box-shadow: none !important;
  }

  body.ops-ui .member-benefits ul {
    margin: 0;
    padding-left: 18px;
    color: var(--ops-muted);
    font-size: 14px;
    line-height: 1.8;
  }

  body.ops-ui .ops-member-mark {
    width: 62px;
    height: 62px;
    margin: 0 auto 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(15, 107, 79, 0.22);
    border-radius: var(--ops-radius);
    background: var(--ops-green-soft);
    color: var(--ops-green);
    font-size: 20px;
    font-weight: 900;
  }

  body.ops-ui .qr-code-container {
    width: 222px;
    height: 222px;
    margin: 0 auto 16px;
    padding: 10px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: #fbfcfa;
  }

  body.ops-ui #paymentQRCode,
  body.ops-ui #paymentQRCodeImg {
    width: 100%;
    height: 100%;
  }

  body.ops-ui #paymentQRCode {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--ops-surface);
  }

  body.ops-ui #paymentQRCodeImg {
    object-fit: contain;
  }

  body.ops-ui .payment-amount {
    margin-bottom: 8px;
    color: var(--ops-red-dark);
    font-size: 22px;
    font-weight: 900;
  }

  body.ops-ui .ops-payment-note {
    margin: 0 0 18px;
    color: var(--ops-muted);
    font-size: 14px;
    line-height: 1.65;
  }

  body.ops-ui .ops-payment-cancel,
  body.ops-ui .ops-simulate-button {
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid var(--ops-line);
    border-radius: var(--ops-radius);
    background: var(--ops-surface);
    color: var(--ops-ink-soft);
    font-size: 14px;
    font-weight: 760;
    cursor: pointer;
  }

  body.ops-ui .ops-simulate-button {
    margin-top: 12px;
    width: 100%;
    background: var(--ops-red);
    border-color: var(--ops-red);
    color: #fff;
  }

  @media (max-width: 980px) {
    body.ops-ui .ops-stage-grid,
    body.ops-ui .ops-workbench-layout,
    body.ops-ui .ops-resource-layout,
    body.ops-ui .ops-course-grid {
      grid-template-columns: 1fr;
    }

    body.ops-ui .ops-sidebar {
      position: static;
      max-height: none;
    }

    body.ops-ui .ops-stage-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (max-width: 640px) {
    body.ops-ui .navbar .container {
      height: auto !important;
      min-height: 60px;
      flex-wrap: wrap;
      gap: 8px;
      padding-top: 8px;
      padding-bottom: 8px;
    }

    body.ops-ui .navbar-brand {
      flex: 1 1 100%;
      min-width: 0;
    }

    body.ops-ui .navbar-menu {
      order: 3;
      width: 100%;
      display: flex;
      gap: 4px;
      overflow-x: auto;
      scrollbar-width: none;
    }

    body.ops-ui .navbar-menu::-webkit-scrollbar {
      display: none;
    }

    body.ops-ui .navbar-menu .nav-item {
      flex: 0 0 auto;
    }

    body.ops-ui .navbar-end {
      display: none !important;
    }

    body.ops-ui .ops-stage-grid {
      grid-template-columns: 1fr;
    }

    body.ops-ui .ops-stage-actions,
    body.ops-ui .course-actions,
    body.ops-ui .resource-actions {
      flex-direction: column;
    }

    body.ops-ui .ops-course-modal {
      padding: 10px;
    }

    body.ops-ui .ops-course-modal-card {
      width: 100%;
      max-height: calc(100vh - 20px);
    }
  }

/* =========================================================
   2026-06-17 YouMind Remix
   目标：把“资料系统”升级成柔和、轻盈、创作工具感的 AI 带教官网
   ========================================================= */

:root {
  --ym-ink: #1f1f1f;
  --ym-ink-soft: rgba(31, 31, 31, 0.72);
  --ym-muted: rgba(31, 31, 31, 0.56);
  --ym-line: rgba(31, 31, 31, 0.12);
  --ym-line-strong: rgba(31, 31, 31, 0.24);
  --ym-cream: #f7f3eb;
  --ym-paper: #fbfaf7;
  --ym-blue: #b7dcea;
  --ym-blue-deep: #7fb7cf;
  --ym-pink: #f3ddd9;
  --ym-green: #e2edd5;
  --ym-black: #1f1f1f;
  --ym-radius: 24px;
  --ym-pill: 999px;
  --ym-shadow-soft: 0 26px 90px rgba(42, 58, 67, 0.12);
  --ym-font: "Airbnb Cereal App", "Inter", "PingFang SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, sans-serif;
  --ym-serif: "Songti SC", "Noto Serif CJK SC", "STSong", Georgia, serif;
}

html,
body.ops-ui,
body.ops-page {
  background: var(--ym-paper) !important;
  color: var(--ym-ink);
  font-family: var(--ym-font);
}

body.ops-ui::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -2;
  background:
    radial-gradient(circle at 50% 18%, rgba(183, 220, 234, 0.34), transparent 34%),
    radial-gradient(circle at 83% 58%, rgba(243, 221, 217, 0.32), transparent 28%),
    linear-gradient(180deg, #fbfaf7 0%, #f7f3eb 100%);
}

.ym-noise,
.ym-page-hero::after {
  pointer-events: none;
}

.ym-noise::before,
.ym-page-hero::after,
.ym-grid-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.28;
  background-image:
    radial-gradient(rgba(255, 255, 255, 0.72) 0.8px, transparent 0.8px),
    radial-gradient(rgba(31, 31, 31, 0.12) 0.55px, transparent 0.55px);
  background-size: 5px 5px, 7px 7px;
  mix-blend-mode: soft-light;
}

/* Navigation */
body.ops-ui .ops-topbar,
body.ops-ui .navbar {
  background: rgba(251, 250, 247, 0.82) !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px);
}

body.ops-ui .ops-nav,
body.ops-ui .navbar .container {
  height: 72px !important;
  max-width: 1360px !important;
  padding-inline: 28px !important;
}

body.ops-ui .ops-brand,
body.ops-ui .ops-brand-link,
body.ops-ui .navbar-brand a {
  gap: 10px;
  color: var(--ym-ink);
}

body.ops-ui .logo,
body.ops-ui .ops-logo {
  width: 34px !important;
  height: 34px !important;
  border-radius: 11px !important;
  border: 1px solid var(--ym-line) !important;
  box-shadow: none !important;
}

body.ops-ui .brand-name,
body.ops-ui .ops-brand-name {
  font-size: 18px !important;
  font-weight: 760 !important;
  color: var(--ym-ink) !important;
}

body.ops-ui .ops-brand-sub {
  display: none;
}

body.ops-ui .ops-links,
body.ops-ui .navbar-menu {
  gap: 18px !important;
}

body.ops-ui .ops-links a,
body.ops-ui .navbar-menu .nav-item,
body.ops-ui .navbar-menu a {
  min-height: 32px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(31, 31, 31, 0.58) !important;
  font-size: 15px !important;
  font-weight: 520 !important;
}

body.ops-ui .ops-links a.active,
body.ops-ui .navbar-menu .nav-item.active,
body.ops-ui .ops-links a:hover,
body.ops-ui .navbar-menu .nav-item:hover {
  color: var(--ym-ink) !important;
}

body.ops-ui .ops-actions .ops-btn-quiet,
body.ops-ui .navbar-end #loginBtn.login-text,
body.ops-ui .login-text,
body.ops-ui .ops-btn-quiet {
  border: 1px solid var(--ym-line) !important;
  border-radius: var(--ym-pill) !important;
  background: rgba(255, 255, 255, 0.46) !important;
  color: var(--ym-ink) !important;
  box-shadow: none !important;
}

body.ops-ui .ops-btn-primary,
body.ops-ui .btn-primary,
body.ops-ui .btn-download,
body.ops-ui .ym-main-cta {
  min-height: 52px;
  padding: 0 34px;
  border-radius: var(--ym-pill) !important;
  border-color: var(--ym-black) !important;
  background: var(--ym-black) !important;
  color: #fff !important;
  font-size: 18px;
  font-weight: 650;
  box-shadow: 0 18px 46px rgba(31, 31, 31, 0.16);
}

body.ops-ui .btn-outline,
body.ops-ui .btn-favorite,
body.ops-ui .btn-share,
body.ops-ui .ops-btn-quiet {
  min-height: 42px;
  border-radius: var(--ym-pill) !important;
  border: 1px solid var(--ym-line) !important;
  background: rgba(255, 255, 255, 0.68) !important;
  color: var(--ym-ink) !important;
}

body.ops-ui .ops-btn:hover,
body.ops-ui .btn-primary:hover,
body.ops-ui .btn-outline:hover,
body.ops-ui .btn-download:hover,
body.ops-ui .btn-favorite:hover,
body.ops-ui .btn-share:hover {
  transform: translateY(-2px);
}

body.ops-ui .search-bar input {
  border-radius: var(--ym-pill) 0 0 var(--ym-pill) !important;
  background: rgba(255,255,255,.72);
  border-color: var(--ym-line) !important;
}

body.ops-ui .search-bar button {
  border-radius: 0 var(--ym-pill) var(--ym-pill) 0 !important;
  background: var(--ym-black) !important;
}

body.ops-ui .navbar-end > .search-bar {
  display: none !important;
}

/* Overview / home */
.ym-hero {
  position: relative;
  min-height: 1120px;
  padding: 38px 0 82px !important;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 38%, rgba(88, 164, 198, 0.55) 0%, rgba(183, 220, 234, 0.66) 28%, rgba(247, 243, 235, 0.62) 58%, rgba(247, 243, 235, 0) 72%),
    linear-gradient(180deg, #f8f5ee 0%, #c6e2ed 24%, #d7ebf1 62%, #f8f5ee 100%);
}

.ym-hero-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.ym-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 28px;
  border-radius: var(--ym-pill);
  border: 1px solid rgba(110, 104, 83, 0.24);
  color: rgba(42, 58, 41, 0.95);
  background: rgba(239, 238, 230, 0.9);
  box-shadow: 0 12px 30px rgba(31,31,31,.08);
  text-decoration: none;
  font-size: 17px;
  font-weight: 720;
}

.ym-title,
body.ops-ui .ym-title {
  margin: 54px auto 16px !important;
  max-width: 1100px;
  color: #fff !important;
  font-family: var(--ym-serif) !important;
  font-size: 72px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-shadow: 0 12px 70px rgba(50, 89, 107, 0.18);
}

.ym-lede,
body.ops-ui .ym-lede {
  max-width: 720px !important;
  margin-inline: auto;
  color: rgba(255,255,255,.82) !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
  font-weight: 660;
}

.ym-hero .ops-hero-actions {
  justify-content: center;
  margin-top: 38px;
}

.ym-hero .ops-hero-actions .ops-btn {
  min-width: 198px;
  min-height: 54px;
}

.ym-workspace-title {
  margin: 80px 0 28px;
  color: #fff;
  font-size: 24px;
  font-weight: 760;
}

.ym-studio,
body.ops-ui .ym-studio {
  width: min(1280px, calc(100vw - 120px));
  padding: 0 !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.34) !important;
  box-shadow: 0 40px 120px rgba(35, 78, 97, 0.22) !important;
  backdrop-filter: blur(16px);
  overflow: hidden;
}

.ym-studio .ops-preview-head {
  background: rgba(255,255,255,.55);
  border-color: rgba(255,255,255,.55);
}

.ym-studio .ops-preview-body {
  grid-template-columns: 260px minmax(0, 1fr);
  min-height: 520px;
  border: 1px solid rgba(255,255,255,.56);
  border-top: 0;
  background: rgba(255,255,255,.44);
}

.ym-studio .ops-stage-rail {
  border-right-color: rgba(31,31,31,.08);
  background: rgba(255,255,255,.28);
}

.ym-studio .ops-stage-pill {
  min-height: 44px;
  border-radius: 14px;
  color: rgba(31,31,31,.54);
}

.ym-studio .ops-stage-pill.active {
  color: var(--ym-ink);
  background: rgba(255,255,255,.58);
}

.ym-studio .ops-task-panel {
  padding: 56px;
}

.ym-studio .ops-task-panel .ops-task-title {
  font-size: 28px;
}

.ym-studio .ops-checklist li,
.ym-studio .ops-prompt,
.ym-studio .ops-task-panel .ops-status {
  border-color: rgba(31,31,31,.08);
  background: rgba(255,255,255,.74);
}

.ym-video-link {
  display: inline-flex;
  align-items: center;
  gap: 24px;
  margin-top: 92px;
  border: 0;
  background: transparent;
  color: var(--ym-ink);
  cursor: pointer;
}

.ym-play {
  display: grid;
  place-items: center;
  width: 82px;
  height: 82px;
  border-radius: 50%;
  background: rgba(255,255,255,.76);
  border: 1px solid rgba(255,255,255,.8);
  box-shadow: 0 18px 46px rgba(35,78,97,.16);
}

.ym-video-link strong,
.ym-video-link em {
  display: block;
  text-align: left;
  font-style: normal;
}

.ym-video-link strong {
  font-size: 24px;
}

.ym-video-link em {
  margin-top: 6px;
  color: rgba(31,31,31,.52);
  font-size: 18px;
}

.ym-belief,
.ym-works,
.ym-milestone,
body.ops-ui .ops-band {
  padding: 116px 0 !important;
}

.ym-belief .ops-section-title {
  max-width: 760px;
  font-size: clamp(34px, 4vw, 54px) !important;
}

.ym-image-card {
  min-height: 360px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border: 0 !important;
  border-radius: 12px !important;
  color: #fff !important;
  overflow: hidden;
  position: relative;
}

.ym-image-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 32% 34%, rgba(255,255,255,.34), transparent 20%),
    linear-gradient(180deg, rgba(31,31,31,0) 0%, rgba(31,31,31,.55) 100%);
}

.ym-image-card > * {
  position: relative;
  z-index: 1;
}

.ym-card-blue { background: linear-gradient(135deg, #7197ac 0%, #1e4157 100%) !important; }
.ym-card-gold { background: linear-gradient(135deg, #d9b06b 0%, #6c5841 100%) !important; }
.ym-card-pink { background: linear-gradient(135deg, #e8bbb5 0%, #8a514d 100%) !important; }

.ym-image-card .ops-panel-label,
.ym-image-card h3,
.ym-image-card p {
  color: #fff !important;
}

.ym-work-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(210px, 1fr));
  gap: 18px;
  overflow-x: auto;
  padding: 8px 0 20px;
  scrollbar-width: thin;
}

.ym-work-card {
  min-height: 260px;
  padding: 22px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid var(--ym-line);
  color: var(--ym-ink);
  text-decoration: none;
  box-shadow: 0 14px 50px rgba(31,31,31,.06);
}

.ym-work-card span,
.ym-work-card em {
  display: block;
  font-style: normal;
  color: var(--ym-muted);
}

.ym-work-card strong {
  display: block;
  margin: 72px 0 14px;
  font-size: 26px;
  line-height: 1.15;
}

.ym-stats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 42px;
  align-content: center;
}

.ym-stats-grid strong {
  display: block;
  font-size: clamp(46px, 6vw, 72px);
  line-height: 1;
  font-weight: 860;
}

.ym-stats-grid span {
  display: block;
  margin-top: 10px;
  color: var(--ym-muted);
}

.ym-final-cta {
  padding: 116px 0 150px;
  text-align: center;
}

.ym-final-cta h2 {
  margin: 0;
  font-family: var(--ym-serif);
  font-size: clamp(58px, 8vw, 96px);
  line-height: 1;
}

.ym-final-cta p {
  margin: 18px auto 34px;
  color: var(--ym-muted);
  font-size: 20px;
}

/* Page heroes */
.ym-page-hero,
body.ops-ui .page-header.ym-page-hero,
body.ops-ui .resources-header.ym-page-hero {
  position: relative;
  min-height: 560px !important;
  padding: 112px 24px 86px !important;
  text-align: center;
  overflow: hidden;
}

.ym-training-hero {
  background:
    radial-gradient(circle at 50% 48%, rgba(126, 190, 216, 0.92) 0%, rgba(183, 220, 234, 0.88) 42%, rgba(248,245,238,0) 76%),
    linear-gradient(180deg, #f8f5ee 0%, #d4edf5 50%, #f8f5ee 100%) !important;
}

body.ops-ui .ym-page-hero h1 {
  margin-top: 52px !important;
  color: #fff !important;
  font-family: var(--ym-serif);
  font-size: clamp(68px, 10vw, 128px) !important;
  line-height: .96 !important;
  font-weight: 800 !important;
  text-shadow: 0 10px 38px rgba(83, 137, 157, .18);
}

body.ops-ui .ym-page-hero p {
  max-width: 800px !important;
  color: rgba(255,255,255,.82) !important;
  font-size: clamp(20px, 2.6vw, 30px) !important;
  line-height: 1.48 !important;
  text-shadow: 0 8px 28px rgba(83, 137, 157, .22);
}

.ym-stage-strip .ops-stage-tile {
  min-height: 144px;
  border-radius: 18px !important;
  background: rgba(255,255,255,.74) !important;
}

/* Prompt/resource page */
.ym-prompt-hero,
body.ops-ui .ym-prompt-hero {
  min-height: 610px !important;
  text-align: left !important;
  padding: 180px 48px 74px !important;
  background:
    linear-gradient(rgba(31,31,31,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(31,31,31,.045) 1px, transparent 1px),
    #f7f0e4 !important;
  background-size: 48px 48px !important;
}

body.ops-ui .ym-prompt-hero h1 {
  max-width: 720px !important;
  margin: 0 !important;
  color: var(--ym-ink) !important;
  font-family: var(--ym-font) !important;
  font-size: clamp(68px, 8.2vw, 118px) !important;
  line-height: .92 !important;
  font-weight: 900 !important;
}

.ym-prompt-hero h1 span,
.ym-prompt-hero h1 strong {
  display: block;
}

.ym-prompt-hero h1 strong {
  color: #ff686f;
}

body.ops-ui .ym-prompt-hero p {
  margin: 42px 0 0 !important;
  max-width: 760px !important;
  color: rgba(31,31,31,.72) !important;
  font-size: 24px !important;
  line-height: 1.52 !important;
}

.ym-resource-visual {
  position: absolute;
  right: 72px;
  top: 140px;
  width: min(520px, 38vw);
  min-height: 300px;
  border: 4px solid var(--ym-black);
  border-radius: 16px;
  background:
    radial-gradient(circle at 30% 30%, #ffdf77 0 8%, transparent 9%),
    radial-gradient(circle at 72% 34%, #8fd3ff 0 9%, transparent 10%),
    linear-gradient(135deg, #fff7dd, #f7b1ac 45%, #8ecae6);
  box-shadow: 12px 12px 0 var(--ym-black);
}

.ym-resource-visual span {
  position: absolute;
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  padding: 0 18px;
  border-radius: 8px;
  background: #fff;
  border: 2px solid var(--ym-black);
  font-weight: 800;
}

.ym-resource-visual span:nth-child(1) { left: 36px; top: 42px; transform: rotate(-5deg); }
.ym-resource-visual span:nth-child(2) { right: 38px; top: 74px; transform: rotate(4deg); }
.ym-resource-visual span:nth-child(3) { left: 70px; bottom: 58px; transform: rotate(3deg); }
.ym-resource-visual span:nth-child(4) { right: 62px; bottom: 44px; transform: rotate(-4deg); }

body.ops-ui .ops-resource-shell,
body.ops-ui .updates-container {
  max-width: 1280px;
  padding-top: 64px;
}

body.ops-ui .ops-resource-layout,
body.ops-ui .ops-workbench-layout {
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 38px;
}

body.ops-ui .ops-sidebar {
  top: 96px;
}

body.ops-ui .category-sidebar > div > div,
body.ops-ui .resource-list,
body.ops-ui .ops-list-panel,
body.ops-ui .content-filters {
  border-radius: 24px !important;
  border: 1px solid var(--ym-line) !important;
  background: rgba(255,255,255,.62) !important;
  box-shadow: none !important;
}

body.ops-ui .category-item {
  border-radius: var(--ym-pill) !important;
  min-height: 46px !important;
  padding-inline: 16px !important;
  border: 1px solid transparent !important;
}

body.ops-ui .category-item.active,
body.ops-ui .filter-item.active {
  background: var(--ym-black) !important;
  color: #fff !important;
}

body.ops-ui .category-guidance {
  background: rgba(255,255,255,.72) !important;
}

body.ops-ui .category-child {
  margin-left: 14px !important;
  color: var(--ym-muted) !important;
  background: transparent !important;
}

body.ops-ui .resources-grid,
body.ops-ui .ops-course-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

body.ops-ui .resource-card,
body.ops-ui .course-card,
body.ops-ui .history-item,
body.ops-ui .download-item,
body.ops-ui .favorite-item {
  border-radius: 20px !important;
  border: 1px solid var(--ym-line) !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 18px 58px rgba(31,31,31,.06) !important;
}

body.ops-ui .resource-card {
  min-height: 146px;
  padding: 18px !important;
}

body.ops-ui .resource-title,
body.ops-ui .course-card-title {
  color: var(--ym-ink) !important;
  font-size: 18px !important;
  line-height: 1.28 !important;
  font-weight: 760 !important;
}

body.ops-ui .resource-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 12px !important;
  background: #edf6f1 !important;
  color: #39795c !important;
}

body.ops-ui .resource-tag {
  border: 0 !important;
  border-radius: var(--ym-pill) !important;
  background: rgba(31,31,31,.06) !important;
  color: var(--ym-muted) !important;
}

body.ops-ui .resource-tag.primary-badge,
body.ops-ui .format-badge {
  background: #fee6e2 !important;
  color: #d95858 !important;
}

body.ops-ui .resource-card-fallback .resource-description {
  margin: 8px 0 10px;
  color: var(--ym-muted);
  font-size: 13px;
  line-height: 1.5;
}

body.ops-ui .resource-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

/* Pricing */
.ym-pricing-hero {
  padding: 66px 0 36px;
  text-align: center;
}

.ym-pricing-hero h1 {
  margin: 0;
  font-family: var(--ym-serif);
  font-size: 56px;
  line-height: 1.04;
  font-weight: 760;
}

.ym-pricing-hero p {
  margin: 14px auto 0;
  max-width: 640px;
  color: var(--ym-muted);
  font-size: 16px;
  line-height: 1.65;
}

.ym-pricing-cards {
  padding: 0 0 98px;
}

.ym-price-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  max-width: 1308px;
}

.ym-price-plan {
  min-height: 620px;
  padding: 42px 34px;
  border-radius: 16px;
  border: 1px solid var(--ym-line);
  background: rgba(255,255,255,.72);
}

.ym-price-plan.featured {
  border: 2px solid #7da7ef;
  background: #fff;
}

.ym-plan-icon {
  font-size: 36px;
  letter-spacing: -10px;
}

.ym-price-plan h2 {
  margin: 36px 0 10px;
  font-size: 32px;
}

.ym-price-plan p {
  color: var(--ym-ink-soft);
  font-size: 18px;
}

.ym-plan-price {
  margin: 44px 0 30px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--ym-line);
  font-size: 48px;
  font-weight: 860;
}

.ym-plan-price small {
  color: var(--ym-muted);
  font-size: 17px;
  font-weight: 480;
}

.ym-price-plan .ops-btn {
  width: 100%;
}

.ym-price-plan ul {
  display: grid;
  gap: 13px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
  color: var(--ym-ink-soft);
}

.ym-price-plan li::before {
  content: "✓";
  margin-right: 10px;
}

/* Latest / updates */
.ym-updates-hero {
  max-width: 1272px;
  margin: 0 auto;
  padding: 58px 0 34px !important;
  text-align: left;
  background: transparent !important;
}

.ym-updates-hero h1 {
  margin: 0;
  font-family: var(--ym-serif);
  font-size: 56px;
  line-height: 1.04;
}

.ym-updates-hero p {
  margin: 12px 0 0;
  max-width: 720px;
  color: var(--ym-muted);
  font-size: 16px;
  line-height: 1.6;
}

.ym-updates-shell {
  max-width: 1272px !important;
  padding: 0 0 110px !important;
}

.ym-update-entry {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 60px;
  padding: 14px 0 64px;
  border-bottom: 1px solid var(--ym-line);
}

.ym-update-entry time {
  padding-top: 2px;
  color: var(--ym-muted);
  font-size: 16px;
  font-weight: 520;
}

.ym-update-content {
  max-width: 736px;
}

.ym-update-kicker {
  display: none;
  color: #e85f65;
  font-size: 13px;
  font-weight: 760;
}

.ym-update-content h2 {
  margin: 0 0 24px;
  color: var(--ym-ink);
  font-size: 28px;
  line-height: 1.25;
  font-weight: 760;
}

.ym-update-content img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: top center;
  border: 1px solid var(--ym-line);
  border-radius: 8px;
  background: #f1f3f2;
}

.ym-update-content p {
  margin: 22px 0 16px;
  color: var(--ym-ink-soft);
  font-size: 16px;
  line-height: 1.8;
}

.ym-update-content > a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--ym-ink);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

.ym-update-content > a span {
  color: #e85f65;
}

.ym-live-updates {
  padding-top: 96px;
}

.ym-live-updates-head {
  margin-bottom: 32px;
}

.ym-live-updates-head span {
  color: #e85f65;
  font-size: 13px;
  font-weight: 760;
}

.ym-live-updates-head h2 {
  margin: 10px 0 0;
  color: var(--ym-ink);
  font-family: var(--ym-serif);
  font-size: clamp(34px, 5vw, 56px);
  line-height: 1.12;
}

@media (max-width: 700px) {
  .ym-pricing-hero {
    padding: 48px 20px 20px;
  }

  .ym-pricing-hero h1 {
    font-size: 48px;
  }

  .ym-pricing-hero p {
    font-size: 15px;
  }

  .ym-pricing-cards {
    padding-top: 10px;
  }

  .ym-updates-hero {
    padding: 48px 20px 30px !important;
  }

  .ym-updates-hero h1 {
    font-size: 48px !important;
  }

  .ym-updates-hero p {
    font-size: 15px !important;
    line-height: 1.65;
  }

  .ym-updates-shell {
    padding: 0 20px 72px !important;
  }

  .ym-update-entry {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 24px 0 48px;
  }

  .ym-update-entry time {
    padding-top: 0;
    font-size: 14px;
  }

  .ym-update-content h2 {
    margin-bottom: 18px;
    font-size: 25px;
  }

  .ym-update-content p {
    margin-top: 18px;
    font-size: 15px;
  }

  .ym-live-updates {
    padding-top: 68px;
  }
}

/* Account utility pages */
.ym-account-hero {
  padding: 126px 24px 82px !important;
  background:
    radial-gradient(circle at 18% 22%, rgba(181, 210, 246, .46), transparent 32%),
    radial-gradient(circle at 88% 4%, rgba(247, 204, 177, .42), transparent 30%),
    var(--ym-cream) !important;
  text-align: center;
  overflow: hidden;
}

.ym-account-hero::after {
  content: "";
  position: absolute;
  inset: auto 10% -120px;
  height: 220px;
  border-radius: 999px;
  background: rgba(255,255,255,.64);
  filter: blur(42px);
  pointer-events: none;
}

.ym-account-hero .ym-badge {
  position: relative;
  z-index: 1;
}

.ym-account-hero h1 {
  position: relative;
  z-index: 1;
  margin: 28px 0 0;
  color: var(--ym-ink) !important;
  font-family: var(--ym-serif);
  font-size: clamp(58px, 8vw, 96px);
  line-height: .98;
  letter-spacing: -1px;
}

.ym-account-hero p {
  position: relative;
  z-index: 1;
  max-width: 720px;
  margin: 24px auto 0;
  color: var(--ym-ink-soft) !important;
  font-size: 21px;
  line-height: 1.8;
}

.ym-account-shell {
  width: min(1120px, calc(100vw - 48px));
  margin: 54px auto 110px;
}

.ym-account-list,
body.ops-ui .ym-account-list {
  display: grid;
  gap: 16px;
  min-height: 280px;
  padding: 22px !important;
  border: 1px solid var(--ym-line);
  border-radius: 24px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 20px 80px rgba(23,26,23,.07);
}

.ym-account-empty,
body.ops-ui .ym-account-empty {
  grid-column: 1 / -1;
  display: grid;
  place-items: center;
  gap: 10px;
  min-height: 240px;
  padding: 44px 20px !important;
  color: var(--ym-muted) !important;
  text-align: center;
}

.ym-account-empty .empty-icon {
  display: inline-grid;
  place-items: center;
  min-width: 58px;
  height: 38px;
  padding: 0 12px;
  border-radius: 999px;
  background: var(--ym-green);
  color: #2e7b5b;
  font-size: 13px !important;
  font-weight: 900;
  letter-spacing: .04em;
}

.ym-empty-note {
  margin-top: 0;
  color: var(--ym-muted);
  font-size: 15px;
}

.ym-history-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
  border: 1px solid var(--ym-line);
  border-radius: 18px;
  background: rgba(255,255,255,.76);
}

.ym-history-item .history-icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 16px;
  background: var(--ym-green);
  color: #2e7b5b;
  font-size: 13px;
  font-weight: 900;
}

.ym-history-item .history-content {
  flex: 1;
  min-width: 0;
}

.ym-history-item .history-title {
  color: var(--ym-ink);
  font-size: 17px;
  font-weight: 820;
}

.ym-history-item .history-meta {
  margin-top: 6px;
  color: var(--ym-muted);
  font-size: 14px;
}

body.ops-ui .date-title {
  margin: 70px 0 16px;
  color: var(--ym-ink);
  font-family: var(--ym-serif);
  font-size: 36px;
  font-weight: 760;
}

body.ops-ui .section-title {
  color: #ff686f;
  font-size: 18px;
  font-weight: 800;
}

/* Footer */
body.ops-ui .ops-footer,
body.ops-ui .site-footer {
  border-top: 0 !important;
  background: var(--ym-paper) !important;
  color: var(--ym-muted) !important;
}

body.ops-ui .footer-top,
body.ops-ui .ops-footer-grid {
  max-width: 1280px;
  padding: 70px 28px;
}

body.ops-ui .qr-block,
body.ops-ui .ops-qr {
  border-radius: 18px !important;
  border: 1px solid var(--ym-line) !important;
  background: rgba(255,255,255,.74) !important;
}

@media (max-width: 980px) {
  body.ops-ui .ops-nav,
  body.ops-ui .navbar .container {
    height: auto !important;
    min-height: 72px;
    flex-wrap: wrap;
  }

  body.ops-ui .navbar-menu,
  body.ops-ui .ops-links {
    order: 3;
    width: 100%;
    overflow-x: auto;
    justify-content: flex-start;
  }

  .ym-hero {
    min-height: 1040px;
  }

  .ym-studio,
  body.ops-ui .ym-studio {
    width: min(860px, calc(100vw - 32px));
  }

  .ym-studio .ops-preview-body,
  body.ops-ui .ops-resource-layout,
  body.ops-ui .ops-workbench-layout,
  .ym-price-grid,
  .ym-milestone .ops-pricing {
    grid-template-columns: 1fr !important;
  }

  .ym-resource-visual {
    position: relative;
    right: auto;
    top: auto;
    width: 100%;
    margin-top: 42px;
  }

  body.ops-ui .resources-grid,
  body.ops-ui .ops-course-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  body.ops-ui .ops-topbar,
  body.ops-ui .navbar {
    min-height: 56px !important;
    border-bottom: 1px solid rgba(23,26,23,.06) !important;
    background: rgba(255,255,255,.74) !important;
    backdrop-filter: blur(18px);
  }

  body.ops-ui .ops-nav,
  body.ops-ui .navbar .container {
    min-height: 56px !important;
    height: 56px !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    padding: 0 22px !important;
  }

  body.ops-ui .ops-brand,
  body.ops-ui .navbar-brand a {
    gap: 8px !important;
  }

  body.ops-ui .ops-logo,
  body.ops-ui .logo {
    width: 30px !important;
    height: 30px !important;
    border-radius: 10px !important;
  }

  body.ops-ui .ops-brand-name,
  body.ops-ui .brand-name {
    font-size: 15px !important;
    line-height: 1 !important;
  }

  body.ops-ui .ops-brand-sub {
    display: none !important;
  }

  body.ops-ui .ops-links,
  body.ops-ui .navbar-menu,
  body.ops-ui .nav-menu {
    display: none !important;
  }

  body.ops-ui .ops-actions,
  body.ops-ui .navbar-end,
  body.ops-ui .search-bar {
    display: none !important;
  }

  .ym-hero {
    min-height: 1110px;
    padding-top: 38px !important;
  }

  .ym-title,
  body.ops-ui .ym-title {
    margin-top: 4px !important;
    font-size: clamp(52px, 13.5vw, 66px) !important;
  }

  .ym-lede,
  body.ops-ui .ym-lede {
    font-size: 16px !important;
    line-height: 1.42 !important;
  }

  .ym-badge {
    max-width: calc(100vw - 44px);
    min-height: 42px;
    padding-inline: 18px;
    font-size: 15px;
  }

  .ym-studio .ops-preview-body {
    min-height: 560px;
  }

  .ym-studio .ops-task-panel {
    padding: 24px;
  }

  .ym-workspace-title {
    margin-top: 38px;
    margin-bottom: 14px;
  }

  .ym-video-link {
    align-items: center;
    margin-top: 68px;
  }

  .ym-play {
    width: 70px;
    height: 70px;
  }

  body.ops-ui .ym-page-hero h1,
  body.ops-ui .ym-prompt-hero h1 {
    font-size: clamp(54px, 16vw, 78px) !important;
  }

  body.ops-ui .ym-prompt-hero {
    padding: 96px 24px 72px !important;
  }

  .ym-resource-visual {
    min-height: 230px;
    box-shadow: 8px 8px 0 var(--ym-black);
  }

  .ym-belief,
  .ym-works,
  .ym-milestone,
  body.ops-ui .ops-band {
    padding: 72px 0 !important;
  }

  .ops-grid-3,
  .ops-grid-2,
  .ym-stats-grid {
    grid-template-columns: 1fr !important;
  }

  .ym-price-plan {
    min-height: auto;
  }

  body.ops-ui .resource-card {
    padding: 18px !important;
  }
}

/* Remix 7: YouMind-style login and personal utility pages. */
.ym-login-page {
  min-height: calc(100vh - 72px);
  border-bottom: 1px solid var(--ym-line);
  background: #f8f7f3;
}

.ym-login-shell {
  width: min(1180px, calc(100vw - 48px));
  min-height: calc(100vh - 72px);
  margin: 0 auto;
  padding: 88px 0 104px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 440px;
  align-items: center;
  gap: 92px;
}

.ym-login-copy {
  min-width: 0;
}

.ym-login-eyebrow,
.ym-account-kicker {
  display: block;
  color: #e85f65;
  font-size: 13px;
  font-weight: 800;
}

.ym-login-copy h1 {
  max-width: 650px;
  margin: 20px 0 0;
  color: var(--ym-ink);
  font-family: var(--ym-serif);
  font-size: clamp(54px, 6vw, 82px);
  font-weight: 760;
  line-height: 1.02;
}

.ym-login-copy > p {
  max-width: 650px;
  margin: 28px 0 0;
  color: var(--ym-ink-soft);
  font-size: 18px;
  line-height: 1.75;
}

.ym-login-actions {
  margin-top: 34px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.ym-login-signals {
  margin-top: 38px;
  padding-top: 20px;
  border-top: 1px solid var(--ym-line);
  display: flex;
  flex-wrap: wrap;
  gap: 12px 28px;
  color: var(--ym-muted);
  font-size: 14px;
}

.ym-login-signals span::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 9px;
  border-radius: 50%;
  background: #238164;
}

.ym-login-panel {
  overflow: hidden;
  border: 1px solid var(--ym-line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(25, 28, 25, .08);
}

.ym-login-panel-head {
  min-height: 58px;
  padding: 0 18px;
  border-bottom: 1px solid var(--ym-line);
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--ym-muted);
  font-size: 13px;
  font-weight: 700;
}

.ym-login-panel-body {
  padding: 32px;
}

.ym-login-panel-body h2 {
  margin: 14px 0 0;
  color: var(--ym-ink);
  font-size: 30px;
  line-height: 1.2;
}

.ym-login-panel-body > p {
  margin: 14px 0 0;
  color: var(--ym-ink-soft);
  font-size: 15px;
  line-height: 1.7;
}

.ym-login-feature-list {
  margin-top: 24px;
  border-top: 1px solid var(--ym-line);
}

.ym-login-feature-list > div {
  min-height: 58px;
  border-bottom: 1px solid var(--ym-line);
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

.ym-login-feature-list strong {
  color: #238164;
  font-size: 12px;
}

.ym-login-feature-list span {
  color: var(--ym-ink);
  font-size: 14px;
  font-weight: 650;
}

.ym-login-submit {
  width: 100%;
  margin-top: 26px;
}

.ym-login-panel-body small {
  display: block;
  margin-top: 14px;
  color: var(--ym-muted);
  font-size: 12px;
  line-height: 1.6;
  text-align: center;
}

.ym-account-page {
  min-height: calc(100vh - 72px);
  background: #faf9f6;
}

.ym-account-heading {
  padding: 72px 0 28px;
  border-bottom: 1px solid var(--ym-line);
  background: #fff;
}

.ym-account-heading .ops-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 42px;
}

.ym-account-heading-copy h1 {
  margin: 14px 0 0;
  color: var(--ym-ink);
  font-family: var(--ym-serif);
  font-size: clamp(46px, 5vw, 66px);
  font-weight: 760;
  line-height: 1.04;
}

.ym-account-heading-copy p {
  max-width: 680px;
  margin: 16px 0 0;
  color: var(--ym-ink-soft);
  font-size: 17px;
  line-height: 1.7;
}

.ym-account-tabs {
  display: flex;
  align-items: center;
  gap: 8px;
}

.ym-account-tabs a {
  min-height: 42px;
  padding: 0 17px;
  border: 1px solid var(--ym-line);
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--ym-ink-soft);
  background: #fff;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}

.ym-account-tabs a:hover,
.ym-account-tabs a.active {
  border-color: var(--ym-black);
  color: #fff;
  background: var(--ym-black);
}

.ym-account-page .category-nav {
  padding: 20px 0 10px;
  border: 0;
  background: transparent;
}

.ym-account-page .tags-nav {
  padding: 0 0 10px;
  border: 0;
  background: transparent;
}

.ym-account-page .resource-list {
  padding: 20px 0 96px;
}

body.ops-ui .ym-account-page .resource-list {
  padding: 20px 0 96px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ym-account-page .ym-account-shell {
  width: min(1180px, calc(100vw - 48px));
  margin: 38px auto 96px;
}

.ym-account-page .ym-account-list,
body.ops-ui .ym-account-page .ym-account-list {
  min-height: 230px;
  padding: 0 !important;
  border: 0;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none;
}

.ym-account-page .ym-account-empty,
body.ops-ui .ym-account-page .ym-account-empty {
  min-height: 230px;
  padding: 38px 20px !important;
  border: 1px solid var(--ym-line);
  border-radius: 8px;
  background: #fff;
}

.ym-account-page .ym-history-item {
  padding: 16px 18px;
  border-radius: 8px;
  background: #fff;
}

.ym-account-page .ym-history-item .history-icon {
  width: 44px;
  height: 44px;
  border-radius: 8px;
}

@media (max-width: 760px) {
  .ym-login-shell {
    width: min(100% - 40px, 620px);
    min-height: auto;
    padding: 58px 0 78px;
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .ym-login-copy h1 {
    font-size: 50px;
  }

  .ym-login-copy > p {
    margin-top: 22px;
    font-size: 16px;
  }

  .ym-login-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .ym-login-actions .ops-btn {
    width: 100%;
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .ym-login-signals {
    margin-top: 30px;
    gap: 10px 18px;
  }

  .ym-login-panel-body {
    padding: 26px 22px;
  }

  .ym-account-heading {
    padding: 52px 0 20px;
  }

  .ym-account-heading .ops-shell {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .ym-account-heading-copy h1 {
    font-size: 46px;
  }

  .ym-account-heading-copy p {
    font-size: 16px;
  }

  .ym-account-tabs {
    margin-right: -20px;
    padding-right: 20px;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .ym-account-tabs::-webkit-scrollbar {
    display: none;
  }

  .ym-account-tabs a {
    min-height: 40px;
    padding: 0 15px;
  }

  .ym-account-page .category-nav {
    padding-top: 16px;
  }

  .ym-account-page .resource-list {
    padding-bottom: 72px;
  }

  body.ops-ui .ym-account-page .resource-list {
    padding-bottom: 72px !important;
  }

  .ym-account-page .ym-account-shell {
    width: calc(100vw - 32px);
    margin: 26px auto 72px;
  }
}

/* Final page hero overrides: keep homepage cinematic, make utility pages readable. */
body.ops-ui .ym-training-hero h1,
body.ops-ui .ym-account-hero h1 {
  color: var(--ym-ink) !important;
  text-shadow: none !important;
}

body.ops-ui .ym-training-hero p,
body.ops-ui .ym-account-hero p {
  color: var(--ym-ink-soft) !important;
  text-shadow: none !important;
}

body.ops-ui .ym-training-hero {
  background:
    radial-gradient(circle at 50% 42%, rgba(183, 220, 234, .54) 0%, rgba(248,245,238,0) 58%),
    linear-gradient(180deg, #f8f5ee 0%, #f4fafb 54%, #f8f5ee 100%) !important;
}

/* Remix 3: keep resource actions compact and readable across card variants. */
body.ops-ui .resource-card {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

body.ops-ui .resource-main {
  width: 100% !important;
  padding-right: 0 !important;
}

body.ops-ui .resource-actions {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: row !important;
  gap: 8px !important;
  margin-top: 4px !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(31, 31, 31, .08);
}

body.ops-ui .resource-actions button,
body.ops-ui .resource-actions a {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  min-height: 30px !important;
  padding: 6px 8px !important;
  border-radius: 8px !important;
  white-space: nowrap !important;
  font-size: 11px !important;
  line-height: 1 !important;
  writing-mode: horizontal-tb !important;
}

/* Remix 4: YouMind-style mobile navigation with functional login and menu. */
.ym-mobile-nav-tools,
.ym-mobile-menu {
  display: none;
}

@media (max-width: 640px) {
  body.ops-ui .ops-nav,
  body.ops-ui .navbar .container {
    padding-inline: 16px !important;
  }

  body.ops-ui .ops-brand,
  body.ops-ui .navbar-brand,
  body.ops-ui .navbar-brand a {
    min-width: 0 !important;
  }

  body.ops-ui .ops-brand-name,
  body.ops-ui .brand-name {
    max-width: 158px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 15px !important;
  }

  body.ops-ui .ops-logo,
  body.ops-ui .logo {
    width: 30px !important;
    height: 30px !important;
    border-radius: 9px !important;
  }

  .ym-mobile-nav-tools {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
  }

  .ym-mobile-login,
  .ym-mobile-menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 38px;
    border: 1px solid rgba(31, 31, 31, .16);
    background: rgba(255, 255, 255, .64);
    color: var(--ym-ink);
  }

  .ym-mobile-login {
    min-width: 58px;
    padding: 0 16px;
    border-radius: var(--ym-pill);
    font-size: 14px;
    font-weight: 650;
  }

  .ym-mobile-menu-toggle {
    width: 42px;
    flex-direction: column;
    gap: 4px;
    padding: 0;
    border-radius: 50%;
  }

  .ym-mobile-menu-toggle span {
    display: block;
    width: 17px;
    height: 1.5px;
    border-radius: 1px;
    background: currentColor;
    transition: transform 160ms ease, opacity 160ms ease;
  }

  .ym-mobile-menu-toggle.is-open span:nth-child(1) {
    transform: translateY(5.5px) rotate(45deg);
  }

  .ym-mobile-menu-toggle.is-open span:nth-child(2) {
    opacity: 0;
  }

  .ym-mobile-menu-toggle.is-open span:nth-child(3) {
    transform: translateY(-5.5px) rotate(-45deg);
  }

  .ym-mobile-menu {
    position: fixed;
    z-index: 1200;
    top: 74px;
    left: 14px;
    right: 14px;
    display: grid;
    gap: 0;
    padding: 8px 16px;
    border: 1px solid rgba(31, 31, 31, .12);
    border-radius: 16px;
    background: rgba(251, 250, 247, .96);
    box-shadow: 0 22px 60px rgba(31, 31, 31, .14);
    backdrop-filter: blur(20px);
    opacity: 0;
    transform: translateY(-8px);
    pointer-events: none;
    transition: opacity 160ms ease, transform 160ms ease;
  }

  .ym-mobile-menu.is-open {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }

  .ym-mobile-menu-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 48px;
    border-bottom: 1px solid rgba(31, 31, 31, .08);
    color: var(--ym-ink-soft);
    font-size: 16px;
    font-weight: 650;
    text-decoration: none;
  }

  .ym-mobile-menu-link:last-child {
    border-bottom: 0;
  }

  .ym-mobile-menu-link.active {
    color: var(--ym-ink);
  }

  .ym-mobile-menu-link span {
    color: var(--ym-muted);
    font-size: 18px;
  }
}

/* Remix 6: one editorial illustration system across public product pages. */
.ym-audience-visual,
.ym-training-illustration,
.ym-editorial-visual {
  margin: 0;
}

.ym-audience-visual {
  margin-top: 54px;
  overflow: hidden;
  border: 1px solid var(--ym-line);
  border-radius: 8px;
  background: #f7f3e9 url("../assets/ym-editorial-audience.png?v=20260624-ym-editorial") center / cover no-repeat;
}

.ym-audience-visual img {
  display: block;
  width: 100%;
  height: auto;
}

.ym-audience-grid {
  margin-top: 30px;
}

.ym-audience-copy {
  min-width: 0;
  padding: 22px 4px 0;
  border-top: 1px solid var(--ym-line);
}

.ym-audience-copy .ops-panel-label {
  color: #e85f65 !important;
}

.ym-audience-copy h3 {
  margin: 12px 0 10px;
  color: var(--ym-ink);
  font-size: 24px;
  line-height: 1.25;
}

.ym-audience-copy p {
  margin: 0;
  color: var(--ym-ink-soft);
  font-size: 15px;
  line-height: 1.75;
}

.ym-resource-visual.ym-editorial-visual {
  min-height: 0 !important;
  overflow: hidden;
  border: 1px solid var(--ym-line) !important;
  border-radius: 8px;
  background: #f8f4ea;
  box-shadow: none;
}

.ym-resource-visual.ym-editorial-visual img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.ym-training-illustration {
  width: min(1160px, calc(100vw - 48px));
  margin: 58px auto 0;
  overflow: hidden;
  border: 1px solid var(--ym-line);
  border-radius: 8px;
  background: #f8f4ea;
}

.ym-training-illustration img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

@media (max-width: 640px) {
  .ym-audience-visual {
    margin-top: 38px;
    aspect-ratio: 4 / 3;
  }

  .ym-audience-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .ym-audience-grid {
    margin-top: 18px;
  }

  .ym-audience-copy {
    padding-top: 18px;
  }

  .ym-audience-copy h3 {
    font-size: 21px;
  }

  .ym-resource-visual.ym-editorial-visual {
    width: calc(100vw - 44px);
    margin: 0 auto 46px;
    border-width: 1px;
    box-shadow: none;
  }

  .ym-training-illustration {
    width: calc(100vw - 32px);
    margin-top: 42px;
  }

  .ym-training-illustration img {
    aspect-ratio: 4 / 3;
    object-position: center;
  }
}

/* Remix 8: Use Cases, Skills and Blog directories mapped from YouMind. */
.ym-global-links {
  gap: 22px !important;
}

.ym-global-links a {
  font-size: 14px !important;
}

body.ops-ui .navbar-end > .search-bar {
  display: none !important;
}

body.ym-updates-page,
body.ym-updates-page.ops-page,
body.ym-updates-page.ops-ui,
body.ym-updates-page .updates-container {
  background: #fff !important;
}

body.ops-ui .latest-header.ym-updates-hero {
  max-width: 1272px !important;
  padding: 56px 24px 28px !important;
  text-align: left;
  background: #fff !important;
  border-bottom: 0 !important;
}

body.ops-ui .latest-header.ym-updates-hero h1,
body.ops-ui .latest-header.ym-updates-hero p {
  max-width: 1200px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body.ops-ui .latest-header.ym-updates-hero h1 {
  font-size: 56px !important;
  line-height: 1.2 !important;
}

body.ops-ui .latest-header.ym-updates-hero p {
  margin-top: 8px !important;
  font-size: 16px !important;
}

.ym-directory-page,
.ym-skills-page,
.ym-blog-page {
  min-height: calc(100vh - 72px);
  color: var(--ym-ink);
  background: #fff;
}

.ym-directory-hero {
  padding: 64px 0 36px;
}

.ym-directory-hero h1 {
  margin: 0;
  color: var(--ym-ink);
  font-family: var(--ym-serif);
  font-size: clamp(54px, 4.4vw, 62px);
  font-weight: 760;
  line-height: 1.02;
}

.ym-directory-hero p {
  max-width: 760px;
  margin: 20px 0 0;
  color: var(--ym-ink-soft);
  font-size: 18px;
  line-height: 1.7;
}

.ym-filter-row {
  margin-top: 30px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.ym-filter-row button {
  min-height: 42px;
  padding: 0 18px;
  border: 1px solid var(--ym-line);
  border-radius: 999px;
  color: var(--ym-ink-soft);
  background: #fff;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}

.ym-filter-row button:hover,
.ym-filter-row button.active {
  border-color: var(--ym-black);
  color: #fff;
  background: var(--ym-black);
}

.ym-filter-row.compact {
  margin-top: 0;
}

.ym-filter-row.compact button {
  min-height: 38px;
  padding: 0 15px;
  font-size: 13px;
}

.ym-case-grid {
  max-width: 1200px;
  padding: 22px 0 108px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 64px 32px;
}

.ym-case-card,
.ym-blog-featured a,
.ym-blog-card,
.ym-skill-pack,
.ym-skill-card {
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.ym-case-card[hidden],
.ym-blog-card[hidden],
.ym-skill-card[hidden] {
  display: none !important;
}

.ym-case-card img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  border-radius: 8px;
  object-fit: cover;
  background: #f7f3e9;
  border: 1px solid rgba(23, 23, 19, .1);
}

.ym-case-card > span,
.ym-blog-featured a > span,
.ym-blog-card > span {
  display: block;
  margin-top: 20px;
  color: #e85f65;
  font-size: 13px;
  font-weight: 800;
}

.ym-case-card h2 {
  margin: 10px 0 0;
  color: var(--ym-ink);
  font-size: 24px;
  line-height: 1.3;
}

.ym-case-card p {
  margin: 12px 0 0;
  color: var(--ym-ink-soft);
  font-size: 15px;
  line-height: 1.7;
}

.ym-case-card:hover h2,
.ym-blog-featured a:hover h2,
.ym-blog-card:hover h3,
.ym-skill-card:hover h3 {
  color: #e85f65;
}

.ym-skills-hero {
  padding: 32px 0 30px;
  text-align: center;
}

.ym-skills-banner {
  min-height: 42px;
  padding: 0 18px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--ym-ink);
  background: #f2f2f0;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}

.ym-skills-hero h1 {
  margin: 36px 0 0;
  color: var(--ym-ink);
  font-family: var(--ym-serif);
  font-size: clamp(54px, 5vw, 64px);
  font-weight: 760;
  line-height: 1.06;
}

.ym-skills-hero p {
  max-width: 680px;
  margin: 22px auto 0;
  color: var(--ym-ink-soft);
  font-size: 18px;
  line-height: 1.7;
}

.ym-skill-packs {
  max-width: 1200px;
  padding: 20px 0 76px;
}

.ym-section-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

.ym-section-title-row h2 {
  margin: 0;
  color: var(--ym-ink);
  font-size: 38px;
  line-height: 1.2;
}

.ym-carousel-actions {
  display: flex;
  gap: 8px;
}

.ym-carousel-actions button {
  width: 42px;
  height: 42px;
  border: 1px solid var(--ym-line);
  border-radius: 50%;
  color: var(--ym-ink);
  background: #fff;
  font-size: 20px;
  cursor: pointer;
}

.ym-carousel-actions button:disabled {
  opacity: .3;
  cursor: default;
}

.ym-skill-pack-track {
  margin-top: 30px;
  padding: 4px 2px 20px;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 40px) / 3);
  gap: 20px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.ym-skill-pack-track::-webkit-scrollbar {
  display: none;
}

.ym-carousel-pagination {
  min-height: 18px;
  margin-top: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

.ym-carousel-pagination button {
  width: 6px;
  height: 6px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #d9d8d4;
  cursor: pointer;
}

.ym-carousel-pagination button.active {
  background: var(--ym-black);
}

.ym-skill-pack {
  position: relative;
  min-height: 240px;
  padding: 24px;
  border: 1px solid var(--ym-line);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  scroll-snap-align: start;
  box-shadow: 0 16px 34px rgba(23, 26, 23, .035);
}

.ym-skill-pack::before,
.ym-skill-pack::after {
  content: "";
  position: absolute;
  inset: -10px 12px auto;
  height: 44px;
  border: 1px solid var(--ym-line);
  border-bottom: 0;
  border-radius: 10px 10px 0 0;
  background: rgba(255,255,255,.68);
  transform: rotate(-2deg);
  z-index: -1;
}

.ym-skill-pack::after {
  inset: -5px 8px auto;
  transform: rotate(2deg);
  background: rgba(255,255,255,.72);
}

.ym-pack-coral { background: #fff0e8; }
.ym-pack-green { background: #edf8f2; }
.ym-pack-blue { background: #edf5fb; }
.ym-pack-yellow { background: #fff8dc; }

.ym-skill-pack > span {
  color: var(--ym-ink-soft);
  font-size: 13px;
  font-weight: 750;
}

.ym-skill-pack h3 {
  margin: 22px 0 0;
  color: var(--ym-ink);
  font-size: 25px;
  line-height: 1.28;
}

.ym-skill-pack p {
  margin: 14px 0 26px;
  color: var(--ym-ink-soft);
  font-size: 14px;
  line-height: 1.7;
}

.ym-skill-pack strong {
  margin-top: auto;
  color: var(--ym-ink);
  font-size: 13px;
}

.ym-skill-explorer,
.ym-blog-library {
  padding: 84px 0 108px;
  background: #f8f7f3;
}

.ym-skill-explorer-head > div:first-child > span {
  display: block;
  margin-bottom: 10px;
  color: #e85f65;
  font-size: 13px;
  font-weight: 800;
}

.ym-skill-grid {
  margin-top: 40px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.ym-skill-card {
  min-height: 214px;
  padding: 24px;
  border: 1px solid var(--ym-line);
  border-radius: 8px;
  background: #fff;
}

.ym-skill-card > span {
  display: inline-flex;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  align-items: center;
  color: #238164;
  background: #e6f4ed;
  font-size: 12px;
  font-weight: 850;
}

.ym-skill-card h3 {
  margin: 18px 0 0;
  color: var(--ym-ink);
  font-size: 21px;
  line-height: 1.35;
}

.ym-skill-card p {
  margin: 12px 0 0;
  color: var(--ym-ink-soft);
  font-size: 14px;
  line-height: 1.7;
}

.ym-blog-hero {
  padding-bottom: 76px;
}

.ym-blog-page .ops-shell {
  max-width: 1248px;
}

.ym-blog-featured {
  padding-bottom: 92px;
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  gap: 24px;
}

.ym-blog-feature-main > img,
.ym-blog-feature-side img,
.ym-blog-card img {
  display: block;
  width: 100%;
  border-radius: 8px;
  object-fit: cover;
  background: #f7f3e9;
  border: 1px solid rgba(23, 23, 19, .1);
}

.ym-blog-feature-main > img {
  aspect-ratio: 16 / 10;
}

.ym-blog-feature-main h2 {
  margin: 10px 0 0;
  color: var(--ym-ink);
  font-size: 34px;
  line-height: 1.25;
}

.ym-blog-feature-main p {
  margin: 14px 0 0;
  color: var(--ym-ink-soft);
  font-size: 16px;
  line-height: 1.7;
}

.ym-blog-feature-side {
  display: grid;
  gap: 28px;
}

.ym-blog-feature-side img {
  aspect-ratio: 16 / 9;
}

.ym-blog-feature-side h2 {
  margin: 9px 0 0;
  color: var(--ym-ink);
  font-size: 22px;
  line-height: 1.35;
}

.ym-blog-library-head {
  align-items: flex-end;
}

.ym-blog-grid {
  margin-top: 40px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 48px 24px;
}

.ym-blog-card img {
  aspect-ratio: 16 / 10;
}

.ym-blog-card h3 {
  margin: 9px 0 0;
  color: var(--ym-ink);
  font-size: 22px;
  line-height: 1.35;
}

.ym-blog-card p {
  margin: 11px 0 0;
  color: var(--ym-ink-soft);
  font-size: 14px;
  line-height: 1.7;
}

@media (max-width: 1100px) {
  .ym-global-links {
    gap: 14px !important;
  }

  .ym-global-links a {
    font-size: 13px !important;
  }
}

@media (max-width: 760px) {
  .ym-directory-hero {
    padding: 58px 0 32px;
  }

  .ym-directory-hero h1,
  .ym-skills-hero h1 {
    font-size: 48px !important;
    line-height: 1.08;
  }

  .ym-blog-hero h1 {
    font-size: 48px !important;
  }

  .ym-directory-hero p,
  .ym-skills-hero p {
    font-size: 16px;
  }

  .ym-filter-row {
    margin-right: -16px;
    padding-right: 16px;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .ym-filter-row::-webkit-scrollbar {
    display: none;
  }

  .ym-filter-row button {
    flex: 0 0 auto;
  }

  .ym-case-grid {
    padding-top: 12px;
    padding-right: 16px;
    padding-left: 16px;
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .ym-case-card,
  .ym-blog-featured a,
  .ym-blog-card,
  .ym-skill-card {
    display: block;
    width: 100%;
  }

  .ym-case-card h2,
  .ym-blog-featured h2,
  .ym-blog-card h3,
  .ym-skill-card h3 {
    display: block;
  }

  .ym-case-card h2 {
    font-size: 23px;
  }

  .ym-skills-hero {
    padding: 42px 0 34px;
  }

  .ym-skills-hero h1 {
    margin-top: 30px;
  }

  .ym-section-title-row,
  .ym-skill-explorer-head,
  .ym-blog-library-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 22px;
  }

  .ym-section-title-row h2 {
    font-size: 32px;
  }

  .ym-carousel-actions {
    align-self: flex-end;
  }

  .ym-skill-pack-track {
    grid-auto-columns: 86%;
  }

  .ym-skill-explorer,
  .ym-blog-library {
    padding: 64px 0 80px;
  }

  .ym-skill-grid,
  .ym-blog-grid {
    grid-template-columns: 1fr;
  }

  .ym-skill-card {
    min-height: 0;
  }

  .ym-blog-featured {
    padding-bottom: 72px;
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .ym-blog-feature-main h2 {
    font-size: 28px;
  }

  .ym-blog-feature-side {
    grid-template-columns: 1fr;
    gap: 42px;
  }
}
