/* ============================================================
   VAID PYQ Engine — production stylesheet (v0.3.0, Phase 1C)
   Generated from the locked v3.3 visual baseline.
   Every selector is scoped under .vpe-app. No global *{} or body{}
   reset, no mockup chrome (.mk-*, .theme-ph*, .site-foot-ph),
   no page-switch styles. The theme owns header/menu/footer.
   ============================================================ */
.vpe-app{--vpe-navy:#0E2A47; --vpe-navy-2:#143b63; --vpe-blue:#1E5BA8; --vpe-blue-d:#15457f;
  --vpe-ink:#1f2a37; --vpe-muted:#5d6b7c; --vpe-line:#E4E9F0;
  --vpe-ivory:#FBFAF5; --vpe-cream:#F6F4EC; --vpe-panel:#EEF4FB; --vpe-panel-2:#E6EEF8;
  --vpe-gold:#B8842B; --vpe-gold-d:#946914; --vpe-gold-bg:#FBF3DD; --vpe-gold-line:#ECD9A8;
  --vpe-ok:#2E7D46; --vpe-ok-bg:#E8F4EC; --vpe-amber:#9A6A00; --vpe-amber-bg:#FBF0D8;
  --vpe-red:#B23B2E; --vpe-red-bg:#FBEAE6;
  --vpe-radius:16px; --vpe-radius-s:11px;
  --vpe-sh:0 1px 2px rgba(14,42,71,.05),0 6px 18px rgba(14,42,71,.05);
  --vpe-sh-h:0 3px 6px rgba(14,42,71,.07),0 18px 40px rgba(14,42,71,.11);
  --vpe-font-body:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --vpe-font-head:'Montserrat',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  font-family:var(--vpe-font-body); color:var(--vpe-ink); line-height:1.58;}
.vpe-app,.vpe-app *{box-sizing:border-box}
.vpe-app h1,.vpe-app h2,.vpe-app h3,.vpe-app h4{font-family:var(--vpe-font-head);margin:0}
.vpe-app a{color:var(--vpe-blue);text-decoration:none}
.vpe-app .vpe-wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.vpe-app .vpe-icon{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:-.12em}
.vpe-app .vpe-hero{background:linear-gradient(180deg,var(--vpe-ivory),#fff);border-bottom:1px solid var(--vpe-line)}
.vpe-app .vpe-crumb{font-size:12.5px;color:var(--vpe-muted);padding:20px 0 0;display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.vpe-app .vpe-crumb a{color:var(--vpe-muted)}
.vpe-app .vpe-crumb a:hover{color:var(--vpe-blue)}
.vpe-app .vpe-crumb .s{color:#c2cdda}
.vpe-app .vpe-crumb b{color:var(--vpe-navy)}
.vpe-app .vpe-eyebrow{font:700 12px var(--vpe-font-head);letter-spacing:1.5px;text-transform:uppercase;color:var(--vpe-gold-d);margin-top:14px;display:flex;align-items:center;gap:7px}
.vpe-app .vpe-h1{font-size:33px;line-height:1.16;color:var(--vpe-navy);font-weight:800;letter-spacing:-.4px;margin:8px 0 10px}
.vpe-app .vpe-intro{font-size:15.5px;color:var(--vpe-muted);max-width:720px}
.vpe-app .vpe-search{display:flex;gap:10px;margin:20px 0 4px;max-width:760px}
.vpe-app .vpe-search .box{flex:1;display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid #d6e0ec;border-radius:13px;padding:0 14px;box-shadow:var(--vpe-sh)}
.vpe-app .vpe-search .box:focus-within{border-color:var(--vpe-blue);box-shadow:0 0 0 3px rgba(30,91,168,.12)}
.vpe-app .vpe-search .box svg{color:var(--vpe-blue);font-size:19px}
.vpe-app .vpe-search input{flex:1;border:0;outline:0;font:500 14.5px var(--vpe-font-body);padding:14px 0;background:transparent;color:var(--vpe-ink)}
.vpe-app .vpe-search .btn-go{font-family:var(--vpe-font-head)}
.vpe-app .vpe-sec[id]{scroll-margin-top:74px}
.vpe-app .vpe-qacts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px 0 22px;max-width:840px}
.vpe-app .vpe-qa{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--vpe-line);border-radius:13px;padding:12px 14px;cursor:pointer;box-shadow:var(--vpe-sh);transition:.15s}
.vpe-app .vpe-qa:hover{border-color:#c6d4e6;box-shadow:var(--vpe-sh-h);transform:translateY(-1px)}
.vpe-app .vpe-qa .qi{width:38px;height:38px;border-radius:10px;background:var(--vpe-panel);color:var(--vpe-blue-d);display:grid;place-items:center;flex:none;font-size:18px}
.vpe-app .vpe-qa .ql2{font:700 13.5px var(--vpe-font-head);color:var(--vpe-navy);display:block}
.vpe-app .vpe-qa .qs{font-size:11px;color:var(--vpe-muted)}
.vpe-app .vpe-topicgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.vpe-app .vpe-topicfilters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 15px}
.vpe-app .vpe-tfilter{font:600 12px var(--vpe-font-head);color:var(--vpe-navy);background:#fff;border:1px solid var(--vpe-line);border-radius:999px;padding:7px 13px;cursor:pointer;transition:.14s}
.vpe-app .vpe-tfilter:hover{border-color:#c6d4e6}
.vpe-app .vpe-tfilter.on{background:var(--vpe-navy);color:#fff;border-color:var(--vpe-navy)}
.vpe-app .vpe-tfilter.on svg{color:var(--vpe-gold)}
.vpe-app .vpe-tcard{display:flex;flex-direction:column;gap:0;background:#fff;border:1px solid var(--vpe-line);border-radius:14px;padding:15px 16px;cursor:pointer;box-shadow:var(--vpe-sh);transition:.15s}
.vpe-app .vpe-tcard:hover{border-color:var(--vpe-gold-line);box-shadow:var(--vpe-sh-h);transform:translateY(-2px)}
.vpe-app .vpe-tcard .th{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.vpe-app .vpe-tcard .tt{font:700 15px var(--vpe-font-head);color:var(--vpe-navy);line-height:1.25}
.vpe-app .vpe-tcard .tp{font-size:11.5px;color:var(--vpe-muted);margin-top:4px}
.vpe-app .vpe-tcard .tp .pp{font-weight:700;color:var(--vpe-blue-d)}
.vpe-app .vpe-tcard .tstat{display:flex;flex-wrap:wrap;gap:10px;margin-top:11px;padding-top:10px;border-top:1px dashed var(--vpe-line);font-size:12px}
.vpe-app .vpe-tcard .tstat b{font-family:var(--vpe-font-head)}
.vpe-app .vpe-tcard .tstat .sa{color:var(--vpe-navy)}
.vpe-app .vpe-tcard .tstat .sb{color:var(--vpe-ok)}
.vpe-app .vpe-tcard .tstat .sw{color:var(--vpe-amber)}
.vpe-app .vpe-tcard .tstat .sm{color:var(--vpe-muted)}
.vpe-app .vpe-tcard .tlast{font-size:11px;color:var(--vpe-muted);margin-top:8px;display:flex;align-items:center;gap:6px}
.vpe-app .vpe-tcard .tlast .vw{color:var(--vpe-blue);font-weight:700;font-family:var(--vpe-font-head)}
.vpe-app .vpe-tbadge{font:700 9px var(--vpe-font-head);letter-spacing:.4px;text-transform:uppercase;padding:4px 8px;border-radius:999px;white-space:nowrap;flex:none}
.vpe-app .vpe-tbadge.hf{background:var(--vpe-gold-bg);color:var(--vpe-gold-d);border:1px solid var(--vpe-gold-line)}
.vpe-app .vpe-tbadge.rec{background:var(--vpe-panel);color:var(--vpe-blue-d);border:1px solid #d8e4f3}
.vpe-app .vpe-tbadge.core{background:#e7ecf3;color:var(--vpe-navy);border:1px solid #d3dce8}
.vpe-app .vpe-tbadge.ready{background:var(--vpe-ok-bg);color:var(--vpe-ok);border:1px solid #cfe6d6}
.vpe-app .vpe-tbadge.soon{background:var(--vpe-amber-bg);color:var(--vpe-amber);border:1px solid #f0dca8}
.vpe-app .vpe-yeargrid{display:grid;grid-template-columns:repeat(6,1fr);gap:11px}
.vpe-app .vpe-ymini{background:#fff;border:1px solid var(--vpe-line);border-radius:12px;padding:12px 10px;text-align:center;cursor:pointer;box-shadow:var(--vpe-sh);transition:.15s}
.vpe-app .vpe-ymini:hover{border-color:#c6d4e6;box-shadow:var(--vpe-sh-h);transform:translateY(-2px)}
.vpe-app .vpe-ymini .yy{font:800 19px var(--vpe-font-head);color:var(--vpe-navy)}
.vpe-app .vpe-ymini .ym{font-size:10.5px;color:var(--vpe-muted);margin-top:1px}
@media(max-width:920px){
  .vpe-app .vpe-topicgrid{grid-template-columns:repeat(3,1fr)}
  .vpe-app .vpe-yeargrid{grid-template-columns:repeat(4,1fr)}
  .vpe-app .vpe-qacts{grid-template-columns:1fr;max-width:none}
}
@media(max-width:600px){
  .vpe-app .vpe-topicgrid{grid-template-columns:1fr}
  .vpe-app .vpe-yeargrid{grid-template-columns:repeat(3,1fr)}
}
.vpe-app .vpe-filterbar{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--vpe-line);box-shadow:0 4px 16px rgba(14,42,71,.05)}
.vpe-app .vpe-filterbar .vpe-wrap{display:flex;align-items:center;gap:10px;padding:11px 24px;flex-wrap:wrap}
.vpe-app .vpe-fl{font:700 11.5px var(--vpe-font-head);letter-spacing:.5px;text-transform:uppercase;color:var(--vpe-muted);display:flex;align-items:center;gap:6px}
.vpe-app .vpe-sel{position:relative}
.vpe-app .vpe-sel select{appearance:none;font:600 12.5px var(--vpe-font-body);color:var(--vpe-ink);background:var(--vpe-panel);border:1px solid #dbe5f1;border-radius:9px;padding:8px 30px 8px 12px;cursor:pointer}
.vpe-app .vpe-sel::after{content:"";position:absolute;right:11px;top:50%;width:7px;height:7px;border-right:2px solid var(--vpe-blue);border-bottom:2px solid var(--vpe-blue);transform:translateY(-65%) rotate(45deg);pointer-events:none}
.vpe-app .vpe-toggle{display:inline-flex;align-items:center;gap:7px;font:600 12.5px var(--vpe-font-body);background:#fff;border:1px solid #dbe5f1;border-radius:9px;padding:8px 13px;cursor:pointer;color:var(--vpe-ink)}
.vpe-app .vpe-toggle .sw{width:30px;height:17px;border-radius:999px;background:#d4dde8;position:relative;transition:.18s}
.vpe-app .vpe-toggle .sw::after{content:"";position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:#fff;transition:.18s;box-shadow:0 1px 2px rgba(0,0,0,.2)}
.vpe-app .vpe-toggle.on{border-color:var(--vpe-ok);color:var(--vpe-ok)}
.vpe-app .vpe-toggle.on .sw{background:var(--vpe-ok)}
.vpe-app .vpe-toggle.on .sw::after{left:15px}
.vpe-app .vpe-fcount{margin-left:auto;font-size:12.5px;color:var(--vpe-muted)}
.vpe-app .vpe-mobfilter{display:none}
.vpe-app .vpe-body{padding:26px 0 10px}
.vpe-app .vpe-sec{margin:30px 0 15px;display:flex;align-items:center;gap:13px}
.vpe-app .vpe-sec h2{font-size:19px;color:var(--vpe-navy);font-weight:800;display:flex;align-items:center;gap:9px}
.vpe-app .vpe-sec h2 svg{color:var(--vpe-gold-d);font-size:18px}
.vpe-app .vpe-sec .ln{flex:1;height:1px;background:linear-gradient(90deg,var(--vpe-line),transparent)}
.vpe-app .vpe-sec .more{font:600 12.5px var(--vpe-font-head)}
.vpe-app .vpe-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:6px}
.vpe-app .vpe-stat{background:#fff;border:1px solid var(--vpe-line);border-radius:var(--vpe-radius);padding:17px 18px;box-shadow:var(--vpe-sh);position:relative;overflow:hidden}
.vpe-app .vpe-stat::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--vpe-gold)}
.vpe-app .vpe-stat .n{font:800 27px var(--vpe-font-head);color:var(--vpe-navy);letter-spacing:-.5px}
.vpe-app .vpe-stat .l{font-size:12.5px;color:var(--vpe-muted);margin-top:2px}
.vpe-app .vpe-grid{display:grid;gap:15px}
.vpe-app .g4{grid-template-columns:repeat(4,1fr)}
.vpe-app .g2{grid-template-columns:repeat(2,1fr)}
.vpe-app .g3{grid-template-columns:repeat(3,1fr)}
.vpe-app .vpe-card{background:#fff;border:1px solid var(--vpe-line);border-radius:var(--vpe-radius);padding:17px 18px;box-shadow:var(--vpe-sh);transition:.16s;cursor:pointer;position:relative}
.vpe-app .vpe-card:hover{box-shadow:var(--vpe-sh-h);transform:translateY(-2px);border-color:#cdd9e8}
.vpe-app .vpe-ycard .yr{font:800 24px var(--vpe-font-head);color:var(--vpe-navy)}
.vpe-app .vpe-ycard .meta{font-size:12.5px;color:var(--vpe-muted);margin-top:3px}
.vpe-app .vpe-ycard .go{margin-top:12px;font:700 12.5px var(--vpe-font-head);color:var(--vpe-blue);display:flex;align-items:center;gap:5px}
.vpe-app .vpe-pcard{background:linear-gradient(135deg,#fff, var(--vpe-cream));padding:22px;border-radius:var(--vpe-radius)}
.vpe-app .vpe-pcard .pn{font:700 11.5px var(--vpe-font-head);letter-spacing:1.2px;text-transform:uppercase;color:var(--vpe-gold-d);display:flex;align-items:center;gap:7px}
.vpe-app .vpe-pcard h3{margin:8px 0 5px;font-size:19px;color:var(--vpe-navy)}
.vpe-app .vpe-pcard .meta{font-size:12.5px;color:var(--vpe-muted)}
.vpe-app .vpe-chip{display:inline-flex;align-items:center;gap:5px;background:var(--vpe-panel);color:var(--vpe-blue-d);border:1px solid #d8e4f3;border-radius:999px;padding:4px 11px;font:600 11.5px var(--vpe-font-body);line-height:1}
.vpe-app .vpe-chips{display:flex;flex-wrap:wrap;gap:7px}
.vpe-app .vpe-chip.plain{background:#f2f4f7;color:var(--vpe-muted);border-color:#e5e9ef}
.vpe-app .vpe-chip.gold{background:var(--vpe-gold-bg);color:var(--vpe-gold-d);border-color:var(--vpe-gold-line);font-family:var(--vpe-font-head);font-weight:700}
.vpe-app .vpe-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 12px;font:700 11.5px var(--vpe-font-head)}
.vpe-app .vpe-badge::before{content:"";width:7px;height:7px;border-radius:50%}
.vpe-app .vpe-badge.ok{background:var(--vpe-ok-bg);color:var(--vpe-ok)}
.vpe-app .vpe-badge.ok::before{background:var(--vpe-ok)}
.vpe-app .vpe-badge.soon{background:var(--vpe-amber-bg);color:var(--vpe-amber)}
.vpe-app .vpe-badge.soon::before{background:var(--vpe-amber)}
.vpe-app .vpe-badge.note{background:var(--vpe-panel);color:var(--vpe-blue-d)}
.vpe-app .vpe-badge.note::before{background:var(--vpe-blue)}
.vpe-app .vpe-btn{display:inline-flex;align-items:center;gap:7px;border-radius:10px;padding:9px 15px;font:700 12.5px var(--vpe-font-head);cursor:pointer;border:1px solid transparent;transition:.15s}
.vpe-app .vpe-btn.primary{background:var(--vpe-blue);color:#fff}
.vpe-app .vpe-btn.primary:hover{background:var(--vpe-blue-d)}
.vpe-app .vpe-btn.gold{background:var(--vpe-gold);color:#fff}
.vpe-app .vpe-btn.gold:hover{background:var(--vpe-gold-d)}
.vpe-app .vpe-btn.ghost{background:#fff;color:var(--vpe-blue);border-color:#cfdcec}
.vpe-app .vpe-btn.ghost:hover{background:var(--vpe-panel)}
.vpe-app .vpe-qcard{background:#fff;border:1px solid var(--vpe-line);border-radius:var(--vpe-radius);box-shadow:var(--vpe-sh);margin-bottom:15px;overflow:hidden;transition:.16s}
.vpe-app .vpe-qcard:hover{box-shadow:var(--vpe-sh-h);border-color:#cdd9e8}
.vpe-app .vpe-qtop{display:flex;align-items:center;gap:13px;padding:14px 18px;background:linear-gradient(180deg,#fbfcfe,#f5f8fc);border-bottom:1px solid var(--vpe-line)}
.vpe-app .vpe-qnum{flex:none;width:46px;height:46px;border-radius:12px;background:var(--vpe-navy);color:#fff;display:grid;place-items:center;font:800 16px var(--vpe-font-head);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.vpe-app .vpe-qtop .mk{font:700 12px var(--vpe-font-head);color:var(--vpe-gold-d);background:var(--vpe-gold-bg);border:1px solid var(--vpe-gold-line);border-radius:8px;padding:5px 10px}
.vpe-app .vpe-qtop .wl{font-size:12px;color:var(--vpe-muted)}
.vpe-app .vpe-qtop .vpe-badge{margin-left:auto}
.vpe-app .vpe-qmain{padding:15px 18px 16px}
.vpe-app .vpe-qtext{font-size:15.5px;color:var(--vpe-ink);font-weight:500;line-height:1.5}
.vpe-app .vpe-syll{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--vpe-muted);margin-top:11px;background:var(--vpe-ivory);border:1px dashed #e3dcc6;border-radius:9px;padding:7px 11px}
.vpe-app .vpe-syll svg{color:var(--vpe-gold-d)}
.vpe-app .vpe-syll b{color:var(--vpe-navy);font-weight:600}
.vpe-app .vpe-qfoot{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:14px}
.vpe-app .vpe-split{display:grid;grid-template-columns:1fr 320px;gap:30px;align-items:start;padding:24px 0 10px}
.vpe-app .vpe-main{min-width:0}
.vpe-app .vpe-side{position:sticky;top:74px;display:flex;flex-direction:column;gap:16px}
.vpe-app .vpe-panel{background:#fff;border:1px solid var(--vpe-line);border-radius:var(--vpe-radius);padding:17px;box-shadow:var(--vpe-sh)}
.vpe-app .vpe-panel h4{font:700 12px var(--vpe-font-head);text-transform:uppercase;letter-spacing:.6px;color:var(--vpe-navy);margin-bottom:12px;display:flex;align-items:center;gap:8px}
.vpe-app .vpe-toc{display:flex;flex-direction:column;gap:2px}
.vpe-app .vpe-toc a{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--vpe-muted);padding:7px 9px;border-radius:8px;border-left:2px solid transparent}
.vpe-app .vpe-toc a .d{width:7px;height:7px;border-radius:50%;background:#cdd7e3;flex:none}
.vpe-app .vpe-toc a.active{color:var(--vpe-navy);background:var(--vpe-panel);border-left-color:var(--vpe-gold);font-weight:600}
.vpe-app .vpe-toc a.active .d{background:var(--vpe-gold)}
.vpe-app .vpe-linklist{display:flex;flex-direction:column;gap:9px}
.vpe-app .vpe-linklist a{font-size:13.5px;display:flex;gap:8px;align-items:center;color:var(--vpe-navy)}
.vpe-app .vpe-linklist a svg{color:var(--vpe-blue);font-size:14px}
.vpe-app .vpe-ctapanel{background:linear-gradient(140deg,var(--vpe-navy),var(--vpe-navy-2));border:none;color:#e7eff8;position:relative;overflow:hidden}
.vpe-app .vpe-ctapanel::after{content:"";position:absolute;right:-30px;top:-30px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(184,132,43,.45),transparent 70%)}
.vpe-app .vpe-ctapanel h4{color:var(--vpe-gold);position:relative}
.vpe-app .vpe-ctapanel p{font-size:13px;color:#cfddf0;margin:0 0 13px;position:relative}
.vpe-app .vpe-qhero{background:linear-gradient(180deg,var(--vpe-ivory),#fff);border-bottom:1px solid var(--vpe-line)}
.vpe-app .vpe-metarow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 2px}
.vpe-app .vpe-h1-q{font-size:27px;line-height:1.22;color:var(--vpe-navy);font-weight:800;margin:10px 0 6px;letter-spacing:-.3px}
.vpe-app .vpe-qbox{background:#fff;border:1px solid #e2dcc8;border-left:5px solid var(--vpe-gold);border-radius:var(--vpe-radius);padding:18px 20px;margin:4px 0 20px;box-shadow:var(--vpe-sh)}
.vpe-app .vpe-qbox .ql{font:700 11px var(--vpe-font-head);letter-spacing:1px;text-transform:uppercase;color:var(--vpe-gold-d);margin-bottom:8px}
.vpe-app .vpe-qbox p{margin:0;font-size:17.5px;color:var(--vpe-navy);font-weight:600;line-height:1.5}
.vpe-app .vpe-answercard{background:#fff;border:1px solid var(--vpe-line);border-radius:var(--vpe-radius);box-shadow:var(--vpe-sh);overflow:hidden;margin-bottom:18px}
.vpe-app .vpe-answerhd{display:flex;align-items:center;gap:11px;padding:15px 22px;background:linear-gradient(135deg,var(--vpe-navy),var(--vpe-navy-2));color:#fff}
.vpe-app .vpe-answerhd .ic{width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.12);display:grid;place-items:center;color:var(--vpe-gold)}
.vpe-app .vpe-answerhd h3{font-size:17px}
.vpe-app .vpe-answerhd .sub{font-size:12px;color:#bcd2ee;margin-left:auto;font-weight:500}
.vpe-app .vpe-answerbody{padding:8px 24px 22px}
.vpe-app .vpe-answerbody h4{font:700 13px var(--vpe-font-head);text-transform:uppercase;letter-spacing:.6px;color:var(--vpe-blue-d);margin:18px 0 6px;padding-top:4px}
.vpe-app .vpe-answerbody p{font-size:15px;color:#33414f;margin:0 0 11px;line-height:1.62}
.vpe-app .vpe-mapnote{display:flex;gap:10px;align-items:flex-start;background:var(--vpe-cream);border:1px dashed #e0d6bb;border-radius:11px;padding:11px 14px;font-size:12.5px;color:var(--vpe-gold-d)}
.vpe-app .vpe-mapnote svg{flex:none;margin-top:1px}
.vpe-app .vpe-anchor{scroll-margin-top:84px}
.vpe-app .vpe-blocklabel{font:700 11.5px var(--vpe-font-head);letter-spacing:1px;text-transform:uppercase;color:var(--vpe-muted);margin:0 0 10px;display:flex;align-items:center;gap:8px}
.vpe-app .vpe-callout{border-radius:var(--vpe-radius);padding:17px 19px;margin:0 0 16px;border:1px solid transparent}
.vpe-app .vpe-callout h3{font-size:15px;margin:0 0 10px;display:flex;align-items:center;gap:10px}
.vpe-app .vpe-callout h3 .ci{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;flex:none}
.vpe-app .vpe-callout ul{margin:0;padding-left:19px}
.vpe-app .vpe-callout li{margin:5px 0;font-size:14px}
.vpe-app .vpe-callout p{margin:0;font-size:14.5px}
.vpe-app .c-demand{background:var(--vpe-ok-bg);border-color:#cfe6d6}
.vpe-app .c-demand h3{color:var(--vpe-ok)}
.vpe-app .c-demand .ci{background:#d3ead9;color:var(--vpe-ok)}
.vpe-app .c-frame{background:var(--vpe-panel);border-color:#d6e3f4}
.vpe-app .c-frame h3{color:var(--vpe-blue-d)}
.vpe-app .c-frame .ci{background:#d6e4f7;color:var(--vpe-blue-d)}
.vpe-app .c-insight{background:var(--vpe-gold-bg);border-color:var(--vpe-gold-line);border-left:5px solid var(--vpe-gold)}
.vpe-app .c-insight h3{color:var(--vpe-gold-d)}
.vpe-app .c-insight .ci{background:#f1e1ba;color:var(--vpe-gold-d)}
.vpe-app .c-insight p{color:#6b551f;font-style:italic}
.vpe-app .c-mistake{background:var(--vpe-red-bg);border-color:#f0d3cd}
.vpe-app .c-mistake h3{color:var(--vpe-red)}
.vpe-app .c-mistake .ci{background:#f5d6cf;color:var(--vpe-red)}
.vpe-app .vpe-related{display:grid;gap:10px}
.vpe-app .vpe-rel{display:flex;gap:13px;align-items:center;background:#fff;border:1px solid var(--vpe-line);border-radius:11px;padding:12px 14px;box-shadow:var(--vpe-sh);cursor:pointer;transition:.15s}
.vpe-app .vpe-rel:hover{border-color:#cdd9e8;box-shadow:var(--vpe-sh-h)}
.vpe-app .vpe-rel .y{flex:none;font:800 13px var(--vpe-font-head);color:var(--vpe-gold-d);background:var(--vpe-gold-bg);border:1px solid var(--vpe-gold-line);border-radius:8px;padding:5px 9px}
.vpe-app .vpe-rel .t{font-size:13.5px;color:var(--vpe-ink)}
.vpe-app .vpe-guidance{background:linear-gradient(125deg,var(--vpe-navy),var(--vpe-navy-2));color:#e9f1fb;border-radius:20px;padding:26px 28px;display:flex;gap:20px;align-items:flex-start;box-shadow:var(--vpe-sh-h);position:relative;overflow:hidden}
.vpe-app .vpe-guidance::after{content:"";position:absolute;right:-40px;bottom:-50px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(184,132,43,.35),transparent 68%)}
.vpe-app .vpe-guidance .av{flex:none;width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,var(--vpe-gold),var(--vpe-gold-d));display:grid;place-items:center;font:800 19px var(--vpe-font-head);color:#fff}
.vpe-app .vpe-guidance .gl{font:700 11px var(--vpe-font-head);letter-spacing:1.4px;text-transform:uppercase;color:var(--vpe-gold)}
.vpe-app .vpe-guidance .gt{font-size:16.5px;line-height:1.55;margin-top:6px;font-style:italic;position:relative}
.vpe-app .vpe-guidance .gn{margin-top:9px;font-size:12.5px;color:#bcd2ee;font-weight:600}
.vpe-app .vpe-latest{display:grid;gap:11px}
.vpe-app .vpe-litem{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--vpe-line);border-radius:13px;padding:13px 15px;box-shadow:var(--vpe-sh);cursor:pointer;transition:.15s}
.vpe-app .vpe-litem:hover{border-color:#cdd9e8;box-shadow:var(--vpe-sh-h)}
.vpe-app .vpe-litem .lic{flex:none;width:40px;height:40px;border-radius:10px;background:var(--vpe-panel);color:var(--vpe-blue-d);display:grid;place-items:center;font:800 12px var(--vpe-font-head)}
.vpe-app .vpe-litem .lt{font-size:14px;color:var(--vpe-ink);font-weight:500}
.vpe-app .vpe-litem .lm{font-size:12px;color:var(--vpe-muted);margin-top:1px}
.vpe-app .vpe-cta{background:linear-gradient(135deg,#fff,var(--vpe-cream));border:1px solid var(--vpe-gold-line);border-radius:20px;padding:24px 26px;margin:32px 0 12px;display:flex;gap:20px;align-items:center;flex-wrap:wrap;box-shadow:var(--vpe-sh)}
.vpe-app .vpe-cta .ct{flex:1;min-width:240px}
.vpe-app .vpe-cta h3{font-size:20px;color:var(--vpe-navy);margin-bottom:4px}
.vpe-app .vpe-cta p{margin:0;color:var(--vpe-muted);font-size:14px}
.vpe-app .vpe-cta .acts{display:flex;gap:10px;flex-wrap:wrap}
.vpe-app .vpe-overview{background:var(--vpe-panel);border:1px solid var(--vpe-panel-2);border-radius:var(--vpe-radius);padding:18px 20px;margin-top:8px}
.vpe-app .vpe-overview p{margin:0;color:#37485a;font-size:14.5px}
.vpe-app .vpe-prose p{font-size:14.5px;color:#3a4756;margin:0 0 12px}
.vpe-app .vpe-prose h3{font-size:16.5px;color:var(--vpe-navy);margin:22px 0 8px;display:flex;align-items:center;gap:8px}
.vpe-app .vpe-prose h3 svg{color:var(--vpe-gold-d);font-size:16px}
.vpe-app .vpe-footnote{margin-top:34px;padding:18px 0;border-top:1px solid var(--vpe-line);text-align:center;color:var(--vpe-muted);font-size:12.5px}
@media(max-width:920px){
  .vpe-app .vpe-stats{grid-template-columns:repeat(2,1fr)}
  .vpe-app .g4,.vpe-app .g3{grid-template-columns:repeat(2,1fr)}
  .vpe-app .vpe-split{grid-template-columns:1fr}
  .vpe-app .vpe-side{position:static}
  .vpe-app .vpe-h1{font-size:27px}
}
@media(max-width:600px){
  .vpe-app .g4,.vpe-app .g2,.vpe-app .g3{grid-template-columns:1fr}
  .vpe-app .vpe-search{flex-direction:column}
  .vpe-app .vpe-search .btn-go{justify-content:center}
  .vpe-app .vpe-filterbar .vpe-wrap{flex-wrap:nowrap;overflow-x:auto;gap:8px}
  .vpe-app .vpe-mobfilter{display:inline-flex}
  .vpe-app .vpe-qnum{width:40px;height:40px}
  .vpe-app .vpe-cta{flex-direction:column;align-items:flex-start}
}
.vpe-app .vpe-qa,.vpe-app .vpe-ymini,.vpe-app .vpe-pcard,.vpe-app .vpe-tcard,.vpe-app .vpe-qcard,.vpe-app .vpe-litem{position:relative;overflow:hidden;
  transition:transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease;}
.vpe-app .vpe-qa::after,.vpe-app .vpe-ymini::after,.vpe-app .vpe-pcard::after,.vpe-app .vpe-tcard::after,.vpe-app .vpe-qcard::after,.vpe-app .vpe-litem::after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:3px;border-radius:3px 3px 0 0;
  background:linear-gradient(90deg,rgba(30,91,168,.12),var(--vpe-blue),rgba(30,91,168,.12));
  box-shadow:0 0 10px rgba(30,91,168,.28);
  opacity:.35;transition:opacity 180ms ease, height 180ms ease;pointer-events:none;}
.vpe-app .vpe-qa:hover::after,.vpe-app .vpe-ymini:hover::after,.vpe-app .vpe-pcard:hover::after,.vpe-app .vpe-tcard:hover::after,.vpe-app .vpe-qcard:hover::after,.vpe-app .vpe-litem:hover::after{opacity:1;height:4px}
.vpe-app .vpe-qa:hover,.vpe-app .vpe-pcard:hover,.vpe-app .vpe-tcard:hover,.vpe-app .vpe-litem:hover{transform:translateY(-2px);border-color:var(--vpe-blue);
  background:linear-gradient(180deg,#ffffff,#F3F8FE);
  box-shadow:0 3px 8px rgba(30,91,168,.10), 0 16px 34px rgba(30,91,168,.16);}
.vpe-app .vpe-ymini:hover{transform:translateY(-2px);border-color:var(--vpe-blue);
  box-shadow:0 3px 8px rgba(30,91,168,.10), 0 14px 30px rgba(30,91,168,.14);}
.vpe-app .vpe-qcard:hover{transform:translateY(-2px);border-color:var(--vpe-blue);
  box-shadow:0 2px 6px rgba(30,91,168,.08), 0 12px 26px rgba(30,91,168,.12);}
.vpe-app .vpe-qa .qi,.vpe-app .vpe-litem .lic{transition:background 180ms ease,color 180ms ease}
.vpe-app .vpe-qa:hover .qi,.vpe-app .vpe-litem:hover .lic{background:var(--vpe-navy);color:#fff}
.vpe-app .vpe-panel{position:relative;overflow:hidden;transition:box-shadow 180ms ease, transform 180ms ease}
.vpe-app .vpe-panel:not(.vpe-ctapanel)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,transparent,rgba(30,91,168,.5),transparent);opacity:.45;transition:opacity 180ms ease}
.vpe-app .vpe-panel:hover{box-shadow:var(--vpe-sh-h)}
.vpe-app .vpe-panel:not(.vpe-ctapanel):hover::after{opacity:1}
@media(max-width:600px){
  .vpe-app .vpe-qa:hover,.vpe-app .vpe-pcard:hover,.vpe-app .vpe-tcard:hover,.vpe-app .vpe-litem:hover,.vpe-app .vpe-qcard:hover,.vpe-app .vpe-ymini:hover{transform:none;box-shadow:var(--vpe-sh);background:#fff;}
  .vpe-app .vpe-qa::after,.vpe-app .vpe-ymini::after,.vpe-app .vpe-pcard::after,.vpe-app .vpe-tcard::after,.vpe-app .vpe-qcard::after,.vpe-app .vpe-litem::after{opacity:.5;box-shadow:none}
}
.vpe-app .vpe-h1{font-size:31px}
@media(max-width:900px){
  .vpe-app .vpe-h1{font-size:26px}
}
@media(max-width:600px){
  .vpe-app .vpe-h1{font-size:22px;line-height:1.22}
}
.vpe-app .vpe-resourcehead p{max-width:none}
@media(min-width:1000px){
  .vpe-app .vpe-resourcehead p{white-space:nowrap}
}
.vpe-app .vpe-truststrip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:4px 0 2px}
.vpe-app .vpe-trustcard{display:flex;align-items:center;gap:11px;background:linear-gradient(180deg,#fff,var(--vpe-cream));border:1px solid var(--vpe-gold-line);border-radius:14px;padding:11px 13px;box-shadow:var(--vpe-sh);transition:transform 180ms ease,box-shadow 180ms ease}
.vpe-app .vpe-trustcard:hover{transform:translateY(-2px);box-shadow:var(--vpe-sh-h)}
.vpe-app .vpe-trustcard .ic{width:38px;height:38px;border-radius:11px;background:var(--vpe-gold-bg);color:var(--vpe-gold-d);display:grid;place-items:center;flex:none;font-size:17px}
.vpe-app .vpe-trustcard .t{font:700 12.5px var(--vpe-font-head);color:var(--vpe-navy);display:block;line-height:1.22}
.vpe-app .vpe-trustcard .d{font-size:11px;color:var(--vpe-muted)}
.vpe-app .vpe-resourceband{position:relative;overflow:hidden;margin:30px 0 8px;border-radius:22px;padding:24px 22px;background:linear-gradient(150deg,#0E2A47 0%,#143b63 58%,#0E2A47 100%);box-shadow:0 18px 44px rgba(14,42,71,.22)}
.vpe-app .vpe-resourceband::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(184,132,43,.26),transparent 68%);pointer-events:none}
.vpe-app .vpe-resourceband::before{content:"";position:absolute;left:-46px;bottom:-46px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(30,91,168,.35),transparent 70%);pointer-events:none}
.vpe-app .vpe-resourcehead{position:relative;margin-bottom:16px}
.vpe-app .vpe-resourcehead h2{color:#fff;font-size:20px;display:flex;align-items:center;gap:9px}
.vpe-app .vpe-resourcehead h2 svg{color:var(--vpe-gold)}
.vpe-app .vpe-resourcehead p{color:#b9cde6;font-size:13.5px;margin:6px 0 0}
.vpe-app .vpe-resrow{position:relative;margin-top:20px}
.vpe-app .vpe-rowhead{display:flex;align-items:center;gap:10px;margin-bottom:11px}
.vpe-app .vpe-rowhead h3{color:#eaf1fb;font-size:14.5px;display:flex;align-items:center;gap:8px}
.vpe-app .vpe-rowhead h3 svg{color:var(--vpe-gold)}
.vpe-app .vpe-rowlink{margin-left:auto;color:#9fc0e8;font:700 12px var(--vpe-font-head);display:inline-flex;align-items:center;gap:5px;transition:color 160ms}
.vpe-app .vpe-rowlink:hover{color:#fff}
.vpe-app .vpe-rowlink svg{font-size:13px}
.vpe-app .vpe-blogcard,.vpe-app .vpe-vcard,.vpe-app .vpe-utilcard{position:relative;overflow:hidden;border-radius:14px;background:#fff;border:1px solid rgba(255,255,255,.14);box-shadow:0 6px 18px rgba(0,0,0,.16);transition:transform 180ms ease,box-shadow 180ms ease}
.vpe-app .vpe-blogcard::after,.vpe-app .vpe-vcard::after,.vpe-app .vpe-utilcard::after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:linear-gradient(90deg,rgba(30,91,168,.12),var(--vpe-blue),rgba(30,91,168,.12));box-shadow:0 0 10px rgba(30,91,168,.30);opacity:.5;transition:opacity 180ms ease,height 180ms ease;pointer-events:none}
.vpe-app .vpe-blogcard:hover,.vpe-app .vpe-vcard:hover,.vpe-app .vpe-utilcard:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.24)}
.vpe-app .vpe-blogcard:hover::after,.vpe-app .vpe-vcard:hover::after,.vpe-app .vpe-utilcard:hover::after{opacity:1;height:4px}
.vpe-app .vpe-thi{position:absolute;right:10px;bottom:8px;color:rgba(255,255,255,.5);font-size:22px}
.vpe-app .vpe-blogfilters{display:flex;gap:7px;overflow-x:auto;padding-bottom:3px;margin-bottom:12px;-webkit-overflow-scrolling:touch}
.vpe-app .vpe-blogfilters::-webkit-scrollbar{display:none}
.vpe-app .vpe-bchip{white-space:nowrap;font:600 11.5px var(--vpe-font-head);color:#cfe0f5;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:6px 12px;cursor:pointer;transition:background 160ms,color 160ms,border-color 160ms}
.vpe-app .vpe-bchip:hover{background:rgba(255,255,255,.16)}
.vpe-app .vpe-bchip.on{background:#fff;color:var(--vpe-navy);border-color:#fff}
.vpe-app .vpe-bloggrid,.vpe-app .vpe-videogrid,.vpe-app .vpe-utilgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.vpe-app .vpe-blogcard{display:flex;flex-direction:column}
.vpe-app .vpe-blogthumb{position:relative;height:92px;display:block}
.vpe-app .vpe-blogthumb .cat{position:absolute;left:10px;top:10px;font:700 9.5px var(--vpe-font-head);letter-spacing:.4px;text-transform:uppercase;color:#fff;background:rgba(14,42,71,.55);border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:3px 9px}
.vpe-app .vpe-th-a{background:linear-gradient(135deg,#1E5BA8,#0E2A47)}
.vpe-app .vpe-th-b{background:linear-gradient(135deg,#2c7a55,#123f2c)}
.vpe-app .vpe-th-c{background:linear-gradient(135deg,#8a5a1f,#4a3210)}
.vpe-app .vpe-blogbody{padding:12px 14px 14px;display:flex;flex-direction:column;flex:1}
.vpe-app .vpe-blogcard h4{color:var(--vpe-navy);font-size:13.5px;margin:0 0 5px;line-height:1.32}
.vpe-app .vpe-blogcard p{color:var(--vpe-muted);font-size:11.5px;margin:0 0 10px;flex:1;line-height:1.45}
.vpe-app .vpe-blogcard a,.vpe-app .vpe-vcard a,.vpe-app .vpe-utilcard a{font:700 11.5px var(--vpe-font-head);color:var(--vpe-blue);display:inline-flex;align-items:center;gap:6px}
.vpe-app .vpe-blogcard a svg,.vpe-app .vpe-vcard a svg,.vpe-app .vpe-utilcard a svg{font-size:13px}
.vpe-app .vpe-vcard{display:flex;flex-direction:column}
.vpe-app .vpe-vthumb{position:relative;height:96px;display:grid;place-items:center;background:linear-gradient(135deg,#143b63,#0E2A47);overflow:hidden}
.vpe-app .vpe-vthumb::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 62% 42%,rgba(184,132,43,.28),transparent 60%)}
.vpe-app .vpe-vthumb .play{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.94);display:grid;place-items:center;color:var(--vpe-navy);position:relative;z-index:1;font-size:19px}
.vpe-app .vpe-vthumb .vtag{position:absolute;left:9px;top:8px;font:700 9px var(--vpe-font-head);letter-spacing:.5px;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.35);border-radius:999px;padding:2px 8px;z-index:1}
.vpe-app .vpe-vcard .vbody{padding:12px 14px 14px;display:flex;flex-direction:column;flex:1}
.vpe-app .vpe-vcard h4{color:var(--vpe-navy);font-size:13.5px;margin:0 0 5px;line-height:1.32}
.vpe-app .vpe-vcard p{color:var(--vpe-muted);font-size:11.5px;margin:0 0 10px;flex:1;line-height:1.45}
.vpe-app .vpe-utilcard{padding:14px 15px;display:flex;flex-direction:column}
.vpe-app .vpe-utilcard .ic{width:36px;height:36px;border-radius:10px;background:var(--vpe-panel);color:var(--vpe-blue-d);display:grid;place-items:center;margin-bottom:9px;font-size:17px}
.vpe-app .vpe-utilcard h4{color:var(--vpe-navy);font-size:13.5px;margin:0 0 4px}
.vpe-app .vpe-utilcard p{color:var(--vpe-muted);font-size:11.5px;margin:0 0 10px;flex:1;line-height:1.45}
.vpe-app .vpe-batchband{position:relative;overflow:hidden;margin:22px 0 8px;border-radius:22px;padding:22px;background:linear-gradient(160deg,#FBFAF5,#F4EEDF);border:1px solid var(--vpe-gold-line);box-shadow:var(--vpe-sh)}
.vpe-app .vpe-batchhead{margin-bottom:14px}
.vpe-app .vpe-batchhead h2{color:var(--vpe-navy);font-size:19px;display:flex;align-items:center;gap:9px}
.vpe-app .vpe-batchhead h2 svg{color:var(--vpe-gold-d)}
.vpe-app .vpe-batchhead p{color:var(--vpe-muted);font-size:13px;margin:6px 0 0}
.vpe-app .vpe-batchgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.vpe-app .vpe-batchcard{position:relative;overflow:hidden;display:flex;flex-direction:column;background:#fff;border:1px solid #eadfc4;border-radius:14px;box-shadow:var(--vpe-sh);transition:transform 180ms ease,box-shadow 180ms ease}
.vpe-app .vpe-batchcard::after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:linear-gradient(90deg,rgba(184,132,43,.2),var(--vpe-gold),rgba(184,132,43,.2));opacity:.5;transition:opacity 180ms ease,height 180ms ease}
.vpe-app .vpe-batchcard:hover{transform:translateY(-2px);box-shadow:var(--vpe-sh-h)}
.vpe-app .vpe-batchcard:hover::after{opacity:1;height:4px}
.vpe-app .vpe-batchthumb{position:relative;height:100px;display:grid;place-items:center;color:rgba(255,255,255,.9);font:700 11px var(--vpe-font-head);letter-spacing:.6px;text-transform:uppercase}
.vpe-app .vpe-batchbody{padding:12px 15px 14px;display:flex;flex-direction:column;flex:1}
.vpe-app .vpe-batchcard .ctag{align-self:flex-start;font:700 9px var(--vpe-font-head);letter-spacing:.4px;text-transform:uppercase;color:var(--vpe-gold-d);background:var(--vpe-gold-bg);border:1px solid var(--vpe-gold-line);border-radius:999px;padding:3px 8px;margin-bottom:8px}
.vpe-app .vpe-batchcard h4{color:var(--vpe-navy);font-size:14px;margin:0 0 5px}
.vpe-app .vpe-batchcard p{color:var(--vpe-muted);font-size:11.5px;margin:0 0 9px;line-height:1.45}
.vpe-app .vpe-batchmeta{display:flex;flex-wrap:wrap;gap:5px 10px;margin-bottom:11px;font-size:10.5px;color:var(--vpe-muted)}
.vpe-app .vpe-batchmeta span{background:var(--vpe-panel);border:1px solid var(--vpe-line);border-radius:6px;padding:2px 7px}
.vpe-app .vpe-batchcard a{font:700 11.5px var(--vpe-font-head);color:var(--vpe-blue);display:inline-flex;align-items:center;gap:6px;margin-top:auto}
.vpe-app .vpe-batchcard a svg{font-size:13px}
.vpe-app .vpe-storyband{margin:22px 0 8px}
.vpe-app .vpe-storyhead h2{color:var(--vpe-navy);font-size:19px;display:flex;align-items:center;gap:9px}
.vpe-app .vpe-storyhead h2 svg{color:var(--vpe-gold-d)}
.vpe-app .vpe-storyhead p{color:var(--vpe-muted);font-size:13px;margin:6px 0 12px}
.vpe-app .vpe-storyrow{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.vpe-app .vpe-storycard{position:relative;overflow:hidden;display:flex;flex-direction:column;background:#fff;border:1px solid var(--vpe-line);border-radius:14px;box-shadow:var(--vpe-sh);transition:transform 180ms ease,box-shadow 180ms ease}
.vpe-app .vpe-storycard:hover{transform:translateY(-2px);box-shadow:var(--vpe-sh-h)}
.vpe-app .vpe-storyphoto{position:relative;height:104px;display:grid;place-items:center;color:rgba(255,255,255,.85)}
.vpe-app .vpe-storyphoto .pic{font-size:34px;opacity:.85}
.vpe-app .vpe-storyphoto .init{position:absolute;left:10px;bottom:8px;font:700 11px var(--vpe-font-head);color:#fff;background:rgba(14,42,71,.5);border:1px solid rgba(255,255,255,.3);border-radius:8px;padding:2px 8px}
.vpe-app .vpe-sp-a{background:linear-gradient(135deg,#1E5BA8,#0E2A47)}
.vpe-app .vpe-sp-b{background:linear-gradient(135deg,#2c7a55,#123f2c)}
.vpe-app .vpe-sp-c{background:linear-gradient(135deg,#7a4d9e,#2c1b45)}
.vpe-app .vpe-storybody{padding:12px 14px 14px;display:flex;flex-direction:column;flex:1}
.vpe-app .vpe-storycard .nm{font:700 12.5px var(--vpe-font-head);color:var(--vpe-navy)}
.vpe-app .vpe-storycard .tg{font-size:10px;color:var(--vpe-blue-d);background:var(--vpe-panel);border-radius:999px;padding:2px 7px;margin:4px 0 8px;align-self:flex-start}
.vpe-app .vpe-storycard q{font-size:12px;color:#3a4756;font-style:italic;line-height:1.5;flex:1}
.vpe-app .vpe-storycard q::before,.vpe-app .vpe-storycard q::after{content:""}
.vpe-app .vpe-storycard .tstory{font:700 11.5px var(--vpe-font-head);color:var(--vpe-blue);display:inline-flex;align-items:center;gap:6px;margin-top:10px}
.vpe-app .vpe-storycard .tstory svg{font-size:13px}
@media(max-width:900px){
  .vpe-app .vpe-bloggrid,.vpe-app .vpe-videogrid,.vpe-app .vpe-utilgrid,.vpe-app .vpe-batchgrid{grid-template-columns:1fr 1fr}
  .vpe-app .vpe-storyrow{grid-template-columns:repeat(2,1fr)}
  .vpe-app .vpe-truststrip{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .vpe-app .vpe-resourceband,.vpe-app .vpe-batchband{padding:20px 15px;border-radius:18px}
  .vpe-app .vpe-bloggrid,.vpe-app .vpe-videogrid,.vpe-app .vpe-utilgrid,.vpe-app .vpe-batchgrid,.vpe-app .vpe-storyrow{display:flex;grid-template-columns:none;gap:12px;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;margin:0 -15px;padding:0 15px 6px}
  .vpe-app .vpe-bloggrid::-webkit-scrollbar,.vpe-app .vpe-videogrid::-webkit-scrollbar,.vpe-app .vpe-utilgrid::-webkit-scrollbar,.vpe-app .vpe-batchgrid::-webkit-scrollbar,.vpe-app .vpe-storyrow::-webkit-scrollbar{display:none}
  .vpe-app .vpe-blogcard{flex:0 0 265px;scroll-snap-align:start}
  .vpe-app .vpe-vcard{flex:0 0 258px;scroll-snap-align:start}
  .vpe-app .vpe-utilcard{flex:0 0 232px;scroll-snap-align:start}
  .vpe-app .vpe-batchcard{flex:0 0 280px;scroll-snap-align:start}
  .vpe-app .vpe-storycard{flex:0 0 222px;scroll-snap-align:start}
  .vpe-app .vpe-storyrow{margin-left:0;margin-right:0;padding-left:0;padding-right:0}
  .vpe-app .vpe-blogcard:hover,.vpe-app .vpe-vcard:hover,.vpe-app .vpe-utilcard:hover,.vpe-app .vpe-batchcard:hover,.vpe-app .vpe-storycard:hover,.vpe-app .vpe-trustcard:hover{transform:none}
}
.vpe-app a:focus-visible,.vpe-app button:focus-visible,.vpe-app [data-go]:focus-visible,.vpe-app .vpe-btn:focus-visible,.vpe-app .vpe-fchip:focus-visible,.vpe-app .vpe-tfilter:focus-visible,.vpe-app .vpe-card:focus-visible,.vpe-app .vpe-tcard:focus-visible,.vpe-app .vpe-qcard:focus-visible,.vpe-app .vpe-qa:focus-visible,.vpe-app .vpe-ymini:focus-visible,.vpe-app .vpe-blogcard:focus-visible,.vpe-app .vpe-vcard:focus-visible,.vpe-app .vpe-utilcard:focus-visible,.vpe-app .vpe-batchcard:focus-visible,.vpe-app .vpe-storycard:focus-visible,.vpe-app .vpe-trustcard:focus-visible{outline:2px solid var(--vpe-blue);outline-offset:2px;border-radius:10px}
.vpe-app .vpe-bchip:focus-visible,.vpe-app .vpe-rowlink:focus-visible{outline:2px solid #9fc0e8;outline-offset:2px}


/* ============================================================
   v0.5.2 - Rich Answer Editor
   Scoped rich-content styles for the five wp_editor fields.
   Scope is limited to .vpe-callout (How to Approach, Answer
   Framework, VAID Insight, Common Mistakes) and .vpe-answerbody
   (Model Answer). Nothing global is affected.
   ============================================================ */
.vpe-callout table,
.vpe-answerbody table{width:100%;max-width:100%;border-collapse:collapse;margin:14px 0;font-size:.95em}
.vpe-callout th,.vpe-callout td,
.vpe-answerbody th,.vpe-answerbody td{border:1px solid #d8dfe9;padding:8px 10px;text-align:left;vertical-align:top}
.vpe-callout th,.vpe-answerbody th{background:#eef3fa;font-weight:700}
.vpe-callout caption,.vpe-answerbody caption{caption-side:top;text-align:left;font-weight:600;padding:0 0 6px}
.vpe-callout blockquote,
.vpe-answerbody blockquote{margin:12px 0;padding:8px 14px;border-left:3px solid #c8102e;background:#faf7f8}
.vpe-callout ul,.vpe-callout ol,
.vpe-answerbody ul,.vpe-answerbody ol{margin:10px 0 10px 22px}
.vpe-callout li,.vpe-answerbody li{margin:4px 0}
.vpe-callout h2,.vpe-callout h3,.vpe-callout h4,
.vpe-answerbody h2,.vpe-answerbody h3,.vpe-answerbody h4{margin:16px 0 6px;line-height:1.3}
.vpe-callout img,.vpe-answerbody img{max-width:100%;height:auto}
.vpe-callout sup,.vpe-callout sub,
.vpe-answerbody sup,.vpe-answerbody sub{line-height:0}

/* Controlled horizontal scroll on narrow screens - the table scrolls,
   the page never gains a horizontal scrollbar. */
@media (max-width:640px){
  .vpe-callout table,
  .vpe-answerbody table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}


/* ============================================================
   v0.5.3 - Rich Content Fidelity Fix
   Typography for rich answer content. Scope limited to
   .vpe-callout and .vpe-answerbody only. No global selectors.
   ============================================================ */
.vpe-callout p,
.vpe-answerbody p{margin:0 0 12px;line-height:1.75}
.vpe-callout p:last-child,
.vpe-answerbody p:last-child{margin-bottom:0}
.vpe-callout h2,.vpe-answerbody h2{font-size:1.35em;margin:20px 0 8px;line-height:1.3}
.vpe-callout h3,.vpe-answerbody h3{font-size:1.18em;margin:18px 0 7px;line-height:1.3}
.vpe-callout h4,.vpe-answerbody h4{font-size:1.06em;margin:16px 0 6px;line-height:1.3}
.vpe-callout h2:first-child,.vpe-answerbody h2:first-child,
.vpe-callout h3:first-child,.vpe-answerbody h3:first-child{margin-top:0}
.vpe-callout strong,.vpe-answerbody strong,
.vpe-callout b,.vpe-answerbody b{font-weight:700}
.vpe-callout em,.vpe-answerbody em,
.vpe-callout i,.vpe-answerbody i{font-style:italic}
.vpe-callout u,.vpe-answerbody u{text-decoration:underline;text-underline-offset:2px}
.vpe-callout a,.vpe-answerbody a{text-decoration:underline}
.vpe-callout hr,.vpe-answerbody hr{border:0;border-top:1px solid #d8dfe9;margin:18px 0}



/* ==================================================================
   VAID PYQ — FIGMA/ZEPLIN PARITY BLOCK  (PYQ-Question/D + /M)
   HUB ONLY: every rule is scoped with :has(.vpe-topicgrid) so the
   year / paper / topic / single templates are untouched.
   Appended 2026-09-10. Scoped to the PYQ hub only.
   To revert: delete everything from this banner to the END banner.
   Values inspected from Figma (type) and measured from the
   Zeplin @2x export (geometry/colour). No invented values.
   ================================================================== */

.vpe-app{
  --fs:"Source Serif 4",Georgia,"Times New Roman",serif;
  --fu:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --c-navy:#112E5A; --c-head:#0E2A47; --c-ink:#1D1D1F;
  --c-tint:#F6F8FB; --c-line:#CBD5E1; --c-blue:#1277AD;
  --c-sky:#0EA5E9;  --c-skybg:#E7F6FD; --c-yellow:#FFE52D;
  --c-slate:#64748B; --c-body:#43454A; --c-muted:#A1A2A4;
}

/* ---- container: Figma main container is 1240 at a 1440 frame ---- */
.vpe-app:has(.vpe-topicgrid) .vpe-wrap{max-width:1288px;padding-left:24px;padding-right:24px;}

/* ---- sections removed by the Figma hub design ---- */
.vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-search,
.vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-qacts,
.vpe-app:has(.vpe-topicgrid) .vpe-sec#sec-year,
.vpe-app:has(.vpe-topicgrid) .vpe-sec#sec-paper,
.vpe-app:has(.vpe-topicgrid) .vpe-sec#sec-topic,
.vpe-app:has(.vpe-topicgrid) .vpe-topicfilters,
.vpe-app:has(.vpe-topicgrid) .vpe-resourceband,
.vpe-app:has(.vpe-topicgrid) .vpe-bloggrid,
.vpe-app:has(.vpe-topicgrid) .vpe-footnote,
.vpe-app:has(.vpe-topicgrid) .vpe-body .vpe-wrap > p{display:none !important;}

/* ================= HERO ================= */
.vpe-app:has(.vpe-topicgrid) .vpe-hero{background:#fff;}
.vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-wrap{
  display:grid;
  grid-template-columns:780px 324px;
  column-gap:136px;
  align-items:start;
  padding-top:0;padding-bottom:42px;
}
.vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-crumb{grid-column:1 / -1;grid-row:1;margin:0 0 28px;}
.vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-eyebrow{grid-column:1;grid-row:2;}
.vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-h1{grid-column:1;grid-row:3;}
.vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-intro{grid-column:1;grid-row:4;}
.vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-stats{grid-column:2;grid-row:2 / span 3;}

/* badge pill — 199x27, #FFE52D, Inter 400 12/160 1% #112E5A */
.vpe-app:has(.vpe-topicgrid) .vpe-eyebrow{
  display:inline-flex;align-items:center;justify-content:center;
  height:27px;padding:0 16px;border-radius:999px;
  background:var(--c-yellow);color:var(--c-navy);
  font-family:var(--fu);font-weight:400;font-size:12px;line-height:1.6;
  letter-spacing:.01em;text-transform:none;width:auto;align-self:start;justify-self:start;
  margin:0 0 8px;border:0;
}
.vpe-app:has(.vpe-topicgrid) .vpe-eyebrow .vpe-icon{display:none;}

/* H1 — VaidsICS/H2: Source Serif 4 600 48/132% 1% #0E2A47 */
.vpe-app:has(.vpe-topicgrid) .vpe-h1{
  font-family:var(--fs);font-weight:600;font-size:48px;line-height:1.32;
  letter-spacing:.01em;color:var(--c-head);margin:0;max-width:780px;
}
/* intro — Bodycopy1 16/152% #43454A, 700 wide */
.vpe-app:has(.vpe-topicgrid) .vpe-intro{
  font-family:var(--fu);font-weight:400;font-size:16px;line-height:1.52;
  letter-spacing:0;color:var(--c-body);margin:16px 0 0;max-width:700px;
}

/* stat grid — 2x2, 158x103, gap 8 */
.vpe-app:has(.vpe-topicgrid) .vpe-stats{
  display:grid;grid-template-columns:158px 158px;gap:8px;margin:0;width:324px;
}
.vpe-app:has(.vpe-topicgrid) .vpe-stat{
  width:158px;height:103px;background:var(--c-tint);
  border:0;border-left:0;border-radius:10px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:4px;padding:0;box-shadow:none;overflow:hidden;
}
.vpe-app:has(.vpe-topicgrid) .vpe-stat::before,.vpe-app:has(.vpe-topicgrid) .vpe-stat::after{display:none !important;content:none !important;}
.vpe-app:has(.vpe-topicgrid) .vpe-stat .n{
  font-family:var(--fs);font-weight:600;font-size:36px;line-height:1.32;
  letter-spacing:.01em;color:var(--c-blue);margin:0;
}
.vpe-app:has(.vpe-topicgrid) .vpe-stat .l{
  font-family:var(--fu);font-weight:400;font-size:12px;line-height:1.6;
  letter-spacing:.01em;color:var(--c-body);margin:0;text-align:center;
}

/* ================= TRUST BAND ================= */
/* Figma: 1240 x 188, #112E5A, inner pad 16, 4 cards 296 wide, gap 8 */
.vpe-app:has(.vpe-topicgrid) .vpe-sec{
  background:var(--c-navy);border-radius:12px 12px 0 0;
  margin:48px 0 0;padding:16px 16px 0;display:block;
}
.vpe-app:has(.vpe-topicgrid) .vpe-sec h2{
  font-family:var(--fs);font-weight:600;font-size:24px;line-height:1.32;
  letter-spacing:.01em;color:#fff;margin:0;padding:0 0 4px;
}
.vpe-app:has(.vpe-topicgrid) .vpe-sec h2 .vpe-icon{display:none;}
.vpe-app:has(.vpe-topicgrid) .vpe-sec .ln{display:none;}
.vpe-app:has(.vpe-topicgrid) .vpe-truststrip{
  background:var(--c-navy);border-radius:0 0 12px 12px;
  margin:0 0 48px;padding:16px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:8px;
}
.vpe-app:has(.vpe-topicgrid) .vpe-trustcard{
  background:#fff;border:0;border-radius:10px;padding:16px;
  display:flex;gap:12px;align-items:flex-start;box-shadow:none;
}
.vpe-app:has(.vpe-topicgrid) .vpe-trustcard .ic{
  flex:0 0 auto;width:36px;height:36px;border-radius:8px;
  background:var(--c-line);display:flex;align-items:center;justify-content:center;
}
.vpe-app:has(.vpe-topicgrid) .vpe-trustcard .ic .vpe-icon{width:18px;height:18px;color:var(--c-navy);}
.vpe-app:has(.vpe-topicgrid) .vpe-trustcard .t{
  display:block;font-family:var(--fu);font-weight:400;font-size:16px;
  line-height:1.4;letter-spacing:0;color:var(--c-blue);
}
.vpe-app:has(.vpe-topicgrid) .vpe-trustcard .d{
  display:block;font-family:var(--fu);font-weight:400;font-size:14px;
  line-height:1.4;letter-spacing:0;color:var(--c-body);margin-top:4px;
}

/* ============ TWO-COLUMN BODY: 295 sidebar + 20 gap + 925 grid ============ */
.vpe-app:has(.vpe-topicgrid) .vpe-body .vpe-wrap{
  display:grid;
  grid-template-columns:295px 925px;
  column-gap:20px;
  align-items:start;
}
.vpe-app:has(.vpe-topicgrid) .vpe-body .vpe-wrap > .vpe-sec,
.vpe-app:has(.vpe-topicgrid) .vpe-body .vpe-wrap > .vpe-truststrip,
.vpe-app:has(.vpe-topicgrid) .vpe-body .vpe-wrap > .vpe-cta{grid-column:1 / -1;}
.vpe-app:has(.vpe-topicgrid) .vpe-side{grid-column:1;}
.vpe-app:has(.vpe-topicgrid) .vpe-topicgrid{grid-column:2;}
.vpe-app:has(.vpe-topicgrid) .vpe-yeargrid{display:contents;}

/* ---- sidebar panel: 295 wide, 1px #CBD5E1, radius 12 ---- */
.vpe-app:has(.vpe-topicgrid) .vpe-side{display:flex;flex-direction:column;gap:20px;}
.vpe-app:has(.vpe-topicgrid) .vpe-panel{
  background:#fff;border:1px solid var(--c-line);border-radius:12px;padding:16px;
}
.vpe-app:has(.vpe-topicgrid) .vpe-panelhead{
  display:flex;align-items:center;justify-content:space-between;
  gap:8px;margin:0 0 14px;
}
.vpe-app:has(.vpe-topicgrid) .vpe-panelhead .ttl{
  display:flex;align-items:center;gap:8px;
  font-family:var(--fs);font-weight:600;font-size:24px;line-height:1.32;
  letter-spacing:.01em;color:var(--c-ink);
}
.vpe-app:has(.vpe-topicgrid) .vpe-panelhead .ttl .vpe-icon{width:18px;height:18px;color:var(--c-ink);}
.vpe-app:has(.vpe-topicgrid) .vpe-clear{
  font-family:var(--fu);font-weight:400;font-size:14px;line-height:1.4;
  color:var(--c-ink);text-decoration:underline;background:none;border:0;
  padding:0;cursor:pointer;
}
.vpe-app:has(.vpe-topicgrid) .vpe-fgroup{
  border:1px solid var(--c-line);border-radius:8px;margin:0 0 8px;overflow:hidden;
}
.vpe-app:has(.vpe-topicgrid) .vpe-fgroup:last-child{margin-bottom:0;}
.vpe-app:has(.vpe-topicgrid) .vpe-fhead{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  gap:8px;padding:11px 14px;background:#fff;border:0;cursor:pointer;
  font-family:var(--fu);font-weight:700;font-size:16px;line-height:1.4;
  color:var(--c-ink);text-align:left;
}
.vpe-app:has(.vpe-topicgrid) .vpe-fhead .pm{
  flex:0 0 auto;width:20px;height:20px;border-radius:50%;
  border:1.5px solid var(--c-blue);color:var(--c-blue);
  display:flex;align-items:center;justify-content:center;
  font-size:15px;line-height:1;font-weight:400;
}
.vpe-app:has(.vpe-topicgrid) .vpe-fbody{padding:0 14px 12px;display:block;}
.vpe-app:has(.vpe-topicgrid) .vpe-fgroup[data-open="0"] .vpe-fbody{display:none;}
.vpe-app:has(.vpe-topicgrid) .vpe-fopt{
  display:flex;align-items:center;gap:10px;padding:3px 0;
  font-family:var(--fu);font-weight:400;font-size:14px;line-height:1.52;
  color:var(--c-ink);text-decoration:none;
}
.vpe-app:has(.vpe-topicgrid) .vpe-fopt:hover{color:var(--c-blue);}
.vpe-app:has(.vpe-topicgrid) .vpe-fopt .bx{
  flex:0 0 auto;width:16px;height:16px;border-radius:4px;
  border:1.5px solid var(--c-line);background:#fff;
}
.vpe-app:has(.vpe-topicgrid) .vpe-fopt.on .bx{background:var(--c-blue);border-color:var(--c-blue);}
.vpe-app:has(.vpe-topicgrid) .vpe-share .lbl{
  font-family:var(--fu);font-weight:400;font-size:12px;line-height:1.6;
  letter-spacing:.06em;text-transform:uppercase;color:var(--c-ink);
  display:block;text-align:center;margin:0 0 12px;
}
.vpe-app:has(.vpe-topicgrid) .vpe-share .row{display:flex;align-items:center;justify-content:center;gap:18px;}
.vpe-app:has(.vpe-topicgrid) .vpe-share a{color:var(--c-navy);display:inline-flex;}
.vpe-app:has(.vpe-topicgrid) .vpe-share svg{width:18px;height:18px;fill:currentColor;}

/* ================= TOPIC CARD GRID ================= */
/* Figma: 925 column, 2 x 456, column gap 13, row gap 26 */
.vpe-app:has(.vpe-topicgrid) .vpe-topicgrid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:11px;row-gap:10px;margin:0;
}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard{
  background:#fff;border:1px solid var(--c-line);border-radius:12px;
  padding:16px;display:flex;flex-direction:column;gap:0;
  box-shadow:0 1px 2px rgba(16,24,40,.05);text-decoration:none;
}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard:hover{border-color:var(--c-blue);}
/* chip first, then title — Figma stacks them */
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .th{display:flex;flex-direction:column;align-items:flex-start;gap:0;}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .vpe-tbadge{
  order:-1;height:26px;padding:0 12px;border-radius:999px;
  display:inline-flex;align-items:center;
  font-family:var(--fu);font-weight:400;font-size:14px;line-height:1;
  letter-spacing:0;margin:0 0 14px;border:0;
}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .vpe-tbadge.hf{background:var(--c-skybg);color:var(--c-sky);}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .vpe-tbadge.ready{background:#DCF5E7;color:#137A4B;}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .vpe-tbadge.core{background:#DDE3EC;color:#3F4A5A;}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .tt{
  font-family:var(--fu);font-weight:400;font-size:16px;line-height:1.52;
  letter-spacing:0;color:var(--c-ink);display:block;
}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .tp{
  font-family:var(--fu);font-weight:400;font-size:14px;line-height:1.52;
  letter-spacing:0;color:var(--c-slate);margin:10px 0 0;
}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .tp .pp{color:var(--c-blue);}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .tstat{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  border-top:1px solid var(--c-line);margin-top:auto;padding-top:17px;
  font-family:var(--fu);font-weight:400;font-size:16px;line-height:1.4;
  color:var(--c-ink);
}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .tstat .sa{color:var(--c-ink);}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .tstat .sb{color:var(--c-blue);}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .tstat b{font-weight:400;}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .tlast{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-top:10px;
  font-family:var(--fu);font-weight:400;font-size:12px;line-height:1.6;
  color:var(--c-slate);
}
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .tlast .vw{
  color:var(--c-navy);font-weight:700;font-size:12px;white-space:nowrap;
}

/* ---- paper cards, moved inline into the grid ---- */
.vpe-app:has(.vpe-topicgrid) .vpe-grid.g2{display:contents;}
.vpe-app:has(.vpe-topicgrid) .vpe-pcard{
  background:var(--c-blue);border:0;border-radius:12px;padding:16px;
  box-shadow:none;display:flex;flex-direction:column;align-items:flex-start;
}
.vpe-app:has(.vpe-topicgrid) .vpe-pcard .pn{
  height:26px;padding:0 12px;border-radius:999px;background:var(--c-skybg);
  color:var(--c-blue);display:inline-flex;align-items:center;gap:6px;
  font-family:var(--fu);font-weight:400;font-size:14px;line-height:1;
  margin:0 0 12px;
}
.vpe-app:has(.vpe-topicgrid) .vpe-pcard .pn .vpe-icon{display:none;}
.vpe-app:has(.vpe-topicgrid) .vpe-pcard h3{
  font-family:var(--fu);font-weight:700;font-size:20px;line-height:1.52;
  letter-spacing:0;color:#fff;margin:0;
}
.vpe-app:has(.vpe-topicgrid) .vpe-pcard .meta{
  font-family:var(--fu);font-weight:400;font-size:16px;line-height:1.52;
  color:#fff;margin:6px 0 0;
}
.vpe-app:has(.vpe-topicgrid) .vpe-pcard .vpe-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px !important;}
.vpe-app:has(.vpe-topicgrid) .vpe-pcard .vpe-chip{
  background:#E7F6FD;color:var(--c-blue);border:0;border-radius:4px;
  padding:5px 10px;font-family:var(--fu);font-weight:400;font-size:14px;line-height:1.4;
}

/* ================= CTA BAND ================= */
/* Figma: full-bleed #1D1D1F, 266 tall */
.vpe-app:has(.vpe-topicgrid) .vpe-cta{
  background:var(--c-ink);border:0;border-radius:0;
  margin:48px 0 0;padding:56px 24px;width:auto;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:0;text-align:center;box-shadow:none;
}
.vpe-app:has(.vpe-topicgrid) .vpe-cta h2,.vpe-app:has(.vpe-topicgrid) .vpe-cta h3,.vpe-app:has(.vpe-topicgrid) .vpe-cta .t{
  font-family:var(--fs);font-weight:600;font-size:36px;line-height:1.32;
  letter-spacing:.01em;color:#fff;margin:0;
}
.vpe-app:has(.vpe-topicgrid) .vpe-cta p,.vpe-app:has(.vpe-topicgrid) .vpe-cta .d{
  font-family:var(--fu);font-weight:400;font-size:16px;line-height:1.52;
  color:#E7E7E8;margin:14px 0 0;
}
.vpe-app:has(.vpe-topicgrid) .vpe-cta .vpe-btn,.vpe-app:has(.vpe-topicgrid) .vpe-cta a.vpe-btn{
  margin-top:22px;height:48px;padding:0 22px;border-radius:8px;
  background:var(--c-yellow);color:var(--c-ink);border:0;
  font-family:var(--fu);font-weight:600;font-size:16px;line-height:1;
  display:inline-flex;align-items:center;gap:10px;text-decoration:none;
}

/* ================= RESPONSIVE ================= */
/* No tablet frame exists in Figma, so 1025-1279 is a fluid collapse of the
   desktop frame; 402 is reproduced from PYQ-Question/M.
   Measured on /M: typography is IDENTICAL to desktop, only layout changes. */

@media (max-width:1339px){
  .vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-wrap{grid-template-columns:minmax(0,780px) 324px;column-gap:48px;}
  .vpe-app:has(.vpe-topicgrid) .vpe-body .vpe-wrap{grid-template-columns:295px minmax(0,1fr);}
}

@media (max-width:1024px){
  /* No tablet frame exists in Figma. Rather than invent one, keep the designed
     sidebar-beside-cards structure and drop to a single card column. */
  .vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-wrap{grid-template-columns:minmax(0,1fr);row-gap:0;}
  .vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-eyebrow,
  .vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-h1,
  .vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-intro,
  .vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-stats{grid-column:1;grid-row:auto;}
  .vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-stats{margin-top:28px;width:100%;
    grid-template-columns:repeat(2,minmax(0,1fr));}
  .vpe-app:has(.vpe-topicgrid) .vpe-stat{width:auto;}
  .vpe-app:has(.vpe-topicgrid) .vpe-body .vpe-wrap{grid-template-columns:295px minmax(0,1fr);}
  .vpe-app:has(.vpe-topicgrid) .vpe-side{grid-column:1;flex-direction:column;}
  .vpe-app:has(.vpe-topicgrid) .vpe-topicgrid{grid-column:2;grid-template-columns:minmax(0,1fr);}
  .vpe-app:has(.vpe-topicgrid) .vpe-truststrip{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* ---- PYQ-Question/M : 402 frame, 20px gutter ---- */
@media (max-width:767px){
  .vpe-app:has(.vpe-topicgrid) .vpe-wrap{padding-left:20px;padding-right:20px;}
  .vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-wrap{padding-bottom:28px;}
  .vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-crumb{margin-bottom:20px;}
  .vpe-app:has(.vpe-topicgrid) .vpe-h1{font-size:48px;line-height:1.32;max-width:none;}
  .vpe-app:has(.vpe-topicgrid) .vpe-intro{max-width:none;}
  .vpe-app:has(.vpe-topicgrid) .vpe-hero .vpe-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .vpe-app:has(.vpe-topicgrid) .vpe-stat{height:103px;}

  /* trust band: 362 wide, inner pad 16, cards stacked */
  .vpe-app:has(.vpe-topicgrid) .vpe-sec{margin-top:32px;}
  .vpe-app:has(.vpe-topicgrid) .vpe-truststrip{grid-template-columns:minmax(0,1fr);margin-bottom:32px;}

  /* sidebar: the /M frame has NO filter panel at all */
  .vpe-app:has(.vpe-topicgrid) .vpe-side{display:none;}
  /* the hidden sidebar's 295px track would still eat the card column */
  .vpe-app:has(.vpe-topicgrid) .vpe-body .vpe-wrap{grid-template-columns:minmax(0,1fr);}
  .vpe-app:has(.vpe-topicgrid) .vpe-topicgrid{grid-column:1;}

  /* topic cards: single column, 362 wide */
  .vpe-app:has(.vpe-topicgrid) .vpe-topicgrid{grid-template-columns:minmax(0,1fr);row-gap:29px;}
  .vpe-app:has(.vpe-topicgrid) .vpe-cta{padding:44px 20px;margin-top:32px;}
  .vpe-app:has(.vpe-topicgrid) .vpe-cta h2,.vpe-app:has(.vpe-topicgrid) .vpe-cta h3,.vpe-app:has(.vpe-topicgrid) .vpe-cta .t{font-size:28px;}
}

/* ---- overrides for existing plugin rules that fight the Figma spec ---- */
.vpe-app:has(.vpe-topicgrid) .vpe-tcard .vpe-tbadge,
.vpe-app:has(.vpe-topicgrid) .vpe-pcard .pn,
.vpe-app:has(.vpe-topicgrid) .vpe-pcard .vpe-chip{text-transform:none !important;letter-spacing:0 !important;}
.vpe-app:has(.vpe-topicgrid) .vpe-side button.vpe-fopt,
.vpe-app:has(.vpe-topicgrid) .vpe-side button.vpe-fhead,
.vpe-app:has(.vpe-topicgrid) .vpe-side button.vpe-clear{
  -webkit-appearance:none;appearance:none;background:transparent !important;
  box-shadow:none !important;border-radius:0;width:100%;text-align:left;
  text-transform:none !important;letter-spacing:0 !important;min-height:0;
}
.vpe-app:has(.vpe-topicgrid) .vpe-side button.vpe-clear{width:auto;}
.vpe-app:has(.vpe-topicgrid) .vpe-side button.vpe-fopt{border:0 !important;}
.vpe-app:has(.vpe-topicgrid) .vpe-side button.vpe-fopt:hover,
.vpe-app:has(.vpe-topicgrid) .vpe-side button.vpe-fhead:hover{background:transparent !important;}

/* ==================================================================
   END VAID PYQ — FIGMA/ZEPLIN PARITY BLOCK
   ================================================================== */
