/**
 * TIC Design System - Reset
 * Base element resets and defaults
 */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    font-size: 16px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    line-height: var(--leading-normal);
    -webkit-text-size-adjust: 100%;
    font-optical-sizing: auto;
    color-scheme: light dark;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: var(--font-family-sans);
    font-weight: var(--font-normal);
    color: var(--text-primary);
    background-color: var(--bg-primary);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transition: var(--transition-colors);
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Form elements - inherit font from body */
button,
input,
select,
textarea {
    font-family: inherit;
    font-size: inherit;
}

/* Links */
a {
    color: var(--accent-primary);
    text-decoration: none;
    transition: var(--transition-colors);
}

a:hover {
    color: var(--accent-primary-hover);
}

/* Focus styles */
:focus-visible {
    outline: var(--ring-width) solid var(--ring-color);
    outline-offset: var(--ring-offset);
}

/* Selection */
::selection {
    background-color: var(--accent-primary);
    color: var(--text-inverse);
}

/* Horizontal rule */
hr {
    margin: var(--space-8) 0;
    border: 0;
    border-top: 1px solid var(--border-primary);
}
