/* === RESET === */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* === БАЗОВЫЕ === */
html, body {
    height: 100%;
    overflow-x: hidden;
}

body {
    font-family: var(--font);
    font-size: 14px;
    line-height: 1.6;
    color: var(--text);
    background: var(--bg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a {
    color: var(--brand);
    text-decoration: none;
    transition: color var(--transition);
}

a:hover {
    color: var(--brand-dark);
}

h1, h2, h3, h4 {
    font-family: var(--font-heading);
    color: var(--text);
    line-height: 1.3;
}

/* === СКРОЛЛБАР === */
::-webkit-scrollbar {
    width: 0;
    display: none;
}

* {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* === УТИЛИТЫ === */
.hidden {
    display: none !important;
}

.text-center {
    text-align: center;
}

.text-light {
    color: var(--text-light);
}

.text-muted {
    color: var(--text-muted);
}

.mt-1 { margin-top: 8px; }
.mt-2 { margin-top: 16px; }
.mt-3 { margin-top: 24px; }
.mb-1 { margin-bottom: 8px; }
.mb-2 { margin-bottom: 16px; }
.mb-3 { margin-bottom: 24px; }

/* === КУРСОРИ === */
html {
    cursor: default;
}

button,
[type="button"],
[type="submit"],
.btn,
.btn-icon,
.btn-sm,
.btn-logout,
.nav-item,
.modal-close,
.card,
.form-card,
.checkbox-label,
select,
[onclick] {
    cursor: pointer !important;
}

input,
textarea {
    cursor: text;
}