  .critic-page {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 32px 24px 80px;
  }

  .critic-header { margin-bottom: 28px; }
  .critic-header h1 {
    font-size: 32px;
    font-weight: 800;
    color: #0d1117;
    letter-spacing: -0.5px;
    line-height: 1.15;
  }

  .section-divider {
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin-bottom: 16px;
    border-bottom: 1px solid #d8dae0;
    padding-bottom: 10px;
  }

  .section-title {
    font-size: 20px;
    font-weight: 800;
    color: #0d1117;
    letter-spacing: -0.3px;
  }

  .section-count {
    font-size: 14px;
    color: var(--text-muted);
  }

  /* Review cards */
  .review-block {
    background: #fff;
    border: 1px solid var(--border-color);
    border-left: 3px solid var(--brand-color, #e2e4e9);
    border-radius: 8px;
    padding: 20px 22px;
    margin-bottom: 12px;
    transition: box-shadow 0.15s;
  }

  .review-block:hover { box-shadow: 0 2px 8px rgba(0,0,0,0.04); }

  .review-top {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 12px;
  }

  .game-thumb {
    width: 48px;
    height: 64px;
    border-radius: 6px;
    object-fit: cover;
    flex-shrink: 0;
    background: #e2e4e9;
  }

  .game-thumb-placeholder {
    width: 48px;
    height: 64px;
    border-radius: 6px;
    background: #e2e4e9;
    flex-shrink: 0;
  }

  .review-game-info { flex: 1; min-width: 0; }

  .review-game-title {
    font-size: 16px;
    font-weight: 700;
    color: #0d1117;
    line-height: 1.25;
  }

  .review-game-title a { color: inherit; transition: color 0.15s; }
  .review-game-title a:hover { color: var(--accent-blue); }

  .review-outlet-name {
    font-size: 13px;
    color: var(--text-muted);
    margin-top: 2px;
  }

  .outlet-logo {
    height: 24px;
    width: auto;
    max-width: 80px;
    object-fit: contain;
    filter: grayscale(100%);
    opacity: 0.7;
    transition: filter 0.2s, opacity 0.2s;
    flex-shrink: 0;
  }

  .review-block:hover .outlet-logo {
    filter: grayscale(0%);
    opacity: 1;
  }

  .review-score-area {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
  }

  .native-score {
    font-size: 22px;
    font-weight: 800;
    color: #0d1117;
    letter-spacing: -0.5px;
    white-space: nowrap;
  }

  .native-score-suffix {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-muted);
  }

  .normalized-badge {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-muted);
    background: #f0f1f3;
    padding: 3px 8px;
    border-radius: 4px;
  }

  .game-agg-score {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    flex-shrink: 0;
  }

  .agg-green  { background: #1a9a4a; }
  .agg-yellow { background: #b08800; }
  .agg-red    { background: #c53030; }
  .agg-muted  { background: #9ca3af; }

  .stars { display: inline-flex; gap: 2px; font-size: 18px; line-height: 1; }
  .star-filled { color: #f59e0b; }
  .star-half { position: relative; display: inline-block; color: #d1d5db; }
  .star-half::before { content: '\2605'; position: absolute; left: 0; top: 0; color: #f59e0b; clip-path: inset(0 50% 0 0); }
  .star-empty { color: #d1d5db; }
  .thumb-icon { font-size: 24px; line-height: 1; }

  .unscored-label {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .review-excerpt {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.65;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 10px;
  }

  .review-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .review-meta { font-size: 11px; color: var(--text-muted); }

  .read-review {
    font-size: 13px;
    font-weight: 600;
    color: var(--accent-blue);
    white-space: nowrap;
    transition: color 0.15s;
  }

  .read-review:hover { color: var(--accent-blue-dim); }

  .no-reviews {
    text-align: center;
    padding: 40px 20px;
    color: var(--text-muted);
    font-size: 15px;
  }

  /* Pagination */
  .pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 32px;
    padding-top: 20px;
    border-top: 1px solid #ecedf0;
  }

  .pagination a,
  .pagination span {
    font-size: 14px;
    font-weight: 600;
  }

  .pagination a {
    color: var(--accent-blue);
    padding: 6px 14px;
    border-radius: 8px;
    border: 1px solid #d1d5db;
    transition: background 0.12s;
  }

  .pagination a:hover { background: #f0f1f4; }
  .pagination .page-info { color: var(--text-secondary); }

  @media (max-width: 768px) {
    .critic-page { padding: 24px 16px 60px; }
    .review-block { padding: 16px; }
    .section-title { font-size: 18px; }
  }

  @media (max-width: 640px) {
    .review-top { flex-wrap: wrap; }
    .review-score-area { margin-left: 0; }
    .critic-header h1 { font-size: 24px; }
    .review-block { padding: 14px; }
  }

  @media (max-width: 480px) {
    .critic-page { padding: 16px 12px 48px; }
    .review-excerpt { -webkit-line-clamp: 2; }
    .game-thumb, .game-thumb-placeholder { width: 40px; height: 53px; }
    .pagination a { padding: 5px 10px; font-size: 13px; }
  }
