:root {
    color-scheme: light;
    --bg: #eef2f7;
    --surface: #ffffff;
    --surface-alt: #e6ecf4;
    --surface-raised: #f8fafc;
    --text: #18253a;
    --muted: #5a6a7e;
    --border: #cdd5e0;
    --border-strong: #b8c3d4;
    --primary: #1260a0;
    --primary-strong: #0d4a7a;
    --primary-tint: rgba(18, 96, 160, 0.08);
    --danger-bg: #fef2f2;
    --danger-text: #991b1b;
    --shadow-sm: 0 1px 3px rgba(16, 30, 48, 0.08), 0 1px 2px rgba(16, 30, 48, 0.05);
    --shadow: 0 4px 16px rgba(16, 30, 48, 0.10), 0 2px 6px rgba(16, 30, 48, 0.07);
    --shadow-lg: 0 20px 52px rgba(16, 30, 48, 0.14), 0 6px 16px rgba(16, 30, 48, 0.08);
    --transition: 0.14s ease;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

* {
    box-sizing: border-box;
}

/* Iconos SVG inline (estilo Lucide). Tamano por font-size/width del contenedor; color = currentColor. */
.lira-icon {
    width: 1em;
    height: 1em;
    flex: 0 0 auto;
    display: inline-block;
    vertical-align: middle;
    stroke: currentColor;
    fill: none;
    overflow: visible;
}

html,
body {
    min-height: 100%;
}

body {
    margin: 0;
    background: var(--bg);
    color: var(--text);
}

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

a:hover {
    text-decoration: underline;
}

button,
input {
    font: inherit;
}
