/* GAMANA.LK Theme + Language Controls */
html{color-scheme:light;}
html[data-theme="dark"]{color-scheme:dark;}
html[data-theme="dark"] body,
html[data-theme="dark"] .body{
  background:#07111f !important;
  color:#e5edf8 !important;
}
html[data-theme="dark"]{
  --bg:#07111f !important;
  --card:#0f1c2f !important;
  --panel:#0f1c2f !important;
  --text:#e5edf8 !important;
  --navy:#e5edf8 !important;
  --navy2:#d9e8ff !important;
  --muted:#aab8cf !important;
  --border:#25334a !important;
  --line:#25334a !important;
  --green:#22c55e !important;
  --blue:#60a5fa !important;
  --shadow:0 20px 55px rgba(0,0,0,.35) !important;
  --soft-shadow:0 12px 32px rgba(0,0,0,.25) !important;
}
html[data-theme="dark"] .navbar,
html[data-theme="dark"] .topbar,
html[data-theme="dark"] .search-panel,
html[data-theme="dark"] .card,
html[data-theme="dark"] .about-box,
html[data-theme="dark"] .contact-box,
html[data-theme="dark"] .partners-wrap,
html[data-theme="dark"] .partner-card,
html[data-theme="dark"] .login-box,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .box,
html[data-theme="dark"] .table-card,
html[data-theme="dark"] .dashboard-card,
html[data-theme="dark"] .sidebar-card,
html[data-theme="dark"] .user-card,
html[data-theme="dark"] .metric-card,
html[data-theme="dark"] .admin-card,
html[data-theme="dark"] .stat-card,
html[data-theme="dark"] .route-card,
html[data-theme="dark"] .trip-card,
html[data-theme="dark"] .ticket-card{
  background:#0f1c2f !important;
  border-color:#25334a !important;
  color:#e5edf8 !important;
  box-shadow:0 20px 55px rgba(0,0,0,.28) !important;
}
html[data-theme="dark"] .hero{
  background:
    linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(3,12,28,.72) 44%,rgba(3,12,28,.42) 100%),
    url('gamana-hero-bus-road.jpg') center center/cover no-repeat !important;
}
html[data-theme="dark"] .hero::after{
  background:linear-gradient(180deg,transparent,#07111f) !important;
}
html[data-theme="dark"] .hero .trust-pill,
html[data-theme="dark"] .hero .hero-point{
  background:rgba(17,31,52,.62) !important;
  border-color:rgba(255,255,255,.16) !important;
  color:#e5edf8 !important;
}
html[data-theme="dark"] .input-box,
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea{
  background:#111f34 !important;
  color:#e5edf8 !important;
  border-color:#2b3a52 !important;
}
html[data-theme="dark"] option{background:#111f34;color:#e5edf8;}
html[data-theme="dark"] p,
html[data-theme="dark"] small,
html[data-theme="dark"] .muted,
html[data-theme="dark"] .hero-text,
html[data-theme="dark"] .section-head p,
html[data-theme="dark"] .card p,
html[data-theme="dark"] .contact-item p,
html[data-theme="dark"] .footer-brand p,
html[data-theme="dark"] .footer-col p,
html[data-theme="dark"] .footer-col a{color:#aab8cf !important;}
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] label,
html[data-theme="dark"] .nav-link,
html[data-theme="dark"] .login-btn{color:#e5edf8 !important;}
html[data-theme="dark"] .login-btn:not(.primary){background:#111f34 !important;border-color:#2b3a52 !important;}
html[data-theme="dark"] table{color:#e5edf8 !important;}
html[data-theme="dark"] th{background:#111f34 !important;color:#d9e8ff !important;}
html[data-theme="dark"] td{border-color:#25334a !important;}
html[data-theme="dark"] tr{background:#0f1c2f !important;}
html[data-theme="dark"] .contact-item,
html[data-theme="dark"] .hero-point,
html[data-theme="dark"] .trust-pill{background:#111f34 !important;border-color:#2b3a52 !important;color:#e5edf8 !important;}

.gamana-ui-switcher{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9999;
  display:flex;
  align-items:center;
  gap:10px;
  background:rgba(255,255,255,.90);
  border:1px solid rgba(226,232,240,.95);
  border-radius:18px;
  padding:10px;
  box-shadow:0 18px 45px rgba(15,23,42,.16);
  backdrop-filter:blur(14px);
  font-family:Arial,Helvetica,sans-serif;
}
html[data-theme="dark"] .gamana-ui-switcher{background:rgba(15,28,47,.92);border-color:#2b3a52;box-shadow:0 18px 45px rgba(0,0,0,.38);}
.gamana-theme-toggle,.gamana-lang-select{
  height:42px;
  border:1px solid #dbe3ef;
  border-radius:13px;
  background:#fff;
  color:#0f172a;
  font-weight:900;
  font-size:13px;
  cursor:pointer;
  outline:none;
}
.gamana-theme-toggle{padding:0 14px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;}
.gamana-lang-select{padding:0 10px;min-width:116px;}
html[data-theme="dark"] .gamana-theme-toggle,
html[data-theme="dark"] .gamana-lang-select{background:#111f34;color:#e5edf8;border-color:#2b3a52;}
.gamana-theme-toggle:hover{transform:translateY(-1px);}
@media(max-width:760px){
  .gamana-ui-switcher{left:12px;right:12px;bottom:12px;justify-content:space-between;border-radius:16px;}
  .gamana-theme-toggle,.gamana-lang-select{height:40px;font-size:12px;}
  body{padding-bottom:72px;}
}
@media print{.gamana-ui-switcher{display:none!important}}

.gamana-chatbot{position:fixed;right:24px;bottom:96px;z-index:99998;font-family:Arial,Helvetica,sans-serif}.gamana-chat-toggle{width:62px;height:62px;border:0;border-radius:50%;background:#0b8a43;color:#fff;font-size:26px;box-shadow:0 16px 36px rgba(11,138,67,.35);cursor:pointer}.gamana-chat-panel{position:absolute;right:0;bottom:76px;width:340px;max-width:calc(100vw - 32px);background:#fff;border:1px solid #dfe7f2;border-radius:24px;box-shadow:0 24px 70px rgba(6,34,74,.22);overflow:hidden;transform:translateY(12px);opacity:0;pointer-events:none;transition:.18s ease;color:#06224a}.gamana-chatbot.open .gamana-chat-panel{transform:translateY(0);opacity:1;pointer-events:auto}.gamana-chat-head{display:flex;justify-content:space-between;align-items:center;gap:12px;background:linear-gradient(135deg,#062b5f,#0b8a43);color:#fff;padding:16px 18px}.gamana-chat-head b{display:block;font-size:16px}.gamana-chat-head span{display:block;font-size:12px;opacity:.85;margin-top:3px}.gamana-chat-close{border:0;background:rgba(255,255,255,.18);color:#fff;border-radius:10px;width:32px;height:32px;font-size:22px;cursor:pointer}.gamana-chat-body{padding:16px;display:grid;gap:10px;background:#f8fbff}.gamana-bot-msg,.gamana-chat-answer{background:#fff;border:1px solid #e3ebf7;border-radius:16px;padding:12px 13px;font-weight:700;line-height:1.5;color:#42526b}.gamana-chat-answer{background:#eaf8f1;color:#0b5d38;border-color:#bfe8d0}.gamana-quick{border:1px solid #dbe6f4;background:#fff;color:#06224a;border-radius:14px;padding:12px 13px;font-weight:900;text-align:left;cursor:pointer}.gamana-quick:hover{border-color:#0b8a43;background:#f0fbf5}.gamana-chat-foot{padding:12px 16px;background:#fff;color:#64748b;font-size:12px;font-weight:700;border-top:1px solid #e3ebf7}@media(max-width:600px){.gamana-chatbot{right:16px;bottom:86px}.gamana-chat-toggle{width:56px;height:56px}.gamana-chat-panel{width:318px}}
html[data-theme="dark"] .gamana-chat-panel{background:#0f1c2f;border-color:#263955;color:#fff}html[data-theme="dark"] .gamana-chat-body{background:#0b1525}html[data-theme="dark"] .gamana-bot-msg,html[data-theme="dark"] .gamana-quick{background:#12233a;border-color:#263955;color:#fff}html[data-theme="dark"] .gamana-chat-foot{background:#0f1c2f;border-color:#263955;color:#cbd5e1}
/* Fix step numbers not visible in dark mode */
[data-theme="dark"] .step-number,
[data-theme="dark"] .process-number,
[data-theme="dark"] .feature-number,
[data-theme="dark"] .step-card .number,
[data-theme="dark"] .how-step .number {
    background: #ffffff !important;
    color: #0b1628 !important;
    border: 2px solid rgba(255,255,255,0.9) !important;
    box-shadow: 0 0 18px rgba(0, 210, 255, 0.35) !important;
}

/* If your site uses body.dark instead of data-theme */
body.dark .step-number,
body.dark .process-number,
body.dark .feature-number,
body.dark .step-card .number,
body.dark .how-step .number {
    background: #ffffff !important;
    color: #0b1628 !important;
    border: 2px solid rgba(255,255,255,0.9) !important;
    box-shadow: 0 0 18px rgba(0, 210, 255, 0.35) !important;
}

/* =========================================================
   EGAMANA DARK MODE STEP NUMBER FIX - V3
   Fixes 01 / 02 / 03 / 04 circles in How to Book section
   Actual class used in index.php is: .step-no
   ========================================================= */
.step-no,
.card .step-no,
.cards4 .step-no,
#about .step-no,
section .step-no {
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  min-height: 52px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #0b8a43, #22c55e) !important;
  color: #ffffff !important;
  border: 2px solid rgba(255,255,255,.22) !important;
  box-shadow: 0 16px 34px rgba(11,138,67,.25) !important;
  font-weight: 950 !important;
  font-size: 17px !important;
  line-height: 1 !important;
  letter-spacing: .2px !important;
  opacity: 1 !important;
  text-shadow: none !important;
  -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .step-no,
html[data-theme="dark"] .card .step-no,
html[data-theme="dark"] .cards4 .step-no,
html[data-theme="dark"] #about .step-no,
html[data-theme="dark"] section .step-no,
body.dark .step-no,
body.dark .card .step-no,
body.dark .cards4 .step-no,
body.dark #about .step-no,
body.dark section .step-no {
  background: linear-gradient(135deg, #18e17c 0%, #09b95d 52%, #0ea5e9 100%) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 2px solid rgba(255,255,255,.32) !important;
  box-shadow:
    0 0 0 7px rgba(24,225,124,.10),
    0 0 30px rgba(14,165,233,.35),
    0 18px 38px rgba(0,0,0,.28) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html[data-theme="dark"] .card h3,
body.dark .card h3 {
  color: #ffffff !important;
}

html[data-theme="dark"] .card p,
body.dark .card p {
  color: #cfe0f5 !important;
}
