/* TradeScalping.com: core stylesheet */

:root{
  --bg: #0a0e14;
  --bg-alt: #0d1220;
  --card: #131826;
  --card-border: #212840;
  --text: #d7dbe5;
  --text-dim: #8b93a7;
  --text-dimmer: #7a8299;
  --amber: #f0b90b;
  --amber-dim: #a67e0c;
  --green: #16c784;
  --red: #ea3943;
  --blue: #3b82f6;
  --radius: 10px;
  --maxw: 1160px;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
}

*,*::before,*::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin:0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-body);
  line-height: 1.6;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
}
body::before{
  content:"";
  position: fixed; inset:0;
  background-image:
    radial-gradient(circle at 15% 0%, rgba(240,185,11,0.06), transparent 40%),
    radial-gradient(circle at 85% 20%, rgba(59,130,246,0.06), transparent 40%);
  pointer-events: none;
  z-index: 0;
}
img{ max-width:100%; display:block; }
a{ color: inherit; text-decoration: none; }
h1,h2,h3,h4{ font-weight: 700; letter-spacing: -0.01em; margin: 0 0 .5em; }
p{ margin: 0 0 1em; color: var(--text); }
.container{ max-width: var(--maxw); margin: 0 auto; padding: 0 24px; position: relative; z-index: 1; }
.mono{ font-family: var(--font-mono); }
.eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-family: var(--font-mono); text-transform: uppercase; letter-spacing: .12em;
  font-size: .72rem; color: var(--amber); margin-bottom: 14px;
}
.eyebrow::before{ content:""; width:6px; height:6px; border-radius:50%; background: var(--amber); box-shadow: 0 0 8px var(--amber); }

/* ---------- Header ---------- */
.site-header{
  position: sticky; top:0; z-index: 50;
  background: rgba(10,14,20,0.82);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--card-border);
}
.nav-wrap{ display:flex; align-items:center; justify-content:space-between; height:68px; }
.logo{ font-family: var(--font-mono); font-weight:700; font-size:1.15rem; color:#fff; display:flex; align-items:center; gap:9px; }
.logo-icon{ height:30px; width:30px; border-radius:8px; display:block; }
.footer-grid .logo{ margin-bottom:14px; }
.logo span{ color: var(--amber); }
.logo small{ color: var(--text-dimmer); font-size:.65em; font-weight:400; margin-left:2px; }
.main-nav{ display:flex; align-items:center; gap:30px; }
.main-nav a{ color: var(--text-dim); font-size:.92rem; font-weight:500; transition: color .15s; position:relative; }
.main-nav a:hover{ color:#fff; }
.main-nav a.active{ color: var(--amber); }
.nav-cta{
  background: var(--amber); color:#0a0e14 !important; padding:9px 18px; border-radius:6px; font-weight:700; font-size:.88rem !important;
}
.nav-cta:hover{ background:#ffcf33; }
.nav-toggle{ display:none; background:none; border:1px solid var(--card-border); color:#fff; font-size:1.2rem; padding:6px 12px; border-radius:6px; cursor:pointer; }

/* ---------- Hero ---------- */
.hero{ padding: 76px 0 60px; }
.hero-grid{ display:grid; grid-template-columns: 1.1fr .9fr; gap:56px; align-items:center; }
.hero h1{ font-size: clamp(2.1rem, 4.4vw, 3.4rem); line-height:1.08; color:#fff; }
.hero h1 em{ font-style:normal; color: var(--amber); }
.hero-sub{ font-size:1.12rem; color: var(--text-dim); max-width: 540px; }
.hero-actions{ display:flex; gap:14px; margin-top:28px; flex-wrap:wrap; }
.btn{
  display:inline-flex; align-items:center; gap:8px; padding:13px 24px; border-radius:7px;
  font-weight:700; font-size:.95rem; transition: transform .15s, background .15s, border-color .15s, box-shadow .15s; cursor:pointer; border:1px solid transparent;
}
.btn-primary{ background: var(--amber); color:#0a0e14; }
.btn-primary:hover{ background:#ffcf33; transform: translateY(-1px); box-shadow: 0 10px 26px -10px rgba(240,185,11,0.5); }
.btn-ghost{ border-color: var(--card-border); color:#fff; }
.btn-ghost:hover{ border-color: var(--amber-dim); color: var(--amber); }
.hero-stats{ display:flex; gap:34px; margin-top:44px; flex-wrap:wrap; }
.hero-stat b{ display:block; font-family: var(--font-mono); font-size:1.5rem; color:#fff; }
.hero-stat span{ font-size:.8rem; color: var(--text-dimmer); }

/* ---------- Candlestick hero art ---------- */
.chart-card{
  background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius);
  padding: 18px 18px 8px; box-shadow: 0 20px 60px -20px rgba(0,0,0,0.6);
}
.chart-card-head{ display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; font-family: var(--font-mono); font-size:.78rem; color: var(--text-dimmer); }
.chart-card-head .pair{ color:#fff; font-weight:700; }
.chart-card-head .px{ color: var(--green); }

.hero-photo{
  position:relative; border-radius: var(--radius); overflow:hidden; border:1px solid var(--card-border);
  box-shadow: 0 20px 60px -20px rgba(0,0,0,0.6);
}
.hero-photo img{ display:block; width:100%; height:auto; }
.hero-photo-tag{
  position:absolute; left:16px; bottom:16px; background:rgba(10,14,20,0.72); border:1px solid var(--card-border);
  color:#fff; font-family: var(--font-mono); font-size:.78rem; padding:6px 12px; border-radius:6px;
}
.candles{ display:flex; align-items:flex-end; gap:5px; height:200px; padding:6px 4px; }
.candle{ flex:1; position:relative; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; }
.candle .wick{ width:1px; background: currentColor; opacity:.55; }
.candle .body{ width:100%; border-radius:1px; }
.candle.up{ color: var(--green); }
.candle.down{ color: var(--red); }
.candle.up .body{ background: var(--green); }
.candle.down .body{ background: var(--red); }
.chart-vol{ display:flex; gap:5px; height:26px; padding:4px 4px 10px; }
.chart-vol i{ flex:1; background: var(--card-border); border-radius:1px; }

/* ---------- Sections ---------- */
section{ padding: 68px 0; position: relative; z-index:1; }
.section-head{ max-width: 640px; margin-bottom: 42px; }
.section-head h2{ font-size: clamp(1.6rem, 3vw, 2.2rem); color:#fff; }
.section-head p{ color: var(--text-dim); font-size:1.02rem; }
.alt{ background: var(--bg-alt); border-top:1px solid var(--card-border); border-bottom:1px solid var(--card-border); }

.grid{ display:grid; gap:22px; }
.grid-3{ grid-template-columns: repeat(3, 1fr); }
.grid-2{ grid-template-columns: repeat(2, 1fr); }

.card{
  background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius);
  padding: 26px; transition: transform .18s, border-color .18s, box-shadow .18s;
}
.card:hover{ transform: translateY(-3px); border-color: var(--amber-dim); box-shadow: 0 16px 40px -18px rgba(0,0,0,0.55); }
.card .tag{ font-family: var(--font-mono); font-size:.7rem; text-transform:uppercase; letter-spacing:.08em; color: var(--amber); display:block; margin-bottom:10px; }
.card h3{ color:#fff; font-size:1.15rem; }
.card p{ color: var(--text-dim); font-size:.95rem; margin-bottom:0; }
.card .num{ font-family: var(--font-mono); color: var(--text-dimmer); font-size:1.6rem; float:right; }

.callout{
  border:1px solid var(--card-border); border-left:3px solid var(--amber);
  background: var(--card); border-radius: 0 var(--radius) var(--radius) 0; padding: 20px 24px; margin: 26px 0;
}
.callout p{ max-width: 66ch; }
.callout.red{ border-left-color: var(--red); }
.callout.green{ border-left-color: var(--green); }
.callout p:last-child{ margin-bottom:0; }
.callout strong{ color:#fff; }

.pull{
  font-family: var(--font-mono); font-size:1.3rem; color:#fff; border-left:3px solid var(--amber);
  padding-left:20px; margin: 34px 0; max-width: 620px; line-height:1.5;
}

.founder-quote{
  display:flex; gap:30px; align-items:center; background: var(--card); border:1px solid var(--card-border);
  border-radius: var(--radius); padding:30px 34px;
}
.founder-quote img{
  width:180px; height:auto; border-radius:8px; border:1px solid var(--card-border); flex:none; display:block;
}
.founder-quote blockquote{
  margin:0; font-family: var(--font-mono); font-size:1.2rem; color:#fff; line-height:1.55; max-width: 60ch;
}
.founder-quote cite{ display:block; margin-top:16px; font-style:normal; font-size:.85rem; color: var(--text-dim); }
@media (max-width: 700px){
  .founder-quote{ flex-direction:column; text-align:center; }
  .founder-quote img{ width:160px; }
}

.page-founder-callout{
  display:flex; gap:22px; align-items:center; background: var(--card); border:1px solid var(--card-border);
  border-radius: var(--radius); padding:22px 26px; margin: 30px 0;
}
.page-founder-callout img{
  width:110px; height:110px; object-fit:cover; border-radius:8px; border:1px solid var(--card-border);
  flex:none; display:block;
}
.page-founder-callout p{ margin:0; font-size:1rem; color: var(--text-dim); line-height:1.55; }
.page-founder-callout p strong{ color:#fff; }
.page-founder-callout-tag{ display:block; margin-top:8px; font-size:.78rem; color: var(--text-dimmer); }
@media (max-width: 640px){
  .page-founder-callout{ flex-direction:column; text-align:center; }
  .page-founder-callout img{ width:120px; height:120px; }
}

/* ---------- Above-the-fold founder hero (replaces the small callout on migrated pages) ---------- */
.page-hero-grid{ display:grid; grid-template-columns: 1.15fr .85fr; gap:48px; align-items:center; }
.page-hero-founder{ position:relative; }
.page-hero-founder img{
  width:100%; max-width:400px; aspect-ratio:1/1; object-fit:cover; border-radius: var(--radius);
  border:1px solid var(--card-border); box-shadow: 0 24px 70px -20px rgba(0,0,0,0.65); display:block; margin:0 auto;
}
.page-hero-founder blockquote{
  margin:20px auto 0; font-family: var(--font-mono); font-size:1.14rem; color:#fff; line-height:1.5;
  border-left:3px solid var(--amber); padding-left:18px; max-width:400px;
}
.page-hero-founder cite{ display:block; margin-top:10px; font-style:normal; font-size:.8rem; color: var(--text-dim); text-align:center; }
@media (max-width: 860px){
  .page-hero-grid{ grid-template-columns:1fr; }
  .page-hero-founder{ text-align:center; }
  .page-hero-founder img{ max-width:280px; }
}

.faq-list{ margin: 30px 0; }
.faq-item{
  background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius);
  margin-bottom:12px; padding: 0 22px;
}
.faq-item summary{
  font-family: var(--font-mono); font-weight:600; color:#fff; font-size:.98rem;
  padding: 18px 0; cursor:pointer; list-style:none; display:flex; justify-content:space-between;
  align-items:center; gap:16px;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item summary::after{ content:"+"; color: var(--amber); font-size:1.3rem; flex:none; line-height:1; }
.faq-item[open] summary::after{ content:"\2212"; }
.faq-item p{ color: var(--text-dim); font-size:.95rem; padding: 0 0 18px; margin:0; max-width: 66ch; }

table{ width:100%; border-collapse: collapse; margin: 20px 0; }
th,td{ text-align:left; padding:11px 14px; border-bottom:1px solid var(--card-border); font-size:.93rem; }
th{ color: var(--text-dimmer); font-weight:600; font-size:.78rem; text-transform:uppercase; letter-spacing:.05em; }
td{ color: var(--text-dim); }
td strong{ color:#fff; }
tr:hover td{ background: rgba(255,255,255,0.035); }

.prose{ max-width: 760px; }
.prose h2{ color:#fff; margin-top:2.2em; font-size:1.5rem; }
.prose h3{ color:#fff; margin-top:1.6em; font-size:1.15rem; }
.prose p{ color: var(--text); }
.prose ul, .prose ol{ color: var(--text); padding-left: 1.2em; }
.prose li{ margin-bottom: .5em; }

.badge{
  display:inline-block; font-family: var(--font-mono); font-size:.72rem; padding:3px 9px; border-radius:5px;
  background: rgba(240,185,11,0.12); color: var(--amber); font-weight:700; letter-spacing:.03em;
}
.badge.long{ background: rgba(22,199,132,0.12); color: var(--green); }
.badge.short{ background: rgba(234,57,67,0.12); color: var(--red); }

/* ---------- Tools page ---------- */
.tool-panel{
  background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius);
  padding: 30px; margin-bottom: 30px;
}
.tool-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 34px; }
.field{ margin-bottom: 18px; }
.field label{ display:flex; justify-content:space-between; font-size:.82rem; color: var(--text-dim); margin-bottom:7px; }
.field label .u{ color: var(--text-dimmer); font-family: var(--font-mono); }
.field input, .field select{
  width:100%; background: var(--bg); border:1px solid var(--card-border); color:#fff;
  padding:11px 13px; border-radius:6px; font-family: var(--font-mono); font-size:.95rem;
}
.field input:focus, .field select:focus{ outline:none; border-color: var(--amber-dim); }
.result-box{
  background: var(--bg); border:1px solid var(--card-border); border-radius:8px; padding:22px; display:flex; flex-direction:column; gap:16px;
}
.result-row{ display:flex; justify-content:space-between; align-items:baseline; padding-bottom:14px; border-bottom:1px dashed var(--card-border); }
.result-row:last-child{ border-bottom:none; padding-bottom:0; }
.result-row .l{ color: var(--text-dim); font-size:.88rem; }
.result-row .v{ font-family: var(--font-mono); font-size:1.3rem; color:#fff; font-weight:700; }
.result-row .v.warn{ color: var(--red); }
.result-row .v.ok{ color: var(--green); }

.sessions-clock{ display:grid; grid-template-columns: repeat(4,1fr); gap:16px; margin: 18px 0 8px; }
.session-card{ background: var(--bg); border:1px solid var(--card-border); border-radius:8px; padding:16px; text-align:center; position:relative; }
.session-card.active{ border-color: var(--green); box-shadow: 0 0 0 1px var(--green) inset; }
.session-card h4{ margin:0 0 6px; color:#fff; font-size:.95rem; }
.session-card .time{ font-family: var(--font-mono); color: var(--text-dim); font-size:.82rem; }
.session-card .dot{ position:absolute; top:12px; right:12px; width:8px; height:8px; border-radius:50%; background: var(--text-dimmer); }
.session-card.active .dot{ background: var(--green); box-shadow: 0 0 6px var(--green); }
.overlap-banner{ margin-top:16px; padding:14px 18px; border-radius:8px; font-family: var(--font-mono); font-size:.85rem; border:1px dashed var(--card-border); color: var(--text-dim); }
.overlap-banner.hot{ border-color: var(--amber); color: var(--amber); background: rgba(240,185,11,0.06); }

/* ---------- Checklist ---------- */
.checklist{ list-style:none; padding:0; margin:0; }
.checklist li{
  display:flex; align-items:flex-start; gap:12px; padding:13px 0; border-bottom:1px solid var(--card-border);
}
.checklist li:last-child{ border-bottom:none; }
.checklist input[type=checkbox]{ margin-top:4px; width:17px; height:17px; accent-color: var(--amber); cursor:pointer; }
.checklist label{ cursor:pointer; color: var(--text); }
.checklist li.checked label{ color: var(--text-dimmer); text-decoration: line-through; }

.tilt-list{ list-style:none; padding:0; margin:0 0 6px; }
.tilt-list li{ padding: 13px 0; border-bottom:1px solid var(--card-border); }
.tilt-list li:last-child{ border-bottom:none; }
.tilt-list label{ display:flex; align-items:flex-start; gap:12px; cursor:pointer; color: var(--text); font-size:.95rem; }
.tilt-list input[type=checkbox]{ margin-top:3px; width:17px; height:17px; flex-shrink:0; accent-color: var(--amber); cursor:pointer; }
.checklist-progress{ font-family: var(--font-mono); font-size:.85rem; color: var(--text-dim); margin-bottom:6px; }

/* ---------- Glossary ---------- */
.glossary-search{ margin-bottom: 30px; }
.glossary-search input{
  width:100%; background: var(--card); border:1px solid var(--card-border); color:#fff;
  padding:14px 18px; border-radius:8px; font-size:1rem;
}
.glossary-letter{ font-family: var(--font-mono); color: var(--amber); font-size:1.3rem; margin: 34px 0 10px; padding-top:10px; border-top:1px solid var(--card-border); }
.gterm{ padding: 14px 0; border-bottom:1px solid var(--card-border); }
.gterm dt{ color:#fff; font-weight:700; font-family: var(--font-mono); font-size: .98rem; }
.gterm dd{ margin:6px 0 0; color: var(--text-dim); font-size:.94rem; max-width:66ch; }
.gterm[hidden]{ display:none; }

/* ---------- Footer ---------- */
.site-footer{ border-top:1px solid var(--card-border); padding: 50px 0 26px; background: var(--bg-alt); }
.footer-grid{ display:grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap:30px; margin-bottom:36px; }
.footer-grid p{ color: var(--text-dimmer); font-size:.88rem; max-width:280px; }
.footer-col h4{ color:#fff; font-size:.82rem; text-transform:uppercase; letter-spacing:.06em; margin-bottom:14px; }
.footer-col a{ display:block; color: var(--text-dim); font-size:.9rem; margin-bottom:10px; }
.footer-col a:hover{ color: var(--amber); }
.footer-bottom{ border-top:1px solid var(--card-border); padding-top:22px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.footer-bottom p{ color: var(--text-dimmer); font-size:.8rem; margin:0; }

/* ---------- Misc ---------- */
.page-hero{ padding: 54px 0 20px; }
.page-hero h1{ font-size: clamp(1.8rem,3.6vw,2.6rem); color:#fff; }
.page-hero p{ color: var(--text-dim); max-width:640px; font-size:1.05rem; }
.disclaimer-strip{ background: var(--bg-alt); border-top:1px solid var(--card-border); border-bottom:1px solid var(--card-border); padding:14px 0; }
.disclaimer-strip p{ margin:0; font-size:.78rem; color: var(--text-dimmer); text-align:center; }

@media (max-width: 880px){
  .hero-grid{ grid-template-columns: 1fr; }
  .grid-3{ grid-template-columns: 1fr 1fr; }
  .tool-grid{ grid-template-columns: 1fr; }
  .sessions-clock{ grid-template-columns: 1fr 1fr; }
  .footer-grid{ grid-template-columns: 1fr 1fr; }
  .main-nav{ display:none; }
  .nav-toggle{ display:inline-block; }
  .mr-actions{ grid-template-columns: repeat(3,1fr); }
  .mtype-grid .mtype-card{ flex-basis: calc((100% - 22px)/2); }
}
@media (max-width: 560px){
  .grid-3, .grid-2{ grid-template-columns: 1fr; }
  .footer-grid{ grid-template-columns: 1fr; }
  .mr-actions{ grid-template-columns: repeat(2,1fr); }
  .mtype-grid .mtype-card{ flex-basis: 100%; }
}

/* ---------- Scalping Systems ---------- */
.system-card{
  background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius);
  padding: 28px; transition: transform .18s, border-color .18s, box-shadow .18s; display:flex; flex-direction:column; gap:14px;
}
.system-card:hover{ transform: translateY(-3px); border-color: var(--amber-dim); box-shadow: 0 16px 40px -18px rgba(0,0,0,0.55); }
.system-card .sys-meta{ display:flex; gap:10px; flex-wrap:wrap; }
.chip{
  font-family: var(--font-mono); font-size:.72rem; padding:4px 10px; border-radius:20px;
  border:1px solid var(--card-border); color: var(--text-dim); background: var(--bg);
}
.chip.amber{ color: var(--amber); border-color: var(--amber-dim); }
.system-card h3{ color:#fff; font-size:1.25rem; margin:0; }
.system-card p{ color: var(--text-dim); margin:0; }

.fact-grid{ display:grid; grid-template-columns: repeat(6,1fr); gap:14px; margin: 26px 0 10px; }
.fact-chip{ background: var(--card); border:1px solid var(--card-border); border-radius:8px; padding:14px 12px; text-align:center; }
.fact-chip .fl{ display:block; font-size:.68rem; text-transform:uppercase; letter-spacing:.06em; color: var(--text-dimmer); margin-bottom:6px; }
.fact-chip .fv{ font-family: var(--font-mono); color:#fff; font-weight:700; font-size:.92rem; }

.term-row{ display:flex; flex-wrap:wrap; gap:10px; margin: 18px 0 0; }
.term-pill{
  font-family: var(--font-mono); font-size:.85rem; padding:9px 16px; border-radius:8px;
  border:1px solid var(--card-border); background: var(--card); color: var(--text-dim); cursor:pointer; transition: all .15s;
}
.term-pill:hover{ color:#fff; border-color: var(--amber-dim); box-shadow: 0 10px 24px -14px rgba(0,0,0,0.5); }
.term-pill.active{ background: var(--amber); color:#0a0e14; border-color: var(--amber); font-weight:700; }
.term-def{
  margin-top:16px; padding:18px 22px; background: var(--bg); border:1px solid var(--card-border); border-left:3px solid var(--amber);
  border-radius: 0 8px 8px 0; color: var(--text); font-size:.96rem; min-height:1.6em;
}
.term-def strong{ color:#fff; }

.setup-block{ margin: 56px 0; padding-top: 40px; border-top:1px solid var(--card-border); }
.setup-block:first-of-type{ border-top:none; padding-top:0; }
.setup-num{ font-family: var(--font-mono); color: var(--amber); font-size:.85rem; letter-spacing:.08em; text-transform:uppercase; }
.setup-block h2{ color:#fff; margin-top:6px; }
.setup-rules{ background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius); padding:18px 22px; margin: 18px 0 24px; }
.setup-rules p{ margin: 8px 0; color: var(--text); font-size:.95rem; }
.setup-rules p strong{ color: var(--amber); }

.chart-widget{
  background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius);
  padding: 20px; display:grid; grid-template-columns: 1fr 220px; gap:22px;
}
.chart-widget canvas{ width:100%; height:260px; display:block; border-radius:6px; background: var(--bg); }
.chart-controls{ display:flex; gap:10px; margin-top:14px; }
.chart-controls button{
  font-family: var(--font-mono); font-size:.82rem; font-weight:700; padding:9px 16px; border-radius:6px;
  border:1px solid var(--amber-dim); background: transparent; color: var(--amber); cursor:pointer; transition: all .15s;
}
.chart-controls button:hover{ background: var(--amber); color:#0a0e14; }
.chart-controls button:disabled{ opacity:.4; cursor:default; }
.readout{ display:flex; flex-direction:column; gap:12px; justify-content:center; }
.readout .r-row{ display:flex; justify-content:space-between; align-items:baseline; padding-bottom:10px; border-bottom:1px dashed var(--card-border); opacity:.25; transition: opacity .25s; }
.readout .r-row.show{ opacity:1; }
.readout .r-row:last-child{ border-bottom:none; }
.readout .r-l{ font-size:.78rem; color: var(--text-dim); }
.readout .r-v{ font-family: var(--font-mono); font-weight:700; font-size:1.05rem; color:#fff; }
.readout .r-v.long{ color: var(--green); }
.readout .r-v.short{ color: var(--red); }
.readout .r-v.stop{ color: var(--red); }
.readout .r-v.target{ color: var(--green); }

.verdict-badge{
  display:inline-flex; align-items:center; gap:8px; font-family: var(--font-mono); font-weight:700; font-size:.85rem;
  padding:8px 16px; border-radius:6px; letter-spacing:.03em;
}
.verdict-badge.valid{ background: rgba(22,199,132,0.14); color: var(--green); border:1px solid rgba(22,199,132,0.4); }
.verdict-badge.invalid{ background: rgba(234,57,67,0.14); color: var(--red); border:1px solid rgba(234,57,67,0.4); }
.verdict-badge.wide{ background: rgba(240,185,11,0.14); color: var(--amber); border:1px solid rgba(240,185,11,0.4); }

.check-tabs{ display:flex; gap:10px; margin-bottom:18px; flex-wrap:wrap; }
.check-tabs button{
  font-family: var(--font-mono); font-size:.8rem; padding:9px 15px; border-radius:6px; border:1px solid var(--card-border);
  background: var(--bg); color: var(--text-dim); cursor:pointer;
}
.check-tabs button.active{ border-color: var(--amber); color: var(--amber); }

.gauge{ position:relative; height:34px; background: var(--bg); border:1px solid var(--card-border); border-radius:20px; margin: 18px 0 10px; overflow:hidden; }
.gauge-fill{ position:absolute; top:0; left:0; bottom:0; background: linear-gradient(90deg, var(--green), var(--amber) 70%, var(--red)); border-radius:20px; transition: width .25s; }
.gauge-marker{ position:absolute; top:-6px; width:2px; height:46px; background:#fff; opacity:.5; }
.gauge-marker span{ position:absolute; top:-18px; transform:translateX(-50%); font-family: var(--font-mono); font-size:.66rem; color: var(--text-dimmer); white-space:nowrap; }
.gauge-value{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-family: var(--font-mono); font-weight:700; color:#0a0e14; mix-blend-mode: difference; filter: invert(1); font-size:.85rem; }

.illustrative-note{ font-size:.76rem; color: var(--text-dimmer); margin-top:10px; }

.quiz-lead{ max-width: 680px; }
.quiz-q{ margin: 30px 0; padding-bottom: 26px; border-bottom:1px solid var(--card-border); }
.quiz-q:last-of-type{ border-bottom:none; padding-bottom:0; }
.quiz-q h3{ color:#fff; font-size:1.05rem; margin:0 0 14px; }
.quiz-opts{ display:flex; flex-direction:column; gap:10px; }
.quiz-opt{
  display:flex; align-items:flex-start; gap:12px; padding:14px 16px; border:1px solid var(--card-border);
  border-radius: var(--radius); cursor:pointer; background: var(--card); transition: border-color .15s, box-shadow .15s; color: var(--text);
}
.quiz-opt:hover{ border-color: var(--amber-dim); box-shadow: 0 10px 24px -14px rgba(0,0,0,0.5); }
.quiz-opt.selected{ border-color: var(--amber); background: rgba(240,185,11,0.05); }
.quiz-opt input{ margin-top:3px; accent-color: var(--amber); cursor:pointer; flex-shrink:0; }
.quiz-warn{ color: var(--red); font-size:.88rem; margin-top:4px; }
.quiz-result{ display:none; margin-top:36px; padding:28px 30px; background: var(--card); border:1px solid var(--amber-dim); border-radius: var(--radius); }
.quiz-result.show{ display:block; }
.quiz-result h3{ color:#fff; font-size:1.35rem; margin:10px 0 12px; }
.quiz-result p{ color: var(--text-dim); }

@media (max-width: 880px){
  .chart-widget{ grid-template-columns: 1fr; }
  .fact-grid{ grid-template-columns: repeat(3,1fr); }
}
@media (max-width: 560px){
  .fact-grid{ grid-template-columns: repeat(2,1fr); }
  th,td{ padding:8px 10px; font-size:.87rem; }
}

.print-only-date{ display:none; }

@media print {
  body * { visibility: hidden; }
  .print-area, .print-area * { visibility: visible; }
  .print-area {
    position: absolute; top: 0; left: 0; width: 100%;
    background: #fff !important; border: none !important; box-shadow: none !important;
  }
  .print-area, .print-area h2, .print-area p, .print-area label, .print-area .checklist-progress { color: #000 !important; }
  .print-only-date{ display:block; font-family: var(--font-mono); font-size:.85rem; margin-bottom:10px; }
  .checklist li{ border-color:#ccc !important; }
  .checklist-reset, .checklist-print { display: none !important; }
}

/* ---------- Strategy Setup Directory ---------- */
.setup-filter{ display:flex; flex-wrap:wrap; gap:10px; margin: 0 0 28px; }
.setup-filter button{
  font-family: var(--font-mono); font-size:.78rem; padding:8px 14px; border-radius:20px;
  border:1px solid var(--card-border); background: var(--card); color: var(--text-dim); cursor:pointer; transition: all .15s;
}
.setup-filter button:hover{ color:#fff; border-color: var(--amber-dim); }
.setup-filter button.active{ background: var(--amber); color:#0a0e14; border-color: var(--amber); font-weight:700; }

.setup-card{
  background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius);
  padding: 22px; transition: transform .18s, border-color .18s, box-shadow .18s; display:flex; flex-direction:column; gap:8px;
  text-decoration:none;
}
.setup-card:hover{ transform: translateY(-3px); border-color: var(--amber-dim); box-shadow: 0 16px 40px -18px rgba(0,0,0,0.55); }
.setup-card .cat-tag{ font-family: var(--font-mono); font-size:.68rem; text-transform:uppercase; letter-spacing:.06em; }
.setup-card .cat-tag.momentum{ color: var(--green); }
.setup-card .cat-tag.continuation{ color: var(--blue); }
.setup-card .cat-tag.reversal{ color: var(--red); }
.setup-card .cat-tag.range{ color: var(--amber); }
.setup-card .cat-tag.orderflow{ color: var(--text-dim); }
.setup-card .cat-tag.volatility{ color: var(--red); }
.setup-card h3{ color:#fff; font-size:1.08rem; margin:0; }
.setup-card p{ color: var(--text-dim); font-size:.92rem; margin:0; }

.back-link{ display:inline-block; font-family: var(--font-mono); font-size:.82rem; color: var(--text-dim); margin-bottom: 18px; }
.back-link:hover{ color: var(--amber); }

.setup-fact-grid{ display:grid; grid-template-columns: repeat(4,1fr); gap:14px; margin: 26px 0; }
.setup-fact-grid .fact-chip{ background: var(--card); border:1px solid var(--card-border); border-radius:8px; padding:14px 12px; text-align:left; }
.setup-fact-grid .fl{ display:block; font-size:.68rem; text-transform:uppercase; letter-spacing:.06em; color: var(--text-dimmer); margin-bottom:6px; }
.setup-fact-grid .fv{ font-family: var(--font-body); color:#fff; font-weight:700; font-size:.92rem; line-height:1.4; }

@media (max-width: 700px){
  .setup-fact-grid{ grid-template-columns: repeat(2,1fr); }
}

/* ---------- Setup Simulator ---------- */
.sim-root{ max-width: 720px; }
.sim-panel{
  background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius);
  padding: 30px; margin-bottom: 20px;
}
.sim-panel h2{ color:#fff; margin-top:0; font-size:1.5rem; }
.sim-rules{ color: var(--text-dim); padding-left:1.2em; }
.sim-rules li{ margin-bottom:.6em; }
.sim-hud{ display:flex; justify-content:space-between; font-family: var(--font-mono); font-size:.82rem; color: var(--text-dimmer); margin-bottom:14px; }
.sim-setup-name{ color:#fff; font-size:1.3rem; margin:0 0 4px; }
.sim-cue{ color: var(--text-dim); margin:0 0 18px; min-height:1.4em; }
.sim-candles{ background: var(--bg); border:1px solid var(--card-border); border-radius:8px; }
.candle.signal .body{ box-shadow: 0 0 0 2px var(--amber); }
.candle.signal .wick{ background: var(--amber); }
@keyframes simPulse{ 0%,100%{ opacity:1; } 50%{ opacity:.55; } }
.candle.signal{ animation: simPulse 0.9s ease-in-out infinite; }
.sim-timer{ height:6px; background: var(--card-border); border-radius:4px; margin: 16px 0; overflow:hidden; display:none; }
.sim-timer-fill{ height:100%; background: var(--amber); width:100%; }
.sim-actions{ display:flex; gap:16px; margin-top:6px; }
.sim-actions button{
  flex:1; font-family: var(--font-mono); font-weight:700; font-size:1.05rem; padding:18px; border-radius:8px;
  border:none; cursor:pointer; transition: transform .1s, opacity .15s;
}
.sim-actions button:active{ transform: scale(0.97); }
.sim-actions button:disabled{ opacity:.35; cursor:default; }
.sim-buy{ background: var(--green); color:#06231a; }
.sim-sell{ background: var(--red); color:#2a0709; }
.sim-feedback{ min-height:1.6em; text-align:center; font-weight:700; margin-top:16px; font-size:1.02rem; }
.sim-feedback.correct{ color: var(--green); }
.sim-feedback.wrong{ color: var(--red); }
.sim-feedback.miss{ color: var(--amber); }
.sim-summary-score{ font-family: var(--font-mono); font-size:2.4rem; color:#fff; font-weight:700; margin: 6px 0 18px; }
.sim-summary-list p{ color: var(--text-dim); }
.sim-summary-list ul{ list-style:none; padding:0; margin:10px 0 0; }
.sim-summary-list li{ padding:13px 0; border-bottom:1px solid var(--card-border); }
.sim-summary-list li:last-child{ border-bottom:none; }

/* ---------- Multi-timeframe HTF context strip ---------- */
.htf-strip{ margin-bottom:14px; padding-bottom:14px; border-bottom:1px dashed var(--card-border); }
.htf-strip canvas{ width:100%; height:70px; display:block; border-radius:6px; background: var(--bg); }
.htf-label{ display:flex; justify-content:space-between; align-items:center; margin-top:6px; font-family: var(--font-mono); font-size:.72rem; color: var(--text-dimmer); }
.htf-label .htf-dir{ font-weight:700; letter-spacing:.03em; }
.htf-label .htf-dir.up{ color: var(--green); }
.htf-label .htf-dir.down{ color: var(--red); }

/* ---------- Market Reader ---------- */
.mtype-grid{ margin: 4px 0 30px; display:flex; flex-wrap:wrap; justify-content:center; }
.mtype-grid .mtype-card{ flex: 0 1 calc((100% - 44px)/3); }
.mtype-card{
  background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius);
  padding: 20px; display:flex; flex-direction:column; gap:12px;
}
.mtype-card .candles{ height:130px; background: var(--bg); border:1px solid var(--card-border); border-radius:8px; padding:6px 4px; }
.mtype-card h3{ color:#fff; margin:0; font-size:1.05rem; display:flex; align-items:center; gap:9px; }
.mtype-card p{ color: var(--text-dim); font-size:.9rem; margin:0; }
.mtype-dot{ width:9px; height:9px; border-radius:50%; display:inline-block; flex:none; }
.mtype-dot.bull{ background: var(--green); }
.mtype-dot.bear{ background: var(--red); }
.mtype-dot.range{ background: var(--blue); }
.mtype-dot.breakout{ background: var(--amber); }
.mtype-dot.tight{ background: var(--text-dimmer); }

.mr-root{ max-width: 760px; }
.mr-panel{
  background: var(--card); border:1px solid var(--card-border); border-radius: var(--radius);
  padding: 30px; margin-bottom: 20px;
}
.mr-panel h2{ color:#fff; margin-top:0; font-size:1.5rem; }
.mr-rules{ color: var(--text-dim); padding-left:1.2em; }
.mr-rules li{ margin-bottom:.6em; }
.mr-candles{ margin-bottom:18px; }
.mr-actions{ display:grid; grid-template-columns: repeat(5,1fr); gap:10px; }
.mr-actions button{
  font-family: var(--font-mono); font-weight:700; font-size:.76rem; padding:14px 6px; border-radius:8px;
  border:1px solid var(--card-border); background: transparent; color: var(--text); cursor:pointer;
  transition: transform .1s, opacity .15s, border-color .15s, box-shadow .15s;
}
.mr-actions button:not(:disabled):hover{ box-shadow: 0 10px 24px -14px rgba(0,0,0,0.5); }
.mr-actions button:active{ transform: scale(0.97); }
.mr-actions button:disabled{ opacity:.35; cursor:default; }
.mr-actions button.bull:not(:disabled){ border-color: var(--green); color: var(--green); }
.mr-actions button.bear:not(:disabled){ border-color: var(--red); color: var(--red); }
.mr-actions button.range:not(:disabled){ border-color: var(--blue); color: var(--blue); }
.mr-actions button.breakout:not(:disabled){ border-color: var(--amber); color: var(--amber); }
.mr-actions button.tight:not(:disabled){ border-color: var(--text-dimmer); color: var(--text-dimmer); }
.mr-next{ display:block; margin: 16px auto 0; }
