/* =====================================================
   RecorraJá - Base Typography & Elements
   ===================================================== */

body {
    font-family: var(--font-family);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-base);
    color: var(--color-text);
    background-color: var(--color-bg);
}

/* Headings */
h1 { font-size: var(--font-size-3xl); line-height: var(--line-height-tight); }
h2 { font-size: var(--font-size-2xl); line-height: var(--line-height-tight); }
h3 { font-size: var(--font-size-xl); }
h4 { font-size: var(--font-size-lg); }
h5 { font-size: var(--font-size-base); }
h6 { font-size: var(--font-size-sm); }

/* Links */
a {
    color: var(--color-primary);
    transition: color var(--transition-fast);
}
a:hover {
    color: var(--color-primary-dark);
}

/* Paragraphs */
p + p { margin-top: var(--spacing-md); }

/* Small */
small { font-size: var(--font-size-sm); color: var(--color-text-secondary); }

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

/* Code */
code {
    font-family: 'Fira Code', 'Consolas', monospace;
    font-size: 0.9em;
    padding: 2px 6px;
    background-color: var(--color-bg);
    border-radius: var(--radius-sm);
}

/* HR */
hr {
    border: none;
    border-top: 1px solid var(--color-border);
    margin: var(--spacing-lg) 0;
}

/* Selection */
::selection {
    background-color: var(--color-primary);
    color: var(--color-text-inverse);
}

/* Scrollbar */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: var(--color-bg); }
::-webkit-scrollbar-thumb {
    background: var(--color-text-muted);
    border-radius: var(--radius-full);
}
::-webkit-scrollbar-thumb:hover { background: var(--color-text-secondary); }
