/* =========================================================
   UbuntuFX — Strategies (match Market Analysis premium style)
   Drop-in replacement for strategies.css
   ========================================================= */

/* ===== RESET & TOKENS ===== */
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#0A1F2F;
  --accent:#00C853;
  --gold:#F9A825;
  --secondary:#1E3A5F;
  --soft:#F4F6F8;
  --black:#000;
  --white:#fff;

  --text: rgba(244,246,248,.92);
  --muted: rgba(244,246,248,.72);
  --muted2: rgba(244,246,248,.58);

  --border: rgba(255,255,255,.10);
  --border2: rgba(255,255,255,.16);

  --radius: 18px;
  --radius2: 22px;
  --pill: 999px;

  --shadow: 0 18px 50px rgba(0,0,0,.40);
  --shadow2: 0 12px 34px rgba(0,0,0,.35);

  --ease: cubic-bezier(.2,.8,.2,1);
  --container: 1280px;

  --font: "Jost", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;

  /* HERO IMAGE (set to your forex image path) */
  --hero-img: url("assets/hero-forex.jpg");
}

html{scroll-behavior:smooth}
body{
  font-family: var(--font);
  background:
    radial-gradient(1200px 700px at 20% 10%, rgba(0,200,83,.16), transparent 55%),
    radial-gradient(1200px 800px at 85% 15%, rgba(249,168,37,.12), transparent 60%),
    radial-gradient(1100px 700px at 50% 105%, rgba(30,58,95,.35), transparent 60%),
    var(--bg);
  color: var(--text);
  line-height: 1.65;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(var(--container),92vw);margin:0 auto}

h1,h2,h3{color:#00C853;letter-spacing:-.3px}
h1{font-size: clamp(34px, 4vw, 54px); line-height: 1.08}
h2{font-size: clamp(26px, 2.6vw, 38px); line-height: 1.15}
p{color: var(--muted)}

.section{padding: 84px 0}
.section-sm{padding: 64px 0}

/* ===== Pills / Eyebrow ===== */
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 14px;border-radius:var(--pill);
  border:1px solid var(--border);
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-size: 14px;
  backdrop-filter: blur(10px);
}
.dot{
  width:8px;height:8px;border-radius:999px;background:var(--accent);
  box-shadow:0 0 0 6px rgba(0,200,83,.14);
}

.pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 12px;border-radius:var(--pill);
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.22);
  color: rgba(244,246,248,.78);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .2px;
  backdrop-filter: blur(12px);
}
.pill i{color:var(--gold)}
.pill strong{color:var(--white);font-weight:950}

.badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.20);
  color: var(--muted);
  font-weight: 950;
  font-size: 12px;
}

/* ===== Buttons ===== */
.btn{
  border:0;cursor:pointer;border-radius:var(--pill);
  padding: 12px 18px;
  font-weight: 900;
  font-size: 14.5px;
  letter-spacing: .2px;
  display:inline-flex;align-items:center;gap:10px;
  transition: transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease);
  user-select:none;white-space:nowrap;
}
.btn-primary{
  color:#062016;
  background: linear-gradient(135deg, rgba(0,200,83,1), rgba(0,200,83,.78));
  box-shadow: 0 18px 45px rgba(0,200,83,.22);
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 22px 52px rgba(0,200,83,.28)}
.btn-ghost{
  color: var(--text);
  background: rgba(255,255,255,.05);
  border: 1px solid var(--border);
  backdrop-filter: blur(10px);
}
.btn-ghost:hover{transform:translateY(-2px);border-color:var(--border2);box-shadow:var(--shadow2)}
.btn-gold{
  color:#2b1b00;
  background: linear-gradient(135deg, rgba(249,168,37,1), rgba(249,168,37,.78));
  box-shadow: 0 18px 45px rgba(249,168,37,.18);
}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 22px 52px rgba(249,168,37,.24)}

/* ===== Navbar (same as Market Analysis) ===== */
.nav-wrap{
  position: sticky; top:0; z-index:999;
  padding: 14px 0;
  background: rgba(0,0,0,.35);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.navbar{display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:inline-flex;align-items:center;gap:12px;min-width:200px}
.logo-slot{
  width:44px;height:44px;border-radius:14px;overflow:hidden;
  border:1px solid var(--border);
  background: linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  display:grid;place-items:center;
}
.logo-slot img{width:100%;height:100%;object-fit:cover}
.brand strong{font-weight:950;letter-spacing:.2px}
.brand small{display:block;color:var(--muted2);font-weight:600;margin-top:-2px}

.nav-links{display:flex;align-items:center;gap:18px}
.nav-links a{
  color: var(--muted);
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .2px;
  padding: 10px 12px;
  border-radius: var(--pill);
  transition: background .2s var(--ease), color .2s var(--ease);
}
.nav-links a:hover{color:var(--text);background:rgba(255,255,255,.06)}
.nav-links a.active{
  color: var(--white);
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(249,168,37,.25);
}

.nav-actions{display:flex;align-items:center;gap:10px}
.menu-btn{
  display:none;
  width:44px;height:44px;border-radius:14px;
  border:1px solid var(--border);
  background: rgba(255,255,255,.05);
  color: var(--text);
  cursor:pointer;
}
.mobile-panel{
  display:none;margin-top:12px;
  border:1px solid var(--border);
  background: rgba(10,31,47,.92);
  backdrop-filter: blur(14px);
  border-radius: var(--radius2);
  box-shadow: var(--shadow);
  overflow:hidden;
}
.mobile-panel .inner{padding:14px;display:grid;gap:10px}
.mobile-panel a{
  padding:12px;border-radius:14px;
  color: var(--muted);
  font-weight: 900;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.06);
}
.mobile-panel a:hover{color:var(--text);border-color:rgba(255,255,255,.12)}
.mobile-open .mobile-panel{display:block}
@media (max-width:980px){
  .nav-links{display:none}
  .menu-btn{display:inline-grid;place-items:center}
  .brand{min-width:auto}
}

/* ===== HERO (60–70vh + image background) — CENTERED ===== */
.hero{
  position: relative;
  min-height: clamp(60vh, 66vh, 70vh);
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding: 86px 0 34px;
  overflow:hidden;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.25), rgba(0,0,0,.72)),
    linear-gradient(90deg, rgba(10,31,47,.88) 0%, rgba(10,31,47,.60) 45%, rgba(10,31,47,.40) 100%),
    var(--hero-img);
  background-size: cover;
  background-position: center;
  transform: scale(1.03);
  filter: saturate(1.05) contrast(1.05);
  z-index: 0;
}
.hero::after{
  content:"";
  position:absolute; inset:-1px;
  background:
    radial-gradient(900px 380px at 20% 15%, rgba(0,200,83,.18), transparent 62%),
    radial-gradient(800px 340px at 80% 10%, rgba(249,168,37,.14), transparent 64%),
    radial-gradient(1000px 420px at 50% 115%, rgba(30,58,95,.45), transparent 62%);
  pointer-events:none;
  z-index: 1;
}
.hero .container{
  position:relative; z-index:2;
  display:flex; flex-direction:column;
  align-items:center;
}
.hero h1{margin-top:12px;text-shadow:0 14px 38px rgba(0,0,0,.55)}
.hero p{margin-top:10px;max-width:62ch;color: rgba(244,246,248,.78)}
.hero .eyebrow{justify-content:center}
@media (max-width:980px){
  .hero{padding: 82px 0 26px}
  .hero p{font-size:1rem}
}
:root{
  --hero-img: url("image\ -\ 2026-02-23T111007.290.webp");
}

/* ===== Layout grid ===== */
.grid{
  display:grid;
  grid-template-columns: 360px 1fr;
  gap: 16px;
  align-items:start;
}
@media (max-width:1100px){ .grid{grid-template-columns: 1fr} }

/* Sidebar / panels: match premium glass */
.card{
  border-radius: var(--radius2);
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  box-shadow: 0 12px 34px rgba(0,0,0,.32);
  padding: 16px;
  position: relative;
  overflow: hidden;
}
.card::before{
  content:"";position:absolute;inset:-1px;
  background:
    radial-gradient(520px 220px at 12% 0%, rgba(0,200,83,.12), transparent 62%),
    radial-gradient(520px 220px at 92% 0%, rgba(249,168,37,.10), transparent 62%),
    radial-gradient(700px 320px at 50% 115%, rgba(30,58,95,.35), transparent 62%);
  opacity:.9;pointer-events:none;
}
.card > *{position:relative;z-index:1}
.tiny{color: var(--muted2); font-weight: 850; font-size: 12.5px}

/* ===== Filters + Search (same feel) ===== */
.search{
  display:flex;align-items:center;gap:10px;
  background: rgba(0,0,0,.22);
  border: 1px solid rgba(255,255,255,.10);
  padding: 10px 12px;
  border-radius: var(--pill);
  margin-bottom: 12px;
}
.search i{color: var(--muted2)}
.search input{
  width: 100%;
  border:0;outline:none;
  background: transparent;
  color: var(--text);
  font-family: inherit;
  font-size: 14.5px;
  font-weight: 750;
}
.search input::placeholder{color: rgba(244,246,248,.50)}
.pill-row{display:flex;flex-wrap:wrap;gap:8px}

.filter-pill{
  display:inline-flex;align-items:center;gap:8px;
  padding: 8px 14px;
  border-radius: var(--pill);
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.10);
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
  cursor:pointer;
  transition: transform .2s var(--ease), background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);
  user-select:none;
}
.filter-pill:hover{transform:translateY(-1px);border-color: rgba(255,255,255,.16);color: var(--text)}
.filter-pill.active{
  background: rgba(30,58,95,.60);
  border-color: rgba(249,168,37,.35);
  color: var(--white);
}

/* ===== Strategy Cards (premium upgrade) ===== */
.cards{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 16px;
}
@media (max-width:1100px){ .cards{grid-template-columns: repeat(2, minmax(0,1fr))} }
@media (max-width:720px){ .cards{grid-template-columns: 1fr} }

.s-card{
  border-radius: calc(var(--radius) + 2px);
  padding: 16px;
  min-height: 260px;
  display:flex;
  flex-direction:column;
  gap:10px;
  position:relative;
  overflow:hidden;

  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  box-shadow: 0 12px 34px rgba(0,0,0,.32);
  border: 1px solid rgba(255,255,255,.10);

  transition:
    transform .25s var(--ease),
    box-shadow .25s var(--ease),
    border-color .25s var(--ease),
    filter .25s var(--ease);
}

/* glow edge border */
.s-card::after{
  content:"";
  position:absolute;
  inset:0;
  padding:1px;
  border-radius: inherit;
  background:
    linear-gradient(135deg,
      rgba(0,200,83,.30),
      rgba(249,168,37,.22),
      rgba(255,255,255,.10)
    );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: .55;
  pointer-events:none;
}

.s-card::before{
  content:"";
  position:absolute;
  inset:-1px;
  background:
    radial-gradient(520px 220px at 12% 0%, rgba(0,200,83,.14), transparent 62%),
    radial-gradient(520px 220px at 92% 0%, rgba(249,168,37,.12), transparent 62%),
    radial-gradient(700px 320px at 50% 115%, rgba(30,58,95,.35), transparent 62%);
  opacity:.9;
  pointer-events:none;
}
.s-card > *{position:relative;z-index:1}

.s-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 22px 55px rgba(0,0,0,.45);
  border-color: rgba(255,255,255,.18);
  filter: saturate(1.05);
}
.s-card:focus-within{
  transform: translateY(-3px);
  box-shadow: 0 22px 55px rgba(0,0,0,.45);
  border-color: rgba(0,200,83,.35);
}

.s-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}

.s-title{
  font-size: 18px;
  font-weight: 950;
  letter-spacing: -.2px;
  line-height: 1.25;
}

.s-icon{
  width:44px;height:44px;border-radius:16px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.18);
  display:grid;place-items:center;
  color: var(--gold);
  box-shadow: 0 10px 28px rgba(0,0,0,.35);
  flex: 0 0 auto;
}

.tags{display:flex;flex-wrap:wrap;gap:8px}
.tag{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.20);
  color: rgba(244,246,248,.78);
  font-weight: 950;
  font-size: 12px;
  letter-spacing: .2px;
  backdrop-filter: blur(10px);
}
.tag i{color: rgba(249,168,37,.95)}

.kpi{
  display:grid;grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  margin-top: 6px;
}
.kpi > div{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
  border-radius: 14px;
  padding: 10px;
}
.kpi strong{display:block;color:rgba(255,255,255,.92);font-weight:950}
.kpi span{display:block;color:rgba(244,246,248,.60);font-weight:850;font-size:12px;margin-top:2px}

.s-actions{
  margin-top:auto;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.link{
  color: rgba(0,200,83,.95);
  font-weight: 950;
  display:inline-flex;align-items:center;gap:8px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(0,200,83,.18);
  background: rgba(0,200,83,.08);
  transition: transform .2s var(--ease), background .2s var(--ease), border-color .2s var(--ease);
}
.link:hover{
  transform: translateY(-2px);
  background: rgba(0,200,83,.12);
  border-color: rgba(0,200,83,.26);
}

/* ===== Modal (kept premium) ===== */
.modal{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.62);
  backdrop-filter: blur(10px);
  display:none;
  z-index: 9999;
  padding: 16px;
}
.modal.show{display:grid;place-items:center}
.modal-box{
  width: min(960px, 96vw);
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.14);
  background: linear-gradient(180deg, rgba(10,31,47,.92), rgba(0,0,0,.72));
  box-shadow: 0 24px 70px rgba(0,0,0,.55);
  overflow:hidden;
}
.modal-top{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding: 16px;
  border-bottom: 1px solid rgba(255,255,255,.10);
}
.modal-top h3{font-size: 18px}
.x{
  width:44px;height:44px;border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.92);
  cursor:pointer;
}
.modal-body{
  padding: 16px;
  display:grid;
  grid-template-columns: 1fr 320px;
  gap: 16px;
}
@media (max-width:980px){ .modal-body{grid-template-columns: 1fr} }
.panel{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  border-radius: 18px;
  padding: 14px;
}
.list{display:grid;gap:10px;margin-top:10px}
.li{
  display:flex;gap:10px;align-items:flex-start;
  padding: 10px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.08);
  background: rgba(0,0,0,.18);
}
.li i{color:var(--accent);margin-top:3px}
.hr{height:1px;background: rgba(255,255,255,.10);margin:12px 0}

/* ===== Footer (same as Market Analysis) ===== */
footer{
  background:#000;
  border-top:1px solid rgba(255,255,255,.08);
  padding: 54px 0 22px;
  margin-top: 30px;
}
.footer-grid{
  display:grid;
  grid-template-columns: 1.2fr .9fr .9fr;
  gap: 18px;
  align-items:start;
}
@media (max-width:980px){ .footer-grid{grid-template-columns: 1fr} }
.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.footer-logo{
  width:46px;height:46px;border-radius:16px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  overflow:hidden;display:grid;place-items:center;
}
.footer-logo img{width:100%;height:100%;object-fit:cover}
.footer h4{
  margin:0 0 12px;
  font-size: 14px;
  letter-spacing: .28px;
  text-transform: uppercase;
  color: #00C853;
}
.footer p,.footer a,.footer li{
  color: rgba(255,255,255,.70);
  font-size: 14.5px;
  line-height: 1.75;
}
.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.footer a:hover{color: rgba(255,255,255,.92)}
.contact-line{display:flex;gap:10px;align-items:flex-start;margin: 10px 0}
.contact-line i{margin-top:3px;color: var(--gold);width:18px}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  margin-top: 22px;
  padding-top: 16px;
  display:flex;flex-wrap:wrap;gap:10px;
  justify-content:space-between;align-items:center;
}
.footer-bottom small{color: rgba(255,255,255,.55); line-height: 1.6}
.credit a{color: rgba(0,200,83,.95); font-weight: 950}

/* ===== Toast ===== */
.toast{
  position:fixed;right:16px;bottom:16px;z-index:9999;
  padding:12px 14px;border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.75);
  backdrop-filter: blur(12px);
  color:rgba(255,255,255,.92);
  box-shadow:0 18px 40px rgba(0,0,0,.45);
  transform: translateY(10px);
  opacity:0;
  transition: opacity .25s ease, transform .25s ease;
  pointer-events:none;
  font-weight: 900;
  letter-spacing: .2px;
  max-width: 380px;
}
.toast.show{opacity:1;transform: translateY(0)}

.modal-body{ overflow:auto; -webkit-overflow-scrolling: touch; }
.modal-box{ max-height: 88vh; }

.btn-sm{
padding:5px 10px;
font-size:10.5px;
border-radius:7px;
letter-spacing:.3px;
}