:root{--pwa-accent:var(--gold,#d1a13a);--pwa-accent-2:var(--gold-light,#f0cf79);--pwa-bg:#11110f;--pwa-surface:#1b1914;--pwa-text:#fff;--pwa-muted:#aaa;--pwa-line:rgba(255,255,255,.12)}
.tamaku-pwa-backdrop{position:fixed;z-index:999997;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(7px);opacity:0;pointer-events:none;transition:opacity .25s}.tamaku-pwa-backdrop.show{opacity:1;pointer-events:auto}
.tamaku-pwa-widget{position:fixed;z-index:999999;left:50%;bottom:-180px;width:min(92%,560px);padding:13px 54px 13px 14px;color:var(--pwa-text);background:linear-gradient(145deg,color-mix(in srgb,var(--pwa-accent) 10%,var(--pwa-bg)),var(--pwa-bg));border:1px solid color-mix(in srgb,var(--pwa-accent) 38%,transparent);border-radius:21px;box-shadow:0 22px 65px rgba(0,0,0,.42),0 0 25px color-mix(in srgb,var(--pwa-accent) 12%,transparent);transform:translateX(-50%);transition:bottom .4s cubic-bezier(.2,.85,.25,1),transform .25s;font-family:Montserrat,Inter,sans-serif}.tamaku-pwa-widget.show{bottom:max(22px,env(safe-area-inset-bottom))}
.pwa-summary{display:flex;align-items:center;gap:13px}.pwa-icon{width:50px;height:50px;flex:0 0 auto;border-radius:14px;box-shadow:0 0 0 1px color-mix(in srgb,var(--pwa-accent) 45%,transparent),0 9px 25px rgba(0,0,0,.35)}.pwa-info{min-width:0;flex:1}.pwa-kicker{display:block;margin-bottom:3px;color:var(--pwa-accent-2);font-size:.5rem;font-weight:800;letter-spacing:.15em}.pwa-title{margin:0;color:var(--pwa-text);font:800 .92rem Montserrat,sans-serif}.pwa-desc{margin:4px 0 0;color:var(--pwa-muted);font-size:.67rem;line-height:1.35}.pwa-btn,.pwa-done{min-height:42px;padding:10px 17px;color:#111;background:linear-gradient(135deg,var(--pwa-accent-2),var(--pwa-accent));border:0;border-radius:12px;font-size:.68rem;font-weight:800;cursor:pointer}.pwa-close{position:absolute;z-index:3;top:10px;right:10px;width:40px;height:40px;display:grid;place-items:center;color:var(--pwa-muted);background:color-mix(in srgb,var(--pwa-text) 7%,transparent);border:1px solid var(--pwa-line);border-radius:12px;cursor:pointer}.pwa-close span{display:none}.pwa-close:hover,.pwa-close:focus-visible{color:var(--pwa-text);border-color:var(--pwa-accent);outline:none}
.ios-instruction{display:none}.tamaku-pwa-widget.is-ios{bottom:-110vh;width:min(94%,540px);max-height:min(88vh,720px);padding:20px;border-radius:26px 26px 20px 20px;overflow-y:auto;overscroll-behavior:contain}.tamaku-pwa-widget.is-ios.show{bottom:max(12px,env(safe-area-inset-bottom))}.is-ios .pwa-summary{padding:4px 48px 16px 2px;border-bottom:1px solid var(--pwa-line)}.is-ios .pwa-btn,.is-ios .pwa-kicker{display:none}.is-ios .pwa-close{width:auto;min-width:46px;padding:0 12px;display:flex;gap:7px}.is-ios .pwa-close span{display:inline;font-size:.66rem;font-weight:700}.is-ios .ios-instruction{display:block}.ios-heading{display:flex;align-items:center;gap:12px;margin:18px 0 14px}.apple-mark{width:45px;height:45px;display:grid;place-items:center;flex:0 0 auto;color:var(--pwa-accent);background:color-mix(in srgb,var(--pwa-accent) 13%,transparent);border-radius:14px;font-size:1.25rem}.ios-heading b{font-size:.92rem}.ios-heading p{margin:4px 0 0;color:var(--pwa-muted);font-size:.67rem}.ios-steps{display:grid;gap:9px;margin:0;padding:0;list-style:none}.ios-steps li{display:grid;grid-template-columns:30px 1fr 30px;align-items:center;gap:10px;padding:12px;color:var(--pwa-text);background:color-mix(in srgb,var(--pwa-text) 5%,transparent);border:1px solid var(--pwa-line);border-radius:15px}.ios-steps li>span{width:27px;height:27px;display:grid;place-items:center;color:#111;background:var(--pwa-accent);border-radius:9px;font-size:.7rem;font-weight:900}.ios-steps b,.ios-steps small{display:block}.ios-steps b{font-size:.72rem}.ios-steps small{margin-top:3px;color:var(--pwa-muted);font-size:.6rem;line-height:1.35}.ios-steps li>i{color:var(--pwa-accent-2);font-size:1.05rem;text-align:center}.pwa-done{width:100%;margin-top:14px;min-height:50px}.ios-note{margin:10px 6px 0;color:var(--pwa-muted);font-size:.56rem;line-height:1.45;text-align:center}
body.tamaku-brand-light{--pwa-bg:#fff;--pwa-surface:#f4f3ef;--pwa-text:#171717;--pwa-muted:#666;--pwa-line:rgba(0,0,0,.12)}
body.tamaku-brand-light .tamaku-pwa-widget{box-shadow:0 22px 60px rgba(0,0,0,.2),0 0 25px var(--accent-soft)}
@media(max-width:560px){.tamaku-pwa-widget:not(.is-ios){width:calc(100% - 24px);padding:12px 50px 12px 12px}.pwa-icon{width:44px;height:44px}.pwa-desc{display:none}.pwa-btn{padding:9px 13px}.tamaku-pwa-widget.is-ios{left:8px;right:8px;width:auto;transform:none}.is-ios .pwa-summary{padding-left:0}.ios-steps li{padding:11px 9px}}
@media(max-width:360px){.pwa-info{display:none}.pwa-summary{justify-content:space-between}.is-ios .pwa-info{display:block}.is-ios .pwa-icon{width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){.tamaku-pwa-widget,.tamaku-pwa-backdrop{transition:none}}
.pwa-btn,.pwa-done{color:var(--accent-contrast,#111)}.pwa-x{display:block!important;font:400 1.45rem/1 Arial,sans-serif}.pwa-close-label{display:none!important}.is-ios .pwa-close-label{display:inline!important;font-size:.66rem;font-weight:700}.is-ios .pwa-x{font-size:1.3rem}
body[data-booking-theme="claro"]{--pwa-bg:#fff;--pwa-surface:#f4f3ef;--pwa-text:#171717;--pwa-muted:#666;--pwa-line:rgba(0,0,0,.12)}

/* Android móvil: acciones separadas y fáciles de tocar. */
@media(max-width:560px){
  .tamaku-pwa-widget:not(.is-ios){padding:12px 48px 12px 11px;border-radius:19px}
  .tamaku-pwa-widget:not(.is-ios) .pwa-summary{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;width:100%}
  .tamaku-pwa-widget:not(.is-ios) .pwa-info{display:block;min-width:0}
  .tamaku-pwa-widget:not(.is-ios) .pwa-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}
  .tamaku-pwa-widget:not(.is-ios) .pwa-kicker{font-size:.44rem;white-space:nowrap}
  .tamaku-pwa-widget:not(.is-ios) .pwa-btn{min-width:72px;min-height:42px;padding:9px 12px;border-radius:11px;white-space:nowrap}
  .tamaku-pwa-widget:not(.is-ios) .pwa-close{position:absolute;top:50%;right:9px;width:31px;height:31px;margin:0;color:var(--pwa-muted);background:color-mix(in srgb,var(--pwa-text) 6%,transparent);border:1px solid color-mix(in srgb,var(--pwa-text) 12%,transparent);border-radius:50%;transform:translateY(-50%);box-shadow:none}
  .tamaku-pwa-widget:not(.is-ios) .pwa-close .pwa-x{font-size:1.05rem;line-height:1;opacity:.78}
  .tamaku-pwa-widget:not(.is-ios) .pwa-close:active{color:var(--pwa-text);background:color-mix(in srgb,var(--pwa-accent) 15%,transparent);border-color:var(--pwa-accent);transform:translateY(-50%) scale(.92)}
}
@media(max-width:380px){
  .tamaku-pwa-widget:not(.is-ios){padding-right:45px}
  .tamaku-pwa-widget:not(.is-ios) .pwa-summary{grid-template-columns:42px minmax(0,1fr) auto;gap:7px}
  .tamaku-pwa-widget:not(.is-ios) .pwa-icon{width:42px;height:42px}
  .tamaku-pwa-widget:not(.is-ios) .pwa-btn{min-width:64px;padding:8px 9px;font-size:.6rem}
  .tamaku-pwa-widget:not(.is-ios) .pwa-close{right:8px;width:29px;height:29px}
}
