/* ═══════════════════════════════════════════════════════════
   StreamG — Base
   Reset, body, типографика, ссылки
   ═══════════════════════════════════════════════════════════ */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    overflow-x: hidden;
}

body {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    color: var(--text-primary);
    min-height: 100vh;
    background: var(--bg);
    background-image: radial-gradient(
        circle at 50% 0%,
        var(--accent-bg-soft) 0%,
        transparent 50%
    );
    background-repeat: no-repeat;
    background-size: 100% 600px;
}

a {
    color: inherit;
    text-decoration: none;
}

h1, h2, h3, h4 {
    font-weight: 700;
    line-height: 1.2;
}

img, video {
    max-width: 100%;
    display: block;
}

button {
    font-family: inherit;
    cursor: pointer;
}

input, textarea, select {
    font-family: inherit;
}

/* ─── Утилиты ─── */
.mono {
    font-family: 'Consolas', monospace;
}

.text-secondary {
    color: var(--text-secondary);
}

.text-accent {
    color: var(--accent);
}