/* Pawprint v3.8 mobile/PWA polish */
:root{--pp-safe-bottom:env(safe-area-inset-bottom,0px);--pp-safe-top:env(safe-area-inset-top,0px)}
.pp-pwa-toast{position:fixed;left:50%;bottom:calc(88px + var(--pp-safe-bottom));transform:translateX(-50%);z-index:1600;width:min(520px,calc(100vw - 28px));background:#102b48;color:#fff;border:1px solid rgba(225,185,74,.55);border-radius:18px;padding:14px 15px;box-shadow:0 20px 54px rgba(16,43,72,.28);display:flex;align-items:center;justify-content:space-between;gap:12px}.pp-pwa-toast b,.pp-pwa-toast span{display:block}.pp-pwa-toast span{font-size:12px;opacity:.86;margin-top:2px}.pp-pwa-toast .pp-pwa-actions{display:flex;gap:7px;flex:0 0 auto}.pp-pwa-toast button{border:0;border-radius:11px;padding:9px 11px;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.pp-pwa-toast .primary{background:#d5ad3e;color:#102b48}.pp-pwa-toast .ghost{background:rgba(255,255,255,.12);color:#fff}
.pp-pwa-sheet-backdrop{position:fixed;inset:0;z-index:1700;background:rgba(16,43,72,.34);backdrop-filter:blur(4px);display:grid;align-items:end}.pp-pwa-sheet{background:#fff;border-radius:24px 24px 0 0;padding:18px 18px calc(20px + var(--pp-safe-bottom));max-height:82vh;overflow:auto;box-shadow:0 -20px 60px rgba(16,43,72,.24)}.pp-pwa-sheet .grab{width:44px;height:5px;border-radius:999px;background:#d9d6cf;margin:0 auto 17px}.pp-pwa-sheet h2{margin:0 0 6px;color:#102b48}.pp-pwa-sheet p{color:#657587;line-height:1.5}.pp-pwa-steps{display:grid;gap:10px;margin:16px 0}.pp-pwa-step{display:flex;gap:12px;align-items:flex-start;padding:12px;background:#f8f6f1;border-radius:14px}.pp-pwa-step i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#102b48;color:#e7bf50;font-style:normal;font-weight:900;flex:0 0 auto}
.pp-offline-indicator{position:fixed;top:calc(10px + var(--pp-safe-top));left:50%;transform:translateX(-50%);z-index:1900;background:#8d3a31;color:white;border-radius:999px;padding:7px 12px;font-size:11px;font-weight:900;box-shadow:0 8px 24px rgba(0,0,0,.16)}
.pp-install-chip{border:1px solid #dac269!important;background:#fff8de!important;color:#102b48!important}
img{content-visibility:auto}.pet-card img,.memory-thumb img,.gallery img{background:#f2efe8}
@media(max-width:760px){
 body{padding-bottom:calc(86px + var(--pp-safe-bottom))}
 .pp-topbar{padding-top:max(10px,var(--pp-safe-top))}
 .pp-container{padding-left:14px!important;padding-right:14px!important}
 .pp-head{gap:12px!important}.pp-head h1{font-size:clamp(27px,8vw,34px)!important}.pp-head .pp-actions{width:100%;overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:2px;scrollbar-width:none}.pp-head .pp-actions::-webkit-scrollbar{display:none}.pp-head .pp-actions>*{flex:0 0 auto}
 .pp-card,.pp-card-pad{border-radius:18px!important}.pp-card-pad{padding:16px!important}
 .profile-tabs,.pet-tabs,.tabs{overflow-x:auto!important;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}.profile-tabs::-webkit-scrollbar,.pet-tabs::-webkit-scrollbar,.tabs::-webkit-scrollbar{display:none}.profile-tabs a,.pet-tabs a,.tabs a{scroll-snap-align:start;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}
 button,.pp-btn,a.pp-btn,input,select,textarea{font-size:16px}.pp-btn,button.pp-btn{min-height:44px}.settings-form input,.settings-form select,.settings-form textarea,.auth-form input{min-height:46px}
 .pp-mobile-nav{bottom:calc(8px + var(--pp-safe-bottom))!important;left:10px!important;right:10px!important;height:60px!important;border-radius:20px!important}.pp-mobile-nav a,.pp-mobile-nav button{min-height:54px!important}
 .pet-hero,.profile-hero,.pet-profile-head{border-radius:20px!important}.pet-hero img,.profile-hero img{max-height:52vh;object-fit:cover}
 .calendar-grid{min-width:0!important}.calendar-day{min-height:62px!important;padding:6px!important}.calendar-day .day-number{font-size:13px}.calendar-event{font-size:10px!important;padding:3px 4px!important}
 .modal,.pp-modal-dialog{width:calc(100vw - 20px)!important;max-height:88vh!important;border-radius:22px!important}.modal-backdrop,.pp-modal-backdrop{align-items:flex-end!important}.modal-backdrop .modal,.pp-modal-backdrop .pp-modal-dialog{border-radius:24px 24px 0 0!important;margin:0!important;width:100%!important;padding-bottom:calc(18px + var(--pp-safe-bottom))!important}
 .pp-pwa-toast{bottom:calc(82px + var(--pp-safe-bottom));align-items:flex-start}.pp-pwa-toast .pp-pwa-actions{flex-direction:column}
}
@media(display-mode:standalone){.pp-install-chip{display:none!important}.pp-pwa-toast[data-kind="install"]{display:none!important}}
@media(prefers-reduced-motion:reduce){.pp-pwa-toast,.pp-pwa-sheet-backdrop{scroll-behavior:auto;animation:none!important;transition:none!important}}
