/* ===================================================================
 * Vacuum Sealer Expert — polish.css
 * Premium card depth, mobile rhythm, "Today on the X" extras.
 * =================================================================== */

/* Premium edge highlight + top-fade for surface cards */
.vse-eeat__card,
.vse-faq__item,
.vse-injkit{
  position:relative;overflow:hidden;
}
.vse-eeat__card::before,
.vse-injkit::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.16), transparent);
}

/* Mobile rhythm — app-style tightening (~40% less vertical padding) */
@media (max-width:680px){
  .vse-wrap{padding:0 16px;}
  .vse-hero{padding:24px 0 16px;}
  .vse-hero__title{font-size:34px;line-height:1.06;letter-spacing:-.02em;}
  .vse-hero__sub{font-size:15.5px;}
  .vse-hero__cta{margin:14px 0;}
  .vse-hero__stats{gap:12px;flex-wrap:wrap;}
  .vse-hero__stats dt{font-size:10px;}
  .vse-hero__stats dd{font-size:18px;}
  .vse-hero__panel{padding:14px;border-radius:16px;}
  .vse-hero__row{padding-top:14px;gap:18px;}

  .vse-quick,.vse-today,.vse-planner,.vse-setups,.vse-gear,.vse-kits,.vse-cmp,.vse-eeat,.vse-faq,.vse-news{padding:22px 0;}
  .vse-dash{padding:32px 0;border-radius:18px;margin:14px 8px;}
  .vse-dash__head{margin-bottom:18px;}
  .vse-dash__title{font-size:26px;}
  .vse-dash__sub{font-size:14.5px;}
  .vse-dash__stages{gap:10px;}
  .vse-dash__stage{padding:14px;}

  .vse-section__title{font-size:22px;line-height:1.15;}
  .vse-section__sub{font-size:14.5px;margin-bottom:14px;}
  .vse-section__eyebrow{font-size:11px;}

  .vse-quick__head,.vse-today__head,.vse-planner__head,.vse-setups__head,.vse-gear__head,.vse-kits__head,.vse-cmp__head,.vse-eeat__head,.vse-faq__head{margin-bottom:12px;}

  .vse-quick__grid,.vse-quick__card{gap:8px;padding:12px;border-radius:14px;}
  .vse-quick__label{font-size:16px;}
  .vse-quick__sub{font-size:12px;}
  .vse-quick__icon{width:32px;height:32px;}

  .vse-today__grid{gap:8px;}
  .vse-today__feature{min-height:280px;}
  .vse-today__feature-title{font-size:20px;}
  .vse-today__strip dd{font-size:15px;}

  .vse-setups__grid{gap:8px;}
  .vse-gear__tabs{padding:4px;border-radius:12px;}
  .vse-gear__tab{padding:8px 10px;font-size:13px;}
  .vse-gear__tab span:not(.vse-gear__tab-icon){display:none;}
  .vse-gear__tab.is-active span{display:inline;}
  .vse-product{padding:12px;border-radius:14px;}
  .vse-product__name{font-size:15px;}

  .vse-kit__body{padding:12px;}
  .vse-kit__name{font-size:16px;}
  .vse-kit__sum{font-size:12.5px;}

  .vse-cmp__tabs{flex-wrap:nowrap;overflow-x:auto;padding:4px;}
  .vse-cmp__tab{flex:0 0 auto;padding:8px 12px;font-size:13px;}
  .vse-cmp__table th,.vse-cmp__table td{padding:10px;font-size:13px;}

  .vse-faq__q{padding:12px 14px;font-size:15px;}
  .vse-faq__a{padding:0 14px 14px;font-size:14px;}

  .vse-news__copy{padding:20px;}
  .vse-news__title{font-size:22px;}
  .vse-news__sub{font-size:14px;}

  .vse-stickycta{padding:8px 0;}
  .vse-stickycta__row{flex-wrap:nowrap;align-items:center;}
  .vse-stickycta__copy strong{font-size:13px;}
  .vse-stickycta__copy span{font-size:11px;}
  .vse-stickycta__btn{padding:9px 14px;font-size:13px;white-space:nowrap;}
  .vse-has-sticky-cta{padding-bottom:72px;}

  .vse-fdock{right:10px;bottom:88px;gap:8px;}
  .vse-fdock__btn{width:42px;height:42px;border-radius:12px;}

  .vse-prose{font-size:16px;line-height:1.7;}
  .vse-prose h2{font-size:24px;margin:1.4em 0 .45em;}
  .vse-prose h3{font-size:19px;}
  .vse-prose > p:first-of-type{font-size:17px;}
  .vse-prose > p:first-of-type::first-letter{font-size:2.4em;}

  .vse-single__hero{padding:24px 0 0;}
  .vse-single__title{font-size:30px;line-height:1.08;}
  .vse-single__lede{font-size:16.5px;}
  .vse-single__body{padding:22px 0;gap:22px;}

  .vse-byline__avatar img{width:40px;height:40px;}
  .vse-byline__row{font-size:13px;}
  .vse-byline__row--sub{font-size:11.5px;}

  .vse-injkit{padding:14px;}
  .vse-injkit__name{font-size:17px;}
  .vse-injkit__list{grid-template-columns:1fr;}

  .vse-card__title{font-size:17px;}
  .vse-card__excerpt{font-size:13.5px;}

  .vse-disclose{font-size:12px;padding:8px 12px;}
}

/* Tablet */
@media (min-width:681px) and (max-width:980px){
  .vse-quick,.vse-today,.vse-planner,.vse-setups,.vse-gear,.vse-kits,.vse-cmp,.vse-eeat,.vse-faq,.vse-news{padding:32px 0;}
  .vse-section__title{font-size:28px;}
  .vse-hero__title{font-size:48px;}
}

/* Desktop luxury — bigger hero/section headlines */
@media (min-width:1280px){
  .vse-hero__title{font-size:80px;line-height:1.02;letter-spacing:-.02em;}
  .vse-section__title{font-size:48px;}
  .vse-dash__title{font-size:56px;}
}

/* Subtle aurora pulse on FAQ open */
.vse-faq__item[open]{box-shadow:0 0 0 2px rgba(16,185,129,.18);}

/* Today feature card — deeper depth */
.vse-today__feature{position:relative;}
.vse-today__feature::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(closest-side at 30% 20%, rgba(255,255,255,.18), transparent 50%);
}

/* Hero panel inner glow */
.vse-hero__panel{position:relative;overflow:hidden;}
.vse-hero__panel::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(circle at 80% 0%, rgba(59,130,246,.18), transparent 60%);
}

/* Setup card — sealing-line accent on hover */
.vse-setups__card,
.vse-card,
.vse-product,
.vse-kit{position:relative;}
.vse-setups__card::after,
.vse-card::after,
.vse-product::after,
.vse-kit::after{
  content:"";position:absolute;left:18px;right:18px;bottom:18px;height:2px;border-radius:99px;
  background:var(--vse-grad-accent);transform:scaleX(0);transform-origin:left;transition:transform .4s ease;
  opacity:.7;
}
.vse-setups__card:hover::after,
.vse-card:hover::after,
.vse-product:hover::after,
.vse-kit:hover::after{transform:scaleX(1);}

/* Editor pick row treatment */
.vse-cmp__table tr.is-pick td:first-child{position:relative;}
.vse-cmp__table tr.is-pick td:first-child::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--vse-grad-accent);border-radius:0 4px 4px 0;
}

/* Premium microinteractions — button shimmer (calm cadence: long pause, single graceful sweep) */
.vse-cta--shimmer{position:relative;overflow:hidden;isolation:isolate;}
.vse-cta--shimmer::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(110deg, transparent 35%, rgba(255,255,255,.22) 50%, transparent 65%);
  transform:translateX(-120%);animation:vseShimmerCta 9s ease-in-out 2s infinite;
}
@keyframes vseShimmerCta{
  0%,75%{transform:translateX(-120%);}
  88%,100%{transform:translateX(120%);}
}
/* Pause shimmer entirely for high-confidence users — they don't need a nudge */
.vse-density-low .vse-cta--shimmer::after{display:none;}

/* Glow halo on focus / hover for primary CTAs */
.vse-cta--accent:focus-visible,.vse-cta--accent:hover{box-shadow:0 14px 36px rgba(16,185,129,.35), 0 0 0 1px rgba(16,185,129,.45);}

/* Magnetic hover on cards */
.vse-product,.vse-kit,.vse-setups__card,.vse-eeat__card,.vse-tool{
  transition:transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s cubic-bezier(.2,.7,.2,1), border-color .25s ease;
}
.vse-product:hover,.vse-kit:hover,.vse-setups__card:hover,.vse-eeat__card:hover,.vse-tool:hover{
  border-color:var(--vse-line-2);
}
.vse-product:hover{transform:translateY(-4px) scale(1.005);}
.vse-kit:hover{transform:translateY(-4px) scale(1.005);}
.vse-eeat__card:hover{transform:translateY(-3px);}
.vse-tool:hover{transform:translateY(-3px);}

/* Atmospheric alternating sections */
.vse-quick,.vse-kits,.vse-eeat{position:relative;}
.vse-quick::before,.vse-kits::before,.vse-eeat::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(ellipse at 80% 0%, rgba(59,130,246,.06), transparent 55%),
             radial-gradient(ellipse at 0% 100%, rgba(16,185,129,.05), transparent 55%);
}
.vse-quick > .vse-wrap,.vse-kits > .vse-wrap,.vse-eeat > .vse-wrap{position:relative;z-index:1;}

/* Gradient borders on key conversion cards */
.vse-pbox{position:relative;}
.vse-pbox::before{
  content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(135deg, rgba(16,185,129,.45), rgba(59,130,246,.0) 60%);
  -webkit-mask:linear-gradient(#000,#000) content-box, linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude;
}

/* Premium animated number ticker baseline */
[data-vse-count]{font-variant-numeric:tabular-nums;display:inline-block;}

/* Recommendation coupling — match/dim states across the site */
.vse-product.is-match{
  border-color:rgba(16,185,129,.45);box-shadow:0 8px 24px rgba(16,185,129,.18);
}
.vse-product.is-match::after{content:"Match";position:absolute;top:10px;left:50%;transform:translateX(-50%);background:var(--vse-grad-accent);color:#fff;font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:3px 9px;border-radius:99px;z-index:3;opacity:0;transition:opacity .25s ease, transform .25s ease;}
.vse-product.is-match:hover::after{opacity:1;transform:translateX(-50%) translateY(-2px);}

.vse-kit{transition:transform .3s ease, opacity .3s ease, border-color .3s ease, box-shadow .3s ease;}
.vse-kit.is-match{border-color:var(--vse-accent);box-shadow:0 14px 36px rgba(16,185,129,.22);transform:translateY(-2px);}
.vse-kit.is-match::before{content:"Recommended for your system";position:absolute;top:-10px;left:14px;background:var(--vse-grad-accent);color:#fff;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;border-radius:99px;z-index:3;}
.vse-kit.is-dim{opacity:.55;}
.vse-kit.is-dim:hover{opacity:1;}

.vse-cmp__table tr.is-match{background:linear-gradient(90deg, rgba(16,185,129,.12), transparent 80%) !important;}
.vse-cmp__table tr.is-match td:first-child{position:relative;}
.vse-cmp__table tr.is-match td:first-child::after{content:"Matches your system";position:absolute;top:8px;right:8px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--vse-accent);font-weight:700;}

/* ===== Phase 4: Monetization Intelligence Layer ===== */

/* Match Confidence badge on product cards */
.vse-product__match{
  display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;
  background:linear-gradient(135deg, rgba(16,185,129,.1), rgba(59,130,246,.06));
  border:1px solid rgba(16,185,129,.3);border-radius:12px;padding:8px 10px;
  position:relative;
}
.vse-product__match-pct{
  font-family:var(--vse-head);font-size:22px;color:var(--vse-accent);font-weight:700;line-height:1;
  font-variant-numeric:tabular-nums;min-width:34px;text-align:center;
}
.vse-product__match-pct::after{content:"%";font-size:11px;color:var(--vse-text-soft);font-weight:500;margin-left:1px;}
.vse-product__match-body{display:flex;flex-direction:column;gap:4px;min-width:0;}
.vse-product__match-label{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--vse-text-soft);font-weight:600;}
.vse-product__match-bar{height:4px;border-radius:99px;background:var(--vse-surface-2);overflow:hidden;}
.vse-product__match-bar span{display:block;height:100%;background:var(--vse-grad-accent);transition:width .45s cubic-bezier(.2,.7,.2,1);}
.vse-product__match-why{
  width:22px;height:22px;border-radius:50%;background:var(--vse-surface-2);color:var(--vse-text-soft);
  font-size:11px;font-weight:700;display:grid;place-items:center;cursor:help;border:1px solid var(--vse-line);
}
.vse-product__match-why:hover{background:var(--vse-grad-accent);color:#fff;border-color:transparent;}
.vse-product__match.vse-match-low .vse-product__match-pct{color:var(--vse-text-soft);}
.vse-product__match.vse-match-mid .vse-product__match-pct{color:var(--vse-tech);}
.vse-product__match.vse-match-high{border-color:var(--vse-accent);}
.vse-product__match.vse-match-high::before{
  content:"Strong match";position:absolute;top:-9px;right:10px;background:var(--vse-grad-accent);color:#fff;
  font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;border-radius:99px;
}

/* Kit catalog persuasion labels + popularity */
.vse-kit__popularity{
  position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:3;
  display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:99px;
  background:rgba(11,18,32,.78);color:#fff;font-size:10.5px;letter-spacing:.06em;font-weight:600;
  backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.12);cursor:help;
}
.vse-kit__popularity svg{color:var(--vse-warm);}
.vse-kit__persuasion{
  position:absolute;top:-10px;right:14px;z-index:4;
  display:inline-block;padding:4px 10px;border-radius:99px;
  font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#fff;
  background:var(--vse-grad-accent);box-shadow:0 8px 22px rgba(16,185,129,.35);
}
.vse-kit__persuasion--medium{background:linear-gradient(135deg, var(--vse-tech), var(--vse-accent));}
.vse-kit__persuasion--low{background:linear-gradient(135deg, var(--vse-text-mute), var(--vse-tech));box-shadow:none;}

/* Sticky CTA heat states */
.vse-stickycta.vse-heat-cold .vse-stickycta__btn{filter:saturate(.6);}
.vse-stickycta.vse-heat-warming .vse-stickycta__btn{filter:none;}
.vse-stickycta.vse-heat-hot .vse-stickycta__btn{box-shadow:0 14px 32px rgba(16,185,129,.32);}
.vse-stickycta.vse-heat-ready .vse-stickycta__btn{box-shadow:0 18px 40px rgba(16,185,129,.45);transform:scale(1.02);}
.vse-stickycta__why,.vse-scoreboard__why{
  width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.08);color:rgba(255,255,255,.7);
  font-size:11px;font-weight:700;display:grid;place-items:center;cursor:help;border:1px solid rgba(255,255,255,.12);
  margin-left:6px;
}
.vse-stickycta__why:hover,.vse-scoreboard__why:hover{background:var(--vse-grad-accent);color:#fff;border-color:transparent;}
.vse-scoreboard__why{position:absolute;top:14px;right:14px;}
.vse-scoreboard__card{position:relative;}

/* Universal Why-this-shown tooltip */
.vse-whytip{
  position:absolute;z-index:1000;max-width:280px;
  padding:10px 12px;border-radius:10px;background:rgba(11,18,32,.96);color:#fff;
  font-size:12.5px;line-height:1.5;border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 40px rgba(0,0,0,.45);
  opacity:0;transform:translateY(-4px);transition:opacity .2s ease, transform .2s ease;
  pointer-events:none;
}
.vse-whytip.is-in{opacity:1;transform:none;}
.vse-whytip::before{
  content:"";position:absolute;top:-5px;left:140px;width:10px;height:10px;
  background:rgba(11,18,32,.96);border-left:1px solid rgba(255,255,255,.14);border-top:1px solid rgba(255,255,255,.14);
  transform:rotate(45deg);
}

/* Light-mode whytip */
.vse-mode-light .vse-whytip{background:#0b1220;color:#fff;}

/* ===== Phase 5: Calm Intelligence Pass ===== */

/* Contextual silence — sticky CTA mutes when the dashboard or compare modal owns attention */
.vse-stickycta{transition:opacity .35s ease, transform .35s ease;}
.vse-stickycta.is-muted{opacity:.35;transform:translateY(8px);pointer-events:none;}
.vse-stickycta.is-muted-modal{opacity:0;transform:translateY(20px);pointer-events:none;}
.vse-stickycta.is-muted:hover{opacity:.92;transform:none;pointer-events:auto;}

/* Suppression — kit persuasion + upgrade aside hide when compare modal is open */
[data-vse-kit-persuasion].is-suppressed,
[data-vse-upgrade].is-suppressed{opacity:0;visibility:hidden;transition:opacity .25s ease;}

/* Flow strip collapses when System Completion Moment is shown */
.vse-flow{transition:max-height .5s ease, opacity .5s ease, padding .5s ease;overflow:hidden;}
.vse-flow.is-collapsed{max-height:0;opacity:0;padding:0;border-bottom-width:0;pointer-events:none;}

/* Monetization pacing — surfaces stay invisible until threshold */
body:not(.vse-paced-match)    .vse-product__match{display:none !important;}
body:not(.vse-paced-upgrade)  .vse-dash__upgrade{display:none !important;}
body:not(.vse-paced-persuasion) .vse-kit__persuasion{display:none !important;}

/* Adaptive density — high-confidence users see a calmer surface */
.vse-density-low .vse-cont{margin:18px 0;padding:14px;}
.vse-density-low .vse-cont__title{font-size:17px;}
.vse-density-low .vse-cont__grid{gap:6px;}
.vse-density-low .vse-spotlight{padding:10px 12px;}
.vse-density-low .vse-spotlight__head{margin-bottom:6px;}
.vse-density-low .vse-disclose{padding:6px 10px;font-size:11.5px;}
.vse-density-low .vse-byline__row--sub{font-size:11px;opacity:.85;}
.vse-density-low .vse-product__pros{display:none;}
.vse-density-low .vse-product__specs{margin-top:4px;}
.vse-density-low .vse-injkit__sum{display:none;}
.vse-density-low .vse-kit__sum{display:none;}
.vse-density-low .vse-pgrid__title{font-size:18px;}
.vse-density-low .vse-related__title{font-size:18px;}
.vse-density-low .vse-eeat{padding:32px 0;}
.vse-density-low .vse-eeat__desc{font-size:13px;}
/* High-confidence: ambient borders relax, compete less */
.vse-density-low .vse-hero__panel::after{opacity:.55;}
.vse-density-low .vse-dash::after{opacity:.55;}
.vse-density-low .vse-product.is-match::after{display:none;}

/* High-density (cold visitors) — preserve full educational framing, slightly more breathing room */
.vse-density-high .vse-prose > p:first-of-type{font-size:21px;}
.vse-density-high .vse-injkit{padding:20px;}

/* Reduce simultaneous emphasis — when multiple "highlighted" surfaces are visible together,
 * the secondary ones desaturate slightly. Achieved with :has() where supported. */
@supports selector(:has(*)){
  body:has([data-vse-ready]:not([hidden])) .vse-kit__persuasion{opacity:.45;}
  body:has([data-vse-ready]:not([hidden])) .vse-product__match{opacity:.6;}
  body:has([data-vse-cmp-modal]:not([hidden])) .vse-stickycta{opacity:0;}
}

/* Slow down the hero appliance LED sweep — feels less attention-grabby */
.vse-hero__pulse-led{animation-duration:7s !important;}

/* Calm: remove animated gradient borders for high-density users (they're already overwhelmed) */
.vse-density-high .vse-hero__panel::after,
.vse-density-high .vse-dash::after{animation-duration:30s;opacity:.4;}

/* Calmer hover on cards — reduce simultaneous glow saturation */
.vse-product:hover,.vse-kit:hover,.vse-setups__card:hover{
  box-shadow:0 12px 28px rgba(2,6,23,.35);
}
.vse-product.is-match{box-shadow:0 6px 18px rgba(16,185,129,.12);}
.vse-product.is-match:hover{box-shadow:0 14px 32px rgba(16,185,129,.18);}

/* Live indicator dot — universal */
.vse-livechip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--vse-accent);background:rgba(16,185,129,.1);}
.vse-livechip::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--vse-accent);box-shadow:0 0 0 4px rgba(16,185,129,.18);animation:vsePulse 2.4s infinite;}

/* Flow strip — visible system funnel */
.vse-flow{padding:14px 0 8px;border-bottom:1px solid var(--vse-line);background:linear-gradient(180deg, var(--vse-bg-elev), transparent);position:relative;z-index:5;}
.vse-flow__row{display:flex;list-style:none;padding:0;margin:0;gap:0;justify-content:space-between;align-items:center;overflow-x:auto;scrollbar-width:none;}
.vse-flow__row::-webkit-scrollbar{display:none;}
.vse-flow__step{position:relative;flex:1 1 0;min-width:120px;}
.vse-flow__step:not(:last-child)::after{content:"";position:absolute;left:50%;right:0;top:24px;height:2px;background:var(--vse-line);transform:translateX(20px);width:calc(100% - 40px);z-index:0;}
.vse-flow__step.is-done:not(:last-child)::after,
.vse-flow__step.is-current:not(:last-child)::after{background:var(--vse-grad-accent);}
.vse-flow__link{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:var(--vse-text-soft);position:relative;z-index:1;padding:6px;}
.vse-flow__num{
  width:36px;height:36px;border-radius:50%;display:grid;place-items:center;
  background:var(--vse-bg-elev);border:1px solid var(--vse-line);font-size:11px;font-weight:700;
  color:var(--vse-text-mute);font-family:var(--vse-head);transition:transform .25s ease, background .25s ease, color .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.vse-flow__icon{display:none;}
.vse-flow__label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;}
.vse-flow__step.is-done .vse-flow__num{background:var(--vse-grad-accent);color:#fff;border-color:transparent;}
.vse-flow__step.is-done .vse-flow__num::after{content:"✓";font-size:14px;}
.vse-flow__step.is-done .vse-flow__num > *{display:none;}
.vse-flow__step.is-current .vse-flow__num{background:var(--vse-bg);border-color:var(--vse-tech);color:var(--vse-tech);box-shadow:0 0 0 4px rgba(59,130,246,.18);transform:scale(1.05);}
.vse-flow__step.is-current .vse-flow__label,
.vse-flow__step.is-done .vse-flow__label{color:var(--vse-text);}
.vse-flow__link:hover .vse-flow__num{border-color:var(--vse-line-2);}
@media (max-width:680px){
  .vse-flow{padding:10px 0;}
  .vse-flow__num{width:28px;height:28px;font-size:10px;}
  .vse-flow__label{font-size:10px;letter-spacing:.08em;}
  .vse-flow__step:not(:last-child)::after{top:20px;}
}

/* Calm gradient border on hero panel — slower, softer */
.vse-hero__panel{background-clip:padding-box;}
.vse-hero__panel::after{
  content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(135deg, rgba(16,185,129,.42), rgba(59,130,246,.0) 50%, rgba(245,158,11,.22) 85%);
  -webkit-mask:linear-gradient(#000,#000) content-box, linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude;
  background-size:200% 200%;animation:vseBorderShift 22s ease-in-out infinite;
}
@keyframes vseBorderShift{0%,100%{background-position:0% 0%;}50%{background-position:100% 100%;}}

/* Calm gradient border on dashboard */
.vse-dash{position:relative;}
.vse-dash::after{
  content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:1;
  background:linear-gradient(135deg, rgba(16,185,129,.32), transparent 45%, transparent 55%, rgba(59,130,246,.32));
  -webkit-mask:linear-gradient(#000,#000) content-box, linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude;
  background-size:200% 200%;animation:vseBorderShift 26s ease-in-out infinite;
}

/* Smooth fade-slide for tab content swaps */
.vse-cmp__panel,.vse-gear__panel{
  transition:opacity .25s ease, transform .25s ease;
}
.vse-cmp__panel:not(.is-active),.vse-gear__panel:not(.is-active){
  opacity:0;transform:translateY(6px);position:absolute;inset:auto;visibility:hidden;
}
.vse-cmp__inner,.vse-gear__inner{position:relative;}
.vse-cmp__panel.is-active,.vse-gear__panel.is-active{opacity:1;transform:none;position:relative;visibility:visible;}

/* Floating ambient live dots on dashboard chips */
.vse-dash__chip{position:relative;}
.vse-dash__stage.is-next .vse-dash__chip::after{
  content:"";position:absolute;top:-3px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--vse-tech);box-shadow:0 0 0 4px rgba(59,130,246,.25);animation:vsePulse 2.4s infinite;
}

/* Ambient floating dot on hero pulse */
.vse-hero__pulse{position:relative;}
.vse-hero__pulse::after{
  content:"";position:absolute;inset:-4px;border-radius:50%;border:1px solid rgba(16,185,129,.4);animation:vseRipple 2.4s ease-out infinite;
}
@keyframes vseRipple{0%{transform:scale(.8);opacity:1;}100%{transform:scale(2.4);opacity:0;}}
