/* TuneSera app: install banner and standalone tweaks. */
.tunesera-app-banner{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:9998;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:16px;background:var(--tunesera-surface,#fff);color:var(--tunesera-text,#20232b);box-shadow:0 12px 40px rgba(15,23,42,.18);border:1px solid var(--tunesera-line,#e5e7ef);font:14px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;max-width:560px;margin:0 auto;opacity:0;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease}
.tunesera-app-banner.is-visible,.tunesera-app-banner--ios{opacity:1;transform:none}
.tunesera-app-banner__body{display:flex;align-items:center;gap:12px;min-width:0}
.tunesera-app-banner__body strong{display:block;font-size:15px}
.tunesera-app-banner__body p{margin:2px 0 0;color:var(--tunesera-muted,#707685)}
.tunesera-app-banner__icon{width:48px;height:48px;border-radius:12px;flex-shrink:0;object-fit:cover}
.tunesera-app-banner__actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
.tunesera-app-banner__install{appearance:none;border:0;border-radius:999px;padding:10px 16px;font:inherit;font-weight:600;color:var(--tunesera-brand-contrast,#fff);background:var(--tunesera-brand,#642bff);cursor:pointer}
.tunesera-app-banner__close{appearance:none;border:0;background:transparent;color:var(--tunesera-muted,#707685);font-size:22px;line-height:1;width:36px;height:36px;border-radius:50%;cursor:pointer}
.tunesera-app-banner__close:hover,.tunesera-app-banner__install:hover{filter:brightness(.95)}
.tunesera-app-banner__install:focus-visible,.tunesera-app-banner__close:focus-visible{outline:2px solid var(--tunesera-brand,#642bff);outline-offset:2px}
@media (max-width:480px){.tunesera-app-banner{left:10px;right:10px;padding:12px}.tunesera-app-banner__body p{display:none}}
@media (prefers-reduced-motion:reduce){.tunesera-app-banner{transition:none}}
/* Installed app: respect notches and make the shell feel native. */
.tunesera-app-standalone body{padding-top:env(safe-area-inset-top,0px)}
.tunesera-app-standalone .tunesera-internet-radio-directory-sticky-player{padding-bottom:env(safe-area-inset-bottom,0px)}
