.explore-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:2px;margin-bottom:20px;margin-top:10px}.explore-item{position:relative;aspect-ratio:1;cursor:pointer;overflow:hidden;background:#f0f0f0}.explore-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.explore-video{width:100%;height:100%;object-fit:cover;transition:transform .3s ease;background:#000;display:block}.explore-item:hover .explore-image,.explore-item:hover .explore-video{transform:scale(1.05)}.explore-overlay{display:none!important}.loading-container{text-align:center;padding:40px 20px;color:var(--social-text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--social-border);border-top:3px solid var(--social-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.empty-state{text-align:center;padding:60px 20px;color:var(--social-text-secondary)}.empty-state-icon{font-size:64px;margin-bottom:20px;opacity:.3}.empty-state-title{font-size:20px;font-weight:600;margin-bottom:12px;color:var(--social-text)}.empty-state-text{font-size:16px;line-height:1.5}.fullscreen-post-viewer{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;z-index:5000;display:none;flex-direction:column;overflow:hidden;overscroll-behavior:none;-webkit-overflow-scrolling:touch}.fullscreen-post-viewer.active{display:flex}.post-viewer-container{flex:1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.post-viewer-slide{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;opacity:1;transform:translateY(0);transition:all .4s cubic-bezier(.25,.46,.45,.94)}.post-viewer-slide.active{opacity:1;transform:translateY(0)}.post-viewer-slide.sliding-up{transform:translateY(-100%);opacity:0}.post-viewer-slide.sliding-down{transform:translateY(100%);opacity:0}.post-viewer-slide.entering-up{transform:translateY(100%);opacity:0}.post-viewer-slide.entering-down{transform:translateY(-100%);opacity:0}.post-viewer-image{max-width:100%;max-height:100%;object-fit:contain;width:100%;height:100%}.post-viewer-video{max-width:100%;max-height:100%;object-fit:contain;width:100%;height:100%;background:#000}.post-viewer-controls{position:absolute;top:20px;right:20px;z-index:10}.post-viewer-close{background:rgba(0,0,0,.5);border:0;color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;transition:all .2s ease}.post-viewer-close:hover{background:rgba(0,0,0,.7)}.post-interaction-overlay{position:absolute;right:20px;bottom:120px;display:flex;flex-direction:column;gap:20px;z-index:10}.post-interaction-left{display:flex;flex-direction:column;gap:20px}.post-interaction-right{display:flex;flex-direction:column;gap:20px}.post-action-item{display:flex;flex-direction:column;align-items:center;gap:2px}.post-action-btn{background:none;border:0;color:#ff8359;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:24px;transition:all .2s ease;padding:0;outline:0;border-radius:0}.post-action-btn:hover{background:rgba(255,131,89,.1)}.post-action-btn.liked{background:none;color:#ff8359;animation:heartBeat .3s ease}.post-action-count{color:#fff;font-size:14px;font-weight:600;text-align:center;min-width:20px;margin-top:1px}@keyframes heartBeat{0%{transform:scale(1)}50%{transform:scale(1.3)}100%{transform:scale(1)}}.post-info-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.8));padding:20px;color:#fff;z-index:10}.post-info-header{display:flex;align-items:center;justify-content:flex-start;gap:12px;margin-bottom:16px}.post-user-info{display:flex;align-items:center;gap:12px}.post-user-avatar{width:40px;height:40px;border-radius:50%;background:var(--social-primary);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:bold;font-size:16px}.post-user-details{display:flex;flex-direction:column}.post-username{font-weight:600;font-size:16px;margin-bottom:2px}.post-pet-name{font-size:12px;color:#ff8359;font-weight:500;margin-bottom:2px}.post-location{font-size:14px;opacity:.8}.post-follow-btn{background:var(--social-message-sent);color:var(--social-text);border:0;padding:8px 16px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.post-follow-btn:hover{background:#ffd4c1}.post-follow-btn.following{background:transparent;border:1px solid #fff;color:#fff}.post-caption{margin-bottom:16px;line-height:1.5;font-size:16px}.post-caption.truncated{cursor:pointer;white-space:pre-wrap;word-break:break-word}.post-stats{display:flex;flex-direction:column;gap:8px;font-size:14px}.post-likes-count{font-weight:600}.post-comments-count{opacity:.8;transition:opacity .2s ease}.post-comments-count:hover{opacity:1}.post-time{opacity:.6;font-size:12px}@media(max-width:768px){.explore-grid{grid-template-columns:repeat(3,1fr);gap:1px;margin-top:5px}.video-play-overlay{width:30px;height:30px;font-size:12px}.post-interaction-overlay{right:15px;bottom:100px;gap:15px}.post-action-btn{width:45px;height:45px;font-size:20px}.post-action-count{font-size:12px}.post-info-overlay{padding:15px}.post-user-avatar{width:35px;height:35px;font-size:14px}.post-username{font-size:14px}.post-caption{font-size:14px}.post-viewer-close{width:35px;height:35px;font-size:16px}}.explore-item.loading{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}100%{background-position:-200% 0}}.comments-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);z-index:6000;display:none;align-items:flex-end;justify-content:center}.comments-modal.show{display:flex}.comments-modal-content{background:var(--social-surface);border-radius:16px 16px 0 0;width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;animation:slideUpModal .3s ease}.comments-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--social-border)}.comments-modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--social-text)}.comments-modal-close{background:none;border:0;font-size:18px;color:var(--social-text-secondary);cursor:pointer;padding:8px;border-radius:50%;transition:all .2s ease}.comments-modal-close:hover{background:rgba(0,0,0,.05)}.comments-list{flex:1;overflow-y:auto;padding:16px 20px;max-height:400px}.comment-item{display:flex;gap:12px;margin-bottom:16px}.comment-avatar{width:32px;height:32px;border-radius:50%;background:var(--social-primary);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:bold;font-size:12px;flex-shrink:0}.comment-content{flex:1}.comment-username{font-weight:600;color:var(--social-text);font-size:14px;margin-bottom:4px}.comment-text{color:var(--social-text);font-size:14px;line-height:1.4}.comment-time{font-size:12px;color:var(--social-text-secondary);margin-top:4px}.comments-input-container{display:flex;align-items:center;gap:12px;padding:16px 20px;border-top:1px solid var(--social-border)}.comments-input-container input{flex:1;border:1px solid var(--social-border);border-radius:20px;padding:8px 16px;font-size:14px;outline:0}.comments-input-container input:focus{border-color:var(--social-primary)}.comments-input-container button{background:var(--social-primary);color:#fff;border:0;padding:8px 16px;border-radius:20px;font-weight:600;cursor:pointer;transition:all .2s ease}.comments-input-container button:hover{background:var(--social-secondary)}.comments-input-container button:disabled{opacity:.5;cursor:not-allowed}.double-tap-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:80px;color:#fff;opacity:0;pointer-events:none;z-index:5;text-shadow:0 0 20px rgba(255,48,64,.8)}.double-tap-overlay.show{animation:doubleTapHeart 1s ease}@keyframes doubleTapHeart{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}@media(max-width:768px){.comments-modal-content{max-height:90vh}.comments-list{max-height:300px}.comments-input-container input{font-size:16px}}