/*
 * LearnStack radius hierarchy
 *
 * Geometry communicates function: structural study surfaces are architectural,
 * controls are precise, overlays retain a little lift, and only true tokens,
 * progress tracks, toggles, and circular controls keep fully rounded geometry.
 */
:root {
  --ls-radius-xs: 4px;
  --ls-radius-sm: 5px;
  --ls-radius-md: 7px;
  --ls-radius-lg: 9px;
  --ls-radius-pill: 9999px;
}

/* Normalize the legacy utility classes emitted by the bundled application. */
.rounded-3xl,
.rounded-2xl,
.rounded-xl {
  border-radius: var(--ls-radius-md) !important;
}

.rounded-lg,
.rounded-md {
  border-radius: var(--ls-radius-sm) !important;
}

.rounded-sm {
  border-radius: var(--ls-radius-xs) !important;
}

.rounded-full {
  border-radius: var(--ls-radius-pill) !important;
}

/* Large structural surfaces: stable, quiet, and architectural. */
[data-slot="card"],
[data-slot="tabs-content"],
.ls-learn-topic-hero,
.ls-learn-overview,
.ls-learn-ready,
.ls-learn-builder-card,
.ls-learn-test-picker,
.ls-learn-loading-card,
.ls-learn-adaptive-card,
.ls-learn-class-shell,
.ls-learn-lesson-map,
.ls-learn-support-rail,
.ls-learn-class-article,
.ls-learn-article-heading,
.ls-learn-story-section,
.ls-learn-written-check,
.ls-learn-lesson-complete,
.ls-learn-support-section,
.ls-practice-next-session,
.ls-practice-due-row,
.ls-practice-latest-topic,
.ls-practice-config-section,
.ls-practice-course-review-host,
.ls-practice-test-skeleton,
.ls-practice-review-queue,
.ls-practice-review-summary,
.ls-practice-question,
.ls-practice-review-question,
.ls-practice-retention-card,
.ls-practice-course-history,
.ls-course-review-intro,
.ls-course-review-form,
.ls-course-review-empty,
.ls-course-review-overview,
.ls-course-review-sidebar,
.ls-course-review-lesson-panel,
.ls-course-review-materials,
.ls-course-review-quiz,
.ls-settings-content,
.ls-settings-section,
.ls-guest-settings,
.ls-delete-account,
.ls-billing-settings,
.ls-test-start-module,
.ls-test-loading-panel,
.repair-stack-panel {
  border-radius: var(--ls-radius-md) !important;
}

/* Nested and repeated content surfaces use a smaller radius than their parent. */
.ls-learn-utility-card,
.ls-learn-lesson-canvas,
.ls-learn-definition,
.ls-learn-example,
.ls-learn-why,
.ls-learn-unit-card,
.ls-learn-reasoning-check,
.ls-learn-mental-model,
.ls-learn-formal-link,
.ls-learn-gap-connection,
.ls-learn-walkthrough-problem,
.ls-learn-model-part,
.ls-learn-tool-link,
.ls-practice-utility-card,
.ls-practice-config-choice,
.ls-practice-course-topic,
.ls-practice-skeleton-question,
.ls-practice-review-queue article,
.ls-practice-review-question dl,
.ls-course-review-utility-card,
.ls-course-review-section,
.ls-course-review-worked-example,
.ls-course-review-flashcard,
.ls-course-review-quiz-item,
.ls-course-review-takeaway,
.ls-course-review-prompt,
.ls-course-review-comeback,
.repair-item,
.repair-blank-card,
.repair-stack-card {
  border-radius: var(--ls-radius-sm) !important;
}

/* Inputs and compact controls should feel precise and tactile. */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
textarea,
select,
.ls-learn-question-field,
.ls-learn-field input,
.ls-learn-written-response,
.ls-learn-notes,
.ls-course-review-field input,
.ls-course-review-field select,
.ls-course-review-field textarea {
  border-radius: var(--ls-radius-xs) !important;
}

.ls-product-switcher,
[data-slot="tabs-list"] {
  border-radius: var(--ls-radius-md) !important;
}

.ls-product-switcher > button,
[data-slot="tabs-trigger"],
.ls-learn-action,
.ls-learn-static-action,
.ls-learn-secondary-action,
.ls-learn-ready-action,
.ls-learn-level-option,
.ls-learn-path-option,
.ls-learn-test-option,
.ls-learn-selection-tools button,
.ls-learn-adaptive-option,
.ls-learn-map-item,
.ls-learn-check-option,
.ls-learn-model-answer,
.ls-learn-next-unit,
.ls-practice-action,
.ls-practice-config-choice,
.ls-practice-answer-option,
.ls-practice-review-option,
.ls-course-review-generate,
.ls-course-review-context,
.ls-course-review-secondary,
.ls-course-review-lesson-link,
.ls-course-review-choice,
.ls-settings-dialog button:not([role="switch"]),
.ls-feedback-button {
  border-radius: var(--ls-radius-sm) !important;
}

/* Answer rows remain part of an examination surface, not giant soft pills. */
.ls-practice-question label,
.ls-practice-review-question label,
.ls-practice-option-list > button,
.ls-practice-option-list > label,
.ls-feedback-card,
.ls-feedback-sequence {
  border-radius: var(--ls-radius-sm) !important;
}

/* Overlays sit above the workspace and may retain slightly more softness. */
[role="dialog"],
[data-slot="dialog-content"],
.ls-settings-dialog,
.ls-learn-builder,
.ls-practice-dialog,
.ls-practice-modal {
  border-radius: var(--ls-radius-lg) !important;
}

/* Pills are reserved for compact state, metadata, and progress semantics. */
[data-slot="badge"],
.ls-learn-eyebrow,
.ls-learn-detail,
.ls-learn-test-count,
.ls-learn-unit-count,
.ls-learn-adaptive-count,
.ls-learn-section-number,
.ls-learn-check-label,
.ls-practice-eyebrow,
.ls-practice-course-topic-meta,
.ls-course-review-kicker,
.ls-course-review-meta span,
.ls-course-review-module-number,
.ls-course-review-section-number,
.ls-course-review-section-role,
.ls-status-chip,
.ls-difficulty-chip,
.ls-subject-chip,
.ls-progress-track,
.ls-learn-progress-track,
.ls-learn-adaptive-progress,
.ls-course-review-completion-bar,
[role="switch"] {
  border-radius: var(--ls-radius-pill) !important;
}

/* Preserve geometry whose semantics are intrinsically circular. */
.ls-learn-icon-button,
.ls-learn-utility-icon,
.ls-learn-ready-icon,
.ls-learn-adaptive-complete-icon,
.ls-learn-check-icon,
.ls-learn-map-number,
.ls-learn-status-dot,
.ls-practice-due-icon,
.ls-practice-utility-icon,
.ls-practice-topic-icon,
.ls-practice-topic-arrow,
.ls-practice-question > header > span,
.ls-practice-review-number,
.ls-course-review-utility-index,
.ls-settings-avatar,
button[aria-label="Settings"],
button[aria-label="Close tutorial"] {
  border-radius: 50% !important;
}
