/* ===== Clean Light Theme — Zerodha-style ===== */
:root{
  --bg:#f1f3f6;--bg2:#e9edf2;--card:#ffffff;--card2:#f8fafc;--border:#e4e8ee;
  --text:#212b36;--muted:#64748b;--accent:#387ed1;--accent2:#5a9ce6;
  --green:#16a34a;--red:#dc2626;--blue:#387ed1;--radius:10px;
}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,-apple-system,sans-serif;min-height:100vh;font-size:14px}

/* Navbar */
.navbar{background:#ffffff;border-bottom:1px solid var(--border);padding:8px 0;box-shadow:0 1px 4px rgba(33,43,54,0.06)}
.navbar-brand{font-weight:800;letter-spacing:-0.5px;font-size:1.15rem;color:var(--text)!important}
.navbar-brand span{color:var(--accent)}
.navbar-nav .nav-link{color:var(--muted);font-weight:500;font-size:0.88rem;padding:6px 12px!important;border-radius:8px}
.navbar-nav .nav-link:hover{color:var(--accent);background:rgba(56,126,209,0.08)}
.navbar-toggler{border-color:var(--border)}
.navbar-toggler-icon{filter:invert(0.4)}

.container-fluid{padding-left:12px!important;padding-right:12px!important}
.py-3{padding-top:14px!important;padding-bottom:14px!important}
.mb-3{margin-bottom:14px!important}
.g-2{--bs-gutter-x:0.5rem!important;--bs-gutter-y:0.5rem!important}
.g-3{--bs-gutter-x:0.75rem!important;--bs-gutter-y:0.75rem!important}

/* Cards */
.card-pro{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 1px 3px rgba(33,43,54,0.05);overflow:hidden}
.card-pro .card-header{background:var(--card2);border-bottom:1px solid var(--border);padding:9px 12px;font-weight:600;font-size:0.78rem;letter-spacing:0.2px;display:flex;align-items:center;gap:6px;color:var(--text)}

/* Stat cards */
.stat-card{padding:9px 11px;border-radius:8px;background:var(--card);border:1px solid var(--border);position:relative;overflow:hidden;min-height:64px;box-shadow:0 1px 2px rgba(33,43,54,0.04)}
.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent2))}
.stat-card .label{font-size:0.60rem;text-transform:uppercase;letter-spacing:0.6px;color:var(--muted);font-weight:700;line-height:1}
.stat-card .value{font-size:1.0rem;font-weight:800;margin:2px 0 0;letter-spacing:-0.3px;line-height:1.1;color:var(--text)}
.stat-card .sub{font-size:0.66rem;color:var(--muted);line-height:1}

.badge-pro{padding:4px 8px;border-radius:999px;font-size:0.68rem;font-weight:700;letter-spacing:0.4px}

/* Buttons */
.btn-accent{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-weight:700;border:none;border-radius:8px;padding:7px 14px;font-size:0.85rem}
.btn-accent:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(56,126,209,0.35);color:#fff;background:linear-gradient(135deg,#2f6cb8,var(--accent))}
.btn-accent:focus{color:#fff}
.btn-ghost{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:7px 14px;font-size:0.85rem}
.btn-ghost:hover{background:var(--bg2);border-color:#cfd6df;color:var(--text)}
.btn-danger{border-radius:8px;padding:7px 14px;font-size:0.85rem}

/* Tables */
.table-pro{color:var(--text);font-size:0.85rem}
.table-pro thead th{color:var(--muted);font-size:0.68rem;text-transform:uppercase;letter-spacing:0.6px;border-bottom:1px solid var(--border);padding:8px 10px;background:var(--card2);font-weight:700}
.table-pro tbody td{border-bottom:1px solid #eef1f5;padding:8px 10px;vertical-align:middle;font-size:0.84rem;color:var(--text)}
.table-pro tbody tr:hover{background:rgba(56,126,209,0.04)}

.dot{width:7px;height:7px;border-radius:50%;display:inline-block}
.dot-live{background:var(--green);box-shadow:0 0 5px rgba(22,163,74,0.6)}

.breadcrumb{color:var(--muted);font-size:0.85rem}
.chart-wrap{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:10px}
canvas{max-height:240px!important}
.signal-bull{color:var(--green);font-weight:700}
.signal-bear{color:var(--red);font-weight:700}
h2{font-size:1.4rem!important;color:var(--text)}
p.text-muted{font-size:0.82rem!important}

/* Text colors */
body,.card-pro,.card-pro .card-body,.card-pro p,.card-pro li,.card-pro td,.card-pro th,.card-pro h1,.card-pro h2,.card-pro h3,.card-pro h4{color:var(--text)}
.text-dark,.text-black{color:var(--text)!important}
.text-muted{color:var(--muted)!important}
code{color:#1d4ed8!important;background:rgba(56,126,209,0.09)!important;padding:2px 6px;border-radius:6px;font-size:0.8rem}
.card-pro code{color:#1d4ed8!important;background:rgba(56,126,209,0.09)!important}
.card-pro p,.card-pro li,.card-pro td,.card-pro th,.card-pro b,.card-pro strong{color:var(--text)!important}
.card-pro .text-muted{color:var(--muted)!important}
.card-pro .text-success{color:var(--green)!important}
.card-pro .text-danger{color:var(--red)!important}
.card-pro .text-warning{color:#b45309!important}
.card-pro a{color:var(--blue)!important}
.card-pro .progress{background:var(--bg2)!important}

.btn-accent,.btn-accent *{color:#fff!important}
.badge.bg-warning,.badge.bg-warning *{color:#000!important}

/* Forms */
.form-control,.form-select,textarea.form-control{
  background-color:#ffffff!important;
  color:var(--text)!important;
  border:1px solid #d5dbe3!important;
  font-size:0.88rem!important;
}
.form-control::placeholder,.form-select::placeholder{color:#94a3b8!important;opacity:1!important}
.form-control:focus,.form-select:focus{
  background-color:#ffffff!important;
  color:var(--text)!important;
  border-color:var(--accent)!important;
  box-shadow:0 0 0 3px rgba(56,126,209,0.15)!important;
  outline:none!important;
}
.form-label{color:var(--text)!important;font-weight:600}
.form-control:-webkit-autofill,.form-control:-webkit-autofill:hover,.form-control:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--text)!important;
  -webkit-box-shadow:0 0 0px 1000px #ffffff inset!important;
  transition:background-color 5000s ease-in-out 0s!important;
}
.alert{font-size:0.85rem;border-radius:8px}
a{color:var(--blue)}
a:hover{color:#2f6cb8}
