/* theme-base.css --------------------------------------------------------- */ /* 1) Core tokens (names stay stable; theme files only change values) */ :root { --bg: #0b0f14; --bg-elev: #121821; --text: #e6edf3; --muted: #9fb0c2; --card: #0f141b; --border: #223040; --accent: #2f6cab; /* links, primary buttons */ --accent-contrast: #ffffff; --accent-soft: rgba(47,108,171,.14); --success: #38b87c; --warning: #e6ac3b; --danger: #e05d6f; --shadow: 0 8px 24px rgba(0,0,0,.25); --radius: 14px; } /* 2) Global page surfaces */ html, body { background: var(--bg); color: var(--text); } body.themed-bg { background: var(--bg); } /* keeps your existing class working */ /* 3) Cards / panels (the boxes your Search History & “Illustration of the Day” use) */ .result-wrap .result-toolbar, .card, .panel, .box, .well, .modal-content { background: var(--card); color: var(--text); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); } /* 4) Inputs */ input[type="text"], input[type="search"], input[type="number"], select, textarea, .form-control { background: var(--bg-elev); color: var(--text); border: 1px solid var(--border); border-radius: 10px; } input::placeholder, textarea::placeholder { color: var(--muted); } /* 5) Pills/filters (your Subject / Scripture / Source chips) */ .pill, .subject-pill, .badge, .tag { background: var(--accent-soft); color: var(--text); border: 1px solid var(--border); border-radius: 999px; } .pill.is-active, .subject-pill.is-active { background: var(--accent); color: var(--accent-contrast); } /* 6) Buttons */ .btn, .button { background: var(--bg-elev); color: var(--text); border: 1px solid var(--border); border-radius: 10px; } .btn-primary, .button.primary, .btn.btn-primary { background: var(--accent); color: var(--accent-contrast); border-color: transparent; } .btn-secondary { background: var(--bg-elev); color: var(--text); } .btn:hover { filter: brightness(1.06); } /* 7) Links & focus */ a { color: var(--accent); } a:hover { text-decoration: underline; } :focus { outline: 2px solid var(--accent); outline-offset: 2px; } /* 8) Tables (if any) */ table { border-color: var(--border); } th, td { border-color: var(--border); } thead th { background: var(--bg-elev); } /* 9) Alerts / statuses */ .alert-success { background: color-mix(in srgb, var(--success) 16%, transparent); color: var(--text); } .alert-warning { background: color-mix(in srgb, var(--warning) 16%, transparent); color: var(--text); } .alert-danger { background: color-mix(in srgb, var(--danger) 16%, transparent); color: var(--text); } /* 10) Small utilities */ .text-muted { color: var(--muted); } .border { border: 1px solid var(--border); } .card-round { border-radius: var(--radius); }