/*
 * GOVISTA V61 — Blue & White Global Theme
 * Brand chrome is blue/white. Trading semantics (bullish, bearish, warnings,
 * errors and profit/loss) remain green/red/amber for chart readability.
 */
:root {
  --gv-blue-950:#052451;
  --gv-blue-900:#07366f;
  --gv-blue-850:#08438d;
  --gv-blue-800:#0752b7;
  --gv-blue-700:#0b67dc;
  --gv-blue-650:#1475eb;
  --gv-blue-600:#1d7df2;
  --gv-blue-500:#3a91ff;
  --gv-blue-400:#66aaff;
  --gv-blue-300:#9ac7ff;
  --gv-blue-200:#c8e1ff;
  --gv-blue-100:#e7f2ff;
  --gv-blue-50:#f4f9ff;
  --gv-white:#fff;
  --gv-ink:#10233f;
  --gv-muted:#60738f;
  --gv-line:#d5e5f8;
  --gv-soft:#edf6ff;
  --gv-shadow:0 16px 42px rgba(17,91,183,.12);
  --blue:#0b67dc;
  --blue2:#3a91ff;
  --violet:#1475eb;
  --accent:#0b67dc;
  --admin-blue:#0b67dc;
  --admin-dark:#07366f;
  --admin-soft:#edf6ff;
  --admin-border:#d5e5f8;
  --admin-text:#10233f;
  --admin-muted:#60738f;
  --ct-red:#0b67dc;
  --ct-deep:#07366f;
  --ct-gold:#66aaff;
  --ct-bg:#f4f9ff;
  --ct-line:#d5e5f8;
  --ct-text:#10233f;
  --ct-muted:#60738f;
  --ac-red:#0b67dc;
  --ac-red2:#3a91ff;
  --ac-ink:#10233f;
  --ac-muted:#60738f;
  --ac-line:#d5e5f8;
  --ac-soft:#edf6ff;
  --ac-blue:#0b67dc;
  --ac-gold:#66aaff;
  color-scheme:light;
}

html,body {
  background-color:var(--gv-blue-50);
  color:var(--gv-ink);
}
body {
  background-image:
    radial-gradient(circle at 8% 0,rgba(58,145,255,.13),transparent 28%),
    radial-gradient(circle at 92% 8%,rgba(11,103,220,.08),transparent 25%);
}
a { color:inherit; }
a:hover { color:var(--gv-blue-700); }
::selection { background:var(--gv-blue-200);color:var(--gv-blue-950); }
:focus-visible { outline:3px solid rgba(58,145,255,.34)!important;outline-offset:2px; }

/* Govista brand artwork only — broker/product logos retain their own colors. */
img[src*="govista-logo"],
img[src*="vistamaju-logo"],
.govista-brand-logo,
.intro-logo-image,
.center-logo-image {
  filter:grayscale(1) brightness(.82) sepia(1) hue-rotate(170deg) saturate(8) contrast(1.08);
}

/* Common surfaces and typography */
.site-header,.hub-topbar,.hub-sidebar,.page-card,.card,.v20-card,.builder-panel,
.market-card,.academy-card,.admin-card,.panel,.modal-card,.popover,.top-dropdown,
.auth-shell,.profile-card,.notification-card,.product-card,.broker-card {
  border-color:var(--gv-line)!important;
  box-shadow:var(--gv-shadow)!important;
}
.card,.v20-card,.builder-panel,.page-card,.auth-shell,.top-dropdown,.notification-card,
.product-card,.broker-card,.hub-sidebar,.admin-card,.panel,.modal-card,.popover {
  background:rgba(255,255,255,.97)!important;
}
.muted,.page-card-head p,.v20-card p,.legal-content,.hub-page-main p,
.dropdown-item small,.dropdown-item em,.sidebar-account-card p {
  color:var(--gv-muted)!important;
}
.eyebrow,.v20-eyebrow,.section-kicker,.page-kicker,.admin-eyebrow {
  color:var(--gv-blue-700)!important;
}

/* Common buttons, chips, links and active states */
.btn.primary,.v20-btn,.btn-primary-lite,.solid-btn,.backtest-main-btn,
button.primary,.primary-action,.cta-primary,.admin-primary,.checkout-button,
.hub-primary-button,.academy-primary-button {
  background:linear-gradient(135deg,var(--gv-blue-700),var(--gv-blue-500))!important;
  border-color:var(--gv-blue-700)!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(11,103,220,.24)!important;
}
.btn.secondary,.btn-soft,.btn-outline-red,.small-btn,.ghost-btn,.v20-btn.outline,
button.secondary,.secondary-action {
  background:#fff!important;
  border-color:var(--gv-blue-200)!important;
  color:var(--gv-blue-800)!important;
}
.btn.secondary:hover,.btn-soft:hover,.btn-outline-red:hover,.small-btn:hover,
.ghost-btn:hover,.v20-btn.outline:hover {
  background:var(--gv-blue-100)!important;
  border-color:var(--gv-blue-400)!important;
}
.chip,.v20-chip,.notice-pill,.price-row .buy-link,.badge,.tag,.pill {
  background:var(--gv-blue-100)!important;
  border-color:var(--gv-blue-200)!important;
  color:var(--gv-blue-850)!important;
}
.v20-chip.red,.v20-chip.gold,.gold,.badge-gold {
  background:var(--gv-blue-100)!important;
  color:var(--gv-blue-850)!important;
}
[style*="#b00012"],[style*="#b10012"],[style*="#c20b1b"],[style*="#d10b1b"] {
  color:var(--gv-blue-700)!important;
}

/* Public site */
.site-header {
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(170,205,247,.72)!important;
}
.brand-mark,.tool-icon {
  background:linear-gradient(145deg,var(--gv-blue-800),var(--gv-blue-500))!important;
  color:#fff!important;
}
.site-nav a:hover,.site-nav a.active,.v20-card footer a,.footer-grid a:hover {
  color:var(--gv-blue-700)!important;
}
.dash-hero,.product-image,.side-nav .profile-mini {
  background:linear-gradient(135deg,#fff,var(--gv-blue-100))!important;
  border-color:var(--gv-blue-200)!important;
}
.side-nav a:hover,.side-nav a.active {
  background:var(--gv-blue-100)!important;
  color:var(--gv-blue-800)!important;
}
.auth-visual {
  background:linear-gradient(145deg,var(--gv-blue-950),var(--gv-blue-700) 58%,var(--gv-blue-500))!important;
}
.auth-visual p { color:#ddebff!important; }
.auth-points div { background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.22)!important; }
.form-grid input,.form-grid textarea,.form-grid select,.filter-row input,.filter-row select,
.builder-panel input,.builder-panel textarea,.builder-panel select {
  border-color:var(--gv-line)!important;
  background:#fff!important;
  color:var(--gv-ink)!important;
}
.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus,
.builder-panel input:focus,.builder-panel textarea:focus,.builder-panel select:focus {
  border-color:var(--gv-blue-400)!important;
  box-shadow:0 0 0 4px rgba(58,145,255,.14)!important;
}
.site-footer { background:rgba(255,255,255,.78)!important;border-color:var(--gv-line)!important; }

/* Member Hub */
.hub-app {
  --red:var(--gv-blue-700);
  --red2:var(--gv-blue-800);
  --deep:var(--gv-blue-950);
  --gold:var(--gv-blue-400);
  --gold2:var(--gv-blue-200);
  --bg:var(--gv-blue-50);
  --surface:#fff;
  --text:var(--gv-ink);
  --muted:var(--gv-muted);
  --line:var(--gv-line);
  --shadow:var(--gv-shadow);
  background:var(--gv-blue-50)!important;
}
.hub-topbar {
  background:linear-gradient(105deg,var(--gv-blue-950),var(--gv-blue-700))!important;
  border-bottom-color:rgba(255,255,255,.16)!important;
}
.hub-brand strong,.hub-brand small,.hub-topbar,.hub-topbar button,.user-chip-button { color:#fff!important; }
.global-search { background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.24)!important; }
.global-search input { color:#fff!important; }
.global-search input::placeholder { color:#d9eaff!important; }
.global-search kbd { background:rgba(255,255,255,.14)!important;color:#eaf4ff!important; }
.hub-sidebar { background:#fff!important; }
.hub-sidebar nav a:hover,.hub-sidebar nav a.active {
  background:linear-gradient(90deg,var(--gv-blue-100),#fff)!important;
  color:var(--gv-blue-800)!important;
  border-left-color:var(--gv-blue-700)!important;
}
.hub-sidebar nav a.active i,.hub-sidebar nav a:hover i { color:var(--gv-blue-700)!important; }
.sidebar-account-card {
  background:linear-gradient(150deg,var(--gv-blue-950),var(--gv-blue-700))!important;
  border-color:rgba(255,255,255,.14)!important;
}
.sidebar-account-card,.sidebar-account-card b,.sidebar-account-card small,.sidebar-account-card p { color:#fff!important; }
.sidebar-account-card a { background:#fff!important;color:var(--gv-blue-800)!important;border-color:#fff!important; }
.sidebar-account-card .sidebar-logout { background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.45)!important; }
.dropdown-head,.dropdown-foot,.dropdown-summary,.dropdown-item:hover,.dropdown-item.unread {
  background:var(--gv-blue-50)!important;
}
.dropdown-head a,.dropdown-foot,.dropdown-summary strong { color:var(--gv-blue-700)!important; }
.live-market-bar {
  background:linear-gradient(90deg,var(--gv-blue-950),var(--gv-blue-800))!important;
  border-top-color:rgba(255,255,255,.14)!important;
}
.market-live-link { background:var(--gv-blue-700)!important;color:#fff!important; }
.v20-hero {
  background:linear-gradient(125deg,var(--gv-blue-950),var(--gv-blue-700) 58%,var(--gv-blue-800))!important;
  box-shadow:0 16px 38px rgba(11,103,220,.20)!important;
}
.v20-hero:after { border-color:rgba(154,199,255,.18)!important; }
.v20-eyebrow { color:var(--gv-blue-200)!important; }
.v20-card .icon,.icon-3d-v23 {
  background:var(--gv-blue-100)!important;
  color:var(--gv-blue-700)!important;
  border-color:var(--gv-blue-200)!important;
}
.v20-card:hover { box-shadow:0 18px 38px rgba(11,103,220,.16)!important; }
.v20-level-tabs button.active { background:var(--gv-blue-700)!important;border-color:var(--gv-blue-700)!important;color:#fff!important; }
.v20-table th { background:var(--gv-blue-850)!important;color:#fff!important; }
.v20-table tr:hover td { background:var(--gv-blue-50)!important; }
.builder-output { background:var(--gv-blue-950)!important;color:#eaf4ff!important; }
.game-card { background:linear-gradient(145deg,var(--gv-blue-950),var(--gv-blue-700))!important; }
.game-card p { color:#dcecff!important; }

/* Market Terminal — blue/white chrome, trading candles retain semantic colors. */
html[data-theme="dark"] {
  --bg:var(--gv-blue-50)!important;
  --panel:#fff!important;
  --panel2:#f7fbff!important;
  --line:var(--gv-line)!important;
  --text:var(--gv-ink)!important;
  --muted:var(--gv-muted)!important;
  --accent:var(--gv-blue-700)!important;
  --shadow:var(--gv-shadow)!important;
  color-scheme:light!important;
}
.terminal {
  --bg:var(--gv-blue-50);
  --panel:#fff;
  --panel2:#f7fbff;
  --line:var(--gv-line);
  --text:var(--gv-ink);
  --muted:var(--gv-muted);
  --accent:var(--gv-blue-700);
  --green:#089981;
  --red:#f23645;
  --amber:#f59e0b;
  --shadow:var(--gv-shadow);
  background:var(--gv-blue-50)!important;
}
.terminal .topbar {
  background:#fff!important;
  border-top:3px solid var(--gv-blue-700)!important;
  border-bottom-color:var(--gv-line)!important;
}
.terminal .brand-mark {
  background:linear-gradient(145deg,var(--gv-blue-900),var(--gv-blue-500))!important;
}
.terminal .topbar button,.terminal .symbol-button,.terminal .timeframes button,
.terminal .drawing-toolbar button,.terminal .tabs button {
  border-color:var(--gv-line)!important;
}
.terminal .topbar button:hover,.terminal .symbol-button:hover,.terminal .timeframes button:hover,
.terminal .drawing-toolbar button:hover,.terminal .tabs button:hover {
  background:var(--gv-blue-100)!important;
  color:var(--gv-blue-800)!important;
}
.terminal .timeframes button.active,.terminal .tabs button.active,
.terminal .watch-row.active,.terminal .drawing-toolbar button.active {
  color:var(--gv-blue-700)!important;
  border-color:var(--gv-blue-400)!important;
  box-shadow:inset 0 -2px var(--gv-blue-700)!important;
}
.terminal .backtest-main-btn,.terminal .insight-toggle {
  background:linear-gradient(135deg,var(--gv-blue-700),var(--gv-blue-500))!important;
  border-color:var(--gv-blue-700)!important;
  color:#fff!important;
}
.terminal .watchlist-panel,.terminal .insight-panel,.terminal .backtest-panel,
.terminal .script-drawer,.terminal .popover,.terminal .context-menu {
  background:#fff!important;
  border-color:var(--gv-line)!important;
}
.terminal .watch-row:hover { background:var(--gv-blue-50)!important; }
.terminal .statusbar { background:var(--gv-blue-950)!important;color:#eaf4ff!important; }
.terminal canvas { background:#fff!important; }

/* Admin */
.admin-shell,.admin-page,.admin-layout { background:var(--gv-blue-50)!important; }
.admin-sidebar,.admin-topbar,.admin-header { border-color:var(--gv-line)!important; }
.admin-sidebar {
  background:linear-gradient(180deg,var(--gv-blue-950),var(--gv-blue-800))!important;
  color:#fff!important;
}
.admin-sidebar a { color:#dcecff!important; }
.admin-sidebar a:hover,.admin-sidebar a.active { background:rgba(255,255,255,.15)!important;color:#fff!important; }
.admin-topbar,.admin-header { background:#fff!important; }
.admin-card,.admin-table,.admin-modal { background:#fff!important;border-color:var(--gv-line)!important; }
.admin-table th { background:var(--gv-blue-100)!important;color:var(--gv-blue-900)!important; }

/* Intro / landing */
.intro-page {
  --red:var(--gv-blue-700);
  --deep:var(--gv-blue-950);
  --gold:var(--gv-blue-300);
  --gold2:var(--gv-blue-500);
  background:var(--gv-blue-950)!important;
}
.intro-vignette {
  background:radial-gradient(circle at 50% 48%,transparent 0 25%,rgba(4,34,77,.14) 48%,rgba(3,25,58,.82) 100%),linear-gradient(90deg,rgba(3,31,70,.9),rgba(3,31,70,.16) 35%,rgba(3,31,70,.14) 65%,rgba(3,31,70,.88))!important;
}
.intro-grid {
  background-image:linear-gradient(rgba(102,170,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(58,145,255,.13) 1px,transparent 1px)!important;
}
.intro-header { border-color:rgba(154,199,255,.22)!important;background:linear-gradient(180deg,rgba(5,36,81,.88),rgba(5,36,81,.28))!important; }
.intro-brand strong,.rotating-word,.center-emblem strong { color:var(--gv-blue-200)!important; }
.solid-btn,.enter-orb {
  background:linear-gradient(135deg,var(--gv-blue-500),var(--gv-blue-800))!important;
  border-color:var(--gv-blue-200)!important;
  box-shadow:0 0 0 10px rgba(102,170,255,.09),0 0 35px rgba(58,145,255,.72)!important;
}
.intro-capabilities a { border-color:rgba(102,170,255,.30)!important;background:linear-gradient(90deg,rgba(7,82,183,.44),rgba(5,36,81,.50))!important; }
.intro-capabilities a:hover { border-color:rgba(154,199,255,.62)!important;background:linear-gradient(90deg,rgba(11,103,220,.66),rgba(5,54,111,.72))!important; }
.intro-capabilities span { color:var(--gv-blue-200)!important;border-color:rgba(154,199,255,.38)!important; }

/* CT, Academy, news and supporting modules */
.ct-app,.ct-page,.academy-page,.news-page,.games-page,.education-page,.pet-page {
  background:var(--gv-blue-50)!important;
}
.ct-header,.ct-hero,.academy-hero,.news-hero,.games-hero {
  background:linear-gradient(125deg,var(--gv-blue-950),var(--gv-blue-700))!important;
  color:#fff!important;
}
.academy-progress-ring {
  background:radial-gradient(circle at center,var(--gv-blue-800) 59%,transparent 60%),conic-gradient(#fff var(--progress),rgba(255,255,255,.18) 0)!important;
}
.news-card:hover,.academy-card:hover,.game-hub-card:hover { border-color:var(--gv-blue-300)!important;box-shadow:0 18px 38px rgba(11,103,220,.14)!important; }

/* Scrollbars */
* { scrollbar-color:var(--gv-blue-400) var(--gv-blue-100); }
*::-webkit-scrollbar { width:10px;height:10px; }
*::-webkit-scrollbar-track { background:var(--gv-blue-100); }
*::-webkit-scrollbar-thumb { background:linear-gradient(var(--gv-blue-400),var(--gv-blue-700));border:2px solid var(--gv-blue-100);border-radius:999px; }

/* Preserve semantic trading/status colors. */
.up,.positive,.profit,.success,.status-ok,.impact-low,.dot.success { color:#07834f!important; }
.down,.negative,.loss,.danger,.status-bad,.impact-high,.dot.danger { color:#cf3343!important; }
.warning,.impact-medium,.dot.warning { color:#b87900!important; }
.notice.success { background:#effbf5!important;border-color:#bfead3!important;color:#087443!important; }
.notice.error { background:#fff2f3!important;border-color:#ffcfd5!important;color:#a92c39!important; }
.notice.info { background:var(--gv-blue-100)!important;border-color:var(--gv-blue-200)!important;color:var(--gv-blue-850)!important; }
