/*
Theme Name: EZZELDIN Pro
Theme URI: https://ezzeldin.net
Description: Professional Astra child theme for the EZZELDIN trading platform.
Author: EZZELDIN
Template: astra
Version: 3.4.1
Text Domain: ezzeldin-pro
*/

:root{
  --ezz-bg:#07101d;
  --ezz-bg-soft:#0b1626;
  --ezz-panel:#101d2f;
  --ezz-panel-2:#13243a;
  --ezz-line:rgba(255,255,255,.09);
  --ezz-text:#edf4ff;
  --ezz-muted:#91a3bb;
  --ezz-accent:#2dd4bf;
  --ezz-blue:#60a5fa;
  --ezz-green:#34d399;
  --ezz-red:#fb7185;
  --ezz-amber:#fbbf24;
  --ezz-radius:14px;
}

body.home,
body.home .site,
body.home .site-content,
body.home .ast-container{
  background:var(--ezz-bg)!important;
  color:var(--ezz-text);
}

body .site-header,
body #masthead,
body .ast-primary-header-bar{
  display:none!important;
}

body.home .site-content > .ast-container{
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  display:block!important;
}

body.home #primary{
  width:100%!important;
  margin:0!important;
}

.ezz-home{
  min-height:100vh;
  background:
    radial-gradient(circle at 14% 0%,rgba(45,212,191,.07),transparent 26%),
    radial-gradient(circle at 90% 5%,rgba(96,165,250,.07),transparent 28%),
    var(--ezz-bg);
  color:var(--ezz-text);
}

.ezz-wrap{
  width:min(1420px,calc(100% - 34px));
  margin-inline:auto;
}

.ezz-topbar{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(7,16,29,.96);
  border-bottom:1px solid var(--ezz-line);
  backdrop-filter:blur(14px);
}

.ezz-nav{
  min-height:64px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:24px;
  align-items:center;
}

.ezz-brand{
  display:flex;
  align-items:center;
  gap:11px;
  color:var(--ezz-text);
  text-decoration:none;
  font-weight:900;
  letter-spacing:.08em;
}

.ezz-brand-mark{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:linear-gradient(135deg,var(--ezz-accent),var(--ezz-blue));
  color:#04111d;
  font-size:.85rem;
  letter-spacing:0;
}

.ezz-links{
  display:flex;
  gap:22px;
  justify-content:center;
  align-items:center;
}

.ezz-links a{
  color:#b9c7d8;
  text-decoration:none;
  font-size:.93rem;
  font-weight:650;
}

.ezz-links a:hover{color:var(--ezz-text)}

.ezz-search{
  display:flex;
  align-items:center;
  gap:8px;
}

.ezz-search input{
  width:180px;
  height:38px;
  padding:0 12px;
  border:1px solid var(--ezz-line);
  border-radius:10px;
  background:#0b1728;
  color:var(--ezz-text);
  outline:none;
}

.ezz-search button{
  height:38px;
  padding:0 14px;
  border:0;
  border-radius:10px;
  background:var(--ezz-accent);
  color:#04111d;
  font-weight:800;
  cursor:pointer;
}

.ezz-ticker{
  border-bottom:1px solid var(--ezz-line);
  background:#081322;
  overflow:hidden;
}

.ezz-ticker-inner{
  display:flex;
  align-items:center;
  gap:30px;
  min-height:38px;
  white-space:nowrap;
  overflow:hidden;
}

.ezz-ticker-item{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:.82rem;
}

.ezz-ticker-item strong{color:var(--ezz-text)}
.ezz-up{color:var(--ezz-green)}
.ezz-down{color:var(--ezz-red)}

.ezz-main{
  padding:26px 0 60px;
}

.ezz-page-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  margin-bottom:18px;
}

.ezz-page-heading h1{
  color:var(--ezz-text);
  margin:0;
  font-size:clamp(1.7rem,3vw,2.55rem);
  letter-spacing:-.035em;
}

.ezz-page-heading p{
  margin:5px 0 0;
  color:var(--ezz-muted);
}

.ezz-market-status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 11px;
  border:1px solid rgba(52,211,153,.18);
  background:rgba(52,211,153,.07);
  border-radius:999px;
  color:var(--ezz-green);
  font-size:.82rem;
  font-weight:800;
}

.ezz-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 0 5px rgba(52,211,153,.08);
}

.ezz-index-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}

.ezz-card{
  border:1px solid var(--ezz-line);
  border-radius:var(--ezz-radius);
  background:linear-gradient(180deg,rgba(19,36,58,.96),rgba(12,25,42,.96));
  box-shadow:0 12px 34px rgba(0,0,0,.12);
}

.ezz-index-card{
  padding:16px;
}

.ezz-index-top{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:start;
}

.ezz-index-name{
  color:var(--ezz-muted);
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.ezz-index-value{
  color:var(--ezz-text);
  font-size:1.25rem;
  font-weight:850;
  margin:7px 0 2px;
}

.ezz-change{
  font-size:.82rem;
  font-weight:800;
}

.ezz-spark{
  height:28px;
  margin-top:8px;
  opacity:.8;
  background:
    linear-gradient(160deg,transparent 0 12%,rgba(45,212,191,.15) 12% 28%,transparent 28% 39%,rgba(45,212,191,.18) 39% 54%,transparent 54% 64%,rgba(45,212,191,.18) 64% 80%,transparent 80%);
  border-bottom:1px solid rgba(45,212,191,.18);
}

.ezz-dashboard-grid{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(330px,.85fr);
  gap:16px;
}

.ezz-panel{
  padding:19px;
}

.ezz-panel-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:15px;
}

.ezz-panel-head h2{
  margin:0;
  color:var(--ezz-text);
  font-size:1.05rem;
}

.ezz-panel-head a{
  color:var(--ezz-blue);
  text-decoration:none;
  font-size:.82rem;
  font-weight:750;
}

.ezz-tabs{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}

.ezz-tab{
  border:1px solid var(--ezz-line);
  border-radius:8px;
  background:#0b1728;
  color:var(--ezz-muted);
  padding:7px 10px;
  font-size:.76rem;
  cursor:pointer;
}

.ezz-tab.is-active{
  color:#04111d;
  background:var(--ezz-accent);
  border-color:transparent;
  font-weight:800;
}

.ezz-table{
  width:100%;
  border-collapse:collapse;
}

.ezz-table th{
  color:#71849c;
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:750;
  text-align:left;
  padding:10px 8px;
  border-bottom:1px solid var(--ezz-line);
}

.ezz-table td{
  padding:12px 8px;
  border-bottom:1px solid rgba(255,255,255,.055);
  color:#c9d5e4;
  font-size:.86rem;
}

.ezz-table tbody tr:last-child td{border-bottom:0}
.ezz-table .symbol{color:var(--ezz-text);font-weight:850}
.ezz-table .company{color:var(--ezz-muted);font-size:.76rem}

.ezz-news-list{
  display:grid;
  gap:0;
}

.ezz-news-item{
  padding:14px 0;
  border-bottom:1px solid var(--ezz-line);
}

.ezz-news-item:first-child{padding-top:0}
.ezz-news-item:last-child{border-bottom:0;padding-bottom:0}

.ezz-news-meta{
  display:flex;
  gap:8px;
  align-items:center;
  color:#71849c;
  font-size:.72rem;
  margin-bottom:6px;
}

.ezz-badge{
  padding:3px 6px;
  border-radius:999px;
  background:rgba(96,165,250,.11);
  color:var(--ezz-blue);
  font-weight:800;
}

.ezz-news-title{
  color:var(--ezz-text);
  font-size:.91rem;
  line-height:1.38;
  font-weight:700;
  text-decoration:none;
}

.ezz-lower-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:16px;
  margin-top:16px;
}

.ezz-list{
  display:grid;
  gap:10px;
}

.ezz-list-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:11px 0;
  border-bottom:1px solid var(--ezz-line);
}

.ezz-list-row:last-child{border-bottom:0}
.ezz-list-row strong{color:var(--ezz-text);font-size:.86rem}
.ezz-list-row span{color:var(--ezz-muted);font-size:.78rem}

.ezz-tool-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}

.ezz-tool{
  display:block;
  min-height:142px;
  padding:17px;
  color:inherit;
  text-decoration:none;
  transition:.2s ease;
}

.ezz-tool:hover{
  transform:translateY(-2px);
  border-color:rgba(45,212,191,.32);
}

.ezz-tool-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:rgba(45,212,191,.10);
  color:var(--ezz-accent);
  font-weight:900;
}

.ezz-tool h3{
  color:var(--ezz-text);
  margin:14px 0 6px;
  font-size:.94rem;
}

.ezz-tool p{
  color:var(--ezz-muted);
  margin:0;
  font-size:.77rem;
  line-height:1.5;
}

.ezz-section{
  margin-top:16px;
}

.ezz-footer{
  padding:28px 0;
  border-top:1px solid var(--ezz-line);
  color:var(--ezz-muted);
  font-size:.8rem;
}

@media(max-width:1180px){
  .ezz-index-grid{grid-template-columns:repeat(3,1fr)}
  .ezz-tool-grid{grid-template-columns:repeat(2,1fr)}
  .ezz-links{gap:14px}
}

@media(max-width:900px){
  .ezz-nav{grid-template-columns:1fr auto}
  .ezz-links{display:none}
  .ezz-dashboard-grid,.ezz-lower-grid{grid-template-columns:1fr}
  .ezz-search input{width:140px}
}

@media(max-width:650px){
  .ezz-wrap{width:min(100% - 20px,1420px)}
  .ezz-index-grid{grid-template-columns:repeat(2,1fr)}
  .ezz-tool-grid{grid-template-columns:1fr}
  .ezz-page-heading{align-items:flex-start;flex-direction:column}
  .ezz-search input{display:none}
  .ezz-table th:nth-child(2),.ezz-table td:nth-child(2),
  .ezz-table th:nth-child(5),.ezz-table td:nth-child(5){display:none}
}


/* Version 1.2: global EZZELDIN navigation */
body .site-content{
  background:var(--ezz-bg)!important;
  color:var(--ezz-text);
}

body:not(.home) .site-content > .ast-container{
  width:min(1420px,calc(100% - 34px))!important;
  max-width:1420px!important;
  padding:0!important;
  display:block!important;
}

body:not(.home) #primary{
  width:100%!important;
  margin:0!important;
}

body.admin-bar .ezz-topbar{
  top:32px;
}

@media(max-width:782px){
  body.admin-bar .ezz-topbar{top:46px}
}


/* Version 1.3 navigation improvements */
.ezz-links a{
  position:relative;
  padding:22px 0 20px;
}

.ezz-links a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:12px;
  height:2px;
  border-radius:999px;
  background:var(--ezz-accent);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .18s ease;
}

.ezz-links a:hover::after,
.ezz-links a.is-active::after{
  transform:scaleX(1);
}

.ezz-links a.is-active{
  color:var(--ezz-text);
}

.ezz-brand{
  cursor:pointer;
}

@media(max-width:1180px){
  .ezz-links{gap:13px}
  .ezz-links a{font-size:.87rem}
}

.ezz-home-live-news .ezz-app{padding:0!important;max-width:none!important}
.ezz-home-live-news .ezz-app-head,.ezz-home-live-news .ezz-status{display:none!important}
.ezz-home-live-news .ezz-news-page{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.ezz-home-live-news .ezz-news-page{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.ezz-home-live-news .ezz-news-page{grid-template-columns:1fr}}

/* v1.4.1 WordPress custom logo */
.ezz-brand-logo{display:flex;align-items:center;max-width:280px}
.ezz-brand-logo img{display:block;width:auto;max-width:260px;max-height:52px;object-fit:contain}
.ezz-brand-fallback{display:flex;align-items:center;gap:11px}
@media(max-width:760px){.ezz-brand-logo img{max-width:190px;max-height:44px}}


/* v1.4.2 homepage live market integration */
body.home [data-market-table] .ezz-data-table{
  width:100%;
}
body.home [data-market-table] .ezz-empty,
body.home [data-market-table] .ezz-error,
body.home [data-market-table] .ezz-loading{
  min-height:280px;
  display:grid;
  place-items:center;
}


/* v1.4.3 live homepage panels */
body.home [data-general-news] .ezz-loading,
body.home [data-general-news] .ezz-error,
body.home [data-general-news] .ezz-empty{
  min-height:240px;
  display:grid;
  place-items:center;
}

body.home [data-market-indices] .ezz-error,
body.home [data-market-indices] .ezz-empty{
  grid-column:1/-1;
}

body.home [data-market-table]{
  min-height:300px;
}


/* v1.4.4 remove Astra footer globally */
#colophon,
.site-footer,
.ast-footer-overlay,
.ast-small-footer,
.ast-builder-footer-wrap,
.ast-builder-footer,
[data-section="section-footer-builder"],
footer.site-footer{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

body{
  padding-bottom:0!important;
}


/* v3.3.2 typography and contrast stabilization */
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;color:var(--ezz-text)!important}
body .site-content,body .entry-content,body .page,body .site-main{color:var(--ezz-text)!important}
body .entry-content h1,body .entry-content h2,body .entry-content h3,body .entry-content h4{color:#f4f8ff!important}
body .entry-content p,body .entry-content li{color:#b7c5d7}
.ezz-links a{color:#c5d2e2!important;font-weight:700!important}
.ezz-links a:hover,.ezz-links a.is-active{color:#ffffff!important}
.ezz-tool h3,.ezz-panel-head h2,.ezz-page-heading h1{color:#f7faff!important}
.ezz-tool p,.ezz-page-heading p,.ezz-list-row span,.ezz-table .company{color:#aebdd0!important}
.ezz-table td{color:#d8e2ef!important}
.ezz-index-name,.ezz-table th{color:#9eb0c6!important}

/* Keep all Stock Tools modules readable even when Astra color settings change. */
[class^="ezz-"],[class*=" ezz-"]{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.ezz-fa,.ezz-tech,.ezz-heatmap,.ezz-extended-hours,.ezz-calculators,.ezz-earnings,.ezz-watchlist,
.ezz-scanner,.ezz-screeners,.ezz-app{color:#edf4ff!important}
.ezz-fa a,.ezz-tech a,.ezz-heatmap a,.ezz-extended-hours a,.ezz-app a{color:#7dd3fc}

@media(max-width:1280px){.ezz-links{gap:10px}.ezz-links a{font-size:.80rem}}


/* EZZELDIN Pro 3.3.5 — grouped header dropdowns */
.ezz-menu-group{
  position:relative;
  display:flex;
  align-items:center;
}
.ezz-menu-trigger{
  appearance:none;
  border:0;
  background:transparent;
  color:#c5d2e2;
  font:inherit;
  font-size:.93rem;
  font-weight:700;
  padding:18px 0;
  cursor:pointer;
  white-space:nowrap;
}
.ezz-menu-caret{
  display:inline-block;
  margin-left:4px;
  font-size:.62em;
  transform:translateY(-1px);
  opacity:.9;
}
.ezz-menu-group:hover .ezz-menu-trigger,
.ezz-menu-group:focus-within .ezz-menu-trigger,
.ezz-menu-group.is-active .ezz-menu-trigger{
  color:#fff;
}
.ezz-dropdown{
  position:absolute;
  top:calc(100% - 3px);
  left:50%;
  transform:translateX(-50%) translateY(8px);
  min-width:220px;
  padding:8px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px;
  background:#0a1626;
  box-shadow:0 18px 45px rgba(0,0,0,.42);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s ease, transform .16s ease, visibility .16s ease;
  z-index:1200;
}
.ezz-menu-group:hover .ezz-dropdown,
.ezz-menu-group:focus-within .ezz-dropdown{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.ezz-dropdown a{
  display:block;
  padding:10px 12px;
  border-radius:7px;
  color:#c5d2e2!important;
  font-size:.88rem!important;
  font-weight:650!important;
  white-space:nowrap;
}
.ezz-dropdown a:hover,
.ezz-dropdown a.is-active{
  color:#fff!important;
  background:rgba(45,212,191,.10);
}
.ezz-dropdown a::after{
  display:none!important;
}
.ezz-menu-group.is-active::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:9px;
  height:2px;
  border-radius:2px;
  background:var(--ezz-accent);
}
@media(max-width:1280px){
  .ezz-menu-trigger{font-size:.80rem}
  .ezz-links{gap:13px}
}
@media(max-width:980px){
  .ezz-menu-group{display:none}
}

/* SEO authority hub — v3.4.0 */
.ezz-seo-hub,.ezz-methodology,.ezz-faq{margin-top:28px}
.ezz-seo-intro{max-width:850px;margin-bottom:18px}
.ezz-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:700;color:var(--ezz-accent);margin:0 0 8px}
.ezz-seo-intro h2,.ezz-prose h2{margin:0 0 10px}
.ezz-seo-intro p,.ezz-prose p,.ezz-seo-card p,.ezz-faq p{color:var(--ezz-muted);line-height:1.7}
.ezz-seo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ezz-seo-card{padding:20px}
.ezz-seo-card h3{margin:0 0 8px}
.ezz-seo-card a,.ezz-prose a{font-weight:700;text-decoration:none}
.ezz-prose{padding:22px}
.ezz-faq-list{display:grid;gap:12px}
.ezz-faq-list details{padding:0 18px}
.ezz-faq-list summary{cursor:pointer;font-weight:700;padding:16px 0}
.ezz-faq-list details p{margin:0;padding:0 0 18px}
@media(max-width:780px){.ezz-seo-grid{grid-template-columns:1fr}}
