/* Color palette options — applied via body class */
/* Default (no class): Warm Cream from editorial theme, defined in style.css */

/* ── 1. Warm Cream (default) ── */
/* No class needed: baseline from style.css */

/* ── 2. Cool Gray ── */
body.palette-cool {
    --bg: #f4f5f7;
    --surface: #ffffff;
    --text: #1e1e2e;
    --text-secondary: #6b7280;
    --border: #d1d5db;
    --primary: #4f46e5;
    --primary-hover: #4338ca;
    --danger: #dc2626;
    --danger-hover: #b91c1c;
    --success: #059669;
}
body.palette-cool header { border-bottom-color: var(--border); }
body.palette-cool input:focus, body.palette-cool textarea:focus, body.palette-cool select:focus {
    box-shadow: 0 0 0 2px rgba(79,70,229,0.15);
}
body.palette-cool .badge-link { background: #eef2ff; color: var(--primary); }

/* ── 3. Ocean ── */
body.palette-ocean {
    --bg: #f0f4f8;
    --surface: #f8fafc;
    --text: #0f172a;
    --text-secondary: #64748b;
    --border: #cbd5e1;
    --primary: #0369a1;
    --primary-hover: #075985;
    --danger: #be123c;
    --danger-hover: #9f1239;
    --success: #047857;
}
body.palette-ocean header { border-bottom-color: var(--border); }
body.palette-ocean input:focus, body.palette-ocean textarea:focus, body.palette-ocean select:focus {
    box-shadow: 0 0 0 2px rgba(3,105,161,0.15);
}
body.palette-ocean .badge-link { background: #e0f2fe; color: var(--primary); }
body.palette-ocean .badge-request { background: #fef9c3; color: #92400e; }

/* ── 4. Forest ── */
body.palette-forest {
    --bg: #f2f5f0;
    --surface: #fafdf8;
    --text: #1a2e1a;
    --text-secondary: #5c7a5c;
    --border: #c8d8c0;
    --primary: #2d6a4f;
    --primary-hover: #1b4332;
    --danger: #9e3a3a;
    --danger-hover: #833030;
    --success: #2d6a4f;
}
body.palette-forest header { border-bottom-color: var(--border); }
body.palette-forest input:focus, body.palette-forest textarea:focus, body.palette-forest select:focus {
    box-shadow: 0 0 0 2px rgba(45,106,79,0.15);
}
body.palette-forest .badge-link { background: #ecfdf5; color: var(--primary); }
body.palette-forest .badge-private { background: #fef2f2; color: var(--danger); }
body.palette-forest .badge-request { background: #fefce8; color: #92400e; }

/* ── 5. Dusk ── */
body.palette-dusk {
    --bg: #f5f3f7;
    --surface: #fdfcfe;
    --text: #2e1f3d;
    --text-secondary: #7c6f8a;
    --border: #d8d0e0;
    --primary: #7c3aed;
    --primary-hover: #6d28d9;
    --danger: #be123c;
    --danger-hover: #9f1239;
    --success: #059669;
}
body.palette-dusk header { border-bottom-color: var(--border); }
body.palette-dusk input:focus, body.palette-dusk textarea:focus, body.palette-dusk select:focus {
    box-shadow: 0 0 0 2px rgba(124,58,237,0.15);
}
body.palette-dusk .badge-link { background: #f5f3ff; color: var(--primary); }
body.palette-dusk .badge-request { background: #fefce8; color: #92400e; }

/* ── 6. Ink (dark mode) ── */
body.palette-ink {
    --bg: #111111;
    --surface: #1a1a1a;
    --text: #e8e8e8;
    --text-secondary: #888888;
    --border: #333333;
    --primary: #e8a87c;
    --primary-hover: #d4926a;
    --danger: #f87171;
    --danger-hover: #ef4444;
    --success: #4ade80;
}
body.palette-ink header {
    border-bottom-color: var(--border);
    background: var(--surface);
}
body.palette-ink input:focus, body.palette-ink textarea:focus, body.palette-ink select:focus {
    box-shadow: 0 0 0 2px rgba(232,168,124,0.2);
}
body.palette-ink input[type="text"],
body.palette-ink input[type="email"],
body.palette-ink textarea,
body.palette-ink select {
    background: var(--surface);
    color: var(--text);
    border-color: var(--border);
}
body.palette-ink .badge-private { background: #2a1a1a; color: var(--danger); }
body.palette-ink .badge-request { background: #2a2510; color: #fbbf24; }
body.palette-ink .badge-link { background: #1a1a2e; color: var(--primary); }
body.palette-ink .alert-success { background: #0a2a0a; color: var(--success); border-color: #166534; }
body.palette-ink .alert-error { background: #2a0a0a; color: var(--danger); border-color: #991b1b; }
body.palette-ink .alert-info { background: #1a1a2e; color: var(--primary); border-color: #3730a3; }

/* ── 7. Sand ── */
body.palette-sand {
    --bg: #f5f0e8;
    --surface: #faf7f0;
    --text: #3d3527;
    --text-secondary: #6d6253;
    --border: #ddd5c4;
    --primary: #c07830;
    --primary-hover: #a86520;
    --danger: #b84233;
    --danger-hover: #9e3628;
    --success: #6a8a40;
}
body.palette-sand header { border-bottom-color: var(--border); }
body.palette-sand input:focus, body.palette-sand textarea:focus, body.palette-sand select:focus {
    box-shadow: 0 0 0 2px rgba(192,120,48,0.15);
}
body.palette-sand .badge-link { background: #fef3c7; color: var(--primary); }
body.palette-sand .badge-request { background: #fefce8; color: #92400e; }
body.palette-sand .alert-success { background: #f2f0e2; color: var(--success); border-color: #ccc8a8; }
body.palette-sand .alert-error { background: #f8ede8; color: var(--danger); border-color: #ddc0b4; }
body.palette-sand .alert-info { background: #f2efe6; color: var(--primary); border-color: #ddd0b4; }
