/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */

/* ── Base ────────────────────────────────────────────────── */
body { background:#0a0d14; color:#e0e4f0; }
a { color:#4a9eff; }
a:hover { color:#7bbfff; }

/* ── Navbar ──────────────────────────────────────────────── */
.navbar { background:#0d1020!important; border-bottom:1px solid #1e2540; }
.navbar-brand { color:#c9a227!important; font-weight:700; letter-spacing:.5px; }
.nav-link { color:#8090b0!important; }
.nav-link:hover,.nav-link.active { color:#4a9eff!important; }

/* ── Cards ───────────────────────────────────────────────── */
.card { background:#111520; border:1px solid #1e2540; border-radius:12px; }
.card-header { background:#161c30; border-bottom:1px solid #1e2540; font-weight:600; color:#e8eeff; }

/* ── Tables ──────────────────────────────────────────────── */
.table { color:#dde4f8; }
.table thead th { background:#161c30; color:#6db3ff; border-color:#1e2540; }
.table td,.table th { border-color:#1e2540; vertical-align:middle; }
.table td { color:#dde4f8; }
.table > :not(caption) > * > * { background-color: transparent !important; }
.table tbody tr { background:#111520 !important; }
.table tbody tr:nth-child(odd) { background:#141826 !important; }
.table tbody tr:hover { background:#1a2235 !important; }
.table tfoot tr { background:#161c30 !important; }
.table .text-muted { color:#c0cadf !important; }

/* ── Forms ───────────────────────────────────────────────── */
.form-label { color:#b0bedc !important; }
.form-control,.form-select { background:#161c30; color:#e0e4f0; border-color:#2a3450; }
.form-control:focus { background:#161c30; color:#e0e4f0; border-color:#4a9eff; box-shadow:0 0 0 .2rem rgba(74,158,255,.2); }
input[type=number] { -moz-appearance:textfield; }
input[type=number]::-webkit-inner-spin-button { -webkit-appearance:none; }
.amount-input { width:130px!important; text-align:right; }
.qty-input { width:55px!important; text-align:center; padding:2px 4px!important; }

/* ── Buttons ─────────────────────────────────────────────── */
.btn-primary { background:#2272c3; border-color:#2272c3; }
.btn-primary:hover { background:#1a5fa8; border-color:#1a5fa8; }

/* ── Stat cards ──────────────────────────────────────────── */
.stat-card { background:linear-gradient(135deg,#111520,#161c30); border:1px solid #1e2540; border-radius:12px; padding:20px; }
.stat-card .stat-label { color:#b0bedc; font-size:.85rem; font-weight:500; margin-bottom:6px; }
.stat-label { color:#b0bedc; font-size:.85rem; font-weight:500; margin-bottom:6px; }
.stat-number { font-size:1.8rem; font-weight:700; color:#c9a227; }

/* ── Misc ────────────────────────────────────────────────── */
.text-muted { color:#b0bedc !important; }
.badge-amount { background:#1a2235; color:#7ee8a4; font-size:.85rem; padding:3px 8px; border-radius:6px; font-family:monospace; }
.badge-char { display:inline-flex; align-items:center; gap:4px; background:#141826; border:1px solid #1e2540; border-radius:6px; padding:2px 7px; font-size:.78rem; white-space:nowrap; }
.badge-char .char-name { color:#6db3ff; }
.badge-char .char-amount { color:#7ee8a4; font-family:monospace; font-weight:600; }
.last-value-badge { background:#141826; border:1px solid #2a3450; border-radius:5px; padding:1px 6px; font-size:.72rem; font-family:monospace; color:#6db3ff; cursor:pointer; user-select:none; transition:background .2s,border-color .2s; }
.last-value-badge:hover { background:#1a2235; border-color:#4a9eff; color:#9dcfff; }
.alert-success { background:#0f2a1a; border-color:#1a4a2d; color:#68d391; }

/* ── Stone tabs ──────────────────────────────────────────── */
.stone-tab-btn { background:transparent!important; border-color:transparent!important; font-size:.85rem; color:var(--tab-color)!important; }
.stone-tab-btn:hover:not(.active) { background:#161c30!important; border-color:transparent!important; }
.stone-tab-btn.active { background:#111520!important; border-color:#1e2540!important; border-bottom-color:#111520!important; }
