/*
Theme Name: اقتصادیار پرو
Theme URI: https://example.com
Author: Super Z Design
Author URI: https://example.com
Description: قالب خبری اقتصادی فارسی، مدرن، مینیمال و بهینه برای سئو. طراحی شده با الهام از Stripe/Vercel با حفظ هویت سبز اقتصادی. مناسب انتشار اخبار روزانه اقتصادی، بورس، ارز، طلا و رمزارز.
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 7.4
Tested up to: 6.6
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: eqtesadyar-pro
Tags: news, rtl, persian, right-to-left, minimal, finance, economy, dark-mode, block-patterns
*/

/* ====================================================
   1. RESET & TOKENS
   ==================================================== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  /* Brand palette - refined economy green */
  --green:#10b981;
  --green-mid:#059669;
  --green-dark:#047857;
  --green-light:#ecfdf5;
  --green-tint:#f0fdf4;

  /* Semantic colors */
  --red:#ef4444;
  --red-light:#fef2f2;
  --gold:#f59e0b;
  --gold-light:#fffbeb;
  --blue:#3b82f6;
  --blue-light:#eff6ff;

  /* Neutral ramp (Stripe/Vercel style) */
  --gray-50:#fafafa;
  --gray-100:#f4f4f5;
  --gray-200:#e4e4e7;
  --gray-300:#d4d4d8;
  --gray-400:#a1a1aa;
  --gray-500:#71717a;
  --gray-600:#52525b;
  --gray-700:#3f3f46;
  --gray-800:#27272a;
  --gray-900:#18181b;
  --gray-950:#09090b;

  /* Theme tokens (light) */
  --bg:#ffffff;
  --bg-soft:#fafafa;
  --bg-card:#ffffff;
  --bg-elevated:#ffffff;
  --text:#09090b;
  --text2:#3f3f46;
  --text3:#71717a;
  --border:#e4e4e7;
  --border-soft:#f4f4f5;
  --white:#ffffff;

  /* Effects */
  --radius-sm:6px;
  --radius:10px;
  --radius-lg:14px;
  --radius-xl:20px;
  --shadow-xs:0 1px 2px rgba(0,0,0,.04);
  --shadow-sm:0 1px 3px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.03);
  --shadow-md:0 4px 12px rgba(0,0,0,.06),0 2px 4px rgba(0,0,0,.04);
  --shadow-lg:0 12px 32px rgba(0,0,0,.08),0 4px 12px rgba(0,0,0,.05);
  --shadow-glow:0 0 0 4px rgba(16,185,129,.12);
  --shadow-green:0 8px 24px rgba(16,185,129,.18);

  /* Typography */
  --font:'Vazirmatn',ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --font-mono:'JetBrains Mono','SF Mono',ui-monospace,Menlo,monospace;

  /* Motion */
  --ease:cubic-bezier(.16,1,.3,1);
  --ease-out:cubic-bezier(.4,0,.2,1);
  --dur-fast:.15s;
  --dur:.25s;
  --dur-slow:.45s;

  /* Layout */
  --maxw:1320px;
  --header-h:68px;
  --topbar-h:36px;
}

/* Dark mode tokens */
html[data-theme="dark"]{
  --bg:#09090b;
  --bg-soft:#111113;
  --bg-card:#141417;
  --bg-elevated:#1a1a1f;
  --text:#fafafa;
  --text2:#d4d4d8;
  --text3:#a1a1aa;
  --border:#27272a;
  --border-soft:#1f1f23;
  --green-light:rgba(16,185,129,.12);
  --green-tint:rgba(16,185,129,.06);
  --red-light:rgba(239,68,68,.12);
  --gold-light:rgba(245,158,11,.12);
  --blue-light:rgba(59,130,246,.12);
  --shadow-sm:0 1px 3px rgba(0,0,0,.4);
  --shadow-md:0 4px 12px rgba(0,0,0,.4);
  --shadow-lg:0 12px 32px rgba(0,0,0,.5);
  --shadow-glow:0 0 0 4px rgba(16,185,129,.2);
}

/* ====================================================
   2. BASE ELEMENTS
   ==================================================== */
html{direction:rtl;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--font);
  background:var(--bg);
  color:var(--text);
  font-size:15px;
  line-height:1.7;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  font-feature-settings:"ss01","cv01";
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease);
}
a{color:inherit;text-decoration:none;transition:color var(--dur-fast) var(--ease)}
img{max-width:100%;height:auto;display:block}
ul,ol{list-style:none}
button,input,select,textarea{font-family:var(--font);color:inherit}
button{cursor:pointer;border:none;background:none}

/* Numeric tabular for prices */
.num,.market-val,.price-val,.ticker-item .val{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}

/* ====================================================
   3. TOPBAR
   ==================================================== */
.topbar{
  background:var(--bg-soft);
  border-bottom:1px solid var(--border-soft);
  font-size:12px;
  height:var(--topbar-h);
  display:flex;
  align-items:center;
  position:relative;
  z-index:50;
}
.topbar .inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  width:100%;
}
.topbar-left{display:flex;align-items:center;gap:12px;color:var(--text3);font-size:11.5px;white-space:nowrap}
.topbar-left .date-dot{width:3px;height:3px;background:var(--gray-300);border-radius:50%}
.topbar-ticker{flex:1;overflow:hidden;max-width:680px;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
html[data-theme="dark"] .topbar-ticker{mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.ticker-wrap{display:flex;gap:28px;animation:ticker 40s linear infinite;white-space:nowrap;width:max-content}
.topbar-ticker:hover .ticker-wrap{animation-play-state:paused}
.ticker-item{display:inline-flex;align-items:center;gap:6px;font-size:12px}
.ticker-item .name{color:var(--text3);font-weight:500}
.ticker-item .val{font-weight:700;color:var(--text);font-size:12.5px}
.ticker-item .chg{font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:1px}
.ticker-item .chg.up{color:var(--green)}
.ticker-item .chg.down{color:var(--red)}
@keyframes ticker{
  0%{transform:translateX(0)}
  100%{transform:translateX(-50%)}
}
.topbar-right{display:flex;align-items:center;gap:14px;color:var(--text3);font-size:11.5px}
.topbar-link{color:var(--text3);transition:color var(--dur-fast);font-weight:500;cursor:pointer;font-size:11.5px}
.topbar-link:hover{color:var(--text)}
.topbar-link.btn-link{padding:4px 10px;border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border);color:var(--text2)}
.topbar-link.btn-link:hover{border-color:var(--green);color:var(--green)}
.topbar-divider{width:1px;height:14px;background:var(--border)}
.theme-toggle{width:28px;height:28px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;color:var(--text3);transition:all var(--dur-fast)}
.theme-toggle:hover{background:var(--bg-card);color:var(--text)}
.theme-toggle svg{width:15px;height:15px}
.sun-icon{display:none}
html[data-theme="dark"] .sun-icon{display:block}
html[data-theme="dark"] .moon-icon{display:none}

/* ====================================================
   4. HEADER
   ==================================================== */
header{
  background:var(--bg);
  border-bottom:1px solid var(--border-soft);
  position:sticky;
  top:0;
  z-index:100;
  backdrop-filter:saturate(180%) blur(12px);
  -webkit-backdrop-filter:saturate(180%) blur(12px);
  transition:box-shadow var(--dur) var(--ease),background-color var(--dur);
}
header.scrolled{box-shadow:var(--shadow-sm);background:rgba(255,255,255,.85)}
html[data-theme="dark"] header.scrolled{background:rgba(9,9,11,.85)}
.header-inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 24px;
  display:flex;
  align-items:center;
  gap:32px;
  height:var(--header-h);
}
.logo{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800;color:var(--text);letter-spacing:-.02em;white-space:nowrap;flex-shrink:0}
.logo a{display:flex;align-items:center;gap:10px;color:var(--text)}
.logo-mark{
  width:32px;height:32px;
  background:linear-gradient(135deg,var(--green) 0%,var(--green-dark) 100%);
  border-radius:8px;
  display:inline-flex;align-items:center;justify-content:center;
  color:#fff;font-size:18px;font-weight:800;
  box-shadow:0 4px 12px rgba(16,185,129,.25);
}
.logo-text{display:flex;align-items:baseline;gap:2px}
.logo-text .accent{color:var(--green)}
.custom-logo{max-height:36px;width:auto}

nav.primary-nav{display:flex;align-items:center;flex:1;justify-content:center}
nav.primary-nav ul{display:flex;align-items:center;gap:2px}
nav.primary-nav li{list-style:none}
nav.primary-nav a{
  padding:8px 14px;
  font-size:13.5px;
  font-weight:500;
  color:var(--text2);
  border-radius:var(--radius-sm);
  transition:all var(--dur-fast) var(--ease);
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  position:relative;
}
nav.primary-nav a:hover{color:var(--text);background:var(--bg-soft)}
nav.primary-nav .current-menu-item>a,
nav.primary-nav .current-menu-ancestor>a{color:var(--green);background:var(--green-tint);font-weight:600}
nav.primary-nav .menu-item-has-children > a::after{content:'▾';font-size:9px;margin-right:4px;opacity:.6}

.header-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}

/* Search */
.search-trigger{
  width:36px;height:36px;
  border-radius:var(--radius-sm);
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--text3);
  background:var(--bg-soft);
  border:1px solid var(--border-soft);
  transition:all var(--dur-fast) var(--ease);
}
.search-trigger:hover{color:var(--text);background:var(--bg-card);border-color:var(--border)}
.search-trigger svg{width:16px;height:16px}

.search-cmd{
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 14px 7px 8px;
  background:var(--bg-soft);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  color:var(--text3);
  font-size:12.5px;
  transition:all var(--dur-fast) var(--ease);
  min-width:200px;
}
.search-cmd:hover{border-color:var(--border);background:var(--bg-card)}
.search-cmd .kbd{margin-right:auto;padding:1px 6px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;font-size:10px;font-family:var(--font-mono);color:var(--text3)}

/* Buttons */
.btn{
  padding:9px 18px;
  border-radius:var(--radius-sm);
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  font-family:var(--font);
  border:none;
  transition:all var(--dur-fast) var(--ease);
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
}
.btn-primary{
  background:var(--green);
  color:#fff;
  box-shadow:0 1px 2px rgba(16,185,129,.3),0 4px 12px rgba(16,185,129,.18);
}
.btn-primary:hover{background:var(--green-mid);transform:translateY(-1px);box-shadow:0 2px 4px rgba(16,185,129,.4),0 8px 16px rgba(16,185,129,.25)}
.btn-primary:active{transform:translateY(0)}
.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text2)}
.btn-outline:hover{border-color:var(--text);color:var(--text);background:var(--bg-soft)}
.btn-ghost{background:transparent;color:var(--text2);padding:8px 12px}
.btn-ghost:hover{background:var(--bg-soft);color:var(--text)}
.btn-sm{padding:6px 12px;font-size:12px}

/* Mobile toggle */
.mobile-toggle{display:none;flex-direction:column;justify-content:center;gap:4px;width:36px;height:36px;background:none;border:none;cursor:pointer;padding:0;border-radius:var(--radius-sm);transition:background var(--dur-fast)}
.mobile-toggle:hover{background:var(--bg-soft)}
.mobile-toggle span{display:block;width:20px;height:2px;background:var(--text);border-radius:2px;transition:all var(--dur) var(--ease);margin:0 auto}
.mobile-toggle.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.mobile-toggle.open span:nth-child(2){opacity:0}
.mobile-toggle.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
#eqt-mobile-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:99;backdrop-filter:blur(4px);opacity:0;transition:opacity var(--dur)}
#eqt-mobile-overlay.open{display:block;opacity:1}

/* Categories bar */
.cats-bar{
  background:var(--bg);
  border-bottom:1px solid var(--border-soft);
  position:sticky;
  top:var(--header-h);
  z-index:49;
}
.cats-inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 24px;
  display:flex;
  gap:4px;
  overflow-x:auto;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.cats-inner::-webkit-scrollbar{display:none}
.cat-link{
  padding:12px 14px;
  font-size:13px;
  font-weight:500;
  color:var(--text2);
  white-space:nowrap;
  border-bottom:2px solid transparent;
  transition:all var(--dur-fast) var(--ease);
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-bottom:-1px;
}
.cat-link:hover{color:var(--text)}
.cat-link.active{color:var(--green);border-bottom-color:var(--green);font-weight:600}
.cat-link .cat-dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.6}

/* ====================================================
   5. BREAKING NEWS
   ==================================================== */
.breaking{
  background:linear-gradient(90deg,#dc2626 0%,#ef4444 50%,#f87171 100%);
  color:#fff;
  padding:0;
  position:relative;
  overflow:hidden;
}
html[data-theme="dark"] .breaking{background:linear-gradient(90deg,#7f1d1d 0%,#991b1b 50%,#b91c1c 100%)}
.breaking::before{
  content:'';
  position:absolute;inset:0;
  background:radial-gradient(circle at 0% 50%,rgba(255,255,255,.15),transparent 50%);
  pointer-events:none;
}
.breaking .inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 24px;
  display:flex;
  align-items:center;
  gap:14px;
  height:40px;
  position:relative;
  overflow:hidden;
}
.breaking-tag{
  background:rgba(0,0,0,.25);
  padding:4px 10px;
  border-radius:var(--radius-sm);
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  gap:5px;
  flex-shrink:0;
  letter-spacing:.02em;
}
.breaking-tag .pulse-dot{
  width:7px;height:7px;
  background:#fff;
  border-radius:50%;
  animation:eqt-pulse 1.6s ease-in-out infinite;
}
@keyframes eqt-pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.5;transform:scale(1.3)}
}
.breaking-scroll{flex:1;overflow:hidden}
.breaking-text{
  display:inline-block;
  white-space:nowrap;
  animation:eqt-breaking-scroll var(--breaking-speed,32s) linear infinite;
  font-size:13px;
  font-weight:500;
}
.breaking-text a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.3);text-underline-offset:3px}
.breaking-text a:hover{text-decoration-color:#fff}
.eqt-breaking-paused .breaking-text{animation-play-state:paused}
@keyframes eqt-breaking-scroll{
  0%{transform:translateX(100%)}
  100%{transform:translateX(-100%)}
}

/* ====================================================
   6. LAYOUT
   ==================================================== */
.main{
  max-width:var(--maxw);
  margin:0 auto;
  padding:32px 24px;
  display:grid;
  grid-template-columns:1fr 340px;
  gap:32px;
  width:100%;
  flex:1;
}
.main.full-width{grid-template-columns:1fr;max-width:1140px}
.main.no-sidebar{grid-template-columns:1fr;max-width:1100px}
.content{min-width:0}
.sidebar{min-width:0}

/* ====================================================
   7. SECTION HEADERS
   ==================================================== */
.sec-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:20px;
  padding-bottom:0;
  gap:16px;
}
.sec-title{
  font-size:18px;
  font-weight:700;
  color:var(--text);
  display:flex;
  align-items:center;
  gap:10px;
  letter-spacing:-.01em;
}
.sec-title::before{
  content:'';
  display:inline-block;
  width:4px;
  height:18px;
  background:linear-gradient(180deg,var(--green),var(--green-mid));
  border-radius:2px;
}
.sec-title .badge-count{font-size:11px;font-weight:600;color:var(--text3);background:var(--bg-soft);padding:2px 8px;border-radius:99px;border:1px solid var(--border-soft)}
.sec-more{
  font-size:12px;
  color:var(--text3);
  font-weight:600;
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:6px 10px;
  border-radius:var(--radius-sm);
  transition:all var(--dur-fast);
}
.sec-more:hover{color:var(--green);background:var(--green-tint)}
.sec-more svg{width:14px;height:14px;transition:transform var(--dur-fast)}
.sec-more:hover svg{transform:translateX(-3px)}

/* Section with eyebrow + title (Stripe-style) */
.section-eyebrow{
  display:inline-flex;align-items:center;gap:6px;
  font-size:11.5px;font-weight:600;color:var(--green);
  background:var(--green-tint);
  padding:4px 10px;border-radius:99px;
  margin-bottom:10px;
  border:1px solid rgba(16,185,129,.2);
}
.section-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--green);animation:eqt-pulse 2s ease-in-out infinite}

/* ====================================================
   8. HERO GRID
   ==================================================== */
.hero-grid{
  display:grid;
  grid-template-columns:1.7fr 1fr;
  gap:20px;
  margin-bottom:36px;
}
.hero-main{
  position:relative;
  border-radius:var(--radius-lg);
  overflow:hidden;
  background:var(--gray-900);
  min-height:440px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  cursor:pointer;
  isolation:isolate;
  border:1px solid var(--border-soft);
  transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.hero-main:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.hero-img{
  position:absolute;inset:0;
  background:linear-gradient(135deg,#18181b 0%,#374151 50%,#064e3b 100%);
  opacity:1;background-size:cover;background-position:center;
  transition:transform var(--dur-slow) var(--ease);
}
.hero-main:hover .hero-img{transform:scale(1.04)}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.5) 40%,rgba(0,0,0,.1) 70%,transparent 100%);
}
.hero-content{position:relative;padding:28px;color:#fff}
.hero-cat{
  display:inline-flex;align-items:center;gap:5px;
  background:var(--green);
  color:#fff;
  font-size:11px;
  font-weight:700;
  padding:4px 10px;
  border-radius:var(--radius-sm);
  margin-bottom:14px;
  letter-spacing:.02em;
}
.hero-title{
  color:#fff;
  font-size:26px;
  font-weight:800;
  line-height:1.45;
  margin-bottom:12px;
  letter-spacing:-.02em;
}
.hero-excerpt{color:rgba(255,255,255,.75);font-size:14px;line-height:1.7;margin-bottom:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hero-meta{
  color:rgba(255,255,255,.6);
  font-size:12px;
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  align-items:center;
}
.hero-meta span{display:inline-flex;align-items:center;gap:4px}
.hero-meta svg{width:13px;height:13px;opacity:.8}

.hero-subs{display:flex;flex-direction:column;gap:16px}
.hero-sub{
  position:relative;
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  overflow:hidden;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  flex:1;
  transition:all var(--dur) var(--ease);
  min-height:210px;
}
.hero-sub:hover{border-color:var(--green);transform:translateY(-1px);box-shadow:var(--shadow-md)}
.hero-sub-img{
  height:130px;
  background:linear-gradient(135deg,#1f2937,#065f46);
  position:relative;overflow:hidden;
  background-size:cover;background-position:center;
}
.hero-sub-img::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(0,0,0,.5),transparent 60%);
}
.hero-sub-body{padding:14px 16px;flex:1;display:flex;flex-direction:column;justify-content:space-between}
.hero-sub-cat{
  font-size:11px;
  font-weight:700;
  color:var(--green);
  margin-bottom:6px;
  display:inline-flex;align-items:center;gap:4px;
}
.hero-sub-title{
  font-size:14.5px;
  font-weight:700;
  line-height:1.55;
  color:var(--text);
  margin-bottom:6px;
  letter-spacing:-.01em;
}
.hero-sub-meta{font-size:11px;color:var(--text3);display:flex;gap:10px;align-items:center}

/* ====================================================
   9. MARKETS STRIP (Sidebar-style market bar)
   ==================================================== */
.markets-bar{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  padding:18px 20px;
  margin-bottom:32px;
}
.markets-title{
  font-size:13px;
  font-weight:700;
  color:var(--text);
  margin-bottom:14px;
  display:flex;
  align-items:center;
  gap:8px;
  letter-spacing:-.01em;
}
.markets-title .live-badge{
  display:inline-flex;align-items:center;gap:5px;
  font-size:10px;font-weight:700;color:var(--green);
  background:var(--green-tint);
  padding:3px 8px;border-radius:99px;
  border:1px solid rgba(16,185,129,.2);
}
.markets-title .live-badge .pulse-dot{
  width:6px;height:6px;border-radius:50%;background:var(--green);
  animation:eqt-pulse 1.8s ease-in-out infinite;
}
.markets-title .updated{margin-right:auto;font-size:11px;color:var(--text3);font-weight:400}
.markets-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--border-soft);border-radius:var(--radius);overflow:hidden}
.market-card{
  background:var(--bg-card);
  padding:14px 16px;
  cursor:pointer;
  transition:background var(--dur-fast);
  position:relative;
}
.market-card:hover{background:var(--bg-soft)}
.market-name{font-size:11px;color:var(--text3);margin-bottom:4px;font-weight:500}
.market-val{font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em}
.market-chg{font-size:11px;font-weight:600;margin-top:3px;display:inline-flex;align-items:center;gap:2px}
.market-chg.up{color:var(--green)}
.market-chg.down{color:var(--red)}
.market-card .spark{position:absolute;bottom:8px;left:8px;width:50px;height:18px;opacity:.4;pointer-events:none}

/* ====================================================
   10. NEWS CARDS GRID
   ==================================================== */
.news-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:36px}
.news-card{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  overflow:hidden;
  cursor:pointer;
  transition:all var(--dur) var(--ease);
  display:flex;
  flex-direction:column;
  position:relative;
}
.news-card:hover{
  border-color:var(--border);
  transform:translateY(-2px);
  box-shadow:var(--shadow-md);
}
.news-card-img{
  height:180px;
  background:linear-gradient(135deg,#e4e4e7,#d4d4d8);
  position:relative;
  background-size:cover;background-position:center;
  overflow:hidden;
}
.news-card-img::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(0,0,0,.15),transparent 50%);
}
.news-card-img .img-cat{
  position:absolute;top:12px;right:12px;
  background:rgba(255,255,255,.95);
  color:var(--text);
  font-size:11px;font-weight:600;
  padding:4px 10px;border-radius:99px;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  display:inline-flex;align-items:center;gap:5px;
}
.news-card-img .img-cat .dot{width:6px;height:6px;border-radius:50%;background:var(--green)}
.news-card-body{padding:18px;flex:1;display:flex;flex-direction:column}
.news-card-title{
  font-size:16px;
  font-weight:700;
  line-height:1.6;
  color:var(--text);
  margin-bottom:8px;
  letter-spacing:-.01em;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.news-card-summary{
  font-size:13px;
  color:var(--text3);
  line-height:1.7;
  margin-bottom:12px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  flex:1;
}
.news-card-meta{
  font-size:11px;
  color:var(--text3);
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
  padding-top:12px;
  border-top:1px solid var(--border-soft);
}
.news-card-meta span{display:inline-flex;align-items:center;gap:4px}
.news-card-meta svg{width:12px;height:12px;opacity:.7}

/* ====================================================
   11. NEWS LIST
   ==================================================== */
.news-list{display:flex;flex-direction:column;gap:14px;margin-bottom:32px}
.news-row{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  padding:14px;
  display:flex;
  gap:16px;
  cursor:pointer;
  transition:all var(--dur-fast) var(--ease);
  align-items:stretch;
}
.news-row:hover{
  border-color:var(--border);
  background:var(--bg-soft);
  transform:translateX(-2px);
}
.news-row-img{
  width:140px;height:100px;
  background:linear-gradient(135deg,#e4e4e7,#d4d4d8);
  border-radius:var(--radius-sm);
  flex-shrink:0;
  background-size:cover;background-position:center;
  position:relative;
  overflow:hidden;
}
.news-row-body{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:space-between}
.news-row-cat{font-size:11px;font-weight:700;color:var(--green);margin-bottom:6px;display:inline-flex;align-items:center;gap:4px}
.news-row-title{
  font-size:15px;font-weight:700;line-height:1.6;color:var(--text);
  margin-bottom:6px;letter-spacing:-.01em;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.news-row-meta{font-size:11px;color:var(--text3);display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.news-row-meta span{display:inline-flex;align-items:center;gap:4px}
.news-row-meta svg{width:12px;height:12px;opacity:.7}
.news-row-actions{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.news-tag{
  background:var(--bg-soft);
  border:1px solid var(--border-soft);
  border-radius:99px;
  font-size:10.5px;
  padding:3px 10px;
  color:var(--text3);
  font-weight:500;
  transition:all var(--dur-fast);
}
.news-tag:hover{background:var(--green-tint);border-color:rgba(16,185,129,.3);color:var(--green)}

/* ====================================================
   12. AI ASSISTANT
   ==================================================== */
.ai-section{
  background:
    radial-gradient(ellipse at top right,rgba(16,185,129,.08),transparent 60%),
    radial-gradient(ellipse at bottom left,rgba(59,130,246,.06),transparent 60%),
    var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-xl);
  padding:28px;
  margin-bottom:36px;
  position:relative;
  overflow:hidden;
}
.ai-section::before{
  content:'';position:absolute;top:0;right:0;left:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(16,185,129,.3),transparent);
}
.ai-head{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.ai-badge{
  background:linear-gradient(135deg,var(--green) 0%,var(--green-dark) 100%);
  color:#fff;
  border-radius:99px;
  padding:5px 12px;
  font-size:11px;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  gap:5px;
  box-shadow:0 2px 8px rgba(16,185,129,.25);
}
.ai-title{font-size:20px;font-weight:800;color:var(--text);letter-spacing:-.02em}
.ai-subtitle{color:var(--text3);font-size:13px;margin-right:auto}
.ai-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.ai-card{
  background:var(--bg);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  padding:16px;
  cursor:pointer;
  transition:all var(--dur-fast) var(--ease);
  text-align:right;
}
.ai-card:hover{
  border-color:var(--green);
  background:var(--green-tint);
  transform:translateY(-2px);
  box-shadow:var(--shadow-sm);
}
.ai-card-icon{
  width:36px;height:36px;
  background:var(--green-tint);
  border-radius:var(--radius-sm);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:10px;
  color:var(--green);
  font-size:18px;
  transition:all var(--dur-fast);
}
.ai-card:hover .ai-card-icon{background:var(--green);color:#fff}
.ai-card-title{font-size:13px;font-weight:700;margin-bottom:4px;color:var(--text)}
.ai-card-desc{font-size:11px;color:var(--text3);line-height:1.6}
.ai-chat-box{
  display:flex;gap:8px;
  background:var(--bg);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:6px;
  transition:border-color var(--dur-fast);
}
.ai-chat-box:focus-within{border-color:var(--green);box-shadow:var(--shadow-glow)}
.ai-input{
  flex:1;
  background:transparent;
  border:none;outline:none;
  font-size:13.5px;
  color:var(--text);
  padding:10px 12px;
  font-family:var(--font);
}
.ai-input::placeholder{color:var(--text3)}
.ai-submit{
  background:var(--green);
  color:#fff;
  border-radius:var(--radius-sm);
  padding:0 18px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  font-family:var(--font);
  transition:background var(--dur-fast);
  display:inline-flex;align-items:center;gap:5px;
}
.ai-submit:hover{background:var(--green-mid)}
.ai-response-box{
  margin-top:14px;
  background:var(--bg);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  padding:14px 16px;
  font-size:13px;
  line-height:1.8;
  color:var(--text2);
  display:none;
}
.ai-response-box.show{display:block;animation:eqt-fade-up var(--dur-slow) var(--ease)}
@keyframes eqt-fade-up{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}
.ai-response-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-weight:700;color:var(--text);font-size:13px}
.ai-response-head .ai-avatar{width:24px;height:24px;background:linear-gradient(135deg,var(--green),var(--green-dark));border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:12px}
.ai-suggestions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.ai-suggestion-chip{
  background:var(--bg-soft);
  border:1px solid var(--border-soft);
  border-radius:99px;
  padding:4px 10px;
  font-size:11px;
  color:var(--text3);
  cursor:pointer;
  transition:all var(--dur-fast);
}
.ai-suggestion-chip:hover{border-color:var(--green);color:var(--green);background:var(--green-tint)}

/* ====================================================
   13. CALENDAR
   ==================================================== */
.calendar-box{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  padding:8px;
  margin-bottom:32px;
}
.calendar-item{
  display:flex;gap:14px;
  padding:14px 12px;
  border-radius:var(--radius-sm);
  transition:background var(--dur-fast);
  align-items:flex-start;
}
.calendar-item:hover{background:var(--bg-soft)}
.calendar-item + .calendar-item{border-top:1px solid var(--border-soft)}
.cal-date{
  background:var(--bg-soft);
  color:var(--text);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  width:52px;height:54px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  flex-shrink:0;
}
.cal-day{font-size:18px;font-weight:800;line-height:1;letter-spacing:-.02em}
.cal-month{font-size:10px;color:var(--text3);margin-top:2px;font-weight:500}
.cal-body{flex:1;min-width:0}
.cal-event{font-size:13.5px;font-weight:700;color:var(--text);margin-bottom:3px;letter-spacing:-.01em}
.cal-desc{font-size:12px;color:var(--text3);line-height:1.6}
.cal-impact{
  font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:99px;
  display:inline-block;margin-top:6px;letter-spacing:.02em;
}
.cal-impact.high{background:var(--red-light);color:var(--red)}
.cal-impact.med{background:var(--gold-light);color:var(--gold)}
.cal-impact.low{background:var(--blue-light);color:var(--blue)}
.cal-time{font-size:11px;color:var(--text3);font-weight:600;margin-right:6px}

/* ====================================================
   14. SIDEBAR WIDGETS
   ==================================================== */
.widget{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  padding:20px;
  margin-bottom:20px;
}
.widget-title{
  font-size:14px;
  font-weight:700;
  color:var(--text);
  margin-bottom:14px;
  display:flex;align-items:center;gap:8px;
  letter-spacing:-.01em;
}
.widget-title::before{
  content:'';display:inline-block;
  width:4px;height:14px;
  background:linear-gradient(180deg,var(--green),var(--green-mid));
  border-radius:2px;
}
.widget ul{list-style:none}
.widget select,.widget input[type="text"],.widget input[type="email"]{
  width:100%;padding:10px 12px;
  border:1px solid var(--border);border-radius:var(--radius-sm);
  font-family:var(--font);background:var(--bg);color:var(--text);font-size:13px;
}
.widget select:focus,.widget input:focus{outline:none;border-color:var(--green);box-shadow:var(--shadow-glow)}

/* Live prices widget */
.price-table{width:100%;border-collapse:collapse}
.price-table tr{border-bottom:1px solid var(--border-soft)}
.price-table tr:last-child{border-bottom:none}
.price-table td{padding:11px 4px;font-size:13px;vertical-align:middle}
.price-name-cell{display:flex;align-items:center;gap:10px}
.price-icon{
  width:30px;height:30px;
  border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:700;flex-shrink:0;
}
.price-icon.gold{background:var(--gold-light);color:var(--gold)}
.price-icon.dollar{background:var(--blue-light);color:var(--blue)}
.price-icon.btc{background:#fff7ed;color:#f7931a}
.price-icon.bourse{background:var(--green-tint);color:var(--green)}
.price-icon.coin{background:var(--gold-light);color:#d97706}
html[data-theme="dark"] .price-icon.btc{background:rgba(247,147,26,.15)}
.price-name{color:var(--text2);font-weight:500;font-size:12.5px}
.price-val{font-weight:700;color:var(--text);text-align:left;font-size:13px;letter-spacing:-.01em}
.price-chg{text-align:left;font-size:11px;font-weight:700}
.price-chg.up{color:var(--green)}
.price-chg.down{color:var(--red)}

/* Popular news widget */
.popular-item{
  display:flex;gap:12px;
  padding:12px 0;
  cursor:pointer;
  transition:background var(--dur-fast);
}
.popular-item:hover .popular-title{color:var(--green)}
.popular-item + .popular-item{border-top:1px solid var(--border-soft)}
.popular-num{
  font-size:20px;
  font-weight:800;
  color:var(--gray-300);
  min-width:24px;
  line-height:1;
  font-family:var(--font-mono);
  letter-spacing:-.04em;
}
.popular-item:hover .popular-num{color:var(--green)}
.popular-title{font-size:13px;font-weight:600;line-height:1.55;color:var(--text);transition:color var(--dur-fast)}
.popular-meta{font-size:11px;color:var(--text3);margin-top:4px;display:flex;gap:8px;align-items:center}

/* Newsletter widget */
.newsletter-box{
  background:
    radial-gradient(ellipse at top right,rgba(16,185,129,.1),transparent 70%),
    var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  padding:20px;
  margin-bottom:20px;
  position:relative;overflow:hidden;
}
.nl-title{font-size:15px;font-weight:700;color:var(--text);margin-bottom:6px;letter-spacing:-.01em}
.nl-desc{font-size:12px;color:var(--text3);margin-bottom:14px;line-height:1.7}
.nl-form{display:flex;flex-direction:column;gap:8px}
.nl-input{
  padding:11px 14px;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  font-size:13px;
  font-family:var(--font);
  background:var(--bg);
  color:var(--text);
  transition:all var(--dur-fast);
}
.nl-input:focus{outline:none;border-color:var(--green);box-shadow:var(--shadow-glow)}
.nl-btn{
  display:flex;align-items:center;justify-content:center;gap:6px;
  width:100%;
  background:var(--green);
  color:#fff;
  border:none;border-radius:var(--radius-sm);
  padding:11px;font-size:13px;font-weight:700;
  cursor:pointer;font-family:var(--font);
  transition:all var(--dur-fast);
}
.nl-btn:hover{background:var(--green-mid);transform:translateY(-1px);box-shadow:var(--shadow-green)}

/* VIP box */
.vip-box{
  background:
    linear-gradient(135deg,rgba(245,158,11,.08),rgba(245,158,11,.02)),
    var(--bg-card);
  border:1px solid rgba(245,158,11,.2);
  border-radius:var(--radius-lg);
  padding:20px;margin-bottom:20px;
  text-align:center;
}
.vip-tag{
  background:linear-gradient(135deg,var(--gold),#d97706);
  color:#fff;
  font-size:11px;font-weight:700;
  padding:4px 12px;border-radius:99px;
  display:inline-block;margin-bottom:12px;
  box-shadow:0 2px 8px rgba(245,158,11,.3);
}
.vip-title{font-size:15px;font-weight:700;margin-bottom:8px;color:var(--text);letter-spacing:-.01em}
.vip-desc{font-size:12px;color:var(--text3);line-height:1.7;margin-bottom:14px}
.vip-btn{
  display:block;
  background:var(--text);
  color:var(--bg);
  border-radius:var(--radius-sm);
  padding:11px;font-size:13px;font-weight:700;
  text-align:center;cursor:pointer;
  transition:all var(--dur-fast);
}
.vip-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}

/* Tags cloud */
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{
  background:var(--bg-soft);
  border:1px solid var(--border-soft);
  border-radius:99px;
  padding:5px 11px;
  font-size:12px;
  color:var(--text2);
  cursor:pointer;
  transition:all var(--dur-fast);
  font-weight:500;
}
.tag:hover{background:var(--green-tint);border-color:rgba(16,185,129,.3);color:var(--green);transform:translateY(-1px)}

/* Quick converter */
.qc-box{display:flex;flex-direction:column;gap:10px}
.qc-row{display:flex;flex-direction:column;gap:4px}
.qc-label{font-size:11px;color:var(--text3);font-weight:600}
.qc-input{
  width:100%;padding:10px 12px;
  border:1px solid var(--border);border-radius:var(--radius-sm);
  font-size:14px;font-family:var(--font);color:var(--text);
  background:var(--bg);
  font-variant-numeric:tabular-nums;
}
.qc-input:focus{outline:none;border-color:var(--green);box-shadow:var(--shadow-glow)}
.qc-swap{text-align:center;font-size:18px;color:var(--green);margin:-2px 0}
.qc-info{font-size:11px;color:var(--text3);text-align:center;font-weight:500}

/* ====================================================
   15. FOOTER
   ==================================================== */
footer{
  background:var(--bg-soft);
  border-top:1px solid var(--border-soft);
  padding:56px 0 0;
  margin-top:auto;
}
.footer-inner{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:40px}
.footer-brand .footer-logo{
  font-size:20px;font-weight:800;color:var(--text);
  margin-bottom:14px;letter-spacing:-.02em;
  display:flex;align-items:center;gap:8px;
}
.footer-brand .footer-logo .logo-mark{width:28px;height:28px;font-size:16px}
.footer-desc{font-size:13px;line-height:1.8;color:var(--text3);margin-bottom:18px;max-width:320px}
.footer-socials{display:flex;gap:8px}
.social-btn{
  width:34px;height:34px;
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  display:flex;align-items:center;justify-content:center;
  font-size:14px;cursor:pointer;
  transition:all var(--dur-fast);
  color:var(--text3);
}
.social-btn:hover{background:var(--green);color:#fff;border-color:var(--green);transform:translateY(-2px)}
.footer-col-title{font-size:13px;font-weight:700;color:var(--text);margin-bottom:14px;letter-spacing:-.01em}
.footer-link{
  display:block;
  font-size:12.5px;color:var(--text3);
  margin-bottom:9px;
  transition:color var(--dur-fast);
  cursor:pointer;
}
.footer-link:hover{color:var(--green)}
.footer-bottom{
  border-top:1px solid var(--border-soft);
  padding:20px 0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:12px;color:var(--text3);
  flex-wrap:wrap;gap:8px;
}
.footer-bottom a{color:var(--text2);transition:color var(--dur-fast)}
.footer-bottom a:hover{color:var(--green)}

/* ====================================================
   16. SINGLE POST
   ==================================================== */
.single-wrap{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  padding:32px;
  margin-bottom:24px;
}
.single-cat{
  display:inline-flex;align-items:center;gap:5px;
  background:var(--green-tint);
  color:var(--green);
  font-size:11.5px;font-weight:700;
  padding:4px 10px;border-radius:99px;
  margin-bottom:14px;
  border:1px solid rgba(16,185,129,.2);
}
.single-title{
  font-size:30px;font-weight:800;color:var(--text);
  line-height:1.4;margin-bottom:14px;
  letter-spacing:-.025em;
}
.single-lead{
  font-size:16px;color:var(--text2);
  line-height:1.8;margin-bottom:20px;
  font-weight:500;
}
.single-meta{
  display:flex;gap:18px;color:var(--text3);
  font-size:12.5px;margin-bottom:24px;flex-wrap:wrap;
  align-items:center;
  padding-bottom:20px;
  border-bottom:1px solid var(--border-soft);
}
.single-meta .meta-item{display:inline-flex;align-items:center;gap:5px}
.single-meta svg{width:14px;height:14px;opacity:.7}
.single-meta .author-mini{display:inline-flex;align-items:center;gap:8px}
.single-meta .author-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--green),var(--green-dark));display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700}
.single-thumb{
  border-radius:var(--radius-lg);
  overflow:hidden;margin-bottom:24px;
  position:relative;
  max-height:480px;
}
.single-thumb img{width:100%;object-fit:cover}
.single-thumb-caption{font-size:12px;color:var(--text3);padding:10px 4px;text-align:center}
.single-content{font-size:16px;line-height:2;color:var(--text)}
.single-content p{margin-bottom:18px}
.single-content h2,.single-content h3,.single-content h4{color:var(--text);margin:32px 0 14px;letter-spacing:-.02em;line-height:1.4}
.single-content h2{font-size:24px;font-weight:800}
.single-content h3{font-size:19px;font-weight:700}
.single-content img{border-radius:var(--radius);margin:20px 0}
.single-content blockquote{
  border-right:3px solid var(--green);
  padding:14px 20px;
  background:var(--green-tint);
  border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  margin:24px 0;
  font-size:15px;
  color:var(--text2);
  font-style:italic;
}
.single-content a{color:var(--green);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(16,185,129,.4)}
.single-content a:hover{text-decoration-color:var(--green)}
.single-content ul,.single-content ol{margin:16px 0;padding-right:24px}
.single-content ul li,.single-content ol li{margin-bottom:8px}
.single-content code{background:var(--bg-soft);padding:2px 6px;border-radius:4px;font-family:var(--font-mono);font-size:13px;color:var(--green-mid)}
.single-content pre{background:var(--bg-soft);padding:14px;border-radius:var(--radius);overflow-x:auto;margin:16px 0;border:1px solid var(--border-soft)}
.single-content pre code{background:none;padding:0}
.single-tags{
  display:flex;gap:8px;flex-wrap:wrap;
  margin-top:28px;padding-top:20px;
  border-top:1px solid var(--border-soft);
  align-items:center;
}
.single-tags-label{font-size:12px;color:var(--text3);font-weight:600;margin-left:4px}

/* Share floating */
.share-floating{
  position:fixed;left:16px;top:50%;
  transform:translateY(-50%);
  display:flex;flex-direction:column;gap:8px;
  z-index:80;
}
.share-floating .social-btn{
  background:var(--bg-card);
  border:1px solid var(--border);
  box-shadow:var(--shadow-sm);
}
.share-box{display:flex;gap:8px;align-items:center;margin-top:20px;flex-wrap:wrap}
.share-box .share-label{font-size:12px;color:var(--text3);font-weight:600}

/* TOC */
.toc-box{
  background:var(--bg-soft);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  padding:16px 18px;
  margin-bottom:24px;
}
.toc-title{cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:13px;color:var(--text)}
.toc-arrow{transition:transform var(--dur-fast)}
.toc-box.collapsed .toc-list{display:none}
.toc-box.collapsed .toc-arrow{transform:rotate(-90deg)}
.toc-list{list-style:none;display:flex;flex-direction:column;gap:6px;margin-top:10px}
.toc-list a{font-size:13px;color:var(--text2);transition:color var(--dur-fast)}
.toc-list a:hover,.toc-list a.active{color:var(--green);font-weight:600}
.toc-list li.toc-h3{padding-right:16px}

/* Author box */
.author-box{
  display:flex;gap:16px;align-items:flex-start;
  padding:20px;
  background:var(--bg-soft);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  margin-top:24px;
}
.author-box .author-avatar{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--green),var(--green-dark));display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:22px;font-weight:700;flex-shrink:0}
.author-name{font-weight:700;color:var(--text);margin-bottom:4px;font-size:15px}
.author-bio{font-size:13px;color:var(--text2);line-height:1.7;margin-bottom:8px}
.author-meta-row{display:flex;gap:14px;font-size:12px;color:var(--text3)}
.author-meta-row a{color:var(--green)}

/* Related posts */
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}
.related-card{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  overflow:hidden;cursor:pointer;
  transition:all var(--dur-fast);
  display:flex;flex-direction:column;
}
.related-card:hover{border-color:var(--border);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.related-card-img{height:130px;background:linear-gradient(135deg,#e4e4e7,#d4d4d8);background-size:cover;background-position:center}
.related-card-body{padding:14px;flex:1}
.related-card-cat{font-size:11px;color:var(--green);font-weight:700;margin-bottom:6px}
.related-card-title{font-size:13.5px;font-weight:600;line-height:1.6;color:var(--text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.related-card-meta{font-size:11px;color:var(--text3);margin-top:8px}

/* ====================================================
   17. PAGINATION
   ==================================================== */
.pagination{display:flex;gap:6px;justify-content:center;margin:32px 0;flex-wrap:wrap}
.pagination a,.pagination span{
  padding:8px 14px;
  border:1px solid var(--border-soft);
  border-radius:var(--radius-sm);
  font-size:13px;color:var(--text2);
  background:var(--bg-card);
  transition:all var(--dur-fast);
  font-weight:500;
}
.pagination a:hover{border-color:var(--green);color:var(--green)}
.pagination .current{background:var(--green);color:#fff;border-color:var(--green);font-weight:700}

/* ====================================================
   18. NO RESULTS / 404
   ==================================================== */
.no-results{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  padding:60px 40px;
  text-align:center;margin-bottom:24px;
}
.no-results h2{font-size:24px;font-weight:800;color:var(--text);margin-bottom:10px;letter-spacing:-.02em}
.no-results p{color:var(--text3);font-size:14px;line-height:1.7;max-width:480px;margin:0 auto}
.error-404 .error-code{
  font-size:96px;font-weight:900;
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  line-height:1;margin-bottom:20px;letter-spacing:-.05em;
}

/* ====================================================
   19. PAGE TITLE BAR
   ==================================================== */
.page-title-bar{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-soft)}
.page-title-bar h1{font-size:28px;font-weight:800;color:var(--text);letter-spacing:-.025em;line-height:1.3}
.page-title-bar p{color:var(--text3);font-size:14px;margin-top:6px;line-height:1.6}

/* Breadcrumb */
.breadcrumb{
  font-size:12px;color:var(--text3);
  margin-bottom:14px;
  display:flex;flex-wrap:wrap;gap:6px;align-items:center;
}
.breadcrumb a{color:var(--text3);transition:color var(--dur-fast)}
.breadcrumb a:hover{color:var(--green)}
.breadcrumb .bc-sep{color:var(--gray-300)}
.breadcrumb .bc-current{color:var(--text2);font-weight:500}

/* ====================================================
   20. BACK TO TOP + READING PROGRESS
   ==================================================== */
#eqt-back-to-top{
  position:fixed;bottom:24px;left:24px;
  width:44px;height:44px;
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius);
  cursor:pointer;display:none;
  align-items:center;justify-content:center;
  z-index:90;
  box-shadow:var(--shadow-md);
  transition:all var(--dur-fast);
}
#eqt-back-to-top:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--green)}
#eqt-back-to-top.show{display:flex}
#eqt-back-to-top svg.progress-ring{transform:rotate(-90deg);width:44px;height:44px}
#eqt-back-to-top .ring-bg{fill:none;stroke:var(--border)}
#eqt-back-to-top .ring-fill{fill:none;stroke:var(--green);stroke-width:2;stroke-dasharray:130;stroke-dashoffset:130;transition:stroke-dashoffset .1s linear}
#eqt-back-to-top .arrow{position:absolute;font-size:16px;color:var(--text);font-weight:700}

#eqt-reading-progress{
  position:fixed;top:0;right:0;
  height:3px;width:0%;
  background:linear-gradient(90deg,var(--green),var(--green-mid));
  z-index:300;transition:width .1s linear;
  box-shadow:0 0 8px rgba(16,185,129,.5);
}

/* ====================================================
   21. SEARCH OVERLAY (Stripe-style command palette)
   ==================================================== */
.search-overlay{
  position:fixed;inset:0;
  background:rgba(0,0,0,.5);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  z-index:200;
  display:none;
  align-items:flex-start;justify-content:center;
  padding-top:120px;
  opacity:0;transition:opacity var(--dur);
}
.search-overlay.open{display:flex;opacity:1}
.search-modal{
  width:90%;max-width:640px;
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);
  overflow:hidden;
  animation:eqt-scale-in var(--dur) var(--ease);
}
@keyframes eqt-scale-in{
  from{opacity:0;transform:scale(.96) translateY(-8px)}
  to{opacity:1;transform:scale(1) translateY(0)}
}
.search-modal-input-wrap{
  display:flex;align-items:center;gap:12px;
  padding:16px 20px;
  border-bottom:1px solid var(--border-soft);
}
.search-modal-input-wrap svg{width:18px;height:18px;color:var(--text3);flex-shrink:0}
.search-modal-input{
  flex:1;background:transparent;border:none;outline:none;
  font-size:16px;color:var(--text);font-family:var(--font);
}
.search-modal-input::placeholder{color:var(--text3)}
.search-modal-close{
  padding:4px 10px;
  background:var(--bg-soft);border:1px solid var(--border);
  border-radius:4px;
  font-size:11px;color:var(--text3);
  font-family:var(--font-mono);
}
.search-results{
  max-height:400px;overflow-y:auto;
  padding:8px;
}
.search-result-item{
  display:flex;gap:12px;align-items:center;
  padding:10px 12px;border-radius:var(--radius-sm);
  cursor:pointer;transition:background var(--dur-fast);
  text-decoration:none;color:inherit;
}
.search-result-item:hover,.search-result-item.active{background:var(--bg-soft)}
.search-result-thumb{width:48px;height:38px;border-radius:6px;background-size:cover;background-position:center;flex-shrink:0;background-color:var(--bg-soft)}
.search-result-info{min-width:0;flex:1}
.search-result-title{font-size:13.5px;font-weight:600;color:var(--text);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.search-result-meta{font-size:11px;color:var(--text3)}
.search-empty{padding:30px;text-align:center;color:var(--text3);font-size:13px}
.search-loading{padding:30px;text-align:center;color:var(--text3);font-size:13px}
.search-loading .spinner{display:inline-block;width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--green);border-radius:50%;animation:eqt-spin .6s linear infinite;vertical-align:middle;margin-left:6px}
@keyframes eqt-spin{to{transform:rotate(360deg)}}
.search-result-item mark{background:var(--gold-light);color:var(--gold);padding:0 2px;border-radius:2px}

/* ====================================================
   22. MARKET DASHBOARD
   ==================================================== */
.dashboard-hero{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  padding:24px;
  margin-bottom:24px;
}
.dashboard-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px}
.dashboard-title{font-size:22px;font-weight:800;color:var(--text);letter-spacing:-.025em;display:flex;align-items:center;gap:10px}
.dashboard-title .live-badge{
  display:inline-flex;align-items:center;gap:5px;
  font-size:11px;font-weight:700;color:var(--green);
  background:var(--green-tint);
  padding:4px 10px;border-radius:99px;
  border:1px solid rgba(16,185,129,.2);
}
.dashboard-title .live-badge .pulse-dot{width:6px;height:6px;border-radius:50%;background:var(--green);animation:eqt-pulse 1.6s ease-in-out infinite}

.dashboard-tabs{display:flex;gap:4px;background:var(--bg-soft);padding:4px;border-radius:var(--radius);overflow-x:auto;scrollbar-width:none}
.dashboard-tabs::-webkit-scrollbar{display:none}
.dashboard-tab{
  padding:8px 14px;font-size:12.5px;font-weight:600;
  border-radius:var(--radius-sm);cursor:pointer;
  color:var(--text3);transition:all var(--dur-fast);
  white-space:nowrap;border:none;background:transparent;
  font-family:var(--font);
}
.dashboard-tab.active{background:var(--bg-card);color:var(--text);box-shadow:var(--shadow-xs)}
.dashboard-tab:hover:not(.active){color:var(--text)}

.chart-card{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  padding:24px;
  margin-bottom:24px;
}
.chart-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px}
.chart-head-left .symbol{font-size:13px;color:var(--text3);font-weight:600;margin-bottom:4px}
.chart-head-left .price{font-size:32px;font-weight:800;color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.chart-head-left .change{display:inline-flex;align-items:center;gap:5px;margin-top:6px;font-size:13px;font-weight:700}
.chart-head-left .change.up{color:var(--green)}
.chart-head-left .change.down{color:var(--red)}
.chart-range-tabs{display:flex;gap:2px;background:var(--bg-soft);padding:3px;border-radius:var(--radius-sm)}
.chart-range-tab{padding:6px 12px;font-size:11.5px;font-weight:600;color:var(--text3);border-radius:4px;cursor:pointer;transition:all var(--dur-fast);border:none;background:transparent;font-family:var(--font)}
.chart-range-tab.active{background:var(--bg-card);color:var(--text);box-shadow:var(--shadow-xs)}
.chart-range-tab:hover:not(.active){color:var(--text)}
.chart-canvas-wrap{position:relative;height:360px;margin-top:8px}
#eqt-chart-canvas{width:100%;height:100%}

.dashboard-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}
.stat-card{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  padding:18px;
  transition:all var(--dur-fast);
  cursor:pointer;
}
.stat-card:hover{border-color:var(--border);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.stat-card-label{font-size:12px;color:var(--text3);font-weight:500;margin-bottom:8px}
.stat-card-value{font-size:22px;font-weight:800;color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.stat-card-change{font-size:12px;font-weight:700;margin-top:6px;display:inline-flex;align-items:center;gap:3px}
.stat-card-change.up{color:var(--green)}
.stat-card-change.down{color:var(--red)}
.stat-card .stat-spark{margin-top:10px;height:30px;width:100%;opacity:.7}

/* Crypto/asset table */
.asset-table{
  background:var(--bg-card);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  overflow:hidden;
  margin-bottom:24px;
}
.asset-table-head{
  padding:18px 24px;
  border-bottom:1px solid var(--border-soft);
  display:flex;align-items:center;justify-content:space-between;
}
.asset-table-head h3{font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em}
.asset-table table{width:100%;border-collapse:collapse;font-size:13px}
.asset-table th{
  text-align:right;padding:12px 24px;
  font-size:11px;font-weight:600;color:var(--text3);
  background:var(--bg-soft);
  letter-spacing:.04em;
  text-transform:uppercase;
}
.asset-table td{padding:14px 24px;border-bottom:1px solid var(--border-soft);vertical-align:middle}
.asset-table tr:last-child td{border-bottom:none}
.asset-table tr:hover td{background:var(--bg-soft)}
.asset-name-cell{display:flex;align-items:center;gap:10px}
.asset-icon{
  width:32px;height:32px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:700;color:#fff;flex-shrink:0;
}
.asset-symbol{font-weight:700;color:var(--text);font-size:13px}
.asset-fullname{font-size:11px;color:var(--text3);margin-top:1px}
.asset-price{font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}
.asset-chg{font-weight:700;font-size:12px}
.asset-chg.up{color:var(--green)}
.asset-chg.down{color:var(--red)}
.asset-spark{width:80px;height:30px}
.asset-volume{color:var(--text2);font-variant-numeric:tabular-nums;font-size:12px}

/* ====================================================
   23. UTILITIES & ACCESSIBILITY
   ==================================================== */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}
.skip-link.screen-reader-text:focus{background:var(--green);color:#fff;display:block;height:auto;width:auto;padding:12px 20px;position:fixed;top:6px;right:6px;z-index:999999;clip:auto!important;clip-path:none;text-decoration:none;border-radius:4px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:var(--radius-sm)}

.ad-slot{text-align:center;background:var(--bg-soft);padding:8px 0;border-radius:var(--radius-sm);margin-bottom:20px}
.ad-slot img{margin:0 auto;max-width:100%;border-radius:var(--radius-sm)}

/* Ads */
.ad-slot-home_top,.ad-slot-home_middle,.ad-slot-before_footer,.ad-slot-footer{margin-bottom:20px;text-align:center}
.ad-slot-before_article,.ad-slot-after_article{margin:16px 0;text-align:center}
.ad-slot-inside_article{margin:20px 0;text-align:center;clear:both}
.ad-slot-sidebar{margin-bottom:20px;border-radius:var(--radius);overflow:hidden}

/* ====================================================
   24. RESPONSIVE
   ==================================================== */
@media(max-width:1100px){
  :root{--maxw:1100px}
  .main{grid-template-columns:1fr 300px;gap:24px;padding:24px 16px}
  .markets-grid{grid-template-columns:repeat(3,1fr)}
  .ai-grid{grid-template-columns:repeat(2,1fr)}
  .related-grid{grid-template-columns:repeat(2,1fr)}
  .dashboard-stats-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
}

@media(max-width:900px){
  .main{grid-template-columns:1fr;padding:20px 14px}
  .sidebar{margin-top:20px}
  .hero-grid{grid-template-columns:1fr;gap:16px}
  .hero-main{min-height:360px}
  .hero-subs{flex-direction:row;overflow-x:auto;scrollbar-width:none}
  .hero-subs::-webkit-scrollbar{display:none}
  .hero-subs .hero-sub{min-width:240px}
  .markets-grid{grid-template-columns:repeat(2,1fr)}
  .news-grid{grid-template-columns:1fr 1fr;gap:14px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:28px}
  .share-floating{display:none}
  .search-cmd{display:none}
}

@media(max-width:640px){
  .topbar .inner{flex-wrap:wrap;gap:6px;padding:0 14px}
  .topbar-ticker{order:3;max-width:100%;width:100%;flex-basis:100%}
  .topbar-left,.topbar-right{font-size:11px}
  .header-inner{gap:12px;height:60px;padding:0 14px}
  .mobile-toggle{display:flex}
  .logo{font-size:18px}
  .header-cta{display:none}
  nav.primary-nav{display:none}
  #eqt-primary-nav{
    position:fixed;top:0;right:0;height:100vh;width:80%;max-width:320px;
    background:var(--bg-card);z-index:200;padding:80px 24px 24px;
    transform:translateX(100%);transition:transform var(--dur) var(--ease);
    overflow-y:auto;
    box-shadow:-8px 0 32px rgba(0,0,0,.15);
  }
  #eqt-primary-nav.open{transform:translateX(0);display:block}
  #eqt-primary-nav ul{flex-direction:column;align-items:stretch;gap:0}
  #eqt-primary-nav a{display:block;padding:14px 4px;border-bottom:1px solid var(--border-soft);border-radius:0;font-size:14px}
  .cats-bar{top:60px}
  .news-grid{grid-template-columns:1fr}
  .markets-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr;gap:24px}
  .single-wrap{padding:20px}
  .single-title{font-size:22px}
  .news-row{flex-direction:row}
  .news-row-img{width:90px;height:70px}
  .news-card-img{height:160px}
  .ai-grid{grid-template-columns:1fr}
  .related-grid{grid-template-columns:1fr}
  .dashboard-stats-grid{grid-template-columns:1fr 1fr;gap:10px}
  .dashboard-hero,.chart-card{padding:16px}
  .chart-canvas-wrap{height:260px}
  .asset-table{overflow-x:auto}
  .asset-table table{min-width:600px}
  #eqt-back-to-top{bottom:16px;left:16px}
  .hero-title{font-size:20px}
  .single-content{font-size:15px}
  .page-title-bar h1{font-size:22px}
  .sec-title{font-size:16px}
  .topbar-link.btn-link{display:none}
  .calendar-item{padding:12px 6px}
}

@media(max-width:400px){
  .markets-grid{grid-template-columns:1fr 1fr}
  .dashboard-stats-grid{grid-template-columns:1fr}
  .header-inner{padding:0 10px}
  .footer-bottom{flex-direction:column;text-align:center}
}

/* ====================================================
   25. ANIMATIONS
   ==================================================== */
@keyframes eqt-fade-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.fade-in{animation:eqt-fade-in var(--dur-slow) var(--ease)}
@keyframes eqt-shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
.skeleton{background:linear-gradient(90deg,var(--bg-soft) 25%,var(--bg-card) 50%,var(--bg-soft) 75%);background-size:200% 100%;animation:eqt-shimmer 1.4s linear infinite;border-radius:var(--radius-sm)}

/* Print */
@media print{
  .topbar,.cats-bar,.breaking,.sidebar,.share-floating,#eqt-back-to-top,#eqt-reading-progress,.ai-section,.newsletter-box,.vip-box,.ad-slot{display:none!important}
  body{background:#fff;color:#000}
  .single-wrap{border:none;box-shadow:none}
}
