// Use theme variables with namespace to avoid conflicts
@use '../../../../theme/styles/variables' as vars;
@use '../../../../theme/styles/mixins' as mix;
// ------
// Hikari Typography Component
// Unified text rendering: headings, body, caption, code, muted
// ------
// ------
// Base Typography
// ------
.hk-typography {
font-family: vars.$hikari-font-family-sans;
color: var(--hi-color-text-primary);
line-height: 1.5;
margin: 0;
}
// ------
// Heading Variants (H1–H6)
// ------
.hk-typography-h1 {
font-size: vars.$hikari-font-size-3xl;
font-weight: 600;
line-height: 1.25;
margin-bottom: vars.$hikari-spacing-md;
}
.hk-typography-h2 {
font-size: vars.$hikari-font-size-2xl;
font-weight: 600;
line-height: 1.25;
margin-bottom: vars.$hikari-spacing-md;
}
.hk-typography-h3 {
font-size: vars.$hikari-font-size-xl;
font-weight: 600;
line-height: 1.25;
margin-bottom: vars.$hikari-spacing-md;
}
.hk-typography-h4 {
font-size: vars.$hikari-font-size-lg;
font-weight: 500;
line-height: 1.35;
}
.hk-typography-h5 {
font-size: vars.$hikari-font-size-base;
font-weight: 500;
line-height: 1.5;
}
.hk-typography-h6 {
font-size: vars.$hikari-font-size-sm;
font-weight: 500;
line-height: 1.5;
}
// ------
// Body Text
// ------
.hk-typography-body {
font-size: vars.$hikari-font-size-base;
line-height: 1.5;
}
// ------
// Caption / Small Text
// ------
.hk-typography-caption {
font-size: vars.$hikari-font-size-sm;
color: var(--hi-color-text-secondary);
line-height: 1.5;
}
// ------
// Inline Code
// ------
.hk-typography-code {
font-family: vars.$hikari-font-family-mono;
font-size: 0.9em;
padding: 0.15em 0.4em;
background-color: var(--hi-color-border);
border-radius: vars.$hikari-radius-sm;
white-space: nowrap;
}
// ------
// Muted Text
// ------
.hk-typography-muted {
font-size: vars.$hikari-font-size-base;
color: var(--hi-color-text-secondary);
line-height: 1.5;
}
// ------
// Overline
// ------
.hk-typography-overline {
font-size: vars.$hikari-font-size-xs;
font-weight: 500;
text-transform: uppercase;
letter-spacing: 0.05em;
color: var(--hi-color-text-secondary);
}