/* PROBLEM CARDS */
.prob-card{background:var(--off);border:1px solid var(--off2);border-radius:11px;padding:24px;display:flex;gap:16px}
.prob-icon{width:44px;height:44px;flex-shrink:0;border-radius:9px;display:flex;align-items:center;justify-content:center;background:var(--off);border:1px solid var(--off2)}
.prob-icon svg{stroke:var(--navy)}
.prob-card h4{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:5px}
.prob-card p{font-size:15px;color:var(--body);line-height:1.58}

/* RISK CARDS */
.risk{border-radius:11px;padding:24px;border-left:3px solid;background:var(--white);border-top:1px solid var(--off2);border-right:1px solid var(--off2);border-bottom:1px solid var(--off2)}
.risk-r{border-left-color:#DC2626}
.risk-o{border-left-color:#EA580C}
.risk-y{border-left-color:#CA8A04}
.risk-p{border-left-color:#DB2777}
.risk h4{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:7px}
.risk p{font-size:15px;color:var(--body);line-height:1.6}

/* SEGMENTS */
.seg-tabs{display:flex;gap:4px;border-bottom:1px solid var(--off2);overflow-x:auto;margin-bottom:48px}
.seg-tab{padding:11px 20px;font-size:13px;font-weight:500;color:var(--slate);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;transition:all 0.15s;white-space:nowrap}
.seg-tab.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}
.seg-tab:hover{color:var(--ink)}
.seg-panel{display:none}
.seg-panel.active{display:block}
.seg-lay{display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:start}
.seg-benefits{display:flex;flex-direction:column;gap:12px}
.seg-ben{display:grid;grid-template-columns:34px 1fr;gap:14px;align-items:flex-start;padding:18px;background:var(--off);border:1px solid var(--off2);border-radius:9px;transition:box-shadow 0.15s}
.seg-ben:hover{box-shadow:0 4px 14px rgba(10,22,40,0.08)}
.seg-n{width:34px;height:34px;border-radius:7px;background:linear-gradient(135deg,var(--navy),var(--navy3));color:var(--white);font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.seg-ben h5{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:3px}
.seg-ben p{font-size:15px;color:var(--body);line-height:1.55}
.seg-side{position:sticky;top:82px}
.seg-info{background:var(--navy);border-radius:13px;padding:28px;margin-bottom:12px}
.seg-info h4{font-family:'DM Serif Display',serif;font-size:20px;color:var(--white);margin-bottom:8px}
.seg-info p{font-size:15px;color:rgba(255,255,255,0.78);line-height:1.65;margin-bottom:18px}
.seg-il{font-size:15px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--cyan-text);margin-bottom:10px}
.seg-ii{display:flex;gap:8px;font-size:15px;color:rgba(255,255,255,0.84);margin-bottom:7px;line-height:1.4}
.seg-ii::before{content:'◆';color:var(--teal);font-size:15px;margin-top:4px;flex-shrink:0}
.seg-warn{background:rgba(220,38,38,0.08);border:1px solid rgba(220,38,38,0.18);border-radius:9px;padding:16px;margin-top:14px}
.seg-wl{font-size:15px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:#f87171;margin-bottom:9px}
.seg-wi{font-size:15px;color:rgba(255,255,255,0.75);display:flex;gap:7px;margin-bottom:6px;line-height:1.4}
.seg-wi::before{content:'→';color:#f87171;flex-shrink:0}
.seg-cta{margin-top:12px;width:100%;background:linear-gradient(135deg,var(--blue),var(--cyan));color:var(--white);border:none;padding:12px;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:opacity 0.15s}
.seg-cta:hover{opacity:0.9}

/* TIER FINDER */
.tier-finder{text-align:center;margin-bottom:36px}
.tier-finder-label{font-size:13px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--slate);margin-bottom:14px}
.tier-finder-pills{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.tier-vol-pill{padding:10px 20px;border:1.5px solid var(--mist);border-radius:24px;background:var(--white);font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;color:var(--body);cursor:pointer;transition:all 0.2s}
.tier-vol-pill:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.03)}
.tier-vol-pill.tvp-active{border-color:var(--blue);background:rgba(11,95,216,0.08);color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.08)}

/* TIERS */
.tg{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tc{border:1px solid var(--off2);border-radius:13px;overflow:hidden;display:flex;flex-direction:column;transition:opacity 0.3s ease,box-shadow 0.3s ease,border-color 0.3s ease,transform 0.3s ease;position:relative}
.tc.feat{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.11),0 8px 40px rgba(10,22,40,0.14);transform:translateY(-5px)}
.tc.tc-dimmed{opacity:0.65}
.tc.tc-recommended{border-color:var(--blue);box-shadow:0 0 0 4px rgba(11,95,216,0.15),0 0 24px rgba(75,163,255,0.12),0 8px 40px rgba(10,22,40,0.14);transform:translateY(-5px)}
.tc-rec-badge{display:none;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:5px 14px;border-radius:0 0 8px 8px;position:absolute;top:0;right:20px;z-index:2}
.tc.tc-recommended .tc-rec-badge{display:block}
.tc-hd{padding:28px 24px 22px}
.tc-hd-dk{background:linear-gradient(155deg,var(--navy),var(--navy2))}
.tc-pop{background:linear-gradient(135deg,var(--blue),var(--cyan));color:var(--white);font-size:15px;font-weight:700;letter-spacing:0.1em;padding:3px 11px;border-radius:20px;display:inline-block;margin-bottom:10px;text-transform:uppercase}
.tc-name{font-family:'DM Serif Display',serif;font-size:24px;margin-bottom:7px}
.tc-name-lt{color:var(--navy)}
.tc-name-dk{color:var(--white)}
.tc-desc{font-size:15px;line-height:1.6}
.tc-desc-lt{color:var(--body)}
.tc-desc-dk{color:rgba(255,255,255,0.75)}
.tc-bd{padding:20px 24px;flex:1;background:var(--white)}
.tc-sl{font-size:15px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--slate);margin-bottom:10px;margin-top:18px}
.tc-sl:first-child{margin-top:0}
.tc-f{display:flex;align-items:flex-start;gap:9px;font-size:15px;color:var(--body);margin-bottom:8px;line-height:1.45}
.tfy{color:var(--blue);font-weight:700;font-size:15px;flex-shrink:0;margin-top:1px}
.tfn{color:var(--mist);font-size:15px;flex-shrink:0;margin-top:1px}
.tc-ft{padding:0 24px 24px;background:var(--white)}
.tc-btn{width:100%;border:none;padding:12px;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:all 0.15s}
.tc-btn-p{background:linear-gradient(135deg,var(--blue),var(--blue2));color:var(--white)}
.tc-btn-p:hover{opacity:0.88}
.tc-btn-s{background:var(--off);color:var(--navy);border:1px solid var(--off2)}
.tc-btn-s:hover{background:var(--off2)}

/* REQUIREMENTS TABLE */
.rtable{border:1px solid var(--off2);border-radius:13px;overflow:hidden;margin-top:40px}
.r-head{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;background:var(--navy);padding:14px 22px}
.r-th{font-size:15px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.6)}
.r-th:not(:first-child){text-align:center}
.r-gh{padding:9px 22px;background:var(--off);font-size:15px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--slate)}
.r-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;padding:12px 22px;border-bottom:1px solid var(--off2);align-items:center;transition:background 0.1s}
.r-row:hover{background:var(--off)}
.r-row:last-child{border-bottom:none}
.r-lbl{font-size:15px;color:var(--body)}
.r-y{text-align:center;color:var(--blue);font-size:15px}
.r-n{text-align:center;color:var(--mist);font-size:15px}

/* PHASES */
.phases{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--off2);border-radius:13px;overflow:hidden}
.ph-cell{padding:24px 15px;background:var(--white);border-right:1px solid var(--off2);text-align:center}
.ph-cell:last-child{border-right:none}
.ph-num{width:36px;height:36px;border-radius:50%;margin:0 auto 12px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:var(--white);font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center}
.ph-cell h5{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:6px}
.ph-cell p{font-size:15px;color:var(--slate);line-height:1.5}

/* TIMELINE */
.tl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
.tl-cell{background:var(--off);border:1px solid var(--off2);border-radius:11px;padding:24px}
.tl-lbl{font-size:15px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--blue);margin-bottom:12px}
.tl-title{font-family:'DM Serif Display',serif;font-size:17px;color:var(--navy);margin-bottom:13px}
.tl-list{list-style:none}
.tl-item{display:flex;gap:9px;font-size:15px;color:var(--body);margin-bottom:8px;line-height:1.45}
.tl-item::before{content:'◆';color:var(--cyan);font-size:15px;margin-top:3px;flex-shrink:0}

/* PARTNER FIT QUIZ */
.crit-wrap{background:linear-gradient(155deg,var(--navy) 0%,var(--navy2) 60%,var(--navy3) 100%);border-radius:16px;padding:48px 44px;margin-top:36px;position:relative;overflow:hidden}
.crit-wrap::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 80% 20%,rgba(75,163,255,0.06) 0%,transparent 60%);pointer-events:none}
/* Header */
.fq-header{margin-bottom:36px;position:relative}
.fq-header .sh{margin-bottom:20px}
.fq-progress{height:3px;background:rgba(255,255,255,0.06);border-radius:3px;overflow:hidden}
.fq-progress-bar{height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--sky),var(--cyan));border-radius:3px;transition:width 0.5s cubic-bezier(0.4,0,0.2,1);box-shadow:0 0 12px rgba(75,163,255,0.3)}
.fq-step-dots{display:flex;align-items:center;gap:8px;margin-top:14px}
.fq-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,0.1);transition:all 0.3s}
.fq-dot-active{background:var(--sky);box-shadow:0 0 8px rgba(75,163,255,0.4)}
.fq-dot-done{background:rgba(75,163,255,0.35)}
.fq-step-label{font-size:12px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-left:auto}
.fq-step-row{display:flex;align-items:center;margin-top:14px}
/* Cards */
.fq-cards{position:relative;min-height:280px}
.fq-card{display:none;animation:fqFadeIn 0.4s cubic-bezier(0.4,0,0.2,1)}
.fq-card-active{display:block}
.fq-card-done,.fq-card-next{display:none}
@keyframes fqFadeIn{from{opacity:0;transform:translateY(16px) scale(0.95)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes fqResultGlow{0%{box-shadow:0 0 0 0 var(--fq-glow-color,rgba(75,163,255,0.3))}40%{box-shadow:0 0 20px 6px var(--fq-glow-color,rgba(75,163,255,0.15))}70%{box-shadow:0 0 0 0 var(--fq-glow-color,rgba(75,163,255,0.05))}100%{box-shadow:0 0 12px 3px var(--fq-glow-color,rgba(75,163,255,0))}}
.fq-result-glow{animation:fqFadeIn 0.5s cubic-bezier(0.4,0,0.2,1),fqResultGlow 2s ease-out 0.5s}
.fq-card-dim{font-size:11px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;margin-bottom:12px}
.fq-card-q{font-family:'DM Serif Display',serif;font-size:24px;color:#fff;line-height:1.28;margin-bottom:28px;max-width:520px}
.fq-options{display:flex;flex-direction:column;gap:12px;max-width:600px}
.fq-opt{display:flex;align-items:flex-start;gap:14px;padding:18px 22px;border-radius:11px;border:1px solid rgba(255,255,255,0.08);background:rgba(255,255,255,0.025);cursor:pointer;text-align:left;transition:all 0.2s;font-family:'DM Sans',sans-serif;position:relative}
.fq-opt::before{content:'';width:20px;height:20px;border-radius:50%;border:2px solid rgba(255,255,255,0.15);flex-shrink:0;margin-top:1px;transition:all 0.2s;box-sizing:border-box}
.fq-opt:hover{border-color:rgba(255,255,255,0.18);background:rgba(255,255,255,0.05);transform:translateX(2px)}
.fq-opt:hover::before{border-color:rgba(255,255,255,0.3)}
.fq-opt-selected{border-color:rgba(75,163,255,0.5)!important;background:rgba(11,95,216,0.1)!important}
.fq-opt-selected::before{background:var(--sky)!important;border-color:var(--sky)!important;box-shadow:0 0 8px rgba(75,163,255,0.35)}
.fq-opt-content{display:flex;flex-direction:column;gap:3px}
.fq-opt-label{font-size:15px;font-weight:600;color:#fff}
.fq-opt-desc{font-size:14px;color:rgba(255,255,255,0.65);line-height:1.5}
/* Nav */
.fq-nav{margin-top:24px;display:flex;align-items:center}
.fq-back-btn{display:inline-flex;align-items:center;gap:6px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:rgba(255,255,255,0.5);background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:6px;cursor:pointer;padding:7px 14px;transition:all 0.15s}
.fq-back-btn:hover{color:rgba(255,255,255,0.8);border-color:rgba(255,255,255,0.15);background:rgba(255,255,255,0.06)}
/* Result */
.fq-result{margin-top:32px;border-radius:12px;padding:0;border:1px solid rgba(255,255,255,0.1);transition:all 0.3s;display:none}
.fq-result-show{display:flex;gap:20px;align-items:flex-start;padding:28px 32px;animation:fqFadeIn 0.5s cubic-bezier(0.4,0,0.2,1)}
.fq-result-icon{flex-shrink:0;margin-top:3px}
.fq-result-title{font-family:'DM Serif Display',serif;font-size:22px;color:#fff;margin-bottom:8px}
.fq-result-text{font-size:15px;color:rgba(255,255,255,0.8);line-height:1.72;margin-bottom:18px}
.fq-result-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.fq-result-cta{display:inline-flex;align-items:center;gap:7px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;padding:11px 22px;border-radius:8px;border:none;cursor:pointer;transition:all 0.18s}
.fq-result-cta:hover{opacity:0.85;transform:translateY(-1px)}
.fq-restart-btn{display:inline-flex;align-items:center;gap:6px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:rgba(255,255,255,0.5);background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:6px;cursor:pointer;padding:7px 14px;transition:all 0.15s}
.fq-restart-btn:hover{color:rgba(255,255,255,0.75);border-color:rgba(255,255,255,0.15)}
/* ── Compare Table Rows ──────────────────────────────── */
.cmp-rows > div{transition:background 0.15s ease}
.cmp-rows > div:hover{background:rgba(11,95,216,0.04)}

.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;margin-left:auto}
.nav-hamburger span{display:block;width:22px;height:2px;background:var(--navy);border-radius:2px;transition:all 0.2s}
.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-hamburger.open span:nth-child(2){opacity:0}
.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-nav-drawer{display:none;position:fixed;top:60px;left:0;right:0;z-index:8999;background:rgba(10,22,40,0.98);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,0.08);padding:16px 20px 24px;flex-direction:column;gap:4px}
.mobile-nav-drawer.open{display:flex}
.mobile-nav-drawer a{color:rgba(255,255,255,0.78);font-size:17px;font-weight:500;padding:15px 4px;border-bottom:1px solid rgba(255,255,255,0.06);text-decoration:none;cursor:pointer;transition:color 0.13s}
.mobile-nav-drawer a:last-of-type{border-bottom:none}
.mobile-nav-drawer a:hover{color:#fff}

@media(max-width:768px){
  /* ── GLOBAL ── */
  .con{padding:0 20px}
  .con-sm{padding:0 20px}
  section.sec{padding:52px 0}
  section.sec-lg{padding:64px 0}
  section.sec-sm{padding:36px 0}

  /* ── NAV ── */
  #site-nav{padding:0 20px}
  .page{padding-top:60px}
  .nav-links{display:none}
  .nav-cta{display:none}
  .nav-hamburger{display:flex}

  /* ── TYPOGRAPHY ── */
  .disp{font-size:clamp(28px,8vw,40px)}
  .lead{font-size:15px}

  /* ── HERO ── */
  #hero-mesh{display:none!important}
  .hero-wrap{padding:48px 22px 40px;min-height:auto}
  .g-hero{grid-template-columns:1fr;gap:36px}
  .hero-visual{display:none}
  .hero-stats{grid-template-columns:repeat(3,1fr);gap:0;margin-top:32px}
  .h-stat-n{font-size:22px}
  .h-marquee-label{font-size:15px}
  .sp-marquee-wrap{-webkit-mask-image:linear-gradient(90deg,transparent,black 4%,black 96%,transparent);mask-image:linear-gradient(90deg,transparent,black 4%,black 96%,transparent)}
  .h-cta-row{flex-direction:column;width:100%;max-width:320px}
  .h-cta-primary,.h-cta-secondary{width:100%;text-align:center}

  /* ── GENERIC GRIDS ── */
  .g2{grid-template-columns:1fr}
  .g3{grid-template-columns:1fr}
  .g4{grid-template-columns:1fr 1fr;gap:14px}
  .g-65{grid-template-columns:1fr;gap:32px}

  /* ── HCARD ── */
  .hcard-row{grid-template-columns:1fr}

  /* ── PARTNERSHIP ── */
  .pship-section{padding:40px 20px}
  .pship-box{padding:32px 24px}
  .pship-grid{grid-template-columns:1fr;gap:0;margin-top:32px}
  .pship-divider{height:1px;width:100%;margin:24px 0;background:rgba(255,255,255,0.08)}
  .pship-divider::after{display:none}
  .pship-col{padding:0}

  /* ── VALUE PROPS (vcols) ── */
  .vcols{grid-template-columns:1fr;border-radius:10px}
  .vcol{border-right:none!important;border-bottom:1px solid var(--off2)}
  .vcol:last-child{border-bottom:none}

  /* ── FLIP CARDS ── */
  .flip-grid{grid-template-columns:1fr}
  .flip-card{height:200px;cursor:pointer}
  .flip-hint{font-size:0}
  .flip-hint::after{content:'Tap to flip';font-size:12px}

  /* ── STATS ROW ── */
  .srow{grid-template-columns:1fr 1fr}
  .scell{min-width:160px;border-right:none!important;border-bottom:1px solid var(--off2)}

  /* ── PROB CARDS ── */
  .prob-grid{grid-template-columns:1fr!important}

  /* ── SEGMENTS ── */
  .seg-lay{grid-template-columns:1fr;gap:28px}
  .seg-info{display:none}
  .seg-tabs{gap:6px;padding-bottom:4px}
  .seg-tab{font-size:15px;padding:7px 12px}

  /* ── TIERS GRID ── */
  .tg{grid-template-columns:1fr;gap:16px}
  .price-grid{grid-template-columns:1fr;padding:0 20px;gap:14px}

  /* ── COMPARISON TABLE ── */
  .rtable{font-size:15px;overflow-x:auto}
  .r-head{grid-template-columns:1.5fr 1fr 1fr 1fr;padding:10px 14px;font-size:15px}
  .r-row{grid-template-columns:1.5fr 1fr 1fr 1fr;padding:10px 14px}
  .r-label{font-size:15px}

  /* ── PHASES ── */
  .phases{grid-template-columns:repeat(3,1fr)}
  .phase:nth-child(3){border-right:none}
  .phase:nth-child(4){border-top:1px solid var(--off2)}

  /* ── TIMELINE ── */
  .tl-grid{grid-template-columns:1fr;gap:12px}

  /* ── FAQ ── */
  .faq-lay{grid-template-columns:1fr;gap:0}
  .faq-nav{display:none}
  .faq-q h4{font-size:15px}

  /* ── APPLY ── */
  .apply-hero{padding:48px 0 0}
  .apply-stats-row{flex-direction:column;gap:0!important}
  .apply-stat-divider{display:none}
  .form-layout{grid-template-columns:1fr!important;gap:32px}
  .fg2{grid-template-columns:1fr}

  /* ── TESTIMONIALS ── */
  .testi-grid{grid-template-columns:1fr}

  /* ── "DO THE MATH" TABLE (inline-styled grid) ── */
  #sec-math [style*="grid-template-columns:1fr 1fr 2fr"]{padding-left:16px!important;padding-right:16px!important;gap:8px}
  #sec-math [style*="font-size:28px"]{font-size:22px!important}
  #sec-math [style*="font-size:24px"]{font-size:20px!important}
  #sec-math [style*="font-size:15px"]{font-size:13.5px!important;line-height:1.45}

  /* ── RESOURCES ── */
  .res-grid{grid-template-columns:1fr}
  .res-featured{grid-template-columns:1fr!important}

  /* ── RADAR / CRITERIA ── */
  .crit-wrap{padding:28px 16px}
  .crit-radar-svg-wrap{max-width:300px}
  .crit-wrap{padding:28px 20px}
  .fq-card-q{font-size:18px}
  .fq-result-show{flex-direction:column;gap:12px}
  .crit-mode-toggle{flex-wrap:wrap}
  .crit-tooltip-float{width:180px;padding:12px 14px}
  .crit-tooltip-float-quote{font-size:15px}
  .crit-radar-hint{display:none}

  /* ── FOOTER ── */
  .ft-grid{grid-template-columns:1fr;gap:28px}
  .ft-bot{flex-direction:column;align-items:flex-start;gap:12px}

  /* ── CTA BAND ── */
  .cta-band{padding:52px 0}
  .cta-inner{padding:40px 24px!important}
  .cta-acts{flex-direction:column;align-items:center}
  .btn-lg{width:100%;max-width:320px;text-align:center}

  /* ── BUTTONS / NAV ── */
  .btn{padding:11px 22px;font-size:15px}
}

@media(max-width:480px){
  .disp{font-size:clamp(24px,7.5vw,34px)}
  .g4{grid-template-columns:1fr}
  .srow{grid-template-columns:1fr 1fr}
  .phases{grid-template-columns:repeat(2,1fr)}
  .hero-stats{grid-template-columns:1fr 1fr 1fr}
  .h-stat-n{font-size:19px}
  .h-stat-l{font-size:10.5px;letter-spacing:0.08em;text-transform:uppercase;white-space:normal}
  .pship-box{padding:24px 18px}
  .price-ph-inner h1{font-size:28px}
  .crit-radar-svg-wrap{max-width:260px}
  .cta-inner{padding:32px 16px!important}
  #page-dashboard [style*="grid-template-columns:1fr 1fr 1fr 1fr"]{grid-template-columns:1fr 1fr!important}
  #page-dashboard [style*="grid-template-columns:1fr 1fr 1fr 1fr"] > div [style*="font-size:32px"]{font-size:24px!important}
}

.am-back-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:rgba(255,255,255,0.55);cursor:pointer;text-decoration:none;margin-bottom:20px;transition:color 0.15s;background:none;border:none;font-family:inherit;padding:8px 16px;border-radius:8px}
.am-back-btn:hover{color:rgba(255,255,255,0.95);background:rgba(255,255,255,0.08)}
.am-tpl-opt{padding:10px;border:2px solid var(--mist);border-radius:10px;cursor:pointer;transition:all 0.15s;background:#fff}
.am-tpl-opt:hover{border-color:var(--blue);background:rgba(11,95,216,0.03)}
.am-tpl-selected{border-color:var(--blue)!important;background:rgba(11,95,216,0.05)!important}

.am-size-btn{padding:6px 14px;border:1.5px solid var(--mist);border-radius:20px;background:#fff;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;color:var(--navy);cursor:pointer;transition:all 0.15s;white-space:nowrap}
.am-size-btn:hover{border-color:var(--blue);color:var(--blue)}
.am-size-active{border-color:var(--blue)!important;background:rgba(11,95,216,0.06)!important;color:var(--blue)!important}
/* SCRIPT BUILDER */
.sb-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.sb-tab{background:none;border:none;padding:10px 18px;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:500;color:var(--slate);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;transition:all 0.13s}
.sb-tab.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}
.sb-tab:hover:not(.active){color:var(--ink)}
.sb-tab-panel{display:none}
.sb-tab-panel.active{display:block}
@keyframes sbSlideOutLeft{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-30px)}}
@keyframes sbSlideOutRight{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(30px)}}
@keyframes sbSlideInLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}
@keyframes sbSlideInRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}
.sb-slide-out-left{animation:sbSlideOutLeft 0.22s cubic-bezier(0.4,0,1,1) forwards}
.sb-slide-out-right{animation:sbSlideOutRight 0.22s cubic-bezier(0.4,0,1,1) forwards}
.sb-slide-in-left{animation:sbSlideInLeft 0.22s cubic-bezier(0,0,0.2,1) forwards}
.sb-slide-in-right{animation:sbSlideInRight 0.22s cubic-bezier(0,0,0.2,1) forwards}
.sb-script-card{background:var(--white);border:1px solid var(--off2);border-radius:11px;padding:28px 32px;position:relative;font-size:15px;color:var(--body);line-height:1.85;white-space:pre-wrap;font-family:'DM Sans',sans-serif}
.sb-copy-btn{position:absolute;top:14px;right:14px;background:var(--off);border:1px solid var(--off2);border-radius:6px;padding:6px 12px;font-size:15px;font-weight:600;color:var(--slate);cursor:pointer;transition:all 0.13s;font-family:'DM Sans',sans-serif}
.sb-copy-btn:hover{background:var(--navy);color:var(--white);border-color:var(--navy)}
.sb-section-hd{display:block;font-size:15px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--blue);margin:20px 0 8px}
.sb-objection-block{background:var(--off);border-radius:8px;padding:16px 18px;margin-bottom:12px}
.sb-objection-q{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:8px}
.sb-objection-a{font-size:15px;color:var(--body);line-height:1.75}
.sb-tip{display:flex;gap:12px;align-items:flex-start;margin-bottom:10px;font-size:15px;color:var(--body);line-height:1.6}
.sb-tip:last-child{margin-bottom:0}
.sb-tip-dot{width:6px;height:6px;border-radius:50%;background:var(--blue);flex-shrink:0;margin-top:6px}
.sb-loader{width:40px;height:40px;border:3px solid var(--off2);border-top-color:var(--blue);border-radius:50%;animation:sbspin 0.7s linear infinite;margin:0 auto}
@keyframes sbspin{to{transform:rotate(360deg)}}
@media(max-width:768px){.sb-grid{grid-template-columns:1fr}}

/* ── Script Builder Template Library ─────────────────── */
.sb-tpl-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.sb-tpl-card{background:var(--white);border:1.5px solid var(--off2);border-radius:10px;padding:16px 12px;text-align:center;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif}
.sb-tpl-card:hover{border-color:var(--blue);box-shadow:0 4px 16px rgba(11,95,216,0.1);transform:translateY(-2px)}
.sb-tpl-icon{width:36px;height:36px;border-radius:50%;background:rgba(11,95,216,0.06);display:flex;align-items:center;justify-content:center;margin:0 auto 8px;color:var(--blue)}
.sb-tpl-name{font-size:12px;font-weight:600;color:var(--navy);line-height:1.3;margin-bottom:4px}
.sb-tpl-desc{font-size:11px;color:var(--slate);line-height:1.3}
@media(max-width:960px){.sb-tpl-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.sb-tpl-grid{grid-template-columns:repeat(2,1fr)}}

/* ── Script Builder Chat Bubbles ──────────────────────── */
.sb-chat-thread{display:flex;flex-direction:column;gap:12px}
.sb-bubble{max-width:85%;padding:14px 18px;border-radius:14px;font-size:15px;line-height:1.75;color:var(--navy);position:relative}
.sb-bubble-partner{align-self:flex-start;background:linear-gradient(135deg,rgba(11,95,216,0.06),rgba(0,200,224,0.04));border:1px solid rgba(11,95,216,0.1);border-bottom-left-radius:4px}
.sb-bubble-client{align-self:flex-end;background:var(--off);border:1px solid var(--off2);border-bottom-right-radius:4px}
.sb-bubble-label{font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:4px}
.sb-bubble-partner .sb-bubble-label{color:var(--blue)}
.sb-bubble-client .sb-bubble-label{color:var(--slate);text-align:right}
.sb-bubble-text{white-space:pre-wrap}
.sb-stage-dir{text-align:center;font-size:13px;font-style:italic;color:var(--slate);padding:8px 0}

/* ── Script Builder Timeline ────────────────────────── */
.sb-timeline{display:flex;flex-direction:column;gap:0;padding-left:16px}
.sb-tl-item{display:flex;gap:16px;padding-bottom:28px;position:relative}
.sb-tl-item:not(.sb-tl-last)::before{content:'';position:absolute;left:7px;top:18px;bottom:0;width:2px;background:var(--off2)}
.sb-tl-dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--off2);background:var(--white);flex-shrink:0;margin-top:2px;position:relative;z-index:1}
.sb-tl-done{border-color:var(--blue);background:var(--blue)}
.sb-tl-done::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--white)}
.sb-tl-active{border-color:var(--blue);background:var(--white);box-shadow:0 0 0 4px rgba(11,95,216,0.15)}
.sb-tl-day{font-size:12px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--blue);margin-bottom:2px}
.sb-tl-label{font-size:14px;color:var(--body);line-height:1.5}

/* ── Recent Results Panel (shared) ───────────────────── */
.rr-container{margin-bottom:28px}
.rr-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.rr-title{font-size:12px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--slate)}
.rr-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}
.rr-item{flex:0 0 auto;background:var(--white);border:1.5px solid var(--off2);border-radius:8px;padding:10px 16px;cursor:pointer;transition:all 0.13s;text-align:left;font-family:'DM Sans',sans-serif;min-width:160px;max-width:220px}
.rr-item:hover{border-color:var(--blue);box-shadow:0 2px 8px rgba(11,95,216,0.08)}
.rr-item-label{font-size:13px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rr-item-meta{font-size:11px;color:var(--slate);margin-top:2px}

/* ── AI Results History (Marketing Kit) ──────────────── */
.rh-wrap{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px;margin-bottom:24px}
.rh-header{margin-bottom:16px}
.rh-title{font-family:'DM Serif Display',serif;font-size:18px;color:var(--navy)}
.rh-desc{font-size:13px;color:var(--slate);margin-top:2px}
.rh-list{display:flex;flex-direction:column;gap:8px}
.rh-item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--off);border-radius:8px}
.rh-item-tool{font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--blue);min-width:120px;flex-shrink:0}
.rh-item-label{font-size:14px;font-weight:500;color:var(--navy);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rh-item-time{font-size:12px;color:var(--slate);flex-shrink:0}

/* ── Tool Usage Stats (Dashboard) ────────────────────── */
.ts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ts-card{background:var(--white);border:1px solid var(--off2);border-radius:10px;padding:16px;text-align:center}
.ts-count{font-family:'DM Serif Display',serif;font-size:28px;color:var(--navy);line-height:1}
.ts-label{font-size:12px;font-weight:600;color:var(--slate);margin-top:6px;letter-spacing:0.02em}
@media(max-width:600px){.ts-grid{grid-template-columns:repeat(2,1fr)}}

/* ── Welcome Banner (M3P1C1) ─────────────────────────── */
.wb-card{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#0a1628 0%,#12203d 50%,#1a2d52 100%);border-radius:16px;padding:24px 28px;color:#fff;position:relative;overflow:hidden;box-shadow:0 4px 24px rgba(10,22,40,0.15)}
.wb-card::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='100' height='100' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3Cpattern id='g' width='20' height='20' patternUnits='userSpaceOnUse'%3E%3Ccircle cx='1' cy='1' r='0.5' fill='rgba(255,255,255,0.03)'/%3E%3C/pattern%3E%3C/defs%3E%3Crect fill='url(%23g)' width='100' height='100'/%3E%3C/svg%3E");pointer-events:none}
.wb-card::after{content:'';position:absolute;top:-60%;right:-5%;width:250px;height:250px;background:radial-gradient(circle,rgba(75,163,255,0.1) 0%,transparent 60%);pointer-events:none}
.wb-left{flex:1;min-width:0;position:relative;z-index:1}
.wb-greeting{font-family:'DM Serif Display',serif;font-size:22px;line-height:1.2;font-weight:400}
.wb-practice{font-size:12px;color:rgba(255,255,255,0.5);margin-top:4px;font-weight:500}
.wb-summary{font-size:13px;color:rgba(255,255,255,0.55);margin-top:6px;line-height:1.5}
.wb-right{display:flex;gap:8px;flex-shrink:0;margin-left:24px;position:relative;z-index:1}
.wb-nugget{display:flex;align-items:center;gap:8px;font-size:12px;color:rgba(255,255,255,0.8);background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.06);border-radius:8px;padding:7px 12px;backdrop-filter:blur(4px)}
.wb-nugget svg{flex-shrink:0;opacity:0.8}
@media(max-width:768px){
  .wb-card{flex-direction:column;gap:12px;padding:20px 22px}
  .wb-right{margin-left:0;flex-wrap:wrap}
  .wb-greeting{font-size:20px}
}

/* ── Quick Action Command Bar (M3P1C1) ───────────────── */
.qa-bar{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;padding:2px 0}
.qa-btn{display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--white);border:1px solid var(--off2);border-radius:10px;padding:14px 8px 12px;cursor:pointer;transition:border-color 0.2s,box-shadow 0.2s,transform 0.15s;text-align:center;font-family:'DM Sans',sans-serif}
.qa-btn:hover{border-color:var(--blue);box-shadow:0 2px 12px rgba(11,95,216,0.08);transform:translateY(-1px)}
.qa-btn:active{transform:translateY(0)}
.qa-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.qa-text{min-width:0}
.qa-label{font-size:12px;font-weight:700;color:var(--navy);line-height:1.2}
.qa-desc{font-size:10px;color:var(--slate);margin-top:2px;line-height:1.3}
@media(max-width:900px){.qa-bar{grid-template-columns:repeat(3,1fr)}}
@media(max-width:500px){.qa-bar{grid-template-columns:repeat(2,1fr)}}

/* ── Partner Score (M3P1C1) ──────────────────────────── */
.dash-score-modules-row{display:grid;grid-template-columns:280px 1fr;gap:16px;align-items:stretch}
.ps-card{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:20px;display:flex;flex-direction:column;align-items:center;gap:16px;box-shadow:0 1px 4px rgba(10,22,40,0.04)}
.ps-ring-wrap{position:relative;display:flex;align-items:center;justify-content:center}
.ps-ring-center{position:absolute;text-align:center}
.ps-ring-val{font-family:'DM Serif Display',serif;font-size:32px;line-height:1}
.ps-ring-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--slate);margin-top:3px}
.ps-breakdown{width:100%}
.ps-breakdown-row{display:flex;align-items:center;gap:8px;padding:4px 0}
.ps-breakdown-label{font-size:11px;color:var(--slate);font-weight:600;width:65px;flex-shrink:0}
.ps-breakdown-track{flex:1;height:5px;background:var(--off);border-radius:3px;overflow:hidden}
.ps-breakdown-fill{height:100%;border-radius:3px;transition:width 0.8s ease}
.ps-breakdown-val{font-size:10px;color:var(--slate);font-weight:700;width:36px;text-align:right;flex-shrink:0}
@media(max-width:900px){.dash-score-modules-row{grid-template-columns:1fr}}

/* ── Module Progress (M3P1C1) ────────────────────────── */
.mp-header{margin-bottom:12px}
.mp-title{font-size:13px;font-weight:700;color:var(--navy);letter-spacing:0.01em}
.mp-subtitle{font-size:11px;color:var(--slate);margin-top:2px}
.mp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.mp-card{background:var(--white);border:1px solid var(--off2);border-radius:10px;padding:14px;text-align:left;cursor:pointer;transition:border-color 0.2s,box-shadow 0.2s;font-family:'DM Sans',sans-serif;box-shadow:0 1px 4px rgba(10,22,40,0.04)}
.mp-card:hover{border-color:var(--blue);box-shadow:0 3px 12px rgba(11,95,216,0.08)}
.mp-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.mp-card-icon{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center}
.mp-card-pct{font-size:16px;font-weight:800}
.mp-card-label{font-size:12px;font-weight:700;color:var(--navy)}
.mp-card-stat{font-size:11px;color:var(--body);margin-top:2px}
.mp-card-detail{font-size:10px;color:var(--slate);margin-top:2px}
.mp-card-bar{height:3px;background:var(--off);border-radius:2px;overflow:hidden;margin-top:8px}
.mp-card-bar-fill{height:100%;border-radius:2px;transition:width 0.8s ease}
@media(max-width:600px){.mp-grid{grid-template-columns:1fr}}

/* ── Activity dot colors (extend) ────────────────────── */
.dash-activity-dot-cyan{background:#06b6d4}
.dash-activity-dot-purple{background:#8b5cf6}

/* ── Breadcrumb (M3P2C1) ────────────────────────────── */
.portal-breadcrumb{display:flex;align-items:center;gap:6px;padding:12px 28px 0;font-size:12px;color:var(--slate)}
.bc-link{color:var(--blue);cursor:pointer;transition:color 0.15s;font-weight:500}
.bc-link:hover{color:var(--navy)}
.bc-sep{display:flex;align-items:center;color:var(--slate);opacity:0.4}
.bc-current{font-weight:600;color:var(--navy)}

/* ── Collapsible Sidebar (M3P2C1) ───────────────────── */
.pnh-collapsible{display:flex;align-items:center;justify-content:space-between;padding-right:4px;transition:color 0.15s}
.pnh-collapsible:hover{color:var(--blue)}
.pnh-chevron{display:flex;transition:transform 0.2s ease;opacity:0.5}
.png-collapsed .pnh-chevron{transform:rotate(-90deg)}
.png-collapsed .portal-nav-item{display:none}

/* ── Referral Link Manager (M3P2C1) ─────────────────── */
.srl-card{background:var(--off);border:1px solid var(--off2);border-radius:12px;padding:20px}
.srl-link-row{display:flex;gap:8px;margin-bottom:16px}
.srl-input{flex:1;font-size:13px;font-family:'DM Sans',sans-serif;color:var(--navy);background:var(--white)}
.srl-copy{padding:8px 16px;background:var(--blue);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.15s;font-family:'DM Sans',sans-serif;white-space:nowrap}
.srl-copy:hover{background:#0a4fb5}
.srl-stats{display:flex;gap:16px;margin-bottom:16px}
.srl-stat{flex:1;text-align:center;background:var(--white);border:1px solid var(--off2);border-radius:8px;padding:12px}
.srl-stat-val{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy)}
.srl-stat-label{font-size:11px;color:var(--slate);font-weight:600;margin-top:2px}
.srl-share-row{display:flex;gap:8px}
.srl-share-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--white);border:1px solid var(--off2);border-radius:8px;font-size:12px;font-weight:600;color:var(--navy);cursor:pointer;transition:border-color 0.15s,background 0.15s;font-family:'DM Sans',sans-serif}
.srl-share-btn:hover{border-color:var(--blue);background:rgba(11,95,216,0.04)}

/* ── Brand Color Picker (M3P2C1) ────────────────────── */
.sbc-picker{margin-top:12px}
.sbc-presets{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.sbc-preset{width:36px;height:36px;border-radius:8px;border:2px solid transparent;cursor:pointer;transition:transform 0.1s,border-color 0.15s}
.sbc-preset:hover{transform:scale(1.1)}
.sbc-preset-active{border-color:var(--navy);box-shadow:0 0 0 2px var(--white),0 0 0 4px var(--navy)}
.sbc-custom-row{display:flex;align-items:center;gap:10px}
.sbc-color-input{width:44px;height:36px;border:1px solid var(--off2);border-radius:8px;padding:2px;cursor:pointer;background:var(--white)}
.sbc-hex-input{width:100px;font-family:'DM Sans',sans-serif}
.sbc-preview{width:36px;height:36px;border-radius:8px;border:1px solid var(--off2);flex-shrink:0}

/* ── Data Export Button (M3P2C1) ────────────────────── */
.set-export-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--blue);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background 0.15s;font-family:'DM Sans',sans-serif}
.set-export-btn:hover{background:#0a4fb5}

/* ── Notification icon in items (M3P2C1) ────────────── */
.portal-notif-icon{flex-shrink:0;color:var(--slate);margin-right:6px;display:inline-flex}

/* ── Dark mode for M3P2 components ──────────────────── */
[data-theme="dark"] .portal-breadcrumb{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .bc-link{color:#4BA3FF}
[data-theme="dark"] .bc-link:hover{color:#e0e4ec}
[data-theme="dark"] .bc-current{color:#e0e4ec}
[data-theme="dark"] .srl-card{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .srl-input{background:#0e1726;color:#e0e4ec;border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .srl-stat{background:#0e1726;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .srl-stat-val{color:#e0e4ec}
[data-theme="dark"] .srl-share-btn{background:#0e1726;border-color:rgba(255,255,255,0.06);color:#e0e4ec}
[data-theme="dark"] .srl-share-btn:hover{border-color:#4BA3FF}
[data-theme="dark"] .sbc-preset-active{border-color:#e0e4ec;box-shadow:0 0 0 2px #141e30,0 0 0 4px #e0e4ec}
[data-theme="dark"] .sbc-color-input{background:#0e1726;border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .sbc-preview{border-color:rgba(255,255,255,0.08)}

/* ── Dark mode for new dashboard components ──────────── */
[data-theme="dark"] .wb-card{background:linear-gradient(135deg,#0e1726 0%,#14203a 100%);border:1px solid rgba(255,255,255,0.06)}
[data-theme="dark"] .qa-btn{background:#141e30;border-color:rgba(255,255,255,0.06);color:#e0e4ec}
[data-theme="dark"] .qa-btn:hover{border-color:#4BA3FF;box-shadow:0 4px 16px rgba(75,163,255,0.08)}
[data-theme="dark"] .qa-label{color:#e0e4ec}
[data-theme="dark"] .qa-desc{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ps-card{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ps-ring-label{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ps-breakdown-label,[data-theme="dark"] .ps-breakdown-val{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ps-breakdown-track{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .mp-title{color:#e0e4ec}
[data-theme="dark"] .mp-subtitle{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .mp-card{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .mp-card:hover{border-color:#4BA3FF;box-shadow:0 4px 12px rgba(75,163,255,0.08)}
[data-theme="dark"] .mp-card-label{color:#e0e4ec}
[data-theme="dark"] .mp-card-stat{color:rgba(255,255,255,0.6)}
[data-theme="dark"] .mp-card-detail{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .mp-card-bar{background:rgba(255,255,255,0.06)}

/* ── M3P3: Help Chat Widget ──────────────────────────── */
.hc-container{position:fixed;bottom:24px;right:88px;z-index:9999;font-family:'DM Sans',sans-serif}
.hc-fab{width:56px;height:56px;border-radius:50%;background:var(--blue);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(11,95,216,0.35);transition:all 0.2s;position:relative;z-index:2}
.hc-fab:hover{transform:scale(1.08);box-shadow:0 6px 28px rgba(11,95,216,0.45)}
.hc-fab-active{background:var(--navy);transform:scale(1.08)}
.hc-panel{position:absolute;bottom:72px;right:0;width:360px;max-height:500px;background:var(--white);border-radius:16px;box-shadow:0 12px 48px rgba(0,0,0,0.15);display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(12px) scale(0.96);transition:all 0.25s cubic-bezier(0.4,0,0.2,1);overflow:hidden}
.hc-panel.hc-open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.hc-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--navy);color:#fff;font-size:14px;font-weight:600}
.hc-header-left{display:flex;align-items:center;gap:8px}
.hc-header-right{display:flex;align-items:center;gap:4px}
.hc-clear,.hc-close{background:none;border:none;color:rgba(255,255,255,0.7);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color 0.15s}
.hc-clear:hover,.hc-close:hover{color:#fff}
.hc-close{font-size:20px;line-height:1}
.hc-messages{flex:1;overflow-y:auto;padding:16px;min-height:260px;max-height:340px;background:var(--off)}
.hc-msg{display:flex;margin-bottom:12px}
.hc-msg-user{justify-content:flex-end}
.hc-msg-assistant{justify-content:flex-start}
.hc-msg-bubble{max-width:80%;padding:10px 14px;border-radius:12px;font-size:13px;line-height:1.55;word-wrap:break-word}
.hc-msg-user .hc-msg-bubble{background:var(--blue);color:#fff;border-bottom-right-radius:4px}
.hc-msg-assistant .hc-msg-bubble{background:var(--white);color:var(--body);border:1px solid var(--off2);border-bottom-left-radius:4px}
.hc-input-row{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--off2);background:var(--white)}
.hc-input{flex:1;border:1.5px solid var(--off2);border-radius:8px;padding:8px 12px;font-size:13px;font-family:'DM Sans',sans-serif;outline:none;transition:border-color 0.15s;color:var(--body);background:var(--white)}
.hc-input:focus{border-color:var(--blue)}
.hc-send{width:36px;height:36px;border-radius:8px;background:var(--blue);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.15s;flex-shrink:0}
.hc-send:hover{background:#0a4fb5}
.hc-welcome{text-align:center;padding:24px 12px}
.hc-welcome-icon{margin-bottom:12px}
.hc-welcome-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:6px}
.hc-welcome-text{font-size:13px;color:var(--slate);line-height:1.5;margin-bottom:16px}
.hc-quick-btns{display:flex;flex-direction:column;gap:6px}
.hc-quick{background:var(--white);border:1.5px solid var(--off2);border-radius:8px;padding:8px 14px;font-size:12px;font-weight:600;color:var(--navy);cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;text-align:left}
.hc-quick:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.03)}
.hc-typing-bubble{display:flex;gap:4px;padding:12px 16px}
.hc-dot{width:6px;height:6px;border-radius:50%;background:var(--slate);animation:hcBounce 1.2s infinite}
.hc-dot:nth-child(2){animation-delay:0.2s}
.hc-dot:nth-child(3){animation-delay:0.4s}
@keyframes hcBounce{0%,80%,100%{transform:translateY(0)}40%{transform:translateY(-6px)}}
@media(max-width:600px){.hc-container{bottom:16px;right:76px}.hc-panel{width:calc(100vw - 32px);right:-60px;max-height:60vh}.hc-fab{width:48px;height:48px}}

/* ── M3P3: Onboarding Wizard ─────────────────────────── */
.ob-wizard-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all 0.3s;backdrop-filter:blur(4px)}
.ob-wizard-overlay.ob-open{opacity:1;visibility:visible}
.ob-wizard-modal{background:var(--white);border-radius:20px;width:480px;max-width:92vw;padding:36px 40px 28px;position:relative;box-shadow:0 24px 64px rgba(0,0,0,0.2);transform:scale(0.92) translateY(20px);transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);animation:obSlideIn 0.3s ease-out forwards}
.ob-open .ob-wizard-modal{transform:scale(1) translateY(0)}
@keyframes obSlideIn{from{opacity:0;transform:scale(0.92) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}
.ob-wizard-close{position:absolute;top:16px;right:18px;background:none;border:none;font-size:22px;color:var(--slate);cursor:pointer;padding:4px 8px;border-radius:6px;line-height:1;transition:color 0.15s}
.ob-wizard-close:hover{color:var(--navy)}
.ob-wizard-progress{display:flex;justify-content:center;gap:8px;margin-bottom:28px}
.ob-dot{width:10px;height:10px;border-radius:50%;background:var(--off2);transition:all 0.2s}
.ob-dot-active{background:var(--blue);transform:scale(1.2);box-shadow:0 0 0 3px rgba(11,95,216,0.15)}
.ob-dot-done{background:var(--blue)}
.ob-wizard-body{text-align:center;margin-bottom:28px}
.ob-step-icon{width:72px;height:72px;border-radius:50%;background:rgba(11,95,216,0.06);display:flex;align-items:center;justify-content:center;margin:0 auto 20px}
.ob-step-title{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy);margin-bottom:10px}
.ob-step-desc{font-size:15px;color:var(--body);line-height:1.6;max-width:380px;margin:0 auto}
.ob-wizard-footer{display:flex;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid var(--off2)}
.ob-btn{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;border:none}
.ob-btn-primary{background:var(--blue);color:#fff}
.ob-btn-primary:hover{background:#0a4fb5;box-shadow:0 4px 12px rgba(11,95,216,0.25)}
.ob-btn-secondary{background:var(--off);color:var(--slate);border:1px solid var(--off2)}
.ob-btn-secondary:hover{background:var(--off2);color:var(--navy)}

/* M3P3 Dark Mode */
[data-theme="dark"] .hc-panel{background:#141e30;box-shadow:0 12px 48px rgba(0,0,0,0.4)}
[data-theme="dark"] .hc-messages{background:#0e1726}
[data-theme="dark"] .hc-msg-assistant .hc-msg-bubble{background:#1a2740;border-color:rgba(255,255,255,0.06);color:#e0e4ec}
[data-theme="dark"] .hc-input-row{background:#141e30;border-top-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .hc-input{background:#0e1726;border-color:rgba(255,255,255,0.08);color:#e0e4ec}
[data-theme="dark"] .hc-welcome-title{color:#e0e4ec}
[data-theme="dark"] .hc-welcome-text{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .hc-quick{background:#1a2740;border-color:rgba(255,255,255,0.06);color:#e0e4ec}
[data-theme="dark"] .hc-quick:hover{border-color:#4BA3FF;color:#4BA3FF;background:rgba(75,163,255,0.05)}
[data-theme="dark"] .ob-wizard-overlay{background:rgba(0,0,0,0.7)}
[data-theme="dark"] .ob-wizard-modal{background:#141e30;box-shadow:0 24px 64px rgba(0,0,0,0.5)}
[data-theme="dark"] .ob-wizard-close{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ob-wizard-close:hover{color:#e0e4ec}
[data-theme="dark"] .ob-dot{background:rgba(255,255,255,0.1)}
[data-theme="dark"] .ob-step-title{color:#e0e4ec}
[data-theme="dark"] .ob-step-desc{color:rgba(255,255,255,0.6)}
[data-theme="dark"] .ob-step-icon{background:rgba(75,163,255,0.08)}
[data-theme="dark"] .ob-wizard-footer{border-top-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ob-btn-secondary{background:#0e1726;border-color:rgba(255,255,255,0.06);color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ob-btn-secondary:hover{background:#1a2740;color:#e0e4ec}

/* ── Tone Variant Switcher ───────────────────────────── */
.sb-variant-bar{display:flex;align-items:center;gap:6px;margin-bottom:20px;padding:8px 0}
.sb-var-label{font-size:12px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--slate);margin-right:4px}
.sb-var-btn{background:var(--off);border:1.5px solid var(--off2);border-radius:6px;padding:6px 14px;font-size:13px;font-weight:600;color:var(--slate);cursor:pointer;transition:all 0.13s;font-family:'DM Sans',sans-serif}
.sb-var-btn:hover{border-color:var(--blue);color:var(--blue)}
.sb-var-btn.sb-var-active{background:var(--blue);border-color:var(--blue);color:var(--white)}

/* ── Client Qualifier Steps ──────────────────────────── */
.cq-step{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px}
.cq-step:last-child{margin-bottom:0}
.cq-step-num{width:28px;height:28px;border-radius:50%;background:var(--blue);color:var(--white);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cq-step-text{font-size:15px;color:var(--body);line-height:1.6;padding-top:3px}

/* ── Ad Maker Headline Suggestions ───────────────────── */
.am-hl-list{display:flex;gap:8px;flex-wrap:wrap}
.am-hl-btn{background:var(--white);border:1.5px solid var(--off2);border-radius:8px;padding:8px 16px;font-size:14px;font-weight:600;color:var(--navy);cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif}
.am-hl-btn:hover{border-color:var(--blue);color:var(--blue);box-shadow:0 2px 8px rgba(11,95,216,0.1)}
.am-hl-btn.am-hl-copied{background:var(--blue);border-color:var(--blue);color:var(--white)}

/* M2P1C2: FAVORITES PANEL */
.tf-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;padding:20px;animation:pbFadeIn 0.2s ease}
.tf-modal{background:var(--white);border-radius:16px;width:100%;max-width:600px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.15)}
.tf-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--off2)}
.tf-header h3{font-size:18px;font-weight:700;color:var(--navy);margin:0}
.tf-header-actions{display:flex;align-items:center;gap:8px}
.tf-btn-export{padding:6px 14px;border-radius:6px;border:1px solid var(--off2);background:var(--white);color:var(--slate);font-size:12px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.tf-btn-export:hover{background:var(--off);color:var(--navy)}
.tf-close{width:32px;height:32px;border-radius:8px;border:none;background:var(--off);color:var(--slate);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s}
.tf-close:hover{background:var(--off2);color:var(--navy)}
.tf-body{padding:16px 24px}
.tf-empty{text-align:center;padding:40px 20px;color:var(--slate);font-size:14px}
.tf-group{margin-bottom:20px}
.tf-group-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--slate);margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--off2)}
.tf-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:8px;transition:background 0.1s}
.tf-item:hover{background:var(--off)}
.tf-item-info{flex:1;min-width:0}
.tf-item-label{font-size:14px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tf-item-date{font-size:11px;color:var(--slate)}
.tf-item-actions{display:flex;gap:6px;flex-shrink:0}
.tf-item-load{padding:4px 10px;border-radius:5px;border:1px solid var(--off2);background:var(--white);color:var(--blue);font-size:11px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.tf-item-load:hover{background:rgba(11,95,216,0.06);border-color:var(--blue)}
.tf-item-remove{width:24px;height:24px;border-radius:5px;border:1px solid var(--off2);background:var(--white);color:var(--slate);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s}
.tf-item-remove:hover{background:rgba(220,38,38,0.06);color:#dc2626;border-color:rgba(220,38,38,0.3)}

/* M2P1C2: BATCH SCRIPT MODAL */
.sb-batch-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;padding:20px;animation:pbFadeIn 0.2s ease}
.sb-batch-modal{background:var(--white);border-radius:16px;width:100%;max-width:560px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.15)}
.sb-batch-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--off2)}
.sb-batch-header h3{font-size:18px;font-weight:700;color:var(--navy);margin:0}
.sb-batch-close{width:32px;height:32px;border-radius:8px;border:none;background:var(--off);color:var(--slate);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s}
.sb-batch-close:hover{background:var(--off2);color:var(--navy)}
.sb-batch-body{padding:24px}
.sb-batch-desc{font-size:14px;color:var(--slate);margin:0 0 16px;line-height:1.5}
.sb-batch-select-all{margin-bottom:12px;font-size:14px;font-weight:600;color:var(--navy)}
.sb-batch-select-all input{margin-right:8px;accent-color:var(--blue)}
.sb-batch-list{max-height:250px;overflow-y:auto;border:1px solid var(--off2);border-radius:10px;margin-bottom:20px}
.sb-batch-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--off);cursor:pointer;transition:background 0.1s}
.sb-batch-item:hover{background:var(--off)}
.sb-batch-item:last-child{border-bottom:none}
.sb-batch-cb{width:16px;height:16px;accent-color:var(--blue)}
.sb-batch-item-info{flex:1;min-width:0}
.sb-batch-item-name{font-size:14px;font-weight:600;color:var(--navy)}
.sb-batch-item-meta{font-size:12px;color:var(--slate)}
.sb-batch-progress{margin-bottom:16px}
.sb-batch-progress-bar{height:8px;background:var(--off);border-radius:99px;overflow:hidden}
.sb-batch-progress-fill{height:100%;background:linear-gradient(90deg,var(--blue),#00c8e0);border-radius:99px;transition:width 0.3s ease;width:0}
.sb-batch-progress-text{font-size:13px;color:var(--slate);margin-top:6px;text-align:center;font-weight:500}
.sb-batch-actions{display:flex;gap:8px;justify-content:flex-end}
.sb-batch-btn-run{padding:10px 24px;border-radius:8px;border:none;background:var(--blue);color:var(--white);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.sb-batch-btn-run:hover{background:#0948a8}
.sb-batch-btn-run:disabled{opacity:0.5;cursor:not-allowed}
.sb-batch-btn-download{padding:10px 24px;border-radius:8px;border:none;background:#059669;color:var(--white);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.sb-batch-btn-download:hover{background:#047857}
.sb-batch-btn-close{padding:10px 24px;border-radius:8px;border:1px solid var(--off2);background:var(--white);color:var(--slate);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}

/* M2P1C2: BATCH AD EXPORT MODAL */
.am-batch-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;padding:20px;animation:pbFadeIn 0.2s ease}
.am-batch-modal{background:var(--white);border-radius:16px;width:100%;max-width:480px;box-shadow:0 20px 60px rgba(0,0,0,0.15)}
.am-batch-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--off2)}
.am-batch-header h3{font-size:18px;font-weight:700;color:var(--navy);margin:0}
.am-batch-close{width:32px;height:32px;border-radius:8px;border:none;background:var(--off);color:var(--slate);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s}
.am-batch-close:hover{background:var(--off2);color:var(--navy)}
.am-batch-body{padding:24px}
.am-batch-desc{font-size:14px;color:var(--slate);margin:0 0 16px;line-height:1.5}
.am-batch-sizes{margin-bottom:20px}
.am-batch-size-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--off)}
.am-batch-size-item:last-child{border-bottom:none}
.am-batch-size-label{flex:1;font-size:14px;font-weight:600;color:var(--navy)}
.am-batch-size-dim{font-size:12px;color:var(--slate);font-family:monospace}
.am-batch-size-status{font-size:12px;font-weight:600;color:var(--slate);min-width:80px;text-align:right}
.am-batch-progress{margin-bottom:16px}
.am-batch-progress-bar{height:6px;background:var(--off);border-radius:99px;overflow:hidden}
.am-batch-progress-fill{height:100%;background:linear-gradient(90deg,var(--blue),#00c8e0);border-radius:99px;transition:width 0.3s ease;width:0}
.am-batch-actions{display:flex;justify-content:flex-end}
.am-batch-btn-all{padding:10px 24px;border-radius:8px;border:none;background:var(--blue);color:var(--white);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.am-batch-btn-all:hover{background:#0948a8}
.am-batch-btn-all:disabled{opacity:0.5;cursor:not-allowed}

/* DARK MODE: FAVORITES + BATCH */
[data-theme="dark"] .tf-modal{background:#1f2937;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
[data-theme="dark"] .tf-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .tf-header h3{color:#f3f4f6}
[data-theme="dark"] .tf-close{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .tf-group-title{color:#9ca3af;border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .tf-item:hover{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .tf-item-label{color:#f3f4f6}
[data-theme="dark"] .tf-item-load{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#60a5fa}
[data-theme="dark"] .tf-item-remove{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#6b7280}
[data-theme="dark"] .sb-batch-modal{background:#1f2937;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
[data-theme="dark"] .sb-batch-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .sb-batch-header h3{color:#f3f4f6}
[data-theme="dark"] .sb-batch-close{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .sb-batch-list{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .sb-batch-item{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .sb-batch-item:hover{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .sb-batch-item-name{color:#f3f4f6}
[data-theme="dark"] .sb-batch-progress-bar{background:rgba(255,255,255,0.08)}
[data-theme="dark"] .am-batch-modal{background:#1f2937;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
[data-theme="dark"] .am-batch-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .am-batch-header h3{color:#f3f4f6}
[data-theme="dark"] .am-batch-close{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .am-batch-size-label{color:#f3f4f6}
[data-theme="dark"] .am-batch-size-item{border-color:rgba(255,255,255,0.06)}

/* M2P2C2: SMART SUGGESTIONS */
.smart-suggest{margin-top:24px;padding:16px;border:1px solid var(--off2);border-radius:12px;background:linear-gradient(135deg,rgba(139,92,246,0.04) 0%,rgba(11,95,216,0.04) 100%)}
.smart-suggest-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--slate)}
.smart-suggest-header svg{color:#8b5cf6}
.smart-suggest-list{display:flex;gap:8px;flex-wrap:wrap}
.smart-suggest-item{flex:1;min-width:140px;padding:12px 14px;border:1px solid var(--off2);border-radius:10px;background:var(--white);cursor:pointer;transition:all 0.15s;text-align:left;font-family:inherit}
.smart-suggest-item:hover{border-color:var(--blue);box-shadow:0 4px 12px rgba(11,95,216,0.1)}
.smart-suggest-item-label{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:2px}
.smart-suggest-item-desc{font-size:12px;color:var(--slate);line-height:1.4}

/* M2P2C2: PIPELINE MODAL */
.pipeline-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;padding:20px;animation:pbFadeIn 0.2s ease}
.pipeline-modal{background:var(--white);border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.15)}
.pipeline-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--off2)}
.pipeline-header h3{font-size:18px;font-weight:700;color:var(--navy);margin:0}
.pipeline-close{width:32px;height:32px;border-radius:8px;border:none;background:var(--off);color:var(--slate);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s}
.pipeline-close:hover{background:var(--off2);color:var(--navy)}
.pipeline-body{padding:24px}
.pipeline-desc{font-size:14px;color:var(--slate);margin:0 0 20px;line-height:1.5}
.pipeline-steps{margin-bottom:24px}
.pipeline-step{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--off2);border-radius:10px;transition:all 0.2s}
.pipeline-step-num{width:32px;height:32px;border-radius:50%;background:var(--off);color:var(--slate);font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.2s}
.pipeline-step-info{flex:1}
.pipeline-step-title{font-size:14px;font-weight:700;color:var(--navy)}
.pipeline-step-desc{font-size:12px;color:var(--slate)}
.pipeline-step-status{font-size:12px;font-weight:600;color:var(--slate);flex-shrink:0}
.pipeline-step-active{border-color:var(--blue);background:rgba(11,95,216,0.03)}
.pipeline-step-active .pipeline-step-num{background:var(--blue);color:var(--white)}
.pipeline-step-running{border-color:#f59e0b;background:rgba(245,158,11,0.04)}
.pipeline-step-running .pipeline-step-num{background:#f59e0b;color:#fff}
.pipeline-step-running .pipeline-step-status{color:#f59e0b}
.pipeline-step-done{border-color:#22c55e;background:rgba(34,197,94,0.04)}
.pipeline-step-done .pipeline-step-num{background:#22c55e;color:#fff}
.pipeline-step-done .pipeline-step-status{color:#22c55e}
.pipeline-step-error{border-color:#dc2626;background:rgba(220,38,38,0.04)}
.pipeline-step-error .pipeline-step-num{background:#dc2626;color:#fff}
.pipeline-step-error .pipeline-step-status{color:#dc2626}
.pipeline-connector{display:flex;justify-content:center;padding:4px 0;color:var(--off2)}
.pipeline-inputs{margin-bottom:20px}
.pipeline-input-group{margin-bottom:12px}
.pipeline-input-group label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:4px}
.pipeline-input{width:100%;padding:10px 12px;border:1px solid var(--off2);border-radius:8px;font-size:14px;font-family:inherit;color:var(--navy);background:var(--white);box-sizing:border-box}
.pipeline-input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.1)}
.pipeline-results{margin-bottom:20px}
.pipeline-result-card{border:1px solid var(--off2);border-radius:10px;padding:14px;margin-bottom:10px}
.pipeline-result-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--slate);margin-bottom:6px}
.pipeline-result-content{font-size:14px;color:var(--navy);line-height:1.5}
.pipeline-actions{display:flex;justify-content:flex-end}
.pipeline-btn-run{padding:10px 24px;border-radius:8px;border:none;background:linear-gradient(135deg,#8b5cf6 0%,#0b5fd8 100%);color:var(--white);font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.pipeline-btn-run:hover{opacity:0.9;box-shadow:0 4px 16px rgba(139,92,246,0.3)}
.pipeline-btn-run:disabled{opacity:0.5;cursor:not-allowed}

/* DARK MODE: SMART SUGGESTIONS + PIPELINE */
[data-theme="dark"] .smart-suggest{border-color:rgba(255,255,255,0.08);background:linear-gradient(135deg,rgba(139,92,246,0.08) 0%,rgba(11,95,216,0.06) 100%)}
[data-theme="dark"] .smart-suggest-item{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .smart-suggest-item-label{color:#f3f4f6}
[data-theme="dark"] .pipeline-modal{background:#1f2937;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
[data-theme="dark"] .pipeline-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pipeline-header h3{color:#f3f4f6}
[data-theme="dark"] .pipeline-close{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .pipeline-step{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pipeline-step-num{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .pipeline-step-title{color:#f3f4f6}
[data-theme="dark"] .pipeline-input{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1);color:#f3f4f6}
[data-theme="dark"] .pipeline-result-card{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pipeline-result-content{color:#d1d5db}

/* ══════════════════════════════════════════
   M2P3C2: AI DASHBOARD
   ══════════════════════════════════════════ */
.aid-tabs{display:flex;gap:4px;border-bottom:1px solid var(--off2);margin-bottom:28px;overflow-x:auto}
.aid-tab{padding:10px 20px;font-size:14px;font-weight:600;color:var(--slate);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;white-space:nowrap}
.aid-tab:hover{color:var(--navy)}
.aid-tab-active{color:var(--blue);border-bottom-color:var(--blue)}
.aid-panel{animation:aidFadeIn 0.2s ease}
@keyframes aidFadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

/* Stats Row */
.aid-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}
.aid-stat-card{background:var(--white);border:1px solid var(--off2);border-radius:10px;padding:20px;text-align:center}
.aid-stat-val{font-family:'DM Serif Display',serif;font-size:32px;color:var(--navy);line-height:1.1}
.aid-stat-lbl{font-size:12px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-top:6px}

/* Cards */
.aid-card{background:var(--white);border:1px solid var(--off2);border-radius:10px;padding:20px 24px;margin-bottom:20px}
.aid-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.aid-card-title{font-family:'DM Serif Display',serif;font-size:18px;color:var(--navy)}
.aid-select-sm{padding:6px 12px;font-size:13px;border:1.5px solid var(--mist);border-radius:6px;background:var(--white);color:var(--navy);font-family:'DM Sans',sans-serif;cursor:pointer}
.aid-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}

/* Chart */
.aid-chart{min-height:140px;overflow:hidden}
.aid-chart-bars{display:flex;align-items:flex-end;gap:2px;padding-top:20px}
.aid-chart-bar-wrap{display:flex;flex-direction:column;align-items:center}
.aid-chart-bar{display:flex;flex-direction:column;justify-content:flex-end;border-radius:3px 3px 0 0;transition:height 0.3s ease}
.aid-chart-label{font-size:10px;color:var(--slate);margin-top:4px}

/* Breakdown */
.aid-bd-row{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--off2)}
.aid-bd-row:last-child{border-bottom:none}
.aid-bd-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--navy);min-width:140px}
.aid-bd-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.aid-bd-bar-wrap{flex:1;height:6px;background:var(--off2);border-radius:3px;overflow:hidden}
.aid-bd-bar{height:100%;border-radius:3px;transition:width 0.4s ease}
.aid-bd-val{font-size:14px;font-weight:600;color:var(--navy);min-width:80px;text-align:right}
.aid-bd-pct{font-weight:400;color:var(--slate)}

/* Recent Activity */
.aid-activity-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--off2)}
.aid-activity-row:last-child{border-bottom:none}
.aid-activity-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.aid-activity-info{flex:1;min-width:0}
.aid-activity-label{font-size:14px;font-weight:500;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aid-activity-meta{font-size:12px;color:var(--slate);margin-top:2px}

.aid-empty-sm{padding:24px;text-align:center;font-size:14px;color:var(--slate)}
.aid-empty{padding:48px 24px;text-align:center;color:var(--slate)}
.aid-empty svg{margin-bottom:12px;opacity:0.3}
.aid-empty div{font-size:14px}

/* Export bar */
.aid-export-bar{display:flex;gap:10px;justify-content:flex-end;padding-top:16px;border-top:1px solid var(--off2);margin-top:24px}

/* Archive */
.aid-archive-toolbar{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.aid-search-wrap{display:flex;align-items:center;gap:8px;flex:1;min-width:200px;border:1.5px solid var(--mist);border-radius:7px;padding:8px 14px;background:var(--white)}
.aid-search-wrap svg{flex-shrink:0;color:var(--slate)}
.aid-search-wrap input{border:none;outline:none;font-size:14px;color:var(--navy);width:100%;background:transparent;font-family:'DM Sans',sans-serif}
.aid-archive-list{display:flex;flex-direction:column;gap:8px}
.aid-archive-item{display:flex;align-items:center;gap:14px;padding:14px 18px;background:var(--white);border:1px solid var(--off2);border-radius:10px;cursor:pointer;transition:all 0.15s}
.aid-archive-item:hover{border-color:var(--blue);box-shadow:0 2px 8px rgba(11,95,216,0.06)}
.aid-archive-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.aid-archive-content{flex:1;min-width:0}
.aid-archive-label{font-size:14px;font-weight:600;color:var(--navy)}
.aid-archive-preview{font-size:13px;color:var(--slate);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aid-archive-meta{font-size:12px;color:var(--mist);margin-top:4px}
.aid-archive-actions{display:flex;gap:6px}
.aid-icon-btn{background:none;border:1px solid var(--off2);border-radius:6px;padding:6px;cursor:pointer;color:var(--slate);transition:all 0.13s;display:flex;align-items:center;justify-content:center}
.aid-icon-btn:hover{border-color:var(--blue);color:var(--blue)}

/* Modal */
.aid-modal-overlay{position:fixed;inset:0;background:rgba(10,22,40,0.55);z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;animation:aidFadeIn 0.15s ease}
.aid-modal{background:var(--white);border-radius:14px;width:100%;max-width:640px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(10,22,40,0.25)}
.aid-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--off2)}
.aid-modal-title{font-family:'DM Serif Display',serif;font-size:18px;color:var(--navy)}
.aid-modal-meta{font-size:12px;color:var(--slate);margin-top:4px}
.aid-modal-close{width:32px;height:32px;border-radius:8px;background:var(--off);border:none;font-size:18px;cursor:pointer;color:var(--slate);display:flex;align-items:center;justify-content:center}
.aid-modal-close:hover{background:var(--off2)}
.aid-modal-body{padding:20px 24px;overflow-y:auto;flex:1}
.aid-modal-footer{display:flex;gap:10px;justify-content:flex-end;padding:16px 24px;border-top:1px solid var(--off2)}

.aid-result-pre{font-size:13px;line-height:1.6;color:var(--body);white-space:pre-wrap;word-break:break-word;background:var(--off);padding:16px;border-radius:8px;max-height:400px;overflow-y:auto}
.aid-result-html{font-size:14px;line-height:1.6;color:var(--body)}
.aid-result-qa .aid-result-q{font-weight:600;color:var(--navy);margin-bottom:12px}

/* Calendar */
.aid-cal-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.aid-cal-month{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy)}
.aid-cal-grid{background:var(--white);border:1px solid var(--off2);border-radius:10px;overflow:hidden}
.aid-cal-header-row{display:grid;grid-template-columns:repeat(7,1fr);background:var(--off);border-bottom:1px solid var(--off2)}
.aid-cal-header{padding:10px;text-align:center;font-size:12px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate)}
.aid-cal-body{display:grid;grid-template-columns:repeat(7,1fr)}
.aid-cal-cell{min-height:80px;padding:8px;border-right:1px solid var(--off2);border-bottom:1px solid var(--off2);cursor:pointer;transition:background 0.13s}
.aid-cal-cell:nth-child(7n){border-right:none}
.aid-cal-cell:hover{background:rgba(11,95,216,0.02)}
.aid-cal-empty{background:var(--off);cursor:default}
.aid-cal-today{background:rgba(11,95,216,0.04)}
.aid-cal-today .aid-cal-day{color:var(--blue);font-weight:700}
.aid-cal-day{font-size:13px;font-weight:500;color:var(--navy);margin-bottom:4px}
.aid-cal-dots{display:flex;flex-wrap:wrap;gap:3px}
.aid-cal-dot{width:6px;height:6px;border-radius:50%;display:inline-block}
.aid-cal-dot-script{background:#0B5FD8}
.aid-cal-dot-ad{background:#059669}
.aid-cal-dot-qual{background:#7C3AED}
.aid-cal-dot-kb{background:#F59E0B}
.aid-cal-dot-sched{background:#EF4444}
.aid-cal-more{font-size:10px;color:var(--slate)}
.aid-cal-legend{display:flex;align-items:center;gap:16px;padding:14px 20px;font-size:12px;color:var(--slate);border-top:1px solid var(--off2)}
.aid-cal-legend .aid-cal-dot{width:8px;height:8px;margin-right:-8px}
.aid-cal-schedule-bar{display:flex;justify-content:flex-end;margin-top:16px}
.aid-cal-badge-sched{display:inline-block;background:#FEF2F2;color:#EF4444;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}
.aid-cal-badge-done{display:inline-block;color:var(--white);font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}
.aid-cal-detail-row{padding:10px 0;border-bottom:1px solid var(--off2);display:flex;align-items:center;gap:8px;font-size:14px;color:var(--navy)}
.aid-cal-detail-row:last-child{border-bottom:none}
.aid-cal-detail-note{font-size:12px;color:var(--slate);margin-top:4px}

/* Saved Prompts */
.aid-prompts-toolbar{display:flex;justify-content:flex-end;margin-bottom:20px}
.aid-prompts-list{display:flex;flex-direction:column;gap:12px}
.aid-prompt-card{background:var(--white);border:1px solid var(--off2);border-radius:10px;padding:18px 22px}
.aid-prompt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.aid-prompt-name{font-size:15px;font-weight:600;color:var(--navy)}
.aid-prompt-tool{font-size:12px;font-weight:600}
.aid-prompt-desc{font-size:13px;color:var(--slate);margin-bottom:10px}
.aid-prompt-config{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.aid-prompt-tag{display:inline-block;background:var(--off);padding:3px 10px;border-radius:5px;font-size:12px;color:var(--body)}
.aid-prompt-actions{display:flex;gap:8px;align-items:center}

/* DARK MODE: AI DASHBOARD */
[data-theme="dark"] .aid-stat-card{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .aid-stat-val{color:#f3f4f6}
[data-theme="dark"] .aid-stat-lbl{color:#9ca3af}
[data-theme="dark"] .aid-card{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .aid-card-title{color:#f3f4f6}
[data-theme="dark"] .aid-select-sm{background:rgba(255,255,255,0.06);border-color:rgba(255,255,255,0.1);color:#f3f4f6}
[data-theme="dark"] .aid-bd-label{color:#f3f4f6}
[data-theme="dark"] .aid-bd-bar-wrap{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .aid-bd-val{color:#f3f4f6}
[data-theme="dark"] .aid-bd-pct{color:#9ca3af}
[data-theme="dark"] .aid-bd-row{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .aid-activity-label{color:#f3f4f6}
[data-theme="dark"] .aid-activity-meta{color:#9ca3af}
[data-theme="dark"] .aid-activity-row{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .aid-empty-sm{color:#9ca3af}
[data-theme="dark"] .aid-search-wrap{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .aid-search-wrap input{color:#f3f4f6}
[data-theme="dark"] .aid-archive-item{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .aid-archive-item:hover{border-color:rgba(11,95,216,0.4)}
[data-theme="dark"] .aid-archive-label{color:#f3f4f6}
[data-theme="dark"] .aid-archive-preview{color:#9ca3af}
[data-theme="dark"] .aid-icon-btn{border-color:rgba(255,255,255,0.1);color:#9ca3af}
[data-theme="dark"] .aid-icon-btn:hover{border-color:rgba(11,95,216,0.4);color:#60a5fa}
[data-theme="dark"] .aid-modal{background:#1f2937;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
[data-theme="dark"] .aid-modal-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .aid-modal-title{color:#f3f4f6}
[data-theme="dark"] .aid-modal-close{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .aid-modal-footer{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .aid-modal-body{color:#d1d5db}
[data-theme="dark"] .aid-result-pre{background:rgba(255,255,255,0.04);color:#d1d5db}
[data-theme="dark"] .aid-cal-grid{background:rgba(255,255,255,0.02);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .aid-cal-header-row{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .aid-cal-header{color:#9ca3af}
[data-theme="dark"] .aid-cal-cell{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .aid-cal-cell:hover{background:rgba(11,95,216,0.06)}
[data-theme="dark"] .aid-cal-empty{background:rgba(255,255,255,0.02)}
[data-theme="dark"] .aid-cal-today{background:rgba(11,95,216,0.1)}
[data-theme="dark"] .aid-cal-day{color:#f3f4f6}
[data-theme="dark"] .aid-cal-legend{border-color:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .aid-cal-detail-row{border-color:rgba(255,255,255,0.06);color:#f3f4f6}
[data-theme="dark"] .aid-prompt-card{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .aid-prompt-name{color:#f3f4f6}
[data-theme="dark"] .aid-prompt-desc{color:#9ca3af}
[data-theme="dark"] .aid-prompt-tag{background:rgba(255,255,255,0.06);color:#d1d5db}
[data-theme="dark"] .aid-tab{color:#9ca3af}
[data-theme="dark"] .aid-tab:hover{color:#f3f4f6}
[data-theme="dark"] .aid-tab-active{color:#60a5fa;border-bottom-color:#60a5fa}
[data-theme="dark"] .aid-tabs{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .aid-export-bar{border-color:rgba(255,255,255,0.08)}

@media(max-width:768px){
  .aid-stats-row{grid-template-columns:repeat(2,1fr)}
  .aid-two-col{grid-template-columns:1fr}
  .aid-archive-toolbar{flex-direction:column}
  .aid-cal-cell{min-height:52px;padding:4px}
}

/* ══════════════════════════════════════════
   M3P1C2: ICP HISTORY + COMPARISON + EXPORT
   ══════════════════════════════════════════ */
.icp-hist-item{background:var(--white);border:1px solid var(--off2);border-radius:10px;padding:16px 20px;margin-bottom:10px;transition:all 0.15s}
.icp-hist-item:hover{border-color:rgba(11,95,216,0.3)}
.icp-hist-active{border-color:var(--blue);background:rgba(11,95,216,0.02)}
.icp-hist-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}
.icp-hist-title{font-size:15px;font-weight:600;color:var(--navy)}
.icp-hist-meta{font-size:12px;color:var(--slate);margin-top:2px}
.icp-hist-fit{font-size:12px;font-weight:700;letter-spacing:0.05em}
.icp-hist-badge{font-size:11px;font-weight:600;background:rgba(11,95,216,0.1);color:var(--blue);padding:2px 8px;border-radius:10px}
.icp-hist-tagline{font-size:13px;color:var(--body);margin-bottom:10px;line-height:1.5}
.icp-hist-actions{display:flex;gap:8px;align-items:center}

/* Comparison Table */
.icp-cmp-table{width:100%;border-collapse:collapse;margin-bottom:24px}
.icp-cmp-th{font-size:14px;font-weight:600;color:var(--navy);text-align:left;padding:10px 14px;border-bottom:2px solid var(--off2)}
.icp-cmp-row td{padding:10px 14px;border-bottom:1px solid var(--off2);font-size:14px}
.icp-cmp-label{font-weight:500;color:var(--slate);width:140px}
.icp-cmp-val{color:var(--navy)}
.icp-cmp-diff{background:rgba(234,179,8,0.06)}
.icp-cmp-sec{margin-bottom:20px}
.icp-cmp-sec-label{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:8px}
.icp-cmp-sec-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.icp-cmp-sec-col{font-size:13px;color:var(--body);line-height:1.6;background:var(--off);padding:12px 16px;border-radius:8px}

/* Export Options */
.icp-export-options{display:flex;flex-direction:column;gap:10px}
.icp-export-btn{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--white);border:1.5px solid var(--off2);border-radius:10px;cursor:pointer;text-align:left;transition:all 0.15s;font-family:'DM Sans',sans-serif;width:100%}
.icp-export-btn:hover{border-color:var(--blue);background:rgba(11,95,216,0.02)}
.icp-export-btn svg{flex-shrink:0;color:var(--blue)}
.icp-export-btn-title{font-size:15px;font-weight:600;color:var(--navy)}
.icp-export-btn-desc{font-size:13px;color:var(--slate);margin-top:2px}

/* DARK MODE: ICP History + Comparison + Export */
[data-theme="dark"] .icp-hist-item{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .icp-hist-item:hover{border-color:rgba(11,95,216,0.4)}
[data-theme="dark"] .icp-hist-active{background:rgba(11,95,216,0.08);border-color:rgba(11,95,216,0.4)}
[data-theme="dark"] .icp-hist-title{color:#f3f4f6}
[data-theme="dark"] .icp-hist-meta{color:#9ca3af}
[data-theme="dark"] .icp-hist-tagline{color:#d1d5db}
[data-theme="dark"] .icp-cmp-th{color:#f3f4f6;border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .icp-cmp-row td{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .icp-cmp-label{color:#9ca3af}
[data-theme="dark"] .icp-cmp-val{color:#f3f4f6}
[data-theme="dark"] .icp-cmp-diff{background:rgba(234,179,8,0.08)}
[data-theme="dark"] .icp-cmp-sec-col{background:rgba(255,255,255,0.04);color:#d1d5db}
[data-theme="dark"] .icp-export-btn{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .icp-export-btn:hover{border-color:rgba(11,95,216,0.4)}
[data-theme="dark"] .icp-export-btn-title{color:#f3f4f6}
[data-theme="dark"] .icp-export-btn-desc{color:#9ca3af}

/* M3P2C2: ICP Insights Engine */
.icp-ins-tabs{display:flex;gap:4px;border-bottom:1px solid var(--off2);margin-bottom:16px;overflow-x:auto}
.icp-ins-tab{padding:8px 14px;font-size:13px;font-weight:600;color:var(--slate);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;white-space:nowrap}
.icp-ins-tab:hover{color:var(--navy)}
.icp-ins-tab-active{color:#7C3AED;border-bottom-color:#7C3AED}
.icp-ins-content{font-size:14px;line-height:1.7;color:var(--body)}
.icp-ins-content b{color:var(--navy)}
[data-theme="dark"] .icp-ins-tabs{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .icp-ins-tab{color:#9ca3af}
[data-theme="dark"] .icp-ins-tab:hover{color:#f3f4f6}
[data-theme="dark"] .icp-ins-tab-active{color:#a78bfa;border-bottom-color:#a78bfa}
[data-theme="dark"] .icp-ins-content{color:#d1d5db}
[data-theme="dark"] .icp-ins-content b{color:#f3f4f6}

/* M3P3C2: Partner Certification Quiz */
.cert-progress{margin-bottom:20px}
.cert-progress-bar{height:6px;background:var(--off);border-radius:3px;overflow:hidden}
.cert-progress-fill{height:100%;background:linear-gradient(90deg,var(--blue),var(--navy));border-radius:3px;transition:width 0.3s}
.cert-progress-label{font-size:12px;color:var(--slate);margin-top:6px;text-align:right}
.cert-category{font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--blue);margin-bottom:8px}
.cert-question{font-size:17px;font-weight:600;color:var(--navy);line-height:1.5;margin-bottom:20px}
.cert-options{display:flex;flex-direction:column;gap:10px}
.cert-option{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--white);border:1.5px solid var(--off2);border-radius:10px;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;font-size:15px;color:var(--body);text-align:left}
.cert-option:hover{border-color:var(--blue);background:rgba(11,95,216,0.03)}
.cert-option-letter{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--off);font-weight:700;font-size:13px;color:var(--slate);flex-shrink:0;transition:all 0.15s}
.cert-option:hover .cert-option-letter{background:rgba(11,95,216,0.1);color:var(--blue)}
.cert-option-text{flex:1}
.cert-option-correct{border-color:#059669;background:rgba(5,150,105,0.06)}
.cert-option-correct .cert-option-letter{background:#059669;color:#fff}
.cert-option-wrong{border-color:#EF4444;background:rgba(239,68,68,0.06)}
.cert-option-wrong .cert-option-letter{background:#EF4444;color:#fff}

.cert-result-header{text-align:center;padding:24px 0 20px}
.cert-result-score{font-family:'DM Serif Display',serif;font-size:56px;line-height:1}
.cert-result-tier{font-size:18px;font-weight:700;margin-top:4px}
.cert-result-detail{font-size:13px;color:var(--slate);margin-top:8px}
.cert-badge-display{display:flex;align-items:center;gap:12px;justify-content:center;padding:16px;background:var(--off);border-radius:10px;margin-bottom:24px}
.cert-badge-icon{width:52px;height:52px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;background:var(--white)}
.cert-badge-text{font-size:16px;font-weight:700}
.cert-fail-msg{text-align:center;padding:14px 16px;background:rgba(239,68,68,0.06);border:1px solid rgba(239,68,68,0.15);border-radius:8px;color:#EF4444;font-size:14px;margin-bottom:24px}

.cert-cats-title{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:12px}
.cert-cat-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.cert-cat-label{font-size:13px;color:var(--body);width:140px;flex-shrink:0}
.cert-cat-bar-wrap{flex:1;height:8px;background:var(--off);border-radius:4px;overflow:hidden}
.cert-cat-bar{height:100%;border-radius:4px;transition:width 0.4s}
.cert-cat-val{font-size:13px;font-weight:700;width:36px;text-align:right;flex-shrink:0}

.cert-review-title{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin:24px 0 12px}
.cert-review-item{padding:12px 14px;background:var(--off);border-radius:8px;margin-bottom:8px}
.cert-review-q{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:6px;line-height:1.4}
.cert-review-wrong{font-size:13px;color:#EF4444;margin-bottom:2px}
.cert-review-correct{font-size:13px;color:#059669;font-weight:600}

.cert-result-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:24px;padding-top:16px;border-top:1px solid var(--off2)}

.cert-badges-row{display:flex;gap:12px;justify-content:center;margin-bottom:16px}
.cert-badge-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 20px;border:2px solid;border-radius:12px;background:var(--white)}
.cert-badge-tier{font-size:13px;font-weight:700}
.cert-badge-score{font-size:12px;color:var(--slate)}

.cert-hist-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--off2)}
.cert-hist-row:last-child{border-bottom:none}
.cert-hist-score{font-family:'DM Serif Display',serif;font-size:28px;width:60px;text-align:center;flex-shrink:0}
.cert-hist-info{flex:1}
.cert-hist-tier{font-size:14px;font-weight:700}
.cert-hist-meta{font-size:12px;color:var(--slate);margin-top:2px}

.cert-section{margin-bottom:24px}
.cert-cta{display:flex;gap:8px;margin-top:12px}
.cert-widget{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--off);border-radius:10px}
.cert-widget-empty{display:flex;align-items:center;gap:8px;flex:1;font-size:13px;color:var(--slate)}
.cert-widget-earned{background:var(--white);border:1.5px solid var(--off2)}
.cert-widget-badge{width:36px;height:36px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;background:var(--off);flex-shrink:0}
.cert-widget-tier{font-size:14px;font-weight:700}
.cert-widget-score{font-size:12px;color:var(--slate)}

/* Dark mode */
[data-theme="dark"] .cert-option{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#d1d5db}
[data-theme="dark"] .cert-option:hover{border-color:rgba(96,165,250,0.4);background:rgba(96,165,250,0.06)}
[data-theme="dark"] .cert-option-letter{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .cert-option:hover .cert-option-letter{background:rgba(96,165,250,0.15);color:#60a5fa}
[data-theme="dark"] .cert-option-correct{border-color:rgba(5,150,105,0.5);background:rgba(5,150,105,0.1)}
[data-theme="dark"] .cert-option-wrong{border-color:rgba(239,68,68,0.5);background:rgba(239,68,68,0.1)}
[data-theme="dark"] .cert-question{color:#f3f4f6}
[data-theme="dark"] .cert-category{color:#60a5fa}
[data-theme="dark"] .cert-progress-bar{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .cert-result-detail{color:#9ca3af}
[data-theme="dark"] .cert-badge-display{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cert-badge-icon{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .cert-review-item{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cert-review-q{color:#f3f4f6}
[data-theme="dark"] .cert-cat-label{color:#d1d5db}
[data-theme="dark"] .cert-cat-bar-wrap{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .cert-badge-card{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .cert-badge-score{color:#9ca3af}
[data-theme="dark"] .cert-hist-row{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .cert-hist-meta{color:#9ca3af}
[data-theme="dark"] .cert-widget{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cert-widget-empty{color:#9ca3af}
[data-theme="dark"] .cert-widget-earned{background:rgba(255,255,255,0.06);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .cert-widget-badge{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .cert-widget-score{color:#9ca3af}
[data-theme="dark"] .cert-result-actions{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .cert-fail-msg{background:rgba(239,68,68,0.1);border-color:rgba(239,68,68,0.2)}
[data-theme="dark"] .cert-cats-title,[data-theme="dark"] .cert-review-title{color:#9ca3af}

/* M4P1C2: Challenge Analytics Dashboard */
.ch-analytics-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#7C3AED,#6D28D9);color:#fff;border:none;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:opacity 0.15s}
.ch-analytics-btn:hover{opacity:0.85}
.cha-tabs{display:flex;gap:4px;padding:0 24px;border-bottom:1px solid var(--off2);overflow-x:auto}
.cha-tab{padding:10px 14px;font-size:13px;font-weight:600;color:var(--slate);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;white-space:nowrap}
.cha-tab:hover{color:var(--navy)}
.cha-tab-active{color:#7C3AED;border-bottom-color:#7C3AED}
.cha-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.cha-stat-card{background:var(--off);border-radius:10px;padding:16px;text-align:center}
.cha-stat-title{font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:6px}
.cha-stat-value{font-family:'DM Serif Display',serif;font-size:24px;line-height:1.2}
.cha-stat-sub{font-size:12px;color:var(--slate);margin-top:4px}
.cha-section-title{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:12px}
.cha-donut-section{display:flex;align-items:center;gap:32px;justify-content:center;margin-bottom:24px}
.cha-donut-wrap{width:140px;height:140px;flex-shrink:0}
.cha-donut{width:100%;height:100%}
.cha-donut-legend{display:flex;flex-direction:column;gap:8px}
.cha-legend-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--body)}
.cha-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;display:inline-block}
.cha-points-bar-wrap{height:10px;background:var(--off);border-radius:5px;overflow:hidden;margin-bottom:6px}
.cha-points-bar{height:100%;background:linear-gradient(90deg,#7C3AED,#A78BFA);border-radius:5px;transition:width 0.4s}
.cha-points-labels{display:flex;justify-content:space-between;font-size:12px;color:var(--slate);margin-bottom:20px}

/* Heatmap */
.cha-heatmap{display:flex;gap:6px;margin-bottom:20px}
.cha-hm-labels{display:flex;flex-direction:column;gap:3px}
.cha-hm-label{height:14px;font-size:10px;color:var(--slate);display:flex;align-items:center}
.cha-hm-grid{display:flex;gap:3px}
.cha-hm-week{display:flex;flex-direction:column;gap:3px}
.cha-hm-cell{width:14px;height:14px;border-radius:3px;cursor:default}
.cha-hm-0{background:var(--off)}
.cha-hm-1{background:rgba(59,130,246,0.25)}
.cha-hm-2{background:rgba(59,130,246,0.55)}
.cha-hm-3{background:#3B82F6}
.cha-hm-future{background:var(--off);opacity:0.4}
.cha-heatmap-legend{display:flex;align-items:center;gap:4px;margin-bottom:12px;justify-content:flex-end}
.cha-hm-legend-label{font-size:10px;color:var(--slate)}

/* 30-day calendar grid */
.cha-cal-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;margin-bottom:12px}
.cha-cal-cell{aspect-ratio:1;border-radius:6px;display:flex;align-items:center;justify-content:center;position:relative}
.cha-cal-num{font-size:12px;font-weight:700}
.cha-cal-done{background:rgba(5,150,105,0.15);color:#059669}
.cha-cal-skip{background:rgba(239,68,68,0.1);color:#EF4444}
.cha-cal-today{background:rgba(59,130,246,0.15);color:#3B82F6;box-shadow:0 0 0 2px #3B82F6}
.cha-cal-miss{background:rgba(156,163,175,0.1);color:#9CA3AF}
.cha-cal-future{background:var(--off);color:var(--mist)}
.cha-cal-legend{display:flex;gap:16px;justify-content:center;font-size:11px;color:var(--slate)}
.cha-cal-dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px;vertical-align:middle}
.cha-cal-dot.cha-cal-done{background:rgba(5,150,105,0.15)}
.cha-cal-dot.cha-cal-skip{background:rgba(239,68,68,0.1)}
.cha-cal-dot.cha-cal-today{background:rgba(59,130,246,0.15)}
.cha-cal-dot.cha-cal-future{background:var(--off)}

/* Time Patterns */
.cha-insights-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.cha-insight-card{background:var(--off);border-radius:10px;padding:16px;text-align:center}
.cha-insight-label{font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:4px}
.cha-insight-value{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy)}
.cha-hour-chart{display:flex;gap:2px;height:100px;align-items:flex-end;margin-bottom:4px}
.cha-hour-col{flex:1;display:flex;flex-direction:column;align-items:center}
.cha-hour-bar-wrap{flex:1;width:100%;display:flex;align-items:flex-end;min-height:80px}
.cha-hour-bar{width:100%;background:linear-gradient(180deg,#7C3AED,#A78BFA);border-radius:2px 2px 0 0;transition:height 0.3s;min-height:2px}
.cha-hour-label{font-size:9px;color:var(--slate);margin-top:4px;height:14px}
.cha-dow-chart{display:flex;flex-direction:column;gap:8px}
.cha-dow-row{display:flex;align-items:center;gap:10px}
.cha-dow-label{font-size:12px;color:var(--slate);width:32px;flex-shrink:0}
.cha-dow-bar-wrap{flex:1;height:20px;background:var(--off);border-radius:4px;overflow:hidden}
.cha-dow-bar{height:100%;background:linear-gradient(90deg,#3B82F6,#60A5FA);border-radius:4px;transition:width 0.4s}
.cha-dow-count{font-size:12px;font-weight:700;color:var(--navy);width:24px;text-align:right}
.cha-empty{text-align:center;padding:40px 20px;color:var(--slate);font-size:14px}

/* Category Analysis */
.cha-cat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.cha-cat-card{background:var(--off);border-radius:10px;padding:16px}
.cha-cat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.cha-cat-name{font-size:13px;font-weight:700}
.cha-cat-pct{font-size:18px;font-weight:700}
.cha-cat-bar-outer{height:6px;background:rgba(0,0,0,0.06);border-radius:3px;overflow:hidden;margin-bottom:8px}
.cha-cat-bar-inner{height:100%;border-radius:3px;transition:width 0.4s}
.cha-cat-detail{font-size:11px;color:var(--slate);margin-bottom:10px}
.cha-cat-tasks{display:flex;flex-direction:column;gap:4px}
.cha-cat-task{font-size:12px;color:var(--body);display:flex;align-items:flex-start;gap:6px;line-height:1.4}
.cha-cat-task-check{flex-shrink:0;width:14px;color:var(--mist)}
.cha-cat-task-done{color:var(--slate)}
.cha-cat-task-done .cha-cat-task-check{color:#059669}

/* Projections */
.cha-proj-header{text-align:center;margin-bottom:20px}
.cha-proj-tier{font-family:'DM Serif Display',serif;font-size:28px;line-height:1}
.cha-proj-sub{font-size:13px;color:var(--slate);margin-top:6px}
.cha-traj-chart{display:flex;gap:2px;height:120px;align-items:flex-end;margin-bottom:8px}
.cha-traj-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}
.cha-traj-bars{flex:1;width:100%;position:relative;display:flex;align-items:flex-end}
.cha-traj-ideal{position:absolute;bottom:0;left:0;right:0;background:var(--off2);border-radius:2px 2px 0 0}
.cha-traj-actual{position:absolute;bottom:0;left:15%;right:15%;background:#3B82F6;border-radius:2px 2px 0 0;z-index:1}
.cha-traj-proj{position:absolute;bottom:0;left:15%;right:15%;background:rgba(59,130,246,0.3);border-radius:2px 2px 0 0;z-index:1}
.cha-traj-label{font-size:9px;color:var(--slate);height:14px;margin-top:2px}
.cha-traj-legend{display:flex;gap:16px;justify-content:center;font-size:11px;color:var(--slate);margin-bottom:20px}
.cha-recs{display:flex;flex-direction:column;gap:10px}
.cha-rec-card{padding:14px 16px;background:var(--off);border-radius:8px;border-left:3px solid}
.cha-rec-title{font-size:13px;font-weight:700;margin-bottom:4px}
.cha-rec-desc{font-size:13px;color:var(--body);line-height:1.5}

/* Dark mode */
[data-theme="dark"] .ch-analytics-btn{background:linear-gradient(135deg,#7C3AED,#6D28D9)}
[data-theme="dark"] .cha-tabs{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .cha-tab{color:#9ca3af}
[data-theme="dark"] .cha-tab:hover{color:#f3f4f6}
[data-theme="dark"] .cha-tab-active{color:#a78bfa;border-bottom-color:#a78bfa}
[data-theme="dark"] .cha-stat-card{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cha-stat-sub{color:#9ca3af}
[data-theme="dark"] .cha-stat-title{color:#9ca3af}
[data-theme="dark"] .cha-section-title{color:#9ca3af}
[data-theme="dark"] .cha-points-bar-wrap{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .cha-points-labels{color:#9ca3af}
[data-theme="dark"] .cha-legend-row{color:#d1d5db}
[data-theme="dark"] .cha-donut text{fill:#f3f4f6}
[data-theme="dark"] .cha-hm-0{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cha-hm-1{background:rgba(124,58,237,0.25)}
[data-theme="dark"] .cha-hm-2{background:rgba(124,58,237,0.5)}
[data-theme="dark"] .cha-hm-3{background:#7C3AED}
[data-theme="dark"] .cha-hm-future{background:rgba(255,255,255,0.02)}
[data-theme="dark"] .cha-hm-legend-label{color:#9ca3af}
[data-theme="dark"] .cha-cal-done{background:rgba(5,150,105,0.2);color:#34D399}
[data-theme="dark"] .cha-cal-skip{background:rgba(239,68,68,0.15);color:#F87171}
[data-theme="dark"] .cha-cal-today{background:rgba(96,165,250,0.2);color:#60A5FA;box-shadow:0 0 0 2px #60A5FA}
[data-theme="dark"] .cha-cal-miss{background:rgba(255,255,255,0.03);color:#6B7280}
[data-theme="dark"] .cha-cal-future{background:rgba(255,255,255,0.02);color:#4B5563}
[data-theme="dark"] .cha-cal-legend{color:#9ca3af}
[data-theme="dark"] .cha-insight-card{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cha-insight-label{color:#9ca3af}
[data-theme="dark"] .cha-insight-value{color:#f3f4f6}
[data-theme="dark"] .cha-hour-label{color:#9ca3af}
[data-theme="dark"] .cha-dow-label{color:#9ca3af}
[data-theme="dark"] .cha-dow-bar-wrap{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .cha-dow-count{color:#f3f4f6}
[data-theme="dark"] .cha-empty{color:#9ca3af}
[data-theme="dark"] .cha-cat-card{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cha-cat-bar-outer{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .cha-cat-detail{color:#9ca3af}
[data-theme="dark"] .cha-cat-task{color:#d1d5db}
[data-theme="dark"] .cha-cat-task-check{color:#6B7280}
[data-theme="dark"] .cha-cat-task-done{color:#9ca3af}
[data-theme="dark"] .cha-proj-sub{color:#9ca3af}
[data-theme="dark"] .cha-traj-ideal{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .cha-traj-label{color:#9ca3af}
[data-theme="dark"] .cha-traj-legend{color:#9ca3af}
[data-theme="dark"] .cha-rec-card{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cha-rec-desc{color:#d1d5db}

@media(max-width:600px){
  .cha-stats-grid{grid-template-columns:repeat(2,1fr)}
  .cha-cat-grid{grid-template-columns:1fr}
  .cha-donut-section{flex-direction:column;align-items:center}
  .cha-insights-row{grid-template-columns:1fr}
}

/* M4P2C2: Team Challenges & Accountability */
.ch-team-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#059669,#047857);color:#fff;border:none;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:opacity 0.15s}
.ch-team-btn:hover{opacity:0.85}
.cht-tabs{display:flex;gap:4px;padding:0 24px;border-bottom:1px solid var(--off2);overflow-x:auto}
.cht-tab{padding:10px 14px;font-size:13px;font-weight:600;color:var(--slate);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;white-space:nowrap}
.cht-tab:hover{color:var(--navy)}
.cht-tab-active{color:#059669;border-bottom-color:#059669}
.cht-section-title{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:12px}

/* Find Team */
.cht-find-header{text-align:center;margin-bottom:24px}
.cht-find-title{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy);margin-bottom:8px}
.cht-find-desc{font-size:14px;color:var(--body);line-height:1.6}
.cht-quickmatch{text-align:center;padding:24px;background:linear-gradient(135deg,rgba(5,150,105,0.06),rgba(4,120,87,0.06));border:1.5px solid rgba(5,150,105,0.15);border-radius:12px;margin-bottom:24px}
.cht-qm-title{font-size:16px;font-weight:700;color:var(--navy)}
.cht-qm-desc{font-size:13px;color:var(--body);margin-top:4px}
.cht-partner-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.cht-partner-card{display:flex;align-items:center;gap:12px;padding:14px;background:var(--off);border-radius:10px}
.cht-partner-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}
.cht-partner-avatar-sm{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
.cht-avatar-you{background:linear-gradient(135deg,#059669,#047857)}
.cht-partner-info{flex:1;min-width:0}
.cht-partner-name{font-size:14px;font-weight:600;color:var(--navy)}
.cht-partner-firm{font-size:11px;color:var(--slate);margin-top:1px}
.cht-partner-stats{font-size:11px;color:var(--body);margin-top:3px}

/* Match Success */
.cht-match-success{text-align:center;padding:24px}
.cht-match-icon{margin-bottom:12px}
.cht-match-title{font-family:'DM Serif Display',serif;font-size:28px;color:#059669}
.cht-match-team{font-size:16px;font-weight:700;color:var(--navy);margin-top:4px}
.cht-match-members{display:flex;justify-content:center;gap:16px;margin-top:16px}
.cht-match-member{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--body)}

/* Dashboard */
.cht-dash-header{text-align:center;margin-bottom:20px}
.cht-team-name{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy)}
.cht-team-meta{font-size:12px;color:var(--slate);margin-top:4px}
.cht-team-stats{display:flex;justify-content:center;gap:24px;margin-bottom:24px;padding:16px;background:var(--off);border-radius:10px}
.cht-ts{text-align:center}
.cht-ts-val{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy)}
.cht-ts-label{font-size:11px;color:var(--slate);margin-top:2px}
.cht-members-list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}
.cht-member-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--off);border-radius:10px}
.cht-member-you{background:rgba(5,150,105,0.06);border:1.5px solid rgba(5,150,105,0.15)}
.cht-member-info{flex:1;min-width:0}
.cht-member-name{font-size:14px;font-weight:600;color:var(--navy)}
.cht-member-firm{font-size:11px;color:var(--slate)}
.cht-member-stats{display:flex;gap:12px}
.cht-ms{font-size:12px;color:var(--body)}
.cht-you-tag{font-size:10px;background:#059669;color:#fff;padding:1px 6px;border-radius:4px;font-weight:700;margin-left:4px}
.cht-team-tag{font-size:10px;background:var(--blue);color:#fff;padding:1px 6px;border-radius:4px;font-weight:700;margin-left:4px}
.cht-dash-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid var(--off2)}

/* Challenge cards */
.cht-challenge-card{padding:16px;background:var(--off);border-radius:10px}
.cht-ch-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:4px}
.cht-ch-desc{font-size:13px;color:var(--body);margin-bottom:12px}
.cht-ch-prog-wrap{margin-top:8px}
.cht-ch-prog-bar{height:8px;background:rgba(0,0,0,0.06);border-radius:4px;overflow:hidden}
.cht-ch-prog-fill{height:100%;background:linear-gradient(90deg,#059669,#34D399);border-radius:4px;transition:width 0.4s}
.cht-ch-prog-label{font-size:11px;color:var(--slate);margin-top:4px}

/* Weekly Challenge */
.cht-wc-card{padding:20px;background:var(--off);border-radius:12px;border:1.5px solid var(--off2)}
.cht-wc-complete{border-color:#059669;background:rgba(5,150,105,0.04)}
.cht-wc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.cht-wc-title{font-size:18px;font-weight:700;color:var(--navy)}
.cht-wc-reward{font-size:14px;font-weight:700;color:#059669;background:rgba(5,150,105,0.1);padding:4px 10px;border-radius:20px}
.cht-wc-desc{font-size:14px;color:var(--body);margin-bottom:4px}
.cht-wc-goal{font-size:12px;font-weight:600;color:var(--slate);margin-bottom:8px}
.cht-wc-won{text-align:center;padding:12px;background:rgba(5,150,105,0.08);border-radius:8px;color:#059669;font-weight:700;font-size:14px;margin-top:12px}
.cht-all-challenges{display:flex;flex-direction:column;gap:8px}
.cht-ch-mini{padding:14px;background:var(--off);border-radius:8px}
.cht-ch-mini-active{border:1.5px solid rgba(5,150,105,0.3);background:rgba(5,150,105,0.03)}
.cht-ch-mini-title{font-size:14px;font-weight:600;color:var(--navy)}
.cht-ch-mini-desc{font-size:12px;color:var(--body);margin-top:2px}
.cht-ch-mini-reward{font-size:11px;color:var(--slate);margin-top:4px}
.cht-active-tag{font-size:10px;background:#059669;color:#fff;padding:1px 6px;border-radius:4px;font-weight:700}

/* Check-ins */
.cht-checkin-form{padding:4px}
.cht-ci-title{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy);margin-bottom:4px}
.cht-ci-desc{font-size:13px;color:var(--body);margin-bottom:20px}
.cht-ci-field{margin-bottom:16px}
.cht-ci-label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:8px}
.cht-mood-row{display:flex;gap:8px}
.cht-mood-btn{padding:8px 16px;border:1.5px solid var(--off2);border-radius:20px;background:var(--white);font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:var(--body);cursor:pointer;transition:all 0.15s}
.cht-mood-btn:hover{border-color:var(--blue)}
.cht-mood-active{border-color:#059669;background:rgba(5,150,105,0.06);color:#059669}
.cht-ci-input{width:100%;padding:10px 14px;border:1.5px solid var(--off2);border-radius:8px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--body);resize:vertical;background:var(--white)}
.cht-ci-input:focus{outline:none;border-color:var(--blue)}
.cht-checkin-done{text-align:center;padding:24px;background:rgba(5,150,105,0.04);border-radius:12px;margin-bottom:20px}
.cht-ci-done-title{font-size:16px;font-weight:700;color:#059669;margin-top:8px}
.cht-ci-done-mood{font-size:13px;color:var(--body);margin-top:6px;text-transform:capitalize}
.cht-ci-done-text{font-size:13px;color:var(--body);margin-top:4px}

/* Feed */
.cht-feed{display:flex;flex-direction:column;gap:12px}
.cht-feed-item{display:flex;gap:10px;padding:12px;background:var(--off);border-radius:8px}
.cht-feed-content{flex:1;min-width:0}
.cht-feed-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.cht-feed-name{font-size:13px;font-weight:700;color:var(--navy)}
.cht-feed-mood{font-size:11px;font-weight:600;text-transform:capitalize}
.cht-feed-time{font-size:11px;color:var(--slate);margin-left:auto}
.cht-feed-text{font-size:13px;color:var(--body);line-height:1.5}

/* Leaderboard */
.cht-lb{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}
.cht-lb-row{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--off);border-radius:8px}
.cht-lb-you{background:rgba(5,150,105,0.06);border:1.5px solid rgba(5,150,105,0.15)}
.cht-lb-teammate{border:1px solid rgba(11,95,216,0.15)}
.cht-lb-top1{background:linear-gradient(135deg,rgba(245,158,11,0.08),rgba(245,158,11,0.03))}
.cht-lb-top2{background:linear-gradient(135deg,rgba(148,163,184,0.08),rgba(148,163,184,0.03))}
.cht-lb-top3{background:linear-gradient(135deg,rgba(205,127,50,0.08),rgba(205,127,50,0.03))}
.cht-lb-rank{font-family:'DM Serif Display',serif;font-size:18px;color:var(--navy);width:28px;text-align:center;flex-shrink:0}
.cht-lb-info{flex:1;min-width:0}
.cht-lb-name{font-size:13px;font-weight:600;color:var(--navy)}
.cht-lb-meta{font-size:11px;color:var(--slate)}
.cht-lb-pts{font-size:14px;font-weight:700;color:var(--navy);flex-shrink:0}
.cht-team-lb{display:flex;flex-direction:column;gap:6px}
.cht-team-lb-row{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--off);border-radius:8px}
.cht-team-lb-you{background:rgba(5,150,105,0.06);border:1.5px solid rgba(5,150,105,0.15)}
.cht-team-lb-name{flex:1;font-size:14px;font-weight:600;color:var(--navy)}

/* Dark mode */
[data-theme="dark"] .ch-team-btn{background:linear-gradient(135deg,#059669,#047857)}
[data-theme="dark"] .cht-tabs{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .cht-tab{color:#9ca3af}
[data-theme="dark"] .cht-tab:hover{color:#f3f4f6}
[data-theme="dark"] .cht-tab-active{color:#34D399;border-bottom-color:#34D399}
[data-theme="dark"] .cht-section-title{color:#9ca3af}
[data-theme="dark"] .cht-find-title{color:#f3f4f6}
[data-theme="dark"] .cht-find-desc{color:#d1d5db}
[data-theme="dark"] .cht-quickmatch{background:rgba(5,150,105,0.08);border-color:rgba(5,150,105,0.2)}
[data-theme="dark"] .cht-qm-title{color:#f3f4f6}
[data-theme="dark"] .cht-qm-desc{color:#d1d5db}
[data-theme="dark"] .cht-partner-card{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cht-partner-name{color:#f3f4f6}
[data-theme="dark"] .cht-partner-firm{color:#9ca3af}
[data-theme="dark"] .cht-partner-stats{color:#d1d5db}
[data-theme="dark"] .cht-match-title{color:#34D399}
[data-theme="dark"] .cht-match-team{color:#f3f4f6}
[data-theme="dark"] .cht-match-member{color:#d1d5db}
[data-theme="dark"] .cht-team-name{color:#f3f4f6}
[data-theme="dark"] .cht-team-meta{color:#9ca3af}
[data-theme="dark"] .cht-team-stats{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cht-ts-val{color:#f3f4f6}
[data-theme="dark"] .cht-ts-label{color:#9ca3af}
[data-theme="dark"] .cht-member-row{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cht-member-you{background:rgba(5,150,105,0.08);border-color:rgba(5,150,105,0.2)}
[data-theme="dark"] .cht-member-name{color:#f3f4f6}
[data-theme="dark"] .cht-member-firm{color:#9ca3af}
[data-theme="dark"] .cht-ms{color:#d1d5db}
[data-theme="dark"] .cht-dash-actions{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .cht-challenge-card{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cht-ch-title{color:#f3f4f6}
[data-theme="dark"] .cht-ch-desc{color:#d1d5db}
[data-theme="dark"] .cht-ch-prog-bar{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .cht-ch-prog-label{color:#9ca3af}
[data-theme="dark"] .cht-wc-card{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .cht-wc-complete{border-color:rgba(5,150,105,0.4);background:rgba(5,150,105,0.08)}
[data-theme="dark"] .cht-wc-title{color:#f3f4f6}
[data-theme="dark"] .cht-wc-desc{color:#d1d5db}
[data-theme="dark"] .cht-wc-goal{color:#9ca3af}
[data-theme="dark"] .cht-wc-won{background:rgba(5,150,105,0.12);color:#34D399}
[data-theme="dark"] .cht-ch-mini{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cht-ch-mini-active{background:rgba(5,150,105,0.06);border-color:rgba(5,150,105,0.25)}
[data-theme="dark"] .cht-ch-mini-title{color:#f3f4f6}
[data-theme="dark"] .cht-ch-mini-desc{color:#d1d5db}
[data-theme="dark"] .cht-ch-mini-reward{color:#9ca3af}
[data-theme="dark"] .cht-ci-title{color:#f3f4f6}
[data-theme="dark"] .cht-ci-desc{color:#d1d5db}
[data-theme="dark"] .cht-ci-label{color:#f3f4f6}
[data-theme="dark"] .cht-mood-btn{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#d1d5db}
[data-theme="dark"] .cht-mood-btn:hover{border-color:rgba(96,165,250,0.4)}
[data-theme="dark"] .cht-mood-active{border-color:#34D399;background:rgba(5,150,105,0.1);color:#34D399}
[data-theme="dark"] .cht-ci-input{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#f3f4f6}
[data-theme="dark"] .cht-ci-input:focus{border-color:rgba(96,165,250,0.5)}
[data-theme="dark"] .cht-checkin-done{background:rgba(5,150,105,0.08)}
[data-theme="dark"] .cht-ci-done-mood{color:#d1d5db}
[data-theme="dark"] .cht-ci-done-text{color:#d1d5db}
[data-theme="dark"] .cht-feed-item{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cht-feed-name{color:#f3f4f6}
[data-theme="dark"] .cht-feed-time{color:#9ca3af}
[data-theme="dark"] .cht-feed-text{color:#d1d5db}
[data-theme="dark"] .cht-lb-row{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cht-lb-you{background:rgba(5,150,105,0.08);border-color:rgba(5,150,105,0.2)}
[data-theme="dark"] .cht-lb-teammate{border-color:rgba(96,165,250,0.2)}
[data-theme="dark"] .cht-lb-rank{color:#f3f4f6}
[data-theme="dark"] .cht-lb-name{color:#f3f4f6}
[data-theme="dark"] .cht-lb-meta{color:#9ca3af}
[data-theme="dark"] .cht-lb-pts{color:#f3f4f6}
[data-theme="dark"] .cht-team-lb-row{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .cht-team-lb-you{background:rgba(5,150,105,0.08);border-color:rgba(5,150,105,0.2)}
[data-theme="dark"] .cht-team-lb-name{color:#f3f4f6}

@media(max-width:600px){
  .cht-partner-list{grid-template-columns:1fr}
  .cht-member-stats{flex-direction:column;gap:2px}
  .cht-match-members{flex-direction:column;gap:8px}
  .cht-mood-row{flex-wrap:wrap}
}

/* M4P3C2: Challenge Builder */
.ch-builder-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#F59E0B,#D97706);color:#fff;border:none;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:opacity 0.15s}
.ch-builder-btn:hover{opacity:0.85}
.chb-tabs{display:flex;gap:4px;padding:0 24px;border-bottom:1px solid var(--off2);overflow-x:auto}
.chb-tab{padding:10px 14px;font-size:13px;font-weight:600;color:var(--slate);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;white-space:nowrap}
.chb-tab:hover{color:var(--navy)}
.chb-tab-active{color:#F59E0B;border-bottom-color:#F59E0B}
.chb-section-title{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:8px}
.chb-desc{font-size:13px;color:var(--body);margin-bottom:20px}

/* Templates */
.chb-template-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.chb-tmpl-card{padding:20px;background:var(--off);border-radius:12px;border:1.5px solid var(--off2)}
.chb-tmpl-icon{margin-bottom:10px}
.chb-tmpl-name{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:4px}
.chb-tmpl-desc{font-size:13px;color:var(--body);line-height:1.5;margin-bottom:12px}
.chb-tmpl-stats{display:flex;gap:12px;font-size:12px;color:var(--slate);margin-bottom:8px}
.chb-tmpl-cats{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.chb-cat-tag{font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;background:rgba(11,95,216,0.08);color:var(--blue)}
.chb-tmpl-actions{display:flex;gap:6px}

/* Preview */
.chb-preview-header{text-align:center;margin-bottom:20px}
.chb-preview-name{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy)}
.chb-preview-desc{font-size:13px;color:var(--body);margin-top:4px}
.chb-preview-grid{display:flex;flex-direction:column;gap:6px}
.chb-preview-day{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--off);border-radius:8px}
.chb-pd-num{font-size:12px;font-weight:700;color:var(--blue);width:50px;flex-shrink:0}
.chb-pd-info{flex:1}
.chb-pd-title{font-size:14px;font-weight:600;color:var(--navy)}
.chb-pd-meta{display:flex;gap:10px;margin-top:4px;flex-wrap:wrap}
.chb-pd-cat{font-size:11px;color:var(--blue);font-weight:600}
.chb-pd-diff{font-size:11px;font-weight:600;text-transform:capitalize}
.chb-pd-pts{font-size:11px;color:var(--slate)}
.chb-pd-est{font-size:11px;color:var(--mist)}

/* Custom Builder */
.chb-builder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.chb-count-num{font-family:'DM Serif Display',serif;font-size:28px;color:var(--navy)}
.chb-count-label{font-size:14px;color:var(--slate)}
.chb-filters{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}
.chb-filter-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.chb-filter-label{font-size:11px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.06em;width:70px;flex-shrink:0}
.chb-filter-btn{padding:4px 12px;border:1px solid var(--off2);border-radius:16px;background:var(--white);font-family:'DM Sans',sans-serif;font-size:12px;color:var(--body);cursor:pointer;transition:all 0.15s}
.chb-filter-btn:hover{border-color:var(--blue)}
.chb-filter-active{background:#F59E0B;color:#fff;border-color:#F59E0B}
.chb-task-list{display:flex;flex-direction:column;gap:4px;max-height:340px;overflow-y:auto}
.chb-task-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--off);border-radius:8px;cursor:pointer;transition:all 0.15s;border:1.5px solid transparent}
.chb-task-item:hover{border-color:var(--blue)}
.chb-task-selected{border-color:#059669;background:rgba(5,150,105,0.04)}
.chb-ti-check{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.chb-ti-circle{width:16px;height:16px;border:2px solid var(--off2);border-radius:50%;display:block}
.chb-ti-info{flex:1;min-width:0}
.chb-ti-title{font-size:14px;font-weight:600;color:var(--navy)}
.chb-ti-count{font-size:10px;background:var(--blue);color:#fff;padding:1px 6px;border-radius:4px;font-weight:700}
.chb-ti-meta{display:flex;gap:10px;margin-top:3px;flex-wrap:wrap}

/* Selected bar */
.chb-selected-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(135deg,rgba(245,158,11,0.06),rgba(217,119,6,0.06));border:1.5px solid rgba(245,158,11,0.2);border-radius:10px;margin-top:16px}
.chb-sel-info{display:flex;gap:16px}
.chb-sel-count{font-size:14px;font-weight:700;color:var(--navy)}
.chb-sel-pts{font-size:13px;color:var(--slate)}
.chb-sel-actions{display:flex;gap:6px}

/* My Tracks */
.chb-empty{text-align:center;padding:32px;background:var(--off);border-radius:12px}
.chb-empty-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:4px}
.chb-empty-desc{font-size:13px;color:var(--body)}
.chb-tracks-list{display:flex;flex-direction:column;gap:12px}
.chb-track-card{padding:18px;background:var(--off);border-radius:12px;border:1.5px solid var(--off2)}
.chb-track-active{border-color:#F59E0B;background:rgba(245,158,11,0.04)}
.chb-track-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}
.chb-track-name{font-size:16px;font-weight:700;color:var(--navy)}
.chb-track-meta{font-size:12px;color:var(--slate);margin-top:3px}
.chb-track-cats{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.chb-track-actions{display:flex;gap:6px}
.chb-active-tag{font-size:10px;background:#F59E0B;color:#fff;padding:1px 6px;border-radius:4px;font-weight:700;margin-left:4px}

/* Dark mode */
[data-theme="dark"] .ch-builder-btn{background:linear-gradient(135deg,#F59E0B,#D97706)}
[data-theme="dark"] .chb-tabs{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .chb-tab{color:#9ca3af}
[data-theme="dark"] .chb-tab:hover{color:#f3f4f6}
[data-theme="dark"] .chb-tab-active{color:#FBBF24;border-bottom-color:#FBBF24}
[data-theme="dark"] .chb-section-title{color:#9ca3af}
[data-theme="dark"] .chb-desc{color:#d1d5db}
[data-theme="dark"] .chb-tmpl-card{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .chb-tmpl-name{color:#f3f4f6}
[data-theme="dark"] .chb-tmpl-desc{color:#d1d5db}
[data-theme="dark"] .chb-tmpl-stats{color:#9ca3af}
[data-theme="dark"] .chb-cat-tag{background:rgba(96,165,250,0.12);color:#60a5fa}
[data-theme="dark"] .chb-preview-name{color:#f3f4f6}
[data-theme="dark"] .chb-preview-desc{color:#d1d5db}
[data-theme="dark"] .chb-preview-day{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .chb-pd-title{color:#f3f4f6}
[data-theme="dark"] .chb-pd-cat{color:#60a5fa}
[data-theme="dark"] .chb-pd-pts{color:#9ca3af}
[data-theme="dark"] .chb-pd-est{color:#6B7280}
[data-theme="dark"] .chb-count-num{color:#f3f4f6}
[data-theme="dark"] .chb-count-label{color:#9ca3af}
[data-theme="dark"] .chb-filter-btn{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#d1d5db}
[data-theme="dark"] .chb-filter-btn:hover{border-color:rgba(96,165,250,0.4)}
[data-theme="dark"] .chb-filter-active{background:#F59E0B;color:#fff;border-color:#F59E0B}
[data-theme="dark"] .chb-task-item{background:rgba(255,255,255,0.04);border-color:transparent}
[data-theme="dark"] .chb-task-item:hover{border-color:rgba(96,165,250,0.3)}
[data-theme="dark"] .chb-task-selected{border-color:rgba(5,150,105,0.4);background:rgba(5,150,105,0.08)}
[data-theme="dark"] .chb-ti-circle{border-color:rgba(255,255,255,0.15)}
[data-theme="dark"] .chb-ti-title{color:#f3f4f6}
[data-theme="dark"] .chb-selected-bar{background:rgba(245,158,11,0.08);border-color:rgba(245,158,11,0.25)}
[data-theme="dark"] .chb-sel-count{color:#f3f4f6}
[data-theme="dark"] .chb-sel-pts{color:#9ca3af}
[data-theme="dark"] .chb-empty{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .chb-empty-title{color:#f3f4f6}
[data-theme="dark"] .chb-empty-desc{color:#d1d5db}
[data-theme="dark"] .chb-track-card{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .chb-track-active{border-color:rgba(245,158,11,0.4);background:rgba(245,158,11,0.06)}
[data-theme="dark"] .chb-track-name{color:#f3f4f6}
[data-theme="dark"] .chb-track-meta{color:#9ca3af}
[data-theme="dark"] .chb-filter-label{color:#9ca3af}
[data-theme="dark"] .chb-pd-num{color:#60a5fa}

@media(max-width:600px){
  .chb-template-grid{grid-template-columns:1fr}
  .chb-filter-group{flex-wrap:wrap}
  .chb-selected-bar{flex-direction:column;gap:10px;align-items:stretch}
  .chb-sel-actions{justify-content:flex-end}
}

/* M5P1C2: Competitor Intelligence Dashboard */
.bp-btn-compete{background:linear-gradient(135deg,#6366F1,#4F46E5) !important;color:#fff !important;border-color:#6366F1 !important}
.bp-btn-scenario{background:linear-gradient(135deg,#EC4899,#DB2777) !important;color:#fff !important;border-color:#EC4899 !important}
.bpc-tabs{display:flex;gap:4px;padding:0 24px;border-bottom:1px solid var(--off2);overflow-x:auto}
.bpc-tab{padding:10px 14px;font-size:13px;font-weight:600;color:var(--slate);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;white-space:nowrap}
.bpc-tab:hover{color:var(--navy)}
.bpc-tab-active{color:#6366F1;border-bottom-color:#6366F1}
.bpc-section-title{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:12px}

.bpc-market-header{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}
.bpc-mh-stat{text-align:center;padding:16px;background:var(--off);border-radius:10px}
.bpc-mh-val{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy)}
.bpc-mh-label{font-size:11px;color:var(--slate);margin-top:4px}
.bpc-share-chart{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}
.bpc-share-row{display:flex;align-items:center;gap:10px}
.bpc-share-name{font-size:12px;color:var(--body);width:180px;flex-shrink:0}
.bpc-share-you{font-weight:700;color:#059669}
.bpc-share-bar-wrap{flex:1;height:20px;background:var(--off);border-radius:4px;overflow:hidden}
.bpc-share-bar{height:100%;border-radius:4px;transition:width 0.4s}
.bpc-share-pct{font-size:12px;font-weight:700;color:var(--navy);width:30px;text-align:right}

.bpc-table{border:1px solid var(--off2);border-radius:8px;overflow:hidden}
.bpc-tr{display:flex;padding:10px 14px;border-bottom:1px solid var(--off2)}
.bpc-tr:last-child{border-bottom:none}
.bpc-thead{background:var(--off);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--slate)}
.bpc-th,.bpc-td{flex:1;font-size:13px}
.bpc-tr-you{background:rgba(5,150,105,0.04)}

/* Positioning Map */
.bpc-pos-desc{font-size:13px;color:var(--body);margin-bottom:16px}
.bpc-pos-map{position:relative;margin-bottom:12px}
.bpc-pos-y-label{position:absolute;left:-4px;top:50%;transform:rotate(-90deg) translateX(-50%);font-size:10px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.06em}
.bpc-pos-x-label{text-align:center;font-size:10px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.06em;margin-top:8px}
.bpc-pos-grid{position:relative;height:240px;margin-left:20px;border:1px solid var(--off2);border-radius:8px;background:var(--off);overflow:hidden}
.bpc-quad{position:absolute;font-size:10px;color:var(--mist);text-align:center;line-height:1.3}
.bpc-quad-tl{top:12px;left:12px}
.bpc-quad-tr{top:12px;right:12px}
.bpc-quad-bl{bottom:12px;left:12px}
.bpc-quad-br{bottom:12px;right:12px}
.bpc-pos-dot{position:absolute;border-radius:50%;transform:translate(-50%,-50%);transition:all 0.3s;cursor:default}
.bpc-pos-you{box-shadow:0 0 0 3px rgba(5,150,105,0.3)}
.bpc-pos-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--body);margin-top:8px}
.bpc-leg-item{display:flex;align-items:center;gap:4px}
.bpc-leg-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}

/* SWOT */
.bpc-swot{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.bpc-swot-card{padding:16px;border-radius:10px}
.bpc-swot-label{font-size:12px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:8px}
.bpc-swot-card ul{margin:0;padding-left:18px;font-size:13px;color:var(--body);line-height:1.7}
.bpc-swot-s{background:rgba(5,150,105,0.06)}.bpc-swot-s .bpc-swot-label{color:#059669}
.bpc-swot-w{background:rgba(239,68,68,0.06)}.bpc-swot-w .bpc-swot-label{color:#EF4444}
.bpc-swot-o{background:rgba(59,130,246,0.06)}.bpc-swot-o .bpc-swot-label{color:#3B82F6}
.bpc-swot-t{background:rgba(245,158,11,0.06)}.bpc-swot-t .bpc-swot-label{color:#F59E0B}

/* Gaps & Segments */
.bpc-gaps{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.bpc-gap-card{padding:14px;background:var(--off);border-radius:8px}
.bpc-gap-name{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:6px}
.bpc-gap-weakness,.bpc-gap-action{font-size:13px;color:var(--body);line-height:1.5;margin-bottom:4px}
.bpc-segments{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.bpc-seg-card{padding:14px;background:var(--off);border-radius:8px}
.bpc-seg-name{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:2px}
.bpc-seg-size{font-size:11px;color:var(--blue);font-weight:600;margin-bottom:6px}
.bpc-seg-desc{font-size:13px;color:var(--body);line-height:1.5;margin-bottom:6px}
.bpc-seg-action{font-size:12px;color:#059669;font-weight:600}

/* Strategies */
.bpc-strategies{display:flex;flex-direction:column;gap:14px}
.bpc-strat-card{padding:18px;background:var(--off);border-radius:10px}
.bpc-strat-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}
.bpc-strat-title{font-size:16px;font-weight:700;color:var(--navy)}
.bpc-strat-tags{display:flex;gap:6px}
.bpc-strat-tag{font-size:10px;font-weight:600;padding:2px 8px;border:1px solid;border-radius:10px}
.bpc-strat-desc{font-size:13px;color:var(--body);line-height:1.6;margin-bottom:10px}
.bpc-strat-actions-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--slate);margin-bottom:4px}
.bpc-strat-actions{margin:0;padding-left:18px;font-size:13px;color:var(--body);line-height:1.7}

/* M5P2C2: Scenario Modeler */
.bps-tabs{display:flex;gap:4px;padding:0 24px;border-bottom:1px solid var(--off2);overflow-x:auto}
.bps-tab{padding:10px 14px;font-size:13px;font-weight:600;color:var(--slate);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;white-space:nowrap}
.bps-tab:hover{color:var(--navy)}
.bps-tab-active{color:#EC4899;border-bottom-color:#EC4899}
.bps-section-title{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:12px}

.bps-compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.bps-scenario-card{padding:18px;background:var(--off);border-radius:12px}
.bps-sc-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.bps-sc-name{font-size:16px;font-weight:700}
.bps-sc-desc{font-size:12px;color:var(--body);line-height:1.5;margin-bottom:14px}
.bps-sc-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px}
.bps-metric{text-align:center;padding:10px;background:var(--white);border-radius:8px}
.bps-metric-val{font-family:'DM Serif Display',serif;font-size:18px;color:var(--navy)}
.bps-metric-label{font-size:10px;color:var(--slate);margin-top:2px}
.bps-sc-details{display:flex;flex-direction:column;gap:4px}
.bps-detail-row{display:flex;justify-content:space-between;font-size:12px;color:var(--body);padding:4px 0}

/* Timeline chart */
.bps-timeline-chart{display:flex;gap:4px;height:160px;align-items:flex-end;margin-bottom:8px}
.bps-tl-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}
.bps-tl-bars{flex:1;width:100%;display:flex;gap:1px;align-items:flex-end}
.bps-tl-bar{flex:1;border-radius:2px 2px 0 0;transition:height 0.3s;min-height:2px}
.bps-tl-label{font-size:9px;color:var(--slate);margin-top:4px}
.bps-tl-legend{display:flex;gap:16px;justify-content:center;font-size:11px;color:var(--slate);margin-bottom:20px}
.bps-tl-leg{display:flex;align-items:center;gap:4px}
.bps-tl-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.bps-summary-table{border:1px solid var(--off2);border-radius:8px;overflow:hidden}
.bps-sum-row{display:flex;padding:10px 14px;border-bottom:1px solid var(--off2)}
.bps-sum-row:last-child{border-bottom:none}
.bps-sum-header{background:var(--off);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--slate)}
.bps-sum-cell{flex:1;font-size:13px}

/* Sensitivity */
.bps-sens-desc{font-size:13px;color:var(--body);margin-bottom:20px}
.bps-sens-grid{display:flex;flex-direction:column;gap:20px}
.bps-sens-card{padding:16px;background:var(--off);border-radius:10px}
.bps-sens-name{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:2px}
.bps-sens-base{font-size:12px;color:var(--slate);margin-bottom:12px}
.bps-sens-bars{display:flex;flex-direction:column;gap:6px}
.bps-sens-row{display:flex;align-items:center;gap:10px}
.bps-sens-label{font-size:11px;color:var(--slate);width:50px;text-align:right;flex-shrink:0}
.bps-sens-bar-wrap{flex:1;height:16px;background:rgba(0,0,0,0.04);border-radius:4px;overflow:hidden}
.bps-sens-bar{height:100%;border-radius:4px;transition:width 0.4s}
.bps-sens-val{font-size:12px;font-weight:700;color:var(--navy);width:80px;text-align:right;flex-shrink:0}
.bps-insight{padding:16px;background:rgba(99,102,241,0.06);border:1px solid rgba(99,102,241,0.15);border-radius:10px;margin-top:20px}
.bps-insight-title{font-size:13px;font-weight:700;color:#6366F1;margin-bottom:6px}
.bps-insight-text{font-size:13px;color:var(--body);line-height:1.6}

/* Break-even */
.bps-be-free{text-align:center;padding:24px;background:rgba(5,150,105,0.04);border-radius:12px;margin-bottom:20px}
.bps-be-title{font-family:'DM Serif Display',serif;font-size:24px}
.bps-be-desc{font-size:13px;color:var(--body);margin:8px 0 16px}
.bps-be-calc{max-width:300px;margin:0 auto}
.bps-be-row{display:flex;justify-content:space-between;font-size:13px;color:var(--body);padding:6px 0;border-bottom:1px solid var(--off2)}
.bps-be-row:last-child{border-bottom:none}
.bps-be-card{padding:16px;background:var(--off);border-radius:10px;margin-bottom:12px}
.bps-be-scenario{font-size:16px;font-weight:700;margin-bottom:4px}
.bps-be-month{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy);margin-bottom:10px}
.bps-be-details{display:flex;flex-direction:column;gap:4px}
.bps-deals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.bps-deals-card{text-align:center;padding:16px;background:var(--off);border-radius:10px}
.bps-deals-val{font-family:'DM Serif Display',serif;font-size:32px}
.bps-deals-label{font-size:12px;color:var(--slate);margin-top:4px}
.bps-deals-comm{font-size:11px;color:var(--mist);margin-top:2px}

/* Dark mode for both */
[data-theme="dark"] .bpc-tab{color:#9ca3af}[data-theme="dark"] .bpc-tab:hover{color:#f3f4f6}[data-theme="dark"] .bpc-tab-active{color:#818cf8;border-bottom-color:#818cf8}
[data-theme="dark"] .bpc-section-title{color:#9ca3af}
[data-theme="dark"] .bpc-mh-stat{background:rgba(255,255,255,0.04)}[data-theme="dark"] .bpc-mh-val{color:#f3f4f6}[data-theme="dark"] .bpc-mh-label{color:#9ca3af}
[data-theme="dark"] .bpc-share-name{color:#d1d5db}[data-theme="dark"] .bpc-share-bar-wrap{background:rgba(255,255,255,0.06)}[data-theme="dark"] .bpc-share-pct{color:#f3f4f6}
[data-theme="dark"] .bpc-table{border-color:rgba(255,255,255,0.08)}[data-theme="dark"] .bpc-tr{border-color:rgba(255,255,255,0.06)}[data-theme="dark"] .bpc-thead{background:rgba(255,255,255,0.04);color:#9ca3af}
[data-theme="dark"] .bpc-tr-you{background:rgba(5,150,105,0.08)}
[data-theme="dark"] .bpc-pos-grid{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}[data-theme="dark"] .bpc-quad{color:#6B7280}
[data-theme="dark"] .bpc-pos-legend{color:#d1d5db}
[data-theme="dark"] .bpc-swot-card ul{color:#d1d5db}
[data-theme="dark"] .bpc-gap-card{background:rgba(255,255,255,0.04)}[data-theme="dark"] .bpc-gap-name{color:#f3f4f6}[data-theme="dark"] .bpc-gap-weakness,[data-theme="dark"] .bpc-gap-action{color:#d1d5db}
[data-theme="dark"] .bpc-seg-card{background:rgba(255,255,255,0.04)}[data-theme="dark"] .bpc-seg-name{color:#f3f4f6}[data-theme="dark"] .bpc-seg-desc{color:#d1d5db}
[data-theme="dark"] .bpc-strat-card{background:rgba(255,255,255,0.04)}[data-theme="dark"] .bpc-strat-title{color:#f3f4f6}[data-theme="dark"] .bpc-strat-desc{color:#d1d5db}[data-theme="dark"] .bpc-strat-actions{color:#d1d5db}[data-theme="dark"] .bpc-strat-actions-title{color:#9ca3af}

[data-theme="dark"] .bps-tab{color:#9ca3af}[data-theme="dark"] .bps-tab:hover{color:#f3f4f6}[data-theme="dark"] .bps-tab-active{color:#F472B6;border-bottom-color:#F472B6}
[data-theme="dark"] .bps-section-title{color:#9ca3af}
[data-theme="dark"] .bps-scenario-card{background:rgba(255,255,255,0.04)}[data-theme="dark"] .bps-sc-desc{color:#d1d5db}
[data-theme="dark"] .bps-metric{background:rgba(255,255,255,0.04)}[data-theme="dark"] .bps-metric-val{color:#f3f4f6}[data-theme="dark"] .bps-metric-label{color:#9ca3af}
[data-theme="dark"] .bps-detail-row{color:#d1d5db}
[data-theme="dark"] .bps-tl-label{color:#9ca3af}[data-theme="dark"] .bps-tl-legend{color:#9ca3af}
[data-theme="dark"] .bps-summary-table{border-color:rgba(255,255,255,0.08)}[data-theme="dark"] .bps-sum-row{border-color:rgba(255,255,255,0.06)}[data-theme="dark"] .bps-sum-header{background:rgba(255,255,255,0.04);color:#9ca3af}
[data-theme="dark"] .bps-sens-card{background:rgba(255,255,255,0.04)}[data-theme="dark"] .bps-sens-name{color:#f3f4f6}[data-theme="dark"] .bps-sens-base{color:#9ca3af}[data-theme="dark"] .bps-sens-label{color:#9ca3af}
[data-theme="dark"] .bps-sens-bar-wrap{background:rgba(255,255,255,0.06)}[data-theme="dark"] .bps-sens-val{color:#f3f4f6}
[data-theme="dark"] .bps-insight{background:rgba(99,102,241,0.1);border-color:rgba(99,102,241,0.2)}[data-theme="dark"] .bps-insight-title{color:#818cf8}[data-theme="dark"] .bps-insight-text{color:#d1d5db}
[data-theme="dark"] .bps-be-free{background:rgba(5,150,105,0.08)}[data-theme="dark"] .bps-be-desc{color:#d1d5db}
[data-theme="dark"] .bps-be-row{color:#d1d5db;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .bps-be-card{background:rgba(255,255,255,0.04)}[data-theme="dark"] .bps-be-month{color:#f3f4f6}
[data-theme="dark"] .bps-deals-card{background:rgba(255,255,255,0.04)}[data-theme="dark"] .bps-deals-label{color:#9ca3af}[data-theme="dark"] .bps-deals-comm{color:#6B7280}

@media(max-width:600px){
  .bpc-market-header{grid-template-columns:repeat(2,1fr)}
  .bpc-swot{grid-template-columns:1fr}
  .bpc-segments{grid-template-columns:1fr}
  .bpc-share-name{width:120px}
  .bps-compare-grid{grid-template-columns:1fr}
  .bps-deals-grid{grid-template-columns:1fr}
}

/* ── M5P3C2: Partnership Growth Playbook ────────────── */
.bpp-preview{text-align:center;padding:32px 16px 24px}
.bpp-preview-icon{margin-bottom:12px}
.bpp-preview-title{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy);margin-bottom:6px}
.bpp-preview-sub{font-size:14px;color:var(--gray);max-width:420px;margin:0 auto}
.bpp-chapters-preview{display:flex;flex-direction:column;gap:10px;padding:0 16px 16px}
.bpp-ch-row{display:flex;align-items:flex-start;gap:14px;padding:14px;border:1.5px solid var(--off2);border-radius:10px;transition:border-color 0.15s}
.bpp-ch-row:hover{border-color:var(--blue)}
.bpp-ch-num{font-size:12px;font-weight:700;color:var(--blue);white-space:nowrap;padding-top:2px}
.bpp-ch-title{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:2px}
.bpp-ch-desc{font-size:13px;color:var(--gray);line-height:1.5}
.bpp-gen-section{padding:16px;border-top:1.5px solid var(--off2)}
.bpp-gen-note{font-size:12px;color:var(--gray);text-align:center;margin-top:8px}
.bpp-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,0.3);border-top-color:#fff;border-radius:50%;animation:bppSpin 0.6s linear infinite;vertical-align:middle;margin-right:6px}
@keyframes bppSpin{to{transform:rotate(360deg)}}
.bpp-header{text-align:center;padding:24px 16px 16px;border-bottom:1.5px solid var(--off2)}
.bpp-title{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy)}
.bpp-subtitle{font-size:14px;color:var(--gray);margin-bottom:12px}
.bpp-actions{display:flex;gap:8px;justify-content:center}
.bpp-toc{display:flex;flex-wrap:wrap;gap:6px;padding:16px;border-bottom:1.5px solid var(--off2)}
.bpp-toc-item{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1.5px solid var(--off2);border-radius:8px;background:transparent;cursor:pointer;font-size:13px;color:var(--navy);font-family:'DM Sans',sans-serif;transition:all 0.15s}
.bpp-toc-item:hover{border-color:var(--blue);color:var(--blue)}
.bpp-toc-num{font-weight:700;color:var(--blue);font-size:11px}
.bpp-toc-title{font-weight:500}
.bpp-chapters{padding:16px;display:flex;flex-direction:column;gap:24px}
.bpp-chapter{border:1.5px solid var(--off2);border-radius:12px;overflow:hidden}
.bpp-ch-header{padding:16px 20px 12px;border-bottom:1px solid var(--off2);background:var(--off)}
.bpp-ch-badge{display:inline-block;font-size:11px;font-weight:700;color:var(--blue);background:rgba(11,95,216,0.08);padding:3px 10px;border-radius:20px;margin-bottom:6px}
.bpp-ch-heading{font-family:'DM Serif Display',serif;font-size:18px;color:var(--navy);margin:0}
.bpp-ch-content{padding:16px 20px;font-size:14px;line-height:1.75;color:var(--dark)}
.bpp-ch-content p{margin-bottom:10px}
.bpp-ch-content strong{color:var(--navy);font-weight:600}
.bpp-list-item{padding-left:16px;position:relative}
.bpp-list-item::before{content:'';position:absolute;left:4px;top:10px;width:5px;height:5px;border-radius:50%;background:var(--blue)}
.bp-btn-playbook{color:var(--navy)}
.bp-btn-playbook:hover{background:rgba(11,95,216,0.06);color:var(--blue);border-color:var(--blue)}

/* Dark mode */
[data-theme="dark"] .bpp-preview-title{color:var(--white)}
[data-theme="dark"] .bpp-ch-row{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .bpp-ch-row:hover{border-color:var(--blue)}
[data-theme="dark"] .bpp-ch-title{color:var(--white)}
[data-theme="dark"] .bpp-header{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .bpp-title{color:var(--white)}
[data-theme="dark"] .bpp-toc{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .bpp-toc-item{border-color:rgba(255,255,255,0.1);color:var(--white)}
[data-theme="dark"] .bpp-toc-item:hover{border-color:var(--blue);color:var(--blue)}
[data-theme="dark"] .bpp-chapter{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .bpp-ch-header{border-color:rgba(255,255,255,0.1);background:rgba(255,255,255,0.03)}
[data-theme="dark"] .bpp-ch-heading{color:var(--white)}
[data-theme="dark"] .bpp-ch-content{color:rgba(255,255,255,0.85)}
[data-theme="dark"] .bpp-ch-content strong{color:var(--white)}
[data-theme="dark"] .bpp-gen-section{border-color:rgba(255,255,255,0.1)}

@media(max-width:600px){
  .bpp-toc{flex-direction:column}
  .bpp-ch-content{padding:12px 14px}
  .bpp-actions{flex-direction:column}
}

/* ── M1P1C3: AI Page Generator ──────────────────────── */
.pbai-form{padding:16px 20px 20px}
.pbai-presets{margin-bottom:16px}
.pbai-presets-label{font-size:12px;font-weight:600;color:var(--gray);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:8px}
.pbai-presets-row{display:flex;flex-wrap:wrap;gap:6px}
.pbai-preset-btn{padding:6px 14px;border:1.5px solid var(--off2);border-radius:20px;background:transparent;font-size:13px;font-family:'DM Sans',sans-serif;color:var(--navy);cursor:pointer;transition:all 0.15s}
.pbai-preset-btn:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.04)}
.pbai-field{margin-bottom:16px}
.pbai-label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:6px}
.pbai-textarea{width:100%;border:1.5px solid var(--off2);border-radius:10px;padding:12px 14px;font-size:14px;font-family:'DM Sans',sans-serif;color:var(--navy);resize:vertical;line-height:1.6;box-sizing:border-box;transition:border-color 0.15s}
.pbai-textarea:focus{outline:none;border-color:var(--blue)}
.pbai-hint{font-size:12px;color:var(--gray);margin-top:4px}
.pbai-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.pbai-option{display:flex;flex-direction:column}
.pbai-select{padding:10px 12px;border:1.5px solid var(--off2);border-radius:8px;font-size:13px;font-family:'DM Sans',sans-serif;color:var(--navy);background:var(--white);cursor:pointer;transition:border-color 0.15s}
.pbai-select:focus{outline:none;border-color:var(--blue)}
.pbai-context{display:flex;gap:10px;padding:12px 14px;background:rgba(11,95,216,0.04);border-radius:10px;margin-bottom:16px;align-items:flex-start}
.pbai-context-icon{color:var(--blue);flex-shrink:0;padding-top:1px}
.pbai-context-text{font-size:13px;color:var(--dark);line-height:1.5}
.pbai-actions{margin-bottom:16px}
.pbai-history{border-top:1.5px solid var(--off2);padding-top:16px}
.pbai-history-label{font-size:12px;font-weight:600;color:var(--gray);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:8px}
.pbai-history-item{padding:10px 12px;border:1.5px solid var(--off2);border-radius:8px;cursor:pointer;transition:border-color 0.15s;margin-bottom:6px}
.pbai-history-item:hover{border-color:var(--blue)}
.pbai-history-prompt{font-size:13px;color:var(--navy);line-height:1.4}
.pbai-history-meta{font-size:11px;color:var(--gray);margin-top:4px}
.pb-tool-ai{color:var(--blue) !important;font-weight:600 !important}

/* Dark mode */
[data-theme="dark"] .pbai-preset-btn{border-color:rgba(255,255,255,0.1);color:var(--white)}
[data-theme="dark"] .pbai-preset-btn:hover{border-color:var(--blue);color:var(--blue)}
[data-theme="dark"] .pbai-textarea{border-color:rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);color:var(--white)}
[data-theme="dark"] .pbai-select{border-color:rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);color:var(--white)}
[data-theme="dark"] .pbai-context{background:rgba(11,95,216,0.08)}
[data-theme="dark"] .pbai-context-text{color:rgba(255,255,255,0.85)}
[data-theme="dark"] .pbai-history{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbai-history-item{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbai-history-prompt{color:var(--white)}
[data-theme="dark"] .pbai-label{color:var(--white)}

@media(max-width:600px){
  .pbai-options{grid-template-columns:1fr}
  .pbai-presets-row{gap:4px}
  .pbai-preset-btn{font-size:12px;padding:5px 10px}
}

/* ── M1P2C3: SEO Metadata Editor ───────────────────── */
.pbseo-tabs{display:flex;gap:4px;padding:0 16px;border-bottom:1.5px solid var(--off2)}
.pbseo-tab{padding:10px 16px;border:none;background:transparent;font-size:13px;font-weight:500;color:var(--gray);cursor:pointer;font-family:'DM Sans',sans-serif;border-bottom:2px solid transparent;transition:all 0.15s}
.pbseo-tab:hover{color:var(--navy)}
.pbseo-tab-active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}
.pbseo-content{padding:16px 20px}
.pbseo-section{margin-bottom:8px}
.pbseo-section-title{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:12px;text-transform:uppercase;letter-spacing:0.04em}
.pbseo-field{margin-bottom:14px}
.pbseo-label{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:5px}
.pbseo-counter{font-size:11px;font-weight:500;color:var(--gray)}
.pbseo-input{width:100%;padding:10px 12px;border:1.5px solid var(--off2);border-radius:8px;font-size:14px;font-family:'DM Sans',sans-serif;color:var(--navy);box-sizing:border-box;transition:border-color 0.15s}
.pbseo-input:focus{outline:none;border-color:var(--blue)}
.pbseo-textarea{width:100%;padding:10px 12px;border:1.5px solid var(--off2);border-radius:8px;font-size:14px;font-family:'DM Sans',sans-serif;color:var(--navy);box-sizing:border-box;resize:vertical;line-height:1.6;transition:border-color 0.15s}
.pbseo-textarea:focus{outline:none;border-color:var(--blue)}
.pbseo-select{padding:10px 12px;border:1.5px solid var(--off2);border-radius:8px;font-size:13px;font-family:'DM Sans',sans-serif;color:var(--navy);background:var(--white);width:100%;box-sizing:border-box}
.pbseo-hint{font-size:11px;color:var(--gray);margin-top:4px;line-height:1.4}
.pbseo-slug-row{display:flex;align-items:center;gap:0}
.pbseo-slug-prefix{padding:10px 12px;background:var(--off);border:1.5px solid var(--off2);border-right:none;border-radius:8px 0 0 8px;font-size:13px;color:var(--gray);white-space:nowrap}
.pbseo-slug-input{border-radius:0 8px 8px 0 !important}
.pbseo-checkbox-row{display:flex;flex-direction:column;gap:4px}
.pbseo-checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--navy);cursor:pointer}
.pbseo-ai-row{padding:8px 0 4px;border-top:1.5px solid var(--off2);margin-top:4px}
.pbseo-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1.5px solid var(--off2)}

/* Google Preview */
.pbseo-google-preview{padding:16px;background:#fff;border:1px solid #ddd;border-radius:8px}
.pbseo-gp-url{font-size:12px;color:#202124;margin-bottom:4px}
.pbseo-gp-title{font-size:18px;color:#1a0dab;line-height:1.3;margin-bottom:4px;cursor:pointer}
.pbseo-gp-title:hover{text-decoration:underline}
.pbseo-gp-desc{font-size:13px;color:#4d5156;line-height:1.5}

/* Social Preview */
.pbseo-social-preview{border:1px solid #ddd;border-radius:8px;overflow:hidden;background:#fff}
.pbseo-sp-image{height:180px;background:#f0f0f0;display:flex;align-items:center;justify-content:center}
.pbseo-sp-placeholder{text-align:center;color:#999;font-size:12px}
.pbseo-sp-placeholder div{margin-top:6px}
.pbseo-sp-body{padding:12px 14px}
.pbseo-sp-domain{font-size:11px;color:#999;text-transform:uppercase;margin-bottom:4px}
.pbseo-sp-title{font-size:15px;font-weight:600;color:#1d2129;margin-bottom:4px;line-height:1.3}
.pbseo-sp-desc{font-size:13px;color:#606770;line-height:1.4}

/* SEO Score */
.pbseo-score-display{display:flex;justify-content:center;padding:20px 0}
.pbseo-score-circle{width:80px;height:80px;border-radius:50%;border:4px solid;display:flex;flex-direction:column;align-items:center;justify-content:center}
.pbseo-score-num{font-size:28px;font-weight:800;line-height:1}
.pbseo-score-label{font-size:11px;font-weight:600;margin-top:2px}
.pbseo-checklist{display:flex;flex-direction:column;gap:8px}
.pbseo-check-item{display:flex;align-items:flex-start;gap:10px;padding:8px 0}
.pbseo-check-icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pbseo-check-pass{background:#ecfdf5;color:#059669}
.pbseo-check-fail{background:#fef2f2;color:#dc2626}
.pbseo-check-text{font-size:13px;color:var(--dark);line-height:1.4}

/* Dark mode */
[data-theme="dark"] .pbseo-tabs{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbseo-tab{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .pbseo-tab:hover{color:var(--white)}
[data-theme="dark"] .pbseo-tab-active{color:var(--blue)}
[data-theme="dark"] .pbseo-section-title{color:var(--white)}
[data-theme="dark"] .pbseo-label{color:var(--white)}
[data-theme="dark"] .pbseo-input{border-color:rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);color:var(--white)}
[data-theme="dark"] .pbseo-textarea{border-color:rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);color:var(--white)}
[data-theme="dark"] .pbseo-select{border-color:rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);color:var(--white)}
[data-theme="dark"] .pbseo-slug-prefix{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1);color:rgba(255,255,255,0.5)}
[data-theme="dark"] .pbseo-checkbox-label{color:var(--white)}
[data-theme="dark"] .pbseo-ai-row{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbseo-footer{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbseo-google-preview{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbseo-gp-url{color:rgba(255,255,255,0.6)}
[data-theme="dark"] .pbseo-gp-title{color:#8ab4f8}
[data-theme="dark"] .pbseo-gp-desc{color:rgba(255,255,255,0.6)}
[data-theme="dark"] .pbseo-social-preview{border-color:rgba(255,255,255,0.1);background:rgba(255,255,255,0.04)}
[data-theme="dark"] .pbseo-sp-image{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .pbseo-sp-title{color:var(--white)}
[data-theme="dark"] .pbseo-sp-desc{color:rgba(255,255,255,0.6)}
[data-theme="dark"] .pbseo-check-text{color:rgba(255,255,255,0.85)}

@media(max-width:600px){
  .pbseo-tabs{overflow-x:auto}
  .pbseo-tab{white-space:nowrap;font-size:12px;padding:8px 12px}
}

/* ── M1P3C3: Form Builder & Submission Manager ─────── */
.pbf-fields-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.pbf-fields-info{font-size:13px;color:var(--gray)}
.pbf-field-list{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.pbf-field-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1.5px solid var(--off2);border-radius:8px;transition:all 0.15s}
.pbf-field-row:hover{border-color:var(--blue)}
.pbf-field-disabled{opacity:0.5}
.pbf-field-drag{color:var(--gray);cursor:grab;flex-shrink:0}
.pbf-field-toggle{flex-shrink:0}
.pbf-field-info{flex:1;min-width:0}
.pbf-field-label{font-size:14px;font-weight:600;color:var(--navy)}
.pbf-field-meta{font-size:11px;color:var(--gray)}
.pbf-field-actions{display:flex;gap:4px;flex-shrink:0}
.pbf-field-btn{width:28px;height:28px;border:1px solid var(--off2);border-radius:6px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--gray);transition:all 0.15s}
.pbf-field-btn:hover{border-color:var(--blue);color:var(--blue)}
.pbf-field-btn-del:hover{border-color:#dc2626;color:#dc2626}
.pbf-switch{position:relative;display:inline-block;width:36px;height:20px}
.pbf-switch input{opacity:0;width:0;height:0}
.pbf-switch-slider{position:absolute;cursor:pointer;inset:0;background:#ccc;border-radius:20px;transition:0.2s}
.pbf-switch-slider::before{content:'';position:absolute;height:16px;width:16px;left:2px;bottom:2px;background:white;border-radius:50%;transition:0.2s}
.pbf-switch input:checked + .pbf-switch-slider{background:var(--blue)}
.pbf-switch input:checked + .pbf-switch-slider::before{transform:translateX(16px)}
.pbf-preview-section{border-top:1.5px solid var(--off2);padding-top:12px;margin-top:4px}
.pbf-preview-label{font-size:12px;font-weight:600;color:var(--gray);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:8px}
.pbf-preview-box{padding:16px;border:1.5px solid var(--off2);border-radius:10px;background:var(--off)}
.pbf-empty{text-align:center;padding:40px 20px}
.pbf-empty-title{font-size:18px;font-weight:700;color:var(--navy);margin:12px 0 4px}
.pbf-empty-text{font-size:14px;color:var(--gray);margin-bottom:16px}
.pbf-stats-row{display:flex;align-items:center;gap:24px;padding:12px 0 16px;border-bottom:1.5px solid var(--off2);margin-bottom:12px}
.pbf-stat{text-align:center}
.pbf-stat-num{font-size:24px;font-weight:800;color:var(--navy)}
.pbf-stat-new{color:var(--blue)}
.pbf-stat-label{font-size:11px;color:var(--gray);text-transform:uppercase}
.pbf-sub-list{display:flex;flex-direction:column;gap:6px}
.pbf-sub-item{padding:12px;border:1.5px solid var(--off2);border-radius:8px;cursor:pointer;transition:border-color 0.15s}
.pbf-sub-item:hover{border-color:var(--blue)}
.pbf-sub-new{border-left:3px solid var(--blue)}
.pbf-sub-header{display:flex;justify-content:space-between;align-items:center}
.pbf-sub-name{font-size:14px;font-weight:600;color:var(--navy)}
.pbf-sub-date{font-size:11px;color:var(--gray)}
.pbf-sub-summary{font-size:13px;color:var(--gray);margin-top:4px}
.pbf-new-badge{display:inline-block;padding:1px 6px;border-radius:4px;background:var(--blue);color:white;font-size:10px;font-weight:700;vertical-align:middle}
.pbf-sub-detail{margin-top:10px;padding-top:10px;border-top:1px solid var(--off2)}
.pbf-sub-field{font-size:13px;color:var(--dark);padding:3px 0}
.pbf-sub-field-label{font-weight:600;color:var(--navy);text-transform:capitalize}
.pbf-sub-actions{margin-top:8px;padding-top:8px;border-top:1px solid var(--off2)}

/* Dark mode */
[data-theme="dark"] .pbf-field-row{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbf-field-row:hover{border-color:var(--blue)}
[data-theme="dark"] .pbf-field-label{color:var(--white)}
[data-theme="dark"] .pbf-preview-section{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbf-preview-box{border-color:rgba(255,255,255,0.1);background:rgba(255,255,255,0.03)}
[data-theme="dark"] .pbf-empty-title{color:var(--white)}
[data-theme="dark"] .pbf-stat-num{color:var(--white)}
[data-theme="dark"] .pbf-stats-row{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbf-sub-item{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbf-sub-name{color:var(--white)}
[data-theme="dark"] .pbf-sub-detail{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .pbf-sub-field{color:rgba(255,255,255,0.85)}
[data-theme="dark"] .pbf-sub-field-label{color:var(--white)}

@media(max-width:600px){
  .pbf-stats-row{gap:16px;flex-wrap:wrap}
  .pbf-field-actions{display:none}
}

/* ── M2P1C3: AI Campaign Builder ───────────────────── */
.aic-setup{padding:16px 20px}
.aic-icp-card{display:flex;align-items:center;gap:12px;padding:14px;border:1.5px solid var(--off2);border-radius:10px;margin-bottom:16px}
.aic-icp-missing{border-color:#fbbf24;background:rgba(251,191,36,0.04)}
.aic-icp-icon{flex-shrink:0}
.aic-icp-info{flex:1;min-width:0}
.aic-icp-name{font-size:14px;font-weight:600;color:var(--navy)}
.aic-icp-detail{font-size:12px;color:var(--gray)}
.aic-icp-badge{font-size:11px;font-weight:600;color:var(--blue);background:rgba(11,95,216,0.08);padding:4px 10px;border-radius:20px;white-space:nowrap}
.aic-field{margin-bottom:14px}
.aic-label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:6px}
.aic-select{width:100%;padding:10px 12px;border:1.5px solid var(--off2);border-radius:8px;font-size:14px;font-family:'DM Sans',sans-serif;color:var(--navy);background:var(--white);box-sizing:border-box}
.aic-channels{display:flex;flex-wrap:wrap;gap:8px}
.aic-channel-opt{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1.5px solid var(--off2);border-radius:8px;font-size:13px;color:var(--navy);cursor:pointer;transition:border-color 0.15s}
.aic-channel-opt:has(input:checked){border-color:var(--blue);background:rgba(11,95,216,0.04)}
.aic-comp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin-bottom:16px}
.aic-comp-card{display:flex;align-items:flex-start;gap:8px;padding:12px;border:1.5px solid var(--off2);border-radius:10px;cursor:pointer;transition:border-color 0.15s}
.aic-comp-card:has(input:checked){border-color:var(--blue);background:rgba(11,95,216,0.03)}
.aic-comp-check{flex-shrink:0;margin-top:2px}
.aic-comp-content svg{color:var(--blue);margin-bottom:4px}
.aic-comp-label{font-size:13px;font-weight:600;color:var(--navy)}
.aic-comp-desc{font-size:11px;color:var(--gray);line-height:1.4}
.aic-actions{margin-bottom:16px}
.aic-history{border-top:1.5px solid var(--off2);padding-top:12px}
.aic-history-label{font-size:12px;font-weight:600;color:var(--gray);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:8px}
.aic-history-item{padding:10px 12px;border:1.5px solid var(--off2);border-radius:8px;cursor:pointer;margin-bottom:6px;transition:border-color 0.15s}
.aic-history-item:hover{border-color:var(--blue)}
.aic-history-name{font-size:13px;font-weight:600;color:var(--navy)}
.aic-history-meta{font-size:11px;color:var(--gray);margin-top:2px}

/* Campaign Results */
.aic-campaign{padding:16px 20px}
.aic-campaign-header{text-align:center;padding-bottom:16px;border-bottom:1.5px solid var(--off2);margin-bottom:16px}
.aic-campaign-name{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy)}
.aic-campaign-meta{display:flex;justify-content:center;gap:16px;font-size:12px;color:var(--gray);margin:8px 0 12px}
.aic-campaign-meta span{padding:2px 8px;background:var(--off);border-radius:12px}
.aic-campaign-actions{display:flex;gap:8px;justify-content:center}
.aic-components-list{display:flex;flex-direction:column;gap:8px}
.aic-comp-section{border:1.5px solid var(--off2);border-radius:10px;overflow:hidden}
.aic-comp-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;cursor:pointer;transition:background 0.15s}
.aic-comp-header:hover{background:rgba(11,95,216,0.02)}
.aic-comp-header-left{display:flex;align-items:center;gap:10px}
.aic-comp-title{font-size:14px;font-weight:600;color:var(--navy)}
.aic-comp-arrow{color:var(--gray);transition:transform 0.2s}
.aic-comp-open .aic-comp-arrow{transform:rotate(180deg)}
.aic-comp-body{display:none;padding:0 16px 16px;border-top:1px solid var(--off2)}
.aic-comp-open .aic-comp-body{display:block}
.aic-comp-text{font-size:14px;line-height:1.75;color:var(--dark)}
.aic-comp-text p{margin-bottom:8px}
.aic-comp-text strong{color:var(--navy);font-weight:600}
.aic-list-item{padding-left:16px;position:relative}
.aic-list-item::before{content:'';position:absolute;left:4px;top:10px;width:5px;height:5px;border-radius:50%;background:var(--blue)}

/* Dark mode */
[data-theme="dark"] .aic-icp-card{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .aic-icp-name{color:var(--white)}
[data-theme="dark"] .aic-label{color:var(--white)}
[data-theme="dark"] .aic-select{border-color:rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);color:var(--white)}
[data-theme="dark"] .aic-channel-opt{border-color:rgba(255,255,255,0.1);color:var(--white)}
[data-theme="dark"] .aic-comp-card{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .aic-comp-label{color:var(--white)}
[data-theme="dark"] .aic-history{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .aic-history-item{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .aic-history-name{color:var(--white)}
[data-theme="dark"] .aic-campaign-header{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .aic-campaign-name{color:var(--white)}
[data-theme="dark"] .aic-campaign-meta span{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .aic-comp-section{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .aic-comp-title{color:var(--white)}
[data-theme="dark"] .aic-comp-body{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .aic-comp-text{color:rgba(255,255,255,0.85)}
[data-theme="dark"] .aic-comp-text strong{color:var(--white)}

@media(max-width:600px){
  .aic-comp-grid{grid-template-columns:1fr}
  .aic-campaign-actions{flex-direction:column}
}

/* ── AI Content Repurposer ───────────────────────────── */
.arp-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.25s}
.arp-overlay.arp-visible{opacity:1}
.arp-modal{background:var(--white,#fff);border-radius:14px;width:92%;max-width:780px;max-height:88vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.25);transform:translateY(20px);transition:transform 0.25s}
.arp-visible .arp-modal{transform:translateY(0)}
.arp-header{padding:24px 28px 16px;border-bottom:1px solid var(--off2,#e2e8f0);position:relative}
.arp-title{font-size:20px;font-weight:700;color:var(--navy,#0f172a);margin:0}
.arp-subtitle{font-size:13px;color:var(--sub,#64748b);margin:4px 0 0}
.arp-close{position:absolute;top:16px;right:20px;background:none;border:none;font-size:24px;color:var(--sub,#64748b);cursor:pointer;padding:4px 8px}
.arp-close:hover{color:var(--navy,#0f172a)}
.arp-body{padding:20px 28px 28px}
.arp-step-label{font-size:15px;font-weight:700;color:var(--navy,#0f172a);margin-bottom:12px}
.arp-hint{font-size:13px;color:var(--sub,#64748b);margin:0 0 16px}
.arp-sources{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-bottom:16px}
.arp-source-card{background:var(--off,#f8fafc);border:1.5px solid var(--off2,#e2e8f0);border-radius:10px;padding:14px;cursor:pointer;transition:all 0.15s}
.arp-source-card:hover{border-color:var(--accent,#0B5FD8);background:#f0f6ff}
.arp-source-card.arp-selected{border-color:var(--accent,#0B5FD8);background:#e8f0fe;box-shadow:0 0 0 3px rgba(11,95,216,0.15)}
.arp-source-tool{font-size:11px;font-weight:600;color:var(--accent,#0B5FD8);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:4px}
.arp-source-label{font-size:14px;font-weight:600;color:var(--navy,#0f172a);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.arp-source-date{font-size:12px;color:var(--sub,#64748b)}
.arp-divider{text-align:center;margin:20px 0;position:relative}
.arp-divider::before{content:'';position:absolute;top:50%;left:0;right:0;height:1px;background:var(--off2,#e2e8f0)}
.arp-divider span{background:var(--white,#fff);padding:0 12px;position:relative;font-size:12px;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.5px}
.arp-textarea{width:100%;border:1.5px solid var(--off2,#e2e8f0);border-radius:10px;padding:12px 14px;font-size:14px;font-family:'DM Sans',sans-serif;color:var(--navy,#0f172a);resize:vertical;background:var(--off,#f8fafc)}
.arp-textarea:focus{border-color:var(--accent,#0B5FD8);outline:none;box-shadow:0 0 0 3px rgba(11,95,216,0.1)}
.arp-formats{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin-bottom:20px}
.arp-format-card{background:var(--off,#f8fafc);border:1.5px solid var(--off2,#e2e8f0);border-radius:10px;padding:14px;cursor:pointer;transition:all 0.15s;display:block}
.arp-format-card:hover{border-color:var(--accent,#0B5FD8)}
.arp-format-card:has(.arp-fmt-check:checked){border-color:var(--accent,#0B5FD8);background:#e8f0fe}
.arp-fmt-check{display:none}
.arp-format-icon{color:var(--accent,#0B5FD8);margin-bottom:8px}
.arp-format-label{font-size:14px;font-weight:600;color:var(--navy,#0f172a);margin-bottom:4px}
.arp-format-desc{font-size:12px;color:var(--sub,#64748b);line-height:1.4}
.arp-actions{display:flex;gap:8px;justify-content:flex-end}
.arp-btn{background:var(--off,#f8fafc);border:1.5px solid var(--off2,#e2e8f0);border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;color:var(--navy,#0f172a);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.13s}
.arp-btn:hover{border-color:var(--accent,#0B5FD8);color:var(--accent,#0B5FD8)}
.arp-btn-primary{background:var(--accent,#0B5FD8);color:#fff;border-color:var(--accent,#0B5FD8)}
.arp-btn-primary:hover{background:#0950b8;color:#fff}
.arp-btn-sm{padding:5px 12px;font-size:12px}
.arp-generating{text-align:center;padding:60px 20px}
.arp-spinner{width:36px;height:36px;border:3px solid var(--off2,#e2e8f0);border-top-color:var(--accent,#0B5FD8);border-radius:50%;animation:arpSpin 0.8s linear infinite;margin:0 auto 16px}
@keyframes arpSpin{to{transform:rotate(360deg)}}
.arp-gen-text{font-size:16px;font-weight:600;color:var(--navy,#0f172a);margin:0 0 4px}
.arp-gen-formats{font-size:13px;color:var(--sub,#64748b)}
.arp-results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:8px}
.arp-results-actions{display:flex;gap:6px}
.arp-results-tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:16px;border-bottom:1px solid var(--off2,#e2e8f0);padding-bottom:8px}
.arp-rtab{background:none;border:none;padding:6px 14px;font-size:13px;font-weight:500;color:var(--sub,#64748b);cursor:pointer;border-radius:6px;font-family:'DM Sans',sans-serif;transition:all 0.13s}
.arp-rtab:hover{color:var(--navy,#0f172a);background:var(--off,#f8fafc)}
.arp-rtab-active{color:var(--accent,#0B5FD8);background:#e8f0fe;font-weight:600}
.arp-result-panel{display:none}
.arp-result-active{display:block}
.arp-result-content{background:var(--off,#f8fafc);border:1px solid var(--off2,#e2e8f0);border-radius:10px;padding:20px;line-height:1.7;font-size:14px;color:var(--navy,#0f172a);max-height:400px;overflow-y:auto}
.arp-result-footer{display:flex;gap:6px;margin-top:10px}
.arp-empty{background:var(--off,#f8fafc);border-radius:10px;padding:20px;color:var(--sub,#64748b);font-size:14px;line-height:1.6}
.arp-empty ul{margin:8px 0;padding-left:20px}
.arp-history-section{margin-top:16px}
.arp-history-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--off2,#e2e8f0);border-radius:8px;margin-bottom:6px;cursor:pointer;transition:background 0.13s}
.arp-history-item:hover{background:var(--off,#f8fafc)}
.arp-hist-source{font-size:13px;font-weight:600;color:var(--navy,#0f172a);flex:1}
.arp-hist-formats{font-size:12px;color:var(--sub,#64748b)}
.arp-hist-date{font-size:12px;color:var(--sub,#64748b)}
[data-theme="dark"] .arp-modal{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .arp-header{border-color:var(--off2,#334155)}
[data-theme="dark"] .arp-source-card{background:var(--bg,#0f172a);border-color:var(--off2,#334155)}
[data-theme="dark"] .arp-source-card:hover,[data-theme="dark"] .arp-source-card.arp-selected{background:#1a2744;border-color:var(--accent,#0B5FD8)}
[data-theme="dark"] .arp-textarea{background:var(--bg,#0f172a);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
[data-theme="dark"] .arp-format-card{background:var(--bg,#0f172a);border-color:var(--off2,#334155)}
[data-theme="dark"] .arp-format-card:has(.arp-fmt-check:checked){background:#1a2744}
[data-theme="dark"] .arp-result-content{background:var(--bg,#0f172a);border-color:var(--off2,#334155)}
[data-theme="dark"] .arp-divider::before{background:var(--off2,#334155)}
[data-theme="dark"] .arp-divider span{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .arp-btn{background:var(--bg,#0f172a);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
[data-theme="dark"] .arp-history-item{border-color:var(--off2,#334155)}
[data-theme="dark"] .arp-history-item:hover{background:var(--bg,#0f172a)}
[data-theme="dark"] .arp-empty{background:var(--bg,#0f172a)}
@media(max-width:600px){
  .arp-modal{width:96%;max-height:92vh;border-radius:10px}
  .arp-header{padding:16px 18px 12px}
  .arp-body{padding:14px 18px 20px}
  .arp-sources{grid-template-columns:1fr}
  .arp-formats{grid-template-columns:1fr 1fr}
  .arp-results-header{flex-direction:column;align-items:flex-start}
  .arp-results-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}
}

/* ── AI Writing Assistant ────────────────────────────── */
.awr-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);z-index:9999;opacity:0;transition:opacity 0.25s}
.awr-overlay.awr-visible{opacity:1}
.awr-panel{display:flex;width:96%;max-width:1100px;height:90vh;margin:5vh auto;background:var(--white,#fff);border-radius:14px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,0.3);transform:translateY(20px);transition:transform 0.25s}
.awr-visible .awr-panel{transform:translateY(0)}
.awr-sidebar{width:280px;min-width:280px;background:var(--off,#f8fafc);border-right:1px solid var(--off2,#e2e8f0);overflow-y:auto;padding:20px 16px}
.awr-main{flex:1;display:flex;flex-direction:column;overflow:hidden}
.awr-side-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.awr-side-title{font-size:18px;font-weight:700;color:var(--navy,#0f172a);margin:0}
.awr-side-close{background:none;border:none;font-size:22px;color:var(--sub,#64748b);cursor:pointer;padding:2px 6px}
.awr-side-close:hover{color:var(--navy,#0f172a)}
.awr-side-section{margin-bottom:18px}
.awr-side-label{font-size:12px;font-weight:700;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:8px}
.awr-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.awr-type-btn{display:flex;align-items:center;gap:5px;background:var(--white,#fff);border:1.5px solid var(--off2,#e2e8f0);border-radius:7px;padding:6px 8px;font-size:11px;font-weight:500;color:var(--navy,#0f172a);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.13s}
.awr-type-btn:hover{border-color:var(--accent,#0B5FD8)}
.awr-type-btn.awr-type-active{border-color:var(--accent,#0B5FD8);background:#e8f0fe;color:var(--accent,#0B5FD8)}
.awr-type-btn svg{flex-shrink:0}
.awr-type-btn span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.awr-tone-list{display:flex;flex-direction:column;gap:4px}
.awr-tone-opt{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:6px;cursor:pointer;transition:background 0.13s;font-size:13px;color:var(--navy,#0f172a)}
.awr-tone-opt:hover{background:var(--white,#fff)}
.awr-tone-opt input[type="radio"]{accent-color:var(--accent,#0B5FD8)}
.awr-select{width:100%;border:1.5px solid var(--off2,#e2e8f0);border-radius:8px;padding:7px 10px;font-size:13px;font-family:'DM Sans',sans-serif;color:var(--navy,#0f172a);background:var(--white,#fff)}
.awr-length-btns{display:flex;gap:4px}
.awr-len-btn{flex:1;background:var(--white,#fff);border:1.5px solid var(--off2,#e2e8f0);border-radius:7px;padding:6px;font-size:12px;font-weight:600;color:var(--navy,#0f172a);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.13s;text-align:center}
.awr-len-btn:hover{border-color:var(--accent,#0B5FD8)}
.awr-len-btn.awr-len-active{border-color:var(--accent,#0B5FD8);background:#e8f0fe;color:var(--accent,#0B5FD8)}
.awr-starters{display:flex;flex-direction:column;gap:4px}
.awr-starter-btn{background:var(--white,#fff);border:1px solid var(--off2,#e2e8f0);border-radius:6px;padding:7px 10px;font-size:12px;color:var(--navy,#0f172a);cursor:pointer;text-align:left;font-family:'DM Sans',sans-serif;transition:all 0.13s}
.awr-starter-btn:hover{border-color:var(--accent,#0B5FD8);background:#f0f6ff}
.awr-drafts-list{display:flex;flex-direction:column;gap:4px}
.awr-draft-item{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;border-radius:6px;cursor:pointer;transition:background 0.13s;font-size:12px}
.awr-draft-item:hover{background:var(--white,#fff)}
.awr-draft-title{color:var(--navy,#0f172a);font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.awr-draft-date{color:var(--sub,#64748b);font-size:11px;margin-left:8px}
.awr-no-drafts{font-size:12px;color:var(--sub,#64748b);font-style:italic}
.awr-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--off2,#e2e8f0);flex-wrap:wrap;gap:6px}
.awr-tb-left,.awr-tb-right{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.awr-tb-btn{background:var(--off,#f8fafc);border:1px solid var(--off2,#e2e8f0);border-radius:6px;padding:5px 10px;font-size:12px;font-weight:500;color:var(--navy,#0f172a);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.13s}
.awr-tb-btn:hover{border-color:var(--accent,#0B5FD8);color:var(--accent,#0B5FD8)}
.awr-tb-copy,.awr-tb-export,.awr-tb-save{font-weight:600}
.awr-tb-save{background:var(--accent,#0B5FD8);color:#fff;border-color:var(--accent,#0B5FD8)}
.awr-tb-save:hover{background:#0950b8;color:#fff}
.awr-word-count{font-size:12px;color:var(--sub,#64748b);padding:0 8px}
.awr-editor-wrap{flex:1;display:flex;flex-direction:column;padding:16px;overflow:hidden}
.awr-prompt-row{display:flex;gap:8px;margin-bottom:12px}
.awr-prompt{flex:1;border:1.5px solid var(--off2,#e2e8f0);border-radius:10px;padding:10px 14px;font-size:14px;font-family:'DM Sans',sans-serif;color:var(--navy,#0f172a);resize:none;background:var(--off,#f8fafc)}
.awr-prompt:focus{border-color:var(--accent,#0B5FD8);outline:none;box-shadow:0 0 0 3px rgba(11,95,216,0.1)}
.awr-generate-btn{background:var(--accent,#0B5FD8);color:#fff;border:none;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;white-space:nowrap;transition:background 0.13s}
.awr-generate-btn:hover{background:#0950b8}
.awr-generate-btn:disabled{opacity:0.6;cursor:not-allowed}
.awr-output-area{flex:1;min-height:0}
.awr-output{width:100%;height:100%;border:1.5px solid var(--off2,#e2e8f0);border-radius:10px;padding:14px;font-size:14px;font-family:'DM Sans',sans-serif;color:var(--navy,#0f172a);resize:none;line-height:1.7;background:var(--white,#fff)}
.awr-output:focus{border-color:var(--accent,#0B5FD8);outline:none;box-shadow:0 0 0 3px rgba(11,95,216,0.1)}
.awr-suggestions{padding:12px 0 0;border-top:1px solid var(--off2,#e2e8f0);margin-top:12px}
.awr-sug-label{font-size:11px;font-weight:700;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:6px}
.awr-sug-item{font-size:12px;color:var(--sub,#64748b);padding:3px 0;line-height:1.4}
.awr-sug-item::before{content:'--';margin-right:6px}
[data-theme="dark"] .awr-panel{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .awr-sidebar{background:var(--bg,#0f172a);border-color:var(--off2,#334155)}
[data-theme="dark"] .awr-toolbar{border-color:var(--off2,#334155)}
[data-theme="dark"] .awr-type-btn{background:var(--card-bg,#1e293b);border-color:var(--off2,#334155)}
[data-theme="dark"] .awr-type-btn.awr-type-active{background:#1a2744}
[data-theme="dark"] .awr-starter-btn{background:var(--card-bg,#1e293b);border-color:var(--off2,#334155)}
[data-theme="dark"] .awr-len-btn{background:var(--card-bg,#1e293b);border-color:var(--off2,#334155)}
[data-theme="dark"] .awr-len-btn.awr-len-active{background:#1a2744}
[data-theme="dark"] .awr-select{background:var(--card-bg,#1e293b);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
[data-theme="dark"] .awr-prompt{background:var(--bg,#0f172a);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
[data-theme="dark"] .awr-output{background:var(--bg,#0f172a);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
[data-theme="dark"] .awr-tb-btn{background:var(--bg,#0f172a);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
[data-theme="dark"] .awr-draft-item:hover{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .awr-suggestions{border-color:var(--off2,#334155)}
[data-theme="dark"] .awr-tone-opt:hover{background:var(--card-bg,#1e293b)}
@media(max-width:768px){
  .awr-panel{flex-direction:column;height:95vh;margin:2.5vh auto;width:98%}
  .awr-sidebar{width:100%;min-width:100%;max-height:40vh;border-right:none;border-bottom:1px solid var(--off2,#e2e8f0)}
  .awr-type-grid{grid-template-columns:repeat(5,1fr)}
  .awr-type-btn span{display:none}
  .awr-starters{flex-direction:row;flex-wrap:wrap}
  .awr-starter-btn{flex:0 0 auto}
  .awr-prompt-row{flex-direction:column}
}

/* ── ICP Performance Tracker ─────────────────────────── */
.icpt-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.25s}
.icpt-overlay.icpt-visible{opacity:1}
.icpt-modal{background:var(--white,#fff);border-radius:14px;width:92%;max-width:820px;max-height:88vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.25);transform:translateY(20px);transition:transform 0.25s}
.icpt-visible .icpt-modal{transform:translateY(0)}
.icpt-header{padding:24px 28px 16px;border-bottom:1px solid var(--off2,#e2e8f0);position:relative}
.icpt-title{font-size:20px;font-weight:700;color:var(--navy,#0f172a);margin:0}
.icpt-subtitle{font-size:13px;color:var(--sub,#64748b);margin:4px 0 0}
.icpt-close{position:absolute;top:16px;right:20px;background:none;border:none;font-size:24px;color:var(--sub,#64748b);cursor:pointer;padding:4px 8px}
.icpt-close:hover{color:var(--navy,#0f172a)}
.icpt-tabs{display:flex;gap:4px;padding:12px 28px 0;border-bottom:1px solid var(--off2,#e2e8f0)}
.icpt-tab{background:none;border:none;padding:8px 16px;font-size:13px;font-weight:500;color:var(--sub,#64748b);cursor:pointer;border-bottom:2px solid transparent;font-family:'DM Sans',sans-serif;transition:all 0.13s}
.icpt-tab:hover{color:var(--navy,#0f172a)}
.icpt-tab-active{color:var(--accent,#0B5FD8);border-bottom-color:var(--accent,#0B5FD8);font-weight:600}
.icpt-body{padding:20px 28px 28px}
.icpt-profile-card{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--off,#f8fafc);border-radius:10px;margin-bottom:16px}
.icpt-profile-badge{font-size:11px;font-weight:700;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:0.5px}
.icpt-badge-high{background:#dcfce7;color:#059669}
.icpt-badge-medium{background:#fef3c7;color:#D97706}
.icpt-badge-low{background:#fee2e2;color:#EF4444}
.icpt-profile-title{font-size:15px;font-weight:600;color:var(--navy,#0f172a)}
.icpt-profile-type{font-size:13px;color:var(--sub,#64748b)}
.icpt-no-profile{padding:20px;background:var(--off,#f8fafc);border-radius:10px;text-align:center;margin-bottom:16px}
.icpt-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}
.icpt-stat-card{background:var(--off,#f8fafc);border:1px solid var(--off2,#e2e8f0);border-radius:10px;padding:16px;text-align:center}
.icpt-stat-value{font-size:24px;font-weight:700;margin-bottom:4px}
.icpt-stat-label{font-size:12px;font-weight:600;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.3px}
.icpt-stat-sub{font-size:11px;color:var(--sub,#64748b);margin-top:2px}
.icpt-card{background:var(--white,#fff);border:1px solid var(--off2,#e2e8f0);border-radius:10px;padding:18px;margin-bottom:12px}
.icpt-card-title{font-size:15px;font-weight:700;color:var(--navy,#0f172a);margin-bottom:12px}
.icpt-card-desc{font-size:13px;color:var(--sub,#64748b);margin-top:4px}
.icpt-card-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.icpt-filter-row{display:flex;gap:6px}
.icpt-fit-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.icpt-fit-label{font-size:13px;font-weight:500;color:var(--navy,#0f172a);min-width:90px}
.icpt-fit-track{flex:1;height:8px;background:var(--off,#f0f0f0);border-radius:4px;overflow:hidden}
.icpt-fit-fill{height:100%;border-radius:4px;transition:width 0.5s}
.icpt-fit-pct{font-size:13px;font-weight:600;color:var(--navy,#0f172a);min-width:40px;text-align:right}
.icpt-pipeline{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px 0}
.icpt-pipe-stage{text-align:center}
.icpt-pipe-count{font-size:28px;font-weight:700}
.icpt-pipe-label{font-size:12px;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.5px;margin-top:4px}
.icpt-pipe-arrow{font-size:20px;color:var(--off2,#cbd5e1)}
.icpt-ref-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--off2,#e2e8f0)}
.icpt-ref-row:last-child{border-bottom:none}
.icpt-ref-badge{font-size:10px;font-weight:700;padding:3px 8px;border-radius:12px;text-transform:uppercase}
.icpt-ref-name{font-size:14px;font-weight:500;color:var(--navy,#0f172a);flex:1}
.icpt-ref-debt{font-size:13px;color:var(--sub,#64748b)}
.icpt-ref-status{font-size:11px;font-weight:600;text-transform:capitalize;padding:2px 8px;border-radius:10px}
.icpt-status-pending{background:#fef3c7;color:#D97706}
.icpt-status-converted{background:#dcfce7;color:#059669}
.icpt-status-lost{background:#fee2e2;color:#EF4444}
.icpt-ref-date{font-size:12px;color:var(--sub,#64748b)}
.icpt-ref-card{border:1px solid var(--off2,#e2e8f0);border-radius:8px;padding:12px;margin-bottom:8px}
.icpt-ref-top{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.icpt-ref-bottom{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.icpt-ref-detail{font-size:12px;color:var(--sub,#64748b);background:var(--off,#f8fafc);padding:2px 8px;border-radius:4px}
.icpt-ref-status-btns{display:flex;gap:4px;margin-left:auto}
.icpt-status-btn{font-size:11px;padding:3px 8px;border-radius:6px;border:1px solid var(--off2,#e2e8f0);background:var(--white,#fff);color:var(--sub,#64748b);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.13s}
.icpt-status-btn.active{font-weight:600}
.icpt-status-btn-pending.active{background:#fef3c7;color:#D97706;border-color:#fbbf24}
.icpt-status-btn-converted.active{background:#dcfce7;color:#059669;border-color:#34d399}
.icpt-status-btn-lost.active{background:#fee2e2;color:#EF4444;border-color:#f87171}
.icpt-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}
.icpt-btn{background:var(--off,#f8fafc);border:1.5px solid var(--off2,#e2e8f0);border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;color:var(--navy,#0f172a);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.13s}
.icpt-btn:hover{border-color:var(--accent,#0B5FD8)}
.icpt-btn-primary{background:var(--accent,#0B5FD8);color:#fff;border-color:var(--accent,#0B5FD8)}
.icpt-btn-primary:hover{background:#0950b8;color:#fff}
.icpt-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.icpt-form-group{display:flex;flex-direction:column;gap:4px}
.icpt-label{font-size:12px;font-weight:600;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.3px}
.icpt-input{border:1.5px solid var(--off2,#e2e8f0);border-radius:8px;padding:8px 12px;font-size:14px;font-family:'DM Sans',sans-serif;color:var(--navy,#0f172a)}
.icpt-input:focus{border-color:var(--accent,#0B5FD8);outline:none}
.icpt-input-sm{padding:5px 8px;font-size:12px}
.icpt-empty{padding:20px;text-align:center;color:var(--sub,#64748b);font-size:14px}
.icpt-pattern-table{display:flex;flex-direction:column;gap:4px}
.icpt-pt-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:8px;font-size:11px;font-weight:700;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.5px;padding:4px 0;border-bottom:1px solid var(--off2,#e2e8f0)}
.icpt-pt-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:8px;font-size:13px;color:var(--navy,#0f172a);padding:6px 0;border-bottom:1px solid var(--off,#f0f0f0)}
.icpt-pt-source{font-weight:500;text-transform:capitalize}
.icpt-chart-bars{display:flex;gap:8px;align-items:flex-end;height:120px;padding:10px 0}
.icpt-chart-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}
.icpt-chart-bar-wrap{width:100%;height:100px;position:relative;display:flex;align-items:flex-end}
.icpt-chart-bar{width:100%;border-radius:4px 4px 0 0;transition:height 0.5s;position:absolute;bottom:0}
.icpt-bar-total{background:#0B5FD8;opacity:0.3}
.icpt-bar-conv{background:#059669}
.icpt-chart-label{font-size:10px;color:var(--sub,#64748b)}
.icpt-chart-val{font-size:11px;font-weight:600;color:var(--navy,#0f172a)}
.icpt-chart-legend{display:flex;gap:16px;justify-content:center;margin-top:8px}
.icpt-legend-item{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--sub,#64748b)}
.icpt-legend-dot{width:8px;height:8px;border-radius:2px}
.icpt-score-card{display:flex;align-items:center;gap:20px;padding:20px;background:var(--off,#f8fafc);border-radius:12px;margin-bottom:16px}
.icpt-score-circle{width:80px;height:80px;border-radius:50%;background:conic-gradient(var(--accent,#0B5FD8) calc(var(--score) * 3.6deg),var(--off2,#e2e8f0) 0);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.icpt-score-num{font-size:22px;font-weight:700;color:var(--navy,#0f172a);background:var(--off,#f8fafc);width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.icpt-score-label{font-size:15px;font-weight:700;color:var(--navy,#0f172a)}
.icpt-score-desc{font-size:13px;color:var(--sub,#64748b);margin-top:4px}
.icpt-insight{display:flex;gap:12px;padding:14px;border-radius:10px;margin-bottom:8px}
.icpt-insight-success{background:#f0fdf4;border:1px solid #bbf7d0}
.icpt-insight-warning{background:#fffbeb;border:1px solid #fde68a}
.icpt-insight-tip{background:#eff6ff;border:1px solid #bfdbfe}
.icpt-insight-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}
.icpt-insight-success .icpt-insight-icon{background:#dcfce7;color:#059669}
.icpt-insight-warning .icpt-insight-icon{background:#fef3c7;color:#D97706}
.icpt-insight-tip .icpt-insight-icon{background:#dbeafe;color:#0B5FD8}
.icpt-insight-title{font-size:14px;font-weight:600;color:var(--navy,#0f172a);margin-bottom:2px}
.icpt-insight-text{font-size:13px;color:var(--sub,#64748b);line-height:1.5}
.icpt-ai-text{font-size:14px;line-height:1.7;color:var(--navy,#0f172a)}
.icpt-spinner{width:24px;height:24px;border:3px solid var(--off2,#e2e8f0);border-top-color:var(--accent,#0B5FD8);border-radius:50%;animation:icptSpin 0.8s linear infinite;margin:0 auto 12px}
@keyframes icptSpin{to{transform:rotate(360deg)}}
[data-theme="dark"] .icpt-modal{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .icpt-header,.icpt-tabs{border-color:var(--off2,#334155)}
[data-theme="dark"] .icpt-stat-card,.icpt-card{background:var(--bg,#0f172a);border-color:var(--off2,#334155)}
[data-theme="dark"] .icpt-profile-card,.icpt-score-card{background:var(--bg,#0f172a)}
[data-theme="dark"] .icpt-input{background:var(--bg,#0f172a);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
[data-theme="dark"] .icpt-ref-card{border-color:var(--off2,#334155)}
[data-theme="dark"] .icpt-btn{background:var(--bg,#0f172a);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
[data-theme="dark"] .icpt-status-btn{background:var(--bg,#0f172a);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
[data-theme="dark"] .icpt-insight-success{background:#052e16;border-color:#166534}
[data-theme="dark"] .icpt-insight-warning{background:#422006;border-color:#854d0e}
[data-theme="dark"] .icpt-insight-tip{background:#172554;border-color:#1e40af}
[data-theme="dark"] .icpt-score-num{background:var(--card-bg,#1e293b)}
@media(max-width:600px){
  .icpt-modal{width:96%;max-height:92vh}
  .icpt-header{padding:16px 18px 12px}
  .icpt-body{padding:14px 18px 20px}
  .icpt-stats-row{grid-template-columns:1fr 1fr}
  .icpt-form-row{grid-template-columns:1fr}
  .icpt-pt-header,.icpt-pt-row{grid-template-columns:2fr 1fr 1fr 1fr}
  .icpt-pt-header span:last-child,.icpt-pt-row span:last-child{display:none}
  .icpt-pipeline{flex-wrap:wrap}
  .icpt-ref-top{flex-wrap:wrap}
  .icpt-tabs{overflow-x:auto;flex-wrap:nowrap}
}

/* ── Onboarding Smart Guide ─────────────────────────── */
.obg-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.25s}
.obg-overlay.obg-visible{opacity:1}
.obg-modal{background:var(--white,#fff);border-radius:14px;width:92%;max-width:740px;max-height:88vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.25);transform:translateY(20px);transition:transform 0.25s}
.obg-visible .obg-modal{transform:translateY(0)}
.obg-header{padding:24px 28px 16px;border-bottom:1px solid var(--off2,#e2e8f0);position:relative}
.obg-title{font-size:20px;font-weight:700;color:var(--navy,#0f172a);margin:0}
.obg-subtitle{font-size:13px;color:var(--sub,#64748b);margin:4px 0 0}
.obg-close{position:absolute;top:16px;right:20px;background:none;border:none;font-size:24px;color:var(--sub,#64748b);cursor:pointer;padding:4px 8px}
.obg-close:hover{color:var(--navy,#0f172a)}
.obg-body{padding:20px 28px 28px}
.obg-picker{text-align:center;padding:20px 0}
.obg-picker-title{font-size:18px;font-weight:700;color:var(--navy,#0f172a);margin-bottom:8px}
.obg-picker-desc{font-size:14px;color:var(--sub,#64748b);margin-bottom:24px}
.obg-path-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.obg-path-card{background:var(--off,#f8fafc);border:2px solid var(--off2,#e2e8f0);border-radius:12px;padding:24px 16px;text-align:center;cursor:pointer;transition:all 0.2s;font-family:'DM Sans',sans-serif}
.obg-path-card:hover{border-color:var(--accent,#0B5FD8);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.1)}
.obg-path-icon{margin-bottom:8px}
.obg-path-label{font-size:15px;font-weight:600;color:var(--navy,#0f172a);margin-bottom:4px}
.obg-path-steps{font-size:12px;color:var(--sub,#64748b)}
.obg-progress-header{background:var(--off,#f8fafc);border-radius:12px;padding:18px;margin-bottom:16px}
.obg-ph-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}
.obg-ph-path{font-size:16px;font-weight:700;margin-bottom:4px}
.obg-ph-intro{font-size:13px;color:var(--sub,#64748b);line-height:1.5;max-width:480px}
.obg-ph-stats{display:flex;gap:16px;margin-bottom:12px}
.obg-ph-stat{display:flex;flex-direction:column;align-items:center;gap:2px}
.obg-ph-num{font-size:18px;font-weight:700;color:var(--navy,#0f172a)}
.obg-ph-label{font-size:11px;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.5px}
.obg-progress-bar{height:6px;background:var(--off2,#e2e8f0);border-radius:3px;overflow:hidden}
.obg-progress-fill{height:100%;border-radius:3px;transition:width 0.5s}
.obg-milestones{background:var(--off,#f8fafc);border-radius:10px;padding:14px 18px;margin-bottom:16px}
.obg-mile-title{font-size:12px;font-weight:700;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:10px}
.obg-mile-row{display:flex;gap:10px;flex-wrap:wrap}
.obg-mile-badge{display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:20px;background:var(--white,#fff);border:1px solid var(--off2,#e2e8f0);font-size:12px;color:var(--sub,#64748b)}
.obg-mile-badge.obg-mile-earned{background:#dcfce7;border-color:#bbf7d0;color:#059669}
.obg-mile-icon{font-size:14px}
.obg-mile-label{font-weight:500}
.obg-step-group{margin-bottom:16px}
.obg-group-label{font-size:12px;font-weight:700;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:8px;padding-left:4px}
.obg-step{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--off2,#e2e8f0);border-radius:10px;margin-bottom:6px;transition:all 0.15s}
.obg-step:hover{border-color:var(--accent,#0B5FD8)}
.obg-step-done{background:var(--off,#f8fafc);opacity:0.7}
.obg-step-next{border-color:var(--accent,#0B5FD8);background:#f0f6ff}
.obg-step-check{width:24px;height:24px;border-radius:50%;border:2px solid var(--off2,#cbd5e1);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.15s}
.obg-step-check:hover{border-color:var(--accent,#0B5FD8)}
.obg-step-done .obg-step-check{background:var(--accent,#0B5FD8);border-color:var(--accent,#0B5FD8)}
.obg-step-content{flex:1;min-width:0}
.obg-step-title{font-size:14px;font-weight:600;color:var(--navy,#0f172a)}
.obg-step-done .obg-step-title{text-decoration:line-through;color:var(--sub,#64748b)}
.obg-step-desc{font-size:12px;color:var(--sub,#64748b);margin-top:2px}
.obg-step-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}
.obg-step-time{font-size:11px;color:var(--sub,#64748b);background:var(--off,#f0f0f0);padding:3px 8px;border-radius:12px}
.obg-next-badge{font-size:10px;font-weight:700;background:var(--accent,#0B5FD8);color:#fff;padding:2px 8px;border-radius:10px;margin-left:6px;vertical-align:middle}
.obg-btn{background:var(--off,#f8fafc);border:1.5px solid var(--off2,#e2e8f0);border-radius:8px;padding:6px 14px;font-size:13px;font-weight:500;color:var(--navy,#0f172a);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.13s}
.obg-btn:hover{border-color:var(--accent,#0B5FD8)}
.obg-btn-sm{padding:4px 10px;font-size:12px}
.obg-btn-go{background:var(--accent,#0B5FD8);color:#fff;border-color:var(--accent,#0B5FD8);font-weight:600}
.obg-btn-go:hover{background:#0950b8;color:#fff}
.obg-tips{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:14px 18px;margin-top:16px}
.obg-tips-title{font-size:12px;font-weight:700;color:var(--accent,#0B5FD8);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:8px}
.obg-tip-item{font-size:13px;color:var(--navy,#0f172a);padding:4px 0;line-height:1.5}
.obg-tip-item::before{content:'--';margin-right:6px;color:var(--accent,#0B5FD8)}
[data-theme="dark"] .obg-modal{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .obg-header{border-color:var(--off2,#334155)}
[data-theme="dark"] .obg-path-card{background:var(--bg,#0f172a);border-color:var(--off2,#334155)}
[data-theme="dark"] .obg-progress-header{background:var(--bg,#0f172a)}
[data-theme="dark"] .obg-milestones{background:var(--bg,#0f172a)}
[data-theme="dark"] .obg-mile-badge{background:var(--card-bg,#1e293b);border-color:var(--off2,#334155)}
[data-theme="dark"] .obg-step{border-color:var(--off2,#334155)}
[data-theme="dark"] .obg-step-next{background:#1a2744;border-color:var(--accent,#0B5FD8)}
[data-theme="dark"] .obg-step-done{background:var(--bg,#0f172a)}
[data-theme="dark"] .obg-tips{background:#172554;border-color:#1e40af}
[data-theme="dark"] .obg-btn{background:var(--bg,#0f172a);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
@media(max-width:600px){
  .obg-modal{width:96%;max-height:92vh}
  .obg-body{padding:14px 18px 20px}
  .obg-path-grid{grid-template-columns:1fr}
  .obg-ph-stats{flex-wrap:wrap;gap:10px}
  .obg-mile-row{flex-direction:column}
  .obg-step{flex-wrap:wrap}
  .obg-step-meta{width:100%;justify-content:flex-end;margin-top:4px}
}

/* ── ICP Competitive Intelligence ────────────────────── */
.ici-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.25s}
.ici-overlay.ici-visible{opacity:1}
.ici-modal{background:var(--white,#fff);border-radius:14px;width:92%;max-width:860px;max-height:88vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.25);transform:translateY(20px);transition:transform 0.25s}
.ici-visible .ici-modal{transform:translateY(0)}
.ici-header{padding:24px 28px 16px;border-bottom:1px solid var(--off2,#e2e8f0);position:relative}
.ici-title{font-size:20px;font-weight:700;color:var(--navy,#0f172a);margin:0}
.ici-subtitle{font-size:13px;color:var(--sub,#64748b);margin:4px 0 0}
.ici-close{position:absolute;top:16px;right:20px;background:none;border:none;font-size:24px;color:var(--sub,#64748b);cursor:pointer}
.ici-tabs{display:flex;gap:4px;padding:12px 28px 0;border-bottom:1px solid var(--off2,#e2e8f0);overflow-x:auto}
.ici-tab{background:none;border:none;padding:8px 14px;font-size:13px;font-weight:500;color:var(--sub,#64748b);cursor:pointer;border-bottom:2px solid transparent;font-family:'DM Sans',sans-serif;transition:all 0.13s;white-space:nowrap}
.ici-tab:hover{color:var(--navy,#0f172a)}
.ici-tab-active{color:var(--accent,#0B5FD8);border-bottom-color:var(--accent,#0B5FD8);font-weight:600}
.ici-body{padding:20px 28px 28px}
.ici-card{background:var(--white,#fff);border:1px solid var(--off2,#e2e8f0);border-radius:10px;padding:18px;margin-bottom:12px}
.ici-card-featured{background:var(--off,#f8fafc);border:none}
.ici-card-title{font-size:15px;font-weight:700;color:var(--navy,#0f172a);margin-bottom:12px}
.ici-card-desc{font-size:13px;color:var(--sub,#64748b);margin-top:-8px;margin-bottom:14px}
.ici-market-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ici-quadrant{min-width:0}
.ici-quad-title{font-size:13px;font-weight:600;color:var(--navy,#0f172a);margin-bottom:8px}
.ici-quad-chart{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:4px;height:200px;position:relative;border-left:2px solid var(--off2,#cbd5e1);border-bottom:2px solid var(--off2,#cbd5e1);padding:4px}
.ici-quad-y{position:absolute;left:-14px;top:50%;transform:rotate(-90deg) translateX(-50%);font-size:10px;color:var(--sub,#64748b);white-space:nowrap}
.ici-quad-x{position:absolute;bottom:-18px;left:50%;transform:translateX(-50%);font-size:10px;color:var(--sub,#64748b)}
.ici-quad-cell{border-radius:6px;padding:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:12px;font-weight:600;color:var(--navy,#0f172a)}
.ici-quad-cell span:last-child{font-size:10px;font-weight:400;color:var(--sub,#64748b);margin-top:2px}
.ici-q-tl{background:#eff6ff}
.ici-q-tr{background:#dcfce7}
.ici-q-bl{background:#f8fafc}
.ici-q-br{background:#fef3c7}
.ici-quad-dot{position:absolute;width:14px;height:14px;background:var(--accent,#0B5FD8);border-radius:50%;border:3px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,0.3);z-index:2;transform:translate(-50%,50%)}
.ici-market-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ici-mstat{background:var(--white,#fff);border:1px solid var(--off2,#e2e8f0);border-radius:8px;padding:12px;text-align:center}
.ici-mstat-value{font-size:16px;font-weight:700;margin-bottom:2px}
.ici-mstat-label{font-size:11px;color:var(--sub,#64748b)}
.ici-bench-grid{display:flex;flex-direction:column;gap:12px}
.ici-bench-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--off,#f0f0f0)}
.ici-bench-label{font-size:13px;color:var(--navy,#0f172a);flex:1}
.ici-bench-vals{display:flex;gap:16px}
.ici-bench-tag{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;background:var(--off,#f0f0f0);color:var(--sub,#64748b)}
.ici-bench-tag-you{background:#dbeafe;color:#0B5FD8}
.ici-bench-avg,.ici-bench-you{font-size:13px;font-weight:500}
.ici-comp-table{display:flex;flex-direction:column;gap:2px}
.ici-comp-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 0.5fr;gap:8px;font-size:11px;font-weight:700;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.5px;padding:8px 12px;background:var(--off,#f8fafc);border-radius:6px}
.ici-comp-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 0.5fr;gap:8px;font-size:13px;color:var(--navy,#0f172a);padding:10px 12px;border-bottom:1px solid var(--off,#f0f0f0)}
.ici-comp-highlight{background:#f0fdf4;font-weight:600;border-radius:6px;border:1px solid #bbf7d0}
.ici-comp-name{font-weight:500}
.ici-adv-item{margin-bottom:14px}
.ici-adv-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.ici-adv-title{font-size:14px;font-weight:600;color:var(--navy,#0f172a)}
.ici-adv-strength{font-size:13px;font-weight:700;color:#059669}
.ici-adv-bar{height:6px;background:var(--off,#f0f0f0);border-radius:3px;overflow:hidden;margin-bottom:4px}
.ici-adv-fill{height:100%;background:#059669;border-radius:3px;transition:width 0.5s}
.ici-adv-desc{font-size:12px;color:var(--sub,#64748b);line-height:1.5}
.ici-obj-item{padding:14px;background:var(--off,#f8fafc);border-radius:8px;margin-bottom:8px}
.ici-obj-q{font-size:14px;font-weight:600;color:var(--navy,#0f172a);font-style:italic;margin-bottom:6px}
.ici-obj-a{font-size:13px;color:var(--sub,#64748b);line-height:1.6}
.ici-terr-primary{text-align:center;padding:16px;background:var(--off,#f8fafc);border-radius:10px;margin-bottom:16px}
.ici-terr-label{font-size:12px;color:var(--sub,#64748b);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:4px}
.ici-terr-value{font-size:20px;font-weight:700;color:var(--accent,#0B5FD8)}
.ici-terr-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}
.ici-terr-metric{text-align:center;padding:12px;background:var(--white,#fff);border:1px solid var(--off2,#e2e8f0);border-radius:8px}
.ici-terr-mval{font-size:18px;font-weight:700;color:var(--navy,#0f172a);margin-bottom:2px}
.ici-terr-mlabel{font-size:11px;color:var(--sub,#64748b)}
.ici-heat-row{display:flex;align-items:center;gap:10px;padding:6px 0}
.ici-heat-name{font-size:13px;font-weight:500;color:var(--navy,#0f172a);min-width:90px}
.ici-heat-bar{flex:1;height:8px;background:var(--off,#f0f0f0);border-radius:4px;overflow:hidden}
.ici-heat-fill{height:100%;border-radius:4px;transition:width 0.5s}
.ici-heat-density{font-size:12px;color:var(--sub,#64748b);min-width:80px;text-align:right}
.ici-heat-avg{font-size:12px;font-weight:600;color:var(--navy,#0f172a);min-width:60px;text-align:right}
.ici-season-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
.ici-month-card{border-radius:8px;padding:10px 8px;text-align:center;transition:all 0.15s}
.ici-month-very-high{background:#fee2e2;border:1px solid #fca5a5}
.ici-month-high{background:#fed7aa;border:1px solid #fdba74}
.ici-month-medium{background:#fef3c7;border:1px solid #fde68a}
.ici-month-low{background:#d1fae5;border:1px solid #a7f3d0}
.ici-month-name{font-size:14px;font-weight:700;color:var(--navy,#0f172a)}
.ici-month-level{font-size:10px;font-weight:600;text-transform:capitalize;margin:2px 0}
.ici-month-note{font-size:9px;color:var(--sub,#64748b);line-height:1.3;display:none}
.ici-month-card:hover .ici-month-note{display:block}
.ici-calc-grid{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}
.ici-calc-input{display:flex;align-items:center;gap:12px}
.ici-calc-label{font-size:13px;font-weight:500;color:var(--navy,#0f172a);min-width:150px}
.ici-slider{flex:1;height:6px;-webkit-appearance:none;background:var(--off2,#e2e8f0);border-radius:3px;outline:none}
.ici-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:var(--accent,#0B5FD8);border-radius:50%;cursor:pointer}
.ici-calc-val{font-size:14px;font-weight:700;color:var(--accent,#0B5FD8);min-width:50px;text-align:right}
.ici-calc-results{background:var(--white,#fff);border-radius:10px;padding:16px}
.ici-calc-row{display:flex;gap:16px;justify-content:center}
.ici-calc-stat{text-align:center;flex:1}
.ici-calc-stat-val{font-size:22px;font-weight:700;color:var(--accent,#0B5FD8)}
.ici-calc-stat-label{font-size:12px;color:var(--sub,#64748b);margin-top:2px}
.ici-tier-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.ici-tier-card{background:var(--off,#f8fafc);border:1px solid var(--off2,#e2e8f0);border-radius:10px;padding:16px;text-align:center}
.ici-tier-name{font-size:16px;font-weight:700;margin-bottom:6px}
.ici-tier-refs{font-size:12px;color:var(--sub,#64748b);margin-bottom:4px}
.ici-tier-comm{font-size:15px;font-weight:600;color:var(--navy,#0f172a);margin-bottom:4px}
.ici-tier-annual{font-size:12px;color:#059669;font-weight:600}
.ici-perf-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.ici-perf-stat{text-align:center;padding:14px;background:var(--off,#f8fafc);border-radius:8px}
.ici-perf-val{font-size:20px;font-weight:700;color:var(--accent,#0B5FD8)}
.ici-perf-label{font-size:11px;color:var(--sub,#64748b);margin-top:2px}
.ici-opp-card{border:1px solid var(--off2,#e2e8f0);border-radius:10px;padding:16px;margin-bottom:10px}
.ici-opp-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.ici-opp-priority{font-size:10px;font-weight:700;padding:3px 8px;border-radius:12px;text-transform:uppercase}
.ici-opp-high{background:#fee2e2;color:#EF4444}
.ici-opp-medium{background:#fef3c7;color:#D97706}
.ici-opp-title{font-size:15px;font-weight:600;color:var(--navy,#0f172a);flex:1}
.ici-opp-impact{font-size:14px;font-weight:700;color:#059669}
.ici-opp-desc{font-size:13px;color:var(--sub,#64748b);line-height:1.5;margin-bottom:10px}
.ici-opp-steps{padding-left:4px}
.ici-opp-step{font-size:12px;color:var(--navy,#0f172a);padding:3px 0;line-height:1.4}
.ici-ai-section{margin-top:16px}
.ici-btn{background:var(--off,#f8fafc);border:1.5px solid var(--off2,#e2e8f0);border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;color:var(--navy,#0f172a);cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.13s}
.ici-btn-primary{background:var(--accent,#0B5FD8);color:#fff;border-color:var(--accent,#0B5FD8)}
.ici-btn-primary:hover{background:#0950b8;color:#fff}
.ici-ai-loading{text-align:center;padding:20px}
.ici-spinner{width:24px;height:24px;border:3px solid var(--off2,#e2e8f0);border-top-color:var(--accent,#0B5FD8);border-radius:50%;animation:iciSpin 0.8s linear infinite;margin:0 auto 8px}
@keyframes iciSpin{to{transform:rotate(360deg)}}
.ici-ai-text{font-size:14px;line-height:1.7;color:var(--navy,#0f172a)}
.ici-empty{padding:20px;text-align:center;color:var(--sub,#64748b)}
[data-theme="dark"] .ici-modal{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .ici-header{border-color:var(--off2,#334155)}
[data-theme="dark"] .ici-tabs{border-color:var(--off2,#334155)}
[data-theme="dark"] .ici-card{background:var(--bg,#0f172a);border-color:var(--off2,#334155)}
[data-theme="dark"] .ici-card-featured{background:var(--bg,#0f172a)}
[data-theme="dark"] .ici-mstat{background:var(--card-bg,#1e293b);border-color:var(--off2,#334155)}
[data-theme="dark"] .ici-comp-header{background:var(--bg,#0f172a)}
[data-theme="dark"] .ici-comp-highlight{background:#052e16;border-color:#166534}
[data-theme="dark"] .ici-obj-item{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .ici-opp-card{border-color:var(--off2,#334155)}
[data-theme="dark"] .ici-tier-card{background:var(--card-bg,#1e293b);border-color:var(--off2,#334155)}
[data-theme="dark"] .ici-perf-stat{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .ici-calc-results{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .ici-terr-primary{background:var(--card-bg,#1e293b)}
[data-theme="dark"] .ici-terr-metric{background:var(--card-bg,#1e293b);border-color:var(--off2,#334155)}
[data-theme="dark"] .ici-btn{background:var(--bg,#0f172a);border-color:var(--off2,#334155);color:var(--white,#f1f5f9)}
@media(max-width:600px){
  .ici-modal{width:96%;max-height:92vh}
  .ici-body{padding:14px 18px 20px}
  .ici-market-grid{grid-template-columns:1fr}
  .ici-season-grid{grid-template-columns:repeat(3,1fr)}
  .ici-tier-grid{grid-template-columns:1fr 1fr}
  .ici-perf-grid{grid-template-columns:1fr 1fr}
  .ici-comp-header,.ici-comp-row{grid-template-columns:2fr 1fr 1fr 1fr}
  .ici-comp-header span:last-child,.ici-comp-row span:last-child{display:none}
  .ici-terr-metrics{grid-template-columns:1fr 1fr}
  .ici-calc-input{flex-wrap:wrap}
  .ici-calc-label{min-width:100%}
}

/* ── Challenge Social Feed & Community Hub (M4P1C3) ────────── */
.chs-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.55);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}
.chs-modal{background:#fff;border-radius:16px;width:100%;max-width:720px;max-height:88vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 80px rgba(0,0,0,.18)}
.chs-header{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 28px 0;gap:16px}
.chs-title{font-size:20px;font-weight:700;color:#0B1A2B}
.chs-subtitle{font-size:13px;color:#64748B;margin-top:2px}
.chs-close{background:none;border:none;font-size:26px;cursor:pointer;color:#94A3B8;padding:0 4px;line-height:1}
.chs-close:hover{color:#0B1A2B}
.chs-tabs{display:flex;gap:4px;padding:16px 28px 0;border-bottom:1px solid #E2E8F0}
.chs-tab{background:none;border:none;padding:8px 16px;font-size:13px;font-weight:500;color:#64748B;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s}
.chs-tab:hover{color:#0B1A2B}
.chs-tab-active{color:#3B82F6;border-bottom-color:#3B82F6}
.chs-body{overflow-y:auto;padding:20px 28px 28px;flex:1}
.chs-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}
.chs-filter-btn{background:#F1F5F9;border:1px solid #E2E8F0;border-radius:100px;padding:5px 14px;font-size:12px;font-weight:500;color:#64748B;cursor:pointer;transition:all .15s}
.chs-filter-btn:hover{background:#E2E8F0;color:#0B1A2B}
.chs-filter-active{background:#3B82F6;color:#fff;border-color:#3B82F6}
.chs-filter-active:hover{background:#2563EB;color:#fff}
.chs-feed-list{display:flex;flex-direction:column;gap:12px}
.chs-feed-item{display:flex;gap:12px;padding:14px;background:#F8FAFC;border-radius:12px;border:1px solid #E2E8F0;transition:transform .15s}
.chs-feed-item:hover{transform:translateY(-1px)}
.chs-feed-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;flex-shrink:0}
.chs-feed-content{flex:1;min-width:0}
.chs-feed-main{font-size:14px;color:#1E293B;line-height:1.5}
.chs-feed-name{font-weight:600}
.chs-feed-msg{color:#475569}
.chs-feed-meta{display:flex;align-items:center;gap:8px;margin-top:6px;flex-wrap:wrap}
.chs-feed-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:100px;white-space:nowrap}
.chs-feed-time{font-size:11px;color:#94A3B8}
.chs-feed-reactions{display:flex;gap:4px;margin-top:8px}
.chs-reaction-btn{background:#F1F5F9;border:1px solid #E2E8F0;border-radius:100px;padding:3px 10px;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:3px;transition:all .15s}
.chs-reaction-btn:hover{background:#E2E8F0;border-color:#CBD5E1}
.chs-reaction-active{background:#EFF6FF;border-color:#3B82F6}
.chs-reaction-count{font-size:11px;font-weight:600;color:#64748B}
.chs-feed-tip{background:linear-gradient(135deg,#EEF2FF,#F0F9FF);border-color:#C7D2FE}
.chs-feed-tip-icon{font-size:24px;flex-shrink:0;line-height:1}
.chs-feed-tip-content{flex:1}
.chs-feed-tip-title{font-size:15px;font-weight:700;color:#1E293B;margin-bottom:4px}
.chs-feed-tip-body{font-size:13px;color:#475569;line-height:1.6}
.chs-empty{text-align:center;padding:40px 20px;color:#94A3B8;font-size:14px}
.chs-community{}
.chs-comm-hero{text-align:center;padding:24px;background:linear-gradient(135deg,#EFF6FF,#F0FDFA);border-radius:16px;margin-bottom:20px}
.chs-comm-hero-num{font-size:48px;font-weight:800;color:#3B82F6}
.chs-comm-hero-label{font-size:14px;color:#64748B;margin-top:4px}
.chs-comm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}
.chs-stat-card{text-align:center;padding:16px 12px;background:#F8FAFC;border-radius:12px;border:1px solid #E2E8F0}
.chs-stat-value{font-size:24px;font-weight:700}
.chs-stat-label{font-size:11px;color:#64748B;margin-top:2px}
.chs-comm-section{margin-bottom:24px}
.chs-comm-section-title{font-size:15px;font-weight:700;color:#0B1A2B;margin-bottom:12px}
.chs-tier-bars{display:flex;flex-direction:column;gap:10px}
.chs-tier-row{display:flex;align-items:center;gap:12px}
.chs-tier-label{width:90px;font-size:13px;font-weight:500;color:#475569;text-align:right}
.chs-tier-bar-track{flex:1;height:24px;background:#F1F5F9;border-radius:12px;overflow:hidden}
.chs-tier-bar-fill{height:100%;border-radius:12px;transition:width .6s ease}
.chs-tier-pct{width:70px;font-size:12px;color:#64748B;font-weight:600}
.chs-leaderboard{display:flex;flex-direction:column;gap:8px}
.chs-lb-row{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#F8FAFC;border-radius:12px;border:1px solid #E2E8F0}
.chs-lb-rank{font-size:16px;font-weight:800;width:30px;text-align:center}
.chs-lb-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px;flex-shrink:0}
.chs-lb-info{flex:1;min-width:0}
.chs-lb-name{font-size:14px;font-weight:600;color:#1E293B}
.chs-lb-meta{font-size:11px;color:#94A3B8}
.chs-lb-tier{font-size:11px;font-weight:600;padding:3px 10px;border-radius:100px;white-space:nowrap}
.chs-dow-chart{display:flex;align-items:flex-end;gap:8px;height:120px;padding:12px 0}
.chs-dow-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;gap:6px}
.chs-dow-bar{width:100%;border-radius:6px 6px 0 0;min-height:8px;transition:height .4s ease}
.chs-dow-label{font-size:11px;color:#64748B;font-weight:500}
.chs-dow-insight{font-size:12px;color:#64748B;margin-top:8px;padding:10px;background:#F8FAFC;border-radius:8px;line-height:1.5}
.chs-timeline{}
.chs-tl-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
.chs-tl-stat{text-align:center;padding:14px 8px;background:#F8FAFC;border-radius:12px;border:1px solid #E2E8F0}
.chs-tl-stat-num{font-size:28px;font-weight:800;color:#3B82F6}
.chs-tl-stat-label{font-size:11px;color:#64748B;margin-top:2px}
.chs-tl-ring-wrap{display:flex;justify-content:center;margin-bottom:24px}
.chs-tl-ring{width:140px;height:140px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.chs-tl-ring-inner{width:110px;height:110px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}
.chs-tl-ring-num{font-size:32px;font-weight:800;color:#3B82F6}
.chs-tl-ring-label{font-size:11px;color:#64748B}
.chs-tl-events{margin-bottom:20px}
.chs-tl-events-title{font-size:15px;font-weight:700;color:#0B1A2B;margin-bottom:14px}
.chs-tl-event{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-left:2px solid #E2E8F0;margin-left:8px;padding-left:20px;position:relative}
.chs-tl-event-dot{width:12px;height:12px;border-radius:50%;position:absolute;left:-7px;top:13px}
.chs-tl-event-content{}
.chs-tl-event-label{font-size:14px;font-weight:600;color:#1E293B}
.chs-tl-event-day{font-size:11px;color:#94A3B8;margin-top:2px}
.chs-tl-next{text-align:center;padding:20px;background:linear-gradient(135deg,#FFF7ED,#FFFBEB);border-radius:12px;border:1px solid #FDE68A}
.chs-tl-next-title{font-size:11px;font-weight:600;color:#D97706;text-transform:uppercase;letter-spacing:.5px}
.chs-tl-next-name{font-size:18px;font-weight:700;color:#92400E;margin-top:4px}
.chs-tl-next-days{font-size:14px;color:#B45309;margin-top:4px}
.chs-tips{}
.chs-tips-featured{padding:24px;background:linear-gradient(135deg,#EEF2FF,#FDF2F8);border-radius:16px;margin-bottom:20px;border:1px solid #C7D2FE}
.chs-tips-featured-badge{font-size:11px;font-weight:600;color:#6366F1;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}
.chs-tips-featured-title{font-size:18px;font-weight:700;color:#1E293B;margin-bottom:8px}
.chs-tips-featured-body{font-size:14px;color:#475569;line-height:1.7}
.chs-tips-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.chs-tip-card{padding:14px;background:#F8FAFC;border-radius:12px;border:1px solid #E2E8F0;cursor:pointer;transition:all .15s}
.chs-tip-card:hover{border-color:#3B82F6;transform:translateY(-1px)}
.chs-tip-expanded{background:#EFF6FF;border-color:#93C5FD}
.chs-tip-read{opacity:.7}
.chs-tip-read:hover{opacity:1}
.chs-tip-num{font-size:11px;font-weight:600;color:#94A3B8;margin-bottom:4px}
.chs-tip-title{font-size:14px;font-weight:600;color:#1E293B;margin-bottom:4px}
.chs-tip-preview{font-size:12px;color:#64748B;line-height:1.5}
.chs-insight-card{padding:14px;background:#F0F9FF;border-radius:10px;border:1px solid #BAE6FD;margin-bottom:10px}
.chs-insight-title{font-size:14px;font-weight:600;color:#0369A1;margin-bottom:4px}
.chs-insight-body{font-size:13px;color:#475569;line-height:1.6}
.chs-loading{text-align:center;padding:20px;color:#64748B;font-size:13px}
.ch-social-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;border-radius:8px;border:1px solid #C7D2FE;background:#EEF2FF;color:#4F46E5;cursor:pointer;transition:all .15s}
.ch-social-btn:hover{background:#E0E7FF;border-color:#A5B4FC}
[data-theme="dark"] .chs-modal{background:#1E293B}
[data-theme="dark"] .chs-title{color:#F1F5F9}
[data-theme="dark"] .chs-subtitle{color:#94A3B8}
[data-theme="dark"] .chs-close{color:#64748B}
[data-theme="dark"] .chs-close:hover{color:#F1F5F9}
[data-theme="dark"] .chs-tabs{border-bottom-color:#334155}
[data-theme="dark"] .chs-tab{color:#94A3B8}
[data-theme="dark"] .chs-tab:hover{color:#F1F5F9}
[data-theme="dark"] .chs-tab-active{color:#60A5FA;border-bottom-color:#60A5FA}
[data-theme="dark"] .chs-body{background:#1E293B}
[data-theme="dark"] .chs-filter-btn{background:#334155;border-color:#475569;color:#94A3B8}
[data-theme="dark"] .chs-filter-btn:hover{background:#475569;color:#F1F5F9}
[data-theme="dark"] .chs-filter-active{background:#3B82F6;color:#fff;border-color:#3B82F6}
[data-theme="dark"] .chs-feed-item{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chs-feed-main{color:#F1F5F9}
[data-theme="dark"] .chs-feed-name{color:#F1F5F9}
[data-theme="dark"] .chs-feed-msg{color:#94A3B8}
[data-theme="dark"] .chs-feed-tip{background:linear-gradient(135deg,#1E1B4B,#0C4A6E);border-color:#4338CA}
[data-theme="dark"] .chs-feed-tip-title{color:#F1F5F9}
[data-theme="dark"] .chs-feed-tip-body{color:#CBD5E1}
[data-theme="dark"] .chs-reaction-btn{background:#334155;border-color:#475569}
[data-theme="dark"] .chs-reaction-btn:hover{background:#475569}
[data-theme="dark"] .chs-reaction-active{background:#1E3A5F;border-color:#3B82F6}
[data-theme="dark"] .chs-comm-hero{background:linear-gradient(135deg,#1E3A5F,#134E4A)}
[data-theme="dark"] .chs-stat-card{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chs-stat-label{color:#94A3B8}
[data-theme="dark"] .chs-comm-section-title{color:#F1F5F9}
[data-theme="dark"] .chs-tier-label{color:#CBD5E1}
[data-theme="dark"] .chs-tier-bar-track{background:#334155}
[data-theme="dark"] .chs-lb-row{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chs-lb-name{color:#F1F5F9}
[data-theme="dark"] .chs-dow-label{color:#94A3B8}
[data-theme="dark"] .chs-dow-insight{background:#0F172A;color:#94A3B8}
[data-theme="dark"] .chs-tl-stat{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chs-tl-ring-inner{background:#1E293B}
[data-theme="dark"] .chs-tl-events-title{color:#F1F5F9}
[data-theme="dark"] .chs-tl-event{border-left-color:#334155}
[data-theme="dark"] .chs-tl-event-label{color:#F1F5F9}
[data-theme="dark"] .chs-tl-next{background:linear-gradient(135deg,#451A03,#422006);border-color:#92400E}
[data-theme="dark"] .chs-tl-next-title{color:#FCD34D}
[data-theme="dark"] .chs-tl-next-name{color:#FDE68A}
[data-theme="dark"] .chs-tl-next-days{color:#FBBF24}
[data-theme="dark"] .chs-tips-featured{background:linear-gradient(135deg,#1E1B4B,#2E1065);border-color:#4338CA}
[data-theme="dark"] .chs-tips-featured-badge{color:#A78BFA}
[data-theme="dark"] .chs-tips-featured-title{color:#F1F5F9}
[data-theme="dark"] .chs-tips-featured-body{color:#CBD5E1}
[data-theme="dark"] .chs-tip-card{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chs-tip-card:hover{border-color:#60A5FA}
[data-theme="dark"] .chs-tip-expanded{background:#1E3A5F;border-color:#3B82F6}
[data-theme="dark"] .chs-tip-title{color:#F1F5F9}
[data-theme="dark"] .chs-tip-preview{color:#94A3B8}
[data-theme="dark"] .chs-insight-card{background:#0C4A6E;border-color:#0369A1}
[data-theme="dark"] .chs-insight-title{color:#7DD3FC}
[data-theme="dark"] .chs-insight-body{color:#CBD5E1}
[data-theme="dark"] .ch-social-btn{background:#312E81;border-color:#4338CA;color:#A78BFA}
[data-theme="dark"] .ch-social-btn:hover{background:#3730A3}
@media(max-width:600px){
  .chs-modal{width:96%;max-height:92vh}
  .chs-body{padding:14px 18px 20px}
  .chs-comm-grid{grid-template-columns:repeat(2,1fr)}
  .chs-tl-summary{grid-template-columns:repeat(2,1fr)}
  .chs-tips-grid{grid-template-columns:1fr}
  .chs-tier-label{width:70px;font-size:11px}
  .chs-tabs{overflow-x:auto;flex-wrap:nowrap;padding:12px 16px 0}
  .chs-tab{white-space:nowrap;font-size:12px;padding:6px 12px}
}

/* ── Challenge Partner Duels (M4P2C3) ────────────────── */
.chd-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.55);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}
.chd-modal{background:#fff;border-radius:16px;width:100%;max-width:760px;max-height:88vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 80px rgba(0,0,0,.18)}
.chd-header{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 28px 0;gap:16px}
.chd-title{font-size:20px;font-weight:700;color:#0B1A2B}
.chd-subtitle{font-size:13px;color:#64748B;margin-top:2px}
.chd-close{background:none;border:none;font-size:26px;cursor:pointer;color:#94A3B8;padding:0 4px;line-height:1}
.chd-close:hover{color:#0B1A2B}
.chd-tabs{display:flex;gap:4px;padding:16px 28px 0;border-bottom:1px solid #E2E8F0;overflow-x:auto}
.chd-tab{background:none;border:none;padding:8px 14px;font-size:13px;font-weight:500;color:#64748B;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s;white-space:nowrap}
.chd-tab:hover{color:#0B1A2B}
.chd-tab-active{color:#EF4444;border-bottom-color:#EF4444}
.chd-body{overflow-y:auto;padding:20px 28px 28px;flex:1}
.chd-step-title{font-size:15px;font-weight:700;color:#0B1A2B;margin-bottom:12px}
.chd-duel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.chd-duel-card{padding:14px;background:#F8FAFC;border-radius:12px;border:2px solid #E2E8F0;cursor:pointer;transition:all .15s;text-align:center}
.chd-duel-card:hover{border-color:#CBD5E1;transform:translateY(-1px)}
.chd-duel-selected{border-color:#3B82F6;background:#EFF6FF}
.chd-duel-icon{font-size:28px;margin-bottom:6px}
.chd-duel-name{font-size:14px;font-weight:600;color:#1E293B}
.chd-duel-desc{font-size:11px;color:#64748B;line-height:1.4;margin-top:4px}
.chd-duel-duration{font-size:11px;font-weight:600;color:#94A3B8;margin-top:6px}
.chd-opp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.chd-opp-card{display:flex;align-items:center;gap:12px;padding:12px;background:#F8FAFC;border-radius:12px;border:2px solid #E2E8F0;cursor:pointer;transition:all .15s}
.chd-opp-card:hover{border-color:#CBD5E1}
.chd-opp-selected{border-color:#3B82F6;background:#EFF6FF}
.chd-opp-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;flex-shrink:0}
.chd-opp-info{flex:1;min-width:0}
.chd-opp-name{font-size:14px;font-weight:600;color:#1E293B}
.chd-opp-role{font-size:11px;color:#64748B}
.chd-opp-record{font-size:11px;color:#94A3B8;font-weight:500}
.chd-opp-skill{font-size:10px;font-weight:600;padding:3px 8px;border-radius:100px;text-transform:uppercase;letter-spacing:.5px}
.chd-stakes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.chd-stake-card{padding:14px;background:#F8FAFC;border-radius:12px;border:2px solid #E2E8F0;cursor:pointer;transition:all .15s;text-align:center}
.chd-stake-card:hover{border-color:#CBD5E1}
.chd-stake-selected{border-color:#F59E0B;background:#FFFBEB}
.chd-stake-icon{font-size:24px;margin-bottom:4px}
.chd-stake-name{font-size:14px;font-weight:600;color:#1E293B}
.chd-stake-desc{font-size:11px;color:#64748B;margin-top:4px;line-height:1.4}
.chd-stake-xp{font-size:12px;font-weight:700;color:#10B981;margin-top:6px}
.chd-hint{text-align:center;padding:20px;color:#94A3B8;font-size:13px;font-style:italic}
.chd-launch{text-align:center;margin-top:24px;padding:20px;background:linear-gradient(135deg,#FEF3C7,#FDE68A);border-radius:16px}
.chd-launch-summary{font-size:14px;color:#92400E;margin-bottom:12px}
.chd-launch-type{font-weight:700}
.chd-launch-opp{font-weight:700}
.chd-launch-stake{font-weight:600;font-style:italic}
.chd-launch-btn{padding:12px 32px;background:#EF4444;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;transition:all .15s}
.chd-launch-btn:hover{background:#DC2626;transform:scale(1.03)}
.chd-active-list{display:flex;flex-direction:column;gap:16px}
.chd-duel-active{padding:20px;background:#F8FAFC;border-radius:16px;border:1px solid #E2E8F0}
.chd-duel-active-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.chd-duel-type-badge{font-size:12px;font-weight:600;padding:4px 12px;border-radius:100px}
.chd-duel-days-left{font-size:13px;font-weight:600;color:#EF4444}
.chd-vs-display{display:flex;align-items:center;justify-content:center;gap:24px;margin-bottom:16px}
.chd-vs-player{text-align:center;flex:1;padding:16px;border-radius:12px;transition:all .15s}
.chd-vs-leading{background:#F0FDF4;border:1px solid #BBF7D0}
.chd-vs-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:18px;margin:0 auto 8px}
.chd-vs-score{font-size:36px;font-weight:800;color:#1E293B}
.chd-vs-label{font-size:12px;color:#64748B;margin-top:2px}
.chd-vs-divider{text-align:center;padding:0 8px}
.chd-vs-text{font-size:18px;font-weight:800;color:#94A3B8;letter-spacing:2px}
.chd-progress-track{height:8px;background:#E2E8F0;border-radius:4px;overflow:hidden;margin-bottom:8px}
.chd-progress-fill{height:100%;border-radius:4px;transition:width .4s ease}
.chd-duel-meta{display:flex;justify-content:space-between;font-size:12px;color:#64748B}
.chd-empty{text-align:center;padding:40px 20px}
.chd-empty-icon{font-size:48px;margin-bottom:12px}
.chd-empty-title{font-size:18px;font-weight:700;color:#1E293B;margin-bottom:4px}
.chd-empty-msg{font-size:13px;color:#64748B;margin-bottom:16px}
.chd-empty-btn{padding:10px 24px;background:#EF4444;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}
.chd-empty-btn:hover{background:#DC2626}
.chd-history{}
.chd-history-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
.chd-hs{text-align:center;padding:14px;background:#F8FAFC;border-radius:12px;border:1px solid #E2E8F0}
.chd-hs-num{font-size:28px;font-weight:800}
.chd-hs-label{font-size:11px;color:#64748B;margin-top:2px}
.chd-history-list{display:flex;flex-direction:column;gap:8px}
.chd-history-row{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#F8FAFC;border-radius:10px;border:1px solid #E2E8F0}
.chd-history-status{font-size:13px;font-weight:700;width:60px}
.chd-history-info{flex:1;min-width:0}
.chd-history-type{font-size:13px;font-weight:500;color:#1E293B}
.chd-history-score{font-size:12px;color:#64748B}
.chd-history-date{font-size:12px;color:#94A3B8}
.chd-rankings{}
.chd-rank-header{display:grid;grid-template-columns:40px 1fr 80px 80px 60px;gap:8px;padding:8px 12px;font-size:11px;font-weight:600;color:#94A3B8;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #E2E8F0}
.chd-rank-row{display:grid;grid-template-columns:40px 1fr 80px 80px 60px;gap:8px;padding:12px;align-items:center;border-bottom:1px solid #F1F5F9;font-size:13px}
.chd-rank-user{background:#EFF6FF;border-radius:8px;border:1px solid #93C5FD}
.chd-rank-pos{font-weight:700;color:#1E293B}
.chd-rank-name{display:flex;align-items:center;gap:8px;font-weight:500;color:#1E293B}
.chd-rank-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:12px;flex-shrink:0}
.chd-rank-elo{font-weight:700;color:#3B82F6}
.chd-rank-record{color:#64748B}
.chd-rank-wr{font-weight:600;color:#1E293B}
.chd-elo-explain{margin-top:16px;padding:14px;background:#F0F9FF;border-radius:10px;border:1px solid #BAE6FD}
.chd-elo-title{font-size:13px;font-weight:600;color:#0369A1;margin-bottom:4px}
.chd-elo-body{font-size:12px;color:#475569;line-height:1.5}
.chd-stats{}
.chd-stats-ring-wrap{display:flex;justify-content:center;margin-bottom:20px}
.chd-stats-ring{width:140px;height:140px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.chd-stats-ring-inner{width:110px;height:110px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}
.chd-stats-ring-num{font-size:32px;font-weight:800;color:#1E293B}
.chd-stats-ring-label{font-size:11px;color:#64748B}
.chd-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}
.chd-stats-card{text-align:center;padding:14px;background:#F8FAFC;border-radius:12px;border:1px solid #E2E8F0}
.chd-stats-val{font-size:24px;font-weight:700}
.chd-stats-lbl{font-size:11px;color:#64748B;margin-top:2px}
.chd-stats-section-title{font-size:15px;font-weight:700;color:#0B1A2B;margin-bottom:12px;margin-top:20px}
.chd-type-perf{display:flex;flex-direction:column;gap:10px}
.chd-type-row{display:flex;align-items:center;gap:12px}
.chd-type-name{width:130px;font-size:13px;font-weight:500;text-align:right}
.chd-type-bar-track{flex:1;height:20px;background:#F1F5F9;border-radius:10px;overflow:hidden}
.chd-type-bar-fill{height:100%;border-radius:10px;transition:width .5s ease}
.chd-type-stat{width:90px;font-size:12px;color:#64748B;font-weight:500}
.chd-faced-list{display:flex;flex-direction:column;gap:8px}
.chd-faced-row{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#F8FAFC;border-radius:10px;border:1px solid #E2E8F0}
.chd-faced-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:13px;flex-shrink:0}
.chd-faced-name{font-size:14px;font-weight:600;color:#1E293B}
.chd-faced-record{font-size:11px;color:#94A3B8}
.ch-duels-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;border-radius:8px;border:1px solid #FECACA;background:#FEF2F2;color:#DC2626;cursor:pointer;transition:all .15s}
.ch-duels-btn:hover{background:#FEE2E2;border-color:#FCA5A5}
[data-theme="dark"] .chd-modal{background:#1E293B}
[data-theme="dark"] .chd-title{color:#F1F5F9}
[data-theme="dark"] .chd-subtitle{color:#94A3B8}
[data-theme="dark"] .chd-close{color:#64748B}
[data-theme="dark"] .chd-close:hover{color:#F1F5F9}
[data-theme="dark"] .chd-tabs{border-bottom-color:#334155}
[data-theme="dark"] .chd-tab{color:#94A3B8}
[data-theme="dark"] .chd-tab:hover{color:#F1F5F9}
[data-theme="dark"] .chd-tab-active{color:#F87171;border-bottom-color:#F87171}
[data-theme="dark"] .chd-body{background:#1E293B}
[data-theme="dark"] .chd-step-title{color:#F1F5F9}
[data-theme="dark"] .chd-duel-card{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chd-duel-card:hover{border-color:#475569}
[data-theme="dark"] .chd-duel-selected{border-color:#3B82F6;background:#1E3A5F}
[data-theme="dark"] .chd-duel-name{color:#F1F5F9}
[data-theme="dark"] .chd-duel-desc{color:#94A3B8}
[data-theme="dark"] .chd-opp-card{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chd-opp-selected{border-color:#3B82F6;background:#1E3A5F}
[data-theme="dark"] .chd-opp-name{color:#F1F5F9}
[data-theme="dark"] .chd-stake-card{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chd-stake-selected{border-color:#F59E0B;background:#451A03}
[data-theme="dark"] .chd-stake-name{color:#F1F5F9}
[data-theme="dark"] .chd-launch{background:linear-gradient(135deg,#451A03,#422006)}
[data-theme="dark"] .chd-launch-summary{color:#FDE68A}
[data-theme="dark"] .chd-duel-active{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chd-vs-leading{background:#052E16;border-color:#166534}
[data-theme="dark"] .chd-vs-score{color:#F1F5F9}
[data-theme="dark"] .chd-progress-track{background:#334155}
[data-theme="dark"] .chd-duel-meta{color:#94A3B8}
[data-theme="dark"] .chd-empty-title{color:#F1F5F9}
[data-theme="dark"] .chd-hs{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chd-history-row{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chd-history-type{color:#F1F5F9}
[data-theme="dark"] .chd-rank-header{border-bottom-color:#334155}
[data-theme="dark"] .chd-rank-row{border-bottom-color:#1E293B}
[data-theme="dark"] .chd-rank-user{background:#1E3A5F;border-color:#3B82F6}
[data-theme="dark"] .chd-rank-pos{color:#F1F5F9}
[data-theme="dark"] .chd-rank-name{color:#F1F5F9}
[data-theme="dark"] .chd-rank-wr{color:#F1F5F9}
[data-theme="dark"] .chd-elo-explain{background:#0C4A6E;border-color:#0369A1}
[data-theme="dark"] .chd-elo-title{color:#7DD3FC}
[data-theme="dark"] .chd-elo-body{color:#CBD5E1}
[data-theme="dark"] .chd-stats-ring-inner{background:#1E293B}
[data-theme="dark"] .chd-stats-ring-num{color:#F1F5F9}
[data-theme="dark"] .chd-stats-card{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chd-stats-section-title{color:#F1F5F9}
[data-theme="dark"] .chd-type-bar-track{background:#334155}
[data-theme="dark"] .chd-type-name{color:#CBD5E1}
[data-theme="dark"] .chd-faced-row{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chd-faced-name{color:#F1F5F9}
[data-theme="dark"] .ch-duels-btn{background:#450A0A;border-color:#991B1B;color:#FCA5A5}
[data-theme="dark"] .ch-duels-btn:hover{background:#7F1D1D}
@media(max-width:600px){
  .chd-modal{width:96%;max-height:92vh}
  .chd-body{padding:14px 18px 20px}
  .chd-duel-grid{grid-template-columns:repeat(2,1fr)}
  .chd-opp-grid{grid-template-columns:1fr}
  .chd-stakes-grid{grid-template-columns:1fr}
  .chd-history-summary{grid-template-columns:repeat(2,1fr)}
  .chd-vs-display{gap:12px}
  .chd-vs-score{font-size:24px}
  .chd-rank-header,.chd-rank-row{grid-template-columns:30px 1fr 60px 60px}
  .chd-rank-h-wr,.chd-rank-wr{display:none}
  .chd-stats-grid{grid-template-columns:repeat(2,1fr)}
  .chd-type-name{width:100px;font-size:11px}
  .chd-tabs{flex-wrap:nowrap;overflow-x:auto;padding:12px 16px 0}
  .chd-tab{white-space:nowrap;font-size:12px;padding:6px 10px}
}

/* ── Streak Rewards Marketplace (M4P3C3) ────────────────── */
.chr-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.55);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}
.chr-modal{background:#fff;border-radius:16px;width:100%;max-width:760px;max-height:88vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 80px rgba(0,0,0,.18)}
.chr-header{display:flex;align-items:flex-start;padding:22px 28px 0;gap:16px}
.chr-title{font-size:20px;font-weight:700;color:#0B1A2B}
.chr-subtitle{font-size:13px;color:#64748B;margin-top:2px}
.chr-coins-display{display:flex;align-items:center;gap:6px;margin-left:auto;padding:8px 16px;background:linear-gradient(135deg,#FEF3C7,#FDE68A);border-radius:100px;border:1px solid #F59E0B}
.chr-coin-icon{font-size:18px;color:#D97706}
.chr-coin-amount{font-size:18px;font-weight:800;color:#92400E}
.chr-close{background:none;border:none;font-size:26px;cursor:pointer;color:#94A3B8;padding:0 4px;line-height:1;margin-left:8px}
.chr-close:hover{color:#0B1A2B}
.chr-tabs{display:flex;gap:4px;padding:16px 28px 0;border-bottom:1px solid #E2E8F0}
.chr-tab{background:none;border:none;padding:8px 14px;font-size:13px;font-weight:500;color:#64748B;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s}
.chr-tab:hover{color:#0B1A2B}
.chr-tab-active{color:#D97706;border-bottom-color:#D97706}
.chr-body{overflow-y:auto;padding:20px 28px 28px;flex:1}
.chr-cat-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.chr-cat-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;background:#F8FAFC;border:1px solid #E2E8F0;border-radius:100px;font-size:13px;font-weight:500;color:#64748B;cursor:pointer;transition:all .15s}
.chr-cat-btn:hover{background:#E2E8F0;color:#0B1A2B}
.chr-cat-active{background:#FEF3C7;border-color:#F59E0B;color:#92400E}
.chr-cat-count{font-size:11px;font-weight:600;opacity:.6}
.chr-cat-desc{font-size:13px;color:#64748B;margin-bottom:16px;font-style:italic}
.chr-items-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.chr-item-card{padding:16px;background:#F8FAFC;border-radius:14px;border:1px solid #E2E8F0;display:flex;flex-direction:column;transition:all .15s}
.chr-item-card:hover{border-color:#F59E0B;transform:translateY(-2px);box-shadow:0 8px 24px rgba(245,158,11,.1)}
.chr-item-maxed{opacity:.6}
.chr-item-icon{font-size:32px;margin-bottom:6px}
.chr-item-name{font-size:15px;font-weight:700;color:#1E293B;margin-bottom:4px}
.chr-item-desc{font-size:12px;color:#64748B;line-height:1.5;flex:1}
.chr-item-effect{font-size:11px;color:#0369A1;background:#F0F9FF;padding:4px 8px;border-radius:6px;margin-top:8px;display:inline-block}
.chr-item-footer{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:10px;border-top:1px solid #E2E8F0}
.chr-item-price{font-size:14px;font-weight:700;color:#92400E}
.chr-coin-sm{color:#D97706;font-size:12px}
.chr-buy-btn{padding:6px 16px;background:#F59E0B;color:#fff;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}
.chr-buy-btn:hover{background:#D97706}
.chr-buy-disabled{background:#E2E8F0;color:#94A3B8;cursor:not-allowed}
.chr-buy-disabled:hover{background:#E2E8F0}
.chr-item-owned{font-size:12px;font-weight:600;color:#10B981}
.chr-empty{text-align:center;padding:40px 20px}
.chr-empty-icon{font-size:48px;margin-bottom:12px}
.chr-empty-title{font-size:18px;font-weight:700;color:#1E293B;margin-bottom:4px}
.chr-empty-msg{font-size:13px;color:#64748B;margin-bottom:16px}
.chr-empty-btn{padding:10px 24px;background:#F59E0B;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}
.chr-empty-btn:hover{background:#D97706}
.chr-inv-count{font-size:13px;color:#64748B;margin-bottom:14px}
.chr-inv-grid{display:flex;flex-direction:column;gap:10px}
.chr-inv-card{display:flex;align-items:center;gap:14px;padding:14px;background:#FFFBEB;border-radius:12px;border:1px solid #FDE68A}
.chr-inv-icon{font-size:28px;flex-shrink:0}
.chr-inv-info{flex:1}
.chr-inv-name{font-size:14px;font-weight:600;color:#1E293B}
.chr-inv-effect{font-size:11px;color:#64748B}
.chr-use-btn{padding:6px 14px;background:#3B82F6;color:#fff;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer}
.chr-use-btn:hover{background:#2563EB}
.chr-inv-status{font-size:12px;font-weight:600;color:#10B981}
.chr-use-notification{padding:14px;background:#F0FDF4;border:1px solid #BBF7D0;border-radius:10px;margin-bottom:12px;display:flex;align-items:center;gap:10px;animation:chrFadeIn .3s ease}
.chr-use-icon{font-size:24px}
.chr-use-text{font-size:13px;color:#166534}
@keyframes chrFadeIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.chr-earn-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.chr-earn-stat{text-align:center;padding:16px;background:#F8FAFC;border-radius:12px;border:1px solid #E2E8F0}
.chr-earn-num{font-size:28px;font-weight:800}
.chr-earn-lbl{font-size:11px;color:#64748B;margin-top:2px}
.chr-earn-section-title{font-size:15px;font-weight:700;color:#0B1A2B;margin-bottom:10px}
.chr-earn-list{display:flex;flex-direction:column;gap:6px}
.chr-earn-row{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#F8FAFC;border-radius:8px;border:1px solid #F1F5F9}
.chr-earn-row-label{flex:1;font-size:13px;color:#1E293B}
.chr-earn-row-coins{font-size:13px;font-weight:700;color:#10B981}
.chr-earn-spent{color:#EF4444}
.chr-earn-row-date{font-size:11px;color:#94A3B8}
.chr-earn-empty{text-align:center;padding:20px;color:#94A3B8;font-size:13px}
.chr-how-intro{font-size:14px;color:#475569;line-height:1.6;margin-bottom:16px;padding:14px;background:#F0F9FF;border-radius:10px;border:1px solid #BAE6FD}
.chr-how-grid{display:flex;flex-direction:column;gap:8px}
.chr-how-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#F8FAFC;border-radius:10px;border:1px solid #E2E8F0;transition:all .15s}
.chr-how-card:hover{border-color:#F59E0B;background:#FFFBEB}
.chr-how-icon{font-size:22px;width:40px;text-align:center;flex-shrink:0}
.chr-how-info{flex:1}
.chr-how-label{font-size:13px;font-weight:500;color:#1E293B}
.chr-how-rarity{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.chr-how-coins{font-size:14px;font-weight:700;color:#92400E;white-space:nowrap}
.chr-how-tips{margin-top:20px;padding:16px;background:#FFF7ED;border-radius:12px;border:1px solid #FED7AA}
.chr-how-tips-title{font-size:14px;font-weight:700;color:#C2410C;margin-bottom:10px}
.chr-how-tip{font-size:12px;color:#9A3412;line-height:1.5;padding:6px 0;border-bottom:1px solid #FDBA7420}
.chr-how-tip:last-child{border-bottom:none}
.chr-projection{margin-top:20px;text-align:center;padding:20px;background:linear-gradient(135deg,#FEF3C7,#FDE68A);border-radius:16px}
.chr-proj-title{font-size:12px;font-weight:600;color:#92400E;text-transform:uppercase;letter-spacing:.5px}
.chr-proj-num{font-size:36px;font-weight:800;color:#78350F;margin:8px 0 4px}
.chr-proj-note{font-size:12px;color:#92400E}
.ch-rewards-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;border-radius:8px;border:1px solid #FDE68A;background:#FFFBEB;color:#92400E;cursor:pointer;transition:all .15s}
.ch-rewards-btn:hover{background:#FEF3C7;border-color:#F59E0B}
[data-theme="dark"] .chr-modal{background:#1E293B}
[data-theme="dark"] .chr-title{color:#F1F5F9}
[data-theme="dark"] .chr-subtitle{color:#94A3B8}
[data-theme="dark"] .chr-coins-display{background:linear-gradient(135deg,#451A03,#78350F);border-color:#92400E}
[data-theme="dark"] .chr-coin-amount{color:#FDE68A}
[data-theme="dark"] .chr-close{color:#64748B}
[data-theme="dark"] .chr-close:hover{color:#F1F5F9}
[data-theme="dark"] .chr-tabs{border-bottom-color:#334155}
[data-theme="dark"] .chr-tab{color:#94A3B8}
[data-theme="dark"] .chr-tab:hover{color:#F1F5F9}
[data-theme="dark"] .chr-tab-active{color:#FBBF24;border-bottom-color:#FBBF24}
[data-theme="dark"] .chr-body{background:#1E293B}
[data-theme="dark"] .chr-cat-btn{background:#334155;border-color:#475569;color:#94A3B8}
[data-theme="dark"] .chr-cat-active{background:#451A03;border-color:#92400E;color:#FDE68A}
[data-theme="dark"] .chr-item-card{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chr-item-card:hover{border-color:#D97706}
[data-theme="dark"] .chr-item-name{color:#F1F5F9}
[data-theme="dark"] .chr-item-desc{color:#94A3B8}
[data-theme="dark"] .chr-item-effect{background:#0C4A6E;color:#7DD3FC}
[data-theme="dark"] .chr-item-footer{border-top-color:#334155}
[data-theme="dark"] .chr-item-price{color:#FDE68A}
[data-theme="dark"] .chr-buy-disabled{background:#334155;color:#64748B}
[data-theme="dark"] .chr-inv-card{background:#451A03;border-color:#92400E}
[data-theme="dark"] .chr-inv-name{color:#F1F5F9}
[data-theme="dark"] .chr-earn-stat{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chr-earn-section-title{color:#F1F5F9}
[data-theme="dark"] .chr-earn-row{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chr-earn-row-label{color:#F1F5F9}
[data-theme="dark"] .chr-how-intro{background:#0C4A6E;border-color:#0369A1;color:#CBD5E1}
[data-theme="dark"] .chr-how-card{background:#0F172A;border-color:#334155}
[data-theme="dark"] .chr-how-card:hover{background:#451A03;border-color:#92400E}
[data-theme="dark"] .chr-how-label{color:#F1F5F9}
[data-theme="dark"] .chr-how-coins{color:#FDE68A}
[data-theme="dark"] .chr-how-tips{background:#451A03;border-color:#92400E}
[data-theme="dark"] .chr-how-tips-title{color:#FBBF24}
[data-theme="dark"] .chr-how-tip{color:#FDE68A;border-bottom-color:#78350F20}
[data-theme="dark"] .chr-projection{background:linear-gradient(135deg,#451A03,#78350F)}
[data-theme="dark"] .chr-proj-title{color:#FBBF24}
[data-theme="dark"] .chr-proj-num{color:#FDE68A}
[data-theme="dark"] .chr-proj-note{color:#FBBF24}
[data-theme="dark"] .chr-empty-title{color:#F1F5F9}
[data-theme="dark"] .chr-use-notification{background:#052E16;border-color:#166534}
[data-theme="dark"] .chr-use-text{color:#BBF7D0}
[data-theme="dark"] .ch-rewards-btn{background:#451A03;border-color:#92400E;color:#FDE68A}
[data-theme="dark"] .ch-rewards-btn:hover{background:#78350F}
@media(max-width:600px){
  .chr-modal{width:96%;max-height:92vh}
  .chr-body{padding:14px 18px 20px}
  .chr-items-grid{grid-template-columns:1fr}
  .chr-earn-summary{grid-template-columns:1fr 1fr 1fr}
  .chr-header{flex-wrap:wrap}
  .chr-coins-display{margin-left:0}
  .chr-tabs{overflow-x:auto;flex-wrap:nowrap;padding:12px 16px 0}
  .chr-tab{white-space:nowrap;font-size:12px;padding:6px 10px}
}

/* ── Financial Forecast Dashboard (M5P1C3) ──────────── */
.bpf-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:bpfFadeIn 0.2s}
@keyframes bpfFadeIn{from{opacity:0}to{opacity:1}}
.bpf-modal{background:var(--white,#fff);border-radius:16px;width:100%;max-width:860px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 48px rgba(0,0,0,0.15)}
.bpf-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0;gap:16px}
.bpf-title{font-size:20px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpf-subtitle{font-size:13px;color:var(--slate,#64748b);margin-top:2px}
.bpf-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--slate,#64748b);padding:4px 8px;border-radius:8px;transition:background 0.15s}
.bpf-close:hover{background:rgba(0,0,0,0.05)}
.bpf-tabs{display:flex;gap:4px;padding:16px 24px 0;flex-wrap:wrap}
.bpf-tab{background:none;border:none;padding:8px 14px;font-size:13px;font-weight:500;color:var(--slate,#64748b);cursor:pointer;border-radius:8px;transition:all 0.15s;font-family:inherit}
.bpf-tab:hover{background:rgba(59,130,246,0.06);color:var(--navy,#1a2b4a)}
.bpf-tab-active{background:rgba(59,130,246,0.1);color:#3B82F6;font-weight:600}
.bpf-body{padding:20px 24px 24px;overflow-y:auto;flex:1}
.bpf-hero-stat{text-align:center;padding:24px;background:linear-gradient(135deg,rgba(59,130,246,0.06),rgba(139,92,246,0.06));border-radius:12px;margin-bottom:20px}
.bpf-hero-label{font-size:13px;color:var(--slate,#64748b);font-weight:500;margin-bottom:4px}
.bpf-hero-num{font-size:36px;font-weight:800;color:#3B82F6;letter-spacing:-1px}
.bpf-hero-sub{font-size:13px;color:var(--slate,#64748b);margin-top:6px}
.bpf-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.bpf-kpi{background:var(--off,#f8fafc);border-radius:10px;padding:14px;text-align:center}
.bpf-kpi-val{font-size:18px;font-weight:700;margin-bottom:2px}
.bpf-kpi-label{font-size:11px;color:var(--slate,#64748b)}
.bpf-chart-section{margin-bottom:24px}
.bpf-chart-title{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a);margin-bottom:12px}
.bpf-bar-chart{display:flex;align-items:flex-end;gap:6px;height:160px;padding:0 4px}
.bpf-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}
.bpf-bar-val{font-size:10px;color:var(--slate,#64748b);white-space:nowrap}
.bpf-bar{border-radius:4px 4px 0 0;width:100%;min-height:4px;transition:height 0.5s}
.bpf-bar-label{font-size:10px;color:var(--slate,#64748b);font-weight:500}
.bpf-insight{background:rgba(59,130,246,0.04);border:1px solid rgba(59,130,246,0.12);border-radius:10px;padding:14px 16px}
.bpf-insight-title{font-size:13px;font-weight:600;color:#3B82F6;margin-bottom:4px}
.bpf-insight-body{font-size:13px;line-height:1.6;color:var(--slate,#64748b)}
.bpf-table-wrap{overflow-x:auto;margin-bottom:16px}
.bpf-table{width:100%;border-collapse:collapse;font-size:13px}
.bpf-table th{text-align:left;padding:10px 12px;background:var(--off,#f8fafc);color:var(--navy,#1a2b4a);font-weight:600;border-bottom:2px solid var(--off2,#e2e8f0);white-space:nowrap}
.bpf-table td{padding:10px 12px;border-bottom:1px solid var(--off2,#e2e8f0)}
.bpf-season-badge{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500;display:inline-block}
.bpf-totals{background:var(--off,#f8fafc);border-radius:10px;padding:16px}
.bpf-total-row{display:flex;justify-content:space-between;padding:6px 0;font-size:13px;color:var(--slate,#64748b)}
.bpf-total-val{font-weight:600;color:var(--navy,#1a2b4a)}
.bpf-total-profit{border-top:2px solid var(--off2,#e2e8f0);margin-top:4px;padding-top:10px;font-size:14px;font-weight:600}
.bpf-total-profit .bpf-total-val{color:#10B981;font-size:16px}
.bpf-area-chart{display:flex;align-items:flex-end;gap:6px;height:180px;padding:0 4px}
.bpf-area-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}
.bpf-area-bars{position:relative;width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-end}
.bpf-area-rev{background:#3B82F630;border-radius:3px 3px 0 0;width:100%}
.bpf-area-cost{background:#EF444430;border-radius:3px 3px 0 0;width:100%;position:absolute;bottom:0}
.bpf-area-label{font-size:10px;color:var(--slate,#64748b)}
.bpf-chart-legend{display:flex;gap:16px;justify-content:center;margin-top:8px}
.bpf-legend-item{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--slate,#64748b)}
.bpf-legend-dot{width:10px;height:10px;border-radius:3px;display:inline-block}
.bpf-ref-chart{display:flex;align-items:flex-end;gap:6px;height:140px;padding:0 4px}
.bpf-ref-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}
.bpf-ref-val{font-size:10px;color:var(--slate,#64748b)}
.bpf-ref-bar{background:#8B5CF630;border-radius:3px 3px 0 0;width:100%;min-height:4px}
.bpf-ref-label{font-size:10px;color:var(--slate,#64748b)}
.bpf-margin-chart{display:flex;align-items:flex-end;gap:6px;height:140px;padding:0 4px}
.bpf-margin-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}
.bpf-margin-val{font-size:10px;font-weight:600}
.bpf-margin-bar{border-radius:3px 3px 0 0;width:100%;min-height:4px}
.bpf-margin-label{font-size:10px;color:var(--slate,#64748b)}
.bpf-scenario-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:20px}
.bpf-scenario-card{background:var(--off,#f8fafc);border-radius:12px;padding:16px}
.bpf-scenario-name{font-size:13px;font-weight:600;margin-bottom:6px}
.bpf-scenario-revenue{font-size:24px;font-weight:800;color:var(--navy,#1a2b4a);margin-bottom:10px}
.bpf-scenario-details{display:flex;flex-direction:column;gap:4px}
.bpf-sc-row{display:flex;justify-content:space-between;font-size:12px;color:var(--slate,#64748b)}
.bpf-sc-row span:last-child{font-weight:600;color:var(--navy,#1a2b4a)}
.bpf-compare-bars{display:flex;flex-direction:column;gap:10px}
.bpf-compare-row{display:flex;align-items:center;gap:12px}
.bpf-compare-label{width:120px;font-size:12px;font-weight:600;text-align:right;flex-shrink:0}
.bpf-compare-track{flex:1;height:24px;background:var(--off,#f8fafc);border-radius:6px;overflow:hidden}
.bpf-compare-fill{height:100%;border-radius:6px;transition:width 0.5s}
.bpf-compare-val{width:100px;font-size:12px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpf-ai{display:flex;flex-direction:column;gap:16px}
.bpf-ai-prompt{text-align:center;margin-bottom:8px}
.bpf-ai-btn{background:#3B82F6;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.bpf-ai-btn:hover{background:#2563EB;transform:translateY(-1px)}
.bpf-ai-note{font-size:12px;color:var(--slate,#64748b);margin-top:6px}
.bpf-ai-card{display:flex;gap:12px;padding:14px;background:var(--off,#f8fafc);border-radius:10px;margin-bottom:10px}
.bpf-ai-card-icon{font-size:20px;flex-shrink:0}
.bpf-ai-card-title{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a);margin-bottom:4px}
.bpf-ai-card-body{font-size:13px;line-height:1.6;color:var(--slate,#64748b)}
.bpf-ai-card-impact{font-size:12px;font-weight:600;color:#10B981;margin-top:6px}
.bpf-loading{text-align:center;padding:40px;color:var(--slate,#64748b);font-size:14px}
[data-theme="dark"] .bpf-modal{background:var(--navy,#1a2b4a);color:#e2e8f0}
[data-theme="dark"] .bpf-title{color:#e2e8f0}
[data-theme="dark"] .bpf-kpi,[data-theme="dark"] .bpf-totals,[data-theme="dark"] .bpf-scenario-card,[data-theme="dark"] .bpf-ai-card{background:rgba(255,255,255,0.05)}
[data-theme="dark"] .bpf-table th{background:rgba(255,255,255,0.05);color:#e2e8f0}
[data-theme="dark"] .bpf-table td{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .bpf-total-val,[data-theme="dark"] .bpf-scenario-revenue,[data-theme="dark"] .bpf-sc-row span:last-child,[data-theme="dark"] .bpf-ai-card-title,[data-theme="dark"] .bpf-compare-val{color:#e2e8f0}
[data-theme="dark"] .bpf-compare-track{background:rgba(255,255,255,0.05)}
[data-theme="dark"] .bpf-insight{background:rgba(59,130,246,0.08);border-color:rgba(59,130,246,0.2)}
@media(max-width:600px){
  .bpf-modal{max-height:95vh;border-radius:12px}
  .bpf-kpi-grid{grid-template-columns:repeat(2,1fr)}
  .bpf-scenario-grid{grid-template-columns:1fr}
  .bpf-bar-chart,.bpf-area-chart,.bpf-ref-chart,.bpf-margin-chart{height:120px}
  .bpf-hero-num{font-size:28px}
  .bpf-tabs{overflow-x:auto;flex-wrap:nowrap;padding:12px 16px 0}
  .bpf-tab{white-space:nowrap;font-size:12px;padding:6px 10px}
  .bpf-compare-label{width:80px;font-size:11px}
  .bpf-compare-val{width:80px;font-size:11px}
}

/* ── Goal Tracker (M5P2C3) ───────────────────────────── */
.bpg-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:bpfFadeIn 0.2s}
.bpg-modal{background:var(--white,#fff);border-radius:16px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 48px rgba(0,0,0,0.15)}
.bpg-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0;gap:16px}
.bpg-title{font-size:20px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpg-subtitle{font-size:13px;color:var(--slate,#64748b);margin-top:2px}
.bpg-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--slate,#64748b);padding:4px 8px;border-radius:8px;transition:background 0.15s}
.bpg-close:hover{background:rgba(0,0,0,0.05)}
.bpg-tabs{display:flex;gap:4px;padding:16px 24px 0;flex-wrap:wrap}
.bpg-tab{position:relative;background:none;border:none;padding:8px 14px;font-size:13px;font-weight:500;color:var(--slate,#64748b);cursor:pointer;border-radius:8px;transition:all 0.15s;font-family:inherit}
.bpg-tab:hover{background:rgba(59,130,246,0.06);color:var(--navy,#1a2b4a)}
.bpg-tab-active{background:rgba(59,130,246,0.1);color:#3B82F6;font-weight:600}
.bpg-tab-badge{position:absolute;top:2px;right:2px;background:#EF4444;color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}
.bpg-body{padding:20px 24px 24px;overflow-y:auto;flex:1}
.bpg-empty{text-align:center;padding:48px 24px}
.bpg-empty-icon{font-size:48px;margin-bottom:16px}
.bpg-empty-title{font-size:18px;font-weight:700;color:var(--navy,#1a2b4a);margin-bottom:8px}
.bpg-empty-desc{font-size:14px;color:var(--slate,#64748b);margin-bottom:20px;max-width:400px;margin-left:auto;margin-right:auto}
.bpg-empty-btn{background:#3B82F6;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.bpg-empty-btn:hover{background:#2563EB}
.bpg-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
.bpg-summary-card{background:var(--off,#f8fafc);border-radius:10px;padding:14px;text-align:center}
.bpg-summary-val{font-size:24px;font-weight:800}
.bpg-summary-label{font-size:11px;color:var(--slate,#64748b);margin-top:2px}
.bpg-goal-list{display:flex;flex-direction:column;gap:14px}
.bpg-goal-card{background:var(--off,#f8fafc);border-radius:12px;padding:16px;transition:box-shadow 0.15s}
.bpg-goal-card:hover{box-shadow:0 2px 8px rgba(0,0,0,0.06)}
.bpg-goal-complete{background:linear-gradient(135deg,rgba(16,185,129,0.04),rgba(16,185,129,0.08))}
.bpg-goal-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.bpg-goal-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.bpg-goal-info{flex:1;min-width:0}
.bpg-goal-name{font-size:15px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpg-goal-target{font-size:13px;color:var(--slate,#64748b)}
.bpg-goal-pct{font-size:22px;font-weight:800}
.bpg-progress-track{position:relative;height:8px;background:rgba(0,0,0,0.06);border-radius:4px;overflow:visible;margin-bottom:12px}
.bpg-progress-fill{height:100%;border-radius:4px;transition:width 0.5s}
.bpg-milestone-marker{position:absolute;top:-3px;width:3px;height:14px;background:rgba(0,0,0,0.15);border-radius:2px;transform:translateX(-50%)}
.bpg-mm-hit{background:rgba(16,185,129,0.6)}
.bpg-goal-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px}
.bpg-meta-item{color:var(--slate,#64748b);padding:2px 8px;background:rgba(0,0,0,0.04);border-radius:6px}
.bpg-meta-urgent{color:#EF4444;background:rgba(239,68,68,0.08)}
.bpg-pace-ahead{color:#10B981;background:rgba(16,185,129,0.08)}
.bpg-pace-ontrack{color:#3B82F6;background:rgba(59,130,246,0.08)}
.bpg-pace-behind{color:#F59E0B;background:rgba(245,158,11,0.08)}
.bpg-pace-atrisk{color:#EF4444;background:rgba(239,68,68,0.08)}
.bpg-goal-actions{margin-left:auto;display:flex;gap:6px}
.bpg-log-btn,.bpg-edit-btn{background:none;border:1px solid var(--off2,#e2e8f0);padding:4px 10px;font-size:12px;border-radius:6px;cursor:pointer;color:var(--navy,#1a2b4a);font-family:inherit;transition:all 0.15s}
.bpg-log-btn:hover{background:#3B82F6;color:#fff;border-color:#3B82F6}
.bpg-edit-btn:hover{background:var(--off2,#e2e8f0)}
.bpg-set-header{margin-bottom:16px}
.bpg-set-title{font-size:16px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpg-set-desc{font-size:13px;color:var(--slate,#64748b);margin-top:4px}
.bpg-cat-filters{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}
.bpg-cat-btn{background:var(--off,#f8fafc);border:1px solid var(--off2,#e2e8f0);padding:6px 14px;font-size:12px;border-radius:20px;cursor:pointer;color:var(--slate,#64748b);font-family:inherit;transition:all 0.15s}
.bpg-cat-btn:hover{border-color:#3B82F6;color:#3B82F6}
.bpg-cat-active{background:rgba(59,130,246,0.1);border-color:#3B82F6;color:#3B82F6;font-weight:600}
.bpg-template-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.bpg-template-card{background:var(--off,#f8fafc);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:8px}
.bpg-tmpl-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px}
.bpg-tmpl-name{font-size:15px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpg-tmpl-desc{font-size:12px;color:var(--slate,#64748b);line-height:1.5}
.bpg-tmpl-suggestions{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.bpg-suggest-btn{background:rgba(59,130,246,0.08);border:1px solid rgba(59,130,246,0.15);color:#3B82F6;padding:4px 10px;font-size:12px;border-radius:6px;cursor:pointer;font-family:inherit;font-weight:500;transition:all 0.15s}
.bpg-suggest-btn:hover{background:#3B82F6;color:#fff}
.bpg-tmpl-custom{background:none;border:1px dashed var(--off2,#e2e8f0);padding:6px 12px;font-size:12px;border-radius:6px;cursor:pointer;color:var(--slate,#64748b);font-family:inherit;margin-top:4px;transition:all 0.15s}
.bpg-tmpl-custom:hover{border-color:#3B82F6;color:#3B82F6}
.bpg-tmpl-existing{font-size:11px;color:var(--slate,#64748b);font-style:italic;margin-top:4px}
.bpg-custom-form,.bpg-log-form{max-width:500px;margin:0 auto}
.bpg-back-btn{background:none;border:none;color:var(--slate,#64748b);font-size:13px;cursor:pointer;font-family:inherit;margin-bottom:16px;padding:0}
.bpg-back-btn:hover{color:#3B82F6}
.bpg-form-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.bpg-form-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px}
.bpg-form-title{font-size:18px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpg-form-fields{display:flex;flex-direction:column;gap:14px}
.bpg-field{display:flex;flex-direction:column;gap:4px}
.bpg-field-label{font-size:13px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpg-input{padding:10px 14px;border:1.5px solid var(--off2,#e2e8f0);border-radius:8px;font-size:14px;font-family:inherit;color:var(--navy,#1a2b4a);background:var(--white,#fff);transition:border-color 0.15s}
.bpg-input:focus{outline:none;border-color:#3B82F6}
.bpg-submit-btn{background:#3B82F6;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit;margin-top:16px;width:100%}
.bpg-submit-btn:hover{background:#2563EB}
.bpg-delete-btn{background:none;border:1px solid #EF4444;color:#EF4444;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit;margin-top:16px;flex:1}
.bpg-delete-btn:hover{background:#EF4444;color:#fff}
.bpg-log-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.bpg-log-goal-name{font-size:16px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpg-log-goal-progress{font-size:13px;color:var(--slate,#64748b)}
.bpg-recent-logs{margin-top:24px;border-top:1px solid var(--off2,#e2e8f0);padding-top:16px}
.bpg-recent-title{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a);margin-bottom:10px}
.bpg-log-entry{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--off2,#e2e8f0);font-size:13px}
.bpg-log-date{color:var(--slate,#64748b);min-width:90px}
.bpg-log-val{font-weight:600;color:var(--navy,#1a2b4a);min-width:60px}
.bpg-log-note{color:var(--slate,#64748b);font-style:italic}
.bpg-achieve-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.bpg-achieve-title{font-size:16px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpg-achieve-count{font-size:13px;color:var(--slate,#64748b)}
.bpg-badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
.bpg-badge-card{text-align:center;padding:16px 12px;background:var(--off,#f8fafc);border-radius:12px}
.bpg-badge-circle{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;margin:0 auto 8px}
.bpg-badge-name{font-size:13px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpg-badge-goal{font-size:11px;color:var(--slate,#64748b);margin-top:2px}
.bpg-badge-date{font-size:10px;color:var(--slate,#64748b);margin-top:4px}
.bpg-upcoming-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--off2,#e2e8f0);font-size:13px}
.bpg-upcoming-badge{font-weight:600;min-width:130px}
.bpg-upcoming-goal{color:var(--slate,#64748b);flex:1}
.bpg-upcoming-need{color:var(--navy,#1a2b4a);font-weight:500;white-space:nowrap}
.bpg-alert-card{display:flex;gap:12px;padding:14px;border-radius:10px;margin-bottom:8px;background:var(--off,#f8fafc);transition:all 0.15s}
.bpg-alert-unread{background:rgba(59,130,246,0.04);border-left:3px solid #3B82F6}
.bpg-alert-icon{font-size:20px;flex-shrink:0}
.bpg-alert-content{flex:1;min-width:0}
.bpg-alert-title{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpg-alert-body{font-size:13px;color:var(--slate,#64748b);line-height:1.5;margin-top:2px}
.bpg-alert-time{font-size:11px;color:var(--slate,#64748b);margin-top:4px}
.bpg-alert-priority{font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;text-transform:uppercase;flex-shrink:0;align-self:flex-start}
.bpg-priority-high{background:rgba(239,68,68,0.08);color:#EF4444}
.bpg-priority-medium{background:rgba(245,158,11,0.08);color:#F59E0B}
.bpg-priority-low{background:rgba(59,130,246,0.08);color:#3B82F6}
.bpg-clear-btn{background:none;border:1px solid var(--off2,#e2e8f0);padding:6px 14px;font-size:12px;border-radius:6px;cursor:pointer;color:var(--slate,#64748b);font-family:inherit;transition:all 0.15s}
.bpg-clear-btn:hover{background:var(--off2,#e2e8f0)}
.bpg-coach-prompt{text-align:center;margin-bottom:20px}
.bpg-coach-btn{background:#8B5CF6;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.bpg-coach-btn:hover{background:#7C3AED;transform:translateY(-1px)}
.bpg-coach-note{font-size:12px;color:var(--slate,#64748b);margin-top:6px}
.bpg-coach-card{background:var(--off,#f8fafc);border-radius:10px;padding:16px;margin-bottom:10px}
.bpg-coach-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.bpg-coach-card-title{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpg-coach-priority{font-size:11px;font-weight:600;padding:3px 10px;border-radius:10px}
.bpg-coach-card-body{font-size:13px;line-height:1.6;color:var(--slate,#64748b)}
.bpg-coach-timeframe{font-size:12px;font-weight:500;color:#8B5CF6;margin-top:8px}
.bpg-tips-section{margin-top:24px}
.bpg-tips-title{font-size:16px;font-weight:700;color:var(--navy,#1a2b4a);margin-bottom:16px}
.bpg-tip-category{margin-bottom:20px}
.bpg-tip-cat-name{font-size:13px;font-weight:600;color:#8B5CF6;margin-bottom:8px;text-transform:uppercase;letter-spacing:0.5px}
.bpg-tip-card{background:var(--off,#f8fafc);border-radius:10px;padding:14px;margin-bottom:8px}
.bpg-tip-title{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a);margin-bottom:4px}
.bpg-tip-body{font-size:13px;line-height:1.6;color:var(--slate,#64748b)}
.bpg-hist-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.bpg-hist-stat{background:var(--off,#f8fafc);border-radius:10px;padding:14px;text-align:center}
.bpg-hist-stat-val{font-size:22px;font-weight:800;color:var(--navy,#1a2b4a)}
.bpg-hist-stat-label{font-size:11px;color:var(--slate,#64748b);margin-top:2px}
.bpg-heatmap-section{margin-bottom:24px}
.bpg-heatmap-title{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a);margin-bottom:10px}
.bpg-heatmap{display:flex;gap:3px;flex-wrap:wrap}
.bpg-heat-cell{width:18px;height:18px;border-radius:3px}
.bpg-heat-0{background:var(--off2,#e2e8f0)}
.bpg-heat-1{background:rgba(59,130,246,0.3)}
.bpg-heat-2{background:rgba(59,130,246,0.6)}
.bpg-heat-3{background:#3B82F6}
.bpg-heat-legend{display:flex;align-items:center;gap:4px;margin-top:6px;font-size:11px;color:var(--slate,#64748b)}
.bpg-timeline-section{margin-top:24px}
.bpg-timeline-entry{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--off2,#e2e8f0)}
.bpg-tl-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:5px}
.bpg-tl-content{flex:1}
.bpg-tl-header{display:flex;justify-content:space-between;align-items:center}
.bpg-tl-goal{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpg-tl-delta{font-size:14px;font-weight:700}
.bpg-tl-details{font-size:12px;color:var(--slate,#64748b);margin-top:2px}
[data-theme="dark"] .bpg-modal{background:var(--navy,#1a2b4a);color:#e2e8f0}
[data-theme="dark"] .bpg-title,[data-theme="dark"] .bpg-goal-name,[data-theme="dark"] .bpg-set-title,[data-theme="dark"] .bpg-form-title,[data-theme="dark"] .bpg-achieve-title,[data-theme="dark"] .bpg-alert-title,[data-theme="dark"] .bpg-coach-card-title,[data-theme="dark"] .bpg-tip-title,[data-theme="dark"] .bpg-tl-goal,[data-theme="dark"] .bpg-tmpl-name,[data-theme="dark"] .bpg-badge-name,[data-theme="dark"] .bpg-field-label,[data-theme="dark"] .bpg-log-goal-name,[data-theme="dark"] .bpg-tips-title,[data-theme="dark"] .bpg-heatmap-title,[data-theme="dark"] .bpg-hist-stat-val{color:#e2e8f0}
[data-theme="dark"] .bpg-summary-card,[data-theme="dark"] .bpg-goal-card,[data-theme="dark"] .bpg-template-card,[data-theme="dark"] .bpg-badge-card,[data-theme="dark"] .bpg-alert-card,[data-theme="dark"] .bpg-coach-card,[data-theme="dark"] .bpg-tip-card,[data-theme="dark"] .bpg-hist-stat{background:rgba(255,255,255,0.05)}
[data-theme="dark"] .bpg-input{background:rgba(255,255,255,0.05);border-color:rgba(255,255,255,0.1);color:#e2e8f0}
[data-theme="dark"] .bpg-progress-track{background:rgba(255,255,255,0.1)}
[data-theme="dark"] .bpg-heat-0{background:rgba(255,255,255,0.08)}
[data-theme="dark"] .bpg-alert-unread{background:rgba(59,130,246,0.08)}
@media(max-width:600px){
  .bpg-modal{max-height:95vh;border-radius:12px}
  .bpg-summary-grid{grid-template-columns:repeat(2,1fr)}
  .bpg-template-grid{grid-template-columns:1fr}
  .bpg-hist-stats{grid-template-columns:1fr}
  .bpg-tabs{overflow-x:auto;flex-wrap:nowrap;padding:12px 16px 0}
  .bpg-tab{white-space:nowrap;font-size:12px;padding:6px 10px}
  .bpg-goal-actions{margin-left:0;margin-top:6px;width:100%}
  .bpg-goal-meta{flex-direction:column;align-items:flex-start}
  .bpg-badge-grid{grid-template-columns:repeat(2,1fr)}
}

/* ── Quarterly Review (M5P3C3) ───────────────────────── */
.bpr-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:bpfFadeIn 0.2s}
.bpr-modal{background:var(--white,#fff);border-radius:16px;width:100%;max-width:920px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 48px rgba(0,0,0,0.15)}
.bpr-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0;gap:16px}
.bpr-title{font-size:20px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpr-subtitle{font-size:13px;color:var(--slate,#64748b);margin-top:2px}
.bpr-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--slate,#64748b);padding:4px 8px;border-radius:8px;transition:background 0.15s}
.bpr-close:hover{background:rgba(0,0,0,0.05)}
.bpr-tabs{display:flex;gap:4px;padding:16px 24px 0;flex-wrap:wrap}
.bpr-tab{background:none;border:none;padding:8px 14px;font-size:13px;font-weight:500;color:var(--slate,#64748b);cursor:pointer;border-radius:8px;transition:all 0.15s;font-family:inherit}
.bpr-tab:hover{background:rgba(59,130,246,0.06);color:var(--navy,#1a2b4a)}
.bpr-tab-active{background:rgba(59,130,246,0.1);color:#3B82F6;font-weight:600}
.bpr-body{padding:20px 24px 24px;overflow-y:auto;flex:1}
.bpr-grade-hero{display:flex;align-items:center;gap:24px;padding:24px;background:linear-gradient(135deg,rgba(59,130,246,0.04),rgba(139,92,246,0.04));border-radius:14px;margin-bottom:24px}
.bpr-grade-circle{width:100px;height:100px;border-radius:50%;border:4px solid;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}
.bpr-grade-letter{font-size:32px;font-weight:900;line-height:1}
.bpr-grade-score{font-size:12px;color:var(--slate,#64748b);margin-top:2px}
.bpr-grade-info{flex:1}
.bpr-grade-label{font-size:20px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpr-grade-period{font-size:14px;color:var(--slate,#64748b);margin-top:2px}
.bpr-grade-type{font-size:12px;color:var(--slate,#64748b);margin-top:4px;background:rgba(0,0,0,0.04);display:inline-block;padding:2px 10px;border-radius:10px}
.bpr-cat-scores{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.bpr-cat-row{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--off,#f8fafc);border-radius:10px}
.bpr-cat-icon{font-size:18px;flex-shrink:0}
.bpr-cat-info{min-width:120px}
.bpr-cat-name{font-size:13px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpr-cat-weight{font-size:10px;color:var(--slate,#64748b)}
.bpr-cat-bar-wrap{flex:1}
.bpr-cat-bar{height:8px;background:rgba(0,0,0,0.06);border-radius:4px;overflow:hidden}
.bpr-cat-bar-fill{height:100%;border-radius:4px;transition:width 0.5s}
.bpr-cat-score{font-size:13px;font-weight:700;min-width:60px;text-align:right}
.bpr-quarter-stats{margin-bottom:20px}
.bpr-qs-title{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a);margin-bottom:12px}
.bpr-qs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.bpr-qs-item{background:var(--off,#f8fafc);border-radius:10px;padding:14px;text-align:center}
.bpr-qs-val{font-size:20px;font-weight:800}
.bpr-qs-label{font-size:11px;color:var(--slate,#64748b);margin-top:2px}
.bpr-save-btn{background:#3B82F6;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.bpr-save-btn:hover{background:#2563EB}
.bpr-chart-section{margin-bottom:24px}
.bpr-chart-title{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a);margin-bottom:12px}
.bpr-trend-chart{display:flex;align-items:flex-end;gap:16px;height:160px;padding:0 8px}
.bpr-trend-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px}
.bpr-trend-val{font-size:12px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpr-trend-bar{border-radius:6px 6px 0 0;width:100%;min-height:8px;transition:height 0.5s}
.bpr-trend-label{font-size:12px;color:var(--slate,#64748b);font-weight:500}
.bpr-mom-section{margin-bottom:24px}
.bpr-mom-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.bpr-mom-card{text-align:center;padding:14px 10px;background:var(--off,#f8fafc);border-radius:10px}
.bpr-mom-label{font-size:11px;color:var(--slate,#64748b);margin-bottom:4px}
.bpr-mom-current{font-size:16px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpr-mom-change{font-size:13px;font-weight:600;margin-top:4px}
.bpr-past-section{margin-bottom:20px}
.bpr-past-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.bpr-past-card{text-align:center;padding:14px;background:var(--off,#f8fafc);border-radius:10px}
.bpr-past-quarter{font-size:12px;color:var(--slate,#64748b);font-weight:500}
.bpr-past-grade{font-size:28px;font-weight:900;margin:4px 0}
.bpr-past-score{font-size:12px;color:var(--slate,#64748b)}
.bpr-bench-header{margin-bottom:20px}
.bpr-bench-title{font-size:16px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpr-bench-desc{font-size:13px;color:var(--slate,#64748b);margin-top:4px}
.bpr-bench-grid{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}
.bpr-bench-card{background:var(--off,#f8fafc);border-radius:12px;padding:16px}
.bpr-bench-label{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a);margin-bottom:10px}
.bpr-bench-comparison{display:flex;flex-direction:column;gap:8px}
.bpr-bench-row{display:flex;align-items:center;gap:10px}
.bpr-bench-who{font-size:12px;font-weight:500;color:var(--slate,#64748b);min-width:30px}
.bpr-bench-bar-wrap{flex:1;height:20px;background:rgba(0,0,0,0.04);border-radius:4px;overflow:hidden}
.bpr-bench-bar{height:100%;border-radius:4px;transition:width 0.5s}
.bpr-bench-val{font-size:13px;font-weight:600;color:var(--navy,#1a2b4a);min-width:60px;text-align:right}
.bpr-bench-verdict{font-size:12px;font-weight:500;margin-top:6px}
.bpr-percentile{background:var(--off,#f8fafc);border-radius:12px;padding:20px}
.bpr-percentile-header{font-size:14px;font-weight:600;color:var(--navy,#1a2b4a);margin-bottom:12px;text-align:center}
.bpr-percentile-bar{position:relative;height:12px;background:linear-gradient(90deg,#EF4444,#F59E0B,#10B981);border-radius:6px;margin-bottom:8px}
.bpr-percentile-fill{height:100%;border-radius:6px}
.bpr-percentile-marker{position:absolute;top:-20px;transform:translateX(-50%)}
.bpr-percentile-label{font-size:11px;font-weight:700;color:var(--navy,#1a2b4a);white-space:nowrap;background:var(--white,#fff);padding:2px 8px;border-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,0.1)}
.bpr-percentile-scale{display:flex;justify-content:space-between;font-size:11px;color:var(--slate,#64748b)}
.bpr-swot-title{font-size:18px;font-weight:700;color:var(--navy,#1a2b4a);margin-bottom:4px}
.bpr-swot-desc{font-size:13px;color:var(--slate,#64748b);margin-bottom:20px}
.bpr-swot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.bpr-swot-quad{background:var(--off,#f8fafc);border-radius:12px;padding:16px}
.bpr-swot-quad-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.bpr-swot-quad-icon{font-size:18px}
.bpr-swot-quad-title{font-size:15px;font-weight:700}
.bpr-swot-list{margin:0;padding-left:18px;font-size:13px;color:var(--slate,#64748b);line-height:1.8}
.bpr-actions-header{margin-bottom:20px}
.bpr-actions-title{font-size:18px;font-weight:700;color:var(--navy,#1a2b4a)}
.bpr-actions-desc{font-size:13px;color:var(--slate,#64748b);margin-top:4px}
.bpr-action-list{display:flex;flex-direction:column;gap:12px;margin-bottom:28px}
.bpr-action-card{display:flex;gap:14px;padding:16px;background:var(--off,#f8fafc);border-radius:12px}
.bpr-action-num{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;flex-shrink:0}
.bpr-action-content{flex:1}
.bpr-action-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.bpr-action-title{font-size:15px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpr-action-priority{font-size:10px;font-weight:600;padding:3px 10px;border-radius:10px;text-transform:uppercase}
.bpr-action-body{font-size:13px;line-height:1.6;color:var(--slate,#64748b)}
.bpr-action-meta{display:flex;gap:16px;margin-top:8px;font-size:12px}
.bpr-action-timeframe{color:var(--slate,#64748b)}
.bpr-action-kpi{color:#8B5CF6;font-weight:500}
.bpr-roadmap{margin-bottom:20px}
.bpr-roadmap-title{font-size:16px;font-weight:700;color:var(--navy,#1a2b4a);margin-bottom:14px}
.bpr-roadmap-phases{display:flex;flex-direction:column;gap:14px}
.bpr-phase{padding:14px 16px;background:var(--off,#f8fafc);border-radius:10px}
.bpr-phase-name{font-size:14px;font-weight:600;margin-bottom:8px}
.bpr-phase-items{margin:0;padding-left:18px;font-size:13px;color:var(--slate,#64748b);line-height:1.8}
.bpr-ai-prompt{text-align:center;margin-bottom:20px}
.bpr-ai-btn{background:#8B5CF6;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.bpr-ai-btn:hover{background:#7C3AED;transform:translateY(-1px)}
.bpr-ai-note{font-size:12px;color:var(--slate,#64748b);margin-top:6px}
.bpr-ai-card{background:var(--off,#f8fafc);border-radius:10px;padding:16px;margin-bottom:10px}
.bpr-ai-card-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.bpr-ai-card-icon{font-size:18px}
.bpr-ai-card-title{font-size:15px;font-weight:600;color:var(--navy,#1a2b4a)}
.bpr-ai-card-body{font-size:13px;line-height:1.6;color:var(--slate,#64748b)}
.bpr-strategy-card{display:flex;gap:12px;padding:16px;background:var(--off,#f8fafc);border-radius:10px;margin-bottom:10px}
.bpr-strategy-num{font-size:20px;font-weight:900;flex-shrink:0;width:30px;text-align:center}
.bpr-strategy-content{flex:1}
.bpr-strategy-title{font-size:15px;font-weight:600;color:var(--navy,#1a2b4a);margin-bottom:6px}
.bpr-strategy-analysis{font-size:13px;color:var(--slate,#64748b);line-height:1.5;margin-bottom:6px}
.bpr-strategy-action{font-size:13px;line-height:1.6;color:var(--navy,#1a2b4a);margin-bottom:6px}
.bpr-strategy-impact{font-size:12px;font-weight:600}
[data-theme="dark"] .bpr-modal{background:var(--navy,#1a2b4a);color:#e2e8f0}
[data-theme="dark"] .bpr-title,[data-theme="dark"] .bpr-grade-label,[data-theme="dark"] .bpr-cat-name,[data-theme="dark"] .bpr-qs-title,[data-theme="dark"] .bpr-chart-title,[data-theme="dark"] .bpr-bench-title,[data-theme="dark"] .bpr-swot-title,[data-theme="dark"] .bpr-actions-title,[data-theme="dark"] .bpr-roadmap-title,[data-theme="dark"] .bpr-action-title,[data-theme="dark"] .bpr-ai-card-title,[data-theme="dark"] .bpr-strategy-title,[data-theme="dark"] .bpr-trend-val,[data-theme="dark"] .bpr-bench-val,[data-theme="dark"] .bpr-bench-label,[data-theme="dark"] .bpr-mom-current,[data-theme="dark"] .bpr-percentile-header{color:#e2e8f0}
[data-theme="dark"] .bpr-cat-row,[data-theme="dark"] .bpr-qs-item,[data-theme="dark"] .bpr-mom-card,[data-theme="dark"] .bpr-past-card,[data-theme="dark"] .bpr-bench-card,[data-theme="dark"] .bpr-swot-quad,[data-theme="dark"] .bpr-action-card,[data-theme="dark"] .bpr-phase,[data-theme="dark"] .bpr-ai-card,[data-theme="dark"] .bpr-strategy-card,[data-theme="dark"] .bpr-percentile{background:rgba(255,255,255,0.05)}
[data-theme="dark"] .bpr-cat-bar,[data-theme="dark"] .bpr-bench-bar-wrap{background:rgba(255,255,255,0.1)}
[data-theme="dark"] .bpr-strategy-action{color:#e2e8f0}
@media(max-width:600px){
  .bpr-modal{max-height:95vh;border-radius:12px}
  .bpr-grade-hero{flex-direction:column;text-align:center;gap:12px}
  .bpr-grade-circle{width:80px;height:80px}
  .bpr-grade-letter{font-size:26px}
  .bpr-qs-grid{grid-template-columns:repeat(2,1fr)}
  .bpr-mom-grid{grid-template-columns:repeat(2,1fr)}
  .bpr-past-grid{grid-template-columns:repeat(2,1fr)}
  .bpr-swot-grid{grid-template-columns:1fr}
  .bpr-tabs{overflow-x:auto;flex-wrap:nowrap;padding:12px 16px 0}
  .bpr-tab{white-space:nowrap;font-size:12px;padding:6px 10px}
  .bpr-trend-chart{height:120px;gap:8px}
}

/* ── Knowledge Base Related Questions ────────────────── */
.kb-related-btn{display:block;width:100%;text-align:left;background:var(--white);border:1.5px solid var(--off2);border-radius:8px;padding:10px 16px;font-size:14px;color:var(--navy);cursor:pointer;transition:all 0.13s;font-family:'DM Sans',sans-serif;margin-bottom:6px}
.kb-related-btn:last-child{margin-bottom:0}
.kb-related-btn:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.02)}

.price-ph{background:linear-gradient(155deg,var(--navy) 0%,var(--navy2) 60%,var(--navy3) 100%);padding:72px 0 0;position:relative;overflow:hidden;text-align:center}
.price-ph::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 50% 100%,rgba(11,95,216,0.1) 0%,transparent 60%);pointer-events:none}
.price-ph-inner{position:relative;z-index:1;padding-bottom:60px}
.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1080px;margin:0 auto;padding:0 40px;position:relative;z-index:2}
.pc{background:var(--white);border:1px solid var(--off2);border-radius:13px;padding:24px 20px 20px;display:flex;flex-direction:column;position:relative}
.pc.pop{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.12),0 8px 32px rgba(10,22,40,0.14)}
.pc-name{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy);margin-bottom:7px}
.pc-price{display:flex;align-items:baseline;gap:2px;margin-bottom:5px}
.pc-amt{font-family:'DM Serif Display',serif;font-size:38px;letter-spacing:-0.03em;color:var(--navy);line-height:1}
.pc-mo{font-size:15px;color:var(--slate)}
.pc-inc{display:inline-block;background:rgba(11,95,216,0.08);color:var(--blue);font-size:15px;font-weight:600;letter-spacing:0.06em;padding:3px 9px;border-radius:20px;margin-bottom:9px}
.pc-desc{font-size:15px;color:var(--body);line-height:1.6;margin-bottom:13px;min-height:44px}
.pc-hr{border:none;border-top:1px solid var(--off2);margin-bottom:12px}
.pc-fl{font-size:15px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--slate);margin-bottom:8px}
.pc-feats{list-style:none;flex:1;margin-bottom:16px}
.pc-feats li{display:flex;gap:7px;font-size:15px;color:var(--body);margin-bottom:7px;line-height:1.4;align-items:flex-start}
.pc-feats li::before{content:'✓';color:var(--blue);font-weight:700;font-size:15px;flex-shrink:0;margin-top:2px}
.pc-btn{margin-top:auto;background:var(--navy);color:var(--white);border:none;padding:11px;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:opacity 0.15s;width:100%}
.pc-btn:hover{opacity:0.82}
.pop-tag{position:absolute;top:14px;right:12px;background:linear-gradient(135deg,var(--navy),var(--navy3));color:var(--white);font-size:15px;font-weight:700;letter-spacing:0.1em;padding:4px 10px;border-radius:20px;text-transform:uppercase}
.price-bg{background:var(--off);padding:72px 0;border-top:1px solid var(--off2);margin-top:72px}

/* FAQ */
.faq-lay{display:grid;grid-template-columns:200px 1fr;gap:52px;align-items:start}
.faq-nav{position:sticky;top:80px}
.faq-nb{display:block;width:100%;text-align:left;padding:9px 13px;border-radius:7px;font-size:15px;font-weight:500;color:var(--body);background:none;border:none;cursor:pointer;margin-bottom:3px;transition:all 0.13s}
.faq-nb.active{background:var(--off);color:var(--blue);font-weight:600}
.faq-nb:hover{background:var(--off);color:var(--ink)}
.faq-sec{display:none}
.faq-sec.active{display:block}
.faq-item{border-bottom:1px solid var(--off2)}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 0;cursor:pointer}
.faq-q h4{font-size:15px;font-weight:600;color:var(--navy);line-height:1.4}
.faq-tog{width:24px;height:24px;flex-shrink:0;border-radius:5px;background:var(--off);color:var(--slate);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:300;transition:all 0.15s}
.faq-item.open .faq-tog{background:var(--blue);color:var(--white);transform:rotate(45deg)}
.faq-a{display:none;padding-bottom:18px}
.faq-a p{font-size:15px;color:var(--body);line-height:1.78}
.faq-item.open .faq-a{display:block}

/* APPLY */
.apply-hero{background:linear-gradient(155deg,var(--navy) 0%,var(--navy2) 100%);text-align:center;padding:72px 0 0}
.apply-hero .tc{border:none;border-radius:0;overflow:visible;display:block}
.f-sec-lbl{font-size:15px;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--blue);margin-bottom:14px}
.fg2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ff{margin-bottom:14px;position:relative}
label.fl{position:absolute;top:12px;left:14px;font-size:15px;font-weight:600;color:var(--slate);letter-spacing:0.03em;pointer-events:none;transition:all 0.2s cubic-bezier(0.22,1,0.36,1);transform-origin:left top;z-index:1}
input[type=text],input[type=email],input[type=tel],select,textarea{width:100%;padding:18px 14px 8px;border:1.5px solid var(--mist);border-radius:7px;font-family:'DM Sans',sans-serif;font-size:15px;color:var(--ink);background:var(--white);outline:none;transition:border-color 0.15s,box-shadow 0.15s;appearance:none}
/* Float label up on focus or when field has value */
.ff:focus-within label.fl,
.ff input:not(:placeholder-shown) + label.fl,
.ff input:focus ~ label.fl,
.ff select:not([value=""]) ~ label.fl,
.ff textarea:not(:placeholder-shown) + label.fl{transform:translateY(-10px) scale(0.78);color:var(--blue)}
/* Also float for select (always has content) */
.ff select ~ label.fl{transform:translateY(-10px) scale(0.78);color:var(--slate)}
.ff:focus-within select ~ label.fl{color:var(--blue)}
input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.09)}
/* Focus underline animation */
.ff::after{content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;background:linear-gradient(90deg,var(--blue),var(--cyan));border-radius:1px;transition:width 0.3s cubic-bezier(0.22,1,0.36,1),left 0.3s cubic-bezier(0.22,1,0.36,1)}
.ff:focus-within::after{width:100%;left:0}
/* Prevent underline on radio groups */
.ff-static::after{display:none}
textarea{resize:vertical;min-height:90px;line-height:1.6}
.radio-grp{display:flex;flex-direction:column;gap:9px}
.ro{display:flex;align-items:center;gap:11px;padding:11px 14px;border:1.5px solid var(--mist);border-radius:7px;cursor:pointer;transition:all 0.13s}
.ro:hover{border-color:var(--blue);background:rgba(11,95,216,0.02)}
.ro input{width:auto;cursor:pointer;margin:0}
.ro span{font-size:15px;color:var(--body)}
/* Form Progress Bar */
.form-progress{display:flex;align-items:center;gap:0;margin-bottom:32px;padding:16px 0}
.fp-step{display:flex;align-items:center;gap:8px;flex-shrink:0}
.fp-num{width:28px;height:28px;border-radius:50%;border:2px solid var(--mist);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--slate);transition:all 0.3s}
.fp-label{font-size:13px;font-weight:600;color:var(--slate);transition:color 0.3s}
.fp-line{flex:1;height:2px;background:var(--off2);margin:0 12px;border-radius:1px;position:relative;overflow:hidden}
.fp-line-fill{position:absolute;top:0;left:0;height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--cyan));border-radius:1px;transition:width 0.4s cubic-bezier(0.22,1,0.36,1)}
.fp-step.fp-active .fp-num{border-color:var(--blue);background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff}
.fp-step.fp-active .fp-label{color:var(--blue)}
.fp-step.fp-done .fp-num{border-color:var(--teal);background:var(--teal);color:#fff}
.fp-step.fp-done .fp-label{color:var(--cyan-text)}
.fp-step.fp-done ~ .fp-line .fp-line-fill{width:100%}

.f-submit{width:100%;background:linear-gradient(135deg,var(--blue),var(--blue2));color:var(--white);border:none;padding:14px;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:all 0.18s;box-shadow:0 4px 14px rgba(11,95,216,0.28)}
.f-submit:hover{transform:translateY(-2px);box-shadow:0 7px 20px rgba(11,95,216,0.38)}
/* Progressive apply form: rest of the fields reveal after a business type is picked */
.apply-rest[hidden]{display:none}
.apply-rest{animation:applyRevealIn 0.35s cubic-bezier(0.22,1,0.36,1)}
@keyframes applyRevealIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.apply-route-hint{margin:10px 2px 0;font-size:14px;line-height:1.5;color:var(--cyan-text);background:rgba(0,200,224,0.07);border:1px solid rgba(0,200,224,0.2);border-radius:8px;padding:10px 14px}
.apply-route-hint[hidden]{display:none}
.ai-card{background:var(--off);border:1px solid var(--off2);border-radius:11px;padding:22px;margin-bottom:14px}
.ai-card h5{font-family:'DM Serif Display',serif;font-size:17px;color:var(--navy);margin-bottom:8px}
.ai-card p{font-size:15px;color:var(--body);line-height:1.65}
.ac-card{background:var(--navy);border-radius:11px;padding:22px}
.ac-card h5{font-size:15px;font-weight:600;color:var(--white);margin-bottom:12px}
.cl{display:flex;gap:9px;font-size:15px;color:rgba(255,255,255,0.78);margin-bottom:9px;align-items:flex-start;line-height:1.4}
.cl a{color:var(--cyan-text);text-decoration:none}

/* FLIP CARDS */
.flip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.flip-card{perspective:800px;height:240px;cursor:pointer}
.flip-inner{position:relative;width:100%;height:100%;transition:transform 0.6s cubic-bezier(0.4,0,0.2,1);transform-style:preserve-3d}
.flip-card:hover .flip-inner,.flip-card.flipped .flip-inner{transform:rotateY(180deg)}
.flip-front,.flip-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:13px;padding:32px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.flip-front{background:var(--white);border:1px solid var(--off2)}
.flip-front-dk{background:var(--navy);border-color:transparent}
.flip-back{background:var(--white);border:1px solid var(--off2);transform:rotateY(180deg)}
.flip-back-dk{background:var(--navy);border-color:transparent}
.flip-title{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy);margin:6px 0 0}
.flip-hint{font-size:12px;color:var(--slate);margin-top:auto;letter-spacing:0.04em;opacity:0.6}
.flip-back p{font-size:15px;line-height:1.75;color:var(--body);max-width:320px}
.flip-back-dk p{color:rgba(255,255,255,0.8)}
.flip-front .vi{margin-bottom:10px}

/* CTA BAND */
.cta-band{background:linear-gradient(135deg,var(--navy),var(--navy2));padding:72px 0;text-align:center;position:relative;overflow:hidden}
.cta-band::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 50% 100%,rgba(11,95,216,0.1) 0%,transparent 60%);pointer-events:none}
.cta-inner{position:relative;z-index:1}
.cta-acts{display:flex;justify-content:center;gap:13px;flex-wrap:wrap;margin-top:32px}

/* TESTIMONIALS */
@property --border-angle{syntax:"<angle>";initial-value:0deg;inherits:false}
.testi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.testi-card{background:linear-gradient(#111c30,#111c30) padding-box,conic-gradient(from var(--border-angle),#0a1628 0%,rgba(75,163,255,0.5) 25%,rgba(0,200,224,0.6) 35%,#0a1628 50%,#0a1628 100%) border-box;border:1.5px solid transparent;border-radius:16px;padding:28px;display:flex;flex-direction:column;gap:16px;animation:rotateBorder 20s linear infinite;position:relative}
.testi-card::before{content:'';position:absolute;inset:-4px;border-radius:20px;background:conic-gradient(from var(--border-angle),transparent 0%,rgba(75,163,255,0.15) 25%,rgba(0,200,224,0.2) 35%,transparent 50%,transparent 100%);animation:rotateBorder 20s linear infinite;z-index:-1;filter:blur(12px)}
.testi-card:nth-child(2){animation-delay:-6.6s}
.testi-card:nth-child(2)::before{animation-delay:-6.6s}
.testi-card:nth-child(3){animation-delay:-13.3s}
.testi-card:nth-child(3)::before{animation-delay:-13.3s}
@keyframes rotateBorder{to{--border-angle:360deg}}
.testi-quote{font-size:15px;color:rgba(255,255,255,0.8);line-height:1.75;font-style:italic;flex:1}
.testi-quote::before{content:'\201C';color:var(--sky);font-size:28px;font-family:'DM Serif Display',serif;line-height:0;vertical-align:-10px;margin-right:3px}
.testi-attr{display:flex;gap:12px;align-items:center;padding-top:14px;border-top:1px solid rgba(255,255,255,0.08)}
.testi-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.testi-name{font-size:15px;font-weight:600;color:#fff;margin-bottom:2px}
.testi-role{font-size:15px;color:rgba(255,255,255,0.5)}
.testi-stat{display:inline-flex;align-items:center;gap:6px;background:rgba(75,163,255,0.08);border:1px solid rgba(75,163,255,0.15);border-radius:20px;padding:4px 11px;font-size:13px;font-weight:500;color:rgba(255,255,255,0.85);letter-spacing:0.03em;margin-top:10px;white-space:normal}

/* RESOURCES PAGE */
.res-hero{background:linear-gradient(155deg,var(--navy) 0%,var(--navy2) 60%,var(--navy3) 100%);padding:72px 0;position:relative;overflow:hidden}
.res-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 80% at 100% 50%,rgba(75,163,255,0.06) 0%,transparent 60%);pointer-events:none}
.res-inner{position:relative;z-index:1}
.res-cat-label{font-size:15px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--blue);margin-bottom:14px}
.res-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.res-card{background:var(--white);border:1px solid var(--off2);border-radius:13px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow 0.2s,transform 0.2s}
.res-card:hover{box-shadow:0 8px 40px rgba(10,22,40,0.11);transform:translateY(-2px)}
.res-card-top{padding:24px 24px 0}
.res-icon-wrap{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.res-icon-blue{background:rgba(11,95,216,0.1);border:1px solid rgba(11,95,216,0.18)}
.res-icon-blue svg{stroke:#4BA3FF}
.res-icon-teal{background:rgba(0,229,204,0.08);border:1px solid rgba(0,229,204,0.18)}
.res-icon-teal svg{stroke:#00E5CC}
.res-icon-navy{background:rgba(11,95,216,0.08);border:1px solid rgba(75,163,255,0.15)}
.res-icon-navy svg{stroke:#4BA3FF}
.res-icon-cyan{background:rgba(0,200,224,0.08);border:1px solid rgba(0,200,224,0.15)}
.res-card-title{font-family:'DM Serif Display',serif;font-size:17px;color:var(--navy);margin-bottom:7px;line-height:1.25}
.res-card-desc{font-size:15px;color:var(--body);line-height:1.65;padding-bottom:16px}
.res-card-meta{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:16px}
.res-tag{display:inline-flex;align-items:center;background:var(--off);border:1px solid var(--off2);border-radius:4px;padding:3px 9px;font-size:15px;font-weight:500;color:var(--slate);letter-spacing:0.03em}
.res-card-ft{margin-top:auto;padding:16px 24px;border-top:1px solid var(--off2);background:var(--off);display:flex;align-items:center;justify-content:space-between}
.res-type{font-size:15px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--slate)}
.res-dl-btn{display:inline-flex;align-items:center;gap:6px;background:var(--navy);color:var(--white);border:none;padding:8px 16px;border-radius:6px;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:opacity 0.15s;text-decoration:none}
.res-dl-btn:hover{opacity:0.82}
.res-dl-btn.outline{background:var(--white);color:var(--navy);border:1.5px solid var(--mist)}
.res-dl-btn.outline:hover{border-color:var(--blue);color:var(--blue)}
.res-section-hd{margin:56px 0 28px;padding-bottom:16px;border-bottom:1px solid var(--off2)}
.res-section-hd h3{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy)}
.res-section-hd p{font-size:15px;color:var(--body);margin-top:5px}
.res-featured{background:linear-gradient(135deg,var(--navy),var(--navy2));border-radius:13px;padding:36px;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;margin-bottom:40px}
.res-featured h3{font-family:'DM Serif Display',serif;font-size:24px;color:var(--white);margin-bottom:8px}
.res-featured p{font-size:15px;color:rgba(255,255,255,0.78);line-height:1.65;max-width:480px}
.res-featured-acts{display:flex;flex-direction:column;gap:9px;align-items:flex-end}
.res-notify{display:flex;gap:10px;max-width:440px}
.res-notify input{flex:1;padding:10px 14px;border:1.5px solid var(--mist);border-radius:7px;font-family:'DM Sans',sans-serif;font-size:15px;color:var(--ink);outline:none;transition:border-color 0.15s}
.res-notify input:focus{border-color:var(--blue)}
.res-notify button{background:var(--blue);color:var(--white);border:none;padding:10px 20px;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity 0.15s}
.res-notify button:hover{opacity:0.88}

/* LEGAL PAGES */
.legal-page{max-width:720px;margin:0 auto;padding:60px 40px 100px}
.legal-page h1{font-family:'DM Serif Display',serif;font-size:36px;color:var(--navy);margin-bottom:8px}
.legal-page .legal-date{font-size:15px;color:var(--slate);margin-bottom:40px;padding-bottom:20px;border-bottom:1px solid var(--off2)}
.legal-page h2{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy);margin:32px 0 10px}
.legal-page p{font-size:15px;color:var(--body);line-height:1.8;margin-bottom:14px}
.legal-page ul{list-style:disc;padding-left:22px;margin-bottom:14px}
.legal-page ul li{font-size:15px;color:var(--body);line-height:1.75;margin-bottom:6px}
.legal-back{display:inline-flex;align-items:center;gap:7px;font-size:15px;font-weight:600;color:var(--blue);text-decoration:none;cursor:pointer;margin-bottom:32px;transition:opacity 0.15s}
.legal-back:hover{opacity:0.7}

/* FOOTER */
.ft{background:var(--navy);padding:80px 0 40px;border-top:1px solid rgba(255,255,255,0.05)}
.ft-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.ft-logo img{height:26px;width:auto;max-width:190px;object-fit:contain;display:block;margin-bottom:12px}
.ft-tag{font-size:15px;color:rgba(255,255,255,0.70);line-height:1.7;max-width:280px}
.ft-col-lbl{font-size:15px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;margin-bottom:12px;background:linear-gradient(90deg,#60b4ff,#5efff0);background-size:200px 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.ft-col ul{list-style:none}
.ft-col ul li{margin-bottom:8px}
.ft-col ul li a{font-size:15px;color:rgba(255,255,255,0.72);text-decoration:none;cursor:pointer;transition:color 0.13s}
.ft-col ul li a:hover{color:rgba(255,255,255,0.82)}
.ft-bot{border-top:1px solid rgba(255,255,255,0.05);padding-top:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
.ft-copy{font-size:15px;color:rgba(255,255,255,0.2)}
.ft-links{display:flex;gap:18px}
.ft-link{font-size:15px;color:rgba(255,255,255,0.55);text-decoration:none;transition:color 0.15s;cursor:pointer}
.ft-link:hover{color:rgba(255,255,255,0.9)}
.ft-links a{font-size:15px;color:rgba(255,255,255,0.65);text-decoration:none;cursor:pointer;transition:color 0.13s}
.ft-links a:hover{color:rgba(255,255,255,0.84)}



.hero-wrap{min-height:calc(100vh - 64px);background:#f8f9fc;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 40px 0}
.hero-wrap::before{content:'';position:absolute;bottom:-120px;left:50%;transform:translateX(-50%);width:900px;height:600px;background:radial-gradient(ellipse at center,rgba(11,95,216,0.07) 0%,rgba(0,200,224,0.04) 40%,transparent 70%);pointer-events:none}
.hero-wrap::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(10,22,40,0.032) 1px,transparent 1px),linear-gradient(90deg,rgba(10,22,40,0.032) 1px,transparent 1px);background-size:52px 52px;pointer-events:none}
.hero-inner-center{position:relative;z-index:2;max-width:860px;width:100%;display:flex;flex-direction:column;align-items:center}


@keyframes badgePulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(0.7)}}
.h-title{font-family:'DM Serif Display',serif;font-size:clamp(48px,7vw,92px);font-weight:400;line-height:1.0;letter-spacing:-0.03em;color:var(--navy);margin:0 0 28px}
.h-title-line{display:block}
.h-title-gradient{background:linear-gradient(135deg,var(--blue),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.h-sub{font-size:17px;font-weight:300;line-height:1.72;color:rgba(10,22,40,0.75);max-width:560px;margin:0 auto 44px}
.h-cta-row{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:64px}
.h-cta-primary{background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;letter-spacing:0.05em;padding:15px 36px;border:none;border-radius:6px;cursor:pointer;transition:opacity 0.2s,transform 0.18s,box-shadow 0.18s;box-shadow:0 4px 20px color-mix(in srgb, var(--blue) 35%, transparent)}
.h-cta-primary:hover{opacity:0.88;transform:translateY(-2px);box-shadow:0 8px 32px color-mix(in srgb, var(--blue) 45%, transparent)}
.h-cta-secondary{background:#fff;color:var(--navy);font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;letter-spacing:0.05em;padding:15px 36px;border:1.5px solid rgba(10,22,40,0.14);border-radius:6px;cursor:pointer;transition:border-color 0.18s,transform 0.18s}
.h-cta-secondary:hover{border-color:rgba(10,22,40,0.3);transform:translateY(-2px)}
.h-stats{display:flex;justify-content:center;gap:0;border-top:1px solid rgba(10,22,40,0.08);padding-top:36px;width:100%;max-width:640px}
.h-stat{flex:1;display:flex;flex-direction:column;align-items:center;padding:0 24px;border-right:1px solid rgba(10,22,40,0.08)}
.h-stat:last-child{border-right:none}
.h-stat-n{font-family:'DM Serif Display',serif;font-size:clamp(26px,3vw,36px);font-weight:400;color:var(--navy);line-height:1;letter-spacing:-0.02em;margin-bottom:5px}
.h-stat-l{font-size:15px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:rgba(10,22,40,0.62)}
.h-marquee-wrap{width:100%;position:relative;z-index:2;margin-top:48px;border-top:1px solid rgba(10,22,40,0.07);padding:18px 0 22px;background:#f8f9fc;text-align:center}
.h-marquee-label{display:inline-flex;align-items:center;padding:6px 22px;border-radius:30px;font-size:11px;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;text-align:center;margin-bottom:13px;color:#d0d8e4;position:relative;border:1.5px solid transparent;background:linear-gradient(#0a1628,#0a1628) padding-box,linear-gradient(135deg,#5a6a7e 0%,#a0b0c4 30%,#e0e8f0 50%,#a0b0c4 70%,#5a6a7e 100%) border-box;overflow:hidden}
.h-marquee-label::after{content:'';position:absolute;inset:0;border-radius:30px;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,0.18) 49%,rgba(255,255,255,0.35) 50%,rgba(255,255,255,0.18) 51%,transparent 60%);z-index:1;animation:badgeGleam 8s ease-in-out infinite;animation-delay:-3s;pointer-events:none;background-size:300% 100%;background-position:200% 0}
.sp-marquee-wrap{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent);mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent)}
.sp-marquee{display:flex;gap:10px;width:max-content;animation:marqueeScroll 30s linear infinite}
.sp-marquee:hover{animation-play-state:paused}
@keyframes marqueeScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.sp-pill{background:#fff;border:1px solid rgba(10,22,40,0.08);border-radius:6px;padding:10px 20px;white-space:nowrap;display:flex;align-items:center;justify-content:center}
/* Style A — Barlow Condensed all-caps: institutional/corporate */
.sp-pill-a{font-family:'Barlow Condensed',sans-serif;font-size:17px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--navy)}
/* Style B — DM Serif Display italic: editorial/financial */
.sp-pill-b{font-family:'DM Serif Display',serif;font-style:italic;font-size:18px;font-weight:400;color:var(--navy2);letter-spacing:-0.01em}
/* Style C — DM Sans tight bold: fintech/startup */
.sp-pill-c{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;color:var(--slate)}
/* Style D — Barlow Condensed normal weight: softer brand */
.sp-pill-d{font-family:'Barlow Condensed',sans-serif;font-size:19px;font-weight:600;letter-spacing:0.04em;color:#1a3160}
/* Color tint variants */
.sp-pill-tint-blue{background:rgba(11,95,216,0.05);border-color:rgba(11,95,216,0.12)}
.sp-pill-tint-navy{background:rgba(10,22,40,0.04);border-color:rgba(10,22,40,0.1)}
.sp-pill-tint-cyan{background:rgba(0,200,224,0.06);border-color:rgba(0,200,224,0.15)}

.h-title{opacity:0;animation:hRise 0.8s cubic-bezier(0.22,1,0.36,1) forwards 0.5s}
.h-sub{opacity:0;animation:hFade 0.7s ease forwards 1.1s}
.h-cta-row{opacity:0;animation:hFade 0.7s ease forwards 1.4s}
.h-stats{opacity:0;animation:hFade 0.8s ease forwards 2.2s}
@keyframes hRise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes hFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.hero-counter.counting{color:var(--blue)}
.pship-section{background:var(--navy);padding:64px 40px}
.pship-box{border:1px solid rgba(255,255,255,0.25);border-radius:16px;padding:56px 64px;max-width:820px;margin:0 auto}
.pship-box .tc{border:none;overflow:visible}
.pship-grid{display:grid;grid-template-columns:1fr 1px 1fr;gap:0;margin:40px 0 0}
.pship-col{padding:0 56px}
.pship-col:first-child{padding-left:0}
.pship-col:last-child{padding-right:0}
.pship-divider{background:rgba(255,255,255,0.08);position:relative;overflow:hidden}
.pship-divider::after{content:'';position:absolute;left:0;right:0;height:40%;background:linear-gradient(180deg,transparent,rgba(0,229,204,0.6),transparent);animation:beamPing 2.8s ease-in-out infinite alternate}
@keyframes beamPing{0%{top:-40%}100%{top:100%}}
.pship-col-hd{font-size:15px;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,0.1)}
.pship-col-hd.blue{color:var(--sky)}.pship-col-hd.teal{color:var(--cyan-text)}
.pship-item{display:flex;align-items:center;gap:10px;font-size:15px;color:rgba(255,255,255,0.75);margin-bottom:14px;line-height:1.4}
.pship-dot{width:4px;height:4px;border-radius:50%;flex-shrink:0}
.pship-dot.b{background:var(--sky)}.pship-dot.t{background:var(--teal)}
.pship-quote{margin-top:40px;padding-top:28px;border-top:1px solid rgba(255,255,255,0.07);text-align:center;font-style:italic;font-size:15px;color:rgba(255,255,255,0.70);line-height:1.7;max-width:560px;margin-left:auto;margin-right:auto}
.scroll-reveal{opacity:0;transform:translateY(28px);transition:opacity 0.7s ease,transform 0.7s ease}
.scroll-reveal.in-view{opacity:1;transform:translateY(0)}
.counter.counting{color:var(--blue)}

/* ── EXPLORE MODAL ── */
.exp-overlay{position:fixed;inset:0;background:rgba(10,22,40,0.72);backdrop-filter:blur(6px);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.3s ease}
.exp-overlay.open{opacity:1;pointer-events:all}
.exp-modal{background:#fff;border-radius:20px;width:min(560px,92vw);position:relative;box-shadow:0 40px 100px rgba(10,22,40,0.28);overflow:hidden;transform:translateY(20px) scale(0.97);transition:transform 0.35s cubic-bezier(0.22,1,0.36,1)}
.exp-overlay.open .exp-modal{transform:translateY(0) scale(1)}
.exp-modal-top{padding:28px 32px 0}
.exp-close{position:absolute;top:16px;right:20px;background:none;border:none;font-size:16px;color:rgba(10,22,40,0.3);cursor:pointer;padding:4px 8px;border-radius:6px;transition:color 0.15s,background 0.15s;font-family:inherit;z-index:10}
.exp-close:hover{color:var(--navy);background:var(--off)}
.exp-dots{display:flex;gap:6px;margin-bottom:0;padding:24px 32px 20px}
.exp-dot{width:24px;height:4px;border-radius:2px;background:var(--off2);cursor:pointer;transition:background 0.2s,width 0.25s}
.exp-dot.active{background:var(--blue);width:36px}
.exp-track-wrap{overflow:hidden;width:100%}
.exp-track{display:flex;transition:transform 0.42s cubic-bezier(0.4,0,0.2,1);will-change:transform}
.exp-card{min-width:100%;padding:0 32px 0}
.exp-card-img{width:100%;height:260px;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.exp-card-img img{height:100%;width:100%;object-fit:contain;padding:0}
.exp-card-num{font-size:15px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:rgba(10,22,40,0.55);margin-bottom:10px}
.exp-card-title{font-family:'DM Serif Display',serif;font-size:26px;font-weight:400;color:var(--navy);margin-bottom:12px;line-height:1.15}
.exp-card-desc{font-size:15px;line-height:1.72;color:rgba(10,22,40,0.55);margin-bottom:24px}
.exp-card-btn{background:var(--navy);color:#fff;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;letter-spacing:0.04em;padding:13px 28px;border:none;border-radius:6px;cursor:pointer;transition:background 0.18s,transform 0.18s;box-shadow:0 4px 16px rgba(10,22,40,0.16);margin-bottom:32px;display:inline-block}
.exp-card-btn:hover{background:var(--blue);transform:translateX(3px)}
.exp-nav{display:flex;justify-content:space-between;align-items:center;padding:16px 32px 24px;border-top:1px solid var(--off2)}
.exp-nav-hint{font-size:15px;color:rgba(10,22,40,0.3);font-weight:500}
.exp-arrows{display:flex;gap:8px}
.exp-arrow{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--off2);background:#fff;color:var(--navy);font-size:16px;cursor:pointer;transition:all 0.15s;display:flex;align-items:center;justify-content:center;font-family:inherit}
.exp-arrow:hover:not(:disabled){border-color:var(--navy);background:var(--navy);color:#fff}
.exp-arrow:disabled{opacity:0.28;cursor:default}
.exp-hint-cta{background:linear-gradient(90deg,var(--blue),var(--sky),var(--cyan));background-size:200px 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;font-size:14px;letter-spacing:0.02em;transition:opacity 0.15s}
.exp-hint-cta:hover{opacity:0.8}


.fade-up{opacity:0;transform:translateY(24px);transition:opacity 0.6s ease,transform 0.6s ease}.fade-up.in-view{opacity:1;transform:translateY(0)}
.slide-up{opacity:0;transform:translateY(32px);transition:opacity 0.55s ease,transform 0.55s ease}.slide-up.in-view{opacity:1;transform:translateY(0)}
.phases-wrap{position:relative;margin-bottom:40px;margin-top:48px}
.phases-line-track{position:absolute;top:18px;left:calc(9% + 19px);right:calc(9% + 19px);height:2px;background:rgba(11,95,216,0.12);border-radius:2px;z-index:0;overflow:hidden}
.phases-line-fill{position:absolute;top:0;left:0;height:100%;width:0%;background:linear-gradient(90deg,var(--blue),var(--sky),var(--cyan));border-radius:2px;transition:width 1.4s cubic-bezier(0.4,0,0.2,1)}.phases-line-fill.drawn{width:100%}
.phases-grid{display:grid;grid-template-columns:repeat(6,1fr);position:relative;z-index:1}
.ph-cell-a{display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 12px 28px;opacity:0;transform:translateY(20px);transition:opacity 0.5s ease,transform 0.5s ease;position:relative}
.ph-cell-a.in-view{opacity:1;transform:translateY(0)}
.ph-num-a{width:38px;height:38px;border-radius:50%;background:var(--off2);border:2px solid var(--mist);color:var(--slate);font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:16px;transition:background 0.4s ease,border-color 0.4s ease,color 0.4s ease,transform 0.4s ease,box-shadow 0.4s ease;position:relative;z-index:2;cursor:default}
.ph-cell-a.in-view .ph-num-a{background:linear-gradient(135deg,var(--blue),var(--cyan));border-color:transparent;color:var(--white);transform:scale(1.08);box-shadow:0 4px 16px rgba(11,95,216,0.35)}
.ph-cell-a:hover .ph-num-a{transform:scale(1.18)!important;box-shadow:0 6px 24px rgba(11,95,216,0.45)!important}
.ph-content h3{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:6px}.ph-content p{font-size:15px;color:var(--slate);line-height:1.55}
.ph-tooltip{position:absolute;bottom:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(6px);width:240px;background:var(--navy);border:1px solid rgba(255,255,255,0.12);border-radius:12px;padding:16px 18px;pointer-events:none;opacity:0;transition:opacity 0.22s ease,transform 0.22s ease;z-index:100;box-shadow:0 16px 48px rgba(0,0,0,0.4);text-align:left}
.ph-tooltip::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:7px solid transparent;border-top-color:var(--navy)}
.ph-cell-a[data-phase="0"] .ph-tooltip,.ph-cell-a[data-phase="1"] .ph-tooltip{left:0;transform:translateX(0) translateY(6px)}.ph-cell-a[data-phase="0"] .ph-tooltip::after,.ph-cell-a[data-phase="1"] .ph-tooltip::after{left:32px;transform:none}
.ph-cell-a[data-phase="4"] .ph-tooltip,.ph-cell-a[data-phase="5"] .ph-tooltip{left:auto;right:0;transform:translateX(0) translateY(6px)}.ph-cell-a[data-phase="4"] .ph-tooltip::after,.ph-cell-a[data-phase="5"] .ph-tooltip::after{left:auto;right:32px;transform:none}
.ph-cell-a:hover .ph-tooltip{opacity:1;transform:translateX(-50%) translateY(0)}
.ph-cell-a[data-phase="0"]:hover .ph-tooltip,.ph-cell-a[data-phase="1"]:hover .ph-tooltip{transform:translateX(0) translateY(0)}
.ph-cell-a[data-phase="4"]:hover .ph-tooltip,.ph-cell-a[data-phase="5"]:hover .ph-tooltip{transform:translateX(0) translateY(0)}
.ph-tooltip-label{font-size:15px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--cyan-text);text-align:center;margin-bottom:10px}
.ph-tooltip h4{font-family:"DM Serif Display",serif;font-size:15px;color:var(--white);margin-bottom:7px;line-height:1.3}.ph-tooltip p{font-size:15px;color:rgba(255,255,255,0.80);line-height:1.65;margin:0}
.crit-hover{border-radius:12px;padding:20px 16px;transition:background 0.25s ease,transform 0.25s ease;cursor:default}.crit-hover:hover{background:rgba(255,255,255,0.06);transform:translateY(-4px)}
.tl-cell{position:relative;overflow:hidden}.tl-cell::before{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--blue),var(--sky),var(--cyan));transform:scaleX(0);transform-origin:left;transition:transform 0.6s ease 0.4s}.tl-cell.in-view::before{transform:scaleX(1)}
.quad-wrap{position:relative;width:100%;max-width:900px;margin:40px auto 0;aspect-ratio:1/1;background:#080f1e;border:1px solid rgba(255,255,255,0.09);border-radius:20px;overflow:hidden}
.quad-wrap::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.028) 1px,transparent 1px);background-size:44px 44px;pointer-events:none;z-index:0}
.quad-line-h{position:absolute;top:50%;left:0;right:0;height:1px;background:rgba(255,255,255,0.13);transform:translateY(-50%);z-index:3}
.quad-line-v{position:absolute;left:50%;top:0;bottom:0;width:1px;background:rgba(255,255,255,0.13);transform:translateX(-50%);z-index:3}
.quad-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:6px}
.quad-center-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,0.2);box-shadow:0 0 8px 3px rgba(255,255,255,0.08)}
.quad-mark{font-size:15px;font-weight:700;letter-spacing:0.14em;color:rgba(255,255,255,0.14);white-space:nowrap}.quad-mark sup{font-size:15px;vertical-align:super}
.quad-axis-x{position:absolute;bottom:13px;left:50%;transform:translateX(-50%);z-index:5}.quad-axis-y{position:absolute;left:13px;top:50%;transform:translateY(-50%) rotate(-90deg);z-index:5;white-space:nowrap}
.quad-axis-x span,.quad-axis-y span{font-size:15px;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:rgba(255,255,255,0.14)}
.quad-cell{position:absolute;width:calc(50% - 1px);height:calc(50% - 1px);z-index:4;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:background 0.35s ease}
.quad-tl{top:0;left:0;border-radius:20px 0 0 0}.quad-tr{top:0;right:0;border-radius:0 20px 0 0}.quad-bl{bottom:0;left:0;border-radius:0 0 0 20px}.quad-br{bottom:0;right:0;border-radius:0 0 20px 0}
.quad-tl:hover{background:rgba(11,95,216,0.08)}.quad-tr:hover{background:rgba(239,68,68,0.07)}.quad-bl:hover{background:rgba(34,197,94,0.07)}.quad-br:hover{background:rgba(168,85,247,0.07)}
.quad-corner{position:absolute;width:200px;height:200px;border-radius:50%;opacity:0.15;filter:blur(70px);pointer-events:none;transition:opacity 0.35s ease}
.quad-tl:hover .quad-corner,.quad-tr:hover .quad-corner,.quad-bl:hover .quad-corner,.quad-br:hover .quad-corner{opacity:0.32}
.quad-corner-tl{top:-50px;left:-50px;background:#3b82f6}.quad-corner-tr{top:-50px;right:-50px;background:#ef4444}.quad-corner-bl{bottom:-50px;left:-50px;background:#22c55e}.quad-corner-br{bottom:-50px;right:-50px;background:#a855f7}
.quad-bg-label{position:absolute;font-family:"DM Serif Display",serif;white-space:nowrap;font-weight:400;opacity:0.06;pointer-events:none;user-select:none;line-height:1;transition:opacity 0.35s ease;max-width:80%;font-size:clamp(60px,9.5vw,100px)}
.quad-bl .quad-bg-label{font-size:clamp(32px,5vw,62px)}.quad-br .quad-bg-label{font-size:clamp(24px,3.8vw,48px)}
.quad-tl .quad-bg-label{bottom:12px;left:16px;color:#7db5ff}.quad-tr .quad-bg-label{bottom:12px;right:16px;color:#f87171}.quad-bl .quad-bg-label{top:12px;left:16px;color:#4ade80}.quad-br .quad-bg-label{top:12px;right:16px;color:#c084fc}
.quad-tl:hover .quad-bg-label,.quad-tr:hover .quad-bg-label,.quad-bl:hover .quad-bg-label,.quad-br:hover .quad-bg-label{opacity:0.12}
.quad-content{position:relative;z-index:5;width:82%;height:80%;display:flex;flex-direction:column;justify-content:center;text-align:left}
.quad-label{font-family:"DM Serif Display",serif;font-size:clamp(22px,2.8vw,30px);line-height:1.1;margin-bottom:10px}
.quad-tl .quad-label{color:#7db5ff}.quad-tr .quad-label{color:#f87171}.quad-bl .quad-label{color:#4ade80}.quad-br .quad-label{color:#c084fc}
.quad-desc{font-size:clamp(12px,1.3vw,15px);color:rgba(255,255,255,0.75);line-height:1.55;margin-bottom:16px}
.quad-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px}
.quad-list li{font-size:clamp(11px,1.2vw,14px);color:rgba(255,255,255,0.84);line-height:1.45;padding-left:16px;position:relative}
.quad-list li::before{content:"—";position:absolute;left:0;color:rgba(255,255,255,0.60);font-size:15px;top:1px}

.ft-tag{color:rgba(255,255,255,0.88)!important}.ft-col-lbl{background:linear-gradient(90deg,#60b4ff,#5efff0);background-size:200px 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text!important}.ft-col ul li a{color:rgba(255,255,255,0.78)!important}.ft-col ul li a:hover{color:var(--white)!important}.ft-links a{color:rgba(255,255,255,0.78)!important}.ft-links a:hover{color:var(--white)!important}.cta-inner{max-width:540px;margin:0 auto;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.15);border-radius:20px;padding:52px 48px}

.am-cocard{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 8px 40px rgba(10,22,40,0.14),0 1px 4px rgba(10,22,40,0.06);font-family:'DM Sans',sans-serif;min-height:340px;position:relative;display:flex;flex-direction:column;transition:box-shadow 0.2s,transform 0.2s}
.am-cocard:hover{box-shadow:0 16px 56px rgba(10,22,40,0.18),0 2px 8px rgba(10,22,40,0.08);transform:translateY(-2px)}
.am-cocard-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 14px}
.am-cocard-divider{height:4px;width:100%}
.am-cocard-body{flex:1;display:flex;flex-direction:column;justify-content:center;padding:24px 28px 20px}
.am-cocard-headline{font-family:'DM Serif Display',serif;font-size:clamp(18px,2.4vw,26px);line-height:1.2;color:#0A1628;margin-bottom:10px;letter-spacing:-0.02em}
.am-cocard-sub{font-size:clamp(12px,1.3vw,14px);color:rgba(10,22,40,0.58);line-height:1.6;max-width:85%}
.am-cocard-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 24px 18px;border-top:1px solid rgba(10,22,40,0.06);flex-wrap:wrap;gap:8px}
.am-cocard-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.am-pill-anthropic{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;background:rgba(10,22,40,0.05);border:1px solid rgba(10,22,40,0.1);font-size:11px;font-weight:600;color:rgba(10,22,40,0.5);letter-spacing:0.04em}
.am-pill-ctax{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;background:linear-gradient(90deg,#0B5FD8,#00C8E0);font-size:11px;font-weight:700;color:#fff;letter-spacing:0.04em}
.am-cocard-badge{font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:4px 12px;border-radius:20px;color:#fff}
.am-card-actions{display:flex;gap:10px;margin-top:14px}
.am-card-btn{flex:1;padding:10px 14px;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s;display:flex;align-items:center;justify-content:center;gap:6px}
.am-card-btn-preview{background:#fff;border:1.5px solid rgba(10,22,40,0.15);color:rgba(10,22,40,0.7)}
.am-card-btn-preview:hover{background:rgba(10,22,40,0.04);border-color:rgba(10,22,40,0.25)}
.am-card-btn-dl{background:linear-gradient(90deg,#0B5FD8,#00C8E0);border:none;color:#fff;box-shadow:0 2px 8px rgba(11,95,216,0.3)}
.am-card-btn-dl:hover{box-shadow:0 4px 16px rgba(11,95,216,0.4);transform:translateY(-1px)}
.am-card-btn-canva{background:#8B3DFF;border:none;color:#fff;box-shadow:0 2px 8px rgba(139,61,255,0.3)}
.am-card-btn-canva:hover{box-shadow:0 4px 16px rgba(139,61,255,0.4);transform:translateY(-1px)}
.am-card-btn-canva:disabled{opacity:0.6;transform:none;cursor:wait}


.tier-pill{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 16px;border:1.5px solid rgba(255,255,255,0.12);border-radius:9px;background:rgba(255,255,255,0.04);cursor:pointer;text-align:left;transition:all 0.18s;font-family:'DM Sans',sans-serif}
.tier-pill:hover{border-color:rgba(255,255,255,0.25);background:rgba(255,255,255,0.07)}
.tier-pill.active{box-shadow:0 0 0 1px rgba(255,255,255,0.2)}
.tier-pill.active .tier-pill-desc{color:rgba(255,255,255,0.72)}
.tier-pill-name{font-size:14px;font-weight:700;color:#fff;letter-spacing:0.01em}
.tier-pill-desc{font-size:11px;color:rgba(255,255,255,0.55)}
/* Direct — fire orange */
.tier-pill.active[data-tier-color="direct"]{border-color:#E84400;background:linear-gradient(135deg,rgba(232,68,0,0.18),rgba(255,140,66,0.08));box-shadow:0 0 0 1px rgba(232,68,0,0.3)}
.tier-pill.active[data-tier-color="direct"] .tier-pill-name{background:linear-gradient(90deg,#E84400,#FF8C42,#FFAA00);background-size:200px 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
/* Enterprise — ice blue */
.tier-pill.active[data-tier-color="enterprise"]{border-color:#0B5FD8;background:linear-gradient(135deg,rgba(11,95,216,0.18),rgba(0,200,224,0.08));box-shadow:0 0 0 1px rgba(11,95,216,0.3)}
.tier-pill.active[data-tier-color="enterprise"] .tier-pill-name{background:linear-gradient(90deg,#0B5FD8,#38BDF8,#00C8E0);background-size:200px 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
/* Strategic — emerald green */
.tier-pill.active[data-tier-color="strategic"]{border-color:#059669;background:linear-gradient(135deg,rgba(5,150,105,0.18),rgba(6,214,160,0.08));box-shadow:0 0 0 1px rgba(5,150,105,0.3)}
.tier-pill.active[data-tier-color="strategic"] .tier-pill-name{background:linear-gradient(90deg,#059669,#34D399,#06D6A0);background-size:200px 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}


.h-badge{display:inline-flex;align-items:center;padding:6px 20px;border-radius:30px;font-size:10px;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:#d0d8e4;position:relative;margin-bottom:24px;border:1.5px solid transparent;background:linear-gradient(#0a1628,#0a1628) padding-box,linear-gradient(135deg,#5a6a7e 0%,#a0b0c4 30%,#e0e8f0 50%,#a0b0c4 70%,#5a6a7e 100%) border-box;overflow:hidden}
.h-badge::before{display:none}
.h-badge::after{content:'';position:absolute;inset:0;border-radius:30px;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,0.18) 49%,rgba(255,255,255,0.35) 50%,rgba(255,255,255,0.18) 51%,transparent 60%);z-index:1;animation:badgeGleam 8s ease-in-out infinite;animation-delay:-6.8s;pointer-events:none;background-size:300% 100%;background-position:200% 0}
@keyframes badgeGleam{0%,85%{background-position:200% 0}100%{background-position:-100% 0}}

/* ── Hero staggered reveal ── */
.hero-reveal{opacity:0;transform:translateY(32px);animation:heroRevealIn 0.8s cubic-bezier(0.22,1,0.36,1) forwards;animation-delay:calc(var(--reveal-d,0) * 120ms + 200ms)}
@keyframes heroRevealIn{to{opacity:1;transform:translateY(0)}}

/* ── Page Transitions ─────────────────────────────────── */
.page.page-enter{animation:pageEnter 0.42s cubic-bezier(0.22,1,0.36,1) forwards}
.page.page-exit{animation:pageExit 0.18s cubic-bezier(0.4,0,1,1) forwards}
@keyframes pageEnter{
  0%{opacity:0;transform:translateY(22px)}
  100%{opacity:1;transform:translateY(0)}
}
@keyframes pageExit{
  0%{opacity:1;transform:translateY(0)}
  100%{opacity:0;transform:translateY(-10px)}
}

/* ── Section Stagger on Page Enter ─────────────────────── */
.page.page-enter > section,
.page.page-enter > .ph,
.page.page-enter > .hero-wrap,
.page.page-enter > footer{opacity:0;transform:translateY(20px);animation:secStagger 0.5s cubic-bezier(0.22,1,0.36,1) forwards}
.page.page-enter > :nth-child(1){animation-delay:0.05s}
.page.page-enter > :nth-child(2){animation-delay:0.12s}
.page.page-enter > :nth-child(3){animation-delay:0.19s}
.page.page-enter > :nth-child(4){animation-delay:0.26s}
.page.page-enter > :nth-child(5){animation-delay:0.33s}
.page.page-enter > :nth-child(6){animation-delay:0.38s}
.page.page-enter > :nth-child(7){animation-delay:0.43s}
.page.page-enter > :nth-child(8){animation-delay:0.48s}
.page.page-enter > :nth-child(n+9){animation-delay:0.50s}
@keyframes secStagger{
  0%{opacity:0;transform:translateY(20px)}
  100%{opacity:1;transform:translateY(0)}
}


/* ── Client Qualifier ─────────────────────────────────── */
.cq-wrap{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:36px 40px;margin-bottom:20px}
.cq-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.cq-form-col{}
.cq-verdict{border-radius:12px;padding:24px 28px;margin-bottom:24px;display:flex;align-items:center;gap:16px}
.cq-verdict-strong{background:linear-gradient(135deg,rgba(0,229,204,0.08),rgba(11,95,216,0.06));border:1px solid rgba(0,229,204,0.2)}
.cq-verdict-likely{background:rgba(11,95,216,0.06);border:1px solid rgba(11,95,216,0.15)}
.cq-verdict-weak{background:rgba(138,149,170,0.08);border:1px solid rgba(138,149,170,0.15)}
.cq-verdict-no{background:rgba(220,38,38,0.06);border:1px solid rgba(220,38,38,0.12)}
.cq-verdict-icon{font-size:32px;flex-shrink:0}
.cq-verdict-text{flex:1}
.cq-verdict-title{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy);margin-bottom:4px}
.cq-verdict-desc{font-size:15px;color:var(--body);line-height:1.5}
.cq-details-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:28px}
.cq-detail-card{background:var(--off);border:1px solid var(--off2);border-radius:10px;padding:20px 22px}
.cq-detail-label{font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--slate);margin-bottom:8px}
.cq-detail-value{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy);line-height:1.3}
.cq-analysis{background:var(--off);border:1px solid var(--off2);border-radius:10px;padding:24px 28px;margin-bottom:16px}
.cq-talking-points{background:var(--off);border:1px solid var(--off2);border-radius:10px;padding:24px 28px}

/* ── Knowledge Base ──────────────────────────────────── */
.kb-wrap{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:36px 40px}
.kb-search-bar{display:flex;align-items:center;gap:12px;background:var(--off);border:1.5px solid var(--off2);border-radius:10px;padding:6px 8px 6px 16px;transition:border-color 0.2s}
.kb-search-bar:focus-within{border-color:var(--blue)}
.kb-search-icon{color:var(--slate);flex-shrink:0}
.kb-search-bar input{flex:1;border:none;background:none;font-family:'DM Sans',sans-serif;font-size:15px;color:var(--ink);outline:none;padding:8px 0}
.kb-search-bar input::placeholder{color:var(--slate)}
.kb-search-btn{background:var(--blue);color:#fff;border:none;border-radius:7px;padding:10px 22px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:opacity 0.15s;flex-shrink:0}
.kb-search-btn:hover{opacity:0.88}
.kb-quick-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.kb-tag{background:var(--off);border:1px solid var(--off2);border-radius:20px;padding:7px 16px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;color:var(--body);cursor:pointer;transition:all 0.15s;white-space:nowrap}
.kb-tag:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.04)}
.kb-answer-card{background:var(--off);border:1px solid var(--off2);border-radius:10px;padding:28px;margin-top:24px}
.kb-answer-body{font-size:15px;color:var(--ink);line-height:1.72}
.kb-answer-body b{color:var(--navy);font-weight:600}
.kb-answer-footer{display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding-top:16px;border-top:1px solid var(--off2);gap:12px;flex-wrap:wrap}
.kb-disclaimer{font-size:12px;color:var(--slate);line-height:1.4}
.kb-history-item{background:var(--off);border:1px solid var(--off2);border-radius:10px;padding:20px 24px;margin-top:12px}
.kb-history-q{font-size:13px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--slate);margin-bottom:8px}
.kb-history-a{font-size:14px;color:var(--body);line-height:1.65}

@media(max-width:768px){
  .cq-wrap{padding:24px 20px}
  .cq-form-grid{grid-template-columns:1fr;gap:20px}
  .cq-details-grid{grid-template-columns:1fr;gap:10px}
  .kb-wrap{padding:24px 20px}
  .kb-quick-tags{gap:6px}
  .kb-tag{font-size:12px;padding:6px 12px}
}

/* ── Dashboard Action Buttons ────────────────────────── */
.dash-act-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;border:1px solid var(--off2);background:var(--white);color:var(--slate);cursor:pointer;transition:all 0.15s;flex-shrink:0;text-decoration:none}
.dash-act-btn:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.04)}
[data-theme="dark"] .dash-act-btn{background:#1a2234;border-color:rgba(255,255,255,0.08);color:rgba(255,255,255,0.5)}
[data-theme="dark"] .dash-act-btn:hover{border-color:rgba(11,95,216,0.5);color:var(--cyan-text);background:rgba(11,95,216,0.12)}

/* ── Universal Footer ─────────────────────────────────── */
#site-footer{background:#07111f;padding:72px 0 48px;font-size:13px}
.footer-inner{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:48px;margin-bottom:56px}

/* Brand column — logo, tagline, pill evenly spread */
.footer-brand{display:flex;flex-direction:column;justify-content:space-between;min-height:140px}
.footer-brand p{font-size:15px;color:rgba(255,255,255,0.6);line-height:1.7;max-width:280px;margin:0}
.footer-powered{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);font-size:12px;color:rgba(255,255,255,0.45);letter-spacing:0.05em;width:fit-content}
.footer-powered svg{opacity:0.7}

/* Column titles — gradient like the section eyebrows */
.footer-col-title{font-size:11px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;margin-bottom:18px;background:linear-gradient(90deg,var(--blue),var(--sky),var(--cyan));background-size:200px 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* Links — 15px, noticeably brighter */
.footer-links{display:flex;flex-direction:column;gap:13px}
.footer-links a{color:rgba(255,255,255,0.65);text-decoration:none;font-size:15px;cursor:pointer;transition:color 0.18s}
.footer-links a:hover{color:#fff}

/* Bottom bar */
.footer-bottom{border-top:1px solid rgba(255,255,255,0.07);padding-top:24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.footer-copyright{font-size:12px;font-weight:500;background:linear-gradient(90deg,var(--blue),var(--sky),var(--cyan));background-size:200px 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.footer-bottom-links{display:flex;gap:24px}
.footer-bottom-links a{color:rgba(255,255,255,0.35);font-size:12px;text-decoration:none;cursor:pointer;transition:color 0.18s}
.footer-bottom-links a:hover{color:rgba(255,255,255,0.7)}
@media(max-width:768px){
  .footer-inner{grid-template-columns:1fr 1fr;gap:32px}
  .footer-brand{grid-column:1/-1;min-height:auto;gap:20px}
  .footer-bottom{flex-direction:column;align-items:flex-start}
}


/* ── SOCIAL PROOF TICKER ── */
@keyframes slideInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes slideOutDown{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}

/* ── COOKIE CONSENT ── */
.cc-banner{display:none;position:fixed;bottom:24px;right:24px;z-index:9999;animation:ccSlideIn 0.45s cubic-bezier(0.22,1,0.36,1)}
.cc-banner.cc-visible{display:block}
.cc-card{display:flex;flex-direction:column;align-items:center;padding:32px 22px 18px;position:relative;background:#fff;border-radius:16px;box-shadow:rgba(60,64,67,0.3) 0 1px 2px 0,rgba(60,64,67,0.15) 0 2px 6px 2px;max-width:300px;width:80vw}
.cc-icon{position:relative;margin:-56px auto 10px;display:flex;align-items:center;justify-content:center}
.cc-img{width:58px;height:58px;filter:drop-shadow(0 4px 12px rgba(59,130,246,0.2));border-radius:50%}
.cc-title{font-size:14px;font-weight:600;color:#374151;margin:0 0 6px;text-align:left;width:100%}
.cc-text{font-size:13px;color:#6b7280;line-height:1.5;margin:0 0 12px;text-align:justify;width:100%}
.cc-link{font-size:13px;font-weight:600;color:#3b82f6;cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:color 0.15s}
.cc-link:hover{color:#1d4ed8}
.cc-footer{display:flex;align-items:center;justify-content:center;gap:32px;width:100%}
.cc-more{font-size:13px;font-weight:600;color:#6b7280;cursor:pointer;text-decoration:none;transition:color 0.15s}
.cc-more:hover{color:#3b82f6;text-decoration:underline;text-underline-offset:2px}
.cc-btn{background:#3b82f6;color:#fff;border:none;padding:8px 28px;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.15s,transform 0.15s}
.cc-btn:hover{background:#2563eb;transform:translateY(-1px)}
.cc-exit{animation:ccSlideOut 0.3s cubic-bezier(0.4,0,1,1) forwards}
@keyframes ccSlideIn{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}
@keyframes ccSlideOut{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(40px)}}

/* ── CHAT WIDGET ── */
#chat-bubble{animation:slideInUp 0.3s ease}

/* ── WEBINARS ── */
.wbn-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.wbn-card{background:var(--white);border:1px solid var(--off2);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow 0.2s,transform 0.2s}
.wbn-card:hover{box-shadow:0 12px 48px rgba(10,22,40,0.12);transform:translateY(-3px)}
.wbn-thumb{aspect-ratio:16/9;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.wbn-thumb-pattern{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.03) 1px,transparent 1px);background-size:32px 32px;pointer-events:none}
.wbn-play{width:56px;height:56px;border-radius:50%;border:2px solid rgba(255,255,255,0.7);background:rgba(255,255,255,0.12);display:flex;align-items:center;justify-content:center;position:relative;z-index:1;transition:transform 0.2s,background 0.2s}
.wbn-card:hover .wbn-play{transform:scale(1.1);background:rgba(255,255,255,0.2)}
.wbn-badge{position:absolute;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:0.06em;z-index:1;backdrop-filter:blur(8px)}
.wbn-badge-ce{top:12px;left:12px;background:rgba(11,95,216,0.85);color:#fff}
.wbn-badge-dur{top:12px;right:12px;background:rgba(10,22,40,0.7);color:rgba(255,255,255,0.9)}
.wbn-filter{position:sticky;top:52px;z-index:10;background:var(--white);border-bottom:1px solid var(--off2);padding:14px 0;overflow-x:auto}
.wbn-pill{display:inline-block;padding:7px 18px;border-radius:24px;font-size:13px;font-weight:600;color:var(--slate);background:var(--off);border:1px solid var(--off2);cursor:pointer;white-space:nowrap;transition:all 0.15s}
.wbn-pill:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.03)}
.wbn-pill-active{background:rgba(11,95,216,0.08);color:var(--blue);border-color:rgba(11,95,216,0.2)}

/* ── PAGE TRANSITIONS ── */
.page{transition:opacity 0.35s ease,transform 0.35s ease}
.page:not(.active){opacity:0;pointer-events:none}
.page.active{opacity:1;transform:translateY(0)}
.page.page-entering{animation:pageIn 0.35s ease forwards}
@keyframes pageIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}

/* ── RESPONSIVE: NEW PAGES ── */
@media(max-width:768px){
  #page-stories [style*="grid-template-columns:1fr 1fr 1fr"]{grid-template-columns:1fr!important}
  #page-stories [style*="grid-template-columns:1fr 1fr;"]{grid-template-columns:1fr!important}
  #page-stories [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important}
  #page-dashboard [style*="grid-template-columns:1fr 1fr 1fr 1fr"]{grid-template-columns:1fr 1fr!important}
  #page-dashboard [style*="grid-template-columns:1.6fr"]{grid-template-columns:1.8fr 1fr 1fr auto!important;gap:8px;font-size:13px}
  #page-dashboard [style*="grid-template-columns:1.6fr"] > div:nth-child(2),
  #page-dashboard [style*="grid-template-columns:1.6fr"] > div:nth-child(4){display:none!important}
  #page-compare [style*="grid-template-columns:2fr 1fr 1fr 1fr"]{grid-template-columns:2fr 1fr 1fr!important}
  #page-compare [style*="grid-template-columns:2fr 1fr 1fr 1fr"] > div:last-child{display:none!important}
  .wbn-grid{grid-template-columns:1fr}
  .wbn-filter .con{gap:6px}
  #page-webinars [style*="display:flex;justify-content:center;gap:0"]{flex-direction:column!important;align-items:center!important}
  #page-webinars [style*="border-right:1px solid rgba(255,255,255,0.08)"]{border-right:none!important;border-bottom:1px solid rgba(255,255,255,0.08)!important}
  .ytd-bar{bottom:0}
  .ytd-date,.ytd-sep{display:none}
  #chat-widget{bottom:16px;right:16px}
  #chat-bubble{width:calc(100vw - 32px)!important;position:fixed;right:16px;bottom:80px}
  .dash-hub-row{flex-direction:column!important}
  .dash-bonus-wrap{flex:none!important;min-width:0!important}
  .dash-insights-wrap{min-width:0!important}
  .dash-vel-header{flex-direction:column;gap:12px}
  .cc-banner{right:12px;left:auto;bottom:12px}
  .cc-card{width:min(300px,calc(100vw - 24px))}
  .cc-img{width:56px;height:56px}
}


/* ═══ DASHBOARD PERFORMANCE HUB ═══ */

/* ── LIGHT MODE (default) ── */
#dash-performance-hub{
  background:linear-gradient(155deg,var(--off) 0%,#edf2f8 60%,#e4ecf5 100%);
  border-bottom:1px solid var(--off2);
  margin:0 -28px 24px;
  padding:28px;
}
.dash-vel-wrap{
  margin-bottom:20px;
}
.dash-vel-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  margin-bottom:14px;
  flex-wrap:wrap;
  gap:8px;
}
.dash-hub-label{
  font-size:11px;
  font-weight:600;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--slate);
  margin-bottom:4px;
}
.dash-hub-title{
  font-family:'DM Serif Display',serif;
  font-size:20px;
  color:var(--navy);
  letter-spacing:-0.01em;
}
.dash-hub-subtitle{
  font-size:13px;
  color:var(--slate);
  margin-bottom:16px;
  line-height:1.4;
}
.dash-vel-legend{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  flex-shrink:1;
}
.dash-leg{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  font-weight:500;
  color:var(--slate);
}
.dash-leg-line{
  display:inline-block;
  width:18px;
  height:2px;
  border-radius:1px;
}
.dash-leg-you{
  background:linear-gradient(90deg,#0B5FD8,#4BA3FF,#00C8E0);
  height:3px;
}
.dash-leg-group{
  background:var(--mist);
  border-top:1px dashed var(--mist);
  height:0;
}
.dash-leg-network{
  background:var(--off2);
  border-top:1px dashed var(--off2);
  height:0;
}
.dash-live-badge{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:10px;
  font-weight:700;
  letter-spacing:0.1em;
  color:#4BA3FF;
  background:rgba(75,163,255,0.08);
  border:1px solid rgba(75,163,255,0.2);
  padding:3px 10px;
  border-radius:20px;
}
.dash-live-dot-sm{
  display:inline-block;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#4BA3FF;
  animation:dashPulse 1.5s ease-in-out infinite;
}
.dash-vel-chart{
  width:100%;
  border-radius:12px;
  background:var(--white);
  border:1px solid var(--off2);
  padding:12px 8px 4px;
  overflow:hidden;
  box-shadow:0 1px 4px rgba(10,22,40,0.04);
}
.dash-vel-svg{
  display:block;
  width:100%;
  height:auto;
  max-height:220px;
}
.dash-pulse-ring{
  animation:dashPulseRing 2s ease-in-out infinite;
  transform-origin:center;
}
.dash-live-dot{
  animation:dashDotBlink 2s ease-in-out infinite;
}
@keyframes dashPulseRing{
  0%,100%{opacity:0.15;r:8}
  50%{opacity:0.35;r:14}
}
@keyframes dashDotBlink{
  0%,100%{opacity:1}
  50%{opacity:0.6}
}
@keyframes dashPulse{
  0%,100%{opacity:1}
  50%{opacity:0.3}
}

/* Velocity chart draw-in */
.vel-draw{animation:velDrawIn 1.5s ease forwards}
@keyframes velDrawIn{to{stroke-dashoffset:0}}

/* Velocity area fade-in */
.vel-area-fade{opacity:0;animation:velAreaFade 0.6s ease 0.8s forwards}
@keyframes velAreaFade{to{opacity:1}}

/* Bonus ring animation */
.bonus-ring-anim{transition:stroke-dasharray 1s cubic-bezier(0.4,0,0.2,1)}

/* Bottom row: bonus + insights */
.dash-hub-row{
  display:flex;
  gap:20px;
}
.dash-bonus-wrap{
  flex:0 0 280px;
  background:var(--white);
  border:1px solid var(--off2);
  border-radius:12px;
  padding:20px;
}
.dash-bonus-center{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:8px 0;
}
.dash-bonus-svg{
  width:180px;
  height:180px;
}
.dash-bonus-glow{
  filter:drop-shadow(0 0 12px rgba(75,163,255,0.5));
}
.dash-insights-wrap{
  flex:1;
  background:var(--white);
  border:1px solid var(--off2);
  border-radius:12px;
  padding:20px;
}
.dash-insights-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.dash-insight-row{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border-radius:8px;
  background:var(--off);
  border-left:3px solid var(--off2);
  transition:background 0.15s;
}
.dash-insight-row:hover{
  background:var(--off2);
}
.dash-insight-icon{
  flex-shrink:0;
  width:28px;
  height:28px;
  border-radius:6px;
  background:var(--off2);
  display:flex;
  align-items:center;
  justify-content:center;
}
.dash-insight-text{
  font-size:14px;
  color:var(--body);
  line-height:1.45;
}
.dash-insight-text strong{
  color:var(--navy);
  font-weight:600;
}

/* ── DARK MODE for performance hub ── */
[data-theme="dark"] #dash-performance-hub{
  background:linear-gradient(155deg,#0A1628 0%,#112244 60%,#1a3160 100%);
  border-bottom-color:rgba(255,255,255,0.06);
}
[data-theme="dark"] .dash-hub-label{color:rgba(255,255,255,0.45)}
[data-theme="dark"] .dash-hub-title{color:#fff}
[data-theme="dark"] .dash-hub-subtitle{color:rgba(255,255,255,0.45)}
[data-theme="dark"] .dash-leg{color:rgba(255,255,255,0.55)}
[data-theme="dark"] .dash-leg-group{background:rgba(255,255,255,0.25);border-top-color:rgba(255,255,255,0.25)}
[data-theme="dark"] .dash-leg-network{background:rgba(255,255,255,0.12);border-top-color:rgba(255,255,255,0.12)}
[data-theme="dark"] .dash-vel-chart{background:rgba(0,0,0,0.2);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .dash-bonus-wrap{background:rgba(0,0,0,0.2);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .dash-insights-wrap{background:rgba(0,0,0,0.2);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .dash-insight-row{background:rgba(255,255,255,0.03);border-left-color:rgba(255,255,255,0.15)}
[data-theme="dark"] .dash-insight-row:hover{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .dash-insight-icon{background:rgba(255,255,255,0.05)}
[data-theme="dark"] .dash-insight-text{color:rgba(255,255,255,0.7)}
[data-theme="dark"] .dash-insight-text strong{color:#fff}

/* ═══ PARTNER PORTAL ═══ */
/* ═══ REFERRALS SECTION ═══ */
.ref-btn-primary{display:inline-flex;align-items:center;gap:6px;background:var(--blue);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:opacity 0.15s}
.ref-btn-primary:hover{opacity:0.85}

/* KPI Row */
/* KPI Cards */
.ref-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}
.ref-kpi{position:relative;display:flex;align-items:center;gap:16px;background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:22px 22px 20px;overflow:hidden;transition:transform 0.2s,box-shadow 0.2s,border-color 0.2s;cursor:default}
.ref-kpi::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.ref-kpi:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(10,22,40,0.08);border-color:transparent}
.ref-kpi-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform 0.2s}
.ref-kpi:hover .ref-kpi-icon{transform:scale(1.08)}
.ref-kpi-blue{background:rgba(11,95,216,0.08);color:var(--blue)}
.ref-kpi-blue svg{stroke:var(--blue)}
.ref-kpi:nth-child(1)::before{background:linear-gradient(90deg,var(--blue),var(--sky))}
.ref-kpi-amber{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.ref-kpi-amber svg{stroke:var(--cyan-text)}
.ref-kpi:nth-child(2)::before{background:linear-gradient(90deg,var(--cyan-text),var(--cyan))}
.ref-kpi-green{background:rgba(0,200,224,0.08);color:var(--cyan)}
.ref-kpi-green svg{stroke:var(--cyan)}
.ref-kpi:nth-child(3)::before{background:linear-gradient(90deg,var(--cyan),var(--teal))}
.ref-kpi-purple{background:rgba(75,163,255,0.08);color:var(--sky)}
.ref-kpi-purple svg{stroke:var(--sky)}
.ref-kpi:nth-child(4)::before{background:linear-gradient(90deg,var(--sky),var(--cyan))}
.ref-kpi-val{font-family:'DM Serif Display',serif;font-size:26px;color:var(--navy);line-height:1.1;letter-spacing:-0.02em}
.ref-kpi-label{font-size:12px;color:var(--slate);margin-top:3px}
.ref-kpi-trend{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;margin-top:4px;padding:2px 8px;border-radius:20px}
.ref-kpi-trend-up{background:rgba(0,200,224,0.08);color:var(--cyan-text)}
.ref-kpi-trend-down{background:rgba(220,38,38,0.08);color:#DC2626}
.ref-kpi-active{border-color:var(--blue)!important;box-shadow:0 8px 24px rgba(11,95,216,0.12);transform:translateY(-3px)}

/* KPI Detail Panels */
.ref-kpi-detail{max-height:0;overflow:hidden;transition:max-height 0.35s cubic-bezier(0.4,0,0.2,1);grid-column:1/-1}
.ref-kpi-detail-inner{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:24px 26px;display:grid;gap:20px}
.ref-kpi-detail-title{font-family:'DM Serif Display',serif;font-size:17px;color:var(--navy);margin-bottom:2px}
.ref-kpi-detail-subtitle{font-size:12px;color:var(--slate)}
.ref-kpi-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}
.ref-kpi-detail-stat{padding:14px 16px;background:var(--off);border-radius:10px}
.ref-kpi-detail-stat-val{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy);line-height:1.1}
.ref-kpi-detail-stat-label{font-size:11px;color:var(--slate);margin-top:3px}
.ref-kpi-mini-bar{display:flex;align-items:end;gap:4px;height:48px;padding-top:8px}
.ref-kpi-mini-col{flex:1;border-radius:4px 4px 0 0;transition:height 0.4s ease}
.ref-kpi-mini-bar-labels{display:flex;gap:4px;margin-top:4px}
.ref-kpi-mini-bar-labels span{flex:1;text-align:center;font-size:9px;color:var(--slate)}
.ref-kpi-breakdown{display:flex;flex-direction:column;gap:8px}
.ref-kpi-breakdown-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--navy);padding:6px 0;border-bottom:1px solid var(--off2)}
.ref-kpi-breakdown-row:last-child{border-bottom:none}
.ref-kpi-breakdown-label{display:flex;align-items:center;gap:8px}
.ref-kpi-breakdown-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.ref-kpi-breakdown-val{font-weight:700}

/* Pipeline */
.ref-pipeline{margin-bottom:28px;background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:20px 22px}
.ref-pipe-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.ref-pipe-label{font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--slate);margin-bottom:0}
.ref-pipe-total{font-size:12px;color:var(--slate);font-weight:500}
.ref-pipe-total strong{color:var(--navy);font-weight:700}
.ref-pipe-bar{display:flex;gap:3px;border-radius:10px;overflow:hidden;height:44px}
.ref-pipe-seg{position:relative;display:flex;align-items:center;justify-content:center;gap:5px;font-size:12px;font-weight:600;color:#fff;transition:flex 0.4s cubic-bezier(0.4,0,0.2,1),filter 0.2s;cursor:pointer}
.ref-pipe-seg span{font-weight:800;font-size:15px}
.ref-pipe-seg:hover{filter:brightness(1.15)}
.ref-pipe-new{background:linear-gradient(135deg,var(--sky),#6cb8ff)}
.ref-pipe-invest{background:linear-gradient(135deg,var(--blue),var(--blue2))}
.ref-pipe-resolve{background:linear-gradient(135deg,var(--cyan-text),#11a0b8)}
.ref-pipe-done{background:linear-gradient(135deg,var(--cyan),#2dd4e8)}
.ref-pipe-paid{background:linear-gradient(135deg,var(--navy3),var(--navy2))}
.ref-pipe-legend{display:flex;gap:16px;margin-top:10px;flex-wrap:wrap}
.ref-pipe-legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--slate);font-weight:500}
.ref-pipe-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}

/* Search + Filters */
.ref-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:16px;flex-wrap:wrap}
.ref-search{display:flex;align-items:center;gap:8px;background:var(--white);border:1px solid var(--off2);border-radius:8px;padding:8px 14px;flex:1;min-width:200px;transition:border-color 0.15s}
.ref-search:focus-within{border-color:var(--blue)}
.ref-search svg{color:var(--slate);flex-shrink:0}
.ref-search-input{border:none;outline:none;font-family:'DM Sans',sans-serif;font-size:13px;color:var(--navy);background:transparent;width:100%}
.ref-search-input::placeholder{color:var(--slate)}
.ref-filters{display:flex;gap:6px;flex-wrap:wrap}
.ref-filter-pill{background:var(--white);border:1px solid var(--off2);border-radius:20px;padding:6px 14px;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;color:var(--slate);cursor:pointer;transition:all 0.15s;display:inline-flex;align-items:center;gap:5px}
.ref-filter-pill:hover{border-color:var(--blue);color:var(--navy)}
.ref-fp-active{background:var(--navy);border-color:var(--navy);color:#fff}
.ref-fp-active:hover{border-color:var(--navy);color:#fff}
.ref-fp-count{font-size:10px;font-weight:700;opacity:0.6}

/* Table */
.ref-table-wrap{background:var(--white);border:1px solid var(--off2);border-radius:12px;overflow:hidden}
.ref-table-head{display:grid;grid-template-columns:2fr 1fr 1.1fr 0.9fr 0.8fr 0.8fr 1.3fr 0.6fr;gap:8px;padding:12px 20px;font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);border-bottom:1px solid var(--off2);background:var(--off)}
.ref-row{cursor:pointer;border-bottom:1px solid var(--off2);transition:background 0.12s;display:grid;grid-template-columns:2fr 1fr 1.1fr 0.9fr 0.8fr 0.8fr 1.3fr 0.6fr;gap:8px;padding:14px 20px;align-items:center;font-size:13px;color:var(--navy)}
.ref-row:last-child{border-bottom:none}
.ref-row:hover{background:rgba(11,95,216,0.02)}
.ref-td{display:flex;align-items:center}
.ref-td-client{display:flex;align-items:center;gap:10px}
.ref-avatar{width:34px;height:34px;border-radius:8px;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ref-name{font-weight:600;font-size:13px;line-height:1.3}
.ref-id{font-size:11px;color:var(--slate);font-family:'DM Mono',monospace,sans-serif}
.ref-td-money{font-weight:600}
.ref-td-share{font-weight:600;color:var(--blue)}
.ref-td-paid{color:var(--cyan-text)}
.ref-pending{color:var(--slate);font-weight:500;font-style:italic}
.ref-rep{font-size:12px;color:var(--slate)}
.ref-td-activity{font-size:12px;color:var(--body);display:flex;flex-direction:column;gap:1px}
.ref-time{font-size:11px;color:var(--slate)}
.ref-td-acts{display:flex;gap:4px}
.ref-act{width:28px;height:28px;border-radius:6px;border:1px solid var(--off2);background:var(--white);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--slate);transition:all 0.12s}
.ref-act:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.04)}

/* Status badges */
.ref-badge{display:inline-flex;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;letter-spacing:0.02em}
.ref-b-new{background:rgba(75,163,255,0.1);color:var(--sky)}
.ref-b-investigation{background:rgba(11,95,216,0.1);color:var(--blue)}
.ref-b-resolution{background:rgba(14,127,148,0.1);color:var(--cyan-text)}
.ref-b-resolved{background:rgba(14,127,148,0.1);color:var(--cyan-text)}
.ref-b-paid{background:rgba(10,22,40,0.06);color:var(--navy3)}

/* Expandable detail */
.ref-detail{display:none;padding:0 20px 20px;border-top:1px solid var(--off2);background:var(--off);grid-column:1/-1}
.ref-row-open .ref-detail{display:block;animation:refDetailIn 0.25s ease}
@keyframes refDetailIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.ref-detail-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;padding-top:20px}
.ref-detail-col{min-width:0}
.ref-detail-label{font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--blue);margin-bottom:12px}
.ref-detail-row{display:flex;justify-content:space-between;padding:6px 0;font-size:13px;border-bottom:1px solid rgba(0,0,0,0.04)}
.ref-detail-row span:first-child{color:var(--slate);font-weight:500}
.ref-detail-row span:last-child{color:var(--navy);font-weight:500;text-align:right}

/* Timeline */
.ref-timeline{position:relative;padding-left:18px}
.ref-tl-item{position:relative;padding-bottom:16px;padding-left:14px}
.ref-tl-item:last-child{padding-bottom:0}
.ref-tl-item::before{content:'';position:absolute;left:-18px;top:8px;bottom:-8px;width:1px;background:var(--off2)}
.ref-tl-item:last-child::before{display:none}
.ref-tl-dot{position:absolute;left:-22px;top:4px;width:9px;height:9px;border-radius:50%;border:2px solid var(--off2);background:var(--white)}
.ref-tl-done .ref-tl-dot{border-color:var(--cyan-text);background:var(--cyan-text)}
.ref-tl-done::before{background:var(--cyan-text)}
.ref-tl-active .ref-tl-dot{border-color:var(--blue);background:var(--blue);box-shadow:0 0 0 4px rgba(11,95,216,0.15)}
.ref-tl-title{font-size:13px;font-weight:500;color:var(--navy)}
.ref-tl-date{font-size:11px;color:var(--slate);margin-top:2px}

/* Documents */
.ref-doc{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--blue);font-weight:500;padding:5px 0;cursor:pointer;transition:opacity 0.12s}
.ref-doc:hover{opacity:0.7}
.ref-doc svg{stroke:var(--blue);flex-shrink:0}

/* Table footer / pagination */
.ref-table-footer{display:flex;justify-content:space-between;align-items:center;padding:14px 0;margin-top:12px}
.ref-showing{font-size:12px;color:var(--slate)}
.ref-pager{display:flex;gap:4px}
.ref-page-btn{width:32px;height:32px;border-radius:6px;border:1px solid var(--off2);background:var(--white);font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;color:var(--slate);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.12s}
.ref-page-btn:hover{border-color:var(--blue);color:var(--blue)}
.ref-page-active{background:var(--navy);border-color:var(--navy);color:#fff}

/* Dark mode referrals */
[data-theme="dark"] .ref-kpi{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ref-kpi:hover{box-shadow:0 8px 24px rgba(0,0,0,0.3);border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .ref-kpi-val{color:#e0e4ec}
[data-theme="dark"] .ref-kpi-blue{background:rgba(75,163,255,0.1)}
[data-theme="dark"] .ref-kpi-amber{background:rgba(14,127,148,0.1)}
[data-theme="dark"] .ref-kpi-green{background:rgba(0,200,224,0.1)}
[data-theme="dark"] .ref-kpi-purple{background:rgba(75,163,255,0.1)}
[data-theme="dark"] .ref-kpi-trend-up{background:rgba(0,200,224,0.12);color:var(--cyan)}
[data-theme="dark"] .ref-kpi-trend-down{background:rgba(220,38,38,0.15)}
[data-theme="dark"] .ref-kpi-active{border-color:var(--sky)!important;box-shadow:0 8px 24px rgba(75,163,255,0.15)}
[data-theme="dark"] .ref-kpi-detail-inner{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ref-kpi-detail-title{color:#e0e4ec}
[data-theme="dark"] .ref-kpi-detail-stat{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .ref-kpi-detail-stat-val{color:#e0e4ec}
[data-theme="dark"] .ref-kpi-breakdown-row{color:#e0e4ec;border-bottom-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ref-pipeline{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ref-pipe-total strong{color:#e0e4ec}
[data-theme="dark"] .ref-pipe-legend-item{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ref-search{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ref-search-input{color:#e0e4ec}
[data-theme="dark"] .ref-filter-pill{background:#141e30;border-color:rgba(255,255,255,0.06);color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ref-filter-pill:hover{border-color:rgba(255,255,255,0.15);color:#fff}
[data-theme="dark"] .ref-fp-active{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.1);color:#fff}
[data-theme="dark"] .ref-table-wrap{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ref-table-head{background:rgba(255,255,255,0.03);border-bottom-color:rgba(255,255,255,0.06);color:rgba(255,255,255,0.4)}
[data-theme="dark"] .ref-row{border-bottom-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .ref-row:hover{background:rgba(255,255,255,0.02)}
[data-theme="dark"] .ref-row{color:#e0e4ec}
[data-theme="dark"] .ref-name{color:#fff}
[data-theme="dark"] .ref-act{background:#1a2234;border-color:rgba(255,255,255,0.06);color:rgba(255,255,255,0.4)}
[data-theme="dark"] .ref-act:hover{border-color:var(--sky);color:var(--sky)}
[data-theme="dark"] .ref-detail{background:rgba(255,255,255,0.02);border-top-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ref-detail-row{border-bottom-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .ref-detail-row span:last-child{color:#e0e4ec}
[data-theme="dark"] .ref-tl-title{color:#e0e4ec}
[data-theme="dark"] .ref-tl-dot{background:#141e30;border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .ref-tl-done .ref-tl-dot{background:var(--cyan-text);border-color:var(--cyan-text)}
[data-theme="dark"] .ref-tl-item::before{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .ref-tl-done::before{background:var(--cyan-text)}
[data-theme="dark"] .ref-page-btn{background:#1a2234;border-color:rgba(255,255,255,0.06);color:rgba(255,255,255,0.4)}
[data-theme="dark"] .ref-page-active{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.1);color:#fff}

/* Mobile referrals */
@media(max-width:768px){
  /* KPI row — horizontal scroll */
  .ref-kpi-row{
    display:flex!important;overflow-x:auto;-webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory;gap:10px;padding-bottom:8px;flex-wrap:nowrap
  }
  .ref-kpi-row .ref-kpi{min-width:200px;flex-shrink:0;scroll-snap-align:start}

  /* Pipeline — simplified */
  .ref-pipeline .ref-pipe-legend{display:none}
  .ref-pipe-seg{font-size:0;min-width:24px}.ref-pipe-seg span{font-size:10px}

  /* Toolbar — search above filters */
  .ref-toolbar{flex-direction:column;gap:10px}
  .ref-toolbar .ref-search-wrap{width:100%}
  .ref-toolbar .ref-search-wrap input{width:100%}
  .ref-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .ref-filter-pill{white-space:nowrap;flex-shrink:0;font-size:11px;padding:5px 12px}

  /* Table header — hide */
  .ref-table-head{display:none!important}

  /* Referral rows — card layout */
  .ref-row{
    display:flex!important;flex-wrap:wrap;align-items:center;
    gap:6px;padding:14px 16px;position:relative;
    grid-template-columns:none
  }
  /* Show: client name + avatar */
  .ref-td-client{flex:1;min-width:0;gap:10px}
  .ref-td-client .ref-name{font-size:15px;font-weight:600}
  .ref-td-client .ref-cb{display:none}
  /* Show: status badge — same row */
  .ref-row>.ref-td:nth-child(3){order:2}
  /* Show: action buttons */
  .ref-row>.ref-td-acts{order:3;margin-left:auto}
  .ref-act{width:36px;height:36px;border-radius:8px}
  /* Hide: submitted date, tax debt, share, rep, last activity */
  .ref-row>.ref-td:nth-child(2),
  .ref-row>.ref-td:nth-child(4),
  .ref-row>.ref-td:nth-child(5),
  .ref-row>.ref-td:nth-child(6),
  .ref-row>.ref-td:nth-child(7){display:none}
  /* Chevron indicator */
  .ref-row::after{
    content:'';position:absolute;right:16px;top:50%;transform:translateY(-50%) rotate(0deg);
    width:8px;height:8px;border-right:2px solid var(--slate);border-bottom:2px solid var(--slate);
    transform:translateY(-50%) rotate(-45deg);transition:transform 0.2s;opacity:0.4
  }
  .ref-row-open::after{transform:translateY(-50%) rotate(45deg)}
  .ref-row-open{background:rgba(11,95,216,0.02)}
  [data-theme="dark"] .ref-row-open{background:rgba(255,255,255,0.02)}

  /* Detail panel — single column stacked */
  .ref-detail{padding:0 16px 16px}
  .ref-detail-grid{grid-template-columns:1fr!important;gap:20px}
  .ref-detail-row{flex-direction:column;align-items:flex-start;gap:2px}
  .ref-detail-row span:first-child{font-size:11px;text-transform:uppercase;letter-spacing:0.05em}
  .ref-detail-row span:last-child{font-size:14px;text-align:left}

  /* Bulk bar — hide on mobile */
  .ref-bulk-bar{display:none!important}

  /* Pager — larger touch targets */
  .ref-pager .ref-page-btn{min-width:36px;min-height:36px;font-size:13px}
}

body.portal-mode #site-nav,
body.portal-mode footer.ft,
body.portal-mode .ytd-bar,
body.portal-mode #scroll-progress{display:none!important}
body.portal-mode{padding-bottom:0}
/* Landing page viewer: hide all site chrome */
body.lp-active #site-nav,
body.lp-active footer.ft,
body.lp-active .ytd-bar,
body.lp-active #scroll-progress,
body.lp-active .rp-fab,
body.lp-active .jazz-bar{display:none!important}
body.lp-active{overflow:hidden}
.page-portal{padding-top:0!important}
.portal-layout{display:flex;min-height:100vh}

/* Brand upload */
.portal-brand-upload{padding:0 16px 12px}
.portal-brand-drop{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px dashed rgba(255,255,255,0.12);border-radius:10px;cursor:pointer;transition:border-color 0.2s,background 0.2s}
.portal-brand-drop:hover{border-color:rgba(255,255,255,0.25);background:rgba(255,255,255,0.04)}
.portal-brand-loaded{border-style:solid;border-color:rgba(255,255,255,0.08)}
.portal-brand-preview{width:36px;height:36px;border-radius:6px;background:rgba(255,255,255,0.06);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;color:rgba(255,255,255,0.3)}
.portal-brand-text{font-size:11px;color:rgba(255,255,255,0.4);font-weight:500}

/* Color picker popup */
.portal-cpicker{padding:10px 12px;margin-top:8px;background:rgba(255,255,255,0.06);border-radius:8px;border:1px solid rgba(255,255,255,0.1)}
.portal-cpicker-title{font-size:11px;font-weight:600;color:rgba(255,255,255,0.5);margin-bottom:8px}
.portal-cpicker-swatches{display:flex;gap:8px}
.portal-cpicker-swatch{width:36px;height:36px;border-radius:8px;border:2px solid rgba(255,255,255,0.2);cursor:pointer;transition:transform 0.15s,border-color 0.15s}
.portal-cpicker-swatch:hover{transform:scale(1.12);border-color:#fff}

/* Branded state — greyscale sidebar + accent color on text */
.portal-branded .portal-sidebar{background:#f0f1f3;border-right-color:#e0e2e6!important}
.portal-branded .portal-nav-heading{color:var(--pa)!important;opacity:0.7}
.portal-branded .portal-nav-item{color:var(--pa);position:relative}
.portal-branded .portal-nav-item svg{stroke:var(--pa);opacity:0.6}
.portal-branded .portal-nav-item:hover{background:rgba(var(--pa-rgb),0.06);color:var(--pa)}
.portal-branded .portal-nav-item:hover svg{opacity:1}
.portal-branded .pni-active{background:rgba(var(--pa-rgb),0.1)!important;color:var(--pa)!important;font-weight:600}
.portal-branded .pni-active svg{stroke:var(--pa)!important;opacity:1}
.portal-branded .pni-active::before{content:'';position:absolute;left:0;top:4px;bottom:4px;width:3px;border-radius:0 3px 3px 0;background:var(--pa)}
.portal-branded .portal-logo-label{color:var(--pa);opacity:0.4}
.portal-branded .portal-brand-text{color:rgba(0,0,0,0.4)}
.portal-branded .portal-brand-drop{border-color:rgba(0,0,0,0.1)}
.portal-branded .portal-brand-drop:hover{border-color:rgba(0,0,0,0.2);background:rgba(0,0,0,0.02)}
.portal-branded .portal-brand-preview{background:rgba(0,0,0,0.04);color:rgba(0,0,0,0.3)}
.portal-branded .portal-avatar{background:var(--pa)!important}
.portal-branded .portal-topbar{border-bottom:1px solid rgba(var(--pa-rgb),0.15)!important}
.portal-branded .portal-sidebar-footer{border-top-color:rgba(0,0,0,0.08)!important}
.portal-branded .portal-sidebar-footer .portal-nav-item{color:rgba(0,0,0,0.4)}
.portal-branded .portal-sidebar-footer .portal-nav-item svg{stroke:rgba(0,0,0,0.35)}
.portal-branded .portal-cpicker{background:rgba(0,0,0,0.04);border-color:rgba(0,0,0,0.08)}
.portal-branded .portal-cpicker-title{color:rgba(0,0,0,0.4)}
.portal-branded .portal-cpicker-swatch{border-color:rgba(0,0,0,0.15)}
.portal-branded .portal-cpicker-swatch:hover{border-color:rgba(0,0,0,0.5)}

/* Sidebar */
.portal-sidebar{width:240px;flex-shrink:0;background:#07111f;border-right:1px solid rgba(255,255,255,0.06);display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;z-index:100;overflow-y:auto}
.portal-logo{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:20px 20px 16px}
.portal-logo img{height:18px}
.portal-logo-dark{display:none}
.portal-branded .portal-logo-white{display:none}
.portal-branded .portal-logo-dark{display:block}
.portal-logo-label{font-size:11px;font-weight:700;letter-spacing:0.12em;color:rgba(255,255,255,0.4)}
.portal-nav{flex:1;padding:8px 12px;display:flex;flex-direction:column;gap:4px}
.tour-nav-onboarding{margin-bottom:8px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,0.06)}
.portal-nav-group{margin-bottom:16px}
.portal-nav-heading{font-size:10px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.3);padding:8px 12px 4px;margin-bottom:2px}
.portal-nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;font-size:13px;font-weight:500;color:rgba(255,255,255,0.55);cursor:pointer;transition:background 0.15s,color 0.15s;text-decoration:none}
.portal-nav-item:hover{background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.85)}
.portal-nav-item svg{stroke:currentColor;flex-shrink:0}
.pni-active{background:rgba(255,255,255,0.06);color:#fff}
.pni-active svg{stroke:#fff}
/* Nav badges */
.pni-badge{margin-left:auto;font-size:10px;font-weight:700;letter-spacing:0.04em;padding:2px 7px;border-radius:4px;line-height:1.4;flex-shrink:0;background:rgba(11,95,216,0.12);color:var(--blue)}
.pni-badge-red{background:rgba(220,38,38,0.15);color:#ef4444}
.pni-badge-green{background:rgba(16,185,129,0.15);color:#10b981}

/* Accent nav text + icon colors (default / non-branded mode only) */
.portal-nav-dashboard{background:linear-gradient(135deg,#0B5FD8,#00E5CC);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600}
.portal-nav-dashboard svg{stroke:#0B5FD8}

.portal-nav-referrals{background:linear-gradient(135deg,#E84400,#FF6B00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600}
.portal-nav-referrals svg{stroke:#E84400}

.portal-nav-earnings{background:linear-gradient(135deg,#059669,#06D6A0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600}
.portal-nav-earnings svg{stroke:#059669}

/* Gradient nav hover — show white text instead of invisible */
.portal-nav-dashboard:hover,
.portal-nav-referrals:hover,
.portal-nav-earnings:hover{-webkit-text-fill-color:#fff;background:none}
.portal-nav-dashboard:hover svg,
.portal-nav-referrals:hover svg,
.portal-nav-earnings:hover svg{stroke:#fff}

/* Disable gradient text in branded mode — use brand color */
.portal-branded .portal-nav-dashboard,
.portal-branded .portal-nav-referrals,
.portal-branded .portal-nav-earnings{background:none;-webkit-background-clip:unset;-webkit-text-fill-color:unset;background-clip:unset;font-weight:500;color:var(--pa)}
.portal-branded .portal-nav-dashboard svg,
.portal-branded .portal-nav-referrals svg,
.portal-branded .portal-nav-earnings svg{stroke:var(--pa);opacity:0.6}

.portal-sidebar-footer{padding:12px;border-top:1px solid rgba(255,255,255,0.06)}

/* Main content area */
.portal-main{flex:1;margin-left:240px;background:var(--white);min-height:100vh}

/* Top bar */
.portal-topbar{display:flex;align-items:center;gap:16px;padding:12px 28px;border-bottom:1px solid var(--off2);background:#fafbfd}
.portal-hamburger{display:none;background:none;border:none;cursor:pointer;padding:4px;color:var(--slate)}
.portal-topbar-left{display:flex;align-items:center;gap:10px}
.portal-topbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}
.portal-demo-badge{font-size:11px;font-weight:600;letter-spacing:0.08em;color:var(--slate);background:var(--off);border:1px solid var(--off2);padding:4px 10px;border-radius:6px}

/* Portal Mode Switcher */
.pm-switcher{display:flex;gap:4px;border:1px solid var(--off2);border-radius:22px;padding:3px;background:var(--off)}
.pm-btn{font-size:11px;font-weight:600;letter-spacing:0.04em;padding:5px 14px;border:none;background:transparent;color:var(--slate);cursor:pointer;transition:all 0.2s ease;white-space:nowrap;border-radius:18px;font-family:'DM Sans',sans-serif}
.pm-btn:hover{color:var(--navy);background:rgba(11,95,216,0.06)}
.pm-btn-active{background:var(--blue)!important;color:#fff!important;box-shadow:0 2px 8px rgba(11,95,216,0.25)}
[data-theme="dark"] .pm-switcher{background:rgba(255,255,255,0.05);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pm-btn{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .pm-btn:hover{color:rgba(255,255,255,0.7);background:rgba(255,255,255,0.06)}
[data-theme="dark"] .pm-btn-active{background:var(--blue)!important;color:#fff!important;box-shadow:0 2px 8px rgba(11,95,216,0.4)}

/* Labs mode: hide portal-only nav items */
body.labs-mode .portal-nav-item:not([data-labs]):not([data-shared]){display:none}
body.labs-mode .portal-nav-group[data-portal-only]{display:none}
/* Portal mode (default): hide labs-only nav items */
body:not(.labs-mode):not(.full-mode) .portal-nav-item[data-labs]{display:none}
body:not(.labs-mode):not(.full-mode) .portal-nav-group[data-labs-only]{display:none}
/* Full mode: show everything (no extra rules needed) */
.portal-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--cyan));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:12px}

/* Sections */
.portal-section{display:none;padding:32px 28px 180px;position:relative}
.portal-sec-active{display:block;animation:secFadeIn 0.25s ease}
.portal-sec-exit{opacity:0;transition:opacity 0.12s ease}
.portal-sec-enter{animation:secFadeIn 0.25s ease}
@keyframes secFadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

/* Scroll-to-top */
.stt-btn{position:fixed;bottom:80px;right:24px;width:40px;height:40px;border-radius:50%;border:1px solid var(--off2);background:var(--white);box-shadow:0 2px 12px rgba(0,0,0,0.08);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--slate);opacity:0;pointer-events:none;transition:all 0.25s ease;z-index:999}
.stt-btn:hover{color:var(--blue);border-color:var(--blue);box-shadow:0 4px 16px rgba(11,95,216,0.12)}
.stt-visible{opacity:1;pointer-events:auto}

.portal-sec-header{margin-bottom:20px}
.portal-sec-title{font-family:'DM Serif Display',serif;font-size:26px;color:var(--navy);margin-bottom:6px;letter-spacing:-0.01em}
.portal-sec-desc{font-size:14px;color:var(--body);line-height:1.6;margin-bottom:0}
.portal-placeholder{padding:64px;text-align:center;font-size:14px;color:var(--slate);background:var(--off);border:1px dashed var(--off2);border-radius:12px}

/* Dark mode */
[data-theme="dark"] .portal-sidebar{background:#060d18;border-right-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .portal-main{background:#0c1220}
[data-theme="dark"] .portal-topbar{background:#0f1724;border-bottom-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .portal-demo-badge{background:rgba(255,255,255,0.05);border-color:rgba(255,255,255,0.08);color:rgba(255,255,255,0.4)}
/* Dark mode branded label for labs/full modes */
[data-theme="dark"] .portal-logo-label{color:rgba(255,255,255,0.3)}
[data-theme="dark"] .portal-sec-title{color:#e0e4ec}
[data-theme="dark"] .portal-branded .portal-logo-white{display:block}
[data-theme="dark"] .portal-branded .portal-logo-dark{display:none}
[data-theme="dark"] .portal-branded .portal-sidebar{background:#161719;border-right-color:rgba(255,255,255,0.06)!important}
[data-theme="dark"] .portal-branded .portal-nav-item{color:var(--pa)}
[data-theme="dark"] .portal-branded .portal-nav-item svg{stroke:var(--pa)}
[data-theme="dark"] .portal-branded .portal-nav-item:hover{background:rgba(var(--pa-rgb),0.08)}
[data-theme="dark"] .portal-branded .portal-logo-label{color:var(--pa);opacity:0.3}
[data-theme="dark"] .portal-branded .portal-brand-text{color:rgba(255,255,255,0.3)}
[data-theme="dark"] .portal-branded .portal-brand-drop{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .portal-branded .portal-brand-preview{background:rgba(255,255,255,0.05)}
[data-theme="dark"] .portal-branded .portal-sidebar-footer{border-top-color:rgba(255,255,255,0.06)!important}
[data-theme="dark"] .portal-branded .portal-sidebar-footer .portal-nav-item{color:rgba(255,255,255,0.35)}
[data-theme="dark"] .pni-badge-red{background:rgba(239,68,68,0.12);color:#f87171}
[data-theme="dark"] .pni-badge-green{background:rgba(16,185,129,0.12);color:#34d399}
[data-theme="dark"] .portal-branded .portal-sec-title{color:#e0e4ec}
[data-theme="dark"] .portal-sec-desc{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .portal-placeholder{background:rgba(255,255,255,0.03);border-color:rgba(255,255,255,0.06);color:rgba(255,255,255,0.35)}
[data-theme="dark"] .portal-toast{background:#1a2436;color:#e0e4ec;border-color:rgba(255,255,255,0.08)}

/* ── EARNINGS SECTION ── */
.earn-period-pills{display:flex;gap:4px;background:var(--off);border-radius:8px;padding:3px}
.earn-period{background:none;border:none;padding:6px 14px;border-radius:6px;font-size:12px;font-weight:600;color:var(--slate);cursor:pointer;transition:all 0.15s;white-space:nowrap}
.earn-period-active{background:var(--white);color:var(--navy);box-shadow:0 1px 3px rgba(0,0,0,0.08)}
.earn-export{display:flex;align-items:center;gap:6px;background:var(--white);border:1px solid var(--off2);border-radius:8px;padding:7px 14px;font-size:12px;font-weight:600;color:var(--navy);cursor:pointer;transition:all 0.15s}
.earn-export:hover{border-color:var(--blue);color:var(--blue)}

.earn-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}
.earn-kpi{display:flex;align-items:center;gap:14px;background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:18px 20px;position:relative}
.earn-kpi-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.earn-kpi-green{background:rgba(14,127,148,0.08)}
.earn-kpi-green svg{stroke:var(--cyan-text)}
.earn-kpi-blue{background:rgba(11,95,216,0.08)}
.earn-kpi-blue svg{stroke:var(--blue)}
.earn-kpi-purple{background:rgba(0,200,224,0.08)}
.earn-kpi-purple svg{stroke:var(--cyan-text)}
.earn-kpi-amber{background:rgba(14,127,148,0.08)}
.earn-kpi-amber svg{stroke:var(--cyan-text)}
.earn-kpi-val{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy);line-height:1.2}
.earn-kpi-label{font-size:12px;color:var(--slate);margin-top:2px}
.earn-kpi-trend{position:absolute;top:14px;right:16px;font-size:11px;font-weight:700;padding:2px 8px;border-radius:20px}
.earn-kpi-up{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.earn-kpi-down{background:rgba(220,38,38,0.08);color:#DC2626}
.earn-kpi-subtext{position:absolute;top:16px;right:16px;font-size:11px;color:var(--slate)}

.earn-chart-wrap{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px;margin-bottom:24px}
.earn-chart-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:20px}
.earn-chart{display:flex;gap:0;height:200px}
.earn-chart-y{display:flex;flex-direction:column;justify-content:space-between;padding-right:12px;font-size:11px;color:var(--slate);min-width:32px;text-align:right}
.earn-chart-bars{display:flex;gap:12px;flex:1;align-items:flex-end;border-left:1px solid var(--off2);border-bottom:1px solid var(--off2);padding:0 16px;position:relative}
.earn-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;height:100%;justify-content:flex-end}
.earn-bar{width:100%;max-width:56px;background:linear-gradient(180deg,var(--blue),rgba(11,95,216,0.7));border-radius:6px 6px 0 0;position:relative;transition:height 0.6s cubic-bezier(0.22,1,0.36,1);min-height:4px}
.earn-bar:hover{filter:brightness(1.1)}
.earn-bar-val{position:absolute;top:-22px;left:50%;transform:translateX(-50%);font-size:10px;font-weight:700;color:var(--navy);white-space:nowrap;opacity:0;transition:opacity 0.15s}
.earn-bar:hover .earn-bar-val{opacity:1}
.earn-bar-best{background:linear-gradient(180deg,var(--cyan-text),rgba(14,127,148,0.7))}
.earn-bar-current{background:linear-gradient(180deg,var(--blue),rgba(11,95,216,0.4));border:1px dashed rgba(11,95,216,0.3);border-bottom:none}
.earn-bar-label{font-size:11px;color:var(--slate);font-weight:600}

.earn-table-wrap{background:var(--white);border:1px solid var(--off2);border-radius:12px;overflow:hidden}
.earn-table-title{font-size:14px;font-weight:700;color:var(--navy);padding:20px 20px 0}
.earn-table-head{display:grid;grid-template-columns:2fr 1.3fr 0.9fr 0.9fr 0.9fr 0.8fr;gap:8px;padding:14px 20px;font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);border-bottom:1px solid var(--off2);margin-top:12px}
.earn-table-row{display:grid;grid-template-columns:2fr 1.3fr 0.9fr 0.9fr 0.9fr 0.8fr;gap:8px;padding:14px 20px;align-items:center;font-size:13px;color:var(--navy);border-bottom:1px solid var(--off2);transition:background 0.12s}
.earn-table-row:last-child{border-bottom:none}
.earn-table-row:hover{background:rgba(11,95,216,0.015)}
.earn-td-client{display:flex;align-items:center;gap:10px;font-weight:600}
.earn-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;font-size:10px;font-weight:700;flex-shrink:0}
.earn-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}
.earn-b-paid{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.earn-b-pending{background:rgba(11,95,216,0.08);color:var(--blue)}
.earn-b-investigation{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.earn-b-new{background:rgba(75,163,255,0.08);color:var(--sky)}

/* Earnings dark mode */
[data-theme="dark"] .earn-period-pills{background:#141e30}
[data-theme="dark"] .earn-period{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .earn-period-active{background:rgba(255,255,255,0.1);color:#e0e4ec}
[data-theme="dark"] .earn-export{background:#141e30;border-color:rgba(255,255,255,0.06);color:#e0e4ec}
[data-theme="dark"] .earn-kpi{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .earn-kpi-val{color:#e0e4ec}
[data-theme="dark"] .earn-kpi-green{background:rgba(14,127,148,0.12)}
[data-theme="dark"] .earn-kpi-blue{background:rgba(75,163,255,0.1)}
[data-theme="dark"] .earn-kpi-purple{background:rgba(0,200,224,0.1)}
[data-theme="dark"] .earn-kpi-amber{background:rgba(14,127,148,0.1)}
[data-theme="dark"] .earn-chart-wrap{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .earn-chart-title{color:#e0e4ec}
[data-theme="dark"] .earn-chart-y{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .earn-chart-bars{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .earn-bar-val{color:#e0e4ec}
[data-theme="dark"] .earn-bar-label{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .earn-table-wrap{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .earn-table-title{color:#e0e4ec}
[data-theme="dark"] .earn-table-head{color:rgba(255,255,255,0.4);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .earn-table-row{color:#e0e4ec;border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .earn-table-row:hover{background:rgba(75,163,255,0.03)}

/* Earnings mobile */
@media(max-width:768px){
  .earn-period-pills{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}
  .earn-period{white-space:nowrap;flex-shrink:0}
  .earn-kpi-row{
    display:flex!important;overflow-x:auto;-webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory;gap:10px;padding-bottom:8px;flex-wrap:nowrap
  }
  .earn-kpi-row .earn-kpi{min-width:180px;flex-shrink:0;scroll-snap-align:start}
  .earn-chart-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .earn-chart-bars{gap:6px;padding:0 8px;min-width:320px}
  .earn-chart-bars .earn-bar{min-width:20px}
  .earn-table-head,.earn-table-row{grid-template-columns:1.8fr 1fr 0.8fr;font-size:12px}
  .earn-table-head>:nth-child(4),.earn-table-head>:nth-child(5),.earn-table-head>:nth-child(6),
  .earn-table-row>:nth-child(4),.earn-table-row>:nth-child(5),.earn-table-row>:nth-child(6){display:none}
  .earn-td-client .earn-avatar{width:28px;height:28px;font-size:9px}
}

/* ── PAYOUTS SECTION ── */
.pay-top-row{display:grid;grid-template-columns:1.1fr 0.9fr;gap:20px;margin-bottom:24px}
.pay-next{background:linear-gradient(135deg,var(--navy),var(--navy2));border-radius:14px;padding:32px;color:white;position:relative;overflow:hidden}
.pay-next::after{content:'';position:absolute;top:-40px;right:-40px;width:160px;height:160px;border-radius:50%;background:rgba(75,163,255,0.06)}
.pay-next-label{font-size:11px;text-transform:uppercase;letter-spacing:0.12em;color:var(--sky);margin-bottom:10px;font-weight:700}
.pay-next-amount{font-family:'DM Serif Display',serif;font-size:40px;margin-bottom:18px;line-height:1;letter-spacing:-0.02em}
.pay-next-meta{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}
.pay-next-detail{display:flex;align-items:center;gap:8px;font-size:13px;color:rgba(255,255,255,0.7)}
.pay-next-detail svg{color:var(--sky);opacity:0.8}
.pay-next-countdown{display:inline-block;background:rgba(255,255,255,0.12);padding:6px 16px;border-radius:20px;font-size:12px;font-weight:700;color:#fff}

.pay-method{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:32px}
.pay-method-label{font-size:11px;text-transform:uppercase;letter-spacing:0.12em;color:var(--slate);margin-bottom:18px;font-weight:700}
.pay-method-card{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.pay-bank-icon{width:48px;height:48px;border-radius:10px;background:rgba(11,95,216,0.06);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pay-bank-icon svg{stroke:var(--blue)}
.pay-bank-name{font-size:15px;font-weight:700;color:var(--navy);margin-bottom:2px}
.pay-bank-acct{font-size:13px;color:var(--slate)}
.pay-bank-routing{font-size:12px;color:var(--mist)}
.pay-method-btn{width:100%;padding:10px;border:1px solid var(--off2);border-radius:8px;background:var(--off);font-size:13px;font-weight:600;color:var(--navy);cursor:pointer;transition:all 0.15s}
.pay-method-btn:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.03)}

.pay-schedule-notice{display:flex;align-items:center;gap:12px;background:rgba(11,95,216,0.04);border:1px solid rgba(11,95,216,0.08);border-radius:12px;padding:16px 20px;margin-bottom:28px;font-size:13px;color:var(--body);line-height:1.7}
.pay-schedule-notice svg{flex-shrink:0;stroke:var(--blue)}
.pay-schedule-notice strong{font-weight:700}

.pay-ledger-wrap{background:var(--white);border:1px solid var(--off2);border-radius:14px;overflow:hidden;margin-bottom:28px}
.pay-ledger-header{display:flex;align-items:center;justify-content:space-between;padding:22px 22px 0;flex-wrap:wrap;gap:12px}
.pay-ledger-title{font-family:'DM Serif Display',serif;font-size:17px;font-weight:700;color:var(--navy);padding:0}
.pay-ledger-head{display:grid;grid-template-columns:1fr 1fr 1.2fr 1.3fr 0.7fr 0.8fr;gap:8px;padding:14px 22px;font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--slate);border-bottom:1px solid var(--off2);margin-top:12px}
.pay-ledger-row{display:grid;grid-template-columns:1fr 1fr 1.2fr 1.3fr 0.7fr 0.8fr;gap:8px;padding:14px 22px;align-items:center;font-size:13px;color:var(--navy);border-bottom:1px solid var(--off2);transition:background 0.12s}
.pay-ledger-row:last-child{border-bottom:none}
.pay-ledger-row:hover{background:rgba(11,95,216,0.02)}
.pay-ledger-pending{background:rgba(11,95,216,0.03);border-left:3px solid var(--blue)}
.pay-ref-id{font-size:12px;font-family:monospace;color:var(--slate)}
.pay-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}
.pay-b-complete{background:rgba(0,200,224,0.08);color:var(--cyan-text)}
.pay-b-scheduled{background:rgba(11,95,216,0.08);color:var(--blue)}

.pay-tax-docs{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:26px}
.pay-tax-title{font-family:'DM Serif Display',serif;font-size:17px;font-weight:700;color:var(--navy);margin-bottom:6px}
.pay-tax-desc{font-size:13px;color:var(--body);margin-bottom:22px}
.pay-tax-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pay-tax-card{border:1px solid var(--off2);border-radius:10px;padding:20px;text-align:center}
.pay-tax-year{font-family:'DM Serif Display',serif;font-size:28px;color:var(--navy);margin-bottom:4px}
.pay-tax-type{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--slate);margin-bottom:8px}
.pay-tax-amount{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:14px}
.pay-tax-dl{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;border:1px solid var(--blue);border-radius:6px;background:none;color:var(--blue);font-size:12px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pay-tax-dl:hover{background:var(--blue);color:white}
.pay-tax-dl:disabled{border-color:var(--off2);color:var(--mist);cursor:not-allowed}
.pay-tax-dl:disabled:hover{background:none;color:var(--mist)}
.pay-tax-card-pending{border-style:dashed;opacity:0.65}

/* Payouts dark mode */
[data-theme="dark"] .pay-next{background:linear-gradient(135deg,#0d1929,#162138)}
[data-theme="dark"] .pay-method{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .pay-bank-icon{background:rgba(75,163,255,0.1)}
[data-theme="dark"] .pay-bank-name{color:#e0e4ec}
[data-theme="dark"] .pay-bank-acct{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .pay-bank-routing{color:rgba(255,255,255,0.3)}
[data-theme="dark"] .pay-method-btn{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.06);color:#e0e4ec}
[data-theme="dark"] .pay-schedule-notice{background:rgba(75,163,255,0.06);border-color:rgba(75,163,255,0.1);color:#e0e4ec}
[data-theme="dark"] .pay-ledger-wrap{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .pay-ledger-title{color:#e0e4ec}
[data-theme="dark"] .pay-running-total{background:rgba(255,255,255,0.03)}
[data-theme="dark"] .pay-ledger-head{color:rgba(255,255,255,0.4);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .pay-ledger-row{color:#e0e4ec;border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .pay-ledger-row:hover{background:rgba(75,163,255,0.03)}
[data-theme="dark"] .pay-ledger-pending{background:rgba(75,163,255,0.04);border-left-color:rgba(75,163,255,0.4)}
[data-theme="dark"] .pay-ref-id{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .pay-tax-docs{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .pay-tax-title{color:#e0e4ec}
[data-theme="dark"] .pay-tax-desc{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .pay-tax-card{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .pay-tax-year{color:#e0e4ec}
[data-theme="dark"] .pay-tax-amount{color:#e0e4ec}
[data-theme="dark"] .pay-tax-dl{border-color:rgba(75,163,255,0.4);color:rgba(75,163,255,0.8)}
[data-theme="dark"] .pay-tax-dl:hover{background:rgba(75,163,255,0.15);color:#e0e4ec}

/* Payouts mobile */
@media(max-width:768px){
  .pay-top-row{grid-template-columns:1fr}
  .pay-next{padding:24px;border-radius:12px}
  .pay-next-amount{font-size:36px}
  .pay-next-countdown{animation:mobPulse 2s infinite}
  .pay-method{padding:20px}
  .pay-method-card{gap:12px}
  .pay-year-pills{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}
  .pay-ledger-head,.pay-ledger-row{grid-template-columns:0.9fr 0.8fr 1.2fr 0.8fr;font-size:12px}
  .pay-ledger-head>:nth-child(4),.pay-ledger-head>:nth-child(5),
  .pay-ledger-row>:nth-child(4),.pay-ledger-row>:nth-child(5){display:none}
  .pay-tax-grid{grid-template-columns:1fr}
  .pay-tax-card{padding:16px}
  .pay-tax-year{font-size:22px}
}

/* ── SUBMIT REFERRAL SECTION ── */
.sub-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:32px;padding:0 20px}
.sub-step{display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;z-index:1}
.sub-step-num{width:36px;height:36px;border-radius:50%;border:2px solid var(--off2);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--slate);background:var(--white);transition:all 0.25s}
.sub-step-label{font-size:11px;font-weight:600;color:var(--slate);white-space:nowrap;transition:color 0.25s}
.sub-step-active .sub-step-num{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.06);box-shadow:0 0 0 4px rgba(11,95,216,0.08)}
.sub-step-active .sub-step-label{color:var(--blue)}
.sub-step-done .sub-step-num{border-color:var(--cyan-text);background:var(--cyan-text);color:white}
.sub-step-done .sub-step-label{color:var(--cyan-text)}
.sub-step-line{flex:1;height:2px;background:var(--off2);position:relative;margin:0 8px;margin-bottom:20px}
.sub-step-fill{position:absolute;top:0;left:0;height:100%;width:0;background:var(--cyan-text);transition:width 0.35s ease;border-radius:2px}

.sub-form-wrap{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:32px;margin-bottom:20px}
.sub-panel{display:none}
.sub-panel-active{display:block;animation:subFadeIn 0.3s ease}
@keyframes subFadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.sub-panel-title{font-size:18px;font-weight:700;color:var(--navy);margin-bottom:6px}
.sub-panel-desc{font-size:13px;color:var(--slate);margin-bottom:20px;line-height:1.6}

.sub-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}
.sub-field-full{grid-column:1/-1}
.sub-label{display:block;font-size:12px;font-weight:600;color:var(--navy);margin-bottom:6px}
.sub-input{width:100%;padding:10px 14px;border:1px solid var(--off2);border-radius:8px;font-size:14px;color:var(--navy);background:var(--white);transition:border-color 0.15s;outline:none;font-family:inherit;box-sizing:border-box}
.sub-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.08)}
.sub-input::placeholder{color:var(--mist)}
.sub-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236B7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}
.sub-input-prefix{position:relative;display:flex;align-items:center}
.sub-input-prefix span{position:absolute;left:14px;font-size:14px;font-weight:600;color:var(--slate);pointer-events:none}
.sub-input-prefix .sub-input{padding-left:28px}

.sub-checkboxes{display:flex;flex-wrap:wrap;gap:8px}
.sub-check{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--navy);cursor:pointer;padding:6px 12px;border:1px solid var(--off2);border-radius:6px;transition:all 0.15s}
.sub-check:hover{border-color:var(--blue);background:rgba(11,95,216,0.02)}
.sub-check input[type="checkbox"]{accent-color:var(--blue)}
.sub-textarea{width:100%;padding:10px 14px;border:1px solid var(--off2);border-radius:8px;font-size:14px;color:var(--navy);background:var(--white);font-family:inherit;resize:vertical;outline:none;transition:border-color 0.15s;box-sizing:border-box}
.sub-textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.08)}

.sub-upload-zone{border:2px dashed var(--off2);border-radius:12px;padding:40px;text-align:center;cursor:pointer;transition:all 0.2s;margin-bottom:16px}
.sub-upload-zone:hover{border-color:var(--blue);background:rgba(11,95,216,0.02)}
.sub-upload-icon{margin-bottom:12px}
.sub-upload-icon svg{stroke:var(--mist)}
.sub-upload-text{font-size:14px;color:var(--navy);margin-bottom:4px}
.sub-upload-browse{color:var(--blue);font-weight:600;text-decoration:underline}
.sub-upload-hint{font-size:12px;color:var(--mist)}
.sub-file-list{display:flex;flex-direction:column;gap:8px}
.sub-file-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--off);border-radius:8px;font-size:13px}
.sub-file-item svg{stroke:var(--blue);flex-shrink:0}
.sub-file-name{font-weight:600;color:var(--navy);flex:1}
.sub-file-size{color:var(--mist);font-size:12px}
.sub-file-remove{background:none;border:none;color:#DC2626;font-size:12px;font-weight:600;cursor:pointer;padding:2px 8px;border-radius:4px;transition:background 0.15s}
.sub-file-remove:hover{background:rgba(220,38,38,0.06)}

.sub-review{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}
.sub-review-section{border:1px solid var(--off2);border-radius:10px;padding:20px}
.sub-review-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--slate);margin-bottom:12px}
.sub-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sub-review-item{font-size:13px;color:var(--slate)}
.sub-review-item span{display:block;margin-bottom:2px}
.sub-review-item strong{color:var(--navy);font-size:14px}
.sub-review-file{font-size:13px;color:var(--navy);font-weight:600}
.sub-consent{margin-top:8px}
.sub-consent .sub-check{border:none;padding:0;font-size:13px;line-height:1.5;color:var(--slate)}

.sub-nav{display:flex;justify-content:space-between;align-items:center}
.sub-btn-back{background:none;border:1px solid var(--off2);padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;color:var(--navy);cursor:pointer;transition:all 0.15s}
.sub-btn-back:hover{border-color:var(--navy)}
.sub-btn-next{background:var(--blue);border:none;padding:10px 32px;border-radius:8px;font-size:14px;font-weight:600;color:white;cursor:pointer;transition:all 0.15s}
.sub-btn-next:hover{background:var(--blue2)}
.sub-btn-submit{background:linear-gradient(135deg,var(--cyan-text),var(--teal));padding:12px 40px}
.sub-btn-submit:hover{filter:brightness(1.08)}

/* Submit dark mode */
[data-theme="dark"] .sub-step-num{background:#141e30;border-color:rgba(255,255,255,0.1);color:rgba(255,255,255,0.5)}
[data-theme="dark"] .sub-step-label{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .sub-step-active .sub-step-num{background:rgba(75,163,255,0.1);border-color:rgba(75,163,255,0.4);color:rgba(75,163,255,0.9)}
[data-theme="dark"] .sub-step-active .sub-step-label{color:rgba(75,163,255,0.8)}
[data-theme="dark"] .sub-step-line{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .sub-form-wrap{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .sub-panel-title{color:#e0e4ec}
[data-theme="dark"] .sub-panel-desc{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .sub-label{color:#e0e4ec}
[data-theme="dark"] .sub-input{background:#0d1929;border-color:rgba(255,255,255,0.08);color:#e0e4ec}
[data-theme="dark"] .sub-input:focus{border-color:rgba(75,163,255,0.5);box-shadow:0 0 0 3px rgba(75,163,255,0.1)}
[data-theme="dark"] .sub-input::placeholder{color:rgba(255,255,255,0.25)}
[data-theme="dark"] .sub-check{border-color:rgba(255,255,255,0.08);color:#e0e4ec}
[data-theme="dark"] .sub-check:hover{border-color:rgba(75,163,255,0.3);background:rgba(75,163,255,0.04)}
[data-theme="dark"] .sub-textarea{background:#0d1929;border-color:rgba(255,255,255,0.08);color:#e0e4ec}
[data-theme="dark"] .sub-upload-zone{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .sub-upload-zone:hover{border-color:rgba(75,163,255,0.3);background:rgba(75,163,255,0.04)}
[data-theme="dark"] .sub-upload-text{color:#e0e4ec}
[data-theme="dark"] .sub-file-item{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .sub-file-name{color:#e0e4ec}
[data-theme="dark"] .sub-review-section{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .sub-review-item strong{color:#e0e4ec}
[data-theme="dark"] .sub-review-file{color:#e0e4ec}
[data-theme="dark"] .sub-consent .sub-check{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .sub-btn-back{border-color:rgba(255,255,255,0.1);color:#e0e4ec}

/* Submit mobile */
@media(max-width:768px){
  .sub-field-grid{grid-template-columns:1fr}
  .sub-review-grid{grid-template-columns:1fr}
  .sub-form-wrap{padding:20px}
  .sub-steps{gap:0;padding:0}
  .sub-step-label{font-size:10px}
  .sub-step-num{width:30px;height:30px;font-size:12px}
}

/* ── DOCUMENTS SECTION ── */
.doc-upload-btn{display:flex;align-items:center;gap:6px;background:var(--blue);border:none;padding:9px 18px;border-radius:8px;font-size:13px;font-weight:600;color:white;cursor:pointer;transition:background 0.15s}
.doc-upload-btn:hover{background:var(--blue2)}

.doc-stats{display:flex;align-items:center;gap:24px;margin-bottom:20px;padding:16px 20px;background:var(--white);border:1px solid var(--off2);border-radius:10px}
.doc-stat{display:flex;align-items:center;gap:8px}
.doc-stat-val{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy)}
.doc-stat-label{font-size:12px;color:var(--slate)}
.doc-stat-sep{width:1px;height:28px;background:var(--off2)}

.doc-tabs{display:flex;gap:4px;margin-bottom:16px;background:var(--off);border-radius:8px;padding:3px;overflow-x:auto}
.doc-tab{background:none;border:none;padding:7px 16px;border-radius:6px;font-size:12px;font-weight:600;color:var(--slate);cursor:pointer;transition:all 0.15s;white-space:nowrap;display:flex;align-items:center;gap:6px}
.doc-tab-active{background:var(--white);color:var(--navy);box-shadow:0 1px 3px rgba(0,0,0,0.08)}
.doc-tab-count{background:var(--off);padding:1px 7px;border-radius:10px;font-size:10px;font-weight:700}
.doc-tab-active .doc-tab-count{background:rgba(11,95,216,0.08);color:var(--blue)}

.doc-dropzone{display:flex;align-items:center;justify-content:center;gap:10px;border:2px dashed var(--off2);border-radius:10px;padding:16px;margin-bottom:16px;font-size:13px;color:var(--mist);cursor:pointer;transition:all 0.2s}
.doc-dropzone:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.02)}
.doc-dropzone svg{flex-shrink:0}

.doc-table-wrap{background:var(--white);border:1px solid var(--off2);border-radius:12px;overflow:hidden}
.doc-table-head{display:grid;grid-template-columns:36px 2.5fr 1.2fr 1fr 0.7fr 0.7fr;gap:8px;padding:12px 20px;font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);border-bottom:1px solid var(--off2);background:var(--off)}
.doc-row{display:grid;grid-template-columns:36px 2.5fr 1.2fr 1fr 0.7fr 0.7fr;gap:8px;padding:12px 20px;align-items:center;font-size:13px;color:var(--navy);border-bottom:1px solid var(--off2);transition:background 0.12s}
.doc-row:last-child{border-bottom:none}
.doc-row:hover{background:rgba(11,95,216,0.015)}
.doc-td-check{display:flex;align-items:center}
.doc-td-check input,.doc-th-check input{accent-color:var(--blue)}
.doc-td-name{display:flex;align-items:center;gap:10px;font-weight:600;min-width:0}
.doc-td-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.doc-icon{width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.doc-icon-pdf{background:rgba(11,95,216,0.08)}
.doc-icon-pdf svg{stroke:var(--blue)}
.doc-icon-doc{background:rgba(11,95,216,0.08)}
.doc-icon-doc svg{stroke:var(--blue)}
.doc-icon-img{background:rgba(14,127,148,0.08)}
.doc-icon-img svg{stroke:var(--cyan-text)}
.doc-td-client{font-size:12px;color:var(--slate)}
.doc-td-acts{display:flex;gap:4px}
.doc-act{width:30px;height:30px;border:none;background:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.12s}
.doc-act svg{stroke:var(--slate)}
.doc-act:hover{background:var(--off)}
.doc-act:hover svg{stroke:var(--blue)}

/* Documents dark mode */
[data-theme="dark"] .doc-stats{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .doc-stat-val{color:#e0e4ec}
[data-theme="dark"] .doc-stat-sep{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .doc-tabs{background:#141e30}
[data-theme="dark"] .doc-tab{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .doc-tab-active{background:rgba(255,255,255,0.1);color:#e0e4ec}
[data-theme="dark"] .doc-tab-count{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .doc-tab-active .doc-tab-count{background:rgba(75,163,255,0.15);color:rgba(75,163,255,0.8)}
[data-theme="dark"] .doc-dropzone{border-color:rgba(255,255,255,0.08);color:rgba(255,255,255,0.3)}
[data-theme="dark"] .doc-dropzone:hover{border-color:rgba(75,163,255,0.3);color:rgba(75,163,255,0.7);background:rgba(75,163,255,0.04)}
[data-theme="dark"] .doc-table-wrap{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .doc-table-head{background:rgba(255,255,255,0.02);color:rgba(255,255,255,0.4);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .doc-row{color:#e0e4ec;border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .doc-row:hover{background:rgba(75,163,255,0.03)}
[data-theme="dark"] .doc-icon-pdf{background:rgba(11,95,216,0.12)}
[data-theme="dark"] .doc-icon-doc{background:rgba(75,163,255,0.1)}
[data-theme="dark"] .doc-td-client{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .doc-act:hover{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .doc-act svg{stroke:rgba(255,255,255,0.4)}
[data-theme="dark"] .doc-act:hover svg{stroke:rgba(75,163,255,0.8)}

/* Documents mobile */
@media(max-width:768px){
  .doc-stats{
    display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;
    gap:16px;padding:12px 16px;flex-wrap:nowrap
  }
  .doc-stat-sep{display:none}
  .doc-stats>div{white-space:nowrap;flex-shrink:0}
  .doc-table-head,.doc-row{grid-template-columns:2fr 0.8fr 0.8fr;font-size:12px}
  .doc-table-head>:nth-child(1),.doc-row>:nth-child(1),
  .doc-table-head>:nth-child(4),.doc-row>:nth-child(4),
  .doc-table-head>:nth-child(5),.doc-row>:nth-child(5),
  .doc-table-head>:nth-child(6),.doc-row>:nth-child(6){display:none}
  .doc-tabs{-webkit-overflow-scrolling:touch}
}

/* ── REVENUE CALCULATOR SECTION ── */
.calc-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.calc-sliders{display:flex;flex-direction:column;gap:24px}
.calc-slider-group{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px}
.calc-slider-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.calc-slider-label{font-size:13px;font-weight:700;color:var(--navy)}
.calc-slider-val{font-family:'DM Serif Display',serif;font-size:20px;color:var(--blue)}
.calc-range{width:100%;height:6px;-webkit-appearance:none;appearance:none;background:var(--off2);border-radius:4px;outline:none;cursor:pointer}
.calc-range::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--blue);cursor:pointer;box-shadow:0 2px 6px rgba(11,95,216,0.3)}
.calc-range::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--blue);cursor:pointer;border:none;box-shadow:0 2px 6px rgba(11,95,216,0.3)}
.calc-range-labels{display:flex;justify-content:space-between;margin-top:6px;font-size:11px;color:var(--mist)}
.calc-tier-pills{display:flex;gap:8px}
.calc-tier-pill{flex:1;padding:10px 12px;border:1.5px solid var(--off2);border-radius:20px;background:var(--white);cursor:pointer;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:var(--navy);transition:all 0.18s;text-align:center}
.calc-tier-pill:hover{border-color:var(--blue);background:rgba(11,95,216,0.04)}
.calc-tier-pill-active{border-color:var(--blue);background:linear-gradient(135deg,rgba(11,95,216,0.08),rgba(0,200,224,0.04));color:var(--blue);box-shadow:0 0 0 1px rgba(11,95,216,0.15)}
[data-theme="dark"] .calc-tier-pill{background:#141e30;border-color:rgba(255,255,255,0.1);color:#e0e4ec}
[data-theme="dark"] .calc-tier-pill:hover{border-color:rgba(75,163,255,0.4);background:rgba(11,95,216,0.12)}
[data-theme="dark"] .calc-tier-pill-active{border-color:var(--blue);background:linear-gradient(135deg,rgba(11,95,216,0.18),rgba(0,200,224,0.08));color:rgba(75,163,255,0.9);box-shadow:0 0 0 1px rgba(11,95,216,0.3)}

.calc-tier-compare{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px}
.calc-tier-title{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:14px}
.calc-tier-row{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.calc-tier-card{flex:1;border:1px solid var(--off2);border-radius:10px;padding:14px;text-align:center}
.calc-tier-current{border-color:var(--blue);background:rgba(11,95,216,0.03)}
.calc-tier-next{border-color:var(--cyan-text);background:rgba(14,127,148,0.03)}
.calc-tier-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--slate);margin-bottom:4px}
.calc-tier-name{font-family:'DM Serif Display',serif;font-size:18px;color:var(--navy);margin-bottom:2px}
.calc-tier-pct{font-size:12px;color:var(--slate);margin-bottom:8px}
.calc-tier-annual{font-size:16px;font-weight:700;color:var(--navy)}
.calc-tier-arrow{color:var(--mist);flex-shrink:0}
.calc-tier-diff{font-size:13px;color:var(--navy);text-align:center;padding:10px;background:rgba(14,127,148,0.04);border-radius:8px}
.calc-tier-diff strong{color:var(--cyan-text)}

.calc-projections{display:flex;flex-direction:column;gap:16px}
.calc-proj-card{border-radius:12px;padding:28px;text-align:center}
.calc-proj-monthly{background:linear-gradient(135deg,var(--blue),rgba(11,95,216,0.85));color:white}
.calc-proj-annual{background:linear-gradient(135deg,var(--navy),var(--navy2));color:white}
.calc-proj-3yr{background:linear-gradient(135deg,var(--cyan-text),var(--teal));color:white}
.calc-proj-label{font-size:11px;text-transform:uppercase;letter-spacing:0.1em;opacity:0.7;margin-bottom:6px;font-weight:600}
.calc-proj-amount{font-family:'DM Serif Display',serif;font-size:36px;line-height:1;margin-bottom:4px;transition:all 0.3s}
.calc-proj-sub{font-size:12px;opacity:0.6}

.calc-growth{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px}
.calc-growth-title{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:16px}
.calc-growth-bars{display:flex;flex-direction:column;gap:10px}
.calc-grow-row{display:flex;align-items:center;gap:10px}
.calc-grow-label{font-size:12px;font-weight:600;color:var(--slate);min-width:44px;text-align:right}
.calc-grow-track{flex:1;height:12px;background:var(--off);border-radius:6px;overflow:hidden}
.calc-grow-bar{height:100%;background:linear-gradient(90deg,var(--blue),rgba(11,95,216,0.7));border-radius:6px;transition:width 0.5s cubic-bezier(0.22,1,0.36,1);min-width:4px}
.calc-grow-val{font-size:12px;font-weight:700;color:var(--navy);min-width:44px}

.calc-callout{display:flex;align-items:center;gap:10px;background:rgba(11,95,216,0.06);border:1px solid rgba(11,95,216,0.12);border-radius:10px;padding:14px 18px;font-size:13px;color:var(--navy);line-height:1.5}
.calc-callout svg{stroke:var(--blue);flex-shrink:0}
.calc-callout strong{color:var(--blue)}

/* Calculator dark mode */
[data-theme="dark"] .calc-slider-group{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .calc-slider-label{color:#e0e4ec}
[data-theme="dark"] .calc-slider-val{color:rgba(75,163,255,0.9)}
[data-theme="dark"] .calc-range{background:rgba(255,255,255,0.08)}
[data-theme="dark"] .calc-range-labels{color:rgba(255,255,255,0.3)}
[data-theme="dark"] .calc-tier-compare{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .calc-tier-title{color:#e0e4ec}
[data-theme="dark"] .calc-tier-card{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .calc-tier-current{background:rgba(75,163,255,0.06);border-color:rgba(75,163,255,0.2)}
[data-theme="dark"] .calc-tier-next{background:rgba(14,127,148,0.06);border-color:rgba(14,127,148,0.2)}
[data-theme="dark"] .calc-tier-name{color:#e0e4ec}
[data-theme="dark"] .calc-tier-annual{color:#e0e4ec}
[data-theme="dark"] .calc-tier-diff{background:rgba(14,127,148,0.08);color:#e0e4ec}
[data-theme="dark"] .calc-growth{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .calc-growth-title{color:#e0e4ec}
[data-theme="dark"] .calc-grow-track{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .calc-grow-val{color:#e0e4ec}
[data-theme="dark"] .calc-callout{background:rgba(11,95,216,0.08);border-color:rgba(11,95,216,0.15);color:#e0e4ec}

/* Calculator mobile */
@media(max-width:768px){
  .calc-layout{grid-template-columns:1fr}
  .calc-tier-pills{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:6px}
  .calc-tier-pill{white-space:nowrap;flex-shrink:0;min-width:auto}
  .calc-range::-webkit-slider-thumb{width:32px;height:32px}
  .calc-range::-moz-range-thumb{width:32px;height:32px}
  .calc-tier-row{flex-direction:column}
  .calc-tier-arrow{transform:rotate(90deg)}
}

/* ── CE WEBINARS SECTION ── */
.ce-progress-row{display:flex;align-items:center;gap:28px;background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px;margin-bottom:20px}
.ce-progress-ring-wrap{position:relative;width:100px;height:100px;flex-shrink:0}
.ce-ring{width:100%;height:100%}
.ce-ring-text{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ce-ring-val{font-family:'DM Serif Display',serif;font-size:28px;color:var(--navy);line-height:1}
.ce-ring-of{font-size:11px;color:var(--slate)}
.ce-progress-info{flex:1}
.ce-progress-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:4px}
.ce-progress-stat{font-size:13px;color:var(--slate);margin-bottom:10px}
.ce-progress-bar{height:6px;background:var(--off2);border-radius:4px;overflow:hidden;margin-bottom:8px}
.ce-progress-fill{height:100%;background:linear-gradient(90deg,var(--blue),#4BA3FF);border-radius:4px;transition:width 0.5s ease}
.ce-progress-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--mist)}

.ce-filters{display:flex;gap:6px;margin-bottom:20px;overflow-x:auto;padding-bottom:4px}
.ce-filter{background:var(--off);border:none;padding:7px 16px;border-radius:20px;font-size:12px;font-weight:600;color:var(--slate);cursor:pointer;transition:all 0.15s;white-space:nowrap}
.ce-filter:hover{background:rgba(11,95,216,0.06);color:var(--blue)}
.ce-filter-active{background:var(--blue);color:white}

.ce-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px}
.ce-card{background:var(--white);border:1px solid var(--off2);border-radius:12px;overflow:hidden;transition:transform 0.2s,box-shadow 0.2s}
.ce-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.06)}
.ce-thumb{position:relative;padding-top:56.25%;overflow:hidden}
.ce-thumb-1{background:linear-gradient(135deg,#0B2545,#13315C)}
.ce-thumb-2{background:linear-gradient(135deg,#1a1a2e,#16213e)}
.ce-thumb-3{background:linear-gradient(135deg,#0d2137,#1a3a5c)}
.ce-thumb-4{background:linear-gradient(135deg,#1b2838,#2a475e)}
.ce-thumb-5{background:linear-gradient(135deg,#0f2027,#203a43)}
.ce-thumb-6{background:linear-gradient(135deg,#232526,#414345)}
.ce-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;border:2px solid rgba(255,255,255,0.6);background:rgba(255,255,255,0.12);display:flex;align-items:center;justify-content:center;transition:all 0.2s;cursor:pointer}
.ce-card:hover .ce-play{background:rgba(255,255,255,0.2);transform:translate(-50%,-50%) scale(1.08)}
.ce-badge-dur{position:absolute;top:10px;right:10px;background:rgba(0,0,0,0.6);color:white;font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px}
.ce-badge-credits{position:absolute;top:10px;left:10px;background:var(--blue);color:white;font-size:11px;font-weight:700;padding:3px 8px;border-radius:4px}
.ce-done-overlay{position:absolute;inset:0;background:rgba(14,127,148,0.4);display:flex;align-items:center;justify-content:center}
.ce-card-body{padding:16px}
.ce-cat{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;padding:3px 8px;border-radius:4px;margin-bottom:8px}
.ce-cat-resolution{background:rgba(11,95,216,0.08);color:var(--blue)}
.ce-cat-irs{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.ce-cat-ethics{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.ce-cat-federal{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.ce-cat-state{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.ce-cat-growth{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.ce-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:4px;line-height:1.4}
.ce-instructor{font-size:12px;color:var(--slate);margin-bottom:12px}
.ce-card-prog{height:4px;background:var(--off2);border-radius:3px;overflow:hidden;margin-bottom:8px}
.ce-card-prog-fill{height:100%;background:var(--blue);border-radius:3px}
.ce-card-foot{display:flex;justify-content:space-between;align-items:center}
.ce-status{font-size:11px;font-weight:600}
.ce-s-done{color:var(--cyan-text)}
.ce-s-progress{color:var(--blue)}
.ce-s-new{color:var(--slate)}
.ce-cert-btn,.ce-resume-btn,.ce-enroll-btn{background:none;border:1px solid var(--off2);padding:5px 12px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all 0.15s}
.ce-cert-btn{color:var(--cyan-text);border-color:rgba(14,127,148,0.2)}
.ce-cert-btn:hover{background:rgba(14,127,148,0.06)}
.ce-resume-btn{color:var(--blue);border-color:rgba(11,95,216,0.2)}
.ce-resume-btn:hover{background:rgba(11,95,216,0.06)}
.ce-enroll-btn{color:var(--navy);border-color:var(--off2)}
.ce-enroll-btn:hover{border-color:var(--blue);color:var(--blue)}

.ce-certs-section{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px}
.ce-certs-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:14px}
.ce-certs-grid{display:flex;flex-direction:column;gap:10px}
.ce-cert-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--off2);border-radius:10px;transition:background 0.12s}
.ce-cert-card:hover{background:rgba(11,95,216,0.015)}
.ce-cert-card svg{stroke:var(--blue);flex-shrink:0}
.ce-cert-name{font-size:13px;font-weight:600;color:var(--navy)}
.ce-cert-date{font-size:11px;color:var(--slate)}
.ce-cert-dl{margin-left:auto;background:none;border:1px solid var(--off2);padding:5px 12px;border-radius:6px;font-size:11px;font-weight:600;color:var(--blue);cursor:pointer;transition:all 0.15s}
.ce-cert-dl:hover{background:rgba(11,95,216,0.06);border-color:var(--blue)}

/* CE dark mode */
[data-theme="dark"] .ce-progress-row{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ce-ring-val{color:#e0e4ec}
[data-theme="dark"] .ce-ring circle:first-child{stroke:rgba(255,255,255,0.06)}
[data-theme="dark"] .ce-progress-title{color:#e0e4ec}
[data-theme="dark"] .ce-progress-bar{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .ce-filter{background:rgba(255,255,255,0.04);color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ce-filter:hover{background:rgba(75,163,255,0.08);color:rgba(75,163,255,0.8)}
[data-theme="dark"] .ce-card{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ce-card:hover{box-shadow:0 8px 24px rgba(0,0,0,0.2)}
[data-theme="dark"] .ce-title{color:#e0e4ec}
[data-theme="dark"] .ce-card-prog{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .ce-enroll-btn{color:#e0e4ec;border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .ce-enroll-btn:hover{color:rgba(75,163,255,0.8);border-color:rgba(75,163,255,0.3)}
[data-theme="dark"] .ce-certs-section{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ce-certs-title{color:#e0e4ec}
[data-theme="dark"] .ce-cert-card{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ce-cert-card:hover{background:rgba(75,163,255,0.03)}
[data-theme="dark"] .ce-cert-name{color:#e0e4ec}
[data-theme="dark"] .ce-cert-dl{border-color:rgba(255,255,255,0.1);color:rgba(75,163,255,0.8)}

/* CE mobile */
@media(max-width:768px){
  .ce-progress-row{flex-direction:column;text-align:center}
  .ce-progress-meta{flex-direction:column;gap:4px;align-items:center}
  .ce-grid{grid-template-columns:1fr}
  .ce-card .ce-video-wrap{position:relative;padding-top:56.25%;height:0}
  .ce-card .ce-video-wrap iframe{position:absolute;top:0;left:0;width:100%;height:100%}
}

/* ── MARKETING KIT SECTION ── */
.mk-cobrand{display:flex;align-items:flex-start;gap:12px;background:rgba(11,95,216,0.04);border:1px solid rgba(11,95,216,0.08);border-radius:10px;padding:14px 18px;margin-bottom:20px;font-size:13px;color:var(--navy);line-height:1.5}
.mk-cobrand svg{stroke:var(--blue);flex-shrink:0;margin-top:1px}
.mk-cobrand strong{display:block;margin-bottom:2px}
.mk-cobrand span{color:var(--slate)}

.mk-tabs{display:flex;gap:4px;margin-bottom:20px;background:var(--off);border-radius:22px;padding:3px;overflow-x:auto}
.mk-tab{background:none;border:none;padding:7px 16px;border-radius:18px;font-size:12px;font-weight:600;color:var(--slate);cursor:pointer;transition:all 0.15s;white-space:nowrap;font-family:'DM Sans',sans-serif}
.mk-tab-active{background:var(--white);color:var(--navy);box-shadow:0 1px 4px rgba(0,0,0,0.08)}

.mk-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.mk-card{background:var(--white);border:1px solid var(--off2);border-radius:12px;overflow:hidden;transition:transform 0.2s,box-shadow 0.2s}
.mk-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.06)}
.mk-preview{height:140px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.mk-preview-1{background:linear-gradient(135deg,#f0f4f8,#e2e8f0)}
.mk-preview-2{background:linear-gradient(135deg,#fef3c7,#fde68a)}
.mk-preview-3{background:linear-gradient(135deg,#ede9fe,#ddd6fe)}
.mk-preview-4{background:linear-gradient(135deg,#dbeafe,#bfdbfe)}
.mk-preview-5{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}
.mk-preview-6{background:linear-gradient(135deg,#ffe4e6,#fecdd3)}
.mk-preview-7{background:linear-gradient(135deg,#e0e7ff,#c7d2fe)}
.mk-preview-8{background:linear-gradient(135deg,var(--navy),var(--navy2))}
.mk-preview-lines{display:flex;flex-direction:column;gap:8px;width:60%;padding:20px}
.mk-preview-lines>div{height:6px;background:rgba(0,0,0,0.08);border-radius:3px}
.mk-preview-lines>div:last-child{width:60%}
.mk-preview-sq{width:70px;height:70px;border-radius:8px;background:rgba(0,0,0,0.06)}
.mk-preview-doc{width:50%;padding:20px}
.mk-preview-doc>div{height:5px;background:rgba(0,0,0,0.07);border-radius:3px;margin-bottom:6px}
.mk-preview-doc>div:last-child{width:40%}
.mk-preview-browser{width:75%;background:white;border-radius:6px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.08)}
.mk-preview-urlbar{height:12px;background:var(--off);border-bottom:1px solid var(--off2)}
.mk-preview-browser .mk-preview-lines{padding:10px;gap:5px}
.mk-preview-browser .mk-preview-lines>div{height:4px}
.mk-builder-icon{width:64px;height:64px;border-radius:14px;background:rgba(255,255,255,0.12);display:flex;align-items:center;justify-content:center}

.mk-card-body{padding:16px}
.mk-card-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:4px}
.mk-card-desc{font-size:12px;color:var(--slate);line-height:1.5;margin-bottom:12px}
.mk-card-foot{display:flex;justify-content:space-between;align-items:center}
.mk-format{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--mist);background:var(--off);padding:3px 8px;border-radius:4px}
.mk-dl-btn{display:flex;align-items:center;gap:5px;background:none;border:1px solid var(--off2);padding:5px 12px;border-radius:6px;font-size:11px;font-weight:600;color:var(--blue);cursor:pointer;transition:all 0.15s}
.mk-dl-btn:hover{background:rgba(11,95,216,0.06);border-color:var(--blue)}
.mk-dl-launch{background:var(--blue);color:white;border-color:var(--blue)}
.mk-dl-launch:hover{background:var(--blue2)}

/* Marketing dark mode */
[data-theme="dark"] .mk-cobrand{background:rgba(75,163,255,0.06);border-color:rgba(75,163,255,0.1);color:#e0e4ec}
[data-theme="dark"] .mk-cobrand span{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .mk-tabs{background:#141e30}
[data-theme="dark"] .mk-tab{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .mk-tab-active{background:rgba(255,255,255,0.1);color:#e0e4ec}
[data-theme="dark"] .mk-card{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .mk-card:hover{box-shadow:0 8px 24px rgba(0,0,0,0.2)}
[data-theme="dark"] .mk-preview-1,.mk-preview-2,.mk-preview-3,.mk-preview-4,.mk-preview-5,.mk-preview-6,.mk-preview-7{filter:brightness(0.7) saturate(0.7)}
[data-theme="dark"] .mk-card-title{color:#e0e4ec}
[data-theme="dark"] .mk-format{background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.4)}
[data-theme="dark"] .mk-dl-btn{border-color:rgba(255,255,255,0.1);color:rgba(75,163,255,0.8)}
[data-theme="dark"] .mk-dl-btn:hover{background:rgba(75,163,255,0.08)}

/* Marketing mobile */
@media(max-width:768px){
  .mk-grid{grid-template-columns:1fr}
  .mk-card{width:100%}
  .mk-preview{height:110px}
  .mk-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap}
  .mk-tab{white-space:nowrap;flex-shrink:0}
}

/* ── TRAINING SECTION ── */
.trn-onboard{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px;margin-bottom:24px}
.trn-onboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.trn-onboard-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:2px}
.trn-onboard-stat{font-size:13px;color:var(--slate)}
.trn-onboard-pct{font-family:'DM Serif Display',serif;font-size:28px;color:var(--cyan-text)}
.trn-onboard-bar{height:6px;background:var(--off2);border-radius:4px;overflow:hidden;margin-bottom:20px}
.trn-onboard-fill{height:100%;background:linear-gradient(90deg,var(--cyan-text),var(--teal));border-radius:4px;transition:width 0.5s ease}
.trn-checklist{display:flex;flex-direction:column;gap:12px}
.trn-check-item{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid var(--off2)}
.trn-check-item:last-child{border-bottom:none;padding-bottom:0}
.trn-check-box{width:24px;height:24px;border-radius:50%;border:2px solid var(--off2);flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-top:2px}
.trn-check-done .trn-check-box{background:var(--cyan-text);border-color:var(--cyan-text)}
.trn-check-title{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:2px}
.trn-check-done .trn-check-title{text-decoration:line-through;color:var(--slate)}
.trn-check-desc{font-size:12px;color:var(--mist);line-height:1.4}
.trn-check-done .trn-check-desc{color:var(--mist)}

.trn-modules-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:16px}
.trn-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}
.trn-mod{background:var(--white);border:1px solid var(--off2);border-radius:12px;overflow:hidden;transition:transform 0.2s,box-shadow 0.2s}
.trn-mod:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.06)}
.trn-mod-thumb{position:relative;padding-top:50%;overflow:hidden}
.trn-thumb-1{background:linear-gradient(135deg,#0B2545,#1a3a5c)}
.trn-thumb-2{background:linear-gradient(135deg,#1b2838,#2a475e)}
.trn-thumb-3{background:linear-gradient(135deg,#13315C,#0d2137)}
.trn-thumb-4{background:linear-gradient(135deg,#0f2027,#203a43)}
.trn-thumb-5{background:linear-gradient(135deg,#232526,#414345)}
.trn-thumb-6{background:linear-gradient(135deg,#1a1a2e,#16213e)}
.trn-mod-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border-radius:50%;border:2px solid rgba(255,255,255,0.5);background:rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s}
.trn-mod:hover .trn-mod-play{background:rgba(255,255,255,0.2);transform:translate(-50%,-50%) scale(1.08)}
.trn-mod-dur{position:absolute;top:8px;right:8px;background:rgba(0,0,0,0.6);color:white;font-size:10px;font-weight:600;padding:2px 7px;border-radius:4px}
.trn-mod-done-badge{position:absolute;top:8px;left:8px;width:24px;height:24px;border-radius:50%;background:var(--cyan-text);display:flex;align-items:center;justify-content:center}
.trn-mod-body{padding:14px}
.trn-mod-title{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:4px;line-height:1.4}
.trn-mod-desc{font-size:12px;color:var(--slate);line-height:1.5;margin-bottom:8px}
.trn-mod-status{font-size:11px;font-weight:600}
.trn-ms-done{color:var(--cyan-text)}
.trn-ms-new{color:var(--slate)}

.trn-bottom-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.trn-playbook{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}
.trn-playbook-icon{width:56px;height:56px;border-radius:14px;background:rgba(11,95,216,0.06);display:flex;align-items:center;justify-content:center}
.trn-playbook-icon svg{stroke:var(--blue)}
.trn-playbook-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:4px}
.trn-playbook-desc{font-size:13px;color:var(--slate);line-height:1.5}
.trn-playbook-dl{display:flex;align-items:center;gap:6px;background:var(--blue);color:white;border:none;padding:10px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.15s;margin-top:auto}
.trn-playbook-dl:hover{background:var(--blue2)}

.trn-faq{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px}
.trn-faq-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:14px}
.trn-accordion{display:flex;flex-direction:column}
.trn-acc-item{border-bottom:1px solid var(--off2);cursor:pointer}
.trn-acc-item:last-child{border-bottom:none}
.trn-acc-q{display:flex;justify-content:space-between;align-items:center;padding:12px 0;font-size:13px;font-weight:600;color:var(--navy);gap:8px}
.trn-acc-q svg{flex-shrink:0;stroke:var(--mist);transition:transform 0.2s}
.trn-acc-open .trn-acc-q svg{transform:rotate(180deg)}
.trn-acc-a{max-height:0;overflow:hidden;font-size:13px;color:var(--slate);line-height:1.6;transition:max-height 0.3s ease,padding 0.3s ease;padding:0 0 0 0}
.trn-acc-open .trn-acc-a{max-height:200px;padding:0 0 12px 0}

/* Training dark mode */
[data-theme="dark"] .trn-onboard{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .trn-onboard-title{color:#e0e4ec}
[data-theme="dark"] .trn-onboard-bar{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .trn-check-item{border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .trn-check-box{border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .trn-check-title{color:#e0e4ec}
[data-theme="dark"] .trn-check-done .trn-check-title{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .trn-modules-title{color:#e0e4ec}
[data-theme="dark"] .trn-mod{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .trn-mod:hover{box-shadow:0 8px 24px rgba(0,0,0,0.2)}
[data-theme="dark"] .trn-mod-title{color:#e0e4ec}
[data-theme="dark"] .trn-playbook{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .trn-playbook-icon{background:rgba(75,163,255,0.1)}
[data-theme="dark"] .trn-playbook-title{color:#e0e4ec}
[data-theme="dark"] .trn-faq{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .trn-faq-title{color:#e0e4ec}
[data-theme="dark"] .trn-acc-item{border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .trn-acc-q{color:#e0e4ec}
[data-theme="dark"] .trn-acc-a{color:rgba(255,255,255,0.5)}

/* Training mobile */
@media(max-width:768px){
  .trn-grid{grid-template-columns:1fr}
  .trn-bottom-row{grid-template-columns:1fr}
  .trn-onboard-bar{width:100%}
  .trn-check-item{padding:12px 0}
  .trn-video-wrap{position:relative;padding-top:56.25%;height:0}
  .trn-video-wrap iframe{position:absolute;top:0;left:0;width:100%;height:100%}
}

/* ── SETTINGS SECTION ── */
.set-section{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px;margin-bottom:20px}
.set-section-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:4px}
.set-section-desc{font-size:13px;color:var(--slate);margin-bottom:16px;line-height:1.5}
.set-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.set-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin-top:16px}
.set-field-full{grid-column:1/-1}
.set-label{display:block;font-size:12px;font-weight:600;color:var(--navy);margin-bottom:6px}
.set-input{width:100%;padding:10px 14px;border:1px solid var(--off2);border-radius:8px;font-size:14px;color:var(--navy);background:var(--white);font-family:inherit;outline:none;transition:border-color 0.15s;box-sizing:border-box}
.set-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.08)}
select.set-input{padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;appearance:none;-webkit-appearance:none;cursor:pointer}
.set-actions{margin-top:20px;display:flex;justify-content:flex-end}
.set-save{background:var(--blue);color:white;border:none;padding:10px 24px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.15s}
.set-save:hover{background:var(--blue2)}

.set-toggles{display:flex;flex-direction:column;margin-top:16px}
.set-toggle-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--off2);gap:20px}
.set-toggle-row:last-child{border-bottom:none}
.set-toggle-label{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:2px}
.set-toggle-desc{font-size:12px;color:var(--slate);line-height:1.4}
.set-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}
.set-switch input{opacity:0;width:0;height:0}
.set-slider{position:absolute;inset:0;background:var(--off2);border-radius:24px;cursor:pointer;transition:background 0.2s}
.set-slider::before{content:'';position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:white;border-radius:50%;transition:transform 0.2s;box-shadow:0 1px 3px rgba(0,0,0,0.15)}
.set-switch input:checked+.set-slider{background:var(--blue)}
.set-switch input:checked+.set-slider::before{transform:translateX(20px)}

.set-add-btn{display:flex;align-items:center;gap:5px;background:var(--blue);color:white;border:none;padding:8px 16px;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;transition:background 0.15s}
.set-add-btn:hover{background:var(--blue2)}
.set-team-table{margin-top:4px}
.set-team-head{display:grid;grid-template-columns:2fr 0.8fr 1.5fr 0.7fr 1fr;gap:8px;padding:10px 16px;font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);border-bottom:1px solid var(--off2)}
.set-team-row{display:grid;grid-template-columns:2fr 0.8fr 1.5fr 0.7fr 1fr;gap:8px;padding:12px 16px;align-items:center;font-size:13px;color:var(--navy);border-bottom:1px solid var(--off2)}
.set-team-row:last-child{border-bottom:none}
.set-team-name{display:flex;align-items:center;gap:10px;font-weight:600}
.set-team-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;font-size:10px;font-weight:700;flex-shrink:0}
.set-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}
.set-b-active{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.set-b-invited{background:rgba(14,127,148,0.08);color:var(--cyan-text)}
.set-team-acts{display:flex;gap:6px}
.set-team-act{background:none;border:1px solid var(--off2);padding:4px 10px;border-radius:5px;font-size:11px;font-weight:600;color:var(--navy);cursor:pointer;transition:all 0.15s}
.set-team-act:hover{border-color:var(--blue);color:var(--blue)}
.set-team-remove{color:#DC2626;border-color:rgba(220,38,38,0.15)}
.set-team-remove:hover{border-color:#DC2626;background:rgba(220,38,38,0.04)}

.set-api-key-wrap{display:flex;gap:6px;align-items:center}
.set-api-input{flex:1;font-family:monospace;font-size:13px;letter-spacing:0.02em}
.set-api-toggle,.set-api-copy{background:var(--off);border:1px solid var(--off2);padding:8px 14px;border-radius:6px;font-size:12px;font-weight:600;color:var(--navy);cursor:pointer;transition:all 0.15s;white-space:nowrap}
.set-api-toggle:hover,.set-api-copy:hover{border-color:var(--blue);color:var(--blue)}
.set-regen-btn{background:none;border:1px solid var(--off2);padding:8px 16px;border-radius:6px;font-size:12px;font-weight:600;color:var(--slate);cursor:pointer;margin-top:12px;transition:all 0.15s}
.set-regen-btn:hover{border-color:#DC2626;color:#DC2626}

.set-tier-card{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.set-tier-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--slate);margin-bottom:4px}
.set-tier-name{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy);margin-bottom:2px}
.set-tier-rate{font-size:14px;font-weight:600;color:var(--blue);margin-bottom:10px}
.set-tier-progress-label{font-size:12px;color:var(--slate);margin-bottom:6px}
.set-tier-bar{width:200px;height:6px;background:var(--off2);border-radius:4px;overflow:hidden}
.set-tier-fill{height:100%;background:linear-gradient(90deg,var(--blue),#4BA3FF);border-radius:4px}
.set-tier-link{background:none;border:1px solid var(--blue);color:var(--blue);padding:9px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s;white-space:nowrap}
.set-tier-link:hover{background:var(--blue);color:white}

.set-danger{border-color:rgba(220,38,38,0.15)}
.set-delete-btn{background:none;border:1px solid #DC2626;color:#DC2626;padding:9px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s}
.set-delete-btn:hover{background:#DC2626;color:white}

/* Settings dark mode */
[data-theme="dark"] .set-section{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .set-section-title{color:#e0e4ec}
[data-theme="dark"] .set-label{color:#e0e4ec}
[data-theme="dark"] .set-input{background:#0d1929;border-color:rgba(255,255,255,0.08);color:#e0e4ec}
[data-theme="dark"] select.set-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23e0e4ec' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}
[data-theme="dark"] .set-input:focus{border-color:rgba(75,163,255,0.5);box-shadow:0 0 0 3px rgba(75,163,255,0.1)}
[data-theme="dark"] .set-toggle-row{border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .set-toggle-label{color:#e0e4ec}
[data-theme="dark"] .set-slider{background:rgba(255,255,255,0.1)}
[data-theme="dark"] .set-team-head{color:rgba(255,255,255,0.4);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .set-team-row{color:#e0e4ec;border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .set-team-act{border-color:rgba(255,255,255,0.08);color:#e0e4ec}
[data-theme="dark"] .set-api-toggle,.set-api-copy{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .set-api-toggle,[data-theme="dark"] .set-api-copy{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#e0e4ec}
[data-theme="dark"] .set-regen-btn{border-color:rgba(255,255,255,0.08);color:rgba(255,255,255,0.4)}
[data-theme="dark"] .set-tier-name{color:#e0e4ec}
[data-theme="dark"] .set-tier-bar{background:rgba(255,255,255,0.06)}
[data-theme="dark"] .set-tier-link{border-color:rgba(75,163,255,0.4);color:rgba(75,163,255,0.8)}
[data-theme="dark"] .set-tier-link:hover{background:rgba(75,163,255,0.15);color:#e0e4ec}
[data-theme="dark"] .set-danger{border-color:rgba(220,38,38,0.2)}

/* Settings mobile */
@media(max-width:768px){
  .set-form-grid{grid-template-columns:1fr}
  .set-field-full{grid-column:auto}
  .set-input{min-height:44px;font-size:16px}
  .set-team-head,.set-team-row{grid-template-columns:1.5fr 0.8fr 0.8fr;font-size:12px}
  .set-team-head>:nth-child(4),.set-team-head>:nth-child(5),.set-team-row>:nth-child(4),.set-team-row>:nth-child(5){display:none}
  .set-tier-card{flex-direction:column;align-items:flex-start}
  .set-api-key-wrap{flex-wrap:wrap}
}

/* ── SUPPORT SECTION ── */
.sup-emergency{display:flex;align-items:flex-start;gap:12px;background:linear-gradient(135deg,rgba(220,38,38,0.06),rgba(220,38,38,0.02));border:1px solid rgba(220,38,38,0.15);border-radius:10px;padding:16px 20px;margin-bottom:20px;font-size:13px;color:var(--navy);line-height:1.6}
.sup-emergency svg{stroke:#DC2626;flex-shrink:0;margin-top:2px}
.sup-emergency strong{display:block;color:#DC2626;margin-bottom:2px}
.sup-emergency-phone{color:#DC2626;font-weight:700;text-decoration:none}
.sup-emergency-phone:hover{text-decoration:underline}
.sup-emergency span{display:block;font-size:11px;color:var(--slate);margin-top:2px}

.sup-top-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}
.sup-manager{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px}
.sup-manager-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--slate);margin-bottom:16px}
.sup-manager-card{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.sup-manager-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--blue),#4BA3FF);display:flex;align-items:center;justify-content:center;color:white;font-size:18px;font-weight:700;flex-shrink:0}
.sup-manager-name{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:2px}
.sup-manager-title{font-size:12px;color:var(--slate);margin-bottom:8px}
.sup-manager-details{display:flex;flex-direction:column;gap:4px}
.sup-manager-detail{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--navy)}
.sup-manager-detail svg{stroke:var(--mist)}
.sup-schedule-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--blue);color:white;border:none;padding:11px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.15s}
.sup-schedule-btn:hover{background:var(--blue2)}

.sup-ticket-form{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px}
.sup-ticket-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:16px}
.sup-field{margin-bottom:14px}
.sup-field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sup-label{display:block;font-size:12px;font-weight:600;color:var(--navy);margin-bottom:6px}
.sup-input{width:100%;padding:9px 14px;border:1px solid var(--off2);border-radius:8px;font-size:13px;color:var(--navy);background:var(--white);font-family:inherit;outline:none;transition:border-color 0.15s;box-sizing:border-box}
.sup-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.08)}
.sup-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236B7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}
.sup-textarea{width:100%;padding:9px 14px;border:1px solid var(--off2);border-radius:8px;font-size:13px;color:var(--navy);background:var(--white);font-family:inherit;resize:vertical;outline:none;transition:border-color 0.15s;box-sizing:border-box}
.sup-textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.08)}
.sup-submit-btn{background:var(--blue);color:white;border:none;padding:10px 24px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.15s}
.sup-submit-btn:hover{background:var(--blue2)}

.sup-tickets-section{background:var(--white);border:1px solid var(--off2);border-radius:12px;overflow:hidden;margin-bottom:24px}
.sup-tickets-title{font-size:14px;font-weight:700;color:var(--navy);padding:20px 20px 0}
.sup-tickets-head{display:grid;grid-template-columns:0.6fr 2.5fr 0.8fr 0.9fr 0.9fr;gap:8px;padding:14px 20px;font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);border-bottom:1px solid var(--off2);margin-top:12px}
.sup-ticket-row{display:grid;grid-template-columns:0.6fr 2.5fr 0.8fr 0.9fr 0.9fr;gap:8px;padding:12px 20px;align-items:center;font-size:13px;color:var(--navy);border-bottom:1px solid var(--off2);transition:background 0.12s}
.sup-ticket-row:last-child{border-bottom:none}
.sup-ticket-row:hover{background:rgba(11,95,216,0.015)}
.sup-ticket-id{font-family:monospace;font-size:12px;color:var(--slate)}
.sup-ticket-subject{font-weight:600}
.sup-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}
.sup-b-open{background:rgba(11,95,216,0.08);color:var(--blue)}
.sup-b-progress{background:rgba(11,95,216,0.08);color:var(--blue)}
.sup-b-resolved{background:rgba(14,127,148,0.08);color:var(--cyan-text)}

.sup-kb{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px}
.sup-kb-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:14px}
.sup-kb-grid{display:flex;flex-direction:column}
.sup-kb-item{border-bottom:1px solid var(--off2);cursor:pointer}
.sup-kb-item:last-child{border-bottom:none}
.sup-kb-q{display:flex;justify-content:space-between;align-items:center;padding:12px 0;font-size:13px;font-weight:600;color:var(--navy);gap:8px}
.sup-kb-q svg{flex-shrink:0;stroke:var(--mist);transition:transform 0.2s}
.sup-kb-open .sup-kb-q svg{transform:rotate(180deg)}
.sup-kb-a{max-height:0;overflow:hidden;font-size:13px;color:var(--slate);line-height:1.6;transition:max-height 0.3s ease,padding 0.3s ease}
.sup-kb-open .sup-kb-a{max-height:200px;padding:0 0 12px 0}

/* Support dark mode */
[data-theme="dark"] .sup-emergency{background:rgba(220,38,38,0.06);border-color:rgba(220,38,38,0.2);color:#e0e4ec}
[data-theme="dark"] .sup-emergency span{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .sup-manager{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .sup-manager-name{color:#e0e4ec}
[data-theme="dark"] .sup-manager-detail{color:#e0e4ec}
[data-theme="dark"] .sup-ticket-form{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .sup-ticket-title{color:#e0e4ec}
[data-theme="dark"] .sup-label{color:#e0e4ec}
[data-theme="dark"] .sup-input{background:#0d1929;border-color:rgba(255,255,255,0.08);color:#e0e4ec}
[data-theme="dark"] .sup-input:focus{border-color:rgba(75,163,255,0.5);box-shadow:0 0 0 3px rgba(75,163,255,0.1)}
[data-theme="dark"] .sup-textarea{background:#0d1929;border-color:rgba(255,255,255,0.08);color:#e0e4ec}
[data-theme="dark"] .sup-tickets-section{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .sup-tickets-title{color:#e0e4ec}
[data-theme="dark"] .sup-tickets-head{color:rgba(255,255,255,0.4);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .sup-ticket-row{color:#e0e4ec;border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .sup-ticket-row:hover{background:rgba(75,163,255,0.03)}
[data-theme="dark"] .sup-ticket-id{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .sup-kb{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .sup-kb-title{color:#e0e4ec}
[data-theme="dark"] .sup-kb-item{border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .sup-kb-q{color:#e0e4ec}
[data-theme="dark"] .sup-kb-a{color:rgba(255,255,255,0.5)}

/* Support mobile */
@media(max-width:768px){
  .sup-top-row{grid-template-columns:1fr}
  .sup-field-row{grid-template-columns:1fr}
  .sup-input,.sup-select,.sup-textarea{min-height:44px;font-size:16px}
  .sup-tickets-head,.sup-ticket-row{grid-template-columns:1fr 2fr 0.8fr;font-size:12px}
  .sup-tickets-head>:nth-child(4),.sup-tickets-head>:nth-child(5),.sup-ticket-row>:nth-child(4),.sup-ticket-row>:nth-child(5){display:none}
  .sup-manager-actions{flex-direction:column}
  .sup-manager-actions a,.sup-manager-actions button{width:100%;text-align:center;min-height:44px}
}

/* Mobile portal */
@media(max-width:768px){
  .portal-sidebar{left:-260px;transition:left 0.25s ease}
  .portal-sidebar.portal-sb-open{left:0;box-shadow:4px 0 24px rgba(0,0,0,0.3)}
  .portal-main{margin-left:0;padding-bottom:68px}
  .portal-hamburger{display:flex}
  .portal-topbar{justify-content:space-between}
  .portal-topbar .sr-btn{display:none}
  .portal-topbar .portal-demo-badge{display:none}
  .pm-switcher{border-radius:18px;padding:2px}
  .pm-btn{padding:4px 10px;font-size:10px;border-radius:16px}
  .portal-section{padding:24px 16px}
  #dash-performance-hub{margin-left:-16px;margin-right:-16px;padding:24px 16px}
  #portal-sec-dashboard .dash-kpi-row{grid-template-columns:1fr 1fr!important}
  #portal-sec-dashboard .dash-table-head,
  #portal-sec-dashboard .dash-table-row{grid-template-columns:1fr!important;font-size:12px!important}
}

/* ═══ MOBILE BOTTOM NAV ═══ */
.mob-bottom-nav{display:none}
@media(max-width:768px){
  .mob-bottom-nav{
    display:flex;position:fixed;bottom:0;left:0;right:0;height:60px;
    background:var(--white);border-top:1px solid var(--off2);
    z-index:9000;align-items:stretch;
    box-shadow:0 -2px 12px rgba(0,0,0,0.06);
    padding:0;padding-bottom:env(safe-area-inset-bottom,0)
  }
  .mob-bnav-tab{
    flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:2px;border:none;background:none;color:var(--slate);cursor:pointer;
    font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;
    min-height:44px;padding:4px 0;position:relative;
    transition:color 0.15s
  }
  .mob-bnav-tab svg{width:20px;height:20px;stroke-width:1.8}
  .mob-bnav-tab-active{color:var(--blue)}
  .mob-bnav-tab-active svg{stroke:var(--blue)}
  .mob-bnav-label{font-size:10px;line-height:1;margin-top:1px}
  .mob-bnav-fab{position:relative;flex:1.1}
  .mob-bnav-fab-circle{
    width:52px;height:52px;border-radius:50%;
    background:linear-gradient(135deg,#0B5FD8,#4BA3FF);
    display:flex;align-items:center;justify-content:center;
    position:absolute;top:-18px;left:50%;transform:translateX(-50%);
    box-shadow:0 4px 16px rgba(11,95,216,0.35);
    transition:transform 0.15s,box-shadow 0.15s
  }
  .mob-bnav-fab-circle svg{stroke:#fff;width:24px;height:24px}
  .mob-bnav-fab .mob-bnav-label{margin-top:22px;color:var(--blue);font-weight:700}
  .mob-bnav-fab:active .mob-bnav-fab-circle{transform:translateX(-50%) scale(0.93)}
  [data-theme="dark"] .mob-bottom-nav{background:#0f1724;border-top-color:rgba(255,255,255,0.06);box-shadow:0 -2px 16px rgba(0,0,0,0.3)}
  [data-theme="dark"] .mob-bnav-tab{color:rgba(255,255,255,0.4)}
  [data-theme="dark"] .mob-bnav-tab-active{color:#4BA3FF}
  [data-theme="dark"] .mob-bnav-tab-active svg{stroke:#4BA3FF}
  [data-theme="dark"] .mob-bnav-fab .mob-bnav-label{color:#4BA3FF}
}

/* ═══ MOBILE MONEY HERO ═══ */
.mob-money-hero{display:none}
@media(max-width:768px){
  .mob-money-hero{
    display:block;background:linear-gradient(135deg,#0B5FD8 0%,#1a8cff 50%,#00c8e0 100%);
    border-radius:16px;padding:24px;margin-bottom:20px;color:#fff;position:relative;overflow:hidden
  }
  .mob-money-hero::after{
    content:'';position:absolute;top:-40%;right:-20%;width:200px;height:200px;
    border-radius:50%;background:rgba(255,255,255,0.06);pointer-events:none
  }
  .mob-money-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}
  .mob-money-label{font-size:11px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;opacity:0.7;margin-bottom:4px}
  .mob-money-amount{font-family:'DM Serif Display',serif;font-size:36px;line-height:1.1}
  .mob-money-countdown{
    display:inline-flex;align-items:center;gap:6px;
    font-size:12px;font-weight:600;
    background:rgba(255,255,255,0.18);border-radius:20px;padding:4px 12px;margin-top:8px
  }
  .mob-countdown-dot{width:6px;height:6px;border-radius:50%;background:#4ade80;animation:mobPulse 2s infinite}
  @keyframes mobPulse{0%,100%{opacity:1}50%{opacity:0.4}}
  .mob-money-right{text-align:right}
  .mob-money-month{font-family:'DM Serif Display',serif;font-size:22px;line-height:1.2}
  .mob-money-trend{
    font-size:12px;font-weight:700;color:#4ade80;margin-top:4px;
    display:inline-flex;align-items:center;gap:2px
  }
  .mob-money-cta{
    width:100%;padding:14px;border:none;border-radius:10px;
    background:#fff;color:var(--blue);font-family:'DM Sans',sans-serif;
    font-size:15px;font-weight:700;cursor:pointer;
    transition:transform 0.12s,box-shadow 0.12s
  }
  .mob-money-cta:active{transform:scale(0.98)}

  /* Gamification elements */
  .mob-game-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}
  .mob-streak{
    display:inline-flex;align-items:center;gap:5px;
    background:linear-gradient(135deg,#f97316,#ef4444);
    padding:5px 12px;border-radius:20px;font-size:12px;font-weight:700;color:#fff
  }
  .mob-streak svg{stroke:#fff;fill:rgba(255,255,255,0.3)}
  .mob-progress-ring-wrap{position:relative;width:48px;height:48px;flex-shrink:0}
  .mob-progress-ring{display:block}
  .mob-progress-ring-fill{transition:stroke-dashoffset 1s cubic-bezier(0.22,1,0.36,1)}
  .mob-ring-label{
    position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    font-size:10px;font-weight:700;color:#fff
  }
  .mob-level-badge{
    padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;
    letter-spacing:0.04em;margin-left:auto
  }
  .mob-level-bronze{background:linear-gradient(135deg,#92400e,#b45309);color:#fef3c7}
  .mob-level-premium{background:linear-gradient(135deg,#6b7280,#9ca3af);color:#fff}
  .mob-level-pro{background:linear-gradient(135deg,#b45309,#d97706);color:#fff}
  .mob-level-platinum{background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff}
  .mob-milestone-wrap{margin-bottom:14px}
  .mob-milestone-text{font-size:11px;font-weight:600;color:rgba(255,255,255,0.8);margin-bottom:6px}
  .mob-milestone-track{height:4px;border-radius:2px;background:rgba(255,255,255,0.15);overflow:hidden}
  .mob-milestone-fill{height:100%;border-radius:2px;background:#4ade80;transition:width 1s cubic-bezier(0.22,1,0.36,1)}

  [data-theme="dark"] .mob-money-hero{background:linear-gradient(135deg,#0a3d7a 0%,#0B5FD8 50%,#0891b2 100%)}
  [data-theme="dark"] .mob-money-cta{background:#1e293b;color:#4BA3FF}

  /* Dashboard mobile overrides */
  .dash-vel-wrap{display:none}
  .dash-hub-row{flex-direction:column;gap:16px}
  .dash-hub-row>*{width:100%!important}
  .dash-kpi-row{overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;flex-wrap:nowrap;display:flex!important;gap:12px!important;padding-bottom:8px}
  .dash-kpi-row .dash-kpi-card{min-width:160px;flex-shrink:0;scroll-snap-align:start}
  .dash-quick-links-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .dash-quick-card{padding:14px!important}
  .dash-quick-label{font-size:13px!important}
  .dash-quick-desc{font-size:11px!important}
  .dash-activity-feed .dash-activity-time{font-size:11px}

  /* Dashboard table to cards on mobile */
  .dash-table-head{display:none!important}
  .dash-table-row{
    display:flex!important;flex-wrap:wrap;align-items:center;gap:8px;
    padding:12px!important;border-bottom:1px solid var(--off2)
  }
  .dash-td-name{font-weight:600;font-size:14px!important;flex:1}
  .dash-td-date{font-size:12px!important;color:var(--slate)}
  .dash-td-badge{font-size:11px!important}
  .dash-td-share{font-size:13px!important;font-weight:600}
  .dash-td-acts{margin-left:auto}
}

/* ═══ MOBILE ACHIEVEMENT TOAST ═══ */
.mob-achieve-toast{display:none}
@media(max-width:768px){
  .mob-achieve-toast{
    display:none;position:fixed;bottom:80px;left:50%;transform:translateX(-50%) translateY(20px);
    background:linear-gradient(135deg,#0B5FD8,#4BA3FF);color:#fff;
    padding:14px 24px;border-radius:12px;font-size:14px;font-weight:700;
    z-index:9500;opacity:0;transition:all 0.35s cubic-bezier(0.22,1,0.36,1);
    box-shadow:0 8px 32px rgba(11,95,216,0.3);text-align:center;
    pointer-events:none;white-space:nowrap
  }
  .mob-achieve-toast.mob-achieve-show{display:block;opacity:1;transform:translateX(-50%) translateY(0)}
  [data-theme="dark"] .mob-achieve-toast{background:linear-gradient(135deg,#1e3a5f,#4BA3FF)}
}

/* ═══ MOBILE TOOLS SHEET ═══ */
.mob-tools-overlay,.mob-tools-sheet{display:none}
@media(max-width:768px){
  .mob-tools-overlay{
    display:none;position:fixed;inset:0;background:rgba(0,0,0,0.4);
    z-index:9001;opacity:0;transition:opacity 0.25s
  }
  .mob-tools-overlay.mob-tools-open{display:block;opacity:1}
  .mob-tools-sheet{
    display:none;position:fixed;bottom:0;left:0;right:0;
    background:var(--white);border-radius:20px 20px 0 0;
    z-index:9002;padding:16px 20px 32px;
    transform:translateY(100%);transition:transform 0.3s cubic-bezier(0.22,1,0.36,1);
    box-shadow:0 -8px 40px rgba(0,0,0,0.12);
    max-height:70vh;overflow-y:auto;
    padding-bottom:calc(32px + env(safe-area-inset-bottom,0))
  }
  .mob-tools-sheet.mob-tools-open{display:block;transform:translateY(0)}
  .mob-tools-handle{
    width:40px;height:4px;border-radius:2px;background:var(--off2);
    margin:0 auto 16px
  }
  .mob-tools-title{
    font-family:'DM Serif Display',serif;font-size:18px;
    color:var(--navy);margin-bottom:16px
  }
  .mob-tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .mob-tool-card{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:6px;padding:20px 12px;border:1px solid var(--off2);border-radius:12px;
    background:var(--white);cursor:pointer;transition:all 0.15s;
    font-family:'DM Sans',sans-serif;min-height:80px;text-align:center
  }
  .mob-tool-card:active{transform:scale(0.97);background:var(--off)}
  .mob-tool-card svg{stroke:var(--blue);flex-shrink:0}
  .mob-tool-label{font-size:13px;font-weight:700;color:var(--navy)}
  .mob-tool-desc{font-size:11px;color:var(--slate);line-height:1.3}
  [data-theme="dark"] .mob-tools-overlay{background:rgba(0,0,0,0.6)}
  [data-theme="dark"] .mob-tools-sheet{background:#0f1724;box-shadow:0 -8px 40px rgba(0,0,0,0.4)}
  [data-theme="dark"] .mob-tools-handle{background:rgba(255,255,255,0.1)}
  [data-theme="dark"] .mob-tools-title{color:#e0e4ec}
  [data-theme="dark"] .mob-tool-card{background:#141e30;border-color:rgba(255,255,255,0.06)}
  [data-theme="dark"] .mob-tool-card:active{background:#1a2840}
  [data-theme="dark"] .mob-tool-card svg{stroke:#4BA3FF}
  [data-theme="dark"] .mob-tool-label{color:#e0e4ec}
  [data-theme="dark"] .mob-tool-desc{color:rgba(255,255,255,0.4)}
}

/* ═══ COMMAND BAR (Cmd+K) ═══ */
.cmdk-overlay{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:none;align-items:flex-start;justify-content:center;padding-top:min(20vh,160px);animation:cmdkFadeIn 0.15s ease}
.cmdk-overlay.cmdk-open{display:flex}
@keyframes cmdkFadeIn{from{opacity:0}to{opacity:1}}
.cmdk-modal{width:100%;max-width:560px;background:var(--white);border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,0.25),0 0 0 1px rgba(0,0,0,0.05);overflow:hidden;animation:cmdkSlideIn 0.2s cubic-bezier(0.22,1,0.36,1)}
@keyframes cmdkSlideIn{from{opacity:0;transform:scale(0.96) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}
.cmdk-search-row{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--off2)}
.cmdk-search-icon{flex-shrink:0;color:var(--slate)}
.cmdk-input{flex:1;border:none;outline:none;font-size:16px;font-family:'DM Sans',sans-serif;color:var(--ink);background:none}
.cmdk-input::placeholder{color:var(--mist)}
.cmdk-esc{font-size:11px;font-weight:600;color:var(--slate);background:var(--off);border:1px solid var(--off2);border-radius:4px;padding:2px 6px;font-family:'DM Sans',sans-serif}
.cmdk-list{max-height:340px;overflow-y:auto;padding:8px}
.cmdk-group-label{font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--slate);padding:12px 12px 6px}
.cmdk-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;cursor:pointer;transition:background 0.1s;font-size:14px;color:var(--ink)}
.cmdk-item:hover,.cmdk-item-active{background:var(--off)}
.cmdk-item-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:rgba(11,95,216,0.06)}
.cmdk-item-icon svg{width:16px;height:16px;stroke:var(--blue)}
.cmdk-item-icon-green{background:rgba(22,163,74,0.06)}
.cmdk-item-icon-green svg{stroke:#16A34A}
.cmdk-item-icon-orange{background:rgba(232,68,0,0.06)}
.cmdk-item-icon-orange svg{stroke:#E84400}
.cmdk-item-icon-purple{background:rgba(139,92,246,0.06)}
.cmdk-item-icon-purple svg{stroke:#8B5CF6}
.cmdk-item-icon-cyan{background:rgba(0,200,224,0.06)}
.cmdk-item-icon-cyan svg{stroke:var(--cyan-text)}
.cmdk-item-label{flex:1;font-weight:500}
.cmdk-item-hint{font-size:12px;color:var(--slate)}
.cmdk-footer{display:flex;gap:16px;justify-content:center;padding:10px 20px;border-top:1px solid var(--off2);font-size:12px;color:var(--slate)}
.cmdk-footer kbd{font-size:10px;font-weight:600;background:var(--off);border:1px solid var(--off2);border-radius:3px;padding:1px 5px;margin:0 2px;font-family:'DM Sans',sans-serif}
.cmdk-empty{padding:32px 20px;text-align:center;font-size:14px;color:var(--slate)}

/* ═══ CROSS-CUTTING: Toast Notification System ═══ */
.portal-toast-wrap{position:fixed;top:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}
.portal-toast{pointer-events:auto;display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:8px;font-size:13px;font-weight:500;color:var(--ink);background:#fff;border:1px solid var(--off2);box-shadow:0 4px 16px rgba(0,0,0,0.08);transform:translateX(120%);animation:toastIn 0.35s ease forwards}
.portal-toast-dismiss{animation:toastOut 0.3s ease forwards}
.portal-toast-success svg{color:var(--cyan-text)}
.portal-toast-error svg{color:#DC2626}
.portal-toast-info svg{color:var(--slate)}
.portal-toast-warning svg{color:#D97706}
.portal-toast svg{flex-shrink:0;color:var(--slate)}
@keyframes toastIn{from{transform:translateX(120%);opacity:0}to{transform:translateX(0);opacity:1}}
@keyframes toastOut{from{transform:translateX(0);opacity:1}to{transform:translateX(120%);opacity:0}}

/* ═══ CROSS-CUTTING: Empty States ═══ */
.portal-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:var(--slate)}
.portal-empty-state svg{margin-bottom:16px;opacity:0.4}
.portal-empty-state-title{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:6px}
.portal-empty-state-desc{font-size:14px;color:var(--slate);margin-bottom:16px}
.portal-empty-state-btn{padding:8px 20px;border:1px solid var(--blue);color:var(--blue);background:none;border-radius:7px;font-size:13px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.15s}
.portal-empty-state-btn:hover{background:rgba(11,95,216,0.06)}
[data-theme="dark"] .portal-empty-state-title{color:#e0e4ec}
[data-theme="dark"] .portal-empty-state-desc{color:rgba(255,255,255,0.4)}

/* ═══ Dashboard Extracted Inline Styles ═══ */
.dash-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}
.dash-kpi-card{border:1px solid var(--off2);border-radius:12px;padding:18px;background:var(--white);position:relative;overflow:hidden;box-shadow:0 1px 4px rgba(10,22,40,0.04)}
.dash-kpi-card-primary{background:linear-gradient(135deg,rgba(11,95,216,0.04),rgba(75,163,255,0.04));border-color:rgba(11,95,216,0.12)}
.dash-kpi-label{font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);margin-bottom:6px}
.dash-kpi-card-primary .dash-kpi-label{color:var(--blue)}
.dash-kpi-val{font-family:'DM Serif Display',serif;font-size:28px;color:var(--navy);line-height:1.1}
.dash-kpi-trend{font-size:12px;font-weight:600;margin-top:4px}
.dash-kpi-trend-up{color:var(--cyan-text)}
.dash-kpi-trend-neutral{color:var(--slate)}
.kpi-spark{position:absolute;bottom:0;right:0;width:55%;height:32px;pointer-events:none;opacity:0.7}
.kpi-spark-lt{opacity:0.5}

/* Client Pipeline */
.dash-pipeline{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:24px;margin-bottom:24px;box-shadow:0 1px 4px rgba(10,22,40,0.04)}
.dash-pipeline-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:8px}
.dash-pipeline-title{font-size:16px;font-weight:700;color:var(--navy)}
.dash-pipeline-legend{display:flex;gap:14px;flex-wrap:wrap}
.pipe-leg{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--slate);font-weight:500}
.pipe-dot{width:8px;height:8px;border-radius:50%}
.pipe-dot-submitted{background:#94a3b8}
.pipe-dot-review{background:#f59e0b}
.pipe-dot-active{background:var(--blue)}
.pipe-dot-resolved{background:var(--cyan-text)}
.pipe-dot-paid{background:#22c55e}
.pipe-track{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}
.pipe-stage{min-width:160px}
.pipe-stage-label{font-size:11px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:10px;display:flex;align-items:center;gap:6px;padding-bottom:8px;border-bottom:2px solid var(--off2)}
.pipe-stage:nth-child(1) .pipe-stage-label{border-bottom-color:#94a3b8}
.pipe-stage:nth-child(2) .pipe-stage-label{border-bottom-color:#f59e0b}
.pipe-stage:nth-child(3) .pipe-stage-label{border-bottom-color:#0B5FD8}
.pipe-stage:nth-child(4) .pipe-stage-label{border-bottom-color:#059669}
.pipe-stage:nth-child(5) .pipe-stage-label{border-bottom-color:#22c55e}
.pipe-stage-count{background:var(--off);border-radius:10px;padding:1px 7px;font-size:10px;font-weight:700;color:var(--navy)}
.pipe-cards{display:flex;flex-direction:column;gap:8px}
.pipe-card{background:var(--off);border:1px solid var(--off2);border-radius:10px;padding:12px 14px;transition:box-shadow 0.15s,border-color 0.15s;cursor:default}
.pipe-card:hover{box-shadow:0 3px 12px rgba(10,22,40,0.06);border-color:rgba(11,95,216,0.15)}
.pipe-card-name{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:2px}
.pipe-card-debt{font-size:13px;color:var(--body)}
.pipe-card-date{font-size:11px;color:var(--slate);margin-top:4px}
.pipe-card-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--blue);background:rgba(11,95,216,0.06);border-radius:4px;padding:2px 7px;margin-top:6px}
.pipe-card-highlight{border-left:3px solid var(--blue)}
.pipe-card-success{border-left:3px solid var(--cyan-text)}
.pipe-card-result{font-size:12px;font-weight:700;color:var(--cyan-text);margin-top:4px}
.pipe-card-paid{border-left:3px solid #22c55e}
.pipe-card-earned{font-size:16px;font-weight:800;color:#22c55e}
.pipe-card-more{font-size:13px;color:var(--slate);font-weight:600;text-align:center;padding:10px;border-left:3px solid #22c55e}

/* Smart Insights Banner */
.dash-insights-banner{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,rgba(11,95,216,0.04),rgba(0,200,224,0.04));border:1px solid rgba(11,95,216,0.1);border-radius:14px;padding:18px 20px;margin-bottom:24px;transition:opacity 0.3s,max-height 0.3s;overflow:hidden}
.dib-icon{width:40px;height:40px;border-radius:10px;background:rgba(11,95,216,0.08);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--blue)}
.dib-content{flex:1;min-width:0}
.dib-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:4px}
.dib-body{font-size:13px;color:var(--body);line-height:1.6}
.dib-next{width:32px;height:32px;border-radius:8px;border:1px solid var(--off2);background:var(--white);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--slate);flex-shrink:0;transition:all 0.15s}
.dib-next:hover{border-color:var(--blue);color:var(--blue)}
.dib-dismiss{width:28px;height:28px;border-radius:6px;border:none;background:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--mist);flex-shrink:0;transition:color 0.15s}
.dib-dismiss:hover{color:var(--navy)}

/* Keyboard Shortcuts Help */
.kbd-help-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.4);z-index:100000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.2s}
.kbd-help-open{opacity:1;pointer-events:auto}
.kbd-help-modal{background:var(--white);border-radius:16px;width:400px;max-width:90vw;box-shadow:0 24px 80px rgba(0,0,0,0.15);overflow:hidden;animation:kbdSlideUp 0.2s ease}
@keyframes kbdSlideUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.kbd-help-header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--off2)}
.kbd-help-title{font-size:16px;font-weight:700;color:var(--navy)}
.kbd-help-close{width:28px;height:28px;border:none;background:none;font-size:20px;color:var(--mist);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all 0.15s}
.kbd-help-close:hover{background:var(--off1);color:var(--navy)}
.kbd-help-list{padding:10px 22px 18px}
.kbd-help-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--off1)}
.kbd-help-row:last-child{border-bottom:none}
.kbd-help-keys{display:flex;gap:4px}
.kbd-help-key{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:24px;padding:0 6px;background:var(--off1);border:1px solid var(--off2);border-radius:5px;font-size:11px;font-weight:600;color:var(--slate);font-family:inherit}
.kbd-help-desc{font-size:13px;color:var(--body)}

/* Case Detail Drawer */
.cdd-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.35);z-index:99998;opacity:0;pointer-events:none;transition:opacity 0.25s}
.cdd-overlay.cdd-open{opacity:1;pointer-events:auto}
.cdd-drawer{position:fixed;top:0;right:0;bottom:0;width:420px;max-width:90vw;background:var(--white);box-shadow:-8px 0 40px rgba(0,0,0,0.1);z-index:99999;transform:translateX(100%);transition:transform 0.3s ease;overflow-y:auto;padding:28px}
.cdd-drawer.cdd-open{transform:translateX(0)}
.cdd-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}
.cdd-client-name{font-size:20px;font-weight:700;color:var(--navy)}
.cdd-ref-id{font-size:12px;color:var(--mist);margin-top:2px;font-family:monospace}
.cdd-close{width:32px;height:32px;border:none;background:none;font-size:22px;color:var(--mist);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all 0.15s}
.cdd-close:hover{background:var(--off1);color:var(--navy)}
.cdd-summary{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:28px}
.cdd-sum-item{padding:14px;background:var(--off1);border-radius:10px}
.cdd-sum-label{font-size:11px;color:var(--mist);text-transform:uppercase;letter-spacing:0.03em;margin-bottom:4px}
.cdd-sum-val{font-size:15px;font-weight:600;color:var(--navy);display:flex;align-items:center;gap:6px}
.cdd-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.cdd-dot-active{background:#0B5FD8}
.cdd-dot-resolved{background:#059669}
.cdd-dot-pending{background:#D97706}
.cdd-timeline-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:16px}
.cdd-timeline{position:relative;padding-left:24px}
.cdd-timeline::before{content:'';position:absolute;left:7px;top:4px;bottom:4px;width:2px;background:var(--off2)}
.cdd-event{position:relative;padding-bottom:20px;display:flex;gap:14px}
.cdd-event:last-child{padding-bottom:0}
.cdd-event-dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--off2);background:var(--white);position:absolute;left:-24px;top:2px;z-index:1;flex-shrink:0}
.cdd-event-done .cdd-event-dot{background:#059669;border-color:#059669}
.cdd-event-active .cdd-event-dot{background:var(--blue);border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.2)}
.cdd-event-pending .cdd-event-dot{background:var(--off1);border-color:var(--off2)}
.cdd-event-date{font-size:11px;color:var(--mist);font-weight:600;margin-bottom:2px}
.cdd-event-text{font-size:13px;color:var(--body);line-height:1.5}
.cdd-event-active .cdd-event-text{color:var(--navy);font-weight:600}
.cdd-event-pending .cdd-event-text{color:var(--mist)}
.pipe-card-clickable{cursor:pointer}
.pipe-card-clickable:hover{border-color:var(--blue)!important;box-shadow:0 2px 8px rgba(11,95,216,0.12)}
.dash-table-row-clickable{cursor:pointer}
.dash-table-row-clickable:hover{background:rgba(11,95,216,0.02)}

/* Confetti Animation */
@keyframes confettiFall{
  0%{transform:translateY(0) translateX(0) rotate(0);opacity:1}
  75%{opacity:1}
  100%{transform:translateY(100vh) translateX(var(--cf-drift,0)) rotate(var(--cf-rot,360deg));opacity:0}
}

/* Monthly Goal Tracker */
.dash-goal-tracker{display:flex;gap:28px;background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:24px;margin-bottom:24px;align-items:center}
.dgt-left{text-align:center;flex-shrink:0}
.dgt-header{display:flex;align-items:center;gap:10px;justify-content:center;margin-bottom:14px}
.dgt-title{font-size:15px;font-weight:700;color:var(--navy)}
.dgt-edit{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--mist);cursor:pointer;transition:color 0.15s}
.dgt-edit:hover{color:var(--blue)}
.dgt-ring-wrap{position:relative;width:140px;height:140px;margin:0 auto}
.dgt-ring-fill{transition:stroke-dashoffset 1s ease}
.dgt-ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.dgt-ring-val{font-size:32px;font-weight:800;color:var(--navy);line-height:1}
.dgt-ring-of{font-size:12px;color:var(--mist);margin-top:2px}
.dgt-sub{font-size:12px;color:var(--mist);margin-top:10px}
.dgt-right{flex:1;min-width:0}
.dgt-stat-row{display:flex;gap:16px;margin-bottom:18px}
.dgt-stat{flex:1;padding:14px;background:var(--off1);border-radius:10px}
.dgt-stat-val{font-size:18px;font-weight:700;color:var(--navy)}
.dgt-stat-label{font-size:11px;color:var(--mist);margin-top:2px}
.dgt-pace{margin-bottom:14px}
.dgt-pace-label{font-size:13px;color:var(--body);margin-bottom:8px}
.dgt-pace-bar{width:100%;height:6px;background:var(--off1);border-radius:3px;overflow:hidden}
.dgt-pace-fill{height:100%;background:linear-gradient(90deg,var(--blue),#00C8E0);border-radius:3px;transition:width 1s ease}
.dgt-streak-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--slate);padding:10px 14px;background:rgba(11,95,216,0.03);border-radius:8px;border:1px solid rgba(11,95,216,0.06)}
.dgt-streak-row svg{color:var(--blue);flex-shrink:0}
@media(max-width:640px){
  .dash-goal-tracker{flex-direction:column;text-align:center}
  .dgt-stat-row{flex-direction:column}
}

/* Partner Certification Card */
.pcc-card{display:flex;gap:28px;padding:24px;background:linear-gradient(135deg,rgba(11,95,216,0.03),rgba(0,200,224,0.03));border:1px solid rgba(11,95,216,0.08);border-radius:12px;align-items:center}
.pcc-badge-wrap{text-align:center;flex-shrink:0}
.pcc-badge{width:80px;height:80px;display:flex;align-items:center;justify-content:center;margin:0 auto 8px}
.pcc-level{font-size:14px;font-weight:700;color:var(--blue)}
.pcc-details{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:8px 24px}
.pcc-detail-row{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px solid var(--off1)}
.pcc-detail-row:nth-last-child(-n+2){border-bottom:none}
.pcc-detail-label{font-size:12px;color:var(--mist)}
.pcc-detail-val{font-size:13px;font-weight:600;color:var(--navy);text-align:right}
@media(max-width:640px){
  .pcc-card{flex-direction:column;text-align:center}
  .pcc-details{grid-template-columns:1fr}
  .pcc-detail-row{justify-content:center;gap:16px}
}

/* Partner Leaderboard */
.dash-leaderboard{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:24px;margin-bottom:24px}
.dlb-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.dlb-title{font-size:16px;font-weight:700;color:var(--navy)}
.dlb-subtitle{font-size:13px;color:var(--mist);margin-top:2px}
.dlb-tabs{display:flex;gap:4px;background:var(--off1);border-radius:8px;padding:3px}
.dlb-tab{padding:6px 14px;border:none;background:none;border-radius:6px;font-size:12px;font-weight:600;color:var(--slate);cursor:pointer;transition:all 0.15s}
.dlb-tab:hover{color:var(--navy)}
.dlb-tab-active{background:var(--white);color:var(--navy);box-shadow:0 1px 3px rgba(0,0,0,0.06)}
.dlb-list{display:flex;flex-direction:column;gap:6px}
.dlb-row{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:10px;transition:background 0.15s}
.dlb-row:hover{background:var(--off1)}
.dlb-rank{width:24px;font-size:14px;font-weight:700;color:var(--mist);text-align:center}
.dlb-row-pro .dlb-rank{color:#D4A017}
.dlb-row-premium .dlb-rank{color:#8B8E93}
.dlb-row-bronze .dlb-rank{color:#A0522D}
.dlb-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}
.dlb-info{flex:1;min-width:0}
.dlb-name{font-size:14px;font-weight:600;color:var(--navy)}
.dlb-tier{font-size:11px;color:var(--mist)}
.dlb-metric{font-size:13px;font-weight:600;color:var(--slate);white-space:nowrap}
.dlb-badge{width:28px;display:flex;align-items:center;justify-content:center}
.dlb-badge-crown{color:#D4A017}
.dlb-badge-you{font-size:10px;font-weight:700;color:var(--blue);background:rgba(11,95,216,0.08);padding:3px 8px;border-radius:20px;white-space:nowrap}
.dlb-row-you{background:rgba(11,95,216,0.03);border:1px solid rgba(11,95,216,0.08)}
.dlb-row-you:hover{background:rgba(11,95,216,0.06)}
@media(max-width:640px){
  .dlb-header{flex-direction:column;gap:10px}
  .dlb-row{padding:10px 12px;gap:10px}
  .dlb-metric{font-size:12px}
}

/* Referral Link Generator */
.rlg-wrap{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:24px;margin-bottom:24px}
.rlg-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;flex-wrap:wrap}
.rlg-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:4px}
.rlg-desc{font-size:13px;color:var(--slate);line-height:1.5}
.rlg-stats{display:flex;gap:20px}
.rlg-stat{text-align:center}
.rlg-stat-val{font-size:18px;font-weight:700;color:var(--navy)}
.rlg-stat-label{font-size:11px;color:var(--mist);text-transform:uppercase;letter-spacing:0.03em;margin-top:2px}
.rlg-link-row{display:flex;gap:8px;margin-bottom:14px}
.rlg-link-field{flex:1;display:flex;align-items:center;gap:10px;background:var(--off1);border:1px solid var(--off2);border-radius:10px;padding:0 14px;overflow:hidden}
.rlg-link-icon{flex-shrink:0;color:var(--blue)}
.rlg-link-input{flex:1;border:none;background:none;font-size:13px;font-family:monospace;color:var(--navy);padding:12px 0;outline:none}
.rlg-copy-btn{display:flex;align-items:center;gap:6px;padding:0 18px;border:none;border-radius:10px;background:var(--blue);color:#fff;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all 0.15s}
.rlg-copy-btn:hover{background:#0a50b8}
.rlg-copy-btn.rlg-copied{background:#059669}
.rlg-channels{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.rlg-channel-label{font-size:12px;color:var(--mist);margin-right:4px}
.rlg-channel-btn{width:34px;height:34px;border-radius:8px;border:1px solid var(--off2);background:var(--white);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--slate);transition:all 0.15s}
.rlg-channel-btn:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.04)}
.rlg-ch-linkedin:hover{border-color:#0077B5;color:#0077B5}
.rlg-ch-x:hover{border-color:var(--navy);color:var(--navy)}
.rlg-ch-sms:hover{border-color:#059669;color:#059669}
.rlg-utm-toggle{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--mist);cursor:pointer;user-select:none;transition:color 0.15s}
.rlg-utm-toggle:hover{color:var(--slate)}
.rlg-utm-chevron{transition:transform 0.2s}
.rlg-utm-panel{max-height:0;overflow:hidden;transition:max-height 0.3s ease,margin 0.3s ease}
.rlg-utm-panel.rlg-utm-open{max-height:120px;margin-top:14px}
.rlg-utm-open .rlg-utm-chevron{transform:rotate(180deg)}
.rlg-utm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rlg-utm-field{display:flex;flex-direction:column;gap:4px}
.rlg-utm-label{font-size:11px;font-weight:600;color:var(--slate);text-transform:uppercase;letter-spacing:0.03em}
.rlg-utm-input{border:1px solid var(--off2);border-radius:8px;padding:8px 10px;font-size:12px;color:var(--navy);background:var(--off1);outline:none;transition:border-color 0.15s}
.rlg-utm-input:focus{border-color:var(--blue)}
@media(max-width:640px){
  .rlg-header{flex-direction:column;gap:12px}
  .rlg-link-row{flex-direction:column}
  .rlg-copy-btn{justify-content:center;padding:10px}
  .rlg-utm-grid{grid-template-columns:1fr}
  .rlg-utm-panel.rlg-utm-open{max-height:300px}
}

.dash-table{background:var(--off);border-radius:14px;padding:24px;border:1px solid var(--off2);margin-bottom:24px}
.dash-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.dash-table-title{font-size:15px;font-weight:700;color:var(--navy)}
.dash-table-link{font-size:12px;font-weight:600;color:var(--blue);cursor:pointer;background:none;border:none;font-family:'DM Sans',sans-serif}
.dash-table-link:hover{text-decoration:underline}
.dash-table-head{display:grid;grid-template-columns:1.6fr 1fr 1fr 0.9fr 0.8fr auto;gap:12px;font-size:12px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate);padding-bottom:10px;border-bottom:1px solid var(--off2);align-items:center}
.dash-table-row{display:grid;grid-template-columns:1.6fr 1fr 1fr 0.9fr 0.8fr auto;gap:12px;font-size:14px;color:var(--navy);padding:12px 0;border-bottom:1px solid var(--off2);align-items:center}
.dash-table-row:last-child{border-bottom:none}
.dash-td-name{font-weight:600}
.dash-td-date{color:var(--slate)}
.dash-td-badge{display:inline-flex;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600}
.dash-td-badge-resolution{background:rgba(0,229,204,0.1);color:var(--cyan-text)}
.dash-td-badge-investigation{background:rgba(11,95,216,0.1);color:var(--blue)}
.dash-td-badge-resolved{background:rgba(0,229,204,0.1);color:var(--cyan-text)}
.dash-td-share{font-weight:600;color:var(--blue)}
.dash-td-share-paid{color:var(--cyan-text)}
.dash-td-acts{display:flex;gap:6px}
[data-theme="dark"] .dash-kpi-card{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .dash-kpi-card-primary{background:rgba(11,95,216,0.1);border-color:rgba(11,95,216,0.2)}
[data-theme="dark"] .dash-kpi-val{color:#e0e4ec}
[data-theme="dark"] .dash-table{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .dash-table-title{color:#e0e4ec}
[data-theme="dark"] .dash-table-head{color:rgba(255,255,255,0.4);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .dash-table-row{color:#e0e4ec;border-color:rgba(255,255,255,0.04)}

/* ═══ Dashboard: Welcome + Quick Submit + Activity Feed ═══ */
.dash-welcome-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:4px}
.dash-greeting{font-family:'DM Serif Display',serif;font-size:28px;color:var(--navy)}
/* Submit Referral -- animated corner borders */
.sr-btn{
  position:relative;display:inline-flex;align-items:center;gap:8px;
  padding:9px 18px;background:none;border:none;
  color:#DC2626;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:700;
  cursor:pointer;outline:none;white-space:nowrap;
  transition:transform 0.1s
}
.sr-btn:active{transform:scale(0.98);box-shadow:0.1px 0.1px 1px #DC2626}
.portal-topbar-right .sr-btn{margin-left:8px}
.sr-icon{stroke:red}

/* Four corner edge spans */
.sr-edge{position:absolute;background:#DC2626;transition:0.5s;box-shadow:0 0 6px rgba(220,38,38,0.35)}
.sr-edge:nth-child(1){top:0;left:0;width:3px;height:30%}
.sr-btn:hover .sr-edge:nth-child(1){height:100%}
.sr-edge:nth-child(2){top:0;left:0;width:15%;height:3px}
.sr-btn:hover .sr-edge:nth-child(2){width:100%}
.sr-edge:nth-child(3){bottom:0;right:0;width:3px;height:30%}
.sr-btn:hover .sr-edge:nth-child(3){height:100%}
.sr-edge:nth-child(4){bottom:0;right:0;width:15%;height:3px}
.sr-btn:hover .sr-edge:nth-child(4){width:100%}
.dash-activity-feed{background:var(--off);border:1px solid var(--off2);border-radius:14px;padding:24px;margin-bottom:24px}
.dash-activity-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:14px}
.dash-activity-item{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--off2);font-size:13px;color:var(--body);line-height:1.5}
.dash-activity-item:last-child{border-bottom:none}
.dash-activity-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px}
.dash-activity-dot-green{background:var(--cyan-text)}
.dash-activity-dot-blue{background:var(--blue)}
.dash-activity-dot-amber{background:var(--cyan-text)}
.dash-activity-time{color:var(--slate);font-size:12px;margin-left:auto;flex-shrink:0}

/* Dashboard Quick Links */
.dash-quick-links{margin-top:24px}
.dash-quick-links-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:14px}
.dash-quick-links-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.dash-quick-card{display:flex;flex-direction:column;align-items:flex-start;background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px;text-decoration:none;transition:border-color .2s,box-shadow .2s;cursor:pointer}
.dash-quick-card:hover{border-color:var(--blue);box-shadow:0 4px 16px rgba(11,95,216,0.08)}
.dash-quick-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.dash-quick-label{font-size:15px;font-weight:700;color:var(--navy);margin-bottom:4px}
.dash-quick-desc{font-size:13px;color:var(--slate);line-height:1.5}
@media(max-width:900px){.dash-quick-links-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.dash-quick-links-grid{grid-template-columns:1fr}}

[data-theme="dark"] .dash-greeting{color:#e0e4ec}
[data-theme="dark"] .dash-activity-feed{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .dash-activity-title{color:#e0e4ec}
[data-theme="dark"] .dash-activity-item{color:rgba(255,255,255,0.6);border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .dash-quick-links-title{color:#e0e4ec}
[data-theme="dark"] .dash-quick-card{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .dash-quick-card:hover{border-color:#4BA3FF;box-shadow:0 4px 16px rgba(75,163,255,0.1)}
[data-theme="dark"] .dash-quick-label{color:#e0e4ec}
[data-theme="dark"] .dash-quick-desc{color:rgba(255,255,255,0.5)}

/* ═══ Referrals: Sort, Bulk Actions, Empty State ═══ */
.ref-th-sort{cursor:pointer;display:flex;align-items:center;gap:4px;user-select:none;transition:color 0.15s}
.ref-th-sort:hover{color:var(--blue)}
.ref-th-sort .ref-sort-arrow{font-size:10px;opacity:0.4;transition:opacity 0.15s}
.ref-th-sort.ref-sorted .ref-sort-arrow{opacity:1;color:var(--blue)}
.ref-bulk-bar{display:none;align-items:center;gap:12px;padding:10px 16px;background:rgba(11,95,216,0.06);border:1px solid rgba(11,95,216,0.15);border-radius:8px;margin-bottom:12px;font-size:13px;font-weight:500;color:var(--navy)}
.ref-bulk-bar.ref-bulk-visible{display:flex}
.ref-bulk-btn{padding:6px 14px;border:1px solid var(--blue);color:var(--blue);background:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.15s}
.ref-bulk-btn:hover{background:rgba(11,95,216,0.08)}
.ref-cb{width:16px;height:16px;accent-color:var(--blue);cursor:pointer}
[data-theme="dark"] .ref-bulk-bar{background:rgba(11,95,216,0.1);border-color:rgba(11,95,216,0.25);color:#e0e4ec}

/* ═══ Earnings: Bar animation, sparklines, period wiring ═══ */
.earn-bar{transition:height 0.8s cubic-bezier(0.22,1,0.36,1)}
.earn-bar-init{height:0!important}
.earn-kpi-spark{margin-top:6px}
.earn-kpi-spark svg{display:block}

/* ═══ Payouts: Countdown, year filter, running total ═══ */
.pay-countdown-live{font-variant-numeric:tabular-nums;font-weight:700;color:#fff}
.pay-year-pills{display:flex;gap:6px}
.pay-year-pill{padding:6px 16px;border:1px solid var(--off2);background:var(--white);border-radius:20px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;color:var(--slate);cursor:pointer;transition:all 0.15s}
.pay-year-pill:hover{border-color:var(--blue);color:var(--blue)}
.pay-year-pill.pay-year-active{background:var(--blue);color:#fff;border-color:var(--blue)}
.pay-running-total{padding:16px 22px;font-size:15px;font-weight:700;color:var(--navy);text-align:right;border-top:2px solid var(--off2);background:var(--off)}
[data-theme="dark"] .pay-year-pill{background:#141e30;border-color:rgba(255,255,255,0.08);color:rgba(255,255,255,0.5)}
[data-theme="dark"] .pay-year-pill:hover{border-color:rgba(11,95,216,0.5);color:var(--cyan-text)}
[data-theme="dark"] .pay-year-pill.pay-year-active{background:var(--blue);color:#fff;border-color:var(--blue)}
[data-theme="dark"] .pay-running-total{color:#e0e4ec;border-color:rgba(255,255,255,0.06)}

/* ═══ Submit Referral: Validation, Success ═══ */
.sub-input-error{border-color:#DC2626!important;box-shadow:0 0 0 3px rgba(220,38,38,0.1)}
.sub-error-msg{font-size:12px;color:#DC2626;margin-top:4px;display:none}
.sub-field.sub-field-invalid .sub-error-msg{display:block}
.sub-field.sub-field-invalid .sub-input,
.sub-field.sub-field-invalid .sub-select{border-color:#DC2626;box-shadow:0 0 0 3px rgba(220,38,38,0.1)}
.sub-success{display:none;text-align:center;padding:48px 24px}
.sub-success-active{display:block}
.sub-success-icon{width:72px;height:72px;border-radius:50%;background:var(--cyan-text);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;animation:successPop 0.5s cubic-bezier(0.175,0.885,0.32,1.275)}
.sub-success-title{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy);margin-bottom:8px}
.sub-success-id{font-size:15px;color:var(--slate);margin-bottom:24px}
.sub-success-btn{padding:12px 28px;background:var(--blue);color:#fff;border:none;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:opacity 0.15s}
.sub-success-btn:hover{opacity:0.88}
@keyframes successPop{0%{transform:scale(0)}60%{transform:scale(1.15)}100%{transform:scale(1)}}
[data-theme="dark"] .sub-success-title{color:#e0e4ec}

/* Mobile submit form */
@media(max-width:768px){
  .sub-steps{gap:0;padding:0;margin-bottom:24px;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .sub-step-label{font-size:10px}
  .sub-step-num{width:28px;height:28px;font-size:12px}
  .sub-step-line{min-width:24px}
  .sub-field-grid{grid-template-columns:1fr!important;gap:14px}
  .sub-field-full{grid-column:auto}
  .sub-input,.sub-select,.sub-textarea{min-height:48px;font-size:16px!important;padding:12px 14px}
  .sub-input-prefix .sub-input{padding-left:28px}
  .sub-checkboxes{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .sub-check{min-height:44px;display:flex;align-items:center;padding:10px 12px}
  .sub-upload-zone{padding:32px 16px;min-height:80px}
  .sub-nav{position:sticky;bottom:68px;background:var(--white);padding:12px 0;border-top:1px solid var(--off2);z-index:10;gap:10px}
  .sub-btn-back,.sub-btn-next{flex:1;text-align:center;min-height:48px;font-size:15px}
  .sub-btn-submit{min-height:48px;font-size:15px}
  .sub-review-grid{grid-template-columns:1fr}
  .sub-success-icon{width:80px;height:80px}
  .sub-success-title{font-size:28px}
  [data-theme="dark"] .sub-nav{background:#0c1220;border-top-color:rgba(255,255,255,0.06)}
}

/* ═══ Documents: Search, type colors, drag animation ═══ */
.doc-search{display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--off2);border-radius:8px;background:var(--white);margin-bottom:16px}
.doc-search svg{flex-shrink:0;color:var(--slate)}
.doc-search-input{border:none;outline:none;background:none;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--navy);width:100%}
.doc-search-input::placeholder{color:var(--mist)}
.doc-icon-pdf svg{stroke:var(--blue)}
.doc-icon-doc svg{stroke:var(--sky)}
.doc-icon-xls svg{stroke:var(--cyan-text)}
.doc-dropzone-active{border-color:var(--blue)!important;background:rgba(11,95,216,0.04)!important;animation:dropPulse 1s ease infinite}
@keyframes dropPulse{0%,100%{border-color:var(--blue);box-shadow:0 0 0 0 rgba(11,95,216,0.15)}50%{border-color:var(--cyan-text);box-shadow:0 0 0 8px rgba(11,95,216,0)}}
.doc-th-sort{cursor:pointer;user-select:none;display:flex;align-items:center;gap:4px;transition:color 0.15s}
.doc-th-sort:hover{color:var(--blue)}
.doc-bulk-bar{display:none;align-items:center;gap:12px;padding:10px 16px;background:rgba(11,95,216,0.06);border:1px solid rgba(11,95,216,0.15);border-radius:8px;margin-bottom:12px;font-size:13px;font-weight:500;color:var(--navy)}
.doc-bulk-bar.doc-bulk-visible{display:flex}
[data-theme="dark"] .doc-search{background:#141e30;border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .doc-search-input{color:#e0e4ec}

/* ═══ Calculator: Animate numbers, tooltip, breakeven, share ═══ */
.calc-proj-amount{transition:opacity 0.15s}
.calc-breakeven{margin-top:16px;padding:16px;background:rgba(11,95,216,0.06);border:1px solid rgba(11,95,216,0.12);border-radius:10px;font-size:14px;color:var(--navy);line-height:1.6}
.calc-breakeven strong{color:var(--blue)}
.calc-share-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:1px solid var(--blue);color:var(--blue);background:none;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s;margin-top:12px}
.calc-share-btn:hover{background:rgba(11,95,216,0.06)}
.calc-slider-tooltip{position:absolute;top:-32px;background:var(--navy);color:#fff;padding:3px 10px;border-radius:5px;font-size:12px;font-weight:600;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity 0.15s}
.calc-slider-group{position:relative}
.calc-range:active~.calc-slider-tooltip,.calc-range:focus~.calc-slider-tooltip{opacity:1}
[data-theme="dark"] .calc-breakeven{background:rgba(11,95,216,0.1);border-color:rgba(11,95,216,0.2);color:#e0e4ec}

/* ═══ CE: Ring animation, continue banner, search ═══ */
.ce-ring-animate circle:nth-child(2){transition:stroke-dashoffset 1.2s cubic-bezier(0.22,1,0.36,1)}
.ce-continue-banner{display:flex;align-items:center;gap:14px;padding:16px 20px;background:rgba(11,95,216,0.06);border:1px solid rgba(11,95,216,0.15);border-radius:10px;margin-bottom:20px;cursor:pointer;transition:background 0.15s}
.ce-continue-banner:hover{background:rgba(11,95,216,0.1)}
.ce-continue-title{font-size:14px;font-weight:600;color:var(--navy)}
.ce-continue-sub{font-size:13px;color:var(--slate)}
.ce-continue-btn{margin-left:auto;padding:8px 18px;background:var(--blue);color:#fff;border:none;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer}
.ce-search{display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--off2);border-radius:8px;background:var(--white);margin-bottom:16px}
.ce-search svg{flex-shrink:0;color:var(--slate)}
.ce-search-input{border:none;outline:none;background:none;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--navy);width:100%}
.ce-search-input::placeholder{color:var(--mist)}
[data-theme="dark"] .ce-continue-banner{background:rgba(11,95,216,0.1);border-color:rgba(11,95,216,0.2)}
[data-theme="dark"] .ce-continue-title{color:#e0e4ec}
[data-theme="dark"] .ce-search{background:#141e30;border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .ce-search-input{color:#e0e4ec}

/* ═══ Marketing: Hover zoom, new badge, download counter ═══ */
.mk-card{transition:transform 0.2s ease,box-shadow 0.2s ease}
.mk-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(0,0,0,0.1)}
.mk-new-badge{display:inline-block;background:var(--cyan-text);color:#fff;font-size:9px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:2px 6px;border-radius:3px;margin-left:6px;vertical-align:middle}
.mk-popular-badge{display:inline-block;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-size:9px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:2px 6px;border-radius:3px;margin-left:6px;vertical-align:middle}
.mk-dl-count{font-size:10px;color:var(--mist);margin-bottom:2px}
.mk-dl-group{display:flex;flex-direction:column;align-items:flex-end}
.mk-preview{position:relative;overflow:hidden}
.mk-cobrand-active{background:rgba(14,127,148,0.06)!important;border-color:rgba(14,127,148,0.2)!important}
.mk-cobrand-active strong{color:var(--cyan-text)}

/* ═══ Marketing: Builder Panels ═══ */
.mk-builder-panel{margin-top:24px;background:var(--white);border:1px solid var(--off2);border-radius:14px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,0.06)}
.mk-builder-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--off2)}
.mk-builder-title{font-size:16px;font-weight:700;color:var(--navy)}
.mk-builder-subtitle{font-size:13px;color:var(--slate);margin-top:2px}
.mk-builder-close{background:none;border:none;font-size:24px;color:var(--slate);cursor:pointer;padding:4px 8px;border-radius:6px;transition:all 0.15s;line-height:1}
.mk-builder-close:hover{background:rgba(10,22,40,0.06);color:var(--navy)}
.mk-builder-layout{display:grid;grid-template-columns:340px 1fr;min-height:400px}
.mk-builder-controls{padding:24px;border-right:1px solid var(--off2);display:flex;flex-direction:column;gap:4px}
.mk-builder-label{font-size:11px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--slate);margin-top:12px}
.mk-builder-label:first-child{margin-top:0}
.mk-builder-input{width:100%;padding:9px 14px;border:1px solid var(--off2);border-radius:8px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--navy);background:var(--white);transition:border-color 0.15s}
.mk-builder-input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.08)}
.mk-builder-color{width:100%;height:38px;padding:2px;border:1px solid var(--off2);border-radius:8px;cursor:pointer;background:var(--white)}
.mk-builder-upload{display:block;padding:10px 14px;border:1px dashed var(--off2);border-radius:8px;font-size:13px;color:var(--slate);cursor:pointer;text-align:center;transition:all 0.15s}
.mk-builder-upload:hover{border-color:var(--blue);color:var(--blue);background:rgba(11,95,216,0.03)}
.mk-builder-export-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px;background:var(--blue);color:#fff;border:none;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s;margin-top:16px}
.mk-builder-export-btn:hover{background:#0948a8;box-shadow:0 4px 12px rgba(11,95,216,0.3)}
.mk-builder-link{font-size:12px;color:var(--blue);text-align:center;margin-top:10px;cursor:pointer;text-decoration:underline}
.mk-builder-link:hover{color:#0948a8}
.mk-builder-preview{padding:24px;display:flex;flex-direction:column;gap:12px;background:var(--off);overflow:auto}

/* Email template picker */
.mk-email-tpl-picker{display:flex;gap:8px}
.mk-email-tpl-opt,.mk-social-tpl-opt{flex:1;padding:10px;border:1px solid var(--off2);border-radius:8px;cursor:pointer;transition:all 0.15s;background:var(--white)}
.mk-email-tpl-opt:hover,.mk-social-tpl-opt:hover{border-color:var(--blue)}
.mk-tpl-selected{border-color:var(--blue)!important;background:rgba(11,95,216,0.04)!important;box-shadow:0 0 0 2px rgba(11,95,216,0.12)}
.mk-tpl-name{font-size:12px;font-weight:600;color:var(--navy)}
.mk-tpl-desc{font-size:11px;color:var(--slate);margin-top:2px}

/* Social template picker */
.mk-social-tpl-picker{display:flex;gap:8px}
.mk-tpl-swatch{width:100%;height:24px;border-radius:4px;margin-bottom:6px}

/* Social size picker */
.mk-social-sizes{display:flex;gap:4px;flex-wrap:wrap}
.mk-social-size-btn{padding:6px 12px;border:1px solid var(--off2);border-radius:6px;background:var(--white);font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;color:var(--slate);cursor:pointer;transition:all 0.15s}
.mk-social-size-btn:hover{border-color:var(--blue);color:var(--blue)}
.mk-size-active{background:var(--blue)!important;color:#fff!important;border-color:var(--blue)!important}
.mk-size-label{font-size:11px;color:var(--mist);margin-top:2px}

/* Email preview frame */
.mk-email-preview-frame{width:100%;flex:1;min-height:450px;border:1px solid var(--off2);border-radius:8px;background:#fff}

/* Social preview canvas */
.mk-social-preview-canvas{border-radius:8px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,0.08);align-self:center}

/* One-pager preview */
.mk-op-preview-wrap{border-radius:8px;box-shadow:0 2px 12px rgba(0,0,0,0.08);background:#fff;align-self:center}

/* ── Builder dark mode ── */
[data-theme="dark"] .mk-builder-panel{background:#0f1824;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .mk-builder-header{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .mk-builder-title{color:#e0e4ec}
[data-theme="dark"] .mk-builder-close{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .mk-builder-close:hover{background:rgba(255,255,255,0.06);color:#e0e4ec}
[data-theme="dark"] .mk-builder-controls{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .mk-builder-input{background:#141e30;border-color:rgba(255,255,255,0.08);color:#e0e4ec}
[data-theme="dark"] .mk-builder-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(75,163,255,0.12)}
[data-theme="dark"] .mk-builder-color{background:#141e30;border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .mk-builder-upload{border-color:rgba(255,255,255,0.1);color:rgba(255,255,255,0.5)}
[data-theme="dark"] .mk-builder-upload:hover{border-color:rgba(75,163,255,0.4);color:rgba(75,163,255,0.8)}
[data-theme="dark"] .mk-builder-preview{background:#0a1018}
[data-theme="dark"] .mk-email-tpl-opt,[data-theme="dark"] .mk-social-tpl-opt{background:#141e30;border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .mk-tpl-name{color:#e0e4ec}
[data-theme="dark"] .mk-social-size-btn{background:#141e30;border-color:rgba(255,255,255,0.08);color:rgba(255,255,255,0.5)}
[data-theme="dark"] .mk-email-preview-frame{border-color:rgba(255,255,255,0.06)}

/* ── Builder mobile ── */
@media(max-width:768px){
  .mk-builder-layout{grid-template-columns:1fr;min-height:auto}
  .mk-builder-controls{border-right:none;border-bottom:1px solid var(--off2)}
  .mk-builder-preview{min-height:300px}
  .mk-email-tpl-picker,.mk-social-tpl-picker{flex-direction:column}
  .mk-social-sizes{gap:4px}
}

/* ═══ Marketing Kit: Quick Actions, Recent, New Builders ═══ */
.mk-quick-actions{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.mk-qa-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;background:linear-gradient(135deg,var(--navy),#112244);color:#fff;border:none;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.2s;box-shadow:0 2px 8px rgba(10,22,40,0.15)}
.mk-qa-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(10,22,40,0.25)}
.mk-qa-btn svg{stroke:var(--cyan-text);flex-shrink:0}

.mk-recent{background:var(--off);border:1px solid var(--off2);border-radius:10px;padding:14px 18px;margin-bottom:16px}
.mk-recent-header{margin-bottom:10px}
.mk-recent-title{font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--slate)}
.mk-recent-list{display:flex;flex-direction:column;gap:6px}
.mk-recent-item{display:flex;align-items:center;gap:10px;font-size:13px}
.mk-recent-icon{color:var(--blue);flex-shrink:0;display:flex}
.mk-recent-label{flex:1;color:var(--navy);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mk-recent-time{font-size:11px;color:var(--mist);flex-shrink:0}

.mk-dl-dropdown{display:flex;gap:4px;align-items:center}
.mk-dl-sm{padding:4px 8px!important;font-size:10px!important;gap:3px!important}

.mk-ads-tpl-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}

[data-theme="dark"] .mk-qa-btn{background:linear-gradient(135deg,rgba(75,163,255,0.15),rgba(0,200,224,0.1));color:#e0e4ec;box-shadow:0 2px 8px rgba(0,0,0,0.3)}
[data-theme="dark"] .mk-recent{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .mk-recent-label{color:#e0e4ec}

@media(max-width:768px){
  .mk-quick-actions{flex-direction:column}
  .mk-qa-btn{justify-content:center}
  .mk-dl-dropdown{flex-wrap:wrap}
  .mk-ads-tpl-picker{grid-template-columns:repeat(2,1fr)}
}

/* ═══ Training: Clickable checklist, progress bars, time est ═══ */
.trn-check-item-clickable{cursor:pointer;transition:background 0.15s}
.trn-check-item-clickable:hover{background:rgba(11,95,216,0.04);border-radius:8px}
.trn-time-estimate{font-size:14px;color:var(--slate);margin-bottom:20px}
.trn-mod-progress{height:4px;background:var(--off2);border-radius:2px;margin-top:8px;overflow:hidden}
.trn-mod-progress-fill{height:100%;background:var(--blue);border-radius:2px;transition:width 0.3s}

/* ═══ Settings: Unsaved bar, avatar, invite form, confirmations ═══ */
.set-unsaved-bar{display:none;position:sticky;top:0;z-index:50;padding:12px 20px;background:#FEF3C7;border:1px solid #F59E0B;border-radius:8px;font-size:14px;font-weight:500;color:#92400E;margin-bottom:16px;align-items:center;justify-content:space-between;gap:12px}
.set-unsaved-bar.set-unsaved-visible{display:flex}
.set-unsaved-btn{padding:6px 16px;background:#F59E0B;color:#fff;border:none;border-radius:6px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer}
.set-avatar-upload{width:80px;height:80px;border-radius:50%;background:var(--off);border:2px dashed var(--off2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color 0.15s;overflow:hidden;margin-bottom:16px}
.set-avatar-upload:hover{border-color:var(--blue)}
.set-avatar-upload img{width:100%;height:100%;object-fit:cover}
.set-invite-form{display:none;padding:16px;background:var(--off);border:1px solid var(--off2);border-radius:10px;margin-top:12px}
.set-invite-form.set-invite-visible{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end}
.set-invite-form .set-input{padding:8px 12px;font-size:13px}
.set-invite-submit{padding:8px 18px;background:var(--blue);color:#fff;border:none;border-radius:6px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer;height:38px}
.set-confirm-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:9998;align-items:center;justify-content:center}
.set-confirm-overlay.set-confirm-visible{display:flex}
.set-confirm-dialog{background:var(--white);border-radius:12px;padding:28px;max-width:420px;width:90%;box-shadow:0 20px 60px rgba(0,0,0,0.3)}
.set-confirm-title{font-size:18px;font-weight:700;color:var(--navy);margin-bottom:8px}
.set-confirm-text{font-size:14px;color:var(--body);margin-bottom:20px;line-height:1.6}
.set-confirm-actions{display:flex;gap:10px;justify-content:flex-end}
.set-confirm-cancel{padding:8px 20px;background:var(--off);color:var(--navy);border:1px solid var(--off2);border-radius:7px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:500;cursor:pointer}
.set-confirm-danger{padding:8px 20px;background:#DC2626;color:#fff;border:none;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;cursor:pointer}
[data-theme="dark"] .set-unsaved-bar{background:rgba(245,158,11,0.15);border-color:rgba(245,158,11,0.3);color:#FCD34D}
[data-theme="dark"] .set-invite-form{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .set-confirm-dialog{background:#141e30}
[data-theme="dark"] .set-confirm-title{color:#e0e4ec}
[data-theme="dark"] .set-confirm-text{color:rgba(255,255,255,0.6)}

/* ═══ Support: Expandable tickets, KB search, AM status, live chat ═══ */
.sup-ticket-row{cursor:pointer;transition:background 0.15s}
.sup-ticket-row:hover{background:var(--off)}
.sup-ticket-detail{display:none;padding:12px 16px;font-size:13px;color:var(--body);line-height:1.6;background:var(--off);border-bottom:1px solid var(--off2)}
.sup-ticket-row.sup-ticket-open+.sup-ticket-detail{display:block}
.sup-kb-search{display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--off2);border-radius:8px;background:var(--white);margin-bottom:16px}
.sup-kb-search svg{flex-shrink:0;color:var(--slate)}
.sup-kb-search-input{border:none;outline:none;background:none;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--navy);width:100%}
.sup-kb-search-input::placeholder{color:var(--mist)}
.sup-am-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;margin-top:8px}
.sup-am-dot{width:8px;height:8px;border-radius:50%}
.sup-am-dot-online{background:var(--cyan-text)}
.sup-am-dot-offline{background:#DC2626}
.sup-live-chat-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--blue);color:#fff;border:none;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:opacity 0.15s;margin-top:12px;position:relative}
.sup-live-chat-btn:hover{opacity:0.88}
.sup-live-chat-tooltip{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;padding:6px 12px;border-radius:6px;font-size:12px;white-space:nowrap;pointer-events:none}
.sup-live-chat-btn:hover .sup-live-chat-tooltip{display:block}
[data-theme="dark"] .sup-kb-search{background:#141e30;border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .sup-kb-search-input{color:#e0e4ec}
[data-theme="dark"] .sup-ticket-detail{background:rgba(255,255,255,0.02);border-color:rgba(255,255,255,0.04)}

/* ═══ Notification Bell ═══ */
.portal-notif-wrap{position:relative}
.portal-notif-btn{background:none;border:1px solid var(--off2);border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--slate);transition:all 0.15s;position:relative}
.portal-notif-btn:hover{border-color:var(--blue);color:var(--blue)}
.portal-notif-badge{position:absolute;top:-4px;right:-4px;width:18px;height:18px;border-radius:50%;background:#DC2626;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--white)}
.portal-notif-panel{display:none;position:absolute;top:calc(100% + 8px);right:0;width:360px;background:var(--white);border:1px solid var(--off2);border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,0.15);z-index:200;max-height:400px;overflow-y:auto}
.portal-notif-panel.portal-notif-open{display:block}
.portal-notif-header{padding:14px 16px;border-bottom:1px solid var(--off2);font-size:14px;font-weight:700;color:var(--navy);display:flex;justify-content:space-between;align-items:center}
.portal-notif-mark{font-size:12px;font-weight:500;color:var(--blue);cursor:pointer;background:none;border:none;font-family:'DM Sans',sans-serif}
.portal-notif-item{padding:12px 16px;border-bottom:1px solid var(--off2);font-size:13px;color:var(--body);line-height:1.5;transition:background 0.1s}
.portal-notif-item:hover{background:var(--off)}
.portal-notif-item:last-child{border-bottom:none}
.portal-notif-item-unread{background:rgba(11,95,216,0.04)}
.portal-notif-time{font-size:11px;color:var(--slate);margin-top:4px}
[data-theme="dark"] .portal-notif-btn{border-color:rgba(255,255,255,0.08);color:rgba(255,255,255,0.5)}
[data-theme="dark"] .portal-notif-badge{border-color:#0c1220}
[data-theme="dark"] .portal-notif-panel{background:#141e30;border-color:rgba(255,255,255,0.06);box-shadow:0 12px 40px rgba(0,0,0,0.5)}
[data-theme="dark"] .portal-notif-header{border-color:rgba(255,255,255,0.06);color:#e0e4ec}
[data-theme="dark"] .portal-notif-item{border-color:rgba(255,255,255,0.04);color:rgba(255,255,255,0.6)}
[data-theme="dark"] .portal-notif-item:hover{background:rgba(255,255,255,0.03)}
[data-theme="dark"] .portal-notif-item-unread{background:rgba(11,95,216,0.08)}

/* ═══ Portal-wide Search ═══ */
.portal-search-wrap{position:relative;flex:1}
.portal-search{display:flex;align-items:center;gap:8px;padding:7px 14px;border:1px solid var(--off2);border-radius:8px;background:var(--off);transition:border-color 0.15s}
.portal-search:focus-within{border-color:var(--blue);background:var(--white)}
.portal-search svg{flex-shrink:0;color:var(--slate)}
.portal-search-input{border:none;outline:none;background:none;font-family:'DM Sans',sans-serif;font-size:13px;color:var(--navy);width:100%}
.portal-search-input::placeholder{color:var(--mist)}
.portal-search-kbd{font-size:10px;font-weight:600;color:var(--slate);background:var(--off);border:1px solid var(--off2);border-radius:4px;padding:2px 7px;cursor:pointer;white-space:nowrap;font-family:'DM Sans',sans-serif;flex-shrink:0}
.portal-search-results{display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--white);border:1px solid var(--off2);border-radius:10px;box-shadow:0 8px 32px rgba(0,0,0,0.12);z-index:200;max-height:340px;overflow-y:auto}
.portal-search-results.portal-sr-open{display:block}
.portal-sr-group{padding:8px 14px;font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--slate);background:var(--off)}
.portal-sr-item{padding:10px 14px;font-size:13px;color:var(--navy);cursor:pointer;border-bottom:1px solid var(--off2);transition:background 0.1s}
.portal-sr-item:hover{background:var(--off)}
.portal-sr-item:last-child{border-bottom:none}
.portal-sr-empty{padding:20px;text-align:center;font-size:13px;color:var(--slate)}
[data-theme="dark"] .portal-search{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .portal-search:focus-within{border-color:rgba(11,95,216,0.5);background:rgba(255,255,255,0.06)}
[data-theme="dark"] .portal-search-input{color:#e0e4ec}
[data-theme="dark"] .portal-search-results{background:#141e30;border-color:rgba(255,255,255,0.06);box-shadow:0 8px 32px rgba(0,0,0,0.5)}
[data-theme="dark"] .portal-sr-group{background:rgba(255,255,255,0.04);color:rgba(255,255,255,0.4)}
[data-theme="dark"] .portal-sr-item{color:#e0e4ec;border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .portal-sr-item:hover{background:rgba(255,255,255,0.04)}

@media(max-width:768px){
  .dash-kpi-row{grid-template-columns:1fr 1fr}
  .dash-pipeline{padding:16px}
  .pipe-track{grid-template-columns:1fr;gap:16px}
  .pipe-stage{min-width:0}
  .pipe-cards{flex-direction:row;overflow-x:auto;gap:10px;-webkit-overflow-scrolling:touch;padding-bottom:4px}
  .pipe-card{min-width:160px;flex-shrink:0}
  .dash-pipeline-legend{display:none}
  .portal-notif-panel{width:300px;right:-60px}
  .portal-search-wrap{display:none}
  .set-invite-form.set-invite-visible{grid-template-columns:1fr}
}

/* ═══ REFERRAL PLAYBOOK ═══ */
.pb-stats{display:flex;gap:24px;margin-bottom:32px}
.pb-stat{flex:1;background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px 24px;text-align:center}
.pb-stat-val{font-family:'DM Serif Display',serif;font-size:28px;color:var(--navy);margin-bottom:4px}
.pb-stat-label{font-size:13px;color:var(--slate);line-height:1.5}

.pb-tabs{display:flex;gap:4px;border-bottom:1px solid var(--off2);overflow-x:auto;margin-bottom:0;padding-bottom:0}
.pb-tab{padding:12px 20px;font-size:13px;font-weight:600;color:var(--slate);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;transition:all 0.15s;white-space:nowrap}
.pb-tab:hover{color:var(--blue)}
.pb-tab-active{color:var(--blue);border-bottom-color:var(--blue)}

.pb-panel{display:none;padding-top:32px}
.pb-panel-active{display:block}
.pb-panel-intro{margin-bottom:28px}
.pb-panel-title{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy);margin-bottom:8px}
.pb-panel-desc{font-size:15px;color:var(--body);line-height:1.7;max-width:640px}

/* Scenario Quiz */
.pb-quiz{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:24px;margin-top:28px}
.pb-quiz-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.pb-quiz-header svg{color:var(--blue);flex-shrink:0}
.pb-quiz-title{font-size:18px;font-weight:700;color:var(--navy)}
.pb-quiz-sub{font-size:13px;color:var(--slate)}
.pb-quiz-score{margin-left:auto;font-size:13px;font-weight:700;color:var(--cyan-text);white-space:nowrap}
.pb-quiz-scenario{font-size:15px;color:var(--navy);line-height:1.7;background:var(--off);border-radius:10px;padding:16px 20px;margin-bottom:16px;font-style:italic;border-left:3px solid var(--blue)}
.pb-quiz-options{display:flex;flex-direction:column;gap:10px;margin-bottom:4px}
.pb-quiz-option{text-align:left;padding:14px 18px;font-size:14px;line-height:1.6;color:var(--body);background:var(--white);border:1px solid var(--off2);border-radius:10px;cursor:pointer;transition:border-color .15s,background .15s}
.pb-quiz-option:hover:not(.pb-quiz-disabled){border-color:var(--blue);background:rgba(11,95,216,0.02)}
.pb-quiz-disabled{cursor:default;opacity:0.7}
.pb-quiz-correct{border-color:var(--cyan-text);background:rgba(0,200,224,0.06);opacity:1;font-weight:600}
.pb-quiz-wrong{border-color:#DC2626;background:rgba(220,38,38,0.04);opacity:1}
.pb-quiz-explain{font-size:14px;color:var(--body);line-height:1.7;padding:16px;background:rgba(0,200,224,0.04);border-radius:10px;margin-top:14px}
.pb-quiz-explain strong{color:var(--navy)}
.pb-quiz-next{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;font-size:14px;font-weight:600;color:#fff;background:var(--blue);border:none;border-radius:8px;cursor:pointer;margin-top:14px;transition:background .15s}
.pb-quiz-next:hover{background:var(--navy)}

/* Seasonal Tip */
.pb-seasonal-tip{display:flex;gap:10px;align-items:flex-start;background:linear-gradient(135deg,rgba(11,95,216,0.04),rgba(0,200,224,0.04));border:1px solid rgba(11,95,216,0.1);border-radius:10px;padding:14px 18px;margin-bottom:16px;font-size:13px;color:var(--body);line-height:1.6}
.pb-seasonal-tip svg{flex-shrink:0;color:var(--blue);margin-top:1px}

/* Win Tracker / Referral Streak */
.pb-streak{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:18px 24px;margin-bottom:20px;flex-wrap:wrap}
.pb-streak-left{display:flex;align-items:center;gap:14px}
.pb-streak-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--cyan-text));color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pb-streak-title{font-size:16px;font-weight:700;color:var(--navy)}
.pb-streak-sub{font-size:13px;color:var(--slate)}
.pb-streak-sub span{font-weight:700;color:var(--navy)}
.pb-streak-right{display:flex;align-items:center;gap:16px;flex:1;min-width:260px;justify-content:flex-end}
.pb-streak-bar-wrap{display:flex;align-items:center;gap:8px;flex:1;max-width:200px}
.pb-streak-bar{flex:1;height:8px;background:var(--off);border-radius:4px;overflow:hidden}
.pb-streak-fill{height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan-text));border-radius:4px;transition:width .4s}
.pb-streak-pct{font-size:12px;font-weight:700;color:var(--navy);min-width:32px}
.pb-streak-controls{display:flex;align-items:center;gap:8px}
.pb-streak-label{font-size:12px;color:var(--slate);white-space:nowrap}
.pb-streak select{font-size:12px;padding:4px 8px;border:1px solid var(--off2);border-radius:6px;background:var(--white);color:var(--navy);cursor:pointer}
.pb-streak-add{width:32px;height:32px;border-radius:8px;border:none;background:var(--blue);color:#fff;font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
.pb-streak-add:hover{background:var(--navy)}

/* Spotting Opportunities Cards */
.pb-card-grid{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.pb-card{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:0;transition:box-shadow 0.2s,border-color 0.2s;overflow:hidden}
.pb-card:hover{border-color:rgba(11,95,216,0.2)}
.pb-card-head{display:flex;align-items:center;gap:14px;padding:16px 20px;cursor:pointer;user-select:none}
.pb-card-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pb-icon-red{background:rgba(220,38,38,0.08);color:#DC2626}
.pb-icon-red svg{stroke:#DC2626}
.pb-icon-amber{background:rgba(202,138,4,0.08);color:#CA8A04}
.pb-icon-amber svg{stroke:#CA8A04}
.pb-icon-blue{background:rgba(11,95,216,0.08);color:var(--blue)}
.pb-icon-blue svg{stroke:var(--blue)}
.pb-icon-purple{background:rgba(139,92,246,0.08);color:#8B5CF6}
.pb-icon-purple svg{stroke:#8B5CF6}
.pb-icon-teal{background:rgba(0,200,224,0.08);color:var(--cyan-text)}
.pb-icon-teal svg{stroke:var(--cyan-text)}
.pb-icon-green{background:rgba(22,163,74,0.08);color:#16A34A}
.pb-icon-green svg{stroke:#16A34A}
.pb-card-title{font-size:15px;font-weight:700;color:var(--navy);flex:1}
.pb-card-chevron{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:transform .25s}
.pb-card-chevron svg{stroke:var(--slate);width:16px;height:16px}
.pb-card-open .pb-card-chevron{transform:rotate(180deg)}
.pb-card-body{font-size:14px;color:var(--body);line-height:1.7;max-height:0;overflow:hidden;transition:max-height .3s ease,opacity .2s;opacity:0;padding:0 20px}
.pb-card-open .pb-card-body{max-height:500px;opacity:1;padding:0 20px 20px}
.pb-card-open{border-color:rgba(11,95,216,0.15);box-shadow:0 4px 20px rgba(10,22,40,0.05)}
.pb-card-body strong{color:var(--navy);font-weight:600}

/* Tip Banner */
.pb-tip{display:flex;gap:12px;align-items:flex-start;background:rgba(11,95,216,0.04);border:1px solid rgba(11,95,216,0.12);border-radius:10px;padding:16px 20px;font-size:14px;color:var(--body);line-height:1.7}
.pb-tip svg{flex-shrink:0;margin-top:2px;stroke:var(--blue)}

/* Scripts Panel */
.pb-script-list{display:flex;flex-direction:column;gap:16px}
.pb-script{background:var(--white);border:1px solid var(--off2);border-radius:12px;overflow:hidden}
.pb-script-header{padding:20px 24px 16px;border-bottom:1px solid var(--off2)}
.pb-script-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:8px}
.pb-badge-green{background:rgba(22,163,74,0.08);color:#16A34A}
.pb-badge-blue{background:rgba(11,95,216,0.08);color:var(--blue)}
.pb-badge-purple{background:rgba(139,92,246,0.08);color:#8B5CF6}
.pb-badge-amber{background:rgba(202,138,4,0.08);color:#CA8A04}
.pb-badge-teal{background:rgba(0,200,224,0.08);color:var(--cyan-text)}
.pb-script-title{font-size:17px;font-weight:700;color:var(--navy);margin-bottom:4px}
.pb-script-when{font-size:13px;color:var(--slate)}
.pb-script-body{padding:20px 24px}
.pb-script-text{font-size:15px;color:var(--navy);line-height:1.8;background:var(--off);border-radius:8px;padding:16px 20px;margin-bottom:14px;font-style:italic;border-left:3px solid var(--blue);position:relative}
.pb-script-why{font-size:14px;color:var(--body);line-height:1.7}

/* Script Rating */
.pb-rate-bar{display:flex;align-items:center;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--off2)}
.pb-rate-label{font-size:12px;color:var(--slate);margin-right:4px}
.pb-rate-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--off2);background:var(--white);color:var(--slate);cursor:pointer;transition:all .15s}
.pb-rate-up:hover,.pb-rate-up.pb-rated{color:var(--cyan-text);border-color:var(--cyan-text);background:rgba(0,200,224,0.06)}
.pb-rate-down:hover,.pb-rate-down.pb-rated{color:#DC2626;border-color:#DC2626;background:rgba(220,38,38,0.06)}

/* Objections Panel */
.pb-objection-list{display:flex;flex-direction:column;gap:16px}
.pb-objection{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px}
.pb-obj-q{font-size:17px;font-weight:700;color:var(--navy);margin-bottom:14px;font-style:italic}
.pb-obj-q::before{content:'"';color:var(--blue);font-size:24px;font-weight:800;margin-right:2px}
.pb-obj-a{font-size:15px;color:var(--body);line-height:1.8;margin-bottom:14px;padding-left:16px;border-left:2px solid var(--cyan-text);position:relative}
.pb-obj-insight{font-size:13px;color:var(--slate);line-height:1.6;background:var(--off);border-radius:8px;padding:12px 16px}

/* Copy Buttons */
.pb-copy-btn{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;color:var(--slate);background:var(--white);border:1px solid var(--off2);border-radius:6px;cursor:pointer;opacity:0;transition:opacity .2s,background .15s,color .15s}
.pb-script-text:hover .pb-copy-btn,.pb-obj-a:hover .pb-copy-btn{opacity:1}
.pb-copy-btn:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.pb-copy-btn-done{opacity:1;background:var(--cyan-text);color:#fff;border-color:var(--cyan-text)}
.pb-copy-btn-done:hover{background:var(--cyan-text);color:#fff}

/* Follow-Up Timeline */
.pb-timeline{position:relative;padding-left:32px;margin-bottom:24px}
.pb-timeline::before{content:'';position:absolute;left:14px;top:4px;bottom:4px;width:2px;background:var(--off2)}
.pb-tl-item{position:relative;margin-bottom:24px}
.pb-tl-item:last-child{margin-bottom:0}
.pb-tl-marker{position:absolute;left:-32px;width:28px;height:28px;border-radius:50%;background:var(--blue);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;z-index:1}
.pb-tl-content{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px 24px}
.pb-tl-time{font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--blue);margin-bottom:6px}
.pb-tl-title{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:8px}
.pb-tl-desc{font-size:14px;color:var(--body);line-height:1.7}

/* Network Panel */
.pb-network-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}
.pb-network-card{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:24px;transition:box-shadow 0.2s}
.pb-network-card:hover{box-shadow:0 8px 32px rgba(10,22,40,0.08)}
.pb-net-icon{width:44px;height:44px;border-radius:10px;background:var(--off);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.pb-net-icon svg{stroke:var(--navy)}
.pb-net-title{font-size:15px;font-weight:700;color:var(--navy);margin-bottom:8px}
.pb-net-desc{font-size:14px;color:var(--body);line-height:1.7;margin-bottom:10px}
.pb-net-conversion{font-size:12px;font-weight:700;color:var(--cyan-text);text-transform:uppercase;letter-spacing:0.06em}

/* ═══ BUSINESS PLANNER ═══ */

/* Carousel Header */
.bpc-header{margin-bottom:32px}
.bpc-step-label{font-size:12px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--slate);margin-bottom:10px}
.bpc-progress{height:4px;background:var(--off);border-radius:4px;overflow:hidden}
.bpc-progress-fill{height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan-text));border-radius:4px;transition:width 0.4s cubic-bezier(0.22,1,0.36,1)}

/* Carousel Viewport */
.bpc-viewport{position:relative;min-height:320px}
.bpc-slide{display:none;animation:bpcFadeIn 0.35s ease}
.bpc-slide-active{display:block}
@keyframes bpcFadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

/* Question Text */
.bpc-question{font-family:'DM Serif Display',serif;font-size:26px;color:var(--navy);margin-bottom:8px;line-height:1.3}
.bpc-sub{font-size:15px;color:var(--slate);margin-bottom:28px;line-height:1.6}

/* Option Buttons */
.bpc-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bpc-opt{display:flex;align-items:center;gap:12px;padding:16px 20px;font-size:15px;font-weight:500;color:var(--navy);background:var(--white);border:1.5px solid var(--off2);border-radius:12px;cursor:pointer;transition:all 0.15s;text-align:left;font-family:'DM Sans',sans-serif}
.bpc-opt:hover{border-color:var(--blue);background:rgba(11,95,216,0.02)}
.bpc-opt svg{flex-shrink:0;stroke:var(--slate);transition:stroke 0.15s}
.bpc-opt-selected{border-color:var(--blue);background:rgba(11,95,216,0.04);font-weight:600}
.bpc-opt-selected svg{stroke:var(--blue)}

/* Big Input (numeric) */
.bpc-input-wrap{max-width:320px}
.bpc-big-input{width:100%;padding:18px 20px;font-size:32px;font-weight:700;font-family:'DM Sans',sans-serif;color:var(--navy);border:2px solid var(--off2);border-radius:14px;background:var(--white);outline:none;text-align:center;transition:border-color 0.15s}
.bpc-big-input:focus{border-color:var(--blue)}
.bpc-input-hint{font-size:13px;color:var(--slate);text-align:center;margin-top:10px}

/* Checkbox Options */
.bpc-checks{display:flex;flex-direction:column;gap:12px}
.bpc-check-opt{display:flex;align-items:center;gap:14px;padding:16px 20px;font-size:15px;color:var(--navy);background:var(--white);border:1.5px solid var(--off2);border-radius:12px;cursor:pointer;transition:all 0.15s;font-weight:500}
.bpc-check-opt:hover{border-color:var(--blue)}
.bpc-check-opt input{position:absolute;opacity:0;width:0;height:0}
.bpc-check-box{width:22px;height:22px;border-radius:6px;border:2px solid var(--mist);display:flex;align-items:center;justify-content:center;transition:all 0.15s;background:var(--white);flex-shrink:0}
.bpc-check-box svg{opacity:0;transition:opacity 0.15s}
.bpc-check-opt input:checked~.bpc-check-box{background:var(--blue);border-color:var(--blue)}
.bpc-check-opt input:checked~.bpc-check-box svg{opacity:1}
.bpc-check-opt:has(input:checked){border-color:var(--blue);background:rgba(11,95,216,0.04)}

/* Optional Details Grid */
.bpc-optional-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}

/* Navigation */
.bpc-nav{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding-top:24px;border-top:1px solid var(--off2)}
.bpc-nav-back{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:600;color:var(--slate);background:none;border:1px solid var(--off2);border-radius:10px;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif}
.bpc-nav-back:hover{color:var(--navy);border-color:var(--navy)}
.bpc-nav-next{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;font-size:14px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--blue),var(--cyan-text));border:none;border-radius:10px;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;box-shadow:0 4px 16px rgba(11,95,216,0.2)}
.bpc-nav-next:hover{box-shadow:0 6px 24px rgba(11,95,216,0.3);transform:translateY(-1px)}

/* Existing fields (used in optional step) */
.bp-field{margin-bottom:20px}
.bp-label{display:block;font-size:14px;font-weight:600;color:var(--navy);margin-bottom:6px}
.bp-input,.bp-select{width:100%;padding:10px 14px;font-size:15px;font-family:'DM Sans',sans-serif;border:1.5px solid var(--mist);border-radius:7px;background:var(--white);color:var(--ink);outline:none;transition:border-color 0.15s}
.bp-select{padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;appearance:none;-webkit-appearance:none;cursor:pointer}
.bp-input:focus,.bp-select:focus{border-color:var(--blue)}
.bp-hint{font-size:12px;color:var(--slate);margin-top:4px}

/* Roadmap Results */
.bp-insights-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-bottom:40px}
.bp-insight-card{background:linear-gradient(135deg,rgba(11,95,216,0.03),rgba(0,200,224,0.03));border:1px solid rgba(11,95,216,0.1);border-radius:14px;padding:32px 24px;text-align:center}
.bp-insight-card:first-child{background:linear-gradient(135deg,rgba(11,95,216,0.06),rgba(75,163,255,0.04));border-color:rgba(11,95,216,0.15)}
.bp-insight-card:first-child .bp-insight-val{color:var(--blue)}
.bp-insight-val{font-family:'DM Serif Display',serif;font-size:32px;color:var(--navy);margin-bottom:8px}
.bp-insight-title{font-size:11px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:0.12em;margin-bottom:12px}
.bp-insight-desc{font-size:13px;color:var(--body);line-height:1.7}

.bp-timeline{border-left:3px solid rgba(11,95,216,0.1);margin-left:22px;padding-left:0}
.bp-month{margin-bottom:40px;padding-left:32px;position:relative}
.bp-month:last-child{margin-bottom:0}
.bp-month-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}
.bp-month-num{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#0B5FD8,#00C8E0);color:#fff;font-family:'DM Serif Display',serif;font-size:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;left:-56px;margin-right:-40px;box-shadow:0 4px 16px rgba(11,95,216,0.25)}
.bp-month-label{font-size:20px;font-weight:800;color:var(--navy);letter-spacing:-0.01em}
.bp-month-sub{font-size:13px;color:var(--slate);margin-top:2px}

.bp-task-list{display:flex;flex-direction:column;gap:14px}
.bp-task{display:flex;gap:18px;background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:24px 28px;transition:box-shadow 0.2s,border-color 0.2s}
.bp-task:hover{box-shadow:0 8px 28px rgba(10,22,40,0.06);border-color:rgba(11,95,216,0.12)}
.bp-task-type{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.bp-type-setup{background:rgba(139,92,246,0.08)}
.bp-type-setup svg{stroke:#8B5CF6}
.bp-type-action{background:rgba(11,95,216,0.08)}
.bp-type-action svg{stroke:var(--blue)}
.bp-type-marketing{background:rgba(0,200,224,0.08)}
.bp-type-marketing svg{stroke:var(--cyan-text)}
.bp-type-growth{background:rgba(22,163,74,0.08)}
.bp-type-growth svg{stroke:#16A34A}
.bp-task-body{flex:1;min-width:0}
.bp-task-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.bp-task-title{font-size:15px;font-weight:700;color:var(--navy);line-height:1.4}
.bp-prio{font-size:10px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;padding:4px 10px;border-radius:6px;white-space:nowrap;margin-top:2px}
.bp-prio-high{background:rgba(220,38,38,0.06);color:#DC2626}
.bp-prio-med{background:rgba(202,138,4,0.06);color:#CA8A04}
.bp-task-desc{font-size:13.5px;color:var(--body);line-height:1.75;letter-spacing:0.005em}
.bp-tool-link{color:var(--blue);text-decoration:none;font-weight:600;border-bottom:1px dashed var(--blue);cursor:pointer;transition:color .15s,border-color .15s}
.bp-tool-link:hover{color:var(--navy);border-bottom-color:var(--navy)}

/* Action Bar */
.bp-action-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:12px;padding-bottom:24px;border-bottom:1px solid var(--off2)}
.bp-action-title{font-family:'DM Serif Display',serif;font-size:26px;font-weight:400;color:var(--navy)}
.bp-action-btns{display:flex;gap:10px}
.bp-action-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;font-size:13px;font-weight:600;border-radius:8px;border:1px solid var(--off2);background:var(--white);color:var(--body);cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif}
.bp-btn-pdf{border-color:rgba(11,95,216,0.2);color:var(--blue);background:rgba(11,95,216,0.04)}
.bp-btn-pdf:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.bp-btn-reset:hover{background:var(--off);color:var(--navy)}
.bp-btn-ai{border-color:rgba(139,92,246,0.2);color:#7c3aed;background:rgba(139,92,246,0.04)}
.bp-btn-ai:hover{background:#7c3aed;color:#fff;border-color:#7c3aed}
.bp-btn-ai:disabled{opacity:0.6;cursor:not-allowed;pointer-events:none}
.bp-ai-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(124,58,237,0.2);border-top-color:#7c3aed;border-radius:50%;animation:bpSpin .6s linear infinite}
@keyframes bpSpin{to{transform:rotate(360deg)}}

/* Industry Benchmarks Panel */
.bp-benchmarks{margin-bottom:32px;background:linear-gradient(135deg,rgba(11,95,216,0.03) 0%,rgba(0,200,224,0.02) 100%);border:1px solid rgba(11,95,216,0.1);border-radius:16px;padding:24px 28px;overflow:hidden}
.bp-bench-header{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;color:var(--navy);margin-bottom:20px;letter-spacing:-0.01em}
.bp-bench-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}
.bp-bench-card{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px;text-align:center;transition:border-color .2s}
.bp-bench-card:hover{border-color:rgba(11,95,216,0.2)}
.bp-bench-val{font-family:'DM Serif Display',serif;font-size:28px;font-weight:400;color:var(--navy);margin-bottom:4px}
.bp-bench-label{font-size:12px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:6px}
.bp-bench-note{font-size:11px;color:var(--slate);line-height:1.4}
.bp-bench-comparison{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px 24px}
.bp-bench-comp-title{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:14px}
.bp-bench-comp-bar{position:relative;height:48px}
.bp-bench-bar-track{position:relative;height:6px;background:linear-gradient(90deg,rgba(11,95,216,0.08),rgba(0,200,224,0.15));border-radius:6px;top:16px}
.bp-bench-bar-avg,.bp-bench-bar-you,.bp-bench-bar-top{position:absolute;top:0;transform:translateX(-50%)}
.bp-bench-bar-dot{width:14px;height:14px;border-radius:50%;background:var(--slate);border:3px solid var(--white);box-shadow:0 2px 6px rgba(0,0,0,0.12);margin:0 auto}
.bp-bench-bar-dot-you{background:var(--blue)}
.bp-bench-bar-dot-top{background:#00C8E0}
.bp-bench-bar-label{font-size:10px;font-weight:600;color:var(--slate);text-align:center;margin-top:4px;white-space:nowrap}

/* AI-Powered Insights Panel */
.bp-ai-insights{margin-bottom:32px;display:none}
.bp-ai-header{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;color:#7c3aed;margin-bottom:16px}
.bp-ai-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;padding:3px 10px;border-radius:20px}
.bp-ai-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.bp-ai-card{background:linear-gradient(135deg,rgba(139,92,246,0.03) 0%,rgba(168,85,247,0.02) 100%);border:1px solid rgba(139,92,246,0.12);border-radius:14px;padding:22px;transition:border-color .2s,box-shadow .2s}
.bp-ai-card:hover{border-color:rgba(139,92,246,0.25);box-shadow:0 4px 16px rgba(139,92,246,0.08)}
.bp-ai-card-val{font-family:'DM Serif Display',serif;font-size:22px;font-weight:400;color:#7c3aed;margin-bottom:6px}
.bp-ai-card-title{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:8px}
.bp-ai-card-detail{font-size:12px;color:var(--body);line-height:1.6}

/* Dark mode: Benchmarks + AI Insights */
[data-theme="dark"] .bp-benchmarks{background:rgba(11,95,216,0.04);border-color:rgba(11,95,216,0.12)}
[data-theme="dark"] .bp-bench-card{background:rgba(255,255,255,0.03);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .bp-bench-card:hover{border-color:rgba(11,95,216,0.25)}
[data-theme="dark"] .bp-bench-comparison{background:rgba(255,255,255,0.03);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .bp-bench-bar-dot{border-color:var(--navy)}
[data-theme="dark"] .bp-ai-card{background:rgba(139,92,246,0.06);border-color:rgba(139,92,246,0.15)}
[data-theme="dark"] .bp-ai-card:hover{border-color:rgba(139,92,246,0.3);box-shadow:0 4px 16px rgba(139,92,246,0.12)}
[data-theme="dark"] .bp-btn-ai{background:rgba(139,92,246,0.08);border-color:rgba(139,92,246,0.2);color:#a78bfa}
[data-theme="dark"] .bp-btn-ai:hover{background:#7c3aed;color:#fff}

@media(max-width:700px){
  .bp-bench-grid{grid-template-columns:1fr 1fr;gap:10px}
  .bp-bench-val{font-size:22px}
  .bp-ai-grid{grid-template-columns:1fr}
  .bp-bench-comparison{padding:16px}
}

/* ═══ M5P2: Progress Dashboard ═══ */

/* Gantt Timeline */
.bp-gantt{margin-bottom:32px;background:var(--white);border:1px solid var(--off2);border-radius:16px;padding:24px 28px;overflow:hidden}
.bp-gantt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.bp-gantt-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:var(--navy)}
.bp-gantt-legend{display:flex;gap:16px}
.bp-gantt-leg{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--slate)}
.bp-gantt-leg-dot{width:10px;height:10px;border-radius:3px}
.bp-gantt-dot-done{background:var(--blue)}
.bp-gantt-dot-todo{background:var(--mist)}
.bp-gantt-dot-late{background:#ef4444}
.bp-gantt-chart{position:relative}
.bp-gantt-months{display:flex;margin-bottom:12px;margin-left:120px}
.bp-gantt-month{font-size:11px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.05em;padding:6px 0;border-bottom:2px solid var(--off2);text-align:center}
.bp-gantt-bars{display:flex;flex-direction:column;gap:4px}
.bp-gantt-row{display:flex;align-items:center;height:28px}
.bp-gantt-row-label{width:120px;font-size:11px;color:var(--body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;padding-right:8px}
.bp-gantt-row-track{flex:1;position:relative;height:18px;background:var(--off);border-radius:4px}
.bp-gantt-bar{position:absolute;top:2px;height:14px;border-radius:3px;background:var(--mist);transition:all .2s}
.bp-gantt-done{background:linear-gradient(90deg,var(--blue),#00C8E0) !important;opacity:0.9}
.bp-gantt-late{background:#ef4444 !important;animation:bpPulse 2s ease-in-out infinite}
@keyframes bpPulse{0%,100%{opacity:0.7}50%{opacity:1}}
.bp-gantt-type-setup{background:rgba(11,95,216,0.15)}
.bp-gantt-type-action{background:rgba(0,200,224,0.15)}
.bp-gantt-type-marketing{background:rgba(139,92,246,0.15)}
.bp-gantt-type-growth{background:rgba(234,179,8,0.15)}
.bp-gantt-today{position:absolute;top:0;bottom:0;z-index:2;pointer-events:none}
.bp-gantt-today-line{position:absolute;top:0;bottom:0;width:2px;background:var(--blue);left:0}
.bp-gantt-today-label{position:absolute;top:-6px;left:-16px;background:var(--blue);color:#fff;font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;white-space:nowrap}
.bp-gantt-milestones{position:relative;height:24px;margin-top:8px}
.bp-gantt-milestone{position:absolute;top:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center}
.bp-gantt-ms-diamond{width:10px;height:10px;background:var(--blue);transform:rotate(45deg);border-radius:2px}
.bp-gantt-ms-label{font-size:9px;font-weight:600;color:var(--slate);margin-top:4px;white-space:nowrap}

/* Gantt Status */
.bp-gantt-status{margin-top:20px}
.bp-gantt-status-card{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:10px;margin-bottom:16px}
.bp-status-neutral{background:rgba(11,95,216,0.04);border:1px solid rgba(11,95,216,0.12);color:var(--body)}
.bp-status-ahead{background:rgba(16,185,129,0.06);border:1px solid rgba(16,185,129,0.18);color:#059669}
.bp-status-ontrack{background:rgba(11,95,216,0.04);border:1px solid rgba(11,95,216,0.12);color:var(--blue)}
.bp-status-behind{background:rgba(239,68,68,0.04);border:1px solid rgba(239,68,68,0.15);color:#dc2626}
.bp-gantt-status-icon{flex-shrink:0}
.bp-gantt-status-text{font-size:13px;line-height:1.5}
.bp-gantt-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.bp-gantt-stat{text-align:center;padding:14px;background:var(--off);border-radius:10px}
.bp-gantt-stat-val{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy);margin-bottom:2px}
.bp-gantt-stat-label{font-size:11px;color:var(--slate);text-transform:uppercase;letter-spacing:0.04em}

/* Weekly Check-In */
.bp-checkin-card{background:linear-gradient(135deg,rgba(11,95,216,0.03),rgba(0,200,224,0.02));border:1px solid rgba(11,95,216,0.12);border-radius:14px;padding:24px 28px;margin-bottom:24px}
.bp-checkin-header{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;color:var(--navy);margin-bottom:8px}
.bp-checkin-prompt{font-size:14px;color:var(--body);margin-bottom:16px}
.bp-checkin-fields{display:grid;grid-template-columns:1fr 1fr 2fr;gap:14px;margin-bottom:16px}
.bp-checkin-field{display:flex;flex-direction:column;gap:4px}
.bp-checkin-label{font-size:11px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.04em}
.bp-checkin-input{padding:10px 14px;border:1px solid var(--off2);border-radius:8px;font-size:14px;font-family:'DM Sans',sans-serif;background:var(--white);color:var(--navy);transition:border-color .15s}
.bp-checkin-input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.08)}
.bp-checkin-actions{display:flex;gap:10px}

/* Actual vs Projected */
.bp-actuals{margin-bottom:24px;background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:22px 26px}
.bp-actuals-header{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:var(--navy);margin-bottom:18px}
.bp-actuals-chart{margin-bottom:16px}
.bp-actuals-row{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.bp-actuals-label{width:140px;font-size:12px;font-weight:600;color:var(--slate);flex-shrink:0}
.bp-actuals-bar-wrap{flex:1;height:22px;background:var(--off);border-radius:6px;overflow:hidden}
.bp-actuals-bar{height:100%;border-radius:6px;transition:width .6s ease}
.bp-actuals-bar-projected{background:linear-gradient(90deg,rgba(11,95,216,0.15),rgba(11,95,216,0.25))}
.bp-actuals-bar-actual{background:linear-gradient(90deg,var(--blue),#00C8E0)}
.bp-actuals-ahead{background:linear-gradient(90deg,#10b981,#34d399) !important}
.bp-actuals-behind{background:linear-gradient(90deg,#ef4444,#f87171) !important}
.bp-actuals-bar-goal{background:linear-gradient(90deg,rgba(234,179,8,0.2),rgba(234,179,8,0.35))}
.bp-actuals-val{font-size:14px;font-weight:700;color:var(--navy);width:50px;text-align:right}
.bp-actuals-delta{display:flex;align-items:center;gap:6px;padding:10px 16px;border-radius:8px;font-size:13px;font-weight:600;margin-bottom:16px}
.bp-delta-pos{background:rgba(16,185,129,0.06);color:#059669}
.bp-delta-neg{background:rgba(239,68,68,0.04);color:#dc2626}

/* Check-in History */
.bp-actuals-history{border-top:1px solid var(--off2);padding-top:14px}
.bp-actuals-hist-title{font-size:12px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:10px}
.bp-actuals-hist-table{font-size:12px}
.bp-actuals-hist-head{display:grid;grid-template-columns:100px 80px 100px 1fr;gap:8px;padding:6px 0;font-weight:700;color:var(--navy);border-bottom:1px solid var(--off2)}
.bp-actuals-hist-row{display:grid;grid-template-columns:100px 80px 100px 1fr;gap:8px;padding:8px 0;border-bottom:1px solid var(--off);color:var(--body)}
.bp-actuals-hist-win{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--slate)}

/* Dark mode: Progress Dashboard */
[data-theme="dark"] .bp-gantt{background:rgba(255,255,255,0.03);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .bp-gantt-row-track{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .bp-gantt-bar{background:rgba(255,255,255,0.08)}
[data-theme="dark"] .bp-gantt-stat{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .bp-checkin-card{background:rgba(11,95,216,0.04);border-color:rgba(11,95,216,0.12)}
[data-theme="dark"] .bp-checkin-input{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:var(--white2)}
[data-theme="dark"] .bp-actuals{background:rgba(255,255,255,0.03);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .bp-actuals-bar-wrap{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .bp-actuals-hist-head{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .bp-actuals-hist-row{border-color:rgba(255,255,255,0.04)}

/* ═══ M5P3: Actionable Output ═══ */

/* Execute Task Button */
.bp-exec-btn{display:inline-flex;align-items:center;gap:5px;margin-top:8px;padding:6px 14px;font-size:11px;font-weight:700;border-radius:6px;border:1px solid rgba(11,95,216,0.2);background:rgba(11,95,216,0.04);color:var(--blue);cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif}
.bp-exec-btn:hover{background:var(--blue);color:#fff;border-color:var(--blue);transform:translateY(-1px)}
.bp-task-done .bp-exec-btn{display:none}

/* Export Slides Button */
.bp-btn-slides{border-color:rgba(16,185,129,0.2);color:#059669;background:rgba(16,185,129,0.04)}
.bp-btn-slides:hover{background:#059669;color:#fff;border-color:#059669}

/* ROI Tracker */
.bp-roi-tracker{margin-bottom:32px;background:var(--white);border:1px solid var(--off2);border-radius:16px;padding:24px 28px}
.bp-roi-header{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;color:var(--navy);margin-bottom:20px}
.bp-roi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.bp-roi-card{padding:20px;border-radius:12px;text-align:center;transition:transform .15s}
.bp-roi-card:hover{transform:translateY(-2px)}
.bp-roi-invest{background:linear-gradient(135deg,rgba(239,68,68,0.04),rgba(239,68,68,0.08));border:1px solid rgba(239,68,68,0.12)}
.bp-roi-revenue{background:linear-gradient(135deg,rgba(16,185,129,0.04),rgba(16,185,129,0.08));border:1px solid rgba(16,185,129,0.12)}
.bp-roi-return{background:linear-gradient(135deg,rgba(11,95,216,0.04),rgba(11,95,216,0.08));border:1px solid rgba(11,95,216,0.12)}
.bp-roi-projected{background:linear-gradient(135deg,rgba(234,179,8,0.04),rgba(234,179,8,0.08));border:1px solid rgba(234,179,8,0.12)}
.bp-roi-card-icon{margin-bottom:8px;color:var(--slate)}
.bp-roi-card-val{font-family:'DM Serif Display',serif;font-size:26px;color:var(--navy);margin-bottom:4px}
.bp-roi-positive{color:#059669 !important}
.bp-roi-negative{color:#dc2626 !important}
.bp-roi-card-label{font-size:12px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:6px}
.bp-roi-card-note{font-size:11px;color:var(--slate);line-height:1.4}
.bp-roi-progress{margin-top:4px}
.bp-roi-progress-label{font-size:12px;font-weight:600;color:var(--body);margin-bottom:8px}
.bp-roi-progress-bar{height:10px;background:var(--off);border-radius:10px;overflow:hidden}
.bp-roi-progress-fill{height:100%;background:linear-gradient(90deg,var(--blue),#00C8E0);border-radius:10px;transition:width .6s ease}

/* Drip Schedule */
.bp-drip-schedule{margin-bottom:24px;background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:20px 24px}
.bp-drip-schedule-header{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:var(--navy);margin-bottom:14px}
.bp-drip-active-badge{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;background:#059669;color:#fff;padding:2px 8px;border-radius:12px}
.bp-drip-list{display:flex;flex-direction:column;gap:8px}
.bp-drip-item{display:flex;align-items:center;gap:14px;padding:10px 14px;background:var(--off);border-radius:8px}
.bp-drip-date{font-size:12px;font-weight:700;color:var(--blue);min-width:60px}
.bp-drip-task-info{flex:1}
.bp-drip-task-title{font-size:13px;font-weight:600;color:var(--navy)}
.bp-drip-task-meta{font-size:11px;color:var(--slate);margin-top:2px}

/* Dark mode: Actionable Output */
[data-theme="dark"] .bp-exec-btn{background:rgba(11,95,216,0.08);border-color:rgba(11,95,216,0.2)}
[data-theme="dark"] .bp-exec-btn:hover{background:var(--blue);color:#fff}
[data-theme="dark"] .bp-roi-tracker{background:rgba(255,255,255,0.03);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .bp-roi-invest{background:rgba(239,68,68,0.06);border-color:rgba(239,68,68,0.15)}
[data-theme="dark"] .bp-roi-revenue{background:rgba(16,185,129,0.06);border-color:rgba(16,185,129,0.15)}
[data-theme="dark"] .bp-roi-return{background:rgba(11,95,216,0.06);border-color:rgba(11,95,216,0.15)}
[data-theme="dark"] .bp-roi-projected{background:rgba(234,179,8,0.06);border-color:rgba(234,179,8,0.15)}
[data-theme="dark"] .bp-drip-schedule{background:rgba(255,255,255,0.03);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .bp-drip-item{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .bp-btn-slides{background:rgba(16,185,129,0.08);border-color:rgba(16,185,129,0.2);color:#34d399}

@media(max-width:700px){
  .bp-gantt-row-label{width:80px;font-size:10px}
  .bp-gantt-months{margin-left:80px}
  .bp-gantt-stats{grid-template-columns:1fr 1fr}
  .bp-checkin-fields{grid-template-columns:1fr}
  .bp-actuals-hist-head,.bp-actuals-hist-row{grid-template-columns:80px 60px 80px 1fr}
  .bp-roi-grid{grid-template-columns:1fr 1fr}
}

/* What If Comparison */
.bp-whatif{margin-bottom:40px}
.bp-whatif-title{font-size:12px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:16px}
.bp-whatif-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.bp-whatif-card{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:28px;transition:border-color .2s;border-top:3px solid transparent}
.bp-whatif-card:first-child{border-top-color:var(--blue)}
.bp-whatif-card:last-child{border-top-color:#00C8E0}
.bp-whatif-card:hover{border-color:rgba(11,95,216,0.2)}
.bp-whatif-label{font-size:13px;font-weight:600;color:var(--slate);margin-bottom:10px}
.bp-whatif-val{font-family:'DM Serif Display',serif;font-size:28px;font-weight:400;color:var(--navy);margin-bottom:4px}
.bp-whatif-delta{font-size:13px;font-weight:700;color:var(--cyan-text);margin-bottom:12px}
.bp-whatif-desc{font-size:13px;color:var(--body);line-height:1.7}

/* Portal Toolkit callout */
.bp-toolkit{margin-bottom:40px;background:linear-gradient(135deg,rgba(11,95,216,0.03) 0%,rgba(0,200,224,0.02) 100%);border:1px solid rgba(11,95,216,0.1);border-radius:16px;padding:28px;overflow:hidden}
.bp-toolkit-header{margin-bottom:20px}
.bp-toolkit-title{font-size:16px;font-weight:800;color:var(--navy);margin-bottom:4px;letter-spacing:-0.01em}
.bp-toolkit-desc{font-size:13px;color:var(--slate);line-height:1.5}
.bp-toolkit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.bp-toolkit-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px 10px;border:1px solid var(--off2);border-radius:10px;background:var(--white);text-decoration:none;transition:all 0.15s;cursor:pointer}
.bp-toolkit-card:hover{border-color:rgba(11,95,216,0.25);box-shadow:0 4px 12px rgba(11,95,216,0.08);transform:translateY(-2px)}
.bp-toolkit-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:linear-gradient(135deg,rgba(11,95,216,0.08),rgba(0,200,224,0.06));color:var(--blue);margin-bottom:8px;flex-shrink:0}
.bp-toolkit-name{font-size:12px;font-weight:700;color:var(--navy);margin-bottom:2px}
.bp-toolkit-card-desc{font-size:10px;color:var(--slate);line-height:1.3}
[data-theme="dark"] .bp-toolkit{background:rgba(11,95,216,0.04);border-color:rgba(11,95,216,0.12)}
[data-theme="dark"] .bp-toolkit-card{background:rgba(255,255,255,0.03);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .bp-toolkit-card:hover{border-color:rgba(11,95,216,0.3);background:rgba(11,95,216,0.06)}

/* Email Drip Toggle */
.bp-drip-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:16px 22px;margin-bottom:16px}
.bp-drip-left{display:flex;align-items:center;gap:12px;color:var(--blue)}
.bp-drip-title{font-size:14px;font-weight:700;color:var(--navy)}
.bp-drip-desc{font-size:12px;color:var(--slate)}
.bp-drip-toggle{position:relative;width:44px;height:24px;flex-shrink:0}
.bp-drip-toggle input{opacity:0;width:0;height:0}
.bp-drip-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:var(--mist);border-radius:24px;transition:.2s}
.bp-drip-slider::before{content:'';position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.2s}
.bp-drip-toggle input:checked+.bp-drip-slider{background:var(--cyan-text)}
.bp-drip-toggle input:checked+.bp-drip-slider::before{transform:translateX(20px)}

.bp-progress-wrap{background:linear-gradient(135deg,rgba(11,95,216,0.02),rgba(0,200,224,0.02));border:1px solid rgba(11,95,216,0.08);border-radius:14px;padding:22px 28px;margin-bottom:32px}
.bp-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.bp-progress-label{font-size:14px;font-weight:600;color:var(--navy)}
.bp-progress-pct{font-family:'DM Serif Display',serif;font-size:22px;color:var(--blue)}
.bp-progress-bar{height:8px;background:var(--off);border-radius:4px;overflow:hidden}
.bp-progress-fill{height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan-text));border-radius:4px;transition:width 0.4s cubic-bezier(0.22,1,0.36,1)}

/* Task Checkbox */
.bp-task-check{display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer}
.bp-task-check input{position:absolute;opacity:0;width:0;height:0}
.bp-check-box{width:22px;height:22px;border-radius:6px;border:2px solid var(--mist);display:flex;align-items:center;justify-content:center;transition:all 0.15s;background:var(--white)}
.bp-check-box svg{opacity:0;transition:opacity 0.15s}
.bp-task-check input:checked+.bp-check-box{background:var(--cyan-text);border-color:var(--cyan-text)}
.bp-task-check input:checked+.bp-check-box svg{opacity:1}
.bp-task-check:hover .bp-check-box{border-color:var(--blue)}

/* Task done state */
.bp-task-done{opacity:0.55}
.bp-task-done .bp-task-title{text-decoration:line-through}

/* Tabs scroll indicator */
.pb-tabs{position:relative;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.pb-tabs::-webkit-scrollbar{display:none}

@media(max-width:768px){
  .pb-stats{flex-direction:column;gap:12px}
  .pb-tabs{gap:2px;mask-image:linear-gradient(to right,transparent,black 12px,black calc(100% - 24px),transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 12px,black calc(100% - 24px),transparent)}
  .pb-tab{padding:10px 14px;font-size:12px;white-space:nowrap}
  .pb-card-grid{gap:8px}
  .pb-network-grid{grid-template-columns:1fr}
  .pb-card-head{padding:14px 16px}
  .pb-script-text{font-size:14px;line-height:1.7;padding:14px 16px}
  .pb-obj-a{font-size:14px;line-height:1.7}
  .pb-streak{flex-direction:column;gap:14px}
  .pb-streak-right{width:100%;justify-content:flex-start}
  .pb-quiz-scenario{font-size:14px;padding:14px 16px}
  .pb-tl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .bpc-options{grid-template-columns:1fr}
  .bpc-optional-grid{grid-template-columns:1fr}
  .bpc-question{font-size:22px}
  .bp-insights-row{grid-template-columns:1fr}
  .bp-whatif-row{grid-template-columns:1fr}
  .bp-toolkit-grid{grid-template-columns:repeat(2,1fr)}
  .bp-action-bar{flex-direction:column;align-items:flex-start}
  .bp-drip-bar{flex-direction:column;gap:12px;align-items:flex-start}
  .bp-generate-btn-wrap{position:sticky;bottom:68px;background:var(--white);padding:12px 0;border-top:1px solid var(--off2);z-index:5}
  .bp-timeline{margin-left:16px}
  .bp-month{margin-bottom:24px;padding-left:24px}
  .bp-month-num{width:36px;height:36px;font-size:17px;left:-42px;margin-right:-30px;box-shadow:0 2px 10px rgba(11,95,216,0.2)}
  .bp-month-label{font-size:17px}
  .bp-task{padding:18px 16px;gap:12px}
  .bp-task-type{width:32px;height:32px;border-radius:8px}
  .bp-task-type svg{width:14px;height:14px}
  .bp-task-title{font-size:14px}
  .bp-task-desc{font-size:13px}
  .bp-whatif-val{font-size:24px}
  .bp-insight-val{font-size:26px}
  .bp-insight-card{padding:20px 18px}
}

/* --- Guided Tour --- */

/* Overlay — covers only the main content area, not the sidebar */
.tour-overlay{
  position:fixed;top:0;left:240px;right:0;bottom:0;
  background:rgba(5,10,20,0.75);z-index:9998;
  animation:tourOverlayIn 0.3s ease;
}
body:has(.tour-overlay) .portal-topbar{
  opacity:0.15;pointer-events:none;transition:opacity 0.3s ease;
}
@keyframes tourOverlayIn{from{opacity:0}to{opacity:1}}

/* Dim non-active sidebar nav items */
.tour-nav-dimmed{opacity:0.2!important;pointer-events:none!important;transition:opacity 0.3s ease!important}

/* Highlighted nav item — bright glow so it pops in the sidebar */
.tour-target-highlight{
  color:#fff!important;
  background:rgba(75,163,255,0.15)!important;
  box-shadow:0 0 0 2px rgba(75,163,255,0.5),0 0 20px 2px rgba(75,163,255,0.2)!important;
  border-radius:8px!important;
  animation:tourGlow 2s ease-in-out infinite!important;
  transition:none!important;
}
.tour-target-highlight svg{stroke:#4BA3FF!important}
@keyframes tourGlow{
  0%,100%{box-shadow:0 0 0 2px rgba(75,163,255,0.5),0 0 20px 2px rgba(75,163,255,0.2)}
  50%{box-shadow:0 0 0 4px rgba(75,163,255,0.6),0 0 28px 6px rgba(75,163,255,0.3)}
}

/* Tooltip card — fixed center of the main content area */
.tour-tooltip{
  position:fixed;z-index:10002;
  top:50%;left:calc(240px + (100vw - 240px) / 2);
  transform:translate(-50%,-50%);
  background:linear-gradient(135deg,#0d1f3c 0%,#0a1628 100%);
  border:1px solid rgba(75,163,255,0.2);
  border-radius:16px;
  box-shadow:0 16px 48px rgba(0,0,0,0.5),0 0 0 1px rgba(75,163,255,0.08),inset 0 1px 0 rgba(255,255,255,0.04);
  padding:28px 30px 24px;
  width:380px;max-width:calc(100vw - 280px);
  animation:tourTooltipIn 0.35s cubic-bezier(0.16,1,0.3,1);
}
@keyframes tourTooltipIn{from{opacity:0;transform:translate(-50%,-50%) scale(0.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}

/* Header row */
.tour-tooltip-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}

/* Eyebrow badge — gradient text like site's .eyebrow */
.tour-tooltip-eyebrow{
  font-size:11px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;
  background:linear-gradient(90deg,#9ca3b0,#d4d8e0,#9ca3b0);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}

/* Close button */
.tour-tooltip-close{
  background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);
  cursor:pointer;color:rgba(255,255,255,0.35);
  width:28px;height:28px;border-radius:6px;
  display:flex;align-items:center;justify-content:center;
  transition:color 0.15s,background 0.15s,border-color 0.15s;
}
.tour-tooltip-close:hover{color:#fff;background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.15)}

/* Title */
.tour-tooltip-title{
  font-family:'DM Serif Display',serif;
  font-size:22px;font-weight:400;color:#fff;
  margin-bottom:8px;line-height:1.2;
}

/* Body */
.tour-tooltip-text{font-size:14px;line-height:1.7;color:rgba(255,255,255,0.55);margin-bottom:20px}

/* Progress dots */
.tour-dots{display:flex;gap:6px;margin-bottom:20px}
.tour-dot{
  width:8px;height:8px;border-radius:50%;
  background:rgba(255,255,255,0.12);
  transition:all 0.25s ease;
}
.tour-dot-done{background:rgba(75,163,255,0.4)}
.tour-dot-active{
  background:linear-gradient(135deg,var(--blue),var(--cyan));
  width:22px;border-radius:4px;
  box-shadow:0 0 8px rgba(75,163,255,0.4);
}

/* Action buttons row */
.tour-tooltip-actions{display:flex;gap:8px;justify-content:space-between;align-items:center}

/* Next / Done button — gradient like .btn-p */
.tour-btn-next{
  background:linear-gradient(135deg,var(--blue),var(--blue2));
  color:#fff;border:none;border-radius:8px;
  padding:10px 24px;font-size:13px;font-weight:600;cursor:pointer;
  display:flex;align-items:center;gap:6px;
  box-shadow:0 4px 14px rgba(11,95,216,0.3);
  transition:transform 0.15s,box-shadow 0.15s;
  margin-left:auto;
}
.tour-btn-next:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(11,95,216,0.4)}

/* Back button — ghost style */
.tour-btn-back{
  background:transparent;color:rgba(255,255,255,0.4);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:8px;padding:10px 16px;font-size:13px;font-weight:500;cursor:pointer;
  display:flex;align-items:center;gap:4px;
  transition:border-color 0.15s,color 0.15s;
}
.tour-btn-back:hover{border-color:rgba(255,255,255,0.25);color:rgba(255,255,255,0.7)}

/* Mobile — overlay covers full screen, tooltip reflows */
@media(max-width:768px){
  .tour-overlay{left:0}
  .tour-tooltip{left:50%;width:calc(100vw - 32px);max-width:360px;padding:22px 20px 18px}
}

/* ── PDF Document Styles ──────────────────────────────────── */
.bp-pdf-doc{
  width:816px;margin:0;padding:0;
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  line-height:1.6;display:inline-block;
}

/* ── Cover page ── */
.bp-pdf-cover{
  width:100%;height:1056px;background:#0d1f3c;color:#fff;
  display:flex;align-items:center;justify-content:center;
  padding:0;margin:0;
}
.bp-cover-inner{text-align:center;max-width:460px;width:100%;padding:60px 40px}
.bp-cover-logo{display:flex;align-items:center;justify-content:center;margin-bottom:48px}
.bp-cover-logo-img{width:260px;height:auto}
.bp-cover-title{
  font-family:'DM Serif Display',serif;font-size:42px;color:#fff;
  line-height:1.15;margin-bottom:32px;letter-spacing:-0.01em;
}
.bp-cover-divider{width:60px;height:3px;background:linear-gradient(90deg,#0B5FD8,#00C8E0);margin:0 auto 32px;border-radius:2px}
.bp-cover-meta{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;padding:20px 28px;margin-bottom:32px;text-align:left;
}
.bp-cover-meta-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,0.06)}
.bp-cover-meta-row:last-child{border-bottom:none}
.bp-cover-label{font-size:12px;color:rgba(255,255,255,0.45);font-weight:500}
.bp-cover-val{font-size:13px;color:#fff;font-weight:600}
.bp-cover-footer{font-size:12px;color:rgba(255,255,255,0.35);font-style:italic;line-height:1.5}

/* ── Shared base for body pages ── */
.bpd-page{
  padding:56px 48px 28px;box-sizing:border-box;width:100%;
  background:#fff;color:#1a1a2e;
  page-break-before:always;
}

/* ── Per-page overrides ── */
.bpd-summary{page-break-before:auto}
.bpd-month{}
.bpd-scenarios{}
.bpd-toolkit{}
.bpd-nextsteps{}

/* Page header (running header on each section) */
.bpd-page-header{
  display:flex;justify-content:space-between;align-items:center;
  padding-bottom:10px;margin-bottom:24px;
  border-bottom:2px solid #0B5FD8;
  font-size:9px;color:#6b7280;text-transform:uppercase;letter-spacing:0.05em;font-weight:600;
  page-break-after:avoid;
}

/* Typography -- headings avoid breaking away from their content */
.bpd-h1{
  font-family:'DM Serif Display',serif;font-size:26px;color:#0d1f3c;
  margin:0 0 10px;line-height:1.2;letter-spacing:-0.01em;
  page-break-after:avoid;
}
.bpd-h2{
  font-size:16px;font-weight:700;color:#0d1f3c;
  margin:28px 0 10px;line-height:1.3;
  page-break-after:avoid;
}
.bpd-lead{
  font-size:13px;color:#374151;line-height:1.7;margin:0 0 24px;
}
.bpd-body{
  font-size:12px;color:#374151;line-height:1.7;margin:0 0 14px;
}
.bpd-subtitle{
  font-size:12px;color:#6b7280;margin:0 0 20px;font-weight:500;
}

/* Summary cards -- stacked vertically so they never overflow width */
.bpd-summary-grid{
  display:flex;flex-direction:column;gap:12px;margin-bottom:28px;
}
.bpd-summary-card{
  background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;
  padding:16px 20px;display:flex;align-items:flex-start;gap:16px;
  page-break-inside:avoid;
}
.bpd-summary-val{
  font-family:'DM Serif Display',serif;font-size:22px;color:#0B5FD8;
  flex-shrink:0;min-width:100px;
}
.bpd-summary-label{
  font-size:10px;text-transform:uppercase;letter-spacing:0.04em;
  color:#6b7280;font-weight:600;margin-bottom:4px;
}
.bpd-summary-note{
  font-size:11px;color:#9ca3af;line-height:1.5;
}

/* Bulleted list */
.bpd-list{
  margin:0 0 18px;padding-left:18px;
}
.bpd-list li{
  font-size:12px;color:#374151;line-height:1.7;margin-bottom:8px;
}
.bpd-list li strong{color:#0d1f3c}

/* Monthly insight box -- never split across pages */
.bpd-insight-box{
  background:linear-gradient(135deg,#f0f4ff 0%,#e8f0fe 100%);
  border-left:4px solid #0B5FD8;border-radius:0 8px 8px 0;
  padding:16px 20px;margin-bottom:24px;
  page-break-inside:avoid;
}
.bpd-insight-title{
  font-size:13px;font-weight:700;color:#0d1f3c;margin-bottom:6px;
}
.bpd-insight-body{
  font-size:11px;color:#374151;line-height:1.7;margin:0;
}

/* Task items -- never split across pages */
.bpd-task{
  display:flex;gap:12px;margin-bottom:16px;
  page-break-inside:avoid;
}
.bpd-task-num{
  flex-shrink:0;width:24px;height:24px;border-radius:50%;
  background:#0B5FD8;color:#fff;font-size:12px;font-weight:700;
  display:flex;align-items:center;justify-content:center;margin-top:2px;
}
.bpd-task-content{flex:1;min-width:0}
.bpd-task-header{margin-bottom:3px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.bpd-task-title{font-size:12px;font-weight:700;color:#0d1f3c}
.bpd-prio-high{
  font-size:8px;text-transform:uppercase;letter-spacing:0.06em;
  background:#fee2e2;color:#dc2626;padding:2px 5px;border-radius:3px;font-weight:700;
}
.bpd-prio-med{
  font-size:8px;text-transform:uppercase;letter-spacing:0.06em;
  background:#fef3c7;color:#d97706;padding:2px 5px;border-radius:3px;font-weight:700;
}
.bpd-task-desc{
  font-size:10.5px;color:#4b5563;line-height:1.6;margin:0;
}

/* Monthly target box */
.bpd-month-target{
  background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;
  padding:12px 16px;margin-top:20px;font-size:11px;color:#166534;line-height:1.6;
  page-break-inside:avoid;
}

/* Comparison table */
.bpd-table{
  width:100%;border-collapse:collapse;margin:0 0 24px;font-size:11px;
  page-break-inside:avoid;
}
.bpd-table th{
  background:#f1f5f9;color:#0d1f3c;font-weight:700;text-align:left;
  padding:8px 12px;border-bottom:2px solid #0B5FD8;font-size:10px;
  text-transform:uppercase;letter-spacing:0.04em;
}
.bpd-table td{
  padding:8px 12px;border-bottom:1px solid #e5e7eb;color:#374151;
}
.bpd-table-highlight td{
  background:#eff6ff;font-weight:600;color:#0B5FD8;
}

/* Tools grid */
.bpd-tools-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;
}
.bpd-tool-item{
  background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;padding:12px 14px;
  page-break-inside:avoid;
}
.bpd-tool-name{font-size:11px;font-weight:700;color:#0d1f3c;margin-bottom:3px}
.bpd-tool-desc{font-size:10px;color:#6b7280;line-height:1.5}

/* 30-Day Challenge CTA */
.bpd-challenge-cta{
  margin-top:28px;page-break-inside:avoid;
}
.bpd-challenge-cta-inner{
  background:linear-gradient(135deg,#0d1f3c 0%,#122a52 100%);
  border-radius:10px;padding:28px 32px;color:#fff;
}
.bpd-challenge-title{
  font-family:'DM Serif Display',serif;font-size:18px;color:#fff;
  margin:0 0 10px;line-height:1.3;
}
.bpd-challenge-desc{
  font-size:12px;color:rgba(255,255,255,0.8);line-height:1.7;margin:0 0 12px;
}
.bpd-challenge-action{
  font-size:12px;color:#00C8E0;margin:0;line-height:1.6;
}
.bpd-challenge-action strong{color:#fff}

/* Next steps numbered list */
.bpd-steps-list{margin:0 0 28px}
.bpd-step-item{
  display:flex;gap:12px;margin-bottom:16px;page-break-inside:avoid;
}
.bpd-step-num{
  flex-shrink:0;width:28px;height:28px;border-radius:50%;
  background:#0d1f3c;color:#fff;font-size:14px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
}
.bpd-step-body{
  flex:1;font-size:12px;color:#374151;line-height:1.7;padding-top:3px;
}
.bpd-step-body strong{color:#0d1f3c}

/* Closing section */
.bpd-closing{
  margin-top:36px;padding-top:20px;border-top:1px solid #e5e7eb;
  page-break-inside:avoid;
}
.bpd-closing p{font-size:11px;color:#6b7280;line-height:1.6;margin:0 0 10px}
.bpd-closing strong{color:#374151}
.bpd-closing-brand{
  margin-top:20px;font-size:12px;font-weight:700;color:#0B5FD8;
  letter-spacing:0.02em;
}

/* ── 30-DAY CHALLENGE: Download Button ── */
.ch-dl-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 20px;font-size:13px;font-weight:600;
  color:var(--blue);background:rgba(11,95,216,0.06);
  border:1px solid rgba(11,95,216,0.15);border-radius:10px;
  cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;
  margin-top:12px;
}
.ch-dl-btn:hover{background:rgba(11,95,216,0.1);border-color:rgba(11,95,216,0.25)}
.ch-dl-btn svg{stroke:var(--blue)}

/* ── 30-DAY CHALLENGE PDF STYLES ── */
.ch-pdf-doc{
  width:816px;margin:0;padding:0;
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  line-height:1.6;display:inline-block;
}

/* Cover */
.ch-pdf-cover{
  width:100%;height:1056px;
  background:linear-gradient(135deg,#0d1f3c 0%,#122a52 100%);
  color:#fff;display:flex;align-items:center;justify-content:center;
  padding:0;margin:0;
}
.ch-cover-inner{text-align:center;padding:60px;max-width:600px}
.ch-cover-logo{margin-bottom:40px}
.ch-cover-logo-img{height:32px;opacity:0.9}
.ch-cover-title{
  font-family:'DM Serif Display',serif;font-size:42px;
  line-height:1.15;margin-bottom:8px;color:#fff;
}
.ch-cover-subtitle{
  font-size:18px;color:#00C8E0;font-weight:600;
  letter-spacing:0.05em;text-transform:uppercase;
  margin-bottom:36px;
}
.ch-cover-divider{
  width:60px;height:3px;background:#00C8E0;
  margin:0 auto 36px;border-radius:2px;
}
.ch-cover-meta{text-align:left;margin:0 auto;max-width:380px}
.ch-cover-meta-row{
  display:flex;justify-content:space-between;
  padding:10px 0;border-bottom:1px solid rgba(255,255,255,0.1);
  font-size:14px;
}
.ch-cover-meta-row:last-child{border-bottom:none}
.ch-cover-label{color:rgba(255,255,255,0.6)}
.ch-cover-val{color:#fff;font-weight:600}
.ch-cover-footer{
  margin-top:48px;font-size:11px;color:rgba(255,255,255,0.4);
  line-height:1.6;
}

/* Body pages */
.chd-page{
  padding:56px 48px 28px;box-sizing:border-box;width:100%;
  background:#fff;color:#1a1a2e;
  page-break-before:always;
}
.chd-overview{page-break-before:auto}

/* Page header */
.chd-page-header{
  display:flex;justify-content:space-between;
  font-size:10px;font-weight:600;color:#9ca3af;
  text-transform:uppercase;letter-spacing:0.08em;
  padding-bottom:16px;border-bottom:1px solid #e5e7eb;
  margin-bottom:28px;
}

/* Typography */
.chd-h1{
  font-family:'DM Serif Display',serif;font-size:26px;
  color:#0d1f3c;margin:0 0 12px;line-height:1.2;
  page-break-after:avoid;
}
.chd-h2{
  font-family:'DM Serif Display',serif;font-size:18px;
  color:#0d1f3c;margin:28px 0 12px;line-height:1.3;
  page-break-after:avoid;
}
.chd-lead{font-size:13px;color:#374151;line-height:1.7;margin:0 0 24px}
.chd-body{font-size:12px;color:#374151;line-height:1.7;margin:0 0 14px}
.chd-list{
  margin:0 0 20px;padding-left:20px;font-size:12px;
  color:#374151;line-height:1.7;
}
.chd-list li{margin-bottom:10px}
.chd-list strong{color:#0d1f3c}

/* Stats grid */
.chd-stats-grid{
  display:grid;grid-template-columns:1fr 1fr 1fr 1fr;
  gap:12px;margin-bottom:24px;
}
.chd-stat-card{
  background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;
  padding:18px 14px;text-align:center;page-break-inside:avoid;
}
.chd-stat-val{
  font-family:'DM Serif Display',serif;font-size:28px;
  color:#0d1f3c;margin-bottom:4px;
}
.chd-stat-label{
  font-size:10px;font-weight:600;color:#9ca3af;
  text-transform:uppercase;letter-spacing:0.06em;
}

/* Phase box */
.chd-phase-box{
  background:linear-gradient(135deg,rgba(11,95,216,0.04),rgba(0,200,224,0.03));
  border:1px solid rgba(11,95,216,0.12);border-radius:8px;
  padding:20px 24px;margin-bottom:24px;page-break-inside:avoid;
}
.chd-phase-label{
  font-size:10px;font-weight:700;color:#0B5FD8;
  text-transform:uppercase;letter-spacing:0.08em;margin-bottom:4px;
}
.chd-phase-name{
  font-family:'DM Serif Display',serif;font-size:22px;
  color:#0d1f3c;margin-bottom:6px;
}
.chd-phase-desc{font-size:12px;color:#6b7280;line-height:1.6}

/* Insight boxes */
.chd-insight-box{
  background:#f0f7ff;border-left:4px solid #0B5FD8;
  border-radius:0 8px 8px 0;padding:18px 22px;
  margin:20px 0;page-break-inside:avoid;
}
.chd-insight-warning{
  background:#fef3cd;border-left-color:#f59e0b;
}
.chd-insight-title{
  font-size:13px;font-weight:700;color:#0d1f3c;margin-bottom:8px;
}
.chd-insight-body{font-size:12px;color:#374151;line-height:1.7;margin:0}

/* Completed task items */
.chd-done-task{
  display:flex;gap:12px;margin-bottom:14px;page-break-inside:avoid;
}
.chd-done-check{
  flex-shrink:0;width:24px;height:24px;border-radius:50%;
  background:linear-gradient(135deg,#0B5FD8,#00C8E0);
  display:flex;align-items:center;justify-content:center;
  margin-top:2px;
}
.chd-done-content{flex:1;min-width:0}
.chd-done-header{
  display:flex;align-items:center;gap:8px;margin-bottom:4px;
  flex-wrap:wrap;
}
.chd-done-day{
  font-size:10px;font-weight:700;color:#0B5FD8;
  background:rgba(11,95,216,0.06);padding:2px 8px;
  border-radius:4px;
}
.chd-done-title{font-size:12px;font-weight:700;color:#0d1f3c}
.chd-done-pts{
  font-size:10px;font-weight:600;color:#00C8E0;margin-left:auto;
}
.chd-done-desc{font-size:11px;color:#6b7280;line-height:1.6;margin:0}

/* Week group intro */
.chd-week-intro{
  background:linear-gradient(135deg,rgba(11,95,216,0.04),rgba(0,200,224,0.03));
  border:1px solid rgba(11,95,216,0.1);border-radius:8px;
  padding:14px 18px;margin-bottom:18px;page-break-inside:avoid;
}
.chd-week-label{
  font-size:12px;font-weight:700;color:#0B5FD8;margin-bottom:4px;
}
.chd-week-desc{font-size:11px;color:#6b7280;line-height:1.5}

/* Remaining task items */
.chd-remaining-task{
  display:flex;gap:12px;margin-bottom:14px;page-break-inside:avoid;
}
.chd-remaining-num{
  flex-shrink:0;width:24px;height:24px;border-radius:50%;
  background:#f3f4f6;border:1px solid #e5e7eb;
  display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:700;color:#9ca3af;margin-top:2px;
}
.chd-remaining-content{flex:1;min-width:0}
.chd-remaining-header{
  display:flex;align-items:center;gap:8px;margin-bottom:4px;
  flex-wrap:wrap;
}
.chd-remaining-title{font-size:12px;font-weight:700;color:#0d1f3c}
.chd-remaining-status{
  font-size:9px;font-weight:700;padding:2px 8px;
  border-radius:4px;text-transform:uppercase;letter-spacing:0.06em;
  margin-left:auto;
}
.chd-status-today{background:rgba(11,95,216,0.08);color:#0B5FD8}
.chd-status-upcoming{background:#f3f4f6;color:#9ca3af}
.chd-status-skipped{background:rgba(220,38,38,0.06);color:#DC2626}
.chd-remaining-desc{font-size:11px;color:#6b7280;line-height:1.6;margin:0}

/* Empty state */
.chd-empty-state{
  text-align:center;padding:40px 20px;
  font-size:13px;color:#9ca3af;line-height:1.7;
}

/* Celebration */
.chd-celebration{
  text-align:center;padding:40px 20px;
  page-break-inside:avoid;
}

/* Steps list */
.chd-steps-list{margin:0 0 28px}
.chd-step-item{
  display:flex;gap:12px;margin-bottom:16px;page-break-inside:avoid;
}
.chd-step-num{
  flex-shrink:0;width:28px;height:28px;border-radius:50%;
  background:#0d1f3c;color:#fff;font-size:14px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
}
.chd-step-body{
  flex:1;font-size:12px;color:#374151;line-height:1.7;padding-top:3px;
}
.chd-step-body strong{color:#0d1f3c}

/* Points table */
.chd-table{
  width:100%;border-collapse:collapse;margin:0 0 24px;
  font-size:12px;
}
.chd-table th{
  text-align:left;padding:10px 14px;background:#f8fafc;
  border:1px solid #e5e7eb;font-weight:700;color:#0d1f3c;
  font-size:11px;text-transform:uppercase;letter-spacing:0.04em;
}
.chd-table td{
  padding:10px 14px;border:1px solid #e5e7eb;color:#374151;
}
.chd-table-highlight td{
  background:rgba(11,95,216,0.03);font-weight:700;color:#0d1f3c;
}

/* Closing */
.chd-closing{
  margin-top:36px;padding-top:20px;border-top:1px solid #e5e7eb;
  page-break-inside:avoid;
}
.chd-closing p{font-size:11px;color:#6b7280;line-height:1.6;margin:0 0 10px}
.chd-closing strong{color:#374151}
.chd-closing-brand{
  margin-top:20px;font-size:12px;font-weight:700;color:#0B5FD8;
  letter-spacing:0.02em;
}

/* Print styles */
@media print{
  /* Playbook print cheat sheet */
  .pb-printing *{visibility:hidden}
  .pb-printing #portal-sec-playbook,.pb-printing #portal-sec-playbook *{visibility:visible}
  .pb-printing #portal-sec-playbook{position:absolute;left:0;top:0;width:100%;padding:20px}
  .pb-printing .pb-tabs,.pb-printing .bp-action-btn,.pb-printing .pb-copy-btn,.pb-printing .pb-streak,.pb-printing .pb-seasonal-tip{display:none}
  .pb-printing .pb-panel{display:block;visibility:visible;margin-bottom:24px}
  .pb-printing .pb-card{break-inside:avoid}
  .pb-printing .pb-script{break-inside:avoid}
  .pb-printing .pb-objection{break-inside:avoid}
  .pb-printing .pb-tl-item{break-inside:avoid}
  .pb-printing .pb-network-card{break-inside:avoid}
  .pb-printing .pb-card-grid,.pb-printing .pb-network-grid{display:block}
  .pb-printing .pb-card,.pb-printing .pb-network-card{margin-bottom:12px}
  .pb-printing .pb-stat{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .pb-printing .pb-script-text{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .pb-printing .pb-card-body{max-height:none;opacity:1;overflow:visible}
  .pb-printing .pb-card-title::after{display:none}
}

/* ── RESOLUTION PRO CONTACT CARD ── */
/* Only visible in portal mode (widgets get moved to body) */
body:not(.portal-mode) > .rp-fab,
body:not(.portal-mode) > .rp-card,
body:not(.portal-mode) > .jazz-bar{display:none!important}
.rp-fab{position:fixed;bottom:24px;right:24px;z-index:9998;width:52px;height:52px;border-radius:50%;border:none;cursor:pointer;padding:0;background:none;transition:transform 0.25s cubic-bezier(0.22,1,0.36,1)}
.rp-fab:hover{transform:scale(1.08)}
.rp-fab-avatar{width:52px;height:52px;border-radius:50%;overflow:hidden;border:3px solid #fff;box-shadow:0 4px 20px rgba(10,22,40,0.25),0 0 0 1px rgba(11,95,216,0.15)}
.rp-fab-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.rp-fab-initials{width:100%;height:100%;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;display:flex;align-items:center;justify-content:center;font-family:'DM Sans',sans-serif;font-size:16px;font-weight:700}
.rp-fab-pulse{position:absolute;bottom:2px;right:2px;width:12px;height:12px;border-radius:50%;background:#22c55e;border:2px solid #fff;box-shadow:0 0 8px rgba(34,197,94,0.5);pointer-events:none}

.rp-card{position:fixed;bottom:88px;right:24px;z-index:9999;width:340px;background:rgba(255,255,255,0.98);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(10,22,40,0.06);border-radius:20px;box-shadow:0 24px 80px rgba(10,22,40,0.16),0 4px 12px rgba(0,0,0,0.05),0 0 0 1px rgba(255,255,255,0.9) inset;padding:0;opacity:0;transform:translateY(12px) scale(0.97);pointer-events:none;transition:all 0.35s cubic-bezier(0.22,1,0.36,1);overflow:hidden}
.rp-card.rp-open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}

.rp-close{position:absolute;top:14px;right:16px;background:rgba(255,255,255,0.7);backdrop-filter:blur(8px);border:none;font-size:18px;color:var(--slate);cursor:pointer;padding:2px 7px;line-height:1;border-radius:50%;transition:all 0.15s;z-index:2}
.rp-close:hover{color:var(--navy);background:rgba(255,255,255,0.95)}

.rp-hero{background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 100%);padding:28px 24px 20px;display:flex;flex-direction:column;align-items:center;gap:10px}
.rp-avatar-ring{width:72px;height:72px;border-radius:50%;padding:3px;background:linear-gradient(135deg,var(--blue),var(--cyan),var(--blue));flex-shrink:0}
.rp-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid var(--navy)}
.rp-avatar-fallback{width:100%;height:100%;border-radius:50%;background:rgba(255,255,255,0.1);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'DM Sans',sans-serif;font-size:22px;font-weight:700;letter-spacing:0.03em;border:3px solid var(--navy)}
.rp-status{display:flex;align-items:center;gap:5px;font-size:11px;color:rgba(255,255,255,0.6);font-weight:500}
.rp-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 8px rgba(34,197,94,0.6);flex-shrink:0;animation:rpPulse 2s ease-in-out infinite}
@keyframes rpPulse{0%,100%{box-shadow:0 0 8px rgba(34,197,94,0.6)}50%{box-shadow:0 0 16px rgba(34,197,94,0.9)}}

.rp-name{font-family:'DM Sans',sans-serif;font-size:18px;font-weight:700;color:var(--navy);text-align:center;padding:16px 24px 0;letter-spacing:-0.01em}
.rp-title{font-size:12px;color:var(--slate);font-weight:500;text-align:center;margin-top:2px;padding:0 24px;letter-spacing:0.04em;text-transform:uppercase}
.rp-bio{font-size:13px;line-height:1.65;color:var(--body);padding:12px 24px 0;text-align:center}

.rp-quick-actions{display:flex;justify-content:center;gap:4px;padding:16px 20px;border-bottom:1px solid rgba(10,22,40,0.06)}
.rp-quick{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;border-radius:10px;background:none;border:none;cursor:pointer;text-decoration:none;color:var(--slate);font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;transition:all 0.18s}
.rp-quick:hover{background:rgba(10,22,40,0.04);color:var(--navy)}
.rp-quick svg{opacity:0.7}
.rp-quick:hover svg{opacity:1}
.rp-quick-heart.rp-liked{color:#ef4444}
.rp-quick-heart.rp-liked svg{fill:#ef4444;stroke:#ef4444;opacity:1}

.rp-msg-panel{padding:12px 20px 16px}
.rp-msg-input{width:100%;border:1px solid rgba(10,22,40,0.1);border-radius:10px;padding:10px 12px;font-family:'DM Sans',sans-serif;font-size:13px;resize:none;outline:none;transition:border-color 0.15s;box-sizing:border-box;line-height:1.5}
.rp-msg-input:focus{border-color:var(--blue)}
.rp-msg-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}
.rp-msg-cancel{background:none;border:none;color:var(--slate);font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;cursor:pointer;padding:6px 12px}
.rp-msg-send{display:flex;align-items:center;gap:5px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;border:none;padding:7px 16px;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s}
.rp-msg-send:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(11,95,216,0.3)}

.rp-rating{padding:8px 24px 4px;text-align:center}
.rp-rating-label{font-size:11px;color:var(--slate);margin-bottom:6px;font-weight:500}
.rp-stars{display:flex;justify-content:center;gap:4px}
.rp-star{background:none;border:none;font-size:22px;color:rgba(10,22,40,0.12);cursor:pointer;padding:2px;transition:all 0.15s;line-height:1}
.rp-star:hover,.rp-star.rp-star-active{color:#f59e0b;transform:scale(1.15)}
.rp-star.rp-star-filled{color:#f59e0b}
.rp-rating.rp-rated .rp-rating-label{color:#f59e0b}
.rp-rating.rp-rated .rp-star{pointer-events:none}

.rp-phone-line{text-align:center;padding:8px 24px 18px;font-size:12px;color:var(--slate);display:flex;align-items:center;justify-content:center;gap:6px}

/* ── TUNES TOGGLE (topbar) ── */
.tunes-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;user-select:none}
.tunes-label{font-size:11px;font-weight:600;letter-spacing:0.08em;color:var(--slate)}
.tunes-switch{width:36px;height:20px;position:relative}
.tunes-track{width:100%;height:100%;border-radius:10px;background:var(--off2);border:1px solid rgba(10,22,40,0.1);transition:background 0.25s}
.tunes-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,0.15);transition:transform 0.25s cubic-bezier(0.22,1,0.36,1)}
.tunes-toggle.tunes-on .tunes-track{background:var(--blue);border-color:var(--blue)}
.tunes-toggle.tunes-on .tunes-thumb{transform:translateX(16px)}
.tunes-toggle.tunes-on .tunes-label{color:var(--blue)}

/* ── TUNES BAR ── */
.jazz-bar{position:fixed;bottom:0;left:0;right:0;z-index:9990;display:none;align-items:center;gap:14px;padding:10px 20px;background:rgba(10,22,40,0.96);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,0.06);box-shadow:0 -4px 24px rgba(0,0,0,0.2);font-family:'DM Sans',sans-serif;animation:jazzSlideUp 0.4s cubic-bezier(0.22,1,0.36,1)}
.jazz-bar.jazz-visible{display:flex}

.jazz-play{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--cyan));border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all 0.18s;box-shadow:0 2px 10px rgba(11,95,216,0.35)}
.jazz-play:hover{transform:scale(1.08);box-shadow:0 4px 16px rgba(11,95,216,0.45)}

.jazz-info{flex-shrink:0;min-width:0;cursor:pointer}
.jazz-info:hover .jazz-now{color:var(--cyan)}
.jazz-now{font-size:13px;font-weight:600;color:#fff;letter-spacing:0.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color 0.15s}
.jazz-station{font-size:11px;color:rgba(255,255,255,0.4);margin-top:1px;transition:opacity 0.3s ease}

.jazz-divider{width:1px;height:24px;background:rgba(255,255,255,0.1);flex-shrink:0}
.jazz-marquee{flex:1;text-align:center;font-size:12px;color:#fff;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:opacity 0.3s ease;letter-spacing:0.01em}
.jazz-eq{display:flex;align-items:flex-end;gap:2px;height:18px;flex-shrink:0}
.jazz-eq-bar{width:3px;background:var(--cyan);border-radius:1px;animation:jazzEq 0.8s ease-in-out infinite alternate}
.jazz-eq-bar:nth-child(1){height:8px;animation-delay:0s}
.jazz-eq-bar:nth-child(2){height:14px;animation-delay:0.2s}
.jazz-eq-bar:nth-child(3){height:6px;animation-delay:0.4s}
.jazz-eq-bar:nth-child(4){height:12px;animation-delay:0.1s}
.jazz-eq-bar:nth-child(5){height:10px;animation-delay:0.3s}

.jazz-vol-wrap{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,0.4)}
.jazz-vol{-webkit-appearance:none;appearance:none;width:80px;height:4px;border-radius:2px;background:rgba(255,255,255,0.12);outline:none;cursor:pointer}
.jazz-vol::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,0.3);cursor:pointer;transition:transform 0.12s}
.jazz-vol::-webkit-slider-thumb:hover{transform:scale(1.2)}
.jazz-vol::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:none;box-shadow:0 1px 4px rgba(0,0,0,0.3);cursor:pointer}

/* Station Picker */
.jazz-picker{position:absolute;bottom:100%;left:0;right:0;background:rgba(10,22,40,0.98);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,0.06);border-radius:14px 14px 0 0;padding:16px 0 8px;box-shadow:0 -12px 40px rgba(0,0,0,0.3);animation:jazzSlideUp 0.3s cubic-bezier(0.22,1,0.36,1)}
.jazz-picker-title{font-size:11px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.35);padding:0 20px 12px;border-bottom:1px solid rgba(255,255,255,0.06)}
.jazz-picker-list{max-height:280px;overflow-y:auto;padding:4px 8px}
.jazz-pick{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;cursor:pointer;border:none;background:none;width:100%;text-align:left;font-family:'DM Sans',sans-serif;transition:background 0.12s;color:#fff}
.jazz-pick:hover{background:rgba(255,255,255,0.06)}
.jazz-pick.jazz-pick-active{background:rgba(11,95,216,0.15)}
.jazz-pick-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.jazz-pick-name{font-size:13px;font-weight:600;flex:1}
.jazz-pick-desc{font-size:11px;color:rgba(255,255,255,0.4)}
.jazz-pick-active .jazz-pick-name{color:var(--cyan)}

@keyframes jazzEq{0%{height:4px}100%{height:18px}}
@keyframes jazzSlideUp{from{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}

@media(max-width:768px){
  .rp-fab{bottom:16px;right:16px}
  .rp-card{right:16px;left:16px;width:auto;bottom:80px}
  .jazz-vol-wrap{display:none}
  .jazz-marquee,.jazz-divider{display:none}
  .tunes-toggle .tunes-label{display:none}
}

/* ── DARK MODE OVERRIDES ── */
[data-theme="dark"] .rp-card{background:rgba(20,30,48,0.98);border-color:rgba(255,255,255,0.06);box-shadow:0 24px 80px rgba(0,0,0,0.4),0 4px 12px rgba(0,0,0,0.2),0 0 0 1px rgba(255,255,255,0.03) inset}
[data-theme="dark"] .rp-close{color:rgba(255,255,255,0.4);background:rgba(255,255,255,0.06)}
[data-theme="dark"] .rp-close:hover{color:#fff;background:rgba(255,255,255,0.12)}
[data-theme="dark"] .rp-name{color:#e8ecf2}
[data-theme="dark"] .rp-title{color:rgba(255,255,255,0.45)}
[data-theme="dark"] .rp-bio{color:rgba(255,255,255,0.55)}
[data-theme="dark"] .rp-quick{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .rp-quick:hover{background:rgba(255,255,255,0.06);color:#fff}
[data-theme="dark"] .rp-quick-actions{border-bottom-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .rp-msg-input{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1);color:#e8ecf2}
[data-theme="dark"] .rp-msg-cancel{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .rp-star{color:rgba(255,255,255,0.1)}
[data-theme="dark"] .rp-rating-label{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .rp-phone-line{color:rgba(255,255,255,0.35)}
[data-theme="dark"] .tunes-track{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.1)}
[data-theme="dark"] .tunes-label{color:rgba(255,255,255,0.4)}
[data-theme="dark"] .rp-fab-avatar{border-color:rgba(255,255,255,0.15)}

/* ── TUNES SECTION (portal page) ── */
.tunes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.tunes-card{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px 22px;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex;align-items:flex-start;gap:14px;position:relative}
.tunes-card:hover{border-color:rgba(11,95,216,0.25);box-shadow:0 4px 16px rgba(11,95,216,0.06);transform:translateY(-1px)}
.tunes-card.tunes-card-active{border-color:var(--blue);box-shadow:0 0 0 2px rgba(11,95,216,0.12)}
.tunes-card-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;margin-top:3px}
.tunes-card-info{flex:1;min-width:0}
.tunes-card-name{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:3px}
.tunes-card-desc{font-size:13px;color:var(--slate);line-height:1.4}
.tunes-card-playing{display:none;align-items:center;gap:2px;margin-left:auto;flex-shrink:0;align-self:center}
.tunes-card-active .tunes-card-playing{display:flex}
.tunes-card-playing span{display:block;width:3px;background:var(--blue);border-radius:2px;animation:jazzEq .6s ease-in-out infinite alternate}
.tunes-card-playing span:nth-child(1){height:8px;animation-delay:0s}
.tunes-card-playing span:nth-child(2){height:14px;animation-delay:-.2s}
.tunes-card-playing span:nth-child(3){height:10px;animation-delay:-.4s}
.tunes-powered{text-align:center;margin-top:24px;font-size:13px;color:var(--slate)}
.tunes-powered a{color:var(--blue);text-decoration:none}
.tunes-powered a:hover{text-decoration:underline}
[data-theme="dark"] .tunes-card{background:rgba(20,30,48,0.6);border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .tunes-card:hover{border-color:rgba(11,95,216,0.35);box-shadow:0 4px 16px rgba(0,0,0,0.15)}
[data-theme="dark"] .tunes-card-name{color:#e8ecf2}
[data-theme="dark"] .tunes-card-desc{color:rgba(255,255,255,0.45)}

/* ═══ 30-DAY CHALLENGE ═══ */

/* Hero Status Card */
.ch-hero{display:flex;gap:32px;background:linear-gradient(135deg,rgba(11,95,216,0.04),rgba(0,200,224,0.03));border:1px solid rgba(11,95,216,0.1);border-radius:16px;padding:32px;margin-bottom:24px;align-items:center}
.ch-hero-left{display:flex;flex-direction:column;align-items:center;gap:14px;flex-shrink:0}
.ch-hero-ring-wrap{position:relative;width:120px;height:120px}
.ch-hero-ring{width:100%;height:100%}
.ch-ring-fill{transition:stroke-dashoffset 1s ease}
.ch-hero-ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ch-hero-day{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy);line-height:1}
.ch-hero-of{font-size:12px;color:var(--mist);margin-top:2px}
.ch-hero-streak{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--blue);background:rgba(11,95,216,0.06);padding:6px 14px;border-radius:20px}
.ch-hero-streak svg{stroke:var(--blue)}
.ch-hero-right{flex:1;min-width:0}
.ch-hero-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:20px}
.ch-stat{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:18px 16px;text-align:center}
.ch-stat-val{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy);margin-bottom:4px}
.ch-stat-label{font-size:11px;font-weight:600;color:var(--mist);text-transform:uppercase;letter-spacing:0.08em}
.ch-hero-badges{display:flex;gap:8px;flex-wrap:wrap}

/* M4P1: Badge V2 System */
.ch-badge-v2{display:flex;flex-direction:column;align-items:center;gap:4px;width:56px;padding:8px 4px;border-radius:10px;background:var(--off);border:1px solid var(--off2);color:var(--mist);transition:all 0.25s;cursor:default;opacity:0.5;filter:grayscale(1)}
.ch-badge-v2-earned{opacity:1;filter:none;background:linear-gradient(135deg,rgba(11,95,216,0.06),rgba(0,200,224,0.04));border-color:rgba(11,95,216,0.2);color:var(--blue);animation:chBadgePop 0.4s ease-out}
.ch-badge-v2-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;text-align:center;line-height:1.2;color:inherit}
@keyframes chBadgePop{0%{transform:scale(0.8)}50%{transform:scale(1.1)}100%{transform:scale(1)}}

/* M4P1: Celebration Overlay */
.ch-celebrate-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:10001;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.3s;backdrop-filter:blur(4px)}
.ch-celebrate-overlay.ch-celebrate-open{opacity:1}
.ch-celebrate-modal{position:relative;width:420px;max-width:90vw;overflow:hidden;border-radius:20px;background:var(--white);box-shadow:0 24px 64px rgba(0,0,0,0.25)}
.ch-celebrate-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
@keyframes chConfettiFall{0%{transform:translateY(-10px) rotate(0deg);opacity:1}100%{transform:translateY(500px) rotate(720deg);opacity:0}}
.ch-celebrate-content{position:relative;z-index:2;text-align:center;padding:48px 36px 36px}
.ch-celebrate-icon{margin-bottom:20px;animation:chCelebrateIcon 0.6s ease-out}
@keyframes chCelebrateIcon{0%{transform:scale(0) rotate(-20deg);opacity:0}60%{transform:scale(1.2) rotate(5deg)}100%{transform:scale(1) rotate(0);opacity:1}}
.ch-celebrate-title{font-family:'DM Serif Display',serif;font-size:26px;color:var(--navy);margin-bottom:10px}
.ch-celebrate-sub{font-size:15px;color:var(--body);line-height:1.5;margin-bottom:24px;max-width:320px;margin-left:auto;margin-right:auto}
.ch-celebrate-btn{background:var(--blue);color:#fff;border:none;border-radius:10px;padding:12px 32px;font-size:15px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif}
.ch-celebrate-btn:hover{background:#0a4fb5;box-shadow:0 4px 16px rgba(11,95,216,0.3)}

/* M4P1: Catch-Up Mode */
.ch-catchup{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:20px 24px;margin-bottom:24px}
.ch-catchup-header{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--navy);margin-bottom:6px}
.ch-catchup-count{margin-left:auto;font-size:12px;font-weight:600;background:rgba(255,107,107,0.1);color:#e74c3c;padding:2px 10px;border-radius:20px}
.ch-catchup-desc{font-size:13px;color:var(--slate);margin-bottom:16px}
.ch-catchup-list{display:flex;flex-direction:column;gap:8px}
.ch-catchup-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--off);border-radius:10px;border:1px solid var(--off2)}
.ch-catchup-day{font-size:12px;font-weight:700;color:var(--blue);background:rgba(11,95,216,0.06);padding:4px 10px;border-radius:6px;white-space:nowrap}
.ch-catchup-info{flex:1;min-width:0}
.ch-catchup-title{font-size:14px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ch-catchup-bonus{font-size:12px;color:var(--blue);font-weight:600;margin-top:2px}
.ch-catchup-btn{background:var(--blue);color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;white-space:nowrap}
.ch-catchup-btn:hover{background:#0a4fb5}

/* M4P1: Streak Freeze */
.ch-streak-freeze{margin-bottom:24px}
.ch-freeze-inner{display:flex;align-items:center;gap:14px;padding:14px 20px;background:linear-gradient(135deg,rgba(139,92,246,0.04),rgba(59,130,246,0.04));border:1px solid rgba(139,92,246,0.12);border-radius:12px}
.ch-freeze-icon{width:36px;height:36px;border-radius:50%;background:rgba(139,92,246,0.08);display:flex;align-items:center;justify-content:center;color:#8B5CF6;flex-shrink:0}
.ch-freeze-info{flex:1;min-width:0}
.ch-freeze-label{font-size:14px;font-weight:700;color:var(--navy)}
.ch-freeze-desc{font-size:12px;color:var(--slate);margin-top:2px}
.ch-freeze-count{font-size:22px;font-weight:700;color:#8B5CF6;min-width:28px;text-align:center}

/* M4P1: Leaderboard top3 highlight */
.ch-lb-row-top3 .ch-lb-rank{font-weight:800}
.ch-lb-row-top3:nth-child(1) .ch-lb-rank{color:#FFD700}
.ch-lb-row-top3:nth-child(2) .ch-lb-rank{color:#C0C0C0}
.ch-lb-row-top3:nth-child(3) .ch-lb-rank{color:#CD7F32}

/* M4P1: Dark mode */
[data-theme="dark"] .ch-badge-v2{background:#141e30;border-color:rgba(255,255,255,0.06);color:rgba(255,255,255,0.3)}
[data-theme="dark"] .ch-badge-v2-earned{background:linear-gradient(135deg,rgba(75,163,255,0.08),rgba(0,200,224,0.05));border-color:rgba(75,163,255,0.2);color:#4BA3FF}
[data-theme="dark"] .ch-celebrate-modal{background:#141e30}
[data-theme="dark"] .ch-celebrate-title{color:#e0e4ec}
[data-theme="dark"] .ch-celebrate-sub{color:rgba(255,255,255,0.6)}
[data-theme="dark"] .ch-catchup{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ch-catchup-header{color:#e0e4ec}
[data-theme="dark"] .ch-catchup-desc{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ch-catchup-card{background:#0e1726;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ch-catchup-title{color:#e0e4ec}
[data-theme="dark"] .ch-freeze-inner{background:linear-gradient(135deg,rgba(139,92,246,0.06),rgba(59,130,246,0.06));border-color:rgba(139,92,246,0.15)}
[data-theme="dark"] .ch-freeze-label{color:#e0e4ec}
[data-theme="dark"] .ch-freeze-desc{color:rgba(255,255,255,0.5)}

/* M4P3: Post-Challenge Dashboard */
.ch-post-challenge{background:linear-gradient(135deg,rgba(255,215,0,0.04),rgba(11,95,216,0.04));border:1px solid rgba(255,215,0,0.15);border-radius:16px;padding:28px 32px;margin-bottom:24px}
.ch-pc-header{text-align:center;margin-bottom:24px}
.ch-pc-crown{margin-bottom:12px}
.ch-pc-title{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy)}
.ch-pc-sub{font-size:14px;color:var(--body);margin-top:6px}
.ch-pc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}
.ch-pc-stat{text-align:center;padding:16px 10px;background:var(--white);border-radius:12px;border:1px solid var(--off2)}
.ch-pc-stat-val{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy)}
.ch-pc-stat-label{font-size:11px;font-weight:600;color:var(--slate);text-transform:uppercase;letter-spacing:0.05em;margin-top:4px}
.ch-pc-tools-header{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:10px}
.ch-pc-tools{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:24px}
.ch-pc-tool{font-size:13px;color:var(--body);padding:10px 14px;background:var(--white);border-radius:8px;border:1px solid var(--off2)}
.ch-pc-tool-val{font-weight:700;color:var(--blue);margin-right:4px}
.ch-pc-actions{text-align:center}
.ch-pc-cert-btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#FFD700,#FFA500);color:#0a1628;border:none;border-radius:10px;padding:12px 28px;font-size:15px;font-weight:700;cursor:pointer;transition:all 0.2s;font-family:'DM Sans',sans-serif;box-shadow:0 4px 16px rgba(255,215,0,0.3)}
.ch-pc-cert-btn:hover{box-shadow:0 6px 24px rgba(255,215,0,0.45);transform:translateY(-1px)}

/* M4P3: What's Next Recommendations */
.ch-whats-next{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:20px 24px;margin-bottom:24px}
.ch-wn-header{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--navy);margin-bottom:16px}
.ch-wn-list{display:flex;flex-direction:column;gap:8px}
.ch-wn-card{display:flex;align-items:center;gap:14px;padding:14px 18px;background:var(--off);border-radius:10px;border:1px solid var(--off2);cursor:pointer;transition:all 0.15s}
.ch-wn-card:hover{border-color:var(--blue);box-shadow:0 2px 8px rgba(11,95,216,0.08);transform:translateX(4px)}
.ch-wn-icon{width:40px;height:40px;border-radius:10px;background:rgba(11,95,216,0.06);display:flex;align-items:center;justify-content:center;color:var(--blue);flex-shrink:0}
.ch-wn-info{flex:1;min-width:0}
.ch-wn-title{font-size:14px;font-weight:600;color:var(--navy)}
.ch-wn-desc{font-size:12px;color:var(--slate);margin-top:2px}

/* M4P3: Weekly Digest Toggle */
.ch-digest-toggle{margin-bottom:24px}
.ch-digest-inner{display:flex;align-items:center;gap:16px;padding:14px 20px;background:var(--white);border:1px solid var(--off2);border-radius:12px}
.ch-digest-info{flex:1;min-width:0}
.ch-digest-label{font-size:14px;font-weight:700;color:var(--navy)}
.ch-digest-desc{font-size:12px;color:var(--slate);margin-top:2px}
.ch-digest-btn{padding:8px 20px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;border:1.5px solid var(--off2);background:var(--off);color:var(--slate)}
.ch-digest-btn:hover{border-color:var(--blue)}
.ch-digest-on{background:var(--blue);color:#fff;border-color:var(--blue)}
.ch-digest-on:hover{background:#0a4fb5}

/* M4P3 Dark Mode */
[data-theme="dark"] .ch-post-challenge{background:linear-gradient(135deg,rgba(255,215,0,0.03),rgba(75,163,255,0.03));border-color:rgba(255,215,0,0.1)}
[data-theme="dark"] .ch-pc-title{color:#e0e4ec}
[data-theme="dark"] .ch-pc-sub{color:rgba(255,255,255,0.6)}
[data-theme="dark"] .ch-pc-stat{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ch-pc-stat-val{color:#e0e4ec}
[data-theme="dark"] .ch-pc-tools-header{color:#e0e4ec}
[data-theme="dark"] .ch-pc-tool{background:#141e30;border-color:rgba(255,255,255,0.06);color:rgba(255,255,255,0.7)}
[data-theme="dark"] .ch-whats-next{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ch-wn-header{color:#e0e4ec}
[data-theme="dark"] .ch-wn-card{background:#0e1726;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ch-wn-card:hover{border-color:#4BA3FF}
[data-theme="dark"] .ch-wn-icon{background:rgba(75,163,255,0.08)}
[data-theme="dark"] .ch-wn-title{color:#e0e4ec}
[data-theme="dark"] .ch-wn-desc{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ch-digest-inner{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ch-digest-label{color:#e0e4ec}
[data-theme="dark"] .ch-digest-desc{color:rgba(255,255,255,0.5)}
[data-theme="dark"] .ch-digest-btn{background:#0e1726;border-color:rgba(255,255,255,0.06);color:rgba(255,255,255,0.5)}

/* Weekly Progress Grid */
.ch-weeks{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:24px;margin-bottom:24px}
.ch-weeks-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.ch-weeks-title{font-size:15px;font-weight:700;color:var(--navy)}
.ch-weeks-legend{display:flex;gap:14px;font-size:12px;color:var(--slate)}
.ch-leg{display:flex;align-items:center;gap:5px}
.ch-leg-dot{width:10px;height:10px;border-radius:50%}
.ch-leg-done{background:linear-gradient(135deg,#0B5FD8,#00C8E0)}
.ch-leg-today{background:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.2)}
.ch-leg-locked{background:var(--off);border:1px solid var(--off2)}
.ch-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:8px}
.ch-cell{width:100%;aspect-ratio:1;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--mist);background:var(--off);border:1px solid var(--off2);transition:all 0.2s;cursor:default}
.ch-cell-done{background:linear-gradient(135deg,#0B5FD8,#00C8E0);color:#fff;border-color:transparent;box-shadow:0 2px 8px rgba(11,95,216,0.2)}
.ch-cell-done svg{stroke:#fff}
.ch-cell-today{background:var(--white);border-color:var(--blue);color:var(--blue);box-shadow:0 0 0 3px rgba(11,95,216,0.12);font-weight:800}
.ch-cell-skipped{background:rgba(220,38,38,0.04);border-color:rgba(220,38,38,0.15);color:#DC2626}
.ch-cell-locked{opacity:0.4}

/* Today's Challenge */
.ch-today{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:28px;margin-bottom:24px;transition:all 0.3s}
.ch-today-eyebrow{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:14px}
.ch-today-eyebrow svg{stroke:var(--blue)}
.ch-today-pts{background:linear-gradient(135deg,rgba(11,95,216,0.06),rgba(0,200,224,0.04));color:var(--cyan-text);padding:3px 10px;border-radius:20px;font-size:11px;letter-spacing:0.04em;margin-left:auto}
.ch-today-title{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy);margin-bottom:10px}
.ch-today-desc{font-size:14px;color:var(--body);line-height:1.7;margin-bottom:20px}
.ch-today-actions{display:flex;gap:12px}
.ch-btn-complete{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--blue),#00C8E0);border:none;border-radius:10px;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;box-shadow:0 4px 16px rgba(11,95,216,0.2)}
.ch-btn-complete:hover{box-shadow:0 6px 24px rgba(11,95,216,0.3);transform:translateY(-1px)}
.ch-btn-complete:disabled{opacity:0.6;cursor:default;transform:none;box-shadow:none}
.ch-btn-skip{padding:12px 20px;font-size:14px;font-weight:600;color:var(--slate);background:none;border:1px solid var(--off2);border-radius:10px;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif}
.ch-btn-skip:hover{border-color:var(--navy);color:var(--navy)}
.ch-today-completed{border-color:rgba(5,150,105,0.2);background:rgba(5,150,105,0.02)}
.ch-today-completed .ch-today-eyebrow{color:#059669}
.ch-today-completed .ch-today-eyebrow svg{stroke:#059669}
.ch-today-completed .ch-btn-complete{background:#059669}

/* Upcoming Days */
.ch-upcoming{margin-bottom:24px}
.ch-upcoming-title{font-size:12px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:12px}
.ch-upcoming-list{display:flex;flex-direction:column;gap:10px}
.ch-up-card{display:flex;align-items:center;gap:16px;background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:16px 20px;opacity:0.6}
.ch-up-day{font-size:12px;font-weight:700;color:var(--mist);white-space:nowrap;min-width:50px}
.ch-up-info{flex:1;display:flex;justify-content:space-between;align-items:center;gap:12px}
.ch-up-title{font-size:14px;font-weight:600;color:var(--navy)}
.ch-up-pts{font-size:12px;font-weight:600;color:var(--blue);white-space:nowrap}

/* Challenge Leaderboard */
.ch-leaderboard{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:24px}
.ch-lb-header{margin-bottom:16px}
.ch-lb-title{font-size:16px;font-weight:700;color:var(--navy)}
.ch-lb-sub{font-size:13px;color:var(--mist);margin-top:2px}
.ch-lb-list{display:flex;flex-direction:column;gap:6px}
.ch-lb-row{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:10px;transition:background 0.15s}
.ch-lb-row:hover{background:var(--off1)}
.ch-lb-rank{width:24px;font-size:14px;font-weight:700;color:var(--mist);text-align:center}
.ch-lb-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}
.ch-lb-info{flex:1;min-width:0}
.ch-lb-name{font-size:14px;font-weight:600;color:var(--navy)}
.ch-lb-day{font-size:11px;color:var(--mist)}
.ch-lb-pts{font-size:13px;font-weight:700;color:var(--blue)}
.ch-lb-row-you{background:rgba(11,95,216,0.03);border:1px solid rgba(11,95,216,0.08)}
.ch-lb-row-you:hover{background:rgba(11,95,216,0.06)}

/* M4P2: Start Task Button */
.ch-start-task-btn{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#0B5FD8,#00C8E0);color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s;font-family:'DM Sans',sans-serif}
.ch-start-task-btn:hover{box-shadow:0 4px 16px rgba(11,95,216,0.3);transform:translateY(-1px)}

/* M4P2: Share Progress Button */
.ch-share-btn{display:inline-flex;align-items:center;gap:6px;background:var(--white);color:var(--navy);border:1.5px solid var(--off2);border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif}
.ch-share-btn:hover{border-color:var(--blue);color:var(--blue);box-shadow:0 2px 8px rgba(11,95,216,0.1)}

/* M4P2: Auto-Detect Prompt */
.ch-auto-detect{margin-bottom:20px}
.ch-ad-inner{display:flex;align-items:center;gap:14px;padding:16px 20px;background:linear-gradient(135deg,rgba(16,185,129,0.04),rgba(11,95,216,0.04));border:1px solid rgba(16,185,129,0.15);border-radius:12px;animation:chAdPulse 2s ease-in-out infinite}
@keyframes chAdPulse{0%,100%{border-color:rgba(16,185,129,0.15)}50%{border-color:rgba(16,185,129,0.35)}}
.ch-ad-icon{flex-shrink:0}
.ch-ad-content{flex:1;min-width:0}
.ch-ad-title{font-size:14px;font-weight:700;color:var(--navy)}
.ch-ad-text{font-size:13px;color:var(--body);margin-top:2px}
.ch-ad-btn{background:var(--blue);color:#fff;border:none;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;white-space:nowrap}
.ch-ad-btn:hover{background:#0a4fb5}

/* M4P2: Task Output Preview */
.ch-task-output{margin-bottom:20px}
.ch-to-inner{padding:16px 20px;background:var(--white);border:1px solid var(--off2);border-radius:12px;position:relative}
.ch-to-badge{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;background:rgba(16,185,129,0.08);color:#10B981;padding:3px 10px;border-radius:20px;margin-bottom:8px}
.ch-to-preview{font-size:14px;color:var(--body);line-height:1.5;font-style:italic}
.ch-to-tool{font-size:12px;color:var(--slate);margin-top:6px;text-transform:capitalize}

/* M4P2: Dark Mode */
[data-theme="dark"] .ch-share-btn{background:#141e30;border-color:rgba(255,255,255,0.06);color:#e0e4ec}
[data-theme="dark"] .ch-share-btn:hover{border-color:#4BA3FF;color:#4BA3FF}
[data-theme="dark"] .ch-ad-inner{background:linear-gradient(135deg,rgba(16,185,129,0.06),rgba(75,163,255,0.04));border-color:rgba(16,185,129,0.2)}
[data-theme="dark"] .ch-ad-title{color:#e0e4ec}
[data-theme="dark"] .ch-ad-text{color:rgba(255,255,255,0.6)}
[data-theme="dark"] .ch-to-inner{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ch-to-preview{color:rgba(255,255,255,0.7)}
[data-theme="dark"] .ch-to-tool{color:rgba(255,255,255,0.4)}

/* Identity + Motivation Banner */
.ch-identity{display:flex;align-items:center;gap:28px;background:linear-gradient(135deg,rgba(11,95,216,0.06),rgba(0,200,224,0.04));border:1px solid rgba(11,95,216,0.12);border-radius:16px;padding:28px 32px;margin-bottom:24px;position:relative;overflow:hidden}
.ch-identity::before{content:'';position:absolute;top:-40px;right:-40px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(0,200,224,0.06),transparent 70%);pointer-events:none}
.ch-identity-left{flex:1;min-width:0}
.ch-identity-title{font-family:'DM Serif Display',serif;font-size:28px;color:var(--navy);line-height:1.2;margin-bottom:6px}
.ch-identity-sub{font-size:14px;color:var(--body);line-height:1.5}
.ch-identity-quote{flex:0 0 280px;font-size:13px;color:var(--slate);font-style:italic;line-height:1.65;padding-left:24px;border-left:3px solid rgba(11,95,216,0.15)}

/* Milestone toast animation */
.ch-milestone-pulse{animation:chMilestonePulse 0.6s ease}
@keyframes chMilestonePulse{0%{transform:scale(1)}30%{transform:scale(1.02)}60%{transform:scale(0.99)}100%{transform:scale(1)}}

/* Today card motivational sub */
.ch-today-why{font-size:13px;color:var(--blue);font-weight:600;margin-top:8px;display:flex;align-items:center;gap:6px;opacity:0.8}
.ch-today-why svg{stroke:var(--blue);flex-shrink:0}

@media(max-width:768px){
  .ch-hero{flex-direction:column;padding:24px;gap:20px}
  .ch-hero-stats{grid-template-columns:1fr;gap:10px}
  .ch-grid{grid-template-columns:repeat(6,1fr);gap:6px}
  .ch-today-title{font-size:19px}
  .ch-today-actions{flex-direction:column}
  .ch-up-info{flex-direction:column;align-items:flex-start;gap:4px}
  .ch-identity{flex-direction:column;gap:16px;padding:24px}
  .ch-identity-title{font-size:22px}
  .ch-identity-quote{flex:none;padding-left:16px;border-left-width:2px}
}

/* ═══ PRO GATING / PAYWALL ═══ */

/* Lock overlay on gated sections */
.pro-lock-overlay{position:absolute;inset:0;z-index:50;background:rgba(255,255,255,0.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;border-radius:8px}
.pro-lock-card{text-align:center;max-width:360px;padding:40px 32px}
.pro-lock-icon{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,rgba(11,95,216,0.06),rgba(0,200,224,0.04));display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:var(--blue)}
.pro-lock-title{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy);margin-bottom:10px}
.pro-lock-desc{font-size:14px;color:var(--body);line-height:1.65;margin-bottom:24px}
.pro-lock-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;font-size:14px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--blue),#00C8E0);border:none;border-radius:10px;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;box-shadow:0 4px 16px rgba(11,95,216,0.2);margin-bottom:12px}
.pro-lock-btn:hover{box-shadow:0 6px 24px rgba(11,95,216,0.3);transform:translateY(-1px)}
.pro-lock-preview{display:block;margin:0 auto;padding:8px 16px;font-size:13px;font-weight:600;color:var(--slate);background:none;border:none;cursor:pointer;transition:color 0.15s;font-family:'DM Sans',sans-serif}
.pro-lock-preview:hover{color:var(--navy)}

/* Nav lock icon */
.pro-nav-lock{margin-left:auto;color:var(--mist);display:flex;align-items:center}

/* Paywall Modal */
.pro-paywall-overlay{position:fixed;inset:0;z-index:100001;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;animation:proFadeIn 0.2s ease}
@keyframes proFadeIn{from{opacity:0}to{opacity:1}}
.pro-pw-modal{position:relative;background:var(--white);border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,0.2);max-width:480px;width:100%;max-height:90vh;overflow-y:auto;animation:proSlideUp 0.3s cubic-bezier(0.22,1,0.36,1)}
@keyframes proSlideUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.pro-pw-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border:none;background:var(--off);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--slate);transition:all 0.15s;z-index:1}
.pro-pw-close:hover{background:var(--off2);color:var(--navy)}

/* Paywall header */
.pro-pw-header{text-align:center;padding:40px 32px 0;background:linear-gradient(180deg,rgba(11,95,216,0.04) 0%,transparent 100%)}
.pro-pw-badge{display:inline-block;font-size:11px;font-weight:800;letter-spacing:0.14em;color:#fff;background:linear-gradient(135deg,var(--blue),#00C8E0);padding:5px 16px;border-radius:20px;margin-bottom:16px}
.pro-pw-title{font-family:'DM Serif Display',serif;font-size:28px;color:var(--navy);margin-bottom:8px}
.pro-pw-subtitle{font-size:15px;color:var(--body);line-height:1.5}

/* Paywall price */
.pro-pw-price-card{text-align:center;padding:24px 32px;margin:24px 32px 0;background:linear-gradient(135deg,rgba(11,95,216,0.04),rgba(0,200,224,0.03));border:1px solid rgba(11,95,216,0.1);border-radius:14px}
.pro-pw-price{display:flex;align-items:baseline;justify-content:center;gap:0}
.pro-pw-dollar{font-size:20px;font-weight:700;color:var(--navy);margin-right:2px}
.pro-pw-amount{font-family:'DM Serif Display',serif;font-size:52px;color:var(--navy);line-height:1}
.pro-pw-cents{font-family:'DM Serif Display',serif;font-size:24px;color:var(--navy)}
.pro-pw-period{font-size:16px;color:var(--slate);margin-left:4px}
.pro-pw-price-note{font-size:13px;color:var(--mist);margin-top:8px}

/* Feature list */
.pro-pw-features{padding:24px 32px}
.pro-pw-feat-title{font-size:12px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:16px}
.pro-pw-feat{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid var(--off1)}
.pro-pw-feat:last-child{border-bottom:none}
.pro-pw-feat-icon{width:32px;height:32px;border-radius:8px;background:rgba(11,95,216,0.06);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--blue)}
.pro-pw-feat-info{flex:1;min-width:0}
.pro-pw-feat-name{font-size:14px;font-weight:600;color:var(--navy)}
.pro-pw-feat-desc{font-size:12px;color:var(--slate);line-height:1.5;margin-top:2px}

/* CTA */
.pro-pw-cta{display:block;width:calc(100% - 64px);margin:0 32px 16px;padding:14px;font-size:15px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--blue),#00C8E0);border:none;border-radius:12px;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;box-shadow:0 4px 16px rgba(11,95,216,0.2)}
.pro-pw-cta:hover{box-shadow:0 6px 24px rgba(11,95,216,0.3);transform:translateY(-1px)}
.pro-pw-guarantee{text-align:center;font-size:12px;color:var(--mist);padding:0 32px 32px;line-height:1.5}

@media(max-width:480px){
  .pro-pw-modal{max-width:100%;border-radius:16px}
  .pro-pw-title{font-size:24px}
  .pro-pw-amount{font-size:44px}
}

/* ═══ Go Pro Comparison Modal ═══ */
.gp-compare-overlay{
  position:fixed;inset:0;z-index:100001;
  background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  display:flex;align-items:center;justify-content:center;padding:20px;
  animation:proFadeIn 0.2s ease
}
.gp-compare-modal{
  position:relative;background:var(--white);border-radius:20px;
  box-shadow:0 24px 80px rgba(0,0,0,0.2);
  max-width:640px;width:100%;max-height:90vh;overflow-y:auto;
  animation:proSlideUp 0.3s cubic-bezier(0.22,1,0.36,1)
}
.gp-compare-close{
  position:absolute;top:16px;right:16px;width:36px;height:36px;
  border:none;background:var(--off);border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;color:var(--slate);transition:all 0.15s;z-index:1
}
.gp-compare-close:hover{background:var(--off2);color:var(--navy)}

/* Header */
.gp-compare-header{text-align:center;padding:32px 32px 0}
.gp-compare-title{font-family:'DM Serif Display',serif;font-size:26px;color:var(--navy);margin-bottom:6px}
.gp-compare-subtitle{font-size:14px;color:var(--slate)}

/* Two-column grid */
.gp-compare-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
  padding:24px 24px 0
}

/* Cards */
.gp-compare-card{
  border:1.5px solid var(--off2);border-radius:14px;
  padding:24px 20px;display:flex;flex-direction:column;
  transition:border-color 0.2s,box-shadow 0.2s
}
.gp-compare-card-pro{
  border-color:rgba(11,95,216,0.3);
  box-shadow:0 0 24px rgba(11,95,216,0.08),0 4px 16px rgba(11,95,216,0.06)
}

/* Badges */
.gp-compare-badge{
  display:inline-block;font-size:10px;font-weight:800;letter-spacing:0.14em;
  padding:4px 12px;border-radius:16px;text-transform:uppercase;
  margin-bottom:12px;width:fit-content
}
.gp-compare-badge-free{
  background:var(--off);color:var(--slate)
}
.gp-compare-badge-pro{
  background:linear-gradient(135deg,var(--blue),#00C8E0);color:#fff
}

/* Price */
.gp-compare-price{
  font-family:'DM Serif Display',serif;font-size:32px;color:var(--navy);
  margin-bottom:16px;line-height:1.2
}
.gp-compare-period{font-size:16px;font-weight:400;color:var(--slate)}

/* "Everything in Premium, plus:" */
.gp-compare-plus{
  font-size:12px;font-weight:600;color:var(--blue);
  margin-bottom:12px;letter-spacing:0.01em
}

/* Feature list */
.gp-compare-list{list-style:none;padding:0;margin:0 0 20px;flex:1}
.gp-compare-item{
  display:flex;align-items:center;gap:8px;
  padding:5px 0;font-size:13px;color:var(--body);line-height:1.4
}
.gp-compare-item svg{color:var(--cyan-text);flex-shrink:0}
.gp-compare-card-pro .gp-compare-item svg{color:var(--blue)}

/* CTA buttons */
.gp-compare-cta{
  display:block;width:100%;padding:12px;font-size:14px;font-weight:700;
  border:none;border-radius:10px;cursor:pointer;
  font-family:'DM Sans',sans-serif;transition:all 0.15s;text-align:center
}
.gp-compare-cta-disabled{
  background:var(--off);color:var(--mist);cursor:default
}
.gp-compare-cta-pro{
  background:linear-gradient(135deg,var(--blue),#00C8E0);color:#fff;
  box-shadow:0 4px 16px rgba(11,95,216,0.2)
}
.gp-compare-cta-pro:hover{
  box-shadow:0 6px 24px rgba(11,95,216,0.3);transform:translateY(-1px)
}

/* Footer */
.gp-compare-footer{
  text-align:center;font-size:12px;color:var(--mist);
  padding:16px 24px 28px;line-height:1.5
}

/* Mobile: stack columns */
@media(max-width:640px){
  .gp-compare-modal{max-width:100%;border-radius:16px}
  .gp-compare-grid{grid-template-columns:1fr;gap:12px}
  .gp-compare-title{font-size:22px}
}

/* ═══ AI TOOL EMBEDS (Portal) ═══ */

.ai-portal-embed{background:var(--white);border:1px solid var(--off2);border-radius:14px;padding:28px}

/* Tabs */
.ai-embed-tabs{display:flex;gap:4px;background:var(--off);border-radius:10px;padding:4px;margin-bottom:24px}
.ai-embed-tab{flex:1;padding:10px 16px;border:none;background:none;border-radius:8px;font-size:13px;font-weight:600;color:var(--slate);cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif}
.ai-embed-tab:hover{color:var(--navy)}
.ai-embed-tab-active{background:var(--white);color:var(--navy);box-shadow:0 1px 3px rgba(0,0,0,0.06)}

/* Panels */
.ai-embed-panel{display:none}
.ai-embed-panel-active{display:block}

/* Form elements */
.ai-embed-field{margin-bottom:18px}
.ai-embed-label{display:block;font-size:12px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:8px}
.ai-embed-input{width:100%;padding:12px 16px;font-size:14px;font-family:'DM Sans',sans-serif;border:1.5px solid var(--off2);border-radius:10px;background:var(--white);color:var(--ink);outline:none;transition:border-color 0.15s;resize:vertical;box-sizing:border-box}
.ai-embed-input:focus{border-color:var(--blue)}
.ai-embed-select{width:100%;padding:12px 36px 12px 16px;font-size:14px;font-family:'DM Sans',sans-serif;border:1.5px solid var(--off2);border-radius:10px;background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 14px center;color:var(--ink);outline:none;transition:border-color 0.15s;appearance:none;-webkit-appearance:none;cursor:pointer}
.ai-embed-select:focus{border-color:var(--blue)}
.ai-embed-row{display:flex;gap:16px}
.ai-embed-row>.ai-embed-field{flex:1}

/* Pills */
.ai-embed-pills{display:flex;gap:8px;flex-wrap:wrap}
.ai-pill{padding:8px 16px;font-size:13px;font-weight:500;color:var(--slate);background:var(--off);border:1px solid var(--off2);border-radius:8px;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif}
.ai-pill:hover{border-color:var(--blue);color:var(--blue)}
.ai-pill-active{background:rgba(11,95,216,0.06);border-color:rgba(11,95,216,0.2);color:var(--blue);font-weight:600}

/* Generate button */
.ai-embed-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--blue),#00C8E0);border:none;border-radius:10px;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif;box-shadow:0 4px 16px rgba(11,95,216,0.2);margin-top:4px}
.ai-embed-btn:hover{box-shadow:0 6px 24px rgba(11,95,216,0.3);transform:translateY(-1px)}
.ai-embed-btn:disabled{opacity:0.6;cursor:default;transform:none}

/* Results */
.ai-embed-result{display:none;margin-top:24px}
.ai-embed-result.ai-result-visible{display:block;animation:aiResultSlideIn 0.4s ease-out}
@keyframes aiResultSlideIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.ai-result-card{background:var(--off);border:1px solid var(--off2);border-radius:12px;padding:24px;font-size:14px;color:var(--body);line-height:1.7}
.ai-result-card p{margin:0 0 12px}
.ai-result-card p:last-child{margin-bottom:0}
.ai-result-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.ai-result-label{font-size:11px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:0}
.ai-result-note{font-size:12px;color:var(--mist);font-style:italic;margin-top:12px;padding-top:12px;border-top:1px solid var(--off2)}
.ai-result-tip{font-size:13px;color:var(--slate);margin-top:14px;padding-top:14px;border-top:1px solid var(--off2)}
.ai-embed-copy-btn{padding:6px 14px;font-size:12px;font-weight:600;color:var(--blue);background:rgba(11,95,216,0.06);border:1px solid rgba(11,95,216,0.12);border-radius:6px;cursor:pointer;transition:all 0.15s;font-family:'DM Sans',sans-serif}
.ai-embed-copy-btn:hover{background:rgba(11,95,216,0.1);border-color:rgba(11,95,216,0.2)}
.ai-embed-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,0.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* Loading skeleton */
.ai-loading-skeleton{margin-top:24px;display:flex;flex-direction:column;gap:12px;animation:aiFadeIn 0.3s ease-out}
.ai-skel-line{height:14px;border-radius:6px;background:linear-gradient(90deg,var(--off) 25%,var(--off2) 50%,var(--off) 75%);background-size:200% 100%;animation:aiShimmer 1.5s ease-in-out infinite}
.ai-skel-line:nth-child(1){width:85%}.ai-skel-line:nth-child(2){width:70%}.ai-skel-line:nth-child(3){width:92%}.ai-skel-line:nth-child(4){width:60%}.ai-skel-line:nth-child(5){width:78%}
@keyframes aiShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
@keyframes aiFadeIn{from{opacity:0}to{opacity:1}}

/* Copy success state */
.ai-embed-copy-btn.ai-copy-success{background:rgba(5,150,105,0.08);border-color:rgba(5,150,105,0.2);color:#059669}

/* Conversation flow */
.ai-conv-flow{display:flex;flex-direction:column;gap:8px}
.ai-conv-stage{font-size:12px;color:var(--mist);font-style:italic;padding:4px 0}
.ai-conv-label{font-size:12px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:0.06em;margin-top:8px}
.ai-conv-line{font-size:14px;color:var(--navy);line-height:1.7;padding:8px 14px;background:var(--white);border-radius:8px;border-left:3px solid var(--blue)}

/* Email format */
.ai-email-subject{font-size:13px;font-weight:700;color:var(--navy);padding:10px 14px;background:var(--white);border-radius:8px;margin-bottom:12px;border:1px solid var(--off2)}
.ai-email-subject-label{color:var(--mist);font-weight:600}
.ai-email-body{padding:16px;background:var(--white);border-radius:8px;border:1px solid var(--off2)}
.ai-email-body p{margin:0 0 10px;font-size:14px;color:var(--body);line-height:1.65}
.ai-email-body p:last-child{margin:0}

/* Objection pairs */
.ai-objections-list{display:flex;flex-direction:column;gap:14px}
.ai-objection-pair{background:var(--white);border:1px solid var(--off2);border-radius:10px;overflow:hidden}
.ai-objection-q{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;background:rgba(220,38,38,0.03);border-bottom:1px solid var(--off2);font-size:14px;color:var(--navy);font-weight:600;line-height:1.5}
.ai-objection-a{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;font-size:14px;color:var(--body);line-height:1.6}
.ai-objection-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:rgba(220,38,38,0.08);color:#DC2626;font-size:11px;font-weight:800;flex-shrink:0;margin-top:1px}
.ai-objection-icon-a{background:rgba(5,150,105,0.08);color:#059669}

/* Follow-up */
.ai-followup-body{padding:16px;background:var(--white);border-radius:8px;border:1px solid var(--off2)}
.ai-followup-body p{margin:0 0 10px;font-size:14px;color:var(--body);line-height:1.65}

/* Ad preview (upgraded) */
.ai-ad-preview-card{background:var(--white);border:1px solid var(--off2);border-radius:12px;overflow:hidden;margin-bottom:12px;box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.ai-ad-platform-bar{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid var(--off2);background:var(--off)}
.ai-ad-platform-name{font-size:12px;font-weight:700;color:var(--navy)}
.ai-ad-sponsored{font-size:11px;color:var(--mist)}
.ai-ad-preview-body{padding:20px}
.ai-ad-preview-headline{font-size:18px;font-weight:700;color:var(--navy);margin-bottom:8px;line-height:1.3}
.ai-ad-preview-text{font-size:14px;color:var(--body);line-height:1.6;margin-bottom:16px}
.ai-ad-preview-cta{display:inline-block;padding:10px 24px;font-size:13px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--blue),#00C8E0);border-radius:8px}
.ai-ad-preview-meta{padding:10px 16px;border-top:1px solid var(--off2);font-size:12px;color:var(--blue)}
.ai-ad-specs{font-size:12px;color:var(--mist);margin-top:8px}

/* Qualifier stats */
.ai-cq-stat-card{padding:14px;background:var(--white);border:1px solid var(--off2);border-radius:10px}
.ai-cq-stat-label{font-size:11px;color:var(--mist);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:4px}
.ai-cq-stat-value{font-size:14px;font-weight:600;color:var(--navy)}
.ai-cq-talking-points{display:flex;flex-direction:column;gap:6px}
.ai-cq-tp{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--body);line-height:1.5;padding:6px 0}
.ai-cq-tp svg{flex-shrink:0;color:#059669;margin-top:2px}

/* KB answer */
.ai-kb-answer{display:flex;flex-direction:column;gap:4px}
.ai-kb-heading{font-size:14px;font-weight:700;color:var(--navy);margin-top:8px;margin-bottom:2px}
.ai-kb-bullet{font-size:14px;color:var(--body);line-height:1.6;padding:4px 0 4px 16px;border-left:2px solid var(--blue)}

/* Dark mode */
[data-theme="dark"] .ai-result-card{background:#141e30;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ai-conv-line{background:#0d1520;border-left-color:var(--blue)}
[data-theme="dark"] .ai-email-subject,[data-theme="dark"] .ai-email-body,[data-theme="dark"] .ai-followup-body{background:#0d1520;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ai-objection-pair{background:#0d1520;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ai-objection-q{background:rgba(220,38,38,0.06);border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .ai-ad-preview-card{background:#0d1520;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ai-ad-platform-bar{background:#141e30;border-color:rgba(255,255,255,0.04)}
[data-theme="dark"] .ai-cq-stat-card{background:#0d1520;border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .ai-embed-copy-btn{color:var(--cyan);background:rgba(0,200,224,0.06);border-color:rgba(0,200,224,0.12)}

/* KB search wrap */
/* Full tool link */
.ai-embed-fulllink{font-size:13px;color:var(--slate);margin-top:20px;padding-top:16px;border-top:1px solid var(--off2);text-align:center}

.ai-kb-search-wrap{display:flex;align-items:center;gap:10px;padding:0 16px;border:1.5px solid var(--off2);border-radius:10px;background:var(--white);transition:border-color 0.15s}
.ai-kb-search-wrap:focus-within{border-color:var(--blue)}
.ai-kb-search-wrap svg{flex-shrink:0;color:var(--mist)}
.ai-kb-input{flex:1;font-size:14px}

@media(max-width:768px){
  .ai-embed-row{flex-direction:column;gap:0}
  .ai-embed-tabs{flex-wrap:wrap}
  .ai-embed-tab{flex:none;padding:8px 12px;font-size:12px}
  .ai-result-card{padding:16px}
  .ai-ad-preview-headline{font-size:16px}
  .ai-objection-q,.ai-objection-a{font-size:13px}
}

/* ═══════════════════════════════════════════════
   AUTHORITY BUILDER
   Template gallery from Partner Portal Templates
   ═══════════════════════════════════════════════ */

/* Toolbar: filters + demo controls */
.ab-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}

/* Filter bar */
.ab-filters{display:flex;gap:8px;flex-wrap:wrap}
.ab-filter-btn{padding:8px 18px;border-radius:8px;border:1px solid #e2e5ea;background:#fff;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;transition:all .2s}
.ab-filter-btn:hover{border-color:#94a3b8;color:#334155}
.ab-filter-active{background:#1e293b;color:#fff;border-color:#1e293b}
.ab-filter-active:hover{background:#334155;color:#fff;border-color:#334155}

/* Template grid */
.ab-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}
.ab-empty{text-align:center;color:#94a3b8;padding:60px 20px;font-size:14px}

/* Template card */
.ab-card{border-radius:14px;overflow:hidden;border:1px solid #e2e5ea;background:#fff;transition:all .25s}
.ab-card:hover{border-color:#cbd5e1;box-shadow:0 8px 30px rgba(0,0,0,.08);transform:translateY(-2px)}

/* Card preview iframe */
.ab-card-preview{position:relative;aspect-ratio:16/10;overflow:hidden;background:#f1f5f9}
.ab-card-preview iframe{width:400%;height:400%;transform:scale(.25);transform-origin:top left;pointer-events:none;border:none}
.ab-card-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:10px;background:rgba(15,23,42,.6);opacity:0;transition:opacity .25s}
.ab-card:hover .ab-card-overlay{opacity:1}

/* Card body */
.ab-card-body{padding:16px 18px 18px}
.ab-card-cat{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:4px;margin-bottom:8px}
.ab-card[data-id^="edu"] .ab-card-cat,.ab-card-cat:first-child{background:#ecfdf5;color:#059669}
.ab-card[data-id^="tpl"] .ab-card-cat{background:#eff6ff;color:#2563eb}
.ab-card-title{font-size:16px;font-weight:700;color:#1e293b;margin:0 0 6px}
.ab-card-desc{font-size:13px;color:#64748b;margin:0 0 10px;line-height:1.5}
.ab-card-tags{display:flex;flex-wrap:wrap;gap:6px}
.ab-tag{font-size:11px;padding:3px 8px;border-radius:6px;background:#f1f5f9;color:#64748b;font-weight:500}

/* Buttons */
.ab-btn{padding:10px 20px;border-radius:8px;font-size:13px;font-weight:600;border:none;cursor:pointer;transition:all .2s}
.ab-btn-preview{background:#fff;color:#1e293b}
.ab-btn-preview:hover{background:#f1f5f9}
.ab-btn-publish{background:#0d9488;color:#fff}
.ab-btn-publish:hover{background:#0f766e}
.ab-btn-cancel{background:#f1f5f9;color:#64748b}
.ab-btn-cancel:hover{background:#e2e8f0}

/* Full-screen preview modal */
.ab-preview-modal{position:fixed;inset:0;z-index:9999;display:none;flex-direction:column;background:#fff}
.ab-preview-modal.ab-preview-open{display:flex}
.ab-preview-bar{display:flex;align-items:center;gap:16px;padding:12px 20px;background:#1e293b;color:#fff;flex-shrink:0}
.ab-preview-back{display:flex;align-items:center;gap:6px;background:none;border:none;color:#94a3b8;font-size:13px;font-weight:600;cursor:pointer;transition:color .2s}
.ab-preview-back:hover{color:#fff}
.ab-preview-name{font-size:14px;font-weight:600;flex:1}
.ab-preview-actions{display:flex;gap:8px}
.ab-preview-iframe{flex:1;width:100%;border:none}

/* Publish modal */
.ab-publish-modal{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center}
.ab-publish-modal.ab-publish-open{display:flex}
.ab-publish-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.5)}
.ab-publish-dialog{position:relative;background:#fff;border-radius:16px;padding:32px;width:100%;max-width:460px;box-shadow:0 24px 60px rgba(0,0,0,.2)}
.ab-publish-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:22px;color:#94a3b8;cursor:pointer;line-height:1}
.ab-publish-close:hover{color:#1e293b}
.ab-publish-title{font-size:20px;font-weight:700;color:#1e293b;margin:0 0 6px}
.ab-publish-desc{font-size:13px;color:#64748b;margin:0 0 20px;line-height:1.5}
.ab-publish-desc code{background:#f1f5f9;padding:2px 6px;border-radius:4px;font-size:12px}
.ab-publish-field{margin-bottom:16px}
.ab-publish-field label{display:block;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.ab-publish-field input{width:100%;padding:10px 14px;border:1px solid #e2e5ea;border-radius:8px;font-size:14px;color:#1e293b;outline:none;box-sizing:border-box}
.ab-publish-field input:focus{border-color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.1)}
.ab-slug-wrap{display:flex;align-items:center;border:1px solid #e2e5ea;border-radius:8px;overflow:hidden}
.ab-slug-wrap:focus-within{border-color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.1)}
.ab-slug-prefix{padding:10px 0 10px 14px;font-size:13px;color:#94a3b8;font-weight:500;white-space:nowrap;flex-shrink:0}
.ab-slug-wrap input{border:none;padding:10px 14px 10px 4px;flex:1}
.ab-slug-wrap input:focus{box-shadow:none}
.ab-publish-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}

/* Toast */
.ab-toast{position:fixed;bottom:32px;left:50%;transform:translateX(-50%) translateY(20px);background:#1e293b;color:#fff;padding:12px 24px;border-radius:10px;font-size:13px;font-weight:600;opacity:0;transition:all .3s;z-index:10001;pointer-events:none;box-shadow:0 8px 30px rgba(0,0,0,.2)}
.ab-toast-show{opacity:1;transform:translateX(-50%) translateY(0)}

/* Demo controls */
.ab-demo-controls{display:flex;gap:8px}
.ab-btn-demo{background:#f0fdf4;color:#059669;border:1px solid #bbf7d0;padding:8px 16px;font-size:12px}
.ab-btn-demo:hover{background:#dcfce7;border-color:#86efac}
.ab-btn-demo-clear{background:#fef2f2;color:#dc2626;border:1px solid #fecaca;padding:8px 16px;font-size:12px}
.ab-btn-demo-clear:hover{background:#fee2e2;border-color:#fca5a5}

/* Branded tag on cards */
.ab-tag-branded{background:#f0fdf4;color:#059669;border:1px solid #bbf7d0;font-weight:600}

/* Brand preview in publish modal */
.ab-brand-preview{padding:14px 16px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;margin-bottom:16px}
.ab-brand-preview-label{font-size:12px;color:#64748b;margin-bottom:6px}
.ab-brand-preview-info{font-size:14px;color:#1e293b}
.ab-brand-preview-empty{text-align:center}
.ab-brand-preview-empty .ab-btn-demo{margin-top:10px}

/* Category badges via data attribute */
.ab-grid .ab-card[data-id^="edu"] .ab-card-cat{background:#ecfdf5;color:#059669}
.ab-grid .ab-card[data-id^="tpl"] .ab-card-cat{background:#eff6ff;color:#2563eb}
.ab-grid .ab-card[data-id="master-authority-home"]{grid-column:1/-1;border:2px solid #0d9488}
.ab-grid .ab-card[data-id="master-authority-home"] .ab-card-cat{background:#f0fdfa;color:#0d9488;font-size:12px}
.ab-grid .ab-card[data-id="master-authority-home"] .ab-card-preview{aspect-ratio:21/9}

/* Responsive */
@media(max-width:768px){
  .ab-grid{grid-template-columns:1fr}
  .ab-filters{gap:6px}
  .ab-filter-btn{padding:6px 12px;font-size:12px}
  .ab-publish-dialog{margin:16px;padding:24px}
}

/* ═══════════════════════════════════════════════
   LANDING PAGE BUILDER (GrapesJS)
   Neutral dark chrome, white canvas, subtle accents
   ═══════════════════════════════════════════════ */

/* Wrapper */
.pb-wrap{border-radius:12px;overflow:hidden;border:1px solid #e2e5ea}

/* Toolbar */
.pb-toolbar{display:flex;align-items:center;justify-content:space-between;padding:0 10px;background:#111;border-bottom:1px solid rgba(255,255,255,0.06);flex-wrap:nowrap;gap:0;height:40px;min-height:40px;overflow:visible;position:relative;z-index:100}
.pb-toolbar-left{display:flex;align-items:center;gap:2px;flex-wrap:nowrap;overflow:visible;height:100%}
.pb-toolbar-right{display:flex;align-items:center;gap:4px;flex-shrink:0;height:100%}
.pb-device-group{display:flex;gap:0;background:rgba(255,255,255,0.04);border-radius:5px;padding:2px}
.pb-device-btn{display:flex;align-items:center;justify-content:center;width:28px;height:24px;border:none;border-radius:3px;background:transparent;color:rgba(255,255,255,0.3);cursor:pointer;transition:all 0.12s}
.pb-device-btn:hover{color:rgba(255,255,255,0.7)}
.pb-device-active{background:rgba(255,255,255,0.1);color:#fff}
.pb-sep{width:1px;height:14px;background:rgba(255,255,255,0.06);margin:0 4px;flex-shrink:0}
.pb-count{font-size:10px;color:rgba(255,255,255,0.25);font-weight:500;letter-spacing:0.02em;white-space:nowrap}
.pb-undo-group{display:flex;gap:0}
.pb-icon-btn{display:flex;align-items:center;justify-content:center;width:26px;height:24px;border:none;border-radius:3px;background:transparent;color:rgba(255,255,255,0.25);cursor:pointer;transition:all 0.12s}
.pb-icon-btn:hover{color:rgba(255,255,255,0.8);background:rgba(255,255,255,0.06)}
.pb-icon-btn:active{color:#fff}
.pb-tool-btn{display:flex;align-items:center;gap:4px;padding:4px 8px;font-size:10px;font-weight:600;border:1px solid rgba(255,255,255,0.06);border-radius:5px;background:transparent;color:rgba(255,255,255,0.45);cursor:pointer;transition:all 0.12s;letter-spacing:0.01em;white-space:nowrap;height:26px}
.pb-tool-btn:hover{background:rgba(255,255,255,0.06);color:#fff;border-color:rgba(255,255,255,0.12)}
.pb-tool-btn svg{width:12px;height:12px;flex-shrink:0}
.pb-tool-btn-primary{background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.7);border-color:rgba(255,255,255,0.1)}
.pb-tool-btn-primary:hover{background:rgba(255,255,255,0.1);color:#fff}

/* Builder body */
.pb-body{display:flex;height:calc(100vh - 40px);background:#1a1a1a}
.pb-canvas-area{flex:1;min-width:0;position:relative}
.pb-canvas-area #gjs{height:100%}

/* Sidebar */
.pb-sidebar{width:260px;flex-shrink:0;display:flex;flex-direction:column;background:#161616;border-left:1px solid rgba(255,255,255,0.06)}
.pb-panel-tabs{display:flex;background:#111;border-bottom:1px solid rgba(255,255,255,0.06);padding:0 4px;gap:0}
.pb-panel-tab{flex:0 1 auto;padding:8px 10px;font-size:10px;font-weight:600;text-align:center;border:none;background:transparent;color:rgba(255,255,255,0.3);cursor:pointer;transition:all 0.12s;border-bottom:2px solid transparent;letter-spacing:0.03em;text-transform:uppercase;white-space:nowrap}
.pb-panel-tab:hover{color:rgba(255,255,255,0.7)}
.pb-panel-tab-active{color:#fff;border-bottom-color:#3b82f6}
.pb-panel-body{flex:1;overflow-y:auto}
.pb-panel-body::-webkit-scrollbar{width:4px}
.pb-panel-body::-webkit-scrollbar-track{background:transparent}
.pb-panel-body::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.1);border-radius:2px}

/* ── Tools Panel ── */
.pb-tools-grid{padding:10px}
.pb-tools-section{margin-bottom:12px}
.pb-tools-section:last-child{margin-bottom:0}
.pb-tools-section-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:rgba(255,255,255,0.2);padding:0 0 6px;margin-bottom:2px;border-bottom:1px solid rgba(255,255,255,0.04)}
.pb-tools-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:1px solid rgba(255,255,255,0.04);border-radius:6px;background:transparent;color:rgba(255,255,255,0.5);font-size:11px;font-weight:600;cursor:pointer;transition:all 0.12s;font-family:inherit;text-align:left;margin-bottom:2px}
.pb-tools-btn:hover{background:rgba(255,255,255,0.06);color:#fff;border-color:rgba(255,255,255,0.1)}
.pb-tools-btn:active{background:rgba(255,255,255,0.08)}
.pb-tools-btn svg{flex-shrink:0;opacity:0.4}
.pb-tools-btn:hover svg{opacity:1}
.pb-tools-btn-ai{color:rgba(147,130,255,0.8)}
.pb-tools-btn-ai:hover{color:#a78bfa;border-color:rgba(147,130,255,0.2);background:rgba(147,130,255,0.06)}

/* ── GrapesJS overrides: make it neutral ── */

/* Block manager */
#pb-blocks .gjs-blocks-cs{padding:6px}
#pb-blocks .gjs-block-category{border:none}
#pb-blocks .gjs-block-category .gjs-title{background:#161616;border:none;color:rgba(255,255,255,0.3);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;padding:10px 10px 6px}
#pb-blocks .gjs-block{width:calc(50% - 4px);min-height:60px;border:1px solid rgba(255,255,255,0.06);border-radius:6px;background:#1c1c1c;color:rgba(255,255,255,0.45);margin:2px;padding:8px 4px;transition:all 0.12s}
#pb-blocks .gjs-block:hover{border-color:rgba(255,255,255,0.15);background:#222;color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,0.2)}
#pb-blocks .gjs-block svg{fill:none;stroke:rgba(255,255,255,0.35)}
#pb-blocks .gjs-block:hover svg{stroke:#fff}
#pb-blocks .gjs-block-label{font-size:9px;font-weight:600;margin-top:4px;letter-spacing:0.02em}

/* Style manager */
#pb-styles .gjs-sm-sector{border:none}
#pb-styles .gjs-sm-sector .gjs-sm-sector-title{background:#161616;color:rgba(255,255,255,0.3);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;border:none;padding:10px 10px 6px}
#pb-styles .gjs-sm-properties{padding:6px 10px}
#pb-styles .gjs-sm-property{color:rgba(255,255,255,0.5)}
#pb-styles .gjs-sm-label{font-size:10px}
#pb-styles .gjs-field{background:#1c1c1c;border:1px solid rgba(255,255,255,0.08);border-radius:4px;color:rgba(255,255,255,0.7)}
#pb-styles .gjs-field input{color:rgba(255,255,255,0.8)}
#pb-styles .gjs-clm-tags{background:#161616;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,0.06)}
#pb-styles .gjs-clm-tag{background:#1c1c1c;border:1px solid rgba(255,255,255,0.08);border-radius:4px;color:rgba(255,255,255,0.5)}

/* Layer manager */
#pb-layers .gjs-layers{background:#161616}
#pb-layers .gjs-layer{color:rgba(255,255,255,0.4);border-bottom:1px solid rgba(255,255,255,0.04)}
#pb-layers .gjs-layer:hover{color:rgba(255,255,255,0.8)}
#pb-layers .gjs-layer-title{padding:7px 10px;font-size:11px}
#pb-layers .gjs-layer.gjs-selected .gjs-layer-title{background:rgba(59,130,246,0.08)}

/* Canvas frame */
.gjs-cv-canvas{background:#1a1a1a}
.gjs-frame-wrapper{box-shadow:0 1px 20px rgba(0,0,0,0.3);border-radius:3px}

/* Selected component highlight */
.gjs-selected{outline:2px solid #2563eb!important;outline-offset:0}
.gjs-hovered{outline:1px dashed #94a3b8!important;outline-offset:0}

/* Rich text editor toolbar */
.gjs-rte-toolbar{background:#111;border:1px solid rgba(255,255,255,0.08);border-radius:6px;box-shadow:0 4px 20px rgba(0,0,0,0.4)}
.gjs-rte-actionbar{padding:3px}
.gjs-rte-action{color:rgba(255,255,255,0.5);border:none;padding:4px 6px;border-radius:3px}
.gjs-rte-action:hover{background:rgba(255,255,255,0.08);color:#fff}
.gjs-rte-active{background:rgba(59,130,246,0.15);color:#60a5fa}

/* Toolbar on components (move/delete/clone) */
.gjs-toolbar{background:#111;border:1px solid rgba(255,255,255,0.08);border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,0.4);padding:2px}
.gjs-toolbar-item{color:rgba(255,255,255,0.5);padding:4px 6px;border-radius:3px}
.gjs-toolbar-item:hover{background:rgba(255,255,255,0.08);color:#fff}

/* Component badge (type label) */
.gjs-badge{background:#111;border:1px solid rgba(255,255,255,0.08);color:rgba(255,255,255,0.5);font-size:9px;font-weight:600;padding:2px 6px;border-radius:3px}

/* Trait manager (component settings) */
.gjs-trt-traits{padding:8px 12px}
.gjs-trt-trait{color:rgba(255,255,255,0.5);border-bottom:1px solid rgba(255,255,255,0.04);padding:6px 0}
.gjs-trt-trait .gjs-label{font-size:10px;min-width:60px}
.gjs-trt-trait .gjs-field{background:#1c1c1c;border:1px solid rgba(255,255,255,0.08);border-radius:4px}
.gjs-trt-trait .gjs-field input{color:rgba(255,255,255,0.8)}

/* ── Template chooser modal ── */
.pb-tpl-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);display:flex;align-items:center;justify-content:center;z-index:99999;backdrop-filter:blur(6px);animation:pbFadeIn 0.2s ease}
@keyframes pbFadeIn{from{opacity:0}to{opacity:1}}
.pb-tpl-modal{width:94%;max-width:820px;max-height:90vh;background:#fff;border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,0.25);overflow:hidden;display:flex;flex-direction:column;animation:pbSlideUp 0.25s ease}
@keyframes pbSlideUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.pb-tpl-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}
.pb-tpl-title{font-size:18px;font-weight:800;color:#111827;letter-spacing:-0.01em}
.pb-tpl-subtitle{font-size:13px;color:#6b7280;margin-top:2px}
.pb-tpl-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:10px;background:transparent;color:#9ca3af;cursor:pointer;transition:all 0.15s;flex-shrink:0}
.pb-tpl-close:hover{background:#f3f4f6;color:#111827}
.pb-tpl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:20px 24px;overflow-y:auto;flex:1}
.pb-tpl-card{border:1.5px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all 0.2s;overflow:hidden;display:flex;flex-direction:column}
.pb-tpl-card:hover{border-color:#374151;transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.08)}

/* Visual section preview */
.pb-tpl-preview{display:flex;flex-direction:column;gap:1px;padding:8px;background:#f9fafb;min-height:100px}
.pb-tpl-preview-block{padding:4px 6px;border-radius:3px;font-size:8px;font-weight:600;letter-spacing:0.03em;text-transform:uppercase;text-align:center;line-height:1}
.pb-tpl-preview-blank{display:flex;align-items:center;justify-content:center;min-height:100px;background:#fafafa}
.pb-tpl-preview-plus{color:#d1d5db}

/* Card body */
.pb-tpl-card-body{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-top:1px solid #f3f4f6}
.pb-tpl-card-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#f3f4f6;color:#6b7280;flex-shrink:0}
.pb-tpl-card:hover .pb-tpl-card-icon{background:#111827;color:#fff}
.pb-tpl-card-info{min-width:0}
.pb-tpl-card-name{font-size:13px;font-weight:700;color:#111827;margin-bottom:2px}
.pb-tpl-card-desc{font-size:11px;color:#9ca3af;line-height:1.4}
.pb-tpl-card-blank{border-style:dashed}
.pb-tpl-card-blank:hover{border-color:#9ca3af}

/* Onboarding active card state */
.pb-tpl-card-active{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,0.15);transform:translateY(-3px)}
.pb-tpl-card-active .pb-tpl-card-icon{background:#2563eb;color:#fff}

/* Onboarding footer (prev/next buttons) */
.pb-onboard-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid #e5e7eb;flex-shrink:0}
.pb-onboard-footer button{padding:8px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s}
.pb-onboard-back{border:1px solid #d1d5db;background:#fff;color:#374151}
.pb-onboard-back:hover{background:#f3f4f6}
.pb-onboard-next{border:none;background:#2563eb;color:#fff}
.pb-onboard-next:hover{background:#1d4ed8}
.pb-onboard-next:disabled{opacity:0.5;cursor:not-allowed}

/* Onboarding button styles (portal context) */
.pb-tpl-overlay .pb-btn,.pb-variant-overlay .pb-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;border:none;border-radius:8px;background:#2563eb;color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s}
.pb-tpl-overlay .pb-btn:hover,.pb-variant-overlay .pb-btn:hover{background:#1d4ed8}
.pb-tpl-overlay .pb-btn-glow{box-shadow:0 4px 14px rgba(37,99,235,0.3)}
.pb-tpl-overlay .pb-btn-secondary,.pb-variant-overlay .pb-btn-secondary{display:inline-flex;align-items:center;padding:8px 20px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s}
.pb-tpl-overlay .pb-btn-secondary:hover,.pb-variant-overlay .pb-btn-secondary:hover{background:#f3f4f6}

/* Theme cards in light-bg onboarding context */
#pb-onboard-overlay .pb-tp-card{background:#f9fafb;border-color:#e5e7eb}
#pb-onboard-overlay .pb-tp-card:hover{border-color:#9ca3af;box-shadow:0 4px 12px rgba(0,0,0,0.08)}
#pb-onboard-overlay .pb-tp-card-label{color:#111827}
#pb-onboard-overlay .pb-tp-card-desc{color:#6b7280}
#pb-onboard-overlay .pb-tp-section-label{color:#6b7280}
#pb-onboard-overlay .pb-tp-accent{border-color:#d1d5db}
#pb-onboard-overlay .pb-tp-accent:hover{border-color:#6b7280}
#pb-onboard-overlay .pb-tp-accent-active{border-color:#111827!important;box-shadow:0 0 0 2px #fff,0 0 0 4px #111827}
#pb-onboard-overlay .pb-tp-accents{display:flex;gap:8px;flex-wrap:wrap}

/* Onboarding step indicator */
.pb-onboard-steps{display:flex;align-items:center;justify-content:center;gap:0;padding:16px 24px 8px}
.pb-onboard-step{width:28px;height:28px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#9ca3af;transition:all 0.2s;flex-shrink:0}
.pb-onboard-step span{line-height:1}
.pb-onboard-step-active{background:#2563eb;color:#fff;box-shadow:0 2px 8px rgba(37,99,235,0.3)}
.pb-onboard-step-done{background:#10b981;color:#fff}
.pb-onboard-step-line{width:48px;height:2px;background:#e5e7eb;transition:background 0.2s}
.pb-onboard-step-line-done{background:#10b981}

/* Onboarding theme preview mini cards */
.pb-onboard-theme-card{position:relative;border:2px solid #e5e7eb;border-radius:10px;padding:12px;cursor:pointer;transition:all 0.2s;min-height:80px}
.pb-onboard-theme-card:hover{border-color:#374151}
.pb-onboard-theme-card.pb-tpl-card-active{border-color:#2563eb}
.pb-onboard-theme-label{font-size:12px;font-weight:700;margin-bottom:6px}

/* Accent dot picker */
.pb-onboard-accents{display:flex;gap:8px;padding:8px 24px 0;flex-wrap:wrap}
.pb-onboard-accent-dot{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all 0.15s}
.pb-onboard-accent-dot:hover{transform:scale(1.15)}
.pb-onboard-accent-dot-active{border-color:#111827;box-shadow:0 0 0 2px #fff,0 0 0 4px #111827}

/* Variant picker modal */
.pb-variant-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);display:none;align-items:center;justify-content:center;z-index:99998;backdrop-filter:blur(4px)}
.pb-variant-overlay.pb-variant-open{display:flex}
.pb-variant-modal{width:94%;max-width:680px;max-height:80vh;background:#fff;border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,0.2);display:flex;flex-direction:column;animation:pbSlideUp 0.2s ease}
.pb-variant-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #e5e7eb}
.pb-variant-header h3{font-size:16px;font-weight:700;color:#111827;margin:0}
.pb-variant-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:transparent;color:#9ca3af;cursor:pointer;transition:all 0.15s}
.pb-variant-close:hover{background:#f3f4f6;color:#111827}
.pb-variant-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;padding:20px 24px;overflow-y:auto}
.pb-variant-card{border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all 0.2s;overflow:hidden;display:flex;flex-direction:column}
.pb-variant-card:hover{border-color:#374151;transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,0.08)}
.pb-variant-card-active{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,0.12)}
.pb-variant-preview{min-height:80px;padding:8px;background:#f9fafb;display:flex;align-items:center;justify-content:center;font-size:10px;color:#9ca3af;text-transform:uppercase;letter-spacing:0.05em;font-weight:600}
.pb-variant-name{padding:10px 12px;font-size:12px;font-weight:700;color:#111827;border-top:1px solid #f3f4f6}

/* ── Responsive ── */
@media(max-width:900px){
  .pb-body{flex-direction:column;height:auto}
  .pb-canvas-area{min-height:400px}
  .pb-sidebar{width:100%;max-height:300px;border-left:none;border-top:1px solid #333}
  .pb-tpl-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .pb-toolbar{flex-wrap:wrap;gap:8px}
  .pb-tpl-grid{grid-template-columns:1fr}
  .pb-tpl-modal{max-width:95%}
}

/* ═══════════════════════════════════════════════
   PUBLISH MODAL
   ═══════════════════════════════════════════════ */
.pb-pub-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);display:none;align-items:center;justify-content:center;z-index:99999;backdrop-filter:blur(6px)}
.pb-pub-modal-open{display:flex}
.pb-pub-modal{width:94%;max-width:440px;background:#fff;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,0.25);animation:pbSlideUp 0.25s ease}
.pb-pub-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #e5e7eb}
.pb-pub-header h3{font-size:17px;font-weight:700;color:#111827;margin:0}
.pb-pub-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:transparent;color:#9ca3af;cursor:pointer;transition:all 0.15s}
.pb-pub-close:hover{background:#f3f4f6;color:#111827}
.pb-pub-body{padding:20px 22px}
.pb-pub-label{display:block;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:6px;margin-top:14px}
.pb-pub-label:first-child{margin-top:0}
.pb-pub-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#111827;background:#fff;box-sizing:border-box}
.pb-pub-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,0.1)}
.pb-pub-slug-row{display:flex;align-items:center;border:1px solid #d1d5db;border-radius:8px;overflow:hidden}
.pb-pub-slug-prefix{padding:10px 0 10px 12px;font-size:14px;color:#9ca3af;font-weight:500;white-space:nowrap;background:#f9fafb;border-right:1px solid #e5e7eb;padding-right:8px}
.pb-pub-slug-row .pb-pub-slug-input{border:none;border-radius:0;padding-left:8px}
.pb-pub-slug-row .pb-pub-slug-input:focus{box-shadow:none}
.pb-pub-hint{font-size:12px;color:#9ca3af;margin-top:6px}
.pb-pub-error{font-size:13px;color:#dc2626;margin-top:8px;min-height:18px}
.pb-pub-section{margin-top:16px;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}
.pb-pub-section[open]{background:#fafbfc}
.pb-pub-section-title{display:flex;align-items:center;gap:6px;padding:10px 14px;font-size:13px;font-weight:600;color:#374151;cursor:pointer;user-select:none;list-style:none}
.pb-pub-section-title::-webkit-details-marker{display:none}
.pb-pub-section-title::before{content:'';display:inline-block;width:0;height:0;border-left:5px solid #9ca3af;border-top:4px solid transparent;border-bottom:4px solid transparent;transition:transform 0.2s}
.pb-pub-section[open] .pb-pub-section-title::before{transform:rotate(90deg)}
.pb-pub-section .pb-pub-label{padding:0 14px}
.pb-pub-section .pb-pub-input{margin:0 14px 8px;width:calc(100% - 28px)}
.pb-pub-section .pb-pub-hint{padding:0 14px 12px;margin-top:0}
.pb-pub-footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 22px;border-top:1px solid #e5e7eb}
.pb-pub-btn-cancel{padding:8px 16px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s}
.pb-pub-btn-cancel:hover{background:#f3f4f6}
.pb-pub-btn-publish{display:flex;align-items:center;gap:6px;padding:8px 18px;border:none;border-radius:8px;background:#2563eb;color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s}
.pb-pub-btn-publish:hover{background:#1d4ed8}

/* Publish button accent in toolbar */
.pb-tool-btn-publish{background:rgba(59,130,246,0.12);color:#60a5fa;border-color:rgba(59,130,246,0.2)}
.pb-tool-btn-publish:hover{background:rgba(59,130,246,0.2);color:#fff;border-color:rgba(59,130,246,0.35)}

/* Active state for toggle buttons */
.pb-tool-btn-active{background:rgba(37,99,235,0.2)!important;color:#93c5fd!important;border-color:rgba(37,99,235,0.3)!important}

/* Mode toggle (guided / advanced) */
.pb-mode-toggle{display:flex;background:rgba(255,255,255,0.04);border-radius:5px;padding:2px}
.pb-mode-btn{padding:3px 8px;font-size:10px;font-weight:600;border:none;border-radius:3px;background:transparent;color:rgba(255,255,255,0.3);cursor:pointer;transition:all 0.12s;letter-spacing:0.01em}
.pb-mode-btn:hover{color:rgba(255,255,255,0.7)}
.pb-mode-active{background:rgba(255,255,255,0.1);color:#fff}

/* Color preset swatches */
.pb-preset-swatches{display:flex;gap:6px;align-items:center}
.pb-preset-swatch{width:20px;height:20px;border-radius:50%;border:2px solid rgba(255,255,255,0.15);cursor:pointer;transition:all 0.15s;padding:0;background:none}
.pb-preset-swatch:hover{border-color:rgba(255,255,255,0.5);transform:scale(1.15)}
.pb-preset-swatch-active{border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,0.3)}

/* ═══════════════════════════════════════════════
   IMMERSIVE MODE
   ═══════════════════════════════════════════════ */
body.pb-immersive .portal-sidebar{display:none}
body.pb-immersive .portal-topbar{display:none}
body.pb-immersive{overflow:hidden}
body.pb-immersive .portal-main{margin-left:0;padding:0;overflow:hidden}
body.pb-immersive #portal-sec-page-builder{padding:0!important;margin:0}
body.pb-immersive #portal-sec-page-builder .portal-sec-header{display:none}
body.pb-immersive .pb-wrap{border:none;border-radius:0;height:100vh;display:flex;flex-direction:column}
body.pb-immersive .pb-toolbar{border-radius:0;flex-shrink:0;background:#111}
body.pb-immersive .pb-body{height:0;flex:1;min-height:0}

/* Canvas fills edge-to-edge in immersive mode */
body.pb-immersive .pb-canvas-area{overflow:hidden}
body.pb-immersive .pb-canvas-area #gjs{height:100%!important}
body.pb-immersive .gjs-cv-canvas{background:#1a1a1a!important;width:100%!important;top:0!important;left:0!important}
body.pb-immersive .gjs-frame-wrapper{box-shadow:none!important;border-radius:0!important;margin:0!important;padding:0!important}
body.pb-immersive .gjs-frame-wrapper__top{padding:0!important}
body.pb-immersive .gjs-frame{margin:0!important;border:none!important}

/* Phone frame for mobile preview */
.pb-phone-frame{display:flex;justify-content:center;align-items:flex-start;padding-top:24px;background:#141414}
.pb-phone-frame .gjs-frame-wrapper{border:3px solid rgba(255,255,255,0.08);border-radius:32px;box-shadow:0 0 0 2px #111,0 8px 40px rgba(0,0,0,0.5)!important;overflow:hidden;position:relative;margin:0 auto}
.pb-phone-frame .gjs-frame-wrapper::before{content:'';position:absolute;top:6px;left:50%;transform:translateX(-50%);width:80px;height:4px;background:rgba(255,255,255,0.08);border-radius:4px;z-index:10}
.pb-phone-frame .gjs-frame-wrapper::after{content:'';position:absolute;bottom:6px;left:50%;transform:translateX(-50%);width:40px;height:4px;background:rgba(255,255,255,0.08);border-radius:4px;z-index:10}
.pb-phone-frame .gjs-frame{border-radius:28px!important}
.pb-tablet-frame{display:flex;justify-content:center;align-items:flex-start;padding-top:16px;background:#141414}
.pb-tablet-frame .gjs-frame-wrapper{border:3px solid rgba(255,255,255,0.08);border-radius:20px;box-shadow:0 0 0 2px #111,0 8px 40px rgba(0,0,0,0.4)!important;overflow:hidden;margin:0 auto}
.pb-tablet-frame .gjs-frame{border-radius:16px!important}

/* ── Contextual Color Bar ── */
.pb-color-bar{display:none;background:#111;border-bottom:1px solid rgba(255,255,255,0.06);padding:0 12px;overflow:hidden;max-height:0;transition:max-height 0.2s ease,padding 0.2s ease}
.pb-color-bar-open{display:flex;gap:12px;align-items:center;flex-wrap:wrap;max-height:40px;padding:5px 10px}
.pb-cb-row{display:flex;align-items:center;gap:8px}
.pb-cb-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:rgba(255,255,255,0.3);white-space:nowrap}
.pb-cb-swatches{display:flex;gap:5px;align-items:center}
.pb-cb-swatch{width:20px;height:20px;border-radius:50%;border:2px solid rgba(255,255,255,0.1);cursor:pointer;transition:all 0.12s;padding:0;background:none}
.pb-cb-swatch:hover{transform:scale(1.2);border-color:rgba(255,255,255,0.4)}
.pb-cb-swatch-active{border-color:#fff!important;box-shadow:0 0 0 2px rgba(255,255,255,0.25)}
.pb-cb-custom{width:20px;height:20px;border-radius:50%;border:2px dashed rgba(255,255,255,0.12);display:flex;align-items:center;justify-content:center;cursor:pointer;color:rgba(255,255,255,0.25);position:relative;overflow:hidden;transition:all 0.12s}
.pb-cb-custom:hover{border-color:rgba(255,255,255,0.35);color:rgba(255,255,255,0.6)}
.pb-cb-color-input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.pb-cb-sep{width:1px;height:16px;background:rgba(255,255,255,0.08);margin:0 4px}
.pb-cb-img-btn{display:flex;align-items:center;gap:6px;padding:4px 12px;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.15);border-radius:6px;color:rgba(255,255,255,0.7);font-size:11px;font-weight:600;cursor:pointer;transition:all 0.15s;white-space:nowrap}
.pb-cb-img-btn:hover{background:rgba(255,255,255,0.15);color:#fff;border-color:rgba(255,255,255,0.3)}

/* Back button in immersive toolbar */
.pb-back-btn{display:none;align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:600;border:1px solid rgba(255,255,255,0.06);border-radius:5px;background:transparent;color:rgba(255,255,255,0.4);cursor:pointer;transition:all 0.12s;letter-spacing:0.01em;margin-right:2px;height:26px}
.pb-back-btn:hover{background:rgba(255,255,255,0.06);color:#fff;border-color:rgba(255,255,255,0.12)}
.pb-back-btn svg{opacity:0.5;transition:opacity 0.12s}
.pb-back-btn:hover svg{opacity:1}
body.pb-immersive .pb-back-btn{display:flex}

/* Hide floating widgets in immersive mode */
body.pb-immersive .rp-fab,
body.pb-immersive .rp-card,
body.pb-immersive .jazz-bar,
body.pb-immersive .scroll-to-top{display:none!important}

/* Dark mode immersive */
[data-theme="dark"] body.pb-immersive .portal-main{background:#111}

/* Mobile immersive */
@media(max-width:900px){
  body.pb-immersive .pb-body{flex-direction:column}
  body.pb-immersive .pb-sidebar{width:100%;max-height:200px}
}

/* ═══════════════════════════════════════════════
   THEME PICKER PANEL
   ═══════════════════════════════════════════════ */

/* Wrapper for positioning */
.pb-dropdown-wrap{position:relative}

/* Panel dropdown */
.pb-dropdown{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:6px;background:#1a1a1a;border:1px solid rgba(255,255,255,0.1);border-radius:10px;box-shadow:0 8px 30px rgba(0,0,0,0.5);z-index:9999;padding:12px;overflow-y:auto}
.pb-dropdown-open{display:block}
.pb-dropdown::before{content:'';position:absolute;top:-5px;left:50%;transform:translateX(-50%) rotate(45deg);width:10px;height:10px;background:#1a1a1a;border-left:1px solid rgba(255,255,255,0.1);border-top:1px solid rgba(255,255,255,0.1)}
#pb-dd-theme{width:320px;max-height:400px}
#pb-dd-fonts{width:280px;max-height:380px}
#pb-dd-bg{width:300px;max-height:300px}
.pb-theme-trigger[aria-expanded="true"]{background:rgba(59,130,246,0.12);color:#60a5fa;border-color:rgba(59,130,246,0.2)}
.pb-dropdown::-webkit-scrollbar{width:4px}
.pb-dropdown::-webkit-scrollbar-track{background:transparent}
.pb-dropdown::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.1);border-radius:2px}

/* Header */
.pb-tp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.pb-tp-title{font-size:13px;font-weight:700;color:#fff;letter-spacing:0.01em}
.pb-tp-close{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:rgba(255,255,255,0.35);cursor:pointer;transition:all 0.15s}
.pb-tp-close:hover{background:rgba(255,255,255,0.06);color:#fff}

/* Section label */
.pb-tp-section-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:rgba(255,255,255,0.3);margin-bottom:8px;margin-top:4px}

/* Theme swatch rows */
.pb-dd-theme-list{display:flex;flex-direction:column;gap:3px;margin-bottom:10px}
.pb-dd-swatch-row{display:flex;align-items:center;gap:10px;padding:7px 10px;border:1px solid rgba(255,255,255,0.06);border-radius:8px;background:rgba(255,255,255,0.02);cursor:pointer;transition:all 0.15s;font-family:inherit;text-align:left;color:rgba(255,255,255,0.7)}
.pb-dd-swatch-row:hover{border-color:rgba(255,255,255,0.15);background:rgba(255,255,255,0.06)}
.pb-dd-swatch-active{border-color:rgba(59,130,246,0.5);background:rgba(59,130,246,0.08);color:#fff}
.pb-dd-swatch-colors{display:flex;gap:3px;flex-shrink:0}
.pb-dd-swatch-dot{width:18px;height:18px;border-radius:4px;border:1px solid rgba(255,255,255,0.12)}
.pb-dd-swatch-info{display:flex;flex-direction:column;gap:1px;min-width:0}
.pb-dd-swatch-name{font-size:11px;font-weight:600;letter-spacing:0.02em}
.pb-dd-swatch-desc{font-size:9px;color:rgba(255,255,255,0.35)}

/* Theme cards grid */
.pb-tp-themes{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:14px}

/* Individual theme card */
.pb-tp-card{padding:0;border:1.5px solid rgba(255,255,255,0.08);border-radius:8px;background:#1c1c1c;cursor:pointer;transition:all 0.12s;text-align:left;overflow:hidden;font-family:inherit}
.pb-tp-card:hover{border-color:rgba(255,255,255,0.2);box-shadow:0 2px 8px rgba(0,0,0,0.3)}
.pb-tp-card-active{border-color:#3b82f6!important;box-shadow:0 0 0 1px rgba(59,130,246,0.3)}

/* Theme preview mini */
.pb-tp-card-preview{padding:8px 8px 0}
.pb-tp-prev-bg{border-radius:6px;overflow:hidden;height:52px;position:relative;padding:6px}
.pb-tp-prev-hero{height:20px;border-radius:3px;margin-bottom:4px}
.pb-tp-prev-body{display:flex;flex-direction:column;gap:3px;padding:0 2px}
.pb-tp-prev-line{height:3px;border-radius:1px}
.pb-tp-prev-line-short{width:60%}
.pb-tp-prev-btn{height:6px;width:40px;border-radius:2px;margin-top:2px}

/* Theme card text */
.pb-tp-card-label{font-size:10px;font-weight:700;color:#fff;padding:6px 8px 1px;letter-spacing:0.01em}
.pb-tp-card-desc{font-size:9px;color:rgba(255,255,255,0.3);padding:0 8px 6px;line-height:1.3}

/* Accent color row */
.pb-tp-accents{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.pb-tp-accent{width:24px;height:24px;border-radius:50%;border:2px solid rgba(255,255,255,0.12);cursor:pointer;transition:all 0.15s;padding:0}
.pb-tp-accent:hover{border-color:rgba(255,255,255,0.5);transform:scale(1.15)}
.pb-tp-accent-active{border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,0.25)}

/* Custom color picker */
.pb-tp-accent-custom{width:24px;height:24px;border-radius:50%;border:2px dashed rgba(255,255,255,0.15);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.15s;color:rgba(255,255,255,0.3);position:relative;overflow:hidden}
.pb-tp-accent-custom:hover{border-color:rgba(255,255,255,0.4);color:rgba(255,255,255,0.7)}
.pb-tp-color-input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}

/* Reset accent button */
.pb-tp-reset{display:block;width:100%;padding:6px;border:none;border-radius:6px;background:rgba(255,255,255,0.04);color:rgba(255,255,255,0.35);font-size:10px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s;letter-spacing:0.01em}
.pb-tp-reset:hover{background:rgba(255,255,255,0.08);color:rgba(255,255,255,0.7)}

/* Boho palette picker */
.pb-boho-palettes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.pb-boho-pal{padding:10px 8px;border:2px solid rgba(255,255,255,0.06);border-radius:10px;background:rgba(255,255,255,0.03);cursor:pointer;transition:all 0.2s;text-align:center;font-family:inherit}
.pb-boho-pal:hover{border-color:rgba(255,255,255,0.15);background:rgba(255,255,255,0.06)}
.pb-boho-pal-active{border-color:rgba(255,255,255,0.4);background:rgba(255,255,255,0.08)}
.pb-boho-pal-swatches{display:flex;gap:3px;justify-content:center;margin-bottom:6px}
.pb-boho-swatch{width:18px;height:18px;border-radius:50%;display:block}
.pb-boho-pal-label{font-size:11px;font-weight:600;color:rgba(255,255,255,0.85);margin-bottom:2px;letter-spacing:0.02em}
.pb-boho-pal-desc{font-size:9px;color:rgba(255,255,255,0.4);line-height:1.3}
/* Onboarding overlay overrides for boho palette picker */
#pb-onboard-overlay .pb-boho-pal{background:#f9fafb;border-color:#e5e7eb}
#pb-onboard-overlay .pb-boho-pal:hover{border-color:#9ca3af;box-shadow:0 4px 12px rgba(0,0,0,0.08)}
#pb-onboard-overlay .pb-boho-pal-active{border-color:#111827;box-shadow:0 0 0 2px #e5e7eb,0 0 0 4px #111827}
#pb-onboard-overlay .pb-boho-pal-label{color:#111827}
#pb-onboard-overlay .pb-boho-pal-desc{color:#6b7280}

/* Font picker in theme panel */
.pb-tp-fonts{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;max-height:200px;overflow-y:auto}
.pb-tp-font{display:flex;align-items:center;gap:10px;padding:6px 10px;border:1px solid rgba(255,255,255,0.06);border-radius:8px;background:rgba(255,255,255,0.02);cursor:pointer;transition:all 0.15s;font-family:inherit;text-align:left;color:rgba(255,255,255,0.7)}
.pb-tp-font:hover{border-color:rgba(255,255,255,0.15);background:rgba(255,255,255,0.06)}
.pb-tp-font-active{border-color:rgba(255,255,255,0.35);background:rgba(255,255,255,0.08);color:#fff}
.pb-tp-font-sample{font-size:20px;font-weight:700;width:36px;text-align:center;color:var(--portal-accent,#818cf8);flex-shrink:0}
.pb-tp-font-info{display:flex;flex-direction:column;gap:1px;min-width:0}
.pb-tp-font-name{font-size:11px;font-weight:600;letter-spacing:0.02em}
.pb-tp-font-desc{font-size:9px;color:rgba(255,255,255,0.35)}

/* Section background picker in theme panel */
.pb-tp-bg-options{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:6px}
.pb-tp-bg-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;border:1px solid rgba(255,255,255,0.06);border-radius:8px;background:rgba(255,255,255,0.02);cursor:pointer;transition:all 0.15s;font-family:inherit;color:rgba(255,255,255,0.6);font-size:9px}
.pb-tp-bg-btn:hover{border-color:rgba(255,255,255,0.2);background:rgba(255,255,255,0.06);color:#fff}
.pb-tp-bg-preview{width:32px;height:20px;border-radius:4px;border:1px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.05)}
.pb-tp-bg-hint{font-size:9px;color:rgba(255,255,255,0.25);margin-bottom:10px;line-height:1.4}

/* Old preset swatches — hidden, replaced by theme panel */
.pb-preset-swatches{display:none!important}

/* ═══════════════════════════════════════════════
   MY PAGES DASHBOARD
   ═══════════════════════════════════════════════ */
.pb-mp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.pb-mp-card{border:1px solid #e2e5ea;border-radius:12px;overflow:hidden;background:#fff;transition:box-shadow 0.2s,border-color 0.2s}
.pb-mp-card:hover{border-color:#c7ccd4;box-shadow:0 4px 16px rgba(10,22,40,0.08)}
.pb-mp-preview{height:160px;overflow:hidden;background:#f0f0f0;position:relative}
.pb-mp-iframe{width:400%;height:400%;border:none;transform:scale(0.25);transform-origin:top left;pointer-events:none}
.pb-mp-info{padding:14px 16px 8px}
.pb-mp-title{font-size:15px;font-weight:700;color:#111827;margin-bottom:2px}
.pb-mp-slug{font-size:12px;color:#6b7280;font-family:monospace}
.pb-mp-date{font-size:11px;color:#9ca3af;margin-top:4px}
.pb-mp-actions{display:flex;gap:6px;padding:8px 16px 14px}
.pb-mp-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;border:1px solid #e2e5ea;border-radius:6px;background:#fff;color:#374151;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s}
.pb-mp-btn:hover{background:#f3f4f6;border-color:#c7ccd4}
.pb-mp-btn-danger{color:#dc2626;border-color:rgba(220,38,38,0.2)}
.pb-mp-btn-danger:hover{background:rgba(220,38,38,0.05);border-color:rgba(220,38,38,0.3)}

/* Empty state */
.pb-mp-empty{text-align:center;padding:64px 24px;color:#9ca3af}
.pb-mp-empty svg{margin-bottom:16px;opacity:0.4}
.pb-mp-empty h3{font-size:17px;font-weight:700;color:#374151;margin-bottom:6px}
.pb-mp-empty p{font-size:14px;color:#9ca3af;max-width:360px;margin:0 auto;line-height:1.6}
.pb-mp-btn-analytics{color:#7c3aed;border-color:rgba(124,58,237,0.2)}
.pb-mp-btn-analytics:hover{background:rgba(124,58,237,0.05);border-color:rgba(124,58,237,0.3)}

/* ═══ M1P1C2: Saved Blocks Panel ═══ */
.pb-sb-empty{padding:20px 16px;text-align:center;font-size:12px;color:#9ca3af;line-height:1.6}
.pb-sb-list{display:flex;flex-direction:column;gap:6px;padding:8px}
.pb-sb-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;transition:border-color .15s}
.pb-sb-item:hover{border-color:#c7ccd4}
.pb-sb-info{flex:1;min-width:0}
.pb-sb-name{font-size:13px;font-weight:600;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pb-sb-date{font-size:10px;color:#9ca3af;margin-top:2px}
.pb-sb-del{padding:4px;border:none;background:transparent;color:#9ca3af;cursor:pointer;border-radius:4px;transition:all .15s}
.pb-sb-del:hover{background:rgba(220,38,38,0.08);color:#dc2626}

/* ═══ M1P1C2: Version History Modal ═══ */
.pb-vh-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.pb-vh-modal{background:#fff;border-radius:16px;width:560px;max-width:90vw;max-height:80vh;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,0.3)}
.pb-vh-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}
.pb-vh-title{font-size:17px;font-weight:700;color:#111827}
.pb-vh-close{background:none;border:none;font-size:24px;color:#9ca3af;cursor:pointer;padding:0 4px}
.pb-vh-close:hover{color:#374151}
.pb-vh-body{padding:20px 24px;overflow-y:auto;max-height:60vh}
.pb-vh-list{display:flex;flex-direction:column;gap:8px}
.pb-vh-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid #e5e7eb;border-radius:10px;transition:border-color .15s}
.pb-vh-item:hover{border-color:#c7ccd4}
.pb-vh-current{background:rgba(11,95,216,0.03);border-color:rgba(11,95,216,0.15)}
.pb-vh-item-num{font-size:14px;font-weight:600;color:#111827}
.pb-vh-item-date{font-size:12px;color:#9ca3af;margin-top:2px}
.pb-vh-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;background:#059669;color:#fff;padding:2px 10px;border-radius:12px}
.pb-vh-restore{padding:6px 14px;border:1px solid rgba(11,95,216,0.2);border-radius:6px;background:rgba(11,95,216,0.04);color:#2563eb;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s}
.pb-vh-restore:hover{background:#2563eb;color:#fff;border-color:#2563eb}

/* ═══ M1P1C2: Analytics Modal ═══ */
.pb-an-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.pb-an-modal{background:#fff;border-radius:16px;width:680px;max-width:92vw;max-height:85vh;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,0.3)}
.pb-an-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}
.pb-an-title{font-size:17px;font-weight:700;color:#111827}
.pb-an-close{background:none;border:none;font-size:24px;color:#9ca3af;cursor:pointer;padding:0 4px}
.pb-an-close:hover{color:#374151}
.pb-an-body{padding:24px}
.pb-an-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}
.pb-an-kpi{text-align:center;padding:16px;background:#f8f9fa;border-radius:10px;border:1px solid #e5e7eb}
.pb-an-kpi-val{font-family:'DM Serif Display',serif;font-size:28px;color:#111827;margin-bottom:2px}
.pb-an-kpi-label{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:0.04em}
.pb-an-chart-section{margin-bottom:16px}
.pb-an-chart-title{font-size:13px;font-weight:700;color:#374151;margin-bottom:12px}
.pb-an-chart{display:flex;align-items:flex-end;gap:4px;height:120px;padding:0 4px}
.pb-an-bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}
.pb-an-bar{width:100%;background:linear-gradient(to top,#2563eb,#60a5fa);border-radius:3px 3px 0 0;margin-top:auto;transition:height .3s ease}
.pb-an-bar-label{font-size:8px;color:#9ca3af;margin-top:4px;transform:rotate(-45deg);white-space:nowrap}
.pb-an-dates{display:flex;justify-content:space-between;font-size:11px;color:#9ca3af;padding-top:12px;border-top:1px solid #e5e7eb}

/* Dark mode: Page Builder M1P1C2 */
[data-theme="dark"] .pb-sb-item{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-sb-name{color:#e5e7eb}
[data-theme="dark"] .pb-vh-modal,[data-theme="dark"] .pb-an-modal{background:#1f2937;border:1px solid rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-vh-header,[data-theme="dark"] .pb-an-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-vh-title,[data-theme="dark"] .pb-an-title{color:#f3f4f6}
[data-theme="dark"] .pb-vh-item{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-vh-current{background:rgba(11,95,216,0.08)}
[data-theme="dark"] .pb-vh-item-num{color:#e5e7eb}
[data-theme="dark"] .pb-an-kpi{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-an-kpi-val{color:#f3f4f6}
[data-theme="dark"] .pb-an-dates{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-mp-btn-analytics{color:#a78bfa;border-color:rgba(139,92,246,0.2)}

/* A/B TEST MODAL */
.pb-ab-overlay,.pb-fs-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;padding:20px;animation:pbFadeIn 0.2s ease}
.pb-ab-modal,.pb-fs-modal{background:#fff;border-radius:16px;width:100%;max-width:680px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.15)}
.pb-ab-header,.pb-fs-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}
.pb-ab-header h3,.pb-fs-header h3{font-size:18px;font-weight:700;color:#111827;margin:0}
.pb-ab-close,.pb-fs-close{width:32px;height:32px;border-radius:8px;border:none;background:#f3f4f6;color:#6b7280;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s}
.pb-ab-close:hover,.pb-fs-close:hover{background:#e5e7eb;color:#111827}
.pb-ab-body,.pb-fs-body{padding:24px}
.pb-ab-empty,.pb-fs-empty{text-align:center;padding:40px 20px;color:#9ca3af;font-size:14px}
.pb-ab-test{border:1px solid #e5e7eb;border-radius:12px;padding:16px;margin-bottom:16px}
.pb-ab-test-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.pb-ab-test-name{font-size:15px;font-weight:600;color:#111827}
.pb-ab-test-status{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;padding:3px 8px;border-radius:99px}
.pb-ab-test-status.running{background:#dcfce7;color:#166534}
.pb-ab-test-status.ended{background:#f3f4f6;color:#6b7280}
.pb-ab-comparison{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.pb-ab-variant{background:#f9fafb;border-radius:10px;padding:14px;text-align:center}
.pb-ab-variant-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:#6b7280;margin-bottom:8px}
.pb-ab-metrics{display:flex;flex-direction:column;gap:6px}
.pb-ab-metric{font-size:13px;color:#374151}
.pb-ab-metric strong{color:#111827}
.pb-ab-winner{text-align:center;padding:10px;background:#dcfce7;border-radius:8px;font-size:13px;font-weight:600;color:#166534;margin-bottom:12px}
.pb-ab-actions{display:flex;gap:8px;justify-content:flex-end}
.pb-ab-btn-end{padding:6px 14px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;font-size:12px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pb-ab-btn-end:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}

/* FORM SUBMISSIONS MODAL */
.pb-fs-entry{border:1px solid #e5e7eb;border-radius:10px;padding:14px;margin-bottom:12px}
.pb-fs-entry-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #f3f4f6}
.pb-fs-entry-date{font-size:12px;color:#6b7280;font-weight:500}
.pb-fs-entry-num{font-size:11px;font-weight:600;color:#9ca3af}
.pb-fs-field{display:flex;gap:8px;padding:4px 0;font-size:13px}
.pb-fs-field-key{color:#6b7280;font-weight:600;min-width:100px;flex-shrink:0}
.pb-fs-field-val{color:#111827;word-break:break-word}
.pb-fs-export-bar{display:flex;justify-content:flex-end;padding:12px 24px;border-top:1px solid #e5e7eb}
.pb-fs-btn-export{padding:8px 16px;border-radius:8px;border:none;background:#0b5fd8;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pb-fs-btn-export:hover{background:#0948a8}

/* MY PAGES EXTRA BUTTONS */
.pb-mp-btn-leads,.pb-mp-btn-ab,.pb-mp-btn-export{padding:4px 10px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;font-size:11px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.pb-mp-btn-leads{color:#059669}.pb-mp-btn-leads:hover{background:#ecfdf5;border-color:#a7f3d0}
.pb-mp-btn-ab{color:#d97706}.pb-mp-btn-ab:hover{background:#fffbeb;border-color:#fcd34d}
.pb-mp-btn-export{color:#6366f1}.pb-mp-btn-export:hover{background:#eef2ff;border-color:#c7d2fe}

/* TOOLBAR EXTRA BUTTONS */
.pb-btn-import,.pb-btn-abtests{padding:6px 12px;border-radius:6px;border:1px solid rgba(255,255,255,0.15);background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.7);font-size:11px;font-weight:600;cursor:pointer;transition:all 0.15s;font-family:inherit}
.pb-btn-import:hover,.pb-btn-abtests:hover{background:rgba(255,255,255,0.12);color:#fff}

/* DARK MODE: A/B TEST + FORM SUBS */
[data-theme="dark"] .pb-ab-modal,[data-theme="dark"] .pb-fs-modal{background:#1f2937;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
[data-theme="dark"] .pb-ab-header,[data-theme="dark"] .pb-fs-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-ab-header h3,[data-theme="dark"] .pb-fs-header h3{color:#f3f4f6}
[data-theme="dark"] .pb-ab-close,[data-theme="dark"] .pb-fs-close{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .pb-ab-test{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-ab-test-name{color:#f3f4f6}
[data-theme="dark"] .pb-ab-variant{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .pb-ab-variant-label{color:#9ca3af}
[data-theme="dark"] .pb-ab-metric{color:#d1d5db}
[data-theme="dark"] .pb-ab-metric strong{color:#f3f4f6}
[data-theme="dark"] .pb-ab-winner{background:rgba(22,163,74,0.15);color:#4ade80}
[data-theme="dark"] .pb-ab-btn-end{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#9ca3af}
[data-theme="dark"] .pb-ab-btn-end:hover{background:rgba(220,38,38,0.15);color:#f87171;border-color:rgba(248,113,113,0.3)}
[data-theme="dark"] .pb-fs-entry{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-fs-entry-header{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .pb-fs-entry-date{color:#9ca3af}
[data-theme="dark"] .pb-fs-field-key{color:#9ca3af}
[data-theme="dark"] .pb-fs-field-val{color:#e5e7eb}
[data-theme="dark"] .pb-fs-export-bar{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-mp-btn-leads{color:#34d399;border-color:rgba(52,211,153,0.2)}
[data-theme="dark"] .pb-mp-btn-ab{color:#fbbf24;border-color:rgba(251,191,36,0.2)}
[data-theme="dark"] .pb-mp-btn-export{color:#818cf8;border-color:rgba(129,140,248,0.2)}

@keyframes pbFadeIn{from{opacity:0}to{opacity:1}}

/* PAGE SCHEDULING MODAL */
.pb-sched-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;padding:20px;animation:pbFadeIn 0.2s ease}
.pb-sched-modal{background:#fff;border-radius:16px;width:100%;max-width:480px;box-shadow:0 20px 60px rgba(0,0,0,0.15)}
.pb-sched-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}
.pb-sched-header h3{font-size:18px;font-weight:700;color:#111827;margin:0}
.pb-sched-close{width:32px;height:32px;border-radius:8px;border:none;background:#f3f4f6;color:#6b7280;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s}
.pb-sched-close:hover{background:#e5e7eb;color:#111827}
.pb-sched-body{padding:24px}
.pb-sched-status{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;margin-bottom:20px;font-size:13px;font-weight:600}
.pb-sched-status-dot{width:8px;height:8px;border-radius:50%}
.pb-sched-status-live{background:#dcfce7;color:#166534}.pb-sched-status-live .pb-sched-status-dot{background:#22c55e}
.pb-sched-status-scheduled{background:#dbeafe;color:#1e40af}.pb-sched-status-scheduled .pb-sched-status-dot{background:#3b82f6}
.pb-sched-status-expired{background:#fef3c7;color:#92400e}.pb-sched-status-expired .pb-sched-status-dot{background:#f59e0b}
.pb-sched-field{margin-bottom:16px}
.pb-sched-field label{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:6px}
.pb-sched-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#111827;background:#fff;box-sizing:border-box}
.pb-sched-input:focus{outline:none;border-color:#0b5fd8;box-shadow:0 0 0 3px rgba(11,95,216,0.1)}
.pb-sched-hint{font-size:12px;color:#9ca3af;margin:4px 0 0}
.pb-sched-tz{font-size:11px;color:#9ca3af;text-align:center;margin:12px 0 20px;padding:8px;background:#f9fafb;border-radius:6px}
.pb-sched-actions{display:flex;gap:8px;justify-content:flex-end}
.pb-sched-btn-save{padding:10px 20px;border-radius:8px;border:none;background:#0b5fd8;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pb-sched-btn-save:hover{background:#0948a8}
.pb-sched-btn-clear{padding:10px 20px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pb-sched-btn-clear:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}

/* MY PAGES SCHEDULE + NOTES BADGES */
.pb-mp-sched-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:99px;margin-top:4px;display:inline-block}
.pb-mp-sched-scheduled{background:#dbeafe;color:#1e40af}
.pb-mp-sched-expired{background:#fef3c7;color:#92400e}
.pb-mp-notes-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:99px;margin-top:4px;display:inline-block;background:#fef3c7;color:#92400e}
.pb-mp-btn-schedule{color:#3b82f6}.pb-mp-btn-schedule:hover{background:#eff6ff;border-color:#93c5fd}
.pb-mp-btn-notes{color:#8b5cf6}.pb-mp-btn-notes:hover{background:#f5f3ff;border-color:#c4b5fd}
.pb-mp-btn-download{color:#059669}.pb-mp-btn-download:hover{background:#ecfdf5;border-color:#a7f3d0}

/* MULTI-PAGE SITE MODAL */
.pb-site-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;padding:20px;animation:pbFadeIn 0.2s ease}
.pb-site-modal{background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.15)}
.pb-site-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}
.pb-site-header h3{font-size:18px;font-weight:700;color:#111827;margin:0}
.pb-site-close{width:32px;height:32px;border-radius:8px;border:none;background:#f3f4f6;color:#6b7280;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s}
.pb-site-close:hover{background:#e5e7eb;color:#111827}
.pb-site-body{padding:24px}
.pb-site-empty{text-align:center;padding:30px 20px;color:#9ca3af;font-size:14px}
.pb-site-field{margin-bottom:16px}
.pb-site-field label{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:6px}
.pb-site-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#111827;background:#fff;box-sizing:border-box}
.pb-site-input:focus{outline:none;border-color:#0b5fd8;box-shadow:0 0 0 3px rgba(11,95,216,0.1)}
.pb-site-page-list{max-height:200px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px}
.pb-site-page-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background 0.1s}
.pb-site-page-item:hover{background:#f9fafb}
.pb-site-page-item:last-child{border-bottom:none}
.pb-site-page-cb{width:16px;height:16px;accent-color:#0b5fd8}
.pb-site-page-title{font-size:14px;font-weight:600;color:#111827}
.pb-site-page-slug{font-size:12px;color:#9ca3af;margin-left:auto;font-family:monospace}
.pb-site-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}
.pb-site-btn-create{padding:10px 20px;border-radius:8px;border:none;background:#0b5fd8;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pb-site-btn-create:hover{background:#0948a8}
.pb-site-card{border:1px solid #e5e7eb;border-radius:12px;padding:16px;margin-bottom:16px}
.pb-site-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.pb-site-card-name{font-size:16px;font-weight:700;color:#111827}
.pb-site-card-count{font-size:12px;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:99px}
.pb-site-card-pages{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}
.pb-site-card-page{font-size:11px;padding:3px 8px;border-radius:4px;background:#f3f4f6;color:#374151;font-family:monospace}
.pb-site-home{background:#dbeafe;color:#1e40af;font-weight:600}
.pb-site-card-actions{display:flex;gap:8px}
.pb-site-btn-download{padding:6px 14px;border-radius:6px;border:none;background:#059669;color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pb-site-btn-download:hover{background:#047857}
.pb-site-btn-delete{padding:6px 14px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;font-size:12px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pb-site-btn-delete:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}

/* COLLABORATION NOTES MODAL */
.pb-notes-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;padding:20px;animation:pbFadeIn 0.2s ease}
.pb-notes-modal{background:#fff;border-radius:16px;width:100%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,0.15)}
.pb-notes-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}
.pb-notes-header h3{font-size:18px;font-weight:700;color:#111827;margin:0}
.pb-notes-close{width:32px;height:32px;border-radius:8px;border:none;background:#f3f4f6;color:#6b7280;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s}
.pb-notes-close:hover{background:#e5e7eb;color:#111827}
.pb-notes-body{flex:1;overflow-y:auto;padding:16px 24px}
.pb-notes-empty{text-align:center;padding:30px 20px;color:#9ca3af;font-size:14px}
.pb-notes-item{border:1px solid #e5e7eb;border-radius:10px;padding:14px;margin-bottom:10px;transition:all 0.15s}
.pb-notes-item:hover{border-color:#d1d5db}
.pb-notes-resolved{opacity:0.6;border-style:dashed}
.pb-notes-item-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.pb-notes-author{font-size:13px;font-weight:700;color:#111827}
.pb-notes-date{font-size:11px;color:#9ca3af}
.pb-notes-text{font-size:14px;color:#374151;line-height:1.5;margin-bottom:8px}
.pb-notes-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;padding:2px 8px;border-radius:99px;display:inline-block;margin-bottom:8px}
.pb-notes-tag-feedback{background:#dbeafe;color:#1e40af}
.pb-notes-tag-revision{background:#fef3c7;color:#92400e}
.pb-notes-tag-idea{background:#dcfce7;color:#166534}
.pb-notes-tag-bug{background:#fee2e2;color:#991b1b}
.pb-notes-item-actions{display:flex;gap:6px}
.pb-notes-btn-resolve{padding:4px 10px;border-radius:5px;border:1px solid #d1d5db;background:#fff;color:#059669;font-size:11px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pb-notes-btn-resolve:hover{background:#ecfdf5;border-color:#a7f3d0}
.pb-notes-resolved-label{font-size:11px;color:#9ca3af;font-weight:600;padding:4px 10px}
.pb-notes-btn-delete{padding:4px 10px;border-radius:5px;border:1px solid #e5e7eb;background:#fff;color:#9ca3af;font-size:11px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pb-notes-btn-delete:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}
.pb-notes-form{padding:16px 24px;border-top:1px solid #e5e7eb;flex-shrink:0}
.pb-notes-form-row{display:flex;gap:8px;margin-bottom:8px}
.pb-notes-cat-select{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-family:inherit;color:#374151;background:#fff;flex:1}
.pb-notes-author-input{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-family:inherit;color:#374151;flex:1}
.pb-notes-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#111827;resize:vertical;box-sizing:border-box;margin-bottom:8px}
.pb-notes-textarea:focus{outline:none;border-color:#0b5fd8;box-shadow:0 0 0 3px rgba(11,95,216,0.1)}
.pb-notes-btn-add{padding:8px 16px;border-radius:8px;border:none;background:#0b5fd8;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s;width:100%}
.pb-notes-btn-add:hover{background:#0948a8}

/* CLONE FROM URL MODAL */
.pb-clone-overlay{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;padding:20px;animation:pbFadeIn 0.2s ease}
.pb-clone-modal{background:#fff;border-radius:16px;width:100%;max-width:480px;box-shadow:0 20px 60px rgba(0,0,0,0.15)}
.pb-clone-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}
.pb-clone-header h3{font-size:18px;font-weight:700;color:#111827;margin:0}
.pb-clone-close{width:32px;height:32px;border-radius:8px;border:none;background:#f3f4f6;color:#6b7280;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s}
.pb-clone-close:hover{background:#e5e7eb;color:#111827}
.pb-clone-body{padding:24px}
.pb-clone-desc{font-size:14px;color:#6b7280;margin:0 0 16px;line-height:1.5}
.pb-clone-field{margin-bottom:16px}
.pb-clone-input{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;color:#111827;box-sizing:border-box}
.pb-clone-input:focus{outline:none;border-color:#0b5fd8;box-shadow:0 0 0 3px rgba(11,95,216,0.1)}
.pb-clone-status{font-size:13px;padding:10px 14px;border-radius:8px;margin-bottom:16px}
.pb-clone-loading{background:#dbeafe;color:#1e40af}
.pb-clone-error{background:#fee2e2;color:#991b1b}
.pb-clone-actions{display:flex;justify-content:flex-end}
.pb-clone-btn{padding:10px 24px;border-radius:8px;border:none;background:#0b5fd8;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.15s}
.pb-clone-btn:hover{background:#0948a8}
.pb-clone-btn:disabled{opacity:0.5;cursor:not-allowed}
.pb-clone-note{font-size:12px;color:#9ca3af;margin-top:16px;font-style:italic}

/* DARK MODE: SCHEDULE, SITES, NOTES, CLONE */
[data-theme="dark"] .pb-sched-modal{background:#1f2937;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
[data-theme="dark"] .pb-sched-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-sched-header h3{color:#f3f4f6}
[data-theme="dark"] .pb-sched-close{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .pb-sched-status-live{background:rgba(22,163,74,0.15);color:#4ade80}
[data-theme="dark"] .pb-sched-status-scheduled{background:rgba(59,130,246,0.15);color:#60a5fa}
[data-theme="dark"] .pb-sched-status-expired{background:rgba(245,158,11,0.15);color:#fbbf24}
[data-theme="dark"] .pb-sched-field label{color:#d1d5db}
[data-theme="dark"] .pb-sched-input{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1);color:#f3f4f6}
[data-theme="dark"] .pb-sched-tz{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .pb-sched-btn-clear{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#9ca3af}
[data-theme="dark"] .pb-mp-sched-scheduled{background:rgba(59,130,246,0.15);color:#60a5fa}
[data-theme="dark"] .pb-mp-sched-expired{background:rgba(245,158,11,0.15);color:#fbbf24}
[data-theme="dark"] .pb-mp-notes-badge{background:rgba(245,158,11,0.15);color:#fbbf24}
[data-theme="dark"] .pb-mp-btn-schedule{color:#60a5fa;border-color:rgba(96,165,250,0.2)}
[data-theme="dark"] .pb-mp-btn-notes{color:#a78bfa;border-color:rgba(167,139,250,0.2)}
[data-theme="dark"] .pb-mp-btn-download{color:#34d399;border-color:rgba(52,211,153,0.2)}
[data-theme="dark"] .pb-site-modal{background:#1f2937;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
[data-theme="dark"] .pb-site-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-site-header h3{color:#f3f4f6}
[data-theme="dark"] .pb-site-close{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .pb-site-field label{color:#d1d5db}
[data-theme="dark"] .pb-site-input{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1);color:#f3f4f6}
[data-theme="dark"] .pb-site-page-list{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-site-page-item{border-color:rgba(255,255,255,0.06)}
[data-theme="dark"] .pb-site-page-item:hover{background:rgba(255,255,255,0.04)}
[data-theme="dark"] .pb-site-page-title{color:#f3f4f6}
[data-theme="dark"] .pb-site-card{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-site-card-name{color:#f3f4f6}
[data-theme="dark"] .pb-site-card-count{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .pb-site-card-page{background:rgba(255,255,255,0.04);color:#d1d5db}
[data-theme="dark"] .pb-site-home{background:rgba(59,130,246,0.15);color:#60a5fa}
[data-theme="dark"] .pb-site-btn-delete{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#9ca3af}
[data-theme="dark"] .pb-notes-modal{background:#1f2937;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
[data-theme="dark"] .pb-notes-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-notes-header h3{color:#f3f4f6}
[data-theme="dark"] .pb-notes-close{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .pb-notes-item{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-notes-author{color:#f3f4f6}
[data-theme="dark"] .pb-notes-text{color:#d1d5db}
[data-theme="dark"] .pb-notes-tag-feedback{background:rgba(59,130,246,0.15);color:#60a5fa}
[data-theme="dark"] .pb-notes-tag-revision{background:rgba(245,158,11,0.15);color:#fbbf24}
[data-theme="dark"] .pb-notes-tag-idea{background:rgba(22,163,74,0.15);color:#4ade80}
[data-theme="dark"] .pb-notes-tag-bug{background:rgba(220,38,38,0.15);color:#f87171}
[data-theme="dark"] .pb-notes-btn-resolve{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#34d399}
[data-theme="dark"] .pb-notes-btn-delete{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);color:#6b7280}
[data-theme="dark"] .pb-notes-form{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-notes-cat-select{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1);color:#d1d5db}
[data-theme="dark"] .pb-notes-author-input{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1);color:#d1d5db}
[data-theme="dark"] .pb-notes-textarea{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1);color:#f3f4f6}
[data-theme="dark"] .pb-clone-modal{background:#1f2937;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
[data-theme="dark"] .pb-clone-header{border-color:rgba(255,255,255,0.08)}
[data-theme="dark"] .pb-clone-header h3{color:#f3f4f6}
[data-theme="dark"] .pb-clone-close{background:rgba(255,255,255,0.06);color:#9ca3af}
[data-theme="dark"] .pb-clone-desc{color:#9ca3af}
[data-theme="dark"] .pb-clone-input{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1);color:#f3f4f6}
[data-theme="dark"] .pb-clone-loading{background:rgba(59,130,246,0.15);color:#60a5fa}
[data-theme="dark"] .pb-clone-error{background:rgba(220,38,38,0.15);color:#f87171}

/* ═══════════════════════════════════════════════
   LIVE LANDING PAGE VIEWER
   ═══════════════════════════════════════════════ */
#page-lp{position:fixed;inset:0;z-index:100000;display:none;flex-direction:column;background:#fff}
#page-lp.active{display:flex!important}
.lp-back-bar{display:flex;align-items:center;gap:10px;padding:8px 16px;background:#111827;color:#fff;flex-shrink:0;z-index:1}
.lp-back-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid rgba(255,255,255,0.15);border-radius:6px;background:transparent;color:rgba(255,255,255,0.8);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s}
.lp-back-btn:hover{background:rgba(255,255,255,0.08);color:#fff;border-color:rgba(255,255,255,0.3)}
.lp-slug{font-size:12px;color:rgba(255,255,255,0.4);font-family:monospace;margin-left:auto}
.lp-iframe{flex:1;width:100%;border:none}
.lp-404{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;text-align:center;padding:40px;color:#6b7280}
.lp-404 h2{font-size:48px;font-weight:800;color:#111827;margin-bottom:8px}
.lp-404 p{font-size:16px;margin-bottom:24px}

/* ═══════════════════════════════════════════════
   SPLIT-PANE PREVIEW
   ═══════════════════════════════════════════════ */
.pb-body-split .pb-canvas-area{flex:1}
.pb-preview-pane{display:flex;flex-direction:column;width:50%;flex-shrink:0;border-left:2px solid #2a2a2a;background:#fff}
.pb-body-split .pb-preview-pane{display:flex}
.pb-preview-header{display:flex;align-items:center;padding:5px 10px;background:#1a1a1a;border-bottom:1px solid #2a2a2a}
.pb-preview-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:rgba(255,255,255,0.35)}
.pb-preview-iframe{flex:1;width:100%;border:none;background:#fff}

@media(max-width:900px){
  .pb-mp-grid{grid-template-columns:1fr}
  .pb-body-split{flex-direction:column}
  .pb-preview-pane{width:100%;height:300px;border-left:none;border-top:2px solid #2a2a2a}
}

/* ── Page Insights lightbulb button + tooltip ── */
.pi-wrap{position:relative;z-index:10}
.pi-wrap-topbar{display:flex;align-items:center}
.pi-btn{position:relative;width:28px;height:28px;list-style:none;border:none;background-color:transparent;border-radius:50%;cursor:grab;padding:0}
.pi-svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:all 0.3s}
.pi-svg2{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);fill:#f4af03;opacity:0;transition:opacity 0.3s}
.pi-btn:hover .pi-svg{fill:#f4af03}
.pi-btn:hover .pi-svg2{opacity:1;fill:#f4af03}
@keyframes piPulse{0%{transform:scale(1)}14%{transform:scale(1.4)}30%{transform:scale(1)}46%{transform:scale(1.3)}62%{transform:scale(1)}100%{transform:scale(1)}}
.pi-btn.pi-pulse{animation:piPulse 0.7s ease-out}
.pi-tooltip{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%) translateY(-4px);width:260px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,0.1);padding:14px 16px;opacity:0;visibility:hidden;transition:opacity 0.2s,visibility 0.2s,transform 0.2s;pointer-events:none;max-width:calc(100vw - 48px)}
.pi-tooltip::before{content:'';position:absolute;top:-6px;left:50%;margin-left:-5px;width:10px;height:10px;background:#fff;border-left:1px solid #e5e7eb;border-top:1px solid #e5e7eb;transform:rotate(45deg)}
.pi-wrap:hover .pi-tooltip{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto}
.pi-tooltip-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:#6b7280;margin-bottom:8px}
.pi-tooltip-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.pi-tooltip-list li{font-size:13px;line-height:1.45;color:#374151;padding-left:14px;position:relative}
.pi-tooltip-list li strong{font-weight:600;color:#111827}
.pi-tooltip-list li::before{content:'';position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:#f4af03}

@media(max-width:768px){
  .pi-wrap-topbar{display:flex;align-items:center}
  .pi-btn{width:24px;height:24px;flex-shrink:0}
  .pi-tooltip{left:0;transform:translateX(0) translateY(-4px);width:min(280px,calc(100vw - 48px))}
  .pi-tooltip::before{left:16px;margin-left:0}
  .pi-wrap:hover .pi-tooltip{transform:translateX(0) translateY(0)}
}

/* ── AI Tools Landing Page ── */
/* ── CINEMATIC SCROLL EXPERIENCE ─────────────────────────── */

.ait-cinema{background:#0a0a0a;color:#fff;position:relative;overflow:hidden}

/* ── STARFIELD ── */
.ait-stars{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}
.ait-star{position:absolute;width:2px;height:2px;background:#fff;border-radius:50%;animation:aitTwinkle var(--dur) ease-in-out infinite alternate}
.ait-star-lg{width:3px;height:3px;box-shadow:0 0 6px 2px rgba(180,210,255,0.35)}
@keyframes aitTwinkle{0%{opacity:var(--lo)}100%{opacity:var(--hi)}}
.ait-shooting-star{position:absolute;width:80px;height:1px;background:linear-gradient(90deg,rgba(75,163,255,0.8),rgba(255,255,255,0.6),transparent);border-radius:1px;transform:rotate(var(--angle,25deg));animation:aitShoot 1s ease-out forwards;pointer-events:none}
@keyframes aitShoot{0%{opacity:1;transform:rotate(var(--angle,25deg)) translateX(0)}100%{opacity:0;transform:rotate(var(--angle,25deg)) translateX(-200px)}}

/* ── SNAP SCROLL SYSTEM ── */
/* Each section is exactly 100vh. Browser snaps between them. */
/* Content animates in via IntersectionObserver after snap lands. */
.ait-snap-container{scroll-snap-type:y mandatory;overflow-y:auto;height:100vh;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}
.ait-snap-section{scroll-snap-align:start;height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.ait-snap-section-cta{scroll-snap-align:start}

/* Content starts invisible + shifted, animates in when snapped to */
.ait-snap-content{position:relative;z-index:2;text-align:center;max-width:680px;padding:0 32px;opacity:0;transform:translateY(40px);transition:opacity 0.7s cubic-bezier(0.22,1,0.36,1),transform 0.7s cubic-bezier(0.22,1,0.36,1)}
.ait-snap-content.ait-snap-visible{opacity:1;transform:translateY(0)}

/* Gradient orb */
.ait-orb{position:absolute;top:50%;left:50%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(75,163,255,0.18),rgba(0,200,224,0.08),transparent 70%);filter:blur(60px);transform:translate(-50%,-50%);animation:aitOrbPulse 6s ease-in-out infinite alternate;pointer-events:none;z-index:1}
@keyframes aitOrbPulse{0%{opacity:0.6;transform:translate(-50%,-50%) scale(1)}100%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}}

/* Hero typography */
.ait-hero-badge{display:inline-block;font-size:11px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;background:linear-gradient(135deg,#4BA3FF,#00C8E0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;border:1px solid rgba(75,163,255,0.25);padding:6px 18px;border-radius:20px;margin-bottom:32px}
.ait-hero-headline{font-family:'DM Serif Display',serif;font-size:72px;color:#fff;line-height:1.05;letter-spacing:-0.03em;margin:0 0 28px}
.ait-hero-sub{font-size:18px;color:rgba(255,255,255,0.7);line-height:1.65;max-width:480px;margin:0 auto}
.ait-scroll-cue{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:60px;color:rgba(255,255,255,0.4);font-size:13px;letter-spacing:0.06em;animation:aitBounce 2.5s infinite}
.ait-scroll-cue svg{animation:aitBounce 2.5s infinite}
@keyframes aitBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

/* Scene text */
.ait-scene-text{font-family:'DM Serif Display',serif;font-size:42px;font-weight:700;line-height:1.3;color:#fff;margin:0;max-width:700px;letter-spacing:-0.01em}
.ait-scene-text-dim{color:rgba(255,255,255,0.6)}
.ait-scene-text-accent{background:linear-gradient(135deg,#4BA3FF,#00C8E0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 30px rgba(75,163,255,0.3))}

/* ── HOLO CARDS (3D tilt, glow, scan, corners) ── */
.ait-holo-card{width:220px;height:300px;perspective:800px;position:relative}
.ait-holo-wide{width:380px;height:300px}
.ait-holo-inner{position:relative;width:100%;height:100%;border-radius:20px;background:linear-gradient(145deg,#111118,#1a1a26);border:1px solid rgba(75,163,255,0.1);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 28px;text-align:center;transition:transform 0.15s ease-out,border-color 0.3s,box-shadow 0.3s;box-shadow:0 0 20px rgba(0,0,0,0.4),inset 0 0 20px rgba(0,0,0,0.2)}
.ait-holo-card:hover .ait-holo-inner{border-color:rgba(75,163,255,0.3);box-shadow:0 0 30px rgba(75,163,255,0.12),0 0 60px rgba(75,163,255,0.06),inset 0 0 20px rgba(0,0,0,0.2)}

/* Glow */
.ait-holo-glow{position:absolute;width:150%;height:150%;left:50%;top:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at center,rgba(75,163,255,0.1) 0%,rgba(0,200,224,0.05) 50%,transparent 100%);filter:blur(20px);opacity:0;transition:opacity 0.4s;pointer-events:none}
.ait-holo-card:hover .ait-holo-glow{opacity:1}

/* Glare */
.ait-holo-glare{position:absolute;inset:0;background:linear-gradient(125deg,rgba(255,255,255,0) 0%,rgba(255,255,255,0.03) 45%,rgba(255,255,255,0.06) 50%,rgba(255,255,255,0.03) 55%,rgba(255,255,255,0) 100%);opacity:0;transition:opacity 0.3s;pointer-events:none}
.ait-holo-card:hover .ait-holo-glare{opacity:1}

/* Scan line */
.ait-holo-scan{position:absolute;inset:0;background:linear-gradient(to bottom,transparent,rgba(75,163,255,0.06),transparent);transform:translateY(-100%);animation:aitHoloScan 3s linear infinite;pointer-events:none}
@keyframes aitHoloScan{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}

/* Corner brackets */
.ait-holo-corners span{position:absolute;width:14px;height:14px;border:2px solid rgba(75,163,255,0.15);transition:all 0.3s}
.ait-holo-corners span:nth-child(1){top:10px;left:10px;border-right:0;border-bottom:0}
.ait-holo-corners span:nth-child(2){top:10px;right:10px;border-left:0;border-bottom:0}
.ait-holo-corners span:nth-child(3){bottom:10px;left:10px;border-right:0;border-top:0}
.ait-holo-corners span:nth-child(4){bottom:10px;right:10px;border-left:0;border-top:0}
.ait-holo-card:hover .ait-holo-corners span{border-color:rgba(75,163,255,0.5);box-shadow:0 0 8px rgba(75,163,255,0.3)}

/* Cyber lines */
.ait-holo-lines span{position:absolute;background:linear-gradient(90deg,transparent,rgba(75,163,255,0.15),transparent);height:1px;width:100%;left:0;transform:scaleX(0);animation:aitLineGrow 3.5s linear infinite;pointer-events:none}
.ait-holo-lines span:nth-child(1){top:25%;transform-origin:left;animation-delay:0s}
.ait-holo-lines span:nth-child(2){top:50%;transform-origin:right;animation-delay:1.2s}
.ait-holo-lines span:nth-child(3){top:75%;transform-origin:left;animation-delay:2.4s}
@keyframes aitLineGrow{0%{transform:scaleX(0);opacity:0}50%{transform:scaleX(1);opacity:1}100%{transform:scaleX(0);opacity:0}}

/* Card content */
.ait-holo-num{font-family:'DM Serif Display',serif;font-size:64px;line-height:1;background:linear-gradient(135deg,#4BA3FF,#00C8E0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 12px rgba(75,163,255,0.3));margin-bottom:12px;position:relative;z-index:2}
.ait-holo-label{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:rgba(255,255,255,0.85);margin-bottom:14px;position:relative;z-index:2}
.ait-holo-desc{font-size:14px;color:rgba(255,255,255,0.6);line-height:1.6;position:relative;z-index:2;margin:0}
.ait-holo-icon{width:56px;height:56px;border-radius:14px;background:rgba(75,163,255,0.1);display:flex;align-items:center;justify-content:center;color:#4BA3FF;margin-bottom:20px;position:relative;z-index:2}
.ait-holo-title{font-family:'DM Serif Display',serif;font-size:24px;color:#fff;margin:0 0 12px;position:relative;z-index:2}

/* CTA Bridge */
.ait-bridge-headline{font-family:'DM Serif Display',serif;font-size:44px;color:#fff;margin:0 0 20px;line-height:1.2;text-shadow:0 0 40px rgba(75,163,255,0.15)}
.ait-bridge-sub{font-size:17px;color:rgba(255,255,255,0.6);line-height:1.7;margin:0 0 40px;max-width:520px}
.ait-bridge-btn{display:inline-flex;align-items:center;gap:10px;padding:18px 40px;border:none;border-radius:12px;background:var(--sky);color:#fff;font-size:17px;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.25s;box-shadow:0 4px 24px rgba(75,163,255,0.3);animation:aitBtnGlow 3s ease-in-out infinite alternate}
.ait-bridge-btn:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(75,163,255,0.5)}
.ait-bridge-btn svg{transform:rotate(0);transition:transform 0.3s}
.ait-bridge-btn:hover svg{transform:translateY(3px)}
@keyframes aitBtnGlow{0%{box-shadow:0 4px 24px rgba(75,163,255,0.3)}100%{box-shadow:0 4px 32px rgba(75,163,255,0.5)}}

/* Immersive mode -- hides site chrome */
body.ait-immersive-active #site-nav,
body.ait-immersive-active .page-breadcrumbs,
body.ait-immersive-active .ytd-bar,
body.ait-immersive-active footer.ft,
body.ait-immersive-active #scroll-progress{display:none !important}
body.ait-immersive-active{overflow:hidden;background:#0a0a0a !important;padding-bottom:0 !important}
body.ait-immersive-active .page{padding-top:0 !important}

/* Exit -- ultra-subtle tiny grey X, barely visible unless hovered */
.ait-exit-btn{position:fixed;top:14px;right:14px;z-index:100;width:24px;height:24px;border-radius:50%;border:none;background:transparent;color:rgba(255,255,255,0.12);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color 0.3s;padding:0}
.ait-exit-btn:hover{color:rgba(255,255,255,0.35)}

/* Snap section labels */
.ait-snap-label{font-size:12px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;background:linear-gradient(135deg,#4BA3FF,#00C8E0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:24px}
.ait-snap-label-accent{background:linear-gradient(135deg,#4BA3FF,#00C8E0);-webkit-background-clip:text;-webkit-text-fill-color:transparent}

/* Scene sub-text */
.ait-scene-sub{font-size:17px;color:rgba(255,255,255,0.6);line-height:1.7;max-width:520px;margin:24px auto 0}
.ait-scene-sub-dim{color:rgba(255,255,255,0.5)}

/* Builder snap section -- taller than 100vh, free-scroll once reached */
.ait-snap-section-builder{height:auto;min-height:100vh;align-items:flex-start;padding:60px 24px 80px}
.ait-snap-content-builder{max-width:680px;width:100%;opacity:1;transform:none;transition:none}

@media(max-width:768px){
  .ait-hero-headline{font-size:44px}
  .ait-hero-sub{font-size:16px}
  .ait-scene-text{font-size:28px}
  .ait-holo-card{width:180px;height:260px}
  .ait-holo-wide{width:calc(100vw - 48px);max-width:340px;height:280px}
  .ait-holo-num{font-size:48px}
  .ait-holo-title{font-size:20px}
  .ait-holo-inner{padding:28px 20px}
  .ait-bridge-headline{font-size:28px}
  .ait-snap-content{padding:0 20px}
  .ait-orb{width:300px;height:300px}
  .ait-exit-btn{top:10px;right:10px;width:20px;height:20px}
  .ait-scene-sub{font-size:14px}
  .ait-snap-section-builder{padding:40px 16px 60px}
}

/* ── ICP BUILDER ─────────────────────────────────────────── */

/* Builder Section Wrapper */
.ait-builder{padding:80px 24px 100px;background:#0a0a0a;position:relative}
.ait-builder-inner{max-width:680px;margin:0 auto}
.ait-builder-head{text-align:center;margin-bottom:48px}
.ait-builder-eyebrow{font-size:12px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;background:linear-gradient(135deg,#4BA3FF,#00C8E0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:12px}
.ait-builder-title{font-family:'DM Serif Display',serif;font-size:32px;color:#fff;margin:0 0 16px}
.ait-builder-sub{font-size:15px;color:rgba(255,255,255,0.55);line-height:1.65;max-width:540px;margin:0 auto}

/* Progress Bar + Dots */
.ait-iq-progress{margin-bottom:36px}
.ait-iq-progress-track{height:3px;background:rgba(255,255,255,0.08);border-radius:3px;overflow:hidden;margin-bottom:16px}
.ait-iq-progress-fill{height:100%;background:var(--sky);border-radius:3px;transition:width 0.4s cubic-bezier(0.4,0,0.2,1);width:0}
.ait-iq-dots{display:flex;justify-content:center;gap:10px;margin-bottom:8px}
.ait-iq-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,0.12);transition:all 0.3s}
.ait-iq-dot-active{background:var(--sky);box-shadow:0 0 8px rgba(75,163,255,0.4)}
.ait-iq-dot-done{background:rgba(75,163,255,0.5)}
.ait-iq-step-label{text-align:center;font-size:12px;color:rgba(255,255,255,0.4);letter-spacing:0.08em}

/* Textarea (Q5) */
.ait-iq-textarea{width:100%;min-height:80px;padding:16px 18px;border-radius:10px;border:1px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.03);color:#fff;font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.6;resize:vertical;outline:none;transition:border-color 0.2s;box-sizing:border-box}
.ait-iq-textarea:focus{border-color:rgba(75,163,255,0.4)}
.ait-iq-textarea::placeholder{color:rgba(255,255,255,0.3)}
.ait-iq-char-count{text-align:right;font-size:12px;color:rgba(255,255,255,0.3);margin-top:6px}

/* Loading Spinner */
.ait-iq-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;gap:48px}

/* Squares loader -- adapted from NlghtM4re/moody-fly-80 on uiverse.io */
.ait-iq-squares-loader{position:relative;width:56px;height:56px}
.ait-sq-top,.ait-sq-bottom,.ait-sq-left,.ait-sq-right{position:absolute;left:40%;top:50%}
.ait-sq-top{transform:rotate(90deg)}
.ait-sq-bottom{transform:rotate(-90deg)}
.ait-sq-left{transform:rotate(0deg)}
.ait-sq-right{transform:rotate(-180deg)}
.ait-sq-bar{width:6px;height:22px;background:rgb(71,195,248);border-radius:8px;display:block;animation:ait-sq-turn 2.5s ease infinite;box-shadow:rgb(71,195,248) 0px 1px 12px 0px}
@keyframes ait-sq-turn{
  0%{transform:translateX(0) translateY(0) rotate(0)}
  70%{transform:translateX(400%) translateY(100%) rotate(90deg)}
  100%{transform:translateX(0) translateY(0) rotate(0)}
}
.ait-iq-loading-msg{font-size:15px;color:rgba(255,255,255,0.6);text-align:center;transition:opacity 0.3s}

/* Results Header */
.ait-iq-result-header{text-align:center;margin-bottom:32px;padding:32px 24px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);border-radius:14px}
.ait-iq-result-title{font-family:'DM Serif Display',serif;font-size:28px;color:#fff;margin:0 0 8px}
.ait-iq-result-tagline{font-size:15px;color:rgba(255,255,255,0.55);margin:0 0 12px;line-height:1.5}

/* Animated bullet points (screen only, excluded from PDF) */
.ait-iq-result-bullets{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:20px;flex-wrap:wrap}
.ait-iq-bullet{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:rgba(255,255,255,0.4);letter-spacing:0.04em;text-transform:uppercase}
.ait-iq-bullet-dot{width:6px;height:6px;border-radius:50%;background:#4BA3FF;animation:aitBulletPulse 2s ease-in-out infinite;box-shadow:0 0 6px rgba(75,163,255,0.6)}
.ait-iq-bullet:nth-child(2) .ait-iq-bullet-dot{background:#00C8E0;box-shadow:0 0 6px rgba(0,200,224,0.6);animation-delay:0.4s}
.ait-iq-bullet:nth-child(3) .ait-iq-bullet-dot{background:#a78bfa;box-shadow:0 0 6px rgba(167,139,250,0.6);animation-delay:0.8s}
@keyframes aitBulletPulse{0%,100%{opacity:0.4;transform:scale(0.8)}50%{opacity:1;transform:scale(1.3)}}
.no-print{} /* marker class -- used in PDF export exclusion */

.ait-iq-result-meta{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}
.ait-iq-fit-badge{display:inline-flex;align-items:center;padding:5px 14px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:0.1em}
.ait-iq-fit-high{background:linear-gradient(135deg,#4BA3FF,#00C8E0);color:#fff;border:none;box-shadow:0 2px 10px rgba(75,163,255,0.35)}
.ait-iq-fit-medium{background:rgba(255,190,50,0.08);color:#f5c842;border:1px solid rgba(255,190,50,0.18)}
.ait-iq-meta-sep{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,0.2)}
.ait-iq-meta-item{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:rgba(255,255,255,0.5)}
.ait-iq-meta-suffix{color:rgba(255,255,255,0.35);font-weight:400}

/* Gradient text: money amounts (blue) */
.ait-iq-money-grad{background:linear-gradient(135deg,#4BA3FF,#00C8E0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}

/* Gradient text: frequency numbers (fire) */
.ait-iq-fire-grad{background:linear-gradient(135deg,#ff6b2b,#ff4500,#ffd700);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}

/* Tabs */
.ait-iq-tabs{display:flex;gap:2px;overflow-x:auto;overflow-y:hidden;padding-bottom:2px;margin-bottom:0;border-bottom:1px solid rgba(255,255,255,0.08);-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}
.ait-iq-tabs::-webkit-scrollbar{display:none}
.ait-iq-tab{padding:12px 14px;font-size:12px;font-weight:600;color:rgba(255,255,255,0.45);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;transition:all 0.2s;font-family:'DM Sans',sans-serif;flex-shrink:0}
.ait-iq-tab:hover{color:rgba(255,255,255,0.7)}
.ait-iq-tab-active{color:#fff;border-bottom-color:var(--sky)}

/* Tab Panels */
.ait-iq-panels{margin-bottom:32px}
.ait-iq-panel{display:none;padding:28px 4px;animation:fqFadeIn 0.35s ease;text-align:left}
.ait-iq-panel-active{display:block}
.ait-iq-panel-title{font-family:'DM Serif Display',serif;font-size:22px;color:#fff;margin:0 0 20px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,0.08)}
.ait-iq-content-block{margin-bottom:16px;font-size:15px;color:rgba(255,255,255,0.75);line-height:1.7;text-align:left}
.ait-iq-content-block b{color:#fff;font-weight:600}
.ait-iq-content-p{margin:0 0 18px;font-size:15px;color:rgba(255,255,255,0.75);line-height:1.8;text-align:left}
.ait-iq-content-p b{color:#fff;font-weight:600}
.ait-iq-content-lead{font-size:16px;color:rgba(255,255,255,0.85);border-left:3px solid var(--sky);padding-left:16px}

/* Structured item cards (signals, triggers, warnings, days) */
.ait-iq-items{display:flex;flex-direction:column;gap:12px}
.ait-iq-item{display:flex;gap:14px;padding:16px 18px;border-radius:12px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);transition:border-color 0.2s}
.ait-iq-item:hover{border-color:rgba(255,255,255,0.12)}
.ait-iq-item-number{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;margin-top:2px}
.ait-iq-item-signal .ait-iq-item-number{background:rgba(75,163,255,0.15);color:#4BA3FF}
.ait-iq-item-trigger .ait-iq-item-number{background:rgba(52,211,153,0.15);color:#34D399}
.ait-iq-item-warning .ait-iq-item-number{background:rgba(248,113,113,0.15);color:#F87171}
.ait-iq-item-day .ait-iq-item-number{background:rgba(167,139,250,0.15);color:#A78BFA}
.ait-iq-item-default .ait-iq-item-number{background:rgba(255,255,255,0.08);color:rgba(255,255,255,0.5)}
.ait-iq-item-content{flex:1;min-width:0}
.ait-iq-item-label{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:6px}
.ait-iq-item-signal .ait-iq-item-label{color:#4BA3FF}
.ait-iq-item-trigger .ait-iq-item-label{color:#34D399}
.ait-iq-item-warning .ait-iq-item-label{color:#F87171}
.ait-iq-item-day .ait-iq-item-label{color:#A78BFA}
.ait-iq-item-body{margin:0;font-size:14px;color:rgba(255,255,255,0.75);line-height:1.7}
.ait-iq-item-body b{color:#fff;font-weight:600}
.ait-iq-item-trigger-text{margin:0 0 4px;font-size:14px;color:rgba(255,255,255,0.85);line-height:1.6;font-weight:500}
.ait-iq-item-script{margin:0;font-size:14px;color:rgba(255,255,255,0.65);line-height:1.7;font-style:italic;padding:10px 14px;background:rgba(255,255,255,0.02);border-radius:8px;border-left:2px solid rgba(52,211,153,0.3)}

/* Action Plan Card */
.ait-iq-action-plan{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:14px;padding:28px;margin-bottom:32px}
.ait-iq-ap-head{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;color:#fff;margin-bottom:20px}
.ait-iq-ap-head svg{color:var(--sky)}
.ait-iq-ap-body{font-size:15px;color:rgba(255,255,255,0.75);line-height:1.7;text-align:left}
.ait-iq-ap-body b{color:#fff;font-weight:600}
.ait-iq-ap-body .icpd-block,.ait-iq-ap-body .ait-iq-content-block{margin-bottom:12px}
.ait-iq-ap-body .ait-iq-items{gap:10px}
.ait-iq-ap-body .ait-iq-item{padding:14px 16px}

/* Buttons */
.ait-iq-ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.ait-iq-btn-primary{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:10px;border:none;background:var(--sky);color:#fff;font-size:15px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.2s}
.ait-iq-btn-primary:hover{background:#3d8ef7;transform:translateY(-1px)}
.ait-iq-btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:14px 24px;border-radius:10px;border:1px solid rgba(255,255,255,0.12);background:transparent;color:rgba(255,255,255,0.6);font-size:14px;font-weight:500;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.2s}
.ait-iq-btn-secondary:hover{border-color:rgba(255,255,255,0.25);color:rgba(255,255,255,0.85)}
.ait-iq-back{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border:none;background:none;color:rgba(255,255,255,0.4);font-size:13px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:color 0.2s;margin-top:12px}
.ait-iq-back:hover{color:rgba(255,255,255,0.7)}
.ait-iq-continue{display:inline-block}
.ait-iq-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:8px}

/* Error */
.ait-iq-error{background:rgba(248,113,113,0.08);border:1px solid rgba(248,113,113,0.2);color:#f87171;padding:14px 20px;border-radius:10px;font-size:14px;margin-top:16px;line-height:1.5}

/* ── ICP PDF STYLES (clean black-on-white) ─────────────── */

.icp-pdf-doc{width:816px;margin:0;padding:0;display:block;font-family:system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.6;color:#111;background:#fff}

/* Cover */
.icp-pdf-cover{width:100%;height:1056px;background:#fff;display:flex;align-items:center;justify-content:center;padding:0;margin:0;box-sizing:border-box}
.icp-pdf-cover-inner{text-align:center;padding:80px 60px;max-width:680px}
.icpd-eyebrow{font-size:12px;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:#555;margin-bottom:24px}
.icpd-cover-title{font-size:38px;font-weight:700;color:#111;line-height:1.2;margin:0 0 16px}
.icpd-cover-tagline{font-size:16px;color:#555;margin:0 0 48px;line-height:1.5}
.icpd-cover-meta{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:440px;margin:0 auto 48px}
.icpd-meta-box{border:1px solid #ddd;padding:16px 20px;text-align:center}
.icpd-meta-label{font-size:10px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:#777;margin-bottom:6px}
.icpd-meta-val{font-size:16px;font-weight:700;color:#111}
.icpd-cover-footer{font-size:11px;color:#999;letter-spacing:0.08em}

/* Body Pages */
.icpd-page{padding:56px 48px 28px;box-sizing:border-box;width:100%;background:#fff;color:#111;page-break-before:always}
.icpd-first{page-break-before:auto}
.icpd-section-title{font-size:20px;font-weight:700;color:#111;margin:0 0 16px;page-break-after:avoid}
.icpd-section-body{font-size:14px;line-height:1.7;color:#333}
.icpd-section-body b{color:#111;font-weight:600}
.icpd-block{margin-bottom:14px;page-break-inside:avoid}
.icpd-divider{border:none;border-top:1px solid #ddd;margin:28px 0}
.icpd-disqualifiers b{color:#111}
.icpd-item{display:flex;gap:12px;padding:10px 0;margin-bottom:4px;border-bottom:1px solid #eee;page-break-inside:avoid}
.icpd-item-num{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#111;flex-shrink:0;margin-top:2px}
.icpd-item-body{flex:1;font-size:13px;line-height:1.6;color:#333}
.icpd-item-body b{color:#111;font-weight:600}
.icpd-item-label{font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#777;margin-bottom:4px}

/* Closing Box */
.icpd-closing{margin-top:32px;page-break-inside:avoid}
.icpd-closing-inner{border-top:2px solid #111;padding:24px 0;font-size:14px;color:#111;line-height:1.7;text-align:center}

/* Headings for PDF */
.icp-pdf-doc h1,.icp-pdf-doc h2{page-break-after:avoid}
.icpd-continued{font-size:12px;font-weight:400;color:#777;font-style:italic;letter-spacing:0}

/* PDF Footer */
.icpd-footer{margin-top:48px;padding-top:24px;border-top:1px solid #ddd;text-align:center;page-break-inside:avoid}
.icpd-footer-brand{font-size:14px;font-weight:700;color:#111;letter-spacing:0.03em}
.icpd-footer-powered{font-size:12px;color:#777;margin-top:4px}
.icpd-footer-copy{font-size:11px;color:#999;margin-top:8px}

/* ── ICP BUILDER MOBILE ─────────────────────────────────── */

@media(max-width:768px){
  .ait-builder{padding:60px 16px 80px}
  .ait-builder-title{font-size:24px}
  .ait-builder-sub{font-size:14px}
  .ait-iq-result-title{font-size:22px}
  .ait-iq-result-meta{gap:10px}
  .ait-iq-tabs{gap:2px}
  .ait-iq-tab{padding:10px 12px;font-size:12px}
  .ait-iq-panel{padding:20px 0}
  .ait-iq-item{padding:14px;gap:10px}
  .ait-iq-item-number{width:24px;height:24px;font-size:11px}
  .ait-iq-item-script{padding:8px 10px}
  .ait-iq-content-lead{padding-left:12px;font-size:15px}
  .ait-iq-action-plan{padding:20px}
  .ait-iq-ctas{flex-direction:column;align-items:stretch}
  .ait-iq-btn-primary,.ait-iq-btn-secondary{justify-content:center}
}

/* ── JOURNEY BAR ─────────────────────────────────── */

.jb-container{padding:12px 28px 0;background:#fafbfd;border-bottom:1px solid var(--off2)}
[data-theme="dark"] .jb-container{background:#0f1724;border-bottom-color:rgba(255,255,255,0.06)}

.jb-wrap{display:flex;align-items:center;gap:0;padding:10px 0 14px;overflow-x:auto;-webkit-overflow-scrolling:touch}

.jb-phase{display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:8px;border:none;background:transparent;cursor:pointer;white-space:nowrap;transition:background 0.2s}
.jb-phase:hover{background:rgba(11,95,216,0.06)}

.jb-phase-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;transition:all 0.2s}

.jb-phase-active .jb-phase-num{background:#0B5FD8;color:#fff}
.jb-phase-complete .jb-phase-num{background:#22c55e;color:#fff}
.jb-phase-locked .jb-phase-num{background:var(--off2);color:var(--slate)}

.jb-phase-text{text-align:left}
.jb-phase-label{font-size:12px;font-weight:600;color:var(--navy);line-height:1.3}
[data-theme="dark"] .jb-phase-label{color:#e2e8f0}
.jb-phase-status{font-size:11px;color:var(--slate);line-height:1.3}

.jb-phase-active .jb-phase-label{color:#0B5FD8}
.jb-phase-complete .jb-phase-label{color:#22c55e}
.jb-phase-locked .jb-phase-label{color:var(--slate)}
.jb-phase-locked{cursor:default;opacity:0.5}
.jb-phase-locked:hover{background:transparent}

.jb-connector{width:32px;height:2px;flex-shrink:0;background:var(--off2);border-radius:1px}
.jb-connector-complete{background:#22c55e}

@media(max-width:768px){
  .jb-container{padding:8px 16px 0}
  .jb-phase{padding:6px 10px;gap:8px}
  .jb-phase-num{width:24px;height:24px;font-size:11px}
  .jb-phase-label{font-size:11px}
  .jb-phase-status{font-size:10px}
  .jb-connector{width:20px}
}

/* ── JOURNEY HERO (dashboard context card) ─────────── */

.jh-card{display:flex;align-items:center;justify-content:space-between;padding:32px 36px;border-radius:12px;gap:32px}
.jh-card-setup{background:linear-gradient(135deg,#0A1628 0%,#1a2d50 100%);color:#fff}
.jh-card-plan{background:linear-gradient(135deg,#0B5FD8 0%,#1a3d8f 100%);color:#fff}
.jh-card-start{background:linear-gradient(135deg,#7c3aed 0%,#4c1d95 100%);color:#fff}
.jh-card-active{background:var(--white);border:1px solid var(--off2);color:var(--navy)}
.jh-card-grad{background:linear-gradient(135deg,#059669 0%,#065f46 100%);color:#fff}
[data-theme="dark"] .jh-card-active{background:#151f2e;border-color:rgba(255,255,255,0.08)}

.jh-content{flex:1;min-width:0}
.jh-eyebrow{font-size:11px;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;opacity:0.7;margin-bottom:8px}
.jh-card-active .jh-eyebrow{color:var(--blue);opacity:1}

.jh-title{font-family:"DM Serif Display",serif;font-size:24px;line-height:1.3;margin:0 0 12px;letter-spacing:-0.02em}
.jh-card-active .jh-title{color:var(--navy)}
[data-theme="dark"] .jh-card-active .jh-title{color:#e2e8f0}

.jh-desc{font-size:14px;line-height:1.6;opacity:0.85;margin:0 0 20px;max-width:520px}
.jh-card-active .jh-desc{color:var(--slate)}

.jh-icp-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;background:rgba(255,255,255,0.15);font-size:12px;font-weight:600;margin-bottom:12px}

.jh-cta{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:8px;border:none;font-size:14px;font-weight:600;cursor:pointer;transition:transform 0.15s,box-shadow 0.15s}
.jh-card-setup .jh-cta,.jh-card-plan .jh-cta,.jh-card-start .jh-cta,.jh-card-grad .jh-cta{background:#fff;color:#0A1628}
.jh-card-active .jh-cta{background:#0B5FD8;color:#fff}
.jh-cta:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,0.15)}

.jh-cta-time{font-size:12px;opacity:0.6;margin-left:4px}

.jh-visual{flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center}

.jh-step-ring{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;border:3px solid rgba(255,255,255,0.25)}
.jh-step-ring span{opacity:0.9}
.jh-step-plan{border-color:rgba(255,255,255,0.3)}
.jh-step-execute{border-color:rgba(255,255,255,0.3)}

.jh-progress-ring{display:block}
.jh-ring-text{position:absolute;font-size:18px;font-weight:700;color:var(--navy)}
[data-theme="dark"] .jh-ring-text{color:#e2e8f0}

.jh-stats{display:flex;gap:24px;margin-bottom:20px}
.jh-stat-val{font-size:22px;font-weight:700;line-height:1}
.jh-stat-label{font-size:11px;opacity:0.6;margin-top:4px;text-transform:uppercase;letter-spacing:0.05em}
.jh-card-active .jh-stat-val{color:var(--navy)}
[data-theme="dark"] .jh-card-active .jh-stat-val{color:#e2e8f0}

@media(max-width:768px){
  .jh-card{flex-direction:column;padding:24px 20px;gap:20px;text-align:center}
  .jh-title{font-size:20px}
  .jh-desc{font-size:13px;margin-left:auto;margin-right:auto}
  .jh-stats{justify-content:center}
  .jh-cta{width:100%;justify-content:center}
}

/* ── BP ICP NOTICE ─────────────────────────────────── */

.bp-icp-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;background:rgba(34,197,94,0.08);border:1px solid rgba(34,197,94,0.2);border-radius:8px;margin-bottom:16px;font-size:13px;color:#166534}
.bp-icp-banner svg{flex-shrink:0;color:#22c55e}
[data-theme="dark"] .bp-icp-banner{background:rgba(34,197,94,0.1);border-color:rgba(34,197,94,0.15);color:#86efac}

/* ── WHAT'S NEXT CTA ─────────────────────────────────── */

.wn-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;margin-top:20px;background:rgba(11,95,216,0.04);border:1px solid rgba(11,95,216,0.12);border-radius:10px}
[data-theme="dark"] .wn-card{background:rgba(11,95,216,0.08);border-color:rgba(11,95,216,0.2)}

.wn-content{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.wn-icon{flex-shrink:0;color:#22c55e}
.wn-text{font-size:13px;color:var(--body);line-height:1.5}

.wn-actions{display:flex;gap:8px;flex-shrink:0}

.wn-btn{padding:8px 16px;border-radius:6px;border:none;font-size:12px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:transform 0.15s,box-shadow 0.15s;white-space:nowrap}
.wn-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,0.1)}

.wn-btn-challenge{background:#8b5cf6;color:#fff}
.wn-btn-next{background:#0B5FD8;color:#fff}

@media(max-width:768px){
  .wn-card{flex-direction:column;align-items:stretch;text-align:center}
  .wn-content{justify-content:center}
  .wn-actions{justify-content:center}
}

/* ══════════════════════════════════════════
   DASHBOARD TABS
   ══════════════════════════════════════════ */

.dash-tab-bar{display:flex;gap:4px;margin-bottom:24px;background:var(--off);border-radius:10px;padding:4px;border:1px solid var(--off2)}
.dash-tab{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;background:transparent;border-radius:8px;font-size:13px;font-weight:600;color:var(--slate);cursor:pointer;transition:all .2s;font-family:inherit}
.dash-tab:hover{color:var(--navy);background:rgba(11,95,216,0.04)}
.dash-tab-active{background:var(--white);color:var(--blue);box-shadow:0 1px 4px rgba(10,22,40,0.08)}
.dash-tab svg{opacity:0.6;transition:opacity .2s}
.dash-tab-active svg{opacity:1}

.dash-tab-panel{animation:dashTabFade .25s ease}
@keyframes dashTabFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

/* ══════════════════════════════════════════
   PAGE ANALYTICS
   ══════════════════════════════════════════ */

.pa-empty{text-align:center;padding:60px 20px;color:var(--slate)}
.pa-empty svg{opacity:0.3;margin-bottom:12px}
.pa-empty h3{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy);margin:0 0 8px}
.pa-empty p{font-size:14px;margin:0}

.pa-summary-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:28px}
.pa-scard{background:var(--white);border:1px solid var(--off2);border-radius:10px;padding:16px;text-align:center}
.pa-scard-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;margin-bottom:8px}
.pa-scard-value{font-family:'DM Serif Display',serif;font-size:22px;color:var(--navy);line-height:1.2}
.pa-scard-label{font-size:11px;font-weight:600;color:var(--slate);text-transform:uppercase;letter-spacing:0.04em;margin-top:4px}

.pa-section-title{font-family:'DM Serif Display',serif;font-size:18px;color:var(--navy);margin-bottom:16px}

.pa-page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}

.pa-page-card{background:var(--white);border:1px solid var(--off2);border-radius:12px;padding:20px;box-shadow:0 1px 4px rgba(10,22,40,0.04)}
.pa-page-header{margin-bottom:14px}
.pa-page-title{font-family:'DM Serif Display',serif;font-size:16px;color:var(--navy);margin-bottom:2px}
.pa-page-slug{font-size:12px;color:var(--slate);font-weight:500}

.pa-mini-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:14px}
.pa-mini{text-align:center}
.pa-mini-val{font-size:16px;font-weight:700;line-height:1.2}
.pa-mini-lbl{font-size:10px;font-weight:600;color:var(--slate);text-transform:uppercase;letter-spacing:0.04em;margin-top:2px}

.pa-sparkline{margin-bottom:14px;border-radius:8px;overflow:hidden;background:var(--off);padding:4px}
.pa-spark-svg{width:100%;height:50px;display:block}

.pa-referrers{margin-bottom:14px}
.pa-ref-title{font-size:11px;font-weight:600;color:var(--slate);text-transform:uppercase;letter-spacing:0.04em;margin-bottom:8px}
.pa-ref-row{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.pa-ref-source{font-size:12px;font-weight:600;color:var(--navy);min-width:90px}
.pa-ref-bar-wrap{flex:1;height:6px;background:var(--off2);border-radius:3px;overflow:hidden}
.pa-ref-bar{height:100%;background:var(--blue);border-radius:3px;transition:width .4s ease}
.pa-ref-pct{font-size:12px;font-weight:600;color:var(--slate);min-width:30px;text-align:right}

.pa-detail-btn{width:100%;padding:10px;background:var(--off);border:1px solid var(--off2);border-radius:8px;font-size:13px;font-weight:600;color:var(--blue);cursor:pointer;transition:all .2s;font-family:inherit}
.pa-detail-btn:hover{background:rgba(11,95,216,0.06);border-color:var(--blue)}

/* Page Analytics Modal */
.pa-modal-overlay{position:fixed;inset:0;background:rgba(10,22,40,0.5);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}
.pa-modal{background:var(--white);border-radius:14px;max-width:700px;width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px rgba(10,22,40,0.25)}
.pa-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px;border-bottom:1px solid var(--off2)}
.pa-modal-title{font-family:'DM Serif Display',serif;font-size:20px;color:var(--navy)}
.pa-modal-slug{font-size:12px;color:var(--slate);margin-top:2px}
.pa-modal-close{background:none;border:none;font-size:24px;color:var(--slate);cursor:pointer;line-height:1;padding:4px 8px}
.pa-modal-close:hover{color:var(--navy)}
.pa-modal-body{padding:24px}

.pa-detail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}
.pa-dstat{text-align:center;padding:14px;background:var(--off);border-radius:10px}
.pa-dstat-val{font-size:22px;font-weight:700;line-height:1.2}
.pa-dstat-lbl{font-size:11px;font-weight:600;color:var(--slate);text-transform:uppercase;letter-spacing:0.04em;margin-top:4px}

.pa-detail-chart-section{margin-bottom:24px}
.pa-detail-chart-title{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:10px}
.pa-detail-chart{background:var(--off);border-radius:10px;padding:12px;overflow:hidden}
.pa-bar-svg,.pa-trend-svg{width:100%;height:auto;display:block}

.pa-detail-sources{padding:4px 0}
.pa-source-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.pa-source-name{font-size:13px;font-weight:600;color:var(--navy);min-width:110px}
.pa-source-bar-wrap{flex:1;height:8px;background:var(--off2);border-radius:4px;overflow:hidden}
.pa-source-bar{height:100%;background:var(--blue);border-radius:4px;transition:width .4s ease}
.pa-source-pct{font-size:13px;font-weight:600;color:var(--slate);min-width:35px;text-align:right}

/* Responsive */
@media(max-width:900px){
  .pa-summary-cards{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:600px){
  .pa-summary-cards{grid-template-columns:repeat(2,1fr)}
  .pa-page-grid{grid-template-columns:1fr}
  .pa-mini-stats{grid-template-columns:repeat(3,1fr)}
  .pa-detail-stats{grid-template-columns:repeat(2,1fr)}
  .dash-tab-bar{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .dash-tab{white-space:nowrap;min-width:0;padding:8px 14px;font-size:12px}
}

/* ════════════════════════════════════════════════════════════════
   MOBILE OVERRIDES — placed at end of file so they win the cascade.
   Several component base styles (hero stats, partnership, flip cards,
   testimonials) are defined LATER in this file than the main mobile
   @media block above; since media queries add no specificity, those
   base rules were overriding the intended single-column mobile layout.
   These rules sit after every base definition and fix that.
   ════════════════════════════════════════════════════════════════ */
@media(max-width:768px){
  /* Mobile-first: render content immediately. The scroll-triggered entrance
     animations rely on JS observers that don't always fire on mobile, which
     left whole sections (e.g. How It Works cards 3–5) stuck invisible and
     caused pop-in jank. Show everything up front instead. */
  .scroll-reveal,.reveal,.fade-up,.slide-up,.hero-reveal{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}

  /* Home hero stat row: 4-across is cramped on phones — make it a 2×2 grid */
  .h-stats{display:grid;grid-template-columns:1fr 1fr;max-width:340px;margin:0 auto;padding-top:26px;gap:0}
  .h-stat{flex:none;padding:13px 12px;border-right:1px solid rgba(10,22,40,0.08);border-bottom:1px solid rgba(10,22,40,0.08)}
  .h-stat:nth-child(2n){border-right:none}
  .h-stat:nth-child(n+3){border-bottom:none}
  .h-stat-n{font-size:21px}
  .h-stat-l{font-size:11px;letter-spacing:0.08em;white-space:normal}

  /* Partnership "Two things" section: base padding (section 40px + box 64px)
     was squeezing all content into a ~180px column on phones. Tighten it. */
  .pship-section{padding:40px 16px}
  .pship-box{padding:30px 22px}
  .pship-col{padding:0}
  .pship-grid{grid-template-columns:1fr;gap:0;margin-top:28px}
  .pship-divider{height:1px;width:100%;margin:22px 0;background:rgba(255,255,255,0.1)}
  .pship-divider::after{display:none}

  /* Flip cards and testimonials go single column. minmax(0,1fr) stops a long
     (e.g. Spanish) nowrap label from forcing the track wider than the viewport. */
  .flip-grid{grid-template-columns:1fr;gap:16px}
  .testi-grid{grid-template-columns:minmax(0,1fr);gap:18px}
  .testi-stat{white-space:normal}

  /* "How It Works" cards: 3D flip is awkward on touch and the front/back
     overlap. On mobile, drop the flip and show each card flat — icon, step,
     title, and the explanation all stacked and fully readable. */
  .flip-card{height:auto;cursor:default;perspective:none}
  .flip-inner{transform:none!important;transform-style:flat;height:auto}
  .flip-front,.flip-back{position:static;inset:auto;transform:none;backface-visibility:visible;-webkit-backface-visibility:visible;padding:26px 24px}
  .flip-front{border-radius:14px 14px 0 0;border-bottom:none}
  .flip-back{border-radius:0 0 14px 14px;border-top:none;padding-top:4px}
  .flip-title{font-size:18px;margin-bottom:10px}
  .flip-back p{font-size:14.5px;line-height:1.65;max-width:none}
  .flip-hint{display:none}

  /* Footer grid is inline-styled (4 cols + 72px gap) which overflowed the
     viewport and caused horizontal scroll. Force single column on phones. */
  .ft-grid{grid-template-columns:1fr!important;gap:32px!important}
  .ft-bot{flex-direction:column;align-items:flex-start;gap:14px}

  /* Apply page hero stat bar: 4-across is cramped on phones — wrap to 2×2 */
  #page-apply .apply-hero [style*="display:flex;justify-content:center"]{flex-wrap:wrap}
  #page-apply .apply-hero [style*="text-align:center;flex:1"]{flex:0 0 50%;padding:16px 0!important}
  #page-apply .apply-hero [style*="width:1px;background"]{display:none}
}
@media(max-width:480px){
  .h-stat-n{font-size:19px}
  .h-stat-l{font-size:10.5px;white-space:normal}
}

/* ── Spanish hero headline ──────────────────────────────────────────
   The desktop hero forces each title line onto one line (white-space:nowrap),
   which is fine for the short English copy but clips the longer Spanish.
   For Spanish only, let it wrap and scale slightly. English is untouched. */
@media(min-width:900px){
  html[lang="es"] .h-title{font-size:clamp(42px,4.8vw,66px);line-height:1.06}
  html[lang="es"] .h-title-line{white-space:normal}
}
