/* ===== TYPOGRAFIA ===== */

/* FONT FACES */
@import url('https://fonts.googleapis.com/css2?family=Georgia:wght@400;700&family=Inter:wght@400;500;600;700&display=swap');

/* TYPOGRAFIA URZĘDOWA */
.font-primary {
    font-family: var(--font-family-primary);
}

.font-secondary {
    font-family: var(--font-family-secondary);
}

.font-mono {
    font-family: var(--font-family-mono);
}

/* WAGI */
.font-light { font-weight: 300; }
.font-normal { font-weight: 400; }
.font-medium { font-weight: 500; }
.font-semibold { font-weight: 600; }
.font-bold { font-weight: 700; }

/* WIELKOŚCI */
.text-xs { font-size: var(--font-size-xs); }
.text-sm { font-size: var(--font-size-sm); }
.text-base { font-size: var(--font-size-base); }
.text-lg { font-size: var(--font-size-lg); }
.text-xl { font-size: var(--font-size-xl); }
.text-2xl { font-size: var(--font-size-2xl); }
.text-3xl { font-size: var(--font-size-3xl); }
.text-4xl { font-size: var(--font-size-4xl); }

/* LINE HEIGHT */
.leading-tight { line-height: var(--line-height-tight); }
.leading-normal { line-height: var(--line-height-normal); }
.leading-relaxed { line-height: var(--line-height-relaxed); }

/* KOLORY TEKSTU */
.text-primary { color: var(--primary-color); }
.text-secondary { color: var(--secondary-color); }
.text-accent { color: var(--accent-color); }
.text-success { color: var(--success-color); }
.text-warning { color: var(--warning-color); }
.text-danger { color: var(--danger-color); }
.text-muted { color: var(--text-muted); }
.text-light { color: var(--text-light); }

/* ALIGNMENT */
.text-left { text-align: left; }
.text-center { text-align: center; }
.text-right { text-align: right; }
.text-justify { text-align: justify; }

/* TRANSFORMacje */
.uppercase { text-transform: uppercase; }
.lowercase { text-transform: lowercase; }
.capitalize { text-transform: capitalize; }

/* DECORATION */
.underline { text-decoration: underline; }
.no-underline { text-decoration: none; }

/* HEADING STYLES */
h1.page-title {
    font-family: var(--font-family-primary);
    font-size: var(--font-size-4xl);
    font-weight: 700;
    text-align: center;
    color: var(--text-color);
    margin-bottom: var(--spacing-8);
    padding-bottom: var(--spacing-4);
    border-bottom: 2px solid var(--border-color);
}

h2.section-title {
    font-family: var(--font-family-primary);
    font-size: var(--font-size-2xl);
    font-weight: 600;
    color: var(--primary-color);
    margin-bottom: var(--spacing-6);
    padding-bottom: var(--spacing-3);
    border-bottom: 1px solid var(--border-color);
}

h3.card-title {
    font-family: var(--font-family-primary);
    font-size: var(--font-size-xl);
    font-weight: 600;
    color: var(--text-color);
    margin-bottom: var(--spacing-3);
}

/* PARAGRAPH STYLES */
.lead {
    font-family: var(--font-family-primary);
    font-size: var(--font-size-lg);
    line-height: var(--line-height-relaxed);
    color: var(--text-muted);
}

.small {
    font-size: var(--font-size-sm);
    color: var(--text-muted);
}

/* LIST STYLES */
.list-unstyled {
    list-style: none;
    padding-left: 0;
}

.list-inline {
    list-style: none;
    padding-left: 0;
}

.list-inline li {
    display: inline-block;
    margin-right: var(--spacing-4);
}

/* RESPONSIVE TYPOGRAFIA */
@media (max-width: 768px) {
    h1.page-title {
        font-size: var(--font-size-3xl);
        margin-bottom: var(--spacing-6);
    }
    
    h2.section-title {
        font-size: var(--font-size-xl);
        margin-bottom: var(--spacing-4);
    }
    
    h3.card-title {
        font-size: var(--font-size-lg);
    }
}
