/* EWB privacy/feedback client v3.0.0 */
:root{
  --ewb-bg:#fff;
  --ewb-fg:#171717;
  --ewb-muted:#666;
  --ewb-line:rgba(20,20,20,.14);
  --ewb-accent:#222;
  --ewb-accent-2:#f1f1f1;
  --ewb-shadow:0 18px 60px rgba(0,0,0,.17);
  --ewb-mobile-consent-space:0px;
}
body.ewb-consent-mobile-open{padding-bottom:calc(var(--ewb-mobile-consent-base,0px) + var(--ewb-mobile-consent-space))!important}
.ewb-privacy{position:fixed;left:12px;right:12px;bottom:12px;z-index:2147482000;display:flex;justify-content:center;pointer-events:none}
.ewb-privacy-card{pointer-events:auto;position:relative;overflow:hidden;width:min(1180px,100%);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;background:var(--ewb-bg);color:var(--ewb-fg);border:1px solid var(--ewb-line);border-radius:18px;padding:13px 15px;box-shadow:var(--ewb-shadow);font:500 14px/1.38 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;isolation:isolate}
.ewb-privacy-copy{min-width:0;padding-right:8px}
.ewb-privacy-copy strong{display:block;font-size:14px;letter-spacing:-.01em;margin-bottom:2px}
.ewb-privacy-copy p{margin:0;color:var(--ewb-muted);font-size:12.5px}
.ewb-privacy-links{display:flex;gap:7px;align-items:center;margin-top:5px;font-size:11.5px}
.ewb-privacy-links a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
.ewb-privacy-actions{display:grid;grid-template-columns:repeat(3,max-content);gap:7px;align-items:center}
.ewb-btn{appearance:none;border:1px solid var(--ewb-line);border-radius:999px;min-height:38px;padding:8px 14px;background:#fff;color:var(--ewb-fg);font:700 12px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}
.ewb-btn:hover{transform:translateY(-1px)}
.ewb-btn:focus-visible{outline:3px solid color-mix(in srgb,var(--ewb-accent) 35%,transparent);outline-offset:2px}
.ewb-btn-primary{background:var(--ewb-accent);border-color:var(--ewb-accent);color:var(--ewb-btn-fg,#fff)}
.ewb-privacy-actions .ewb-btn-primary:nth-child(2){background:var(--ewb-accent);color:var(--ewb-btn-fg,#fff)}
.ewb-btn-secondary{background:var(--ewb-accent-2)}
.ewb-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.ewb-consent-custom{grid-column:1/-1;border-top:1px solid var(--ewb-line);padding-top:10px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.ewb-consent-custom[hidden]{display:none!important}
.ewb-purpose{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;background:color-mix(in srgb,var(--ewb-accent-2) 72%,#fff);padding:9px 10px;border-radius:12px;border:1px solid var(--ewb-line)}
.ewb-purpose b{font-size:12px;display:block}
.ewb-purpose span{font-size:10.5px;color:var(--ewb-muted);display:block;margin-top:2px}
.ewb-purpose input{width:18px;height:18px;accent-color:var(--ewb-accent);flex:0 0 auto;margin:1px 0 0}
.ewb-custom-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:7px}
.ewb-gpc{margin-top:4px!important;font-weight:700;color:var(--ewb-fg)!important}
.ewb-decor{position:absolute;right:9px;top:5px;opacity:.11;font-weight:900;pointer-events:none;z-index:-1}
.ewb-decor-steam{font-size:34px;animation:ewbSteam 2.8s ease-in-out infinite}
.ewb-decor-bubbles{font-size:28px;animation:ewbBubble 3.3s ease-in-out infinite}
.ewb-decor-orbit{font-size:48px;animation:ewbOrbit 5s linear infinite}
.ewb-decor-spectrum{width:140px;height:4px;top:auto;bottom:0;right:0;background:linear-gradient(90deg,#ff5b5b,#ffcf4b,#64d66c,#49a9ff,#a873ff);opacity:.65;animation:ewbSpectrum 3s ease-in-out infinite}
.ewb-decor-ticks{font-size:20px;letter-spacing:3px;animation:ewbTicks 2.4s ease-in-out infinite}
.ewb-decor-coin{font-size:40px;animation:ewbCoin 3.2s ease-in-out infinite}
.ewb-decor-word{font:700 13px/1 Georgia,serif;top:10px;right:14px}
.ewb-decor-glyph{font:900 38px/1 Georgia,serif;animation:ewbGlyph 2.9s ease-in-out infinite}
@keyframes ewbSteam{50%{transform:translateY(-5px);opacity:.2}}
@keyframes ewbBubble{50%{transform:translateY(-4px) scale(1.05);opacity:.2}}
@keyframes ewbOrbit{to{transform:rotate(360deg)}}
@keyframes ewbSpectrum{50%{transform:scaleX(.7);transform-origin:right}}
@keyframes ewbTicks{50%{letter-spacing:6px;opacity:.2}}
@keyframes ewbCoin{50%{transform:rotateY(180deg);opacity:.2}}
@keyframes ewbGlyph{50%{transform:skewX(-8deg) scale(1.05);opacity:.2}}

.ewb-dock-button{position:fixed;right:16px;bottom:16px;z-index:2147481000;width:52px;height:52px;border:0;border-radius:999px;background:var(--ewb-accent);color:var(--ewb-btn-fg,#fff);box-shadow:0 10px 30px rgba(0,0,0,.18);display:grid;place-items:center;cursor:pointer;transition:transform .25s ease,opacity .22s ease,box-shadow .25s ease}
.ewb-dock-button>span{position:absolute;right:58px;white-space:nowrap;background:#111;color:#fff;border-radius:999px;padding:7px 9px;font:700 11px/1 system-ui;opacity:0;transform:translateX(4px);pointer-events:none;transition:.2s ease}
.ewb-dock-button:hover>span,.ewb-dock-button:focus-visible>span{opacity:1;transform:none}
.ewb-dock-button:hover{transform:translateY(-2px) scale(1.03)}
.ewb-privacy-pill{position:fixed;right:12px;bottom:74px;z-index:2147480999;border:1px solid var(--ewb-line);border-radius:999px;padding:5px 9px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);font:700 10px/1 system-ui;color:#333;cursor:pointer}
.ewb-dock-hidden{opacity:0!important;pointer-events:none!important;transform:translateY(8px) scale(.9)!important}
.ewb-dock-visible{opacity:1;pointer-events:auto}
.ewb-dock-arrive{animation:ewbDockArrive .82s cubic-bezier(.2,.9,.2,1)}
@keyframes ewbDockArrive{0%{transform:scale(.72);box-shadow:0 0 0 0 color-mix(in srgb,var(--ewb-accent) 55%,transparent)}45%{transform:scale(1.13);box-shadow:0 0 0 11px transparent}100%{transform:scale(1)}}
.ewb-face-icon{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ewb-face-icon .ewb-eye{fill:currentColor;stroke:none}
.ewb-face-icon[data-expression="smile"] .ewb-mouth-frown{display:none}
.ewb-face-icon[data-expression="frown"] .ewb-mouth-smile{display:none}
.ewb-face-pop{animation:ewbFacePop .34s ease}
@keyframes ewbFacePop{50%{transform:scale(1.13) rotate(-4deg)}}
.ewb-consent-morph{position:fixed;z-index:2147483000;background:var(--ewb-bg);border:1px solid var(--ewb-line);box-shadow:var(--ewb-shadow);display:grid;place-items:center;overflow:hidden;pointer-events:none}
.ewb-consent-morph-face{width:34px;height:34px;color:var(--ewb-accent);opacity:0;animation:ewbMorphFace 1.05s ease forwards}
.ewb-morph-sheen{position:absolute;inset:-60%;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.7) 50%,transparent 65%);transform:translateX(-40%);animation:ewbSheen 1s ease-in-out forwards}
@keyframes ewbMorphFace{0%,40%{opacity:0;transform:scale(.5)}70%{opacity:1;transform:scale(1.15)}100%{opacity:1;transform:scale(1)}}
@keyframes ewbSheen{to{transform:translateX(55%)}}
.ewb-banner-exit{animation:ewbBannerExit .32s ease forwards}
@keyframes ewbBannerExit{to{opacity:0;filter:blur(4px);transform:translateY(5px)}}

.ewb-feedback-modal{position:fixed;inset:0;z-index:2147482500;background:rgba(0,0,0,.34);display:grid;place-items:end right;padding:16px 16px 82px;backdrop-filter:blur(3px)}
.ewb-feedback-card{position:relative;width:min(390px,calc(100vw - 32px));max-height:min(720px,calc(100vh - 100px));overflow:auto;background:var(--ewb-bg);color:var(--ewb-fg);border-radius:20px;padding:18px;box-shadow:var(--ewb-shadow);border:1px solid var(--ewb-line);font:500 13px/1.45 system-ui}
.ewb-feedback-card h2{font-size:20px;line-height:1.1;margin:0 28px 4px 0;letter-spacing:-.02em}
.ewb-feedback-card>p{margin:0 0 15px;color:var(--ewb-muted)}
.ewb-feedback-close{position:absolute;right:10px;top:10px;width:32px;height:32px;border:0;border-radius:999px;background:var(--ewb-accent-2);font-size:22px;cursor:pointer}
.ewb-feedback-field{margin:13px 0}.ewb-feedback-field>span,.ewb-feedback-field label{display:block;font-weight:800;font-size:12px;margin-bottom:6px}.ewb-feedback-field small{font-weight:500;color:var(--ewb-muted)}
.ewb-rating{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.ewb-rating button,.ewb-chips button{border:1px solid var(--ewb-line);background:var(--ewb-accent-2);border-radius:10px;min-height:38px;font:800 12px system-ui;cursor:pointer}.ewb-rating button.selected,.ewb-chips button.selected{background:var(--ewb-accent);color:var(--ewb-btn-fg,#fff);border-color:var(--ewb-accent)}
.ewb-chips{display:flex;flex-wrap:wrap;gap:6px}.ewb-chips button{padding:7px 10px;min-height:34px}
.ewb-feedback-field select,.ewb-feedback-field textarea{width:100%;box-sizing:border-box;border:1px solid var(--ewb-line);border-radius:10px;background:#fff;padding:9px 10px;font:500 13px system-ui;color:inherit}.ewb-feedback-field textarea{min-height:88px;resize:vertical}
.ewb-feedback-note{font-size:10.5px;color:var(--ewb-muted);margin:8px 0 12px}.ewb-feedback-send{width:100%}.ewb-feedback-thanks{min-height:180px;display:grid;place-items:center;text-align:center;gap:10px}.ewb-feedback-thanks .ewb-face-icon{width:48px;height:48px;color:var(--ewb-accent)}.ewb-feedback-thanks strong{font-size:18px}

.ewb-ad{position:relative;border:1px solid var(--ewb-line);border-radius:14px;overflow:hidden;background:#fff;color:#222;font:500 13px/1.4 system-ui}.ewb-ad img{display:block;width:100%;height:auto}.ewb-ad-copy{padding:11px}.ewb-ad-copy b{display:block;font-size:14px}.ewb-ad-copy p{margin:5px 0;color:#666}.ewb-ad-copy a{font-weight:800;color:inherit}.ewb-disclosure{position:absolute;left:7px;top:7px;background:rgba(255,255,255,.92);border-radius:999px;padding:4px 6px;font-size:9px;font-weight:800}.ewb-sponsored-link{text-decoration:underline dotted;text-underline-offset:2px}.ewb-footer-privacy{margin-left:.7em}

/* Eight assigned site personalities */
.ewb-theme-food-glory{--ewb-bg:#fffaf0;--ewb-fg:#173528;--ewb-muted:#5d6e64;--ewb-accent:#176a43;--ewb-accent-2:#e8f3e9;--ewb-btn-fg:#fff}
.ewb-theme-cocktail-fun{--ewb-bg:#fff7fb;--ewb-fg:#2d1120;--ewb-muted:#765565;--ewb-accent:#cf2665;--ewb-accent-2:#fde4ef;--ewb-btn-fg:#fff}
.ewb-theme-world-on-a-plate{--ewb-bg:#fff9ef;--ewb-fg:#332418;--ewb-muted:#766555;--ewb-accent:#b24f26;--ewb-accent-2:#f7e6d5;--ewb-btn-fg:#fff}
.ewb-theme-palette-burst{--ewb-bg:#ffffff;--ewb-fg:#1e2130;--ewb-muted:#676b7d;--ewb-accent:#5b46d8;--ewb-accent-2:#eeeaff;--ewb-btn-fg:#fff}
.ewb-theme-discovery-timeline{--ewb-bg:#f4f0e7;--ewb-fg:#171714;--ewb-muted:#6f6b63;--ewb-accent:#6e1d2d;--ewb-accent-2:#e8e2d6;--ewb-btn-fg:#fff}
.ewb-theme-budget-wizard{--ewb-bg:#f7fbff;--ewb-fg:#13263d;--ewb-muted:#617185;--ewb-accent:#165d91;--ewb-accent-2:#e1eef8;--ewb-btn-fg:#fff}
.ewb-theme-academic-dictionary{--ewb-bg:#fbfaf6;--ewb-fg:#1d1b18;--ewb-muted:#6c675e;--ewb-accent:#263b60;--ewb-accent-2:#e7ebf2;--ewb-btn-fg:#fff}
.ewb-theme-thisfont{--ewb-bg:#fff;--ewb-fg:#101010;--ewb-muted:#686868;--ewb-accent:#111;--ewb-accent-2:#f0f0f0;--ewb-btn-fg:#fff}
/* Twelve extra ready-made personalities */
.ewb-theme-neon-night{--ewb-bg:#11101b;--ewb-fg:#fff;--ewb-muted:#c7c1d8;--ewb-accent:#8dffde;--ewb-accent-2:#242134;--ewb-btn-fg:#121218}
.ewb-theme-sunrise{--ewb-bg:#fff8ed;--ewb-fg:#3a2317;--ewb-muted:#7b665a;--ewb-accent:#ed6a35;--ewb-accent-2:#ffe6c9;--ewb-btn-fg:#fff}
.ewb-theme-ocean{--ewb-bg:#f3fbff;--ewb-fg:#0f3142;--ewb-muted:#5b7582;--ewb-accent:#087ea4;--ewb-accent-2:#dceff7;--ewb-btn-fg:#fff}
.ewb-theme-forest{--ewb-bg:#f5faf5;--ewb-fg:#18321b;--ewb-muted:#607362;--ewb-accent:#2c6e3f;--ewb-accent-2:#e1efe3;--ewb-btn-fg:#fff}
.ewb-theme-paper{--ewb-bg:#fbf8ef;--ewb-fg:#28241e;--ewb-muted:#736d63;--ewb-accent:#40382e;--ewb-accent-2:#efe8da;--ewb-btn-fg:#fff}
.ewb-theme-terminal{--ewb-bg:#0e130e;--ewb-fg:#d8ffd8;--ewb-muted:#8cc68c;--ewb-accent:#8aff80;--ewb-accent-2:#182018;--ewb-btn-fg:#0b120b}
.ewb-theme-candy{--ewb-bg:#fff8ff;--ewb-fg:#3b193a;--ewb-muted:#805f7e;--ewb-accent:#a73ca0;--ewb-accent-2:#f4def2;--ewb-btn-fg:#fff}
.ewb-theme-blueprint{--ewb-bg:#f3f8ff;--ewb-fg:#12284a;--ewb-muted:#61718c;--ewb-accent:#1f5fae;--ewb-accent-2:#e0ebf8;--ewb-btn-fg:#fff}
.ewb-theme-cinema{--ewb-bg:#161616;--ewb-fg:#f5f5f5;--ewb-muted:#b5b5b5;--ewb-accent:#d5aa3d;--ewb-accent-2:#262626;--ewb-btn-fg:#111}
.ewb-theme-orchid{--ewb-bg:#fcf8ff;--ewb-fg:#2f1e3b;--ewb-muted:#75647f;--ewb-accent:#7f4bad;--ewb-accent-2:#eee2f6;--ewb-btn-fg:#fff}
.ewb-theme-coral{--ewb-bg:#fff8f6;--ewb-fg:#3c2421;--ewb-muted:#806763;--ewb-accent:#d55345;--ewb-accent-2:#f7dfdb;--ewb-btn-fg:#fff}
.ewb-theme-mono{--ewb-bg:#f7f7f7;--ewb-fg:#111;--ewb-muted:#666;--ewb-accent:#333;--ewb-accent-2:#e7e7e7;--ewb-btn-fg:#fff}

@media(max-width:900px){.ewb-consent-custom{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
  .ewb-privacy{left:0;right:0;bottom:0}
  .ewb-privacy-card{width:100%;border-radius:16px 16px 0 0;border-left:0;border-right:0;border-bottom:0;grid-template-columns:1fr;padding:11px 12px 12px;gap:9px}
  .ewb-privacy-copy{padding-right:0}.ewb-privacy-copy strong{font-size:13.5px}.ewb-privacy-copy p{font-size:11.5px}
  .ewb-privacy-actions{grid-template-columns:1fr 1fr 1fr;width:100%}.ewb-privacy-actions .ewb-btn{padding:8px 6px;min-width:0}
  .ewb-consent-custom{grid-template-columns:1fr;max-height:42vh;overflow:auto}.ewb-custom-actions{position:sticky;bottom:0;background:var(--ewb-bg);padding-top:5px}
  .ewb-dock-button{right:10px;bottom:10px;width:48px;height:48px}.ewb-privacy-pill{right:8px;bottom:62px}
  .ewb-feedback-modal{place-items:end center;padding:0 8px 68px}.ewb-feedback-card{width:100%;max-height:72vh;border-radius:18px 18px 12px 12px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}.ewb-decor,.ewb-face-pop,.ewb-dock-arrive,.ewb-consent-morph,.ewb-banner-exit{animation:none!important}.ewb-dock-button,.ewb-btn{transition:none!important}}


/* ==========================================================================
   Budget Wizard 3.0 — balanced-budget privacy transition
   ========================================================================== */
.ewb-theme-budget-wizard{
  --ewb-bg:#f7fbff;
  --ewb-fg:#10204e;
  --ewb-muted:#687690;
  --ewb-accent:#1468ff;
  --ewb-accent-2:#eef5ff;
  --ewb-btn-fg:#fff;
}
.ewb-theme-budget-wizard .ewb-privacy-card{
  width:min(1240px,calc(100vw - 40px));
  max-width:100%;
  border-color:rgba(20,104,255,.16);
  background:
    radial-gradient(circle at 91% 12%,rgba(107,33,232,.10),transparent 25%),
    radial-gradient(circle at 7% 70%,rgba(45,212,191,.10),transparent 26%),
    linear-gradient(180deg,#fbfdff,#f3f8ff);
  box-shadow:0 22px 64px rgba(16,32,78,.16);
}
.ewb-theme-budget-wizard .ewb-decor-coin{
  color:#6b21e8;
  opacity:.18;
  font-size:56px;
}
.ewb-theme-budget-wizard .ewb-btn-primary{
  background:linear-gradient(135deg,#1468ff,#5b35dd);
  border-color:transparent;
}
.ewb-theme-budget-wizard .ewb-btn-secondary{
  background:#fff;
  color:#10204e;
  border-color:rgba(20,104,255,.18);
}
.ewb-theme-budget-wizard .ewb-purpose input{accent-color:#1468ff}
.ewb-theme-budget-wizard.ewb-dock-button{
  background:linear-gradient(135deg,#1468ff,#6334df);
  color:#fff;
  border:3px solid #ffd84a;
  box-shadow:0 12px 30px rgba(20,104,255,.28);
}
.ewb-theme-budget-wizard.ewb-privacy-pill{
  background:rgba(250,253,255,.97);
  color:#10204e;
  border-color:rgba(20,104,255,.17);
}

/* Ledger morph. */
.ewb-consent-morph.ewb-theme-budget-wizard.ewb-budget-ledger{
  background:#f8fbff;
  color:#10204e;
  border:1px solid rgba(20,104,255,.18);
  box-shadow:0 28px 80px rgba(16,32,78,.24);
  isolation:isolate;
}
.ewb-budget-ledger .ewb-budget-paper{
  position:absolute;
  inset:0;
  opacity:0;
  background:
    linear-gradient(rgba(20,104,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(20,104,255,.032) 1px,transparent 1px),
    radial-gradient(circle at 92% 8%,rgba(107,33,232,.11),transparent 26%),
    #fbfdff;
  background-size:22px 22px,22px 22px,auto,auto;
  transition:opacity .18s ease;
}
.ewb-budget-ledger-head{
  position:absolute;
  left:7%;
  top:10%;
  display:grid;
  gap:2px;
  opacity:0;
  transform:translateY(5px);
}
.ewb-budget-ledger-head b{
  font:900 12px/1 system-ui,sans-serif;
  letter-spacing:.15em;
}
.ewb-budget-ledger-head small{
  color:#76849e;
  font:700 9px/1 system-ui,sans-serif;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.ewb-budget-row{
  position:absolute;
  left:7%;
  width:62%;
  display:grid;
  grid-template-columns:52px 1fr 18px;
  gap:8px;
  align-items:center;
  opacity:0;
  transform:translateX(-7px);
}
.ewb-budget-row.income{top:35%}
.ewb-budget-row.bills{top:53%}
.ewb-budget-row.save{top:71%}
.ewb-budget-row i{
  font:800 10px/1 system-ui,sans-serif;
  color:#53627d;
  font-style:normal;
}
.ewb-budget-row > span{
  height:9px;
  overflow:hidden;
  border-radius:99px;
  background:#e5edf8;
}
.ewb-budget-row em{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
}
.ewb-budget-row.income em{background:linear-gradient(90deg,#1468ff,#2dd4bf)}
.ewb-budget-row.bills em{background:linear-gradient(90deg,#6b21e8,#9a6af2)}
.ewb-budget-row.save em{background:linear-gradient(90deg,#f5b700,#ffd84a)}
.ewb-budget-row b{
  font:900 12px/1 system-ui,sans-serif;
  color:#1468ff;
  text-align:center;
}
.ewb-budget-balance{
  position:absolute;
  right:7%;
  top:34%;
  width:22%;
  min-width:78px;
  aspect-ratio:1;
  border-radius:20px;
  display:grid;
  place-content:center;
  text-align:center;
  opacity:0;
  transform:scale(.78);
  background:linear-gradient(145deg,#10204e,#243f83);
  color:#fff;
  box-shadow:0 12px 28px rgba(16,32,78,.20);
}
.ewb-budget-balance small{
  color:#cbd8f1;
  font:800 8px/1 system-ui,sans-serif;
  letter-spacing:.12em;
}
.ewb-budget-balance strong{
  margin-top:5px;
  color:#ffd84a;
  font:900 27px/1 system-ui,sans-serif;
}
.ewb-budget-spark{
  position:absolute;
  z-index:3;
  color:#ffd84a;
  opacity:0;
  text-shadow:0 0 15px rgba(255,216,74,.7);
}
.ewb-budget-spark.spark-a{right:5%;top:7%;font-size:26px}
.ewb-budget-spark.spark-b{left:4%;bottom:5%;font-size:18px;color:#2dd4bf}

.ewb-budget-ledger.ewb-budget-stage-1 .ewb-budget-paper,
.ewb-budget-ledger.ewb-budget-stage-1 .ewb-budget-ledger-head{
  opacity:1;
  transform:none;
}
.ewb-budget-ledger.ewb-budget-stage-1 .ewb-budget-row{
  opacity:1;
  transform:none;
  transition:opacity .16s ease,transform .22s ease;
}
.ewb-budget-ledger.ewb-budget-stage-1 .ewb-budget-row.income em{animation:ewbBudgetIncome .50s ease forwards}
.ewb-budget-ledger.ewb-budget-stage-1 .ewb-budget-row.bills em{animation:ewbBudgetBills .50s .08s ease forwards}
.ewb-budget-ledger.ewb-budget-stage-1 .ewb-budget-row.save em{animation:ewbBudgetSave .50s .16s ease forwards}
@keyframes ewbBudgetIncome{to{width:92%}}
@keyframes ewbBudgetBills{to{width:68%}}
@keyframes ewbBudgetSave{to{width:44%}}

.ewb-budget-ledger.ewb-budget-stage-2 .ewb-budget-balance{
  opacity:1;
  animation:ewbBudgetBalance .38s cubic-bezier(.18,.86,.22,1.2) forwards;
}
.ewb-budget-ledger.ewb-budget-stage-2 .ewb-budget-spark{
  animation:ewbBudgetSpark .46s ease forwards;
}
@keyframes ewbBudgetBalance{
  0%{opacity:0;transform:scale(.68) rotate(-5deg)}
  72%{opacity:1;transform:scale(1.10) rotate(2deg)}
  100%{opacity:1;transform:scale(1) rotate(0)}
}
@keyframes ewbBudgetSpark{
  0%{opacity:0;transform:scale(.25) rotate(-40deg)}
  62%{opacity:1;transform:scale(1.35) rotate(10deg)}
  100%{opacity:.9;transform:scale(1) rotate(0)}
}

.ewb-budget-orb{
  position:absolute;
  width:84px;
  height:84px;
  border-radius:999px;
  display:grid;
  place-items:center;
  opacity:0;
  transform:scale(.35) rotate(-18deg);
  background:
    radial-gradient(circle at 35% 27%,rgba(255,255,255,.35),transparent 18%),
    linear-gradient(145deg,#1468ff,#6534df);
  border:4px solid #ffd84a;
  box-shadow:0 14px 34px rgba(20,104,255,.28);
}
.ewb-budget-pound{
  color:#fff;
  font:900 35px/1 system-ui,sans-serif;
}
.ewb-budget-face{
  position:absolute;
  width:38px;
  height:38px;
  color:#fff;
  opacity:0;
  transform:scale(.55);
}
.ewb-budget-ledger.ewb-budget-stage-3 .ewb-budget-ledger-head,
.ewb-budget-ledger.ewb-budget-stage-3 .ewb-budget-row,
.ewb-budget-ledger.ewb-budget-stage-3 .ewb-budget-balance{
  opacity:0;
  transition:opacity .15s ease;
}
.ewb-budget-ledger.ewb-budget-stage-3 .ewb-budget-orb{
  opacity:1;
  animation:ewbBudgetOrb .38s cubic-bezier(.18,.86,.22,1.2) forwards;
}
@keyframes ewbBudgetOrb{
  0%{opacity:0;transform:scale(.35) rotate(-20deg)}
  70%{opacity:1;transform:scale(1.14) rotate(7deg)}
  100%{opacity:1;transform:scale(1) rotate(0)}
}
.ewb-budget-ledger.ewb-budget-stage-4 .ewb-budget-pound{
  opacity:0;
  transform:scale(.55);
  transition:opacity .14s ease,transform .14s ease;
}
.ewb-budget-ledger.ewb-budget-stage-4 .ewb-budget-face{
  opacity:1;
  animation:ewbBudgetFace .28s cubic-bezier(.18,.86,.22,1.2) forwards;
}
@keyframes ewbBudgetFace{
  0%{opacity:0;transform:scale(.45)}
  72%{opacity:1;transform:scale(1.18)}
  100%{opacity:1;transform:scale(1)}
}
.ewb-theme-budget-wizard.ewb-dock-button.ewb-budget-dock-arrive{
  animation:ewbBudgetDock .72s cubic-bezier(.18,.88,.22,1) both;
}
@keyframes ewbBudgetDock{
  0%{transform:scale(.68);box-shadow:0 0 0 0 rgba(255,216,74,.5)}
  45%{transform:scale(1.17);box-shadow:0 0 0 14px rgba(255,216,74,0)}
  76%{transform:scale(.97)}
  100%{transform:scale(1)}
}

/* Current Budget Wizard shell / placements. */
.ewb-budgetwizard-slot.has-ad{
  position:relative;
  padding-block:4px;
}
.ewb-budgetwizard-slot.has-ad::before{
  content:"";
  position:absolute;
  left:50%;
  top:-10px;
  width:min(180px,30vw);
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(20,104,255,.28),rgba(107,33,232,.28),transparent);
}
@media(max-width:720px){
  .ewb-theme-budget-wizard .ewb-privacy-card{
    width:100%;
    max-width:none;
  }
}
@media(prefers-reduced-motion:reduce){
  .ewb-budget-ledger *,
  .ewb-theme-budget-wizard.ewb-dock-button.ewb-budget-dock-arrive{
    animation:none!important;
    transition:none!important;
  }
}
