@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');

/* ===== BRAND TOKENS — edit here to match the rest of the site ===== */
.edx-cvrs{
  --brand:#1ba5dd;          /* EquityDireX cyan (active nav, links, rules) */
  --brand-d:#1488b8;        /* cyan, darker (hover) */
  --purple:#9b3bb0;         /* secondary accent */
  --green:#54b45a;          /* secondary accent */
  --amber:#e08a1e;          /* secondary accent */
  --ink:#18202f;            /* headings (near-black navy) */
  --text:#5b6678;           /* body text */
  --muted:#69717f;          /* captions / meta (WCAG-AA on white) */
  --bg:#ffffff;             /* page background */
  --panel:#f6f8fb;          /* subtle panels */
  --line:#e6ebf2;           /* hairline borders */
  --ok:#2f9e54;   --ok-bg:#e9f6ee;   --ok-bd:#bfe5cd;
  --warn:#c98a12; --warn-bg:#fdf4e3; --warn-bd:#f0dcae;
  --bad:#d24b46;  --bad-bg:#fbeceb;  --bad-bd:#f1c6c4;
  --r:10px;
  --shadow:0 6px 22px rgba(16,30,54,.07);
  --shadow-sm:0 1px 2px rgba(16,30,54,.05);
}
/* ================================================================ */

.edx-cvrs{
  box-sizing:border-box; color:var(--text); background:var(--bg);
  font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased;
  margin:0 15px; max-width:none; padding:clamp(24px,5vw,56px) 15px 64px;
}
.edx-cvrs *{box-sizing:border-box;}
.edx-cvrs h1,.edx-cvrs h2,.edx-cvrs h3,.edx-cvrs p,.edx-cvrs ul{margin:0;}
.edx-cvrs h1,.edx-cvrs h2,.edx-cvrs h3,.edx-target{color:var(--ink); font-weight:700; letter-spacing:-.01em;}

/* signature: cyan underline bar under headings */
.edx-rule{display:block; width:56px; height:4px; border-radius:4px; background:var(--brand); margin:14px 0 0;}

/* ---- hero --------------------------------------------------- */
.edx-hero{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:28px 48px;}
.edx-hero-main{flex:1 1 460px; min-width:0;}
.edx-eyebrow{font-size:.72rem; letter-spacing:.2em; text-transform:uppercase; color:var(--brand); font-weight:600; margin-bottom:12px;}
.edx-title{font-size:clamp(2.2rem,6vw,3.6rem); line-height:1.04; font-weight:800;}
.edx-hero .edx-rule{margin-bottom:22px;}
.edx-lede{max-width:64ch; color:var(--text); font-size:clamp(1rem,1.5vw,1.12rem);}
.edx-stats{display:flex; flex-wrap:wrap; flex:0 0 auto; border:1px solid var(--line); border-radius:var(--r); width:fit-content; max-width:100%; background:#fff;}
.edx-stat{padding:15px 26px 14px; min-width:96px;}
.edx-stat + .edx-stat{border-left:1px solid var(--line);}
.edx-stat .n{font-size:1.5rem; font-weight:700; color:var(--ink); font-variant-numeric:tabular-nums; line-height:1; letter-spacing:-.02em;}
.edx-stat .l{font-size:.66rem; letter-spacing:.13em; text-transform:uppercase; color:var(--muted); margin-top:8px;}

/* ---- SEO copy ---------------------------------------------- */
.edx-seo{max-width:78ch; margin:52px 0 8px;}
.edx-seo h2{font-size:1.45rem; margin-top:0;}
.edx-seo h2:not(:first-child){margin-top:38px;}
.edx-seo .edx-rule{margin-bottom:16px;}
.edx-seo p{color:var(--text); font-size:.98rem; margin-bottom:14px;}
.edx-legend{list-style:none; padding:18px 0 0; margin:22px 0 0; border-top:1px solid var(--line); display:grid; gap:9px;}
.edx-legend li{color:var(--text); font-size:.94rem; padding-left:18px; position:relative;}
.edx-legend li::before{content:""; position:absolute; left:0; top:.62em; width:7px; height:7px; border-radius:50%; background:var(--brand);}
.edx-legend strong{color:var(--ink);}

/* ---- controls ---------------------------------------------- */
.edx-controls{display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin:44px 0 22px; padding:0 0 20px; border-bottom:1px solid var(--line);}
.edx-cvrs .edx-search{position:relative !important; flex:1 1 280px; min-width:220px;}
/* center the icon with top/bottom+margin auto (no transform — theme-proof) */
.edx-cvrs .edx-search svg{position:absolute !important; left:13px !important; right:auto !important;
  top:0 !important; bottom:0 !important; margin:auto 0 !important; transform:none !important;
  width:17px !important; height:17px !important; fill:none; stroke:var(--muted); stroke-width:2; stroke-linecap:round;}
.edx-cvrs input[type=search],.edx-cvrs select{width:100%; background:#fff; border:1px solid var(--line); color:var(--ink);
  border-radius:10px; padding:11px 13px; font:inherit; font-size:.92rem; outline:none; transition:border-color .15s, box-shadow .15s;}
.edx-cvrs .edx-search input[type=search]{padding-left:40px;}
.edx-cvrs select{flex:0 0 auto; width:auto; min-width:152px; cursor:pointer; color:var(--text);}
.edx-cvrs input::placeholder{color:var(--muted);}
.edx-cvrs input:focus,.edx-cvrs select:focus{border-color:var(--brand); box-shadow:0 0 0 3px rgba(27,165,221,.16);}
.edx-count{margin-left:auto; color:var(--muted); font-size:.82rem; white-space:nowrap;}

/* ---- grid & cards ------------------------------------------ */
/* auto-fill sizes columns from the CONTAINER's available width (not the viewport),
   so it stays readable whether the shortcode sits in a narrow column or full width.
   Plain minmax(300px,1fr) — no nested min() that CSS optimizers can mangle. */
.edx-cvrs .edx-grid{display:grid !important; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)) !important; gap:20px;}
@media (max-width:340px){ .edx-cvrs .edx-grid{grid-template-columns:1fr !important;} }
.edx-card{position:relative; border:1px solid var(--line); border-radius:var(--r); overflow:hidden;
  background:#fff; box-shadow:var(--shadow-sm); display:flex; flex-direction:column;
  transition:box-shadow .18s ease, border-color .18s ease;}
.edx-card::before{content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:var(--accent,var(--brand));}
.edx-card:hover{box-shadow:var(--shadow); border-color:#cfd8e6;}
.edx-card-head{padding:20px 18px 14px; border-bottom:1px solid var(--line);}
.edx-row1{display:flex; justify-content:space-between; align-items:flex-start; gap:10px; margin-bottom:12px;}
.edx-names{min-width:0;}
.edx-target{font-size:1.12rem; font-weight:700; line-height:1.22;}
.edx-buyer{font-size:.86rem; color:var(--muted); margin-top:3px;}
.edx-buyer span{color:var(--accent,var(--brand)); font-weight:700;}
.edx-year{font-variant-numeric:tabular-nums; font-size:.76rem; color:var(--muted); background:var(--panel); border:1px solid var(--line); border-radius:7px; padding:3px 9px; white-space:nowrap;}
.edx-chips{display:flex; flex-wrap:wrap; gap:7px;}
.edx-chip{font-size:.68rem; font-weight:600; letter-spacing:.02em; padding:4px 10px; border-radius:6px; background:#fff; color:var(--accent,var(--brand)); border:1px solid var(--line);}
.edx-pill{font-size:.68rem; font-weight:600; padding:4px 10px; border-radius:999px;}
.edx-pill.ok{color:var(--ok); background:var(--ok-bg); border:1px solid var(--ok-bd);}
.edx-pill.warn{color:var(--warn); background:var(--warn-bg); border:1px solid var(--warn-bd);}
.edx-pill.bad{color:var(--bad); background:var(--bad-bg); border:1px solid var(--bad-bd);}
.edx-pill.neutral{color:var(--muted); background:var(--panel); border:1px solid var(--line);}

/* stop the theme's word-break:break-all from chopping titles/labels mid-word */
.edx-cvrs, .edx-cvrs *{word-break:normal !important; overflow-wrap:break-word; hyphens:none !important;}

/* tabs — scoped + !important so theme <button> styles can't fill them */
.edx-cvrs .edx-tabs{display:flex; gap:2px; padding:0 14px; background:#fff; border-bottom:1px solid var(--line);}
.edx-cvrs .edx-tab{-webkit-appearance:none !important; appearance:none !important;
  background:transparent !important; background-color:transparent !important;
  border:0 !important; border-bottom:2px solid transparent !important; border-radius:0 !important;
  box-shadow:none !important; color:var(--muted) !important; font:inherit; font-weight:600 !important;
  font-size:.78rem; line-height:1.2; flex:1 1 auto; text-align:center; white-space:nowrap !important;
  width:auto !important; min-width:0 !important;
  margin:0 !important; padding:12px 8px !important; cursor:pointer; text-transform:none !important;
  letter-spacing:normal !important; transition:color .15s, border-color .15s;}
.edx-cvrs .edx-tab:hover{color:var(--text) !important;}
.edx-cvrs .edx-tab[aria-selected=true]{color:var(--brand) !important; border-bottom-color:var(--brand) !important; background:transparent !important;}
.edx-cvrs .edx-tab:focus,
.edx-cvrs .edx-tab:focus-visible{outline:none !important; box-shadow:none !important;}
.edx-panel{padding:16px 18px 18px; flex:1; display:none; font-size:.9rem;}
.edx-panel.show{display:block;}

.edx-terms{color:var(--ink); font-variant-numeric:tabular-nums; line-height:1.55;}
.edx-note{margin-top:12px; padding-top:12px; border-top:1px solid var(--line); color:var(--text); font-size:.83rem;}
.edx-note b{color:var(--ink); font-weight:600;}

/* contingent events (milestones) */
.edx-events-h{font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:12px;}
.edx-mile{list-style:none; padding:0; margin:0; counter-reset:m;}
.edx-mile li{position:relative; padding:0 0 14px 30px; color:var(--ink); font-size:.88rem; line-height:1.5;}
.edx-mile li:last-child{padding-bottom:0;}
.edx-mile li::before{counter-increment:m; content:counter(m); position:absolute; left:0; top:0;
  width:20px; height:20px; border-radius:50%; background:var(--brand); color:#fff;
  font-size:.7rem; font-weight:700; display:flex; align-items:center; justify-content:center;}
.edx-mile li::after{content:""; position:absolute; left:9px; top:22px; bottom:2px; width:1px; background:var(--line);}
.edx-mile li:last-child::after{display:none;}
.edx-bad-note{color:var(--bad); border-top-color:var(--bad-bd)!important;}

/* owners spec rows */
.edx-spec-row{display:flex; justify-content:space-between; gap:14px; padding:9px 0; border-bottom:1px solid var(--line);}
.edx-spec-row:last-of-type{border-bottom:none;}
.edx-spec-k{color:var(--text); font-size:.85rem;}
.edx-spec-v{font-weight:600; font-size:.85rem; text-align:right; color:var(--ink);}
.edx-spec-v.yes{color:var(--ok);} .edx-spec-v.no{color:var(--muted);}
.edx-plain{margin-top:12px; color:var(--text); font-size:.82rem; line-height:1.5;}

/* owners — target shareholders / holders */
.edx-holders{margin-top:16px; padding-top:14px; border-top:1px solid var(--line);}
.edx-holders-h{font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:10px;}
.edx-holders-h span{letter-spacing:.02em; text-transform:none; color:var(--muted);}
.edx-holders-scroll{max-height:190px; overflow-y:auto; border:1px solid var(--line); border-radius:8px;}
.edx-htable{width:100%; border-collapse:collapse; font-size:.8rem;}
.edx-htable th{position:sticky; top:0; z-index:1; background:var(--panel); text-align:left; font-weight:600;
  color:var(--muted); font-size:.64rem; letter-spacing:.06em; text-transform:uppercase; padding:8px 11px; border-bottom:1px solid var(--line);}
.edx-htable td{padding:7px 11px; border-bottom:1px solid var(--line); color:var(--ink); line-height:1.35;}
.edx-htable tbody tr:last-child td{border-bottom:none;}
.edx-htable td.rk{color:var(--muted); font-variant-numeric:tabular-nums; width:1%; white-space:nowrap; padding-right:6px;}
.edx-htable td.num,.edx-htable th.num{text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap;}
.edx-htable td.pct{color:var(--text);}
.edx-holders-src{margin-top:9px; color:var(--muted); font-size:.72rem; line-height:1.5;}

/* trade */
.edx-trade{display:flex; flex-direction:column; gap:12px;}
/* CTA — !important + white text so theme link/button colours can't override it */
.edx-cvrs .edx-cta{display:inline-flex; align-items:center; justify-content:center; gap:8px;
  background:var(--brand) !important; background-color:var(--brand) !important; color:#fff !important;
  font-weight:700; font-size:.92rem; text-decoration:none !important; border:0 !important; box-shadow:none !important;
  padding:13px 16px; border-radius:10px; transition:background .15s, transform .1s;}
.edx-cvrs .edx-cta:hover{background:var(--brand-d) !important; background-color:var(--brand-d) !important; color:#fff !important;}
.edx-cvrs .edx-cta:active{transform:translateY(1px);}
.edx-cvrs .edx-cta *{color:#fff !important;}
.edx-cta svg{width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round;}
.edx-trade-note{color:var(--muted); font-size:.78rem;}
.edx-src{color:var(--brand-d); font-size:.8rem; text-decoration:none; border-bottom:1px solid transparent;}
.edx-src:hover{border-bottom-color:var(--brand-d);}
.edx-verified{display:inline-flex; align-items:center; gap:5px; font-size:.74rem; color:var(--ok); font-weight:600;}
.edx-verified svg{width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:2.6;}

/* footer & empty */
.edx-empty{text-align:center; color:var(--muted); padding:48px 0; font-size:.95rem;}
.edx-foot{margin-top:40px; padding-top:20px; border-top:1px solid var(--line); color:var(--muted); font-size:.8rem; line-height:1.6;}

@media (max-width:640px){
  .edx-count{width:100%; margin:2px 0 0;}
  .edx-spec-v{text-align:left;}
  .edx-stats{width:100%;}
  .edx-stat{flex:1; min-width:0; padding:14px 16px;}
}
@media (prefers-reduced-motion:reduce){.edx-cvrs *{transition:none!important;}}
