/* Tripora App – Platz für Kamera-Aussparung und Home-Leiste, Offline-Hinweis, Standort */
html.app-shell body{padding-top:max(env(safe-area-inset-top),16px);padding-bottom:max(env(safe-area-inset-bottom),16px);padding-left:max(env(safe-area-inset-left),16px);padding-right:max(env(safe-area-inset-right),16px)}
html.app-shell #audioDock{bottom:calc(16px + env(safe-area-inset-bottom))}
html.app-shell{-webkit-tap-highlight-color:transparent}
html.app-shell .rbar{top:calc(8px + env(safe-area-inset-top))}
.offbar{position:fixed;left:50%;transform:translateX(-50%);top:calc(10px + env(safe-area-inset-top));z-index:60;padding:8px 14px;border-radius:999px;background:#14212A;color:#fff;font-size:13px;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.offbar[hidden]{display:none}
.locbox{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px}
.locbox .btn{display:inline-flex;align-items:center;gap:6px}.locbox .ico{width:16px;height:16px}
/* Premium */
.prem-btn{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:999px;padding:8px 14px;font:700 13.5px var(--f-body);color:#3D2A00;background:linear-gradient(120deg,#FFD976,#F6B544);box-shadow:0 4px 14px rgba(246,181,68,.35);cursor:pointer}
.prem-btn .ico{width:16px;height:16px}.prem-btn.on{background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:none}
.home-prem{margin-top:6px;display:inline-flex;align-items:center;gap:6px;font-size:14px}.home-prem .ico{width:16px;height:16px;color:#E59A0B}.home-prem[hidden]{display:none}
.pw-back{position:fixed;inset:0;z-index:90;background:rgba(10,18,30,.55);backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;padding:max(env(safe-area-inset-top),16px) 12px 0}
.pw-back[hidden]{display:none}
@media (min-width:640px){.pw-back{align-items:center;padding:24px}}
.pw{position:relative;width:100%;max-width:460px;max-height:92vh;overflow:auto;background:var(--surface);color:var(--ink);border-radius:26px 26px 0 0;padding:28px 22px calc(22px + env(safe-area-inset-bottom));box-shadow:0 -10px 40px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:14px;animation:pwUp .35s cubic-bezier(.2,.9,.3,1)}
@media (min-width:640px){.pw{border-radius:26px}}
@keyframes pwUp{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}
.pw-x{position:absolute;top:12px;inset-inline-end:14px;width:34px;height:34px;border-radius:50%;border:0;background:var(--map);color:var(--muted);font-size:22px;line-height:1;cursor:pointer}
.pw-top{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}
.pw-crown{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#FFD976,#F6B544);color:#3D2A00;box-shadow:0 8px 22px rgba(246,181,68,.4)}.pw-crown .ico{width:30px;height:30px}
.pw h2{margin:6px 0 0;font:800 26px var(--f-display)}.pw-why{margin:0;color:var(--muted);font-size:14.5px;line-height:1.45;max-width:34ch}
.pw-feats{list-style:none;margin:4px 0;padding:0;display:flex;flex-direction:column;gap:9px}
.pw-feats li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px}.pw-feats .ico{width:20px;height:20px;color:var(--route);flex:none;margin-top:1px}
.pw-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pw-plan{position:relative;display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:start;padding:14px;border-radius:16px;border:2px solid var(--line);background:var(--solid);color:var(--ink);cursor:pointer;font:inherit}
.pw-plan.on{border-color:var(--route);background:var(--route-soft)}
.pw-plan b{font:700 15px var(--f-display)}.pw-price{font:800 20px var(--f-display)}.pw-price small{font:500 12px var(--f-body);color:var(--muted);margin-inline-start:4px}.pw-plan>small{color:var(--muted);font-size:12px}
.pw-badge{position:absolute;top:-10px;inset-inline-end:10px;background:#F6B544;color:#3D2A00;font:700 11px var(--f-body);padding:3px 8px;border-radius:999px}
.pw-cta{width:100%;padding:15px;font-size:16px;border-radius:14px;justify-content:center}
.pw-terms,.pw-links,.pw-na,.pw-err{margin:0;font-size:12px;color:var(--muted);text-align:center;line-height:1.45}.pw-err{color:var(--warn)}
.pw-links a{color:var(--muted)}.pw-restore{align-self:center}
.pw-active{display:flex;gap:12px;align-items:center;padding:14px;border-radius:14px;background:color-mix(in srgb,var(--ok) 12%,transparent)}.pw-active .ico{width:24px;height:24px;color:var(--ok)}.pw-active small{display:block;color:var(--muted)}
body.pw-open{overflow:hidden}
