/* ============================================================
   Research Hub — Premium Report Style V3
   Same Think Unlimited / Wolf cyan-blue brand.
   Different from wolf.thinkunlimitedlb.com.
   CSS only. No content, SEO, schema, OG, logo, tracking, DB, DNS, or Nginx changes.
   ============================================================ */

:root{
  --tu-cyan:#00E5FF;
  --tu-blue:#168BFF;
  --tu-blue-deep:#0B4DB8;
  --tu-ink:#081927;
  --tu-ink-soft:#17324A;
  --tu-muted:#637589;
  --tu-bg:#F7FCFF;
  --tu-surface:#FFFFFF;
  --tu-surface-soft:#F3FBFF;
  --tu-line:rgba(0,229,255,.22);
  --tu-line-soft:rgba(22,139,255,.14);
  --tu-shadow:0 18px 48px rgba(8,25,39,.075);
  --tu-shadow-soft:0 10px 26px rgba(22,139,255,.07);
}

/* Clean premium page background — no ugly grid, no copied Wolf glow */
html,
body{
  color:var(--tu-ink) !important;
  background:
    radial-gradient(circle at 16% 0%, rgba(0,229,255,.095), transparent 26rem),
    radial-gradient(circle at 90% 10%, rgba(22,139,255,.065), transparent 24rem),
    linear-gradient(180deg, #ffffff 0%, var(--tu-bg) 45%, #ffffff 100%) !important;
}

/* Typography */
h1,h2,h3,h4,h5,h6,
strong,b{
  color:var(--tu-ink) !important;
}

h1,h2{
  letter-spacing:-0.035em !important;
}

p,
li,
small,
.text-muted,
.muted,
.subtitle,
.sub,
.lead{
  color:var(--tu-muted) !important;
}

/* Links */
a{
  color:var(--tu-blue) !important;
  text-decoration-color:rgba(0,229,255,.35) !important;
}

/* Top/header area — premium report navigation, not Wolf homepage clone */
header,
nav,
.navbar,
.site-header,
.topbar,
[class*="header"],
[class*="Header"],
[class*="nav"],
[class*="Nav"]{
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(0,229,255,.12) !important;
  box-shadow:0 10px 30px rgba(8,25,39,.045) !important;
  backdrop-filter:blur(14px);
}

/* Hero — white premium report cover */
.hero,
.hero-section,
.banner,
[class*="hero"],
[class*="Hero"]{
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,252,255,.92)) !important;
  border:1px solid var(--tu-line) !important;
  box-shadow:var(--tu-shadow) !important;
  color:var(--tu-ink) !important;
  overflow:hidden;
}

/* Remove the bad dark/washed cards and make all report blocks readable */
.dark,
.dark-section,
.black,
.bg-dark,
.summary,
.strategy,
.link-index,
.report-summary,
[class*="dark"],
[class*="Dark"],
[class*="summary"],
[class*="Summary"],
[class*="strategy"],
[class*="Strategy"],
[class*="index"],
[class*="Index"]{
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,251,255,.92)) !important;
  color:var(--tu-ink) !important;
  border:1px solid var(--tu-line) !important;
  box-shadow:var(--tu-shadow) !important;
}

/* Make text inside previously-dark boxes readable */
.dark *,
.dark-section *,
.black *,
.bg-dark *,
.summary *,
.strategy *,
.link-index *,
.report-summary *,
[class*="dark"] *,
[class*="Dark"] *,
[class*="summary"] *,
[class*="Summary"] *,
[class*="strategy"] *,
[class*="Strategy"] *,
[class*="index"] *,
[class*="Index"] *{
  color:inherit;
}

.dark p,
.dark li,
.dark-section p,
.dark-section li,
.black p,
.black li,
.bg-dark p,
.bg-dark li,
.summary p,
.summary li,
.strategy p,
.strategy li,
.link-index p,
.link-index li,
.report-summary p,
.report-summary li,
[class*="dark"] p,
[class*="dark"] li,
[class*="Dark"] p,
[class*="Dark"] li,
[class*="summary"] p,
[class*="summary"] li,
[class*="Summary"] p,
[class*="Summary"] li,
[class*="strategy"] p,
[class*="strategy"] li,
[class*="Strategy"] p,
[class*="Strategy"] li,
[class*="index"] p,
[class*="index"] li,
[class*="Index"] p,
[class*="Index"] li{
  color:var(--tu-muted) !important;
}

/* Cards — clean white report cards, no ugly left cyan stripe */
.card,
.box,
.panel,
.report-card,
.research-card,
.feature-card,
.stat-card,
.glass,
.tile,
article,
section .item,
[class*="card"],
[class*="Card"],
[class*="panel"],
[class*="Panel"]{
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,252,255,.94)) !important;
  border:1px solid var(--tu-line-soft) !important;
  border-left:1px solid var(--tu-line-soft) !important;
  box-shadow:var(--tu-shadow-soft) !important;
  color:var(--tu-ink) !important;
}

/* Card headings and body */
.card h1,.card h2,.card h3,
.box h1,.box h2,.box h3,
.panel h1,.panel h2,.panel h3,
article h1,article h2,article h3,
[class*="card"] h1,[class*="card"] h2,[class*="card"] h3,
[class*="Card"] h1,[class*="Card"] h2,[class*="Card"] h3{
  color:var(--tu-ink) !important;
}

.card p,.card li,
.box p,.box li,
.panel p,.panel li,
article p,article li,
[class*="card"] p,[class*="card"] li,
[class*="Card"] p,[class*="Card"] li{
  color:var(--tu-muted) !important;
}

/* Badges — elegant cyan outline, not loud Wolf pills */
.secondary,
.outline,
.pill,
.badge,
.tag,
.label,
.chip,
[class*="badge"],
[class*="Badge"],
[class*="pill"],
[class*="Pill"],
[class*="tag"],
[class*="Tag"]{
  background:rgba(255,255,255,.92) !important;
  color:#075072 !important;
  border:1px solid rgba(0,229,255,.24) !important;
  box-shadow:0 8px 18px rgba(0,229,255,.055) !important;
}

/* Buttons — premium navy-to-blue, not too neon */
button,
.button,
.btn,
.cta,
.primary,
a.button,
a.btn,
a.cta,
[class*="button"],
[class*="Button"],
[class*="btn"],
[class*="Btn"]{
  background:linear-gradient(135deg, #06233D, var(--tu-blue)) !important;
  color:#ffffff !important;
  border:1px solid rgba(0,229,255,.24) !important;
  box-shadow:0 14px 32px rgba(22,139,255,.16) !important;
}

button:hover,
.button:hover,
.btn:hover,
.cta:hover,
a.button:hover,
a.btn:hover,
a.cta:hover{
  filter:saturate(1.04) brightness(1.03);
}

/* Footer */
footer,
.footer,
.site-footer,
[class*="footer"],
[class*="Footer"]{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,251,255,.92)) !important;
  color:var(--tu-muted) !important;
  border-top:1px solid rgba(0,229,255,.14) !important;
}

/* Forms */
input,
textarea,
select{
  background:#ffffff !important;
  color:var(--tu-ink) !important;
  border-color:rgba(22,139,255,.24) !important;
  box-shadow:0 8px 20px rgba(8,25,39,.035) !important;
}

input:focus,
textarea:focus,
select:focus{
  outline-color:var(--tu-cyan) !important;
  border-color:var(--tu-cyan) !important;
}

/* Lines */
hr,
.divider,
.separator{
  border-color:rgba(0,229,255,.16) !important;
}

/* Keep official images/logos untouched */
img,
picture,
video{
  filter:none !important;
}

/* Text selection */
::selection{
  background:rgba(0,229,255,.24);
  color:var(--tu-ink);
}
