/* EWB privacy/feedback client v2.0.1 */
: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(1320px,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:22px;padding:16px 18px 18px;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{left:0;right:0;width:auto;height:8px;top:auto;bottom:0;background:linear-gradient(90deg,#ff5b5b,#ff9e4b,#ffcf4b,#64d66c,#49a9ff,#7b6dff,#a873ff,#ff69b4);background-size:220% 100%;opacity:.92;animation:ewbSpectrumFlow 7s linear 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}
.ewb-action-spectrum{display:none}
.ewb-theme-palette-burst .ewb-action-spectrum{display:block;position:absolute;left:0;right:0;bottom:0;height:10px;border-radius:0 0 22px 22px;background:linear-gradient(90deg,#ff5b5b 0%,#ff9e4b 14%,#ffd54f 28%,#64d66c 42%,#49a9ff 58%,#7b6dff 76%,#b85cff 88%,#ff69b4 100%);background-size:240% 100%;opacity:.96;transform-origin:bottom center;transform:translateY(0) scaleY(1);transition:height .46s cubic-bezier(.2,.9,.2,1),transform .46s cubic-bezier(.2,.9,.2,1),opacity .28s ease,filter .46s ease;border-top:1px solid rgba(255,255,255,.4);box-shadow:0 -2px 18px rgba(91,70,216,.12) inset;animation:ewbSpectrumFlow 8s linear infinite}
.ewb-theme-palette-burst .ewb-privacy-card{padding-bottom:24px}
.ewb-theme-palette-burst .ewb-privacy-card.ewb-actioning .ewb-action-spectrum{height:54px;filter:saturate(1.15);box-shadow:0 -14px 42px rgba(91,70,216,.18) inset,0 -10px 36px rgba(123,109,255,.16) inset;transform:translateY(0) scaleY(1)}
.ewb-theme-palette-burst .ewb-privacy-card.ewb-actioning.is-custom .ewb-action-spectrum{height:70px}
.ewb-theme-palette-burst .ewb-privacy-card.ewb-actioning.is-reject .ewb-action-spectrum{background:linear-gradient(90deg,#6d5dfc 0%,#4bb6ff 28%,#4be0d2 55%,#7b6dff 78%,#ff69b4 100%);background-size:240% 100%}
.ewb-theme-palette-burst .ewb-privacy-card.ewb-actioning.is-accept .ewb-action-spectrum,.ewb-theme-palette-burst .ewb-privacy-card.ewb-actioning.is-save .ewb-action-spectrum{background:linear-gradient(90deg,#ff5b5b 0%,#ff9e4b 14%,#ffd54f 28%,#64d66c 42%,#49a9ff 58%,#7b6dff 76%,#b85cff 88%,#ff69b4 100%);background-size:240% 100%}
.ewb-theme-palette-burst .ewb-privacy-card.ewb-actioning::after{content:"";position:absolute;left:-18%;right:-18%;bottom:-8px;height:110px;background:radial-gradient(circle at 50% 100%, rgba(255,255,255,.55) 0%, rgba(255,255,255,.14) 26%, rgba(255,255,255,0) 62%);animation:ewbPaletteLift .5s ease-out forwards;pointer-events:none}
@keyframes ewbPaletteLift{0%{opacity:0;transform:translateY(18px) scale(.92)}35%{opacity:.95}100%{opacity:0;transform:translateY(-12px) scale(1.08)}}
@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 ewbSpectrumFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
@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:18px 18px 0 0;border-left:0;border-right:0;border-bottom:0;grid-template-columns:1fr;padding:12px 12px 16px;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}}

@media(max-width:720px){.ewb-theme-palette-burst .ewb-privacy-card.ewb-actioning .ewb-action-spectrum{height:42px}.ewb-theme-palette-burst .ewb-privacy-card.ewb-actioning.is-custom .ewb-action-spectrum{height:52px}}
