/* ============================================================
   AVTOMAKTAB PREMIUM - TYPOGRAPHY SYSTEM
   Professional Typography Scale
   ============================================================ */

/* Font families */
.font-primary { font-family: var(--font-primary); }
.font-secondary { font-family: var(--font-secondary); }
.font-mono { font-family: var(--font-mono); }

/* Font sizes */
.text-xs { font-size: var(--text-xs); line-height: 1.4; }
.text-sm { font-size: var(--text-sm); line-height: 1.5; }
.text-base { font-size: var(--text-base); line-height: 1.6; }
.text-lg { font-size: var(--text-lg); line-height: 1.5; }
.text-xl { font-size: var(--text-xl); line-height: 1.4; }
.text-2xl { font-size: var(--text-2xl); line-height: 1.3; }
.text-3xl { font-size: var(--text-3xl); line-height: 1.2; }
.text-4xl { font-size: var(--text-4xl); line-height: 1.1; }

/* Font weights */
.font-light { font-weight: var(--font-light); }
.font-normal { font-weight: var(--font-normal); }
.font-medium { font-weight: var(--font-medium); }
.font-semibold { font-weight: var(--font-semibold); }
.font-bold { font-weight: var(--font-bold); }
.font-extrabold { font-weight: var(--font-extrabold); }
.font-black { font-weight: var(--font-black); }

/* Text colors */
.text-primary { color: var(--text-primary); }
.text-secondary { color: var(--text-secondary); }
.text-tertiary { color: var(--text-tertiary); }
.text-muted { color: var(--text-muted); }
.text-accent { color: var(--text-accent); }
.text-gold { color: var(--text-gold); }
.text-orange { color: var(--accent-orange); }
.text-green { color: var(--accent-green); }
.text-blue { color: var(--accent-blue); }
.text-purple { color: var(--accent-purple); }
.text-pink { color: var(--accent-pink); }
.text-red { color: var(--accent-red); }

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

/* Text decoration */
.underline { text-decoration: underline; }
.line-through { text-decoration: line-through; }
.no-underline { text-decoration: none; }

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

/* Letter spacing */
.tracking-tight { letter-spacing: -0.5px; }
.tracking-normal { letter-spacing: 0; }
.tracking-wide { letter-spacing: 0.5px; }
.tracking-wider { letter-spacing: 1px; }

/* Line height */
.leading-none { line-height: 1; }
.leading-tight { line-height: 1.25; }
.leading-normal { line-height: 1.5; }
.leading-relaxed { line-height: 1.75; }

/* Text overflow */
.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.truncate-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.truncate-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Gradient text */
.text-gradient {
    background: var(--gradient-primary);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.text-gradient-gold {
    background: var(--gradient-gold);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.text-gradient-ocean {
    background: var(--gradient-ocean);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.text-gradient-candy {
    background: var(--gradient-candy);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Special text styles */
.text-glow {
    text-shadow: 0 0 20px rgba(249, 115, 22, 0.5);
}

.text-glow-gold {
    text-shadow: 0 0 20px rgba(251, 191, 36, 0.5);
}

/* Word break */
.break-all { word-break: break-all; }
.break-words { word-wrap: break-word; overflow-wrap: break-word; }

/* White space */
.whitespace-normal { white-space: normal; }
.whitespace-nowrap { white-space: nowrap; }
.whitespace-pre { white-space: pre; }

/* Lists */
.list-disc { list-style-type: disc; padding-left: var(--space-4); }
.list-decimal { list-style-type: decimal; padding-left: var(--space-4); }

/* Blockquote styling */
blockquote.styled {
    background: var(--bg-secondary);
    border-left: 4px solid var(--accent-orange);
    padding: var(--space-4);
    border-radius: 0 var(--radius-md) var(--radius-md) 0;
    margin: var(--space-4) 0;
}

/* Code inline */
code.inline {
    background: var(--bg-secondary);
    padding: 2px 6px;
    border-radius: var(--radius-xs);
    font-size: 0.9em;
    color: var(--accent-orange-light);
}

/* Highlight */
mark {
    background: rgba(249, 115, 22, 0.2);
    color: var(--text-primary);
    padding: 2px 4px;
    border-radius: var(--radius-xs);
}

/* Small text */
small {
    font-size: 0.875em;
}

/* Strong */
strong {
    font-weight: var(--font-bold);
}

/* Emphasis */
em {
    font-style: italic;
}
