/* 圆角收紧层：统一降低大圆角，保留状态圆点和圆形语义。 */

@media screen {
  :root {
    --radius-shell: 12px;
    --radius-panel: 10px;
    --radius-card: 8px;
    --radius-control: 5px;
    --radius-small: 3px;
  }

  .sidebar {
    border-radius: var(--radius-shell);
  }

  .topbar,
  .result-gallery-heading,
  .performance-id-card,
  .role-intro,
  .panel,
  .deadline-card,
  .stat-card,
  .modal-card,
  .compact-modal,
  .empty-state {
    border-radius: var(--radius-panel);
  }

  .policy-note,
  .role-formula,
  .result-gallery-meta,
  .id-result-stack,
  .employee-card,
  .photo-upload-block,
  .template-row,
  .result-strip,
  .level-choice {
    border-radius: var(--radius-card);
  }

  .id-card-topline {
    border-radius: var(--radius-panel) var(--radius-panel) var(--radius-small) var(--radius-small);
  }

  .sticky-heading {
    border-radius: var(--radius-panel) var(--radius-panel) 0 0;
  }

  .nav-item,
  input,
  textarea,
  select,
  .button,
  .queue-count,
  .id-photo-label,
  .status-pill,
  .grade-chip,
  .role-table .text-button,
  .icon-button,
  .remove-metric,
  .level-badge,
  .final-grade-badge,
  .level-badge-code,
  .final-grade-code,
  .level-choice .level-code,
  .level-choice.is-selected::after,
  .live-score em,
  .toast {
    border-radius: var(--radius-control);
  }

  .id-photo-area {
    width: 116px;
    max-width: 100%;
    height: auto;
    aspect-ratio: 1;
    align-self: center;
    justify-self: center;
    border-radius: 50%;
    background: transparent;
    box-shadow: none;
    overflow: visible;
  }

  .id-photo,
  .queue-photo,
  .employee-card-photo,
  .employee-photo-preview {
    height: auto;
    aspect-ratio: 1;
    border-radius: 50%;
    object-fit: cover;
    object-position: center 24%;
    overflow: hidden;
  }

  .id-photo {
    box-shadow:
      0 0 0 4px #f9f9ff,
      0 0 0 5px rgba(90, 44, 245, 0.15),
      0 10px 24px rgba(54, 38, 129, 0.12);
  }

  .id-photo-label {
    right: 50%;
    bottom: -10px;
    z-index: 1;
    transform: translateX(50%);
    white-space: nowrap;
  }

  .result-gallery-meta {
    grid-template-columns: auto 1fr;
    grid-template-areas:
      "month month"
      "count label";
    align-items: end;
    justify-items: start;
    column-gap: 8px;
    padding: 13px 17px 14px;
    border-left: 4px solid var(--blue);
    background: linear-gradient(135deg, #f2f0ff 0%, #e8e4ff 100%);
  }

  #result-month-label {
    grid-area: month;
    margin-bottom: 7px;
    color: var(--blue);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: 0.02em;
  }

  #result-complete-count {
    grid-area: count;
    margin: 0;
  }

  .result-gallery-meta small {
    grid-area: label;
    padding-bottom: 3px;
  }

  .result-gallery-heading {
    padding: 18px 22px;
  }

  .result-gallery-heading h2 {
    margin: 0;
    font-size: clamp(25px, 2.4vw, 34px);
  }

  .result-gallery-heading p {
    margin-top: 6px;
  }

  .role-table td:first-child {
    border-radius: var(--radius-control) 0 0 var(--radius-control);
  }

  .role-table td:last-child {
    border-radius: 0 var(--radius-control) var(--radius-control) 0;
  }

  @media (max-width: 820px) {
    .sidebar,
    .topbar {
      border-radius: var(--radius-panel);
    }
  }

  @media (max-width: 620px) {
    .sidebar,
    .topbar,
    .result-gallery-heading,
    .performance-id-card,
    .role-intro,
    .panel,
    .modal-card,
    .compact-modal {
      border-radius: 10px;
    }

    .id-card-topline {
      border-radius: 10px 10px var(--radius-small) var(--radius-small);
    }

    .sticky-heading {
      border-radius: 10px 10px 0 0;
    }

    .id-photo-area {
      width: 92px;
      height: auto;
      border-radius: 50%;
    }

    .id-result-stack,
    .role-formula,
    .level-choice {
      border-radius: 6px;
    }
  }
}
