/* Palette and typography are owned by optionsgex-design-system-v1.css. */
html,body{
  background:
    radial-gradient(circle at 12% -10%,rgba(46,139,255,.12),transparent 34%),
    linear-gradient(180deg,#07101b 0%,var(--ogx-bg) 28%,#05080d 100%) !important;
  color:var(--ogx-text);
}

body.ogx-modern-v2{
  letter-spacing:.01em;
}

body.ogx-modern-v2 .page{
  max-width:1420px;
  margin:0 auto;
}

body.ogx-modern-v2 .panel,
body.ogx-modern-v2 article.panel,
body.ogx-modern-v2 .ogex-panel{
  background:linear-gradient(180deg,rgba(17,27,42,.96),rgba(10,17,28,.98)) !important;
  border:1px solid var(--ogx-line-soft) !important;
  border-radius:var(--ogx-radius) !important;
  box-shadow:var(--ogx-shadow);
}

body.ogx-modern-v2 h1,
body.ogx-modern-v2 h2,
body.ogx-modern-v2 h3{
  color:var(--ogx-text);
  letter-spacing:-.02em;
}

body.ogx-modern-v2 button,
body.ogx-modern-v2 select,
body.ogx-modern-v2 input{
  min-height:42px;
  border-radius:12px !important;
}

body.ogx-modern-v2 button{
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease;
}

body.ogx-modern-v2 button:active{
  transform:scale(.97);
}

.ogx-v2-icon{
  width:19px;
  height:19px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:none;
}
.ogx-v2-icon svg{
  width:100%;
  height:100%;
  display:block;
}

.ogx-v2-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:30px;
  padding:5px 10px;
  border:1px solid rgba(126,159,204,.22);
  border-radius:999px;
  background:rgba(13,23,38,.84);
  color:#b8c8df;
  font-size:11px;
  font-weight:800;
  letter-spacing:.05em;
  white-space:nowrap;
}
.ogx-v2-chip.good{color:var(--ogx-green);border-color:rgba(22,224,161,.35);background:rgba(22,224,161,.08)}
.ogx-v2-chip.bad{color:var(--ogx-red);border-color:rgba(255,81,108,.36);background:rgba(255,81,108,.08)}
.ogx-v2-chip.wait{color:var(--ogx-amber);border-color:rgba(255,186,73,.35);background:rgba(255,186,73,.08)}
.ogx-v2-chip.info{color:#78b8ff;border-color:rgba(46,139,255,.35);background:rgba(46,139,255,.09)}

.ogx-v2-pagehead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 14px;
}
.ogx-v2-pagehead-main{
  min-width:0;
}
.ogx-v2-pagehead-title{
  margin:0;
  font-size:22px;
  font-weight:850;
}
.ogx-v2-pagehead-sub{
  margin-top:3px;
  color:var(--ogx-muted);
  font-size:12px;
}
.ogx-v2-pagehead-actions{
  display:flex;
  align-items:center;
  gap:8px;
}

.ogx-v2-appbar{
  position:sticky;
  top:0;
  z-index:140;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:58px;
  margin:0 0 12px;
  padding:8px 10px;
  border:1px solid rgba(104,148,202,.15);
  border-radius:0 0 18px 18px;
  background:rgba(6,12,21,.91);
  backdrop-filter:blur(16px);
  box-shadow:0 10px 25px rgba(0,0,0,.24);
}
.ogx-v2-brand{
  display:flex;
  align-items:center;
  gap:9px;
  font-weight:900;
  letter-spacing:-.03em;
  font-size:18px;
}
.ogx-v2-brandmark{
  width:32px;height:32px;
  display:grid;place-items:center;
  border-radius:10px;
  background:linear-gradient(145deg,#205dff,#20c6ff);
  box-shadow:0 0 24px rgba(46,139,255,.24);
}
.ogx-v2-brandmark svg{width:21px;height:21px}
.ogx-v2-brand em{font-style:normal;color:#34c8ff}
.ogx-v2-appbar-actions{display:flex;gap:8px;align-items:center}
.ogx-v2-iconbtn{
  width:40px;height:40px;min-height:40px !important;
  padding:0 !important;
  display:grid;place-items:center;
  border:1px solid rgba(126,159,204,.22) !important;
  border-radius:12px !important;
  background:#0e1928 !important;
  color:#c9d6ea !important;
}

.ogx-v2-hero{
  position:relative;
  overflow:hidden;
  padding:18px;
  border:1px solid rgba(72,130,196,.24);
  border-radius:22px;
  background:
    radial-gradient(circle at 95% 0%,rgba(32,198,255,.12),transparent 34%),
    linear-gradient(160deg,#101c2c,#09121e);
  box-shadow:var(--ogx-shadow);
}
.ogx-v2-hero::after{
  content:"";
  position:absolute;
  inset:auto -10% -55% 26%;
  height:180px;
  background:radial-gradient(circle,rgba(46,139,255,.12),transparent 60%);
  pointer-events:none;
}
.ogx-v2-hero-row{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
}
.ogx-v2-price{
  margin-top:8px;
  font-size:32px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.045em;
}
.ogx-v2-positive{color:var(--ogx-green)!important}
.ogx-v2-negative{color:var(--ogx-red)!important}
.ogx-v2-muted{color:var(--ogx-muted)!important}

.ogx-v2-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.ogx-v2-metric{
  min-width:0;
  padding:13px;
  border:1px solid rgba(126,159,204,.16);
  border-radius:15px;
  background:linear-gradient(180deg,rgba(18,31,49,.92),rgba(10,18,30,.96));
}
.ogx-v2-metric small{
  display:block;
  margin-bottom:6px;
  color:var(--ogx-muted);
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.ogx-v2-metric strong{
  display:block;
  font-size:17px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ogx-v2-metric span{
  display:block;
  margin-top:4px;
  color:#7890ad;
  font-size:10px;
}

.ogx-v2-levelrail{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:8px;
  margin-top:14px;
}
.ogx-v2-levelrail .line{
  height:4px;border-radius:99px;
}
.ogx-v2-levelrail .put{background:linear-gradient(90deg,var(--ogx-green),#59f5c2)}
.ogx-v2-levelrail .call{background:linear-gradient(90deg,#ff7288,var(--ogx-red))}
.ogx-v2-levelrail .zero{
  width:12px;height:12px;border-radius:50%;
  background:var(--ogx-blue);
  box-shadow:0 0 0 4px rgba(46,139,255,.16),0 0 16px rgba(46,139,255,.55);
}

.ogx-v2-chart-toolbar{
  display:flex;
  gap:8px;
  align-items:center;
  overflow-x:auto;
  scrollbar-width:none;
  padding:7px 2px 9px;
}
.ogx-v2-chart-toolbar::-webkit-scrollbar{display:none}
.ogx-v2-tool{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:38px!important;
  padding:7px 11px!important;
  border:1px solid rgba(121,158,207,.22)!important;
  background:#0e1826!important;
  color:#bcd0e9!important;
  font-size:11px!important;
  font-weight:750!important;
}
.ogx-v2-tool.is-active{
  color:#eaf5ff!important;
  border-color:rgba(46,139,255,.65)!important;
  background:linear-gradient(180deg,rgba(46,139,255,.30),rgba(46,139,255,.13))!important;
  box-shadow:0 0 0 1px rgba(46,139,255,.10) inset;
}

body.ogx-modern-v2 #page-surface{
  --ogx-chart-min:520px;
}
body.ogx-modern-v2 #page-surface .panel.big{
  padding:12px!important;
}
body.ogx-modern-v2 #gexRtChartShell{
  min-height:var(--ogx-chart-min);
  border-radius:18px!important;
  overflow:hidden;
  border:1px solid rgba(78,131,192,.23);
  background:#07101a;
}
body.ogx-modern-v2 #gexKlineChart{
  min-height:var(--ogx-chart-min);
}

/* NSE option OI/Volume HUD */
#ogxV2OptionHud{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:10px;
  margin-top:10px;
}
.ogx-v2-optioncard{
  padding:13px;
  border:1px solid rgba(126,159,204,.17);
  border-radius:15px;
  background:linear-gradient(180deg,#101b2b,#0a121e);
}
.ogx-v2-optioncard.call{
  border-color:rgba(22,224,161,.28);
  box-shadow:inset 3px 0 0 rgba(22,224,161,.85);
}
.ogx-v2-optioncard.put{
  border-color:rgba(255,81,108,.28);
  box-shadow:inset 3px 0 0 rgba(255,81,108,.85);
}
.ogx-v2-optioncard-head{
  display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;
}
.ogx-v2-optioncard-title{
  display:flex;align-items:center;gap:7px;font-size:12px;font-weight:850;
}
.ogx-v2-optioncard.call .ogx-v2-optioncard-title{color:var(--ogx-green)}
.ogx-v2-optioncard.put .ogx-v2-optioncard-title{color:var(--ogx-red)}
.ogx-v2-optiongrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.ogx-v2-optstat{
  min-width:0;
  padding:9px;
  border-radius:11px;
  background:#0b1522;
}
.ogx-v2-optstat small{
  display:block;color:#7890ad;font-size:9px;text-transform:uppercase;letter-spacing:.06em;
}
.ogx-v2-optstat strong{
  display:block;margin-top:3px;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.ogx-v2-optbar{
  height:4px;margin-top:7px;border-radius:99px;background:#182538;overflow:hidden;
}
.ogx-v2-optbar i{display:block;height:100%;border-radius:99px}
.call .ogx-v2-optbar i{background:var(--ogx-green)}
.put .ogx-v2-optbar i{background:var(--ogx-red)}
.ogx-v2-optionmeta{
  margin-top:7px;
  color:#7489a4;
  font-size:9px;
}
.ogx-v2-optionempty{
  grid-column:1/-1;
  padding:12px;
  border:1px dashed rgba(130,160,198,.24);
  border-radius:13px;
  color:#7e90a9;
  font-size:11px;
  text-align:center;
}

/* Crypto chart-first frame */
body.ogx-modern-v2 #page-crypto{
  --ogx-crypto-chart-min:430px;
}
body.ogx-modern-v2 #cryptoV6Chart{
  min-height:var(--ogx-crypto-chart-min)!important;
  border:1px solid rgba(75,127,186,.18);
  border-radius:18px;
  overflow:hidden;
  background:#070f18;
}
#ogxV2CryptoChartHead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0 0 8px;
  padding:9px 11px;
  border-radius:14px;
  border:1px solid rgba(86,137,198,.18);
  background:#0c1624;
}
#ogxV2CryptoChartHead .symbol{
  display:flex;align-items:center;gap:9px;font-weight:850;
}
#ogxV2CryptoChartHead .dot{
  width:9px;height:9px;border-radius:50%;background:var(--ogx-green);box-shadow:0 0 12px rgba(22,224,161,.55);
}
#ogxV2CryptoQuick{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:10px 0;
}
#ogxV2CryptoQuick .ogx-v2-metric{padding:10px}
#ogxV2CryptoQuick strong{font-size:14px}

body.ogx-modern-v2 #page-chain .table,
body.ogx-modern-v2 #page-alerts .table{
  border-radius:16px;
  overflow:hidden;
}
body.ogx-modern-v2 #chainTable{
  border:1px solid rgba(122,155,199,.15);
  border-radius:16px;
  overflow:auto;
}
body.ogx-modern-v2 #chainTable .bar,
body.ogx-modern-v2 #alertsBox .bar{
  border-bottom:1px solid rgba(126,159,204,.09);
}

/* Modernise text-heavy legacy sections without destroying content */
body.ogx-modern-v2 #page-overview .text-block,
body.ogx-modern-v2 #page-decision .text-block,
body.ogx-modern-v2 #page-walls .text-block{
  color:#a8bad0;
  line-height:1.55;
}
body.ogx-modern-v2 #page-overview .grid,
body.ogx-modern-v2 #page-levels .grid,
body.ogx-modern-v2 #page-gamma .grid,
body.ogx-modern-v2 #page-walls .grid{
  gap:12px;
}
body.ogx-modern-v2 canvas{
  border-radius:14px;
}

.ogx-v2-empty{
  display:grid;
  place-items:center;
  min-height:150px;
  padding:24px;
  text-align:center;
  color:#7f92aa;
  border:1px dashed rgba(126,159,204,.18);
  border-radius:15px;
  background:
    linear-gradient(110deg,transparent 25%,rgba(255,255,255,.025) 40%,transparent 55%) 0 0/220% 100%,
    #0a131f;
  animation:ogxV2Shimmer 2s linear infinite;
}
@keyframes ogxV2Shimmer{to{background-position:-220% 0}}

body.ogx-modern-v2 .ogex-mobile-bottom-nav,
body.ogx-modern-v2 .ogex-shell-bottom-nav,
body.ogx-modern-v2 [class*="bottom-nav"]{
  border-color:rgba(82,135,196,.28)!important;
  background:rgba(6,13,22,.94)!important;
  backdrop-filter:blur(18px);
  box-shadow:0 -12px 32px rgba(0,0,0,.30)!important;
}
body.ogx-modern-v2 [class*="bottom-nav"] button{
  border:0!important;
  background:transparent!important;
  min-height:54px!important;
}
body.ogx-modern-v2 [class*="bottom-nav"] button.active{
  color:#49a2ff!important;
}

@media(max-width:820px){
  body.ogx-modern-v2{
    padding-bottom:72px;
  }
  .ogx-v2-appbar{
    margin-left:-6px;margin-right:-6px;
  }
  .ogx-v2-pagehead-title{font-size:19px}
  .ogx-v2-pagehead-sub{font-size:11px}
  .ogx-v2-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.ogx-modern-v2 #page-surface{
    --ogx-chart-min:440px;
  }
  body.ogx-modern-v2 #page-crypto{
    --ogx-crypto-chart-min:390px;
  }
  #ogxV2CryptoQuick{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:520px){
  body.ogx-modern-v2 .page{
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .ogx-v2-hero{padding:14px}
  .ogx-v2-price{font-size:28px}
  #ogxV2OptionHud{
    grid-template-columns:1fr;
  }
  .ogx-v2-optiongrid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .ogx-v2-optstat{padding:7px 6px}
  .ogx-v2-optstat strong{font-size:12px}
  body.ogx-modern-v2 #page-surface{
    --ogx-chart-min:405px;
  }
}
