/* Ultra Combo Preferred Sources — intentionally self-contained and theme-safe. */
.ucps-root {
  --ucps-bg:#171621; --ucps-fg:#fffaff; --ucps-muted:#c0bacb;
  --ucps-a:#8e4dff; --ucps-b:#f15a9b; --ucps-border:rgba(255,255,255,.16);
  --ucps-bottom:24px;
  font: 500 14px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  letter-spacing:normal; text-align:left; text-transform:none;
  color:var(--ucps-fg); box-sizing:border-box; isolation:isolate;
}
.ucps-root *, .ucps-root *::before, .ucps-root *::after {box-sizing:border-box}
.ucps-root[hidden]{display:none!important}
.ucps-root svg{display:block;width:19px;height:19px;flex:none}
.ucps-root a, .ucps-root a:visited{color:inherit;text-decoration:none}
.ucps-root button{font:inherit;cursor:pointer}
.ucps-root :is(a,button):focus-visible{outline:3px solid var(--ucps-a);outline-offset:4px}
.ucps--theme-logo {
  --ucps-bg:#171520;--ucps-fg:#fffaff;--ucps-muted:#d3c6d7;--ucps-a:#8548f6;--ucps-b:#ff7b44;
  --ucps-border:rgba(224,159,255,.27);
}
.ucps--theme-cyber {
  --ucps-bg:#100c24;--ucps-fg:#f3f9ff;--ucps-muted:#bdb5d8;--ucps-a:#7a3dff;--ucps-b:#00c9e8;
  --ucps-border:rgba(0,201,232,.32);
}
.ucps--theme-sunset {
  --ucps-bg:#271522;--ucps-fg:#fff6f4;--ucps-muted:#f3c7cb;--ucps-a:#e23d8a;--ucps-b:#ff8c35;
  --ucps-border:rgba(255,170,130,.27);
}
.ucps--theme-carbon {
  --ucps-bg:#171a20;--ucps-fg:#f9fafb;--ucps-muted:#c4cbd4;--ucps-a:#4c5264;--ucps-b:#ef973c;
  --ucps-border:rgba(255,255,255,.19);
}
.ucps--theme-light {
  --ucps-bg:#fafaff;--ucps-fg:#17213d;--ucps-muted:#56617b;--ucps-a:#5145c7;--ucps-b:#8375e2;
  --ucps-border:rgba(53,62,105,.22);
}
.ucps--theme-custom {--ucps-muted:var(--ucps-fg);--ucps-border:color-mix(in srgb,var(--ucps-fg) 22%, transparent)}
.ucps--floating{
  position:fixed;bottom:calc(var(--ucps-bottom) + env(safe-area-inset-bottom, 0px));
  right:24px;z-index:9997;width:max-content;max-width:min(375px,calc(100vw - 40px));
  visibility:hidden;opacity:0;pointer-events:none;transform:translateY(12px);
  transition:opacity .28s ease, transform .28s ease, visibility .28s ease;
}
.ucps--floating.ucps--visible{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}
.ucps--pos-left{right:auto;left:24px}
.ucps--inline{position:relative;width:100%;max-width:760px;margin:30px auto 24px;clear:both}
.ucps-pill{display:flex;align-items:stretch;min-height:50px;border-radius:999px;box-shadow:0 12px 38px rgba(0,0,0,.35);border:1px solid var(--ucps-border);background:var(--ucps-bg);overflow:hidden}
.ucps-pill-link{display:flex;align-items:center;gap:9px;border:0!important;padding:8px 10px 8px 13px!important;min-width:0;min-height:48px;background:transparent;transition:background-color .2s ease}
.ucps-pill-link:hover{background:rgba(145,109,210,.13)}
.ucps-pill-text{font-size:13px;font-weight:800;white-space:nowrap}
.ucps-pill-arrow{font-size:18px;line-height:1.1;opacity:.85}
.ucps-star{width:29px;height:29px;display:grid;place-items:center;flex:none;border-radius:50%;background:linear-gradient(130deg,var(--ucps-a),var(--ucps-b));color:#fff}
.ucps-star svg{width:17px;height:17px}
.ucps-dismiss{appearance:none;background:transparent;border:0!important;outline-offset:2px;color:var(--ucps-fg);opacity:.65;display:grid;place-items:center;transition:opacity .2s ease,background-color .2s ease}
.ucps-dismiss:hover{opacity:1;background:rgba(145,145,145,.14)}
.ucps-dismiss-pill{min-width:32px;margin:0;padding:0 9px 0 4px!important}
.ucps-dismiss svg{width:14px;height:14px}
.ucps-card{position:relative;width:350px;max-width:100%;padding:18px 19px 14px;border-radius:18px;background:var(--ucps-bg);border:1px solid var(--ucps-border);box-shadow:0 18px 55px rgba(0,0,0,.32), 0 0 34px color-mix(in srgb,var(--ucps-a) 13%,transparent);overflow:hidden}
.ucps--inline .ucps-card{width:100%;max-width:none;padding:19px 22px}
.ucps-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--ucps-a),var(--ucps-b))}
.ucps-card-top{display:flex;align-items:center;gap:10px;margin-bottom:13px}
.ucps-card-icon{width:32px;height:32px}
.ucps-card-brand{font-size:11px;font-weight:850;letter-spacing:.12em;line-height:1.2}
.ucps-dismiss-card{margin-left:auto;width:28px;height:28px;border-radius:7px}
.ucps-card-title{color:var(--ucps-fg)!important;font-family:inherit!important;font-weight:800!important;font-size:19px!important;line-height:1.24!important;letter-spacing:-.35px!important;margin:0 0 7px!important;padding:0!important}
.ucps-card-copy{font-size:13px!important;font-family:inherit!important;line-height:1.55!important;color:var(--ucps-muted)!important;margin:0 0 16px!important;padding:0!important}
.ucps-card-link{display:flex;align-items:center;justify-content:center;gap:9px;min-height:43px;padding:11px 13px!important;border:0!important;border-radius:10px;background:linear-gradient(105deg,var(--ucps-a),var(--ucps-b));box-shadow:0 6px 22px color-mix(in srgb,var(--ucps-a) 22%,transparent);color:#fff!important;text-align:center;font-size:12.5px;font-weight:800;line-height:1.2;transition:transform .2s ease,filter .2s ease}
.ucps-card-link:hover{filter:brightness(1.12);transform:translateY(-1px)}
.ucps-card-link svg{width:15px;height:15px}
.ucps-caption{display:block;color:var(--ucps-muted);opacity:.75;text-align:center;font-size:10px;margin-top:11px}
.ucps--theme-logo .ucps-star, .ucps--theme-logo .ucps-card-link {
  background:linear-gradient(112deg,#8d4ee9 0%,#bf42bd 52%,#f27b45 100%);
}
.ucps--theme-light .ucps-pill{box-shadow:0 11px 34px rgba(29,33,72,.18)}
.ucps--theme-light .ucps-card{box-shadow:0 16px 45px rgba(29,33,72,.17)}
.ucps--theme-light .ucps-pill-link:hover{background:rgba(81,69,199,.07)}
@media (max-width:600px){
  .ucps--floating{right:14px;bottom:calc(var(--ucps-bottom) + env(safe-area-inset-bottom, 0px));max-width:calc(100vw - 28px)}
  .ucps--pos-left{left:14px;right:auto}
  .ucps--hide-mobile{display:none!important}
  .ucps-card{width:min(338px,calc(100vw - 28px));padding:16px}
  .ucps-card-title{font-size:18px!important}
  .ucps-pill{min-height:47px}
  .ucps-pill-link{min-height:46px}
  .ucps-pill-text{font-size:12px}
  .ucps--inline{margin:24px 0}
}
@media (prefers-reduced-motion:reduce){.ucps-root,.ucps-root *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Web Push subscription widget; inherits the same six themes. */
.ucps-push-widget{max-width:760px;margin:27px auto;position:relative;clear:both}
.ucps-push-widget.ucps--floating{width:320px;max-width:calc(100vw - 28px);left:20px;right:auto;bottom:calc(22px + env(safe-area-inset-bottom, 0px));margin:0;visibility:visible;opacity:1;pointer-events:auto;transform:none}
.ucps-push-widget[hidden]{display:none!important}
.ucps-push-inner{background:var(--ucps-bg);border:1px solid var(--ucps-border);border-radius:17px;padding:18px 20px;box-shadow:0 14px 37px rgba(0,0,0,.25);overflow:hidden;position:relative}
.ucps-push-inner:before{content:"";height:3px;position:absolute;top:0;left:0;right:0;background:linear-gradient(105deg,var(--ucps-a),var(--ucps-b))}
.ucps-push-head{display:flex;align-items:center;gap:11px;margin-bottom:8px}
.ucps-push-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:linear-gradient(115deg,var(--ucps-a),var(--ucps-b));color:#fff;flex:none}
.ucps-push-mark svg{width:19px;height:19px}
.ucps-push-head b{color:var(--ucps-fg);font-size:16px;font-weight:800;line-height:1.25}
.ucps-push-close{margin-left:auto;border:0!important;color:var(--ucps-fg);opacity:.7;background:none!important;cursor:pointer;font-size:23px;line-height:1;padding:4px 6px!important}
.ucps-push-close:hover{opacity:1}
.ucps-push-copy{font-size:13px;line-height:1.5;color:var(--ucps-muted);margin:0 0 14px!important}
.ucps-push-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 17px!important;border-radius:10px;border:0!important;background:linear-gradient(108deg,var(--ucps-a),var(--ucps-b));color:white!important;font-size:13px!important;font-weight:800!important;cursor:pointer}
.ucps-push-action:disabled{opacity:.6;cursor:not-allowed}
.ucps-push-widget[data-ucps-push] [data-ucps-push-status]{display:block;min-height:17px;margin-top:10px;font-size:11px;line-height:1.5;color:var(--ucps-muted)}
@media(max-width:600px){.ucps-push-widget.ucps--floating{left:14px;bottom:calc(18px + env(safe-area-inset-bottom, 0px));max-width:calc(100vw - 28px);width:300px}.ucps-push-inner{padding:15px}}

/* v1.2: optional native sidebar widget and unobtrusive configurable floating invitation. */
.ucps-push-widget.ucps--sidebar{position:relative;width:100%;max-width:100%;margin:0;clear:both}
.ucps-push-widget.ucps--sidebar .ucps-push-inner{width:100%;padding:17px 16px}
.ucps-push-widget.ucps--sidebar .ucps-push-head{align-items:flex-start}
.ucps-push-widget.ucps--sidebar .ucps-push-head b{font-size:15px;line-height:1.35}
.ucps-push-widget.ucps--sidebar .ucps-push-copy{font-size:12.5px}
.ucps-push-widget.ucps--sidebar .ucps-push-action{width:100%}
.ucps-push-widget.ucps--floating{
  bottom:calc(var(--ucps-bottom) + env(safe-area-inset-bottom, 0px));
  left:20px;right:auto;visibility:hidden;opacity:0;pointer-events:none;
  transform:translateY(12px);transition:opacity .28s ease,transform .28s ease,visibility .28s ease;
}
.ucps-push-widget.ucps--floating.ucps--visible{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}
.ucps-push-widget.ucps--floating.ucps--pos-right{left:auto;right:20px}
.ucps-push-widget.ucps--floating.ucps--hide-mobile{display:block}
/* If both Google sources and push occupy the same side, move push above the sources card. */
body:has(.ucps-root[data-ucps-context="floating"].ucps--pos-left) .ucps-push-widget.ucps--floating.ucps--pos-left{bottom:calc(var(--ucps-bottom) + 106px + env(safe-area-inset-bottom, 0px))}
body:has(.ucps-root[data-ucps-context="floating"].ucps--pos-right) .ucps-push-widget.ucps--floating.ucps--pos-right{bottom:calc(var(--ucps-bottom) + 106px + env(safe-area-inset-bottom, 0px))}
@media(max-width:600px){
  .ucps-push-widget.ucps--floating{left:14px;bottom:calc(var(--ucps-bottom) + env(safe-area-inset-bottom, 0px));width:min(310px,calc(100vw - 28px))}
  .ucps-push-widget.ucps--floating.ucps--pos-right{left:auto;right:14px}
  .ucps-push-widget.ucps--floating.ucps--hide-mobile{display:none!important}
}
/* Widget base CSS must never cancel fixed positioning on floating copies. */
.ucps-push-widget.ucps--floating{position:fixed;z-index:9997}
body:has(.ucps-root[data-ucps-context="floating"].ucps--layout-card.ucps--pos-left) .ucps-push-widget.ucps--floating.ucps--pos-left,
body:has(.ucps-root[data-ucps-context="floating"].ucps--layout-card.ucps--pos-right) .ucps-push-widget.ucps--floating.ucps--pos-right{bottom:calc(var(--ucps-bottom) + 285px + env(safe-area-inset-bottom, 0px))}
