:root {
    --idym-bg: #081120;
    --idym-surface: #0F172A;
    --idym-surface-2: #111827;
    --idym-primary: #2563EB;
    --idym-info: #38BDF8;
    --idym-text: #E5E7EB;
    --idym-white: #FFFFFF;
    --idym-muted: #94A3B8;
    --idym-soft: #9CA3AF;
    --idym-border: rgba(56, 189, 248, 0.12);
    --idym-border-strong: rgba(56, 189, 248, 0.22);
    --idym-danger: #EF4444;
    --idym-warning: #F59E0B;
    --idym-success: #22C55E;
    --idym-radius: 18px;
    --idym-radius-sm: 12px;
    --idym-shadow: 0 20px 45px rgba(0, 0, 0, 0.18);
    --bg-primary: var(--idym-bg);
    --bg-secondary: var(--idym-surface);
    --bg-tertiary: var(--idym-surface-2);
    --bg-surface: var(--idym-surface);
    --bg-panel: var(--idym-surface-2);
    --accent-primary: var(--idym-primary);
    --accent-secondary: var(--idym-info);
    --text-primary: var(--idym-text);
    --text-secondary: var(--idym-soft);
    --text-muted: #6B7280;
    --border: rgba(148, 163, 184, 0.12);
    --border-blue: rgba(56, 189, 248, 0.24);
    --border-color: rgba(37, 99, 235, 0.1);
    --shadow: 0 28px 80px rgba(0, 0, 0, 0.24);
    --error: #DC2626;
    --warning: var(--idym-warning);
    --success: #059669;
    --info: #0891B2;
}

* {
    box-sizing: border-box;
}

body.idym-app,
body {
    background: var(--idym-bg);
    color: var(--idym-text);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

a {
    color: var(--idym-info);
}

a:hover {
    color: var(--idym-white);
}

.page-header,
.idym-page-header {
    background: transparent;
    border: none;
    padding: 0;
    margin: 1rem 0 1.25rem;
}

.page-header h1,
.idym-page-header h1 {
    font-size: 1.9rem;
    margin: 0;
    letter-spacing: -0.02em;
    color: var(--idym-white);
    font-weight: 700;
}

.page-lead,
.idym-page-lead {
    color: var(--idym-muted);
    max-width: 840px;
    font-size: 0.98rem;
    line-height: 1.65;
    margin-top: 0.65rem;
}

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