:root{--pato-pwa-bg:#08080a;--pato-pwa-panel:#111116;--pato-pwa-line:rgba(255,255,255,.11);--pato-pwa-text:#fff;--pato-pwa-muted:rgba(255,255,255,.6);--pato-pwa-accent:#b778d1}
.pato-pwa-install,.pato-startup-modal,.pato-push-prompt{position:fixed;inset:0;z-index:12050;pointer-events:none;font-family:inherit}
.pato-pwa-install__backdrop,.pato-startup-modal__backdrop,.pato-push-prompt__backdrop{position:absolute;inset:0;background:rgba(3,3,5,.64);backdrop-filter:blur(12px);opacity:0;transition:.25s}
.pato-pwa-install__card,.pato-startup-modal__card,.pato-push-prompt__card{position:absolute;right:22px;bottom:22px;width:min(430px,calc(100vw - 32px));border:1px solid var(--pato-pwa-line);background:linear-gradient(145deg,rgba(22,22,28,.98),rgba(8,8,10,.98));box-shadow:0 30px 100px rgba(0,0,0,.55);color:var(--pato-pwa-text);opacity:0;transform:translateY(22px) scale(.98);transition:.28s ease;overflow:hidden}
.pato-startup-modal__card,.pato-push-prompt__card{left:50%;right:auto;bottom:auto;top:50%;transform:translate(-50%,-46%) scale(.98);width:min(520px,calc(100vw - 32px))}
.pato-pwa-install.is-visible,.pato-startup-modal.is-visible,.pato-push-prompt.is-visible{pointer-events:auto}
.pato-pwa-install.is-visible .pato-pwa-install__backdrop,.pato-startup-modal.is-visible .pato-startup-modal__backdrop,.pato-push-prompt.is-visible .pato-push-prompt__backdrop{opacity:1}
.pato-pwa-install.is-visible .pato-pwa-install__card{opacity:1;transform:none}
.pato-startup-modal.is-visible .pato-startup-modal__card,.pato-push-prompt.is-visible .pato-push-prompt__card{opacity:1;transform:translate(-50%,-50%) scale(1)}
.pato-pwa-install__visual,.pato-startup-modal__visual{height:170px;background:radial-gradient(circle at 20% 20%,rgba(183,120,209,.36),transparent 42%),#0b0b0f;display:grid;place-items:center;overflow:hidden}
.pato-pwa-install__visual img,.pato-startup-modal__visual img,.pato-startup-modal__visual video{width:100%;height:100%;object-fit:cover}
.pato-pwa-install__mark{width:76px;height:76px;border-radius:22px;display:grid;place-items:center;background:#fff;color:#08080a;font-size:30px;font-weight:900;box-shadow:0 18px 45px rgba(0,0,0,.35)}
.pato-pwa-install__body,.pato-startup-modal__body,.pato-push-prompt__card{padding:22px}
.pato-pwa-install__eyebrow,.pato-startup-modal__eyebrow,.pato-push-prompt__eyebrow{font-size:8px;letter-spacing:.22em;color:var(--pato-pwa-accent);font-weight:900}
.pato-pwa-install h3,.pato-startup-modal h3,.pato-push-prompt h3{margin:8px 0 8px;color:#fff;font-size:26px;line-height:1.08}
.pato-pwa-install p,.pato-startup-modal p,.pato-push-prompt p{margin:0;color:var(--pato-pwa-muted);font-size:12px;line-height:1.75}
.pato-pwa-install__features{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:16px 0}
.pato-pwa-install__features span{padding:9px 8px;border:1px solid var(--pato-pwa-line);background:rgba(255,255,255,.025);font-size:8px;letter-spacing:.06em;text-align:center;color:rgba(255,255,255,.72)}
.pato-pwa-install__actions,.pato-startup-modal__actions,.pato-push-prompt__actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.pato-pwa-install button,.pato-startup-modal button,.pato-startup-modal a,.pato-push-prompt button{min-height:42px;padding:0 15px;border:1px solid var(--pato-pwa-line);background:transparent;color:#fff;font-size:9px;letter-spacing:.1em;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.pato-pwa-install [data-pato-install-now],.pato-startup-modal__primary,.pato-push-prompt [data-pato-push-prompt-enable]{background:#fff;color:#08080a;border-color:#fff}
.pato-pwa-install__close,.pato-startup-modal__close,.pato-push-prompt__close{position:absolute;right:10px;top:10px;z-index:3;width:36px;min-height:36px!important;padding:0!important;border-radius:50%;background:rgba(8,8,10,.64)!important;backdrop-filter:blur(10px);font-size:18px!important}
.pato-startup-modal__html{color:rgba(255,255,255,.75);font-size:12px;line-height:1.75}
.pato-push-prompt__icon{width:54px;height:54px;border:1px solid var(--pato-pwa-line);display:grid;place-items:center;margin-bottom:15px;font-size:20px;color:var(--pato-pwa-accent)}
.pato-push-prompt small{display:block;margin-top:12px;color:rgba(255,255,255,.35);font-size:9px}
.pato-pwa-install__ios{margin-top:14px;padding:12px;border:1px solid var(--pato-pwa-line);background:rgba(255,255,255,.025);font-size:10px;line-height:1.65;color:rgba(255,255,255,.72)}
@media(max-width:767.98px){.pato-pwa-install__card{right:12px;left:12px;bottom:12px;width:auto}.pato-pwa-install__visual,.pato-startup-modal__visual{height:145px}.pato-pwa-install__features{grid-template-columns:1fr}.pato-startup-modal__card,.pato-push-prompt__card{width:calc(100vw - 24px)}}
@media(prefers-reduced-motion:reduce){.pato-pwa-install__card,.pato-startup-modal__card,.pato-push-prompt__card,.pato-pwa-install__backdrop,.pato-startup-modal__backdrop,.pato-push-prompt__backdrop{transition:none}}

.pato-push-topics{display:grid;gap:8px;margin:16px 0}
.pato-push-topic{display:grid;grid-template-columns:42px 1fr 22px;align-items:center;gap:12px;padding:12px;border:1px solid var(--pato-pwa-line);background:rgba(255,255,255,.025);cursor:pointer;transition:.2s}
.pato-push-topic:hover,.pato-push-topic.is-selected{border-color:rgba(183,120,209,.65);background:rgba(183,120,209,.08)}
.pato-push-topic__icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--pato-pwa-line);font-size:15px}
.pato-push-topic strong{display:block;color:#fff;font-size:11px;letter-spacing:.04em}.pato-push-topic small{display:block;color:var(--pato-pwa-muted);font-size:9px;line-height:1.45;margin-top:3px}
.pato-push-topic input{accent-color:#b778d1;width:16px;height:16px}
.pato-push-prompt__status{margin-top:12px;padding:10px 12px;border:1px solid var(--pato-pwa-line);color:rgba(255,255,255,.7);font-size:9px}
.pato-footer-push{border:0;background:transparent;color:inherit;padding:0;font:inherit;cursor:pointer}.pato-footer-push:hover{color:#fff}

/* PATO button system: isolate interactive CTAs from Bootstrap/theme button overrides. */
.pato-ui-btn{
  -webkit-appearance:none;
  appearance:none;
  box-sizing:border-box;
  min-width:0;
  min-height:44px;
  margin:0;
  padding:0 18px;
  border:1px solid var(--pato-pwa-line);
  border-radius:0;
  background:transparent;
  color:#fff;
  font:inherit;
  font-size:10px;
  font-weight:900;
  line-height:1;
  letter-spacing:.085em;
  text-transform:uppercase;
  text-decoration:none!important;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  vertical-align:middle;
  cursor:pointer;
  user-select:none;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,opacity .18s ease;
}
.pato-ui-btn i,.pato-ui-btn svg{flex:0 0 auto;line-height:1}
.pato-ui-btn:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28);color:#fff}
.pato-ui-btn:active{transform:translateY(1px)}
.pato-ui-btn:focus-visible{outline:2px solid var(--pato-pwa-accent);outline-offset:3px}
.pato-ui-btn:disabled,.pato-ui-btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed;pointer-events:none}
.pato-ui-btn--primary{background:#fff;border-color:#fff;color:#08080a}
.pato-ui-btn--primary:hover{background:var(--pato-pwa-accent);border-color:var(--pato-pwa-accent);color:#08080a}
.pato-ui-btn--danger{border-color:rgba(255,110,110,.35);color:#ffb0b0}
.pato-ui-btn--danger:hover{background:rgba(255,80,80,.12);border-color:rgba(255,110,110,.65);color:#fff}
.pato-ui-btn--ghost{border-color:transparent;color:rgba(255,255,255,.58);padding-inline:10px}
.pato-ui-btn--ghost:hover{background:transparent;border-color:transparent;color:#fff}
.pato-ui-btn--icon{width:38px;min-width:38px;min-height:38px;padding:0;border-radius:50%}
.pato-ui-btn--grow{flex:1 1 auto}
.pato-pwa-install__actions .pato-ui-btn,.pato-startup-modal__actions .pato-ui-btn,.pato-push-prompt__actions .pato-ui-btn{min-height:44px}
@media(max-width:575.98px){
  .pato-ui-btn{min-height:46px;padding:0 14px;font-size:9px;white-space:normal;text-align:center;line-height:1.25}
  .pato-pwa-install__actions .pato-ui-btn,.pato-startup-modal__actions .pato-ui-btn,.pato-push-prompt__actions .pato-ui-btn{flex:1 1 100%;width:100%}
  .pato-ui-btn--icon{flex:0 0 38px!important;width:38px!important;min-height:38px!important}
}

/* Safe global baseline for legacy/theme Bootstrap buttons: alignment only, no palette/size override. */
body .btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;vertical-align:middle}
body .btn i,body .btn svg{flex:0 0 auto;line-height:1}
body button.btn{-webkit-appearance:none;appearance:none}
