/* Shared text roles. Icons and the fixed brand mark retain their own geometry. */
:root {
    --font-family: "Segoe UI", system-ui, sans-serif;
    --text-body: 1.0625rem;
    --text-title: 2rem;
    --text-heading: 1.375rem;
    --text-subtitle: 1.125rem;
    --text-caption: 1rem;
    --weight-normal: 400;
    --weight-emphasis: 600;
    --leading-body: 1.6;
    --leading-heading: 1.25;
    --bs-body-font-family: var(--font-family);
    --bs-body-font-size: var(--text-body);
    --bs-body-font-weight: var(--weight-normal);
    --bs-body-line-height: var(--leading-body);
}

body {
    font-family: var(--font-family);
    font-size: var(--text-body);
    font-weight: var(--weight-normal);
    line-height: var(--leading-body);
}

button,
input,
textarea,
select,
.btn,
.form-control,
.form-select {
    font-family: inherit;
    font-size: var(--text-body);
    font-weight: var(--weight-normal);
    line-height: var(--leading-body);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: inherit;
    font-weight: var(--weight-emphasis);
    line-height: var(--leading-heading);
    letter-spacing: normal;
    overflow-wrap: anywhere;
}

h1 {
    font-size: var(--text-title);
}
h2 {
    font-size: var(--text-heading);
}
h3,
h4,
h5,
h6 {
    font-size: var(--text-subtitle);
}

strong,
b,
label,
.primary,
.secondary,
.danger,
.full-width,
.column-header h2 {
    font-weight: var(--weight-emphasis);
}

.column-header h2,
.task-card h3 {
    font-size: var(--text-subtitle);
}

.page-heading p,
.auth-card > p {
    font-size: var(--text-subtitle);
    line-height: var(--leading-body);
}

small,
.form-note,
.board-footnote,
.back-link,
.eyebrow,
.topbar,
.sidebar-caption,
.account-name,
.logout,
.count,
.pill,
.due-date,
.auth-bottom,
.auth-options a,
.workspace-activity,
.subtask-progress,
.integration-card a,
.calendar-explainer > span,
.section-heading > span,
.board-links-empty {
    font-size: var(--text-caption);
    line-height: var(--leading-body);
}

.form-note,
.board-footnote,
.back-link,
.eyebrow,
.due-date,
.board-links-empty {
    color: var(--muted);
}

.app-sidebar nav a,
.app-sidebar nav .board-link,
.card-subtask-title,
.checkbox-label,
.danger-link,
.subscription-panel label,
.app-dialog label,
.auth-card label {
    font-size: var(--text-body);
    line-height: var(--leading-body);
}

.avatar,
.mini-avatar {
    font-size: var(--text-caption);
}
.subscription-panel input.feed-url {
    font-family: inherit;
}

p,
.card-subtask-title {
    line-height: var(--leading-body);
}

.count {
    height: auto;
    min-height: 1.6em;
    padding-inline: 6px;
}

.card-subtask,
.checkbox-label {
    font-weight: var(--weight-normal);
}
