 .episode-reaction-bar{display:flex;align-items:center;gap:16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:16px 20px;margin-bottom:24px;flex-wrap:wrap}.episode-reaction-label{font-size:0.95rem;color:var(--text-secondary);font-weight:500;flex:1;min-width:140px}.episode-reaction-btns{display:flex;gap:10px;align-items:center}.reaction-btn{display:flex;align-items:center;gap:8px;padding:8px 18px;border-radius:9999px;border:1.5px solid var(--border-color);background:transparent;color:var(--text-secondary);font-size:0.9rem;font-weight:600;cursor:pointer;transition:all 0.18s ease;white-space:nowrap}.reaction-btn:hover{border-color:var(--primary);color:var(--primary);background:rgba(var(--primary-rgb,255,62,62),0.08);transform:translateY(-1px)}.reaction-btn.liked{background:rgba(var(--primary-rgb,255,62,62),0.15);border-color:var(--primary);color:var(--primary)}.reaction-btn.disliked{background:rgba(239,68,68,0.12);border-color:#ef4444;color:#ef4444}.reaction-btn svg{flex-shrink:0;transition:transform 0.18s ease}.reaction-btn:hover svg,.reaction-btn.liked svg,.reaction-btn.disliked svg{transform:scale(1.15)}.reaction-count{font-variant-numeric:tabular-nums;min-width:22px;text-align:left}.comment-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:32px}.comment-section-header{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--border-color)}.comment-section-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.comment-total-badge{background:rgba(var(--primary-rgb,255,62,62),0.18);color:var(--primary);font-size:0.78rem;font-weight:700;padding:2px 9px;border-radius:999px}.comment-input-area{padding:16px 20px;border-bottom:1px solid var(--border-color)}.comment-input-row{display:flex;gap:12px;align-items:flex-start}.comment-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--border-color)}.comment-avatar-placeholder{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#ef4444,#ff3e3e);display:flex;align-items:center;justify-content:center;font-size:0.85rem;font-weight:700;color:#fff;flex-shrink:0}.comment-input-wrapper{flex:1;min-width:0;background:rgba(255,255,255,0.04);border:1.5px solid var(--border-color);border-radius:var(--radius-md);transition:border-color 0.18s;display:flex;flex-direction:column}.comment-input-wrapper:focus-within{border-color:var(--primary);background:rgba(255,255,255,0.06)}.comment-textarea{width:100%;min-height:54px;max-height:200px;resize:vertical;background:transparent;border:none;color:var(--text-primary);font-size:0.9rem;font-family:inherit;padding:12px 14px 4px 14px;box-sizing:border-box}.comment-textarea:focus{outline:none}.comment-textarea::placeholder{color:var(--text-muted)}.comment-gif-preview{position:relative;margin-top:8px;display:inline-block;max-width:240px}.comment-gif-preview img{width:100%;max-height:160px;object-fit:cover;border-radius:var(--radius-md);border:1.5px solid var(--border-color);display:block}.comment-gif-remove{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,0.7);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;transition:background 0.15s}.comment-gif-remove:hover{background:rgba(239,68,68,0.8)}.comment-input-actions{display:flex;align-items:center;gap:8px;padding:6px 14px 10px 14px;flex-wrap:wrap}.comment-gif-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all 0.15s;padding:0;margin-left:auto}.comment-gif-btn svg{width:18px;height:18px}.comment-gif-btn span{display:none}.comment-gif-btn:hover{background:rgba(255,255,255,0.08);color:var(--primary)}.comment-submit-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:var(--primary);color:#fff;cursor:pointer;transition:opacity 0.15s,transform 0.15s;padding:0}.comment-submit-btn span{display:none}.comment-submit-btn svg{margin-left:-1px}.comment-submit-btn:hover{opacity:0.88;transform:translateY(-1px)}.comment-submit-btn:disabled{opacity:0.5;cursor:not-allowed;transform:none}.comment-login-prompt{padding:20px;text-align:center;color:var(--text-muted);font-size:0.9rem;border-bottom:1px solid var(--border-color)}.comment-login-prompt a,.comment-login-prompt button.inline-link{background:none;border:none;padding:0;color:var(--primary);font-weight:600;cursor:pointer;text-decoration:underline;font-size:inherit;font-family:inherit}.comment-list{padding:0 20px}.comment-list-empty{text-align:center;color:var(--text-muted);padding:40px 20px;font-size:0.95rem}.comment-list-loading{text-align:center;padding:40px 20px;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:12px}.comment-spinner{width:28px;height:28px;border:3px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;animation:commentSpin 0.7s linear infinite}@keyframes commentSpin{to{transform:rotate(360deg)}}.comment-item{background:rgba(255,255,255,0.01);border-bottom:1px solid rgba(255,255,255,0.03);border-radius:var(--radius-md);padding:20px;margin-bottom:14px;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);border:1px solid rgba(255,255,255,0.02);animation:commentFadeIn 0.22s ease}.comment-item:hover{background:rgba(255,255,255,0.02);border-color:rgba(255,255,255,0.05);box-shadow:0 8px 30px rgba(0,0,0,0.3);transform:translateY(-1px)}@keyframes commentFadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.comment-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.comment-author{font-weight:600;font-size:0.88rem;color:var(--text-primary)}.comment-time{font-size:0.78rem;color:var(--text-muted);margin-left:2px}.comment-body{font-size:0.9rem;color:var(--text-secondary);line-height:1.6;word-break:break-word;margin-left:46px}.comment-gif{display:block;max-width:280px;max-height:200px;border-radius:var(--radius-md);border:1px solid var(--border-color);margin-left:46px;margin-top:8px;object-fit:cover}.comment-footer{display:flex;align-items:center;gap:4px;margin-top:10px;margin-left:46px;flex-wrap:wrap}.comment-react-btn{display:flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--text-muted);font-size:0.8rem;font-weight:600;cursor:pointer;transition:all 0.15s ease}.comment-react-btn:hover{background:rgba(255,255,255,0.06);color:var(--text-secondary)}.comment-react-btn.liked{color:var(--primary);background:rgba(var(--primary-rgb,255,62,62),0.1)}.comment-react-btn.disliked{color:#ef4444;background:rgba(239,68,68,0.1)}.comment-react-btn svg{transition:transform 0.15s}.comment-react-btn.liked svg,.comment-react-btn.disliked svg{transform:scale(1.2)}.comment-reply-toggle{background:none;border:none;color:var(--text-muted);font-size:0.8rem;font-weight:600;cursor:pointer;padding:4px 10px;border-radius:999px;transition:color 0.15s,background 0.15s}.comment-reply-toggle:hover{color:var(--text-secondary);background:rgba(255,255,255,0.06)}.comment-report-btn{background:none;border:none;color:var(--text-muted);font-size:0.8rem;font-weight:600;cursor:pointer;padding:4px 10px;border-radius:999px;transition:color 0.15s,background 0.15s;display:flex;align-items:center;gap:4px}.comment-report-btn:hover{color:#ff4757;background:rgba(255,71,87,0.1)}.comment-report-btn svg{flex-shrink:0}.comment-replies{margin-left:46px;margin-top:12px;padding-left:14px;border-left:2px solid rgba(var(--primary-rgb,255,62,62),0.25)}.reply-item{padding:12px 0;border-bottom:1px solid rgba(255,255,255,0.04);animation:commentFadeIn 0.22s ease}.reply-item:last-child{border-bottom:none}.reply-item .comment-body{margin-left:42px}.reply-item .comment-gif{margin-left:42px}.reply-item .comment-footer{margin-left:42px}.reply-form-wrapper{margin-left:46px;margin-top:10px;padding-left:14px;border-left:2px solid rgba(var(--primary-rgb,255,62,62),0.25);padding-top:10px}.reply-form-wrapper .comment-textarea{min-height:48px}.reply-form-actions{display:flex;align-items:center;gap:8px;margin-top:6px}.reply-cancel-btn{padding:5px 14px;border-radius:var(--radius-sm);border:1.5px solid var(--border-color);background:transparent;color:var(--text-secondary);font-size:0.82rem;font-weight:600;cursor:pointer;transition:all 0.15s}.reply-cancel-btn:hover{border-color:var(--text-secondary)}.gif-picker-overlay{position:fixed;inset:0;background:transparent;z-index:10001;opacity:0;pointer-events:none;transition:opacity 0.2s}.gif-picker-overlay.open{opacity:1;pointer-events:all}.gif-picker-panel{position:absolute;background:var(--bg-elevated,#1a1a1a);border:1px solid var(--border-color);border-radius:var(--radius-md);width:320px;height:400px;display:flex;flex-direction:column;transform:scale(0.96) translateY(10px);transform-origin:bottom right;transition:transform 0.2s cubic-bezier(0.18,0.89,0.32,1.28);box-shadow:0 8px 32px rgba(0,0,0,0.6);overflow:hidden}.gif-picker-overlay.open .gif-picker-panel{transform:scale(1) translateY(0)}.gif-picker-header{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.gif-picker-header span{font-weight:700;font-size:0.95rem;flex:1}.gif-search-input{flex:1;background:rgba(255,255,255,0.07);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:0.88rem;padding:7px 12px;font-family:inherit;transition:border-color 0.15s}.gif-search-input:focus{outline:none;border-color:var(--primary)}.gif-picker-close{width:30px;height:30px;border:none;background:rgba(255,255,255,0.06);border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:background 0.15s;flex-shrink:0}.gif-picker-close:hover{background:rgba(255,255,255,0.12)}.gif-picker-body{flex:1;overflow-y:auto;padding:10px;position:relative;min-height:200px}.gif-picker-loading{display:flex;align-items:center;justify-content:center;height:200px;flex-direction:column;gap:12px;color:var(--text-muted);font-size:0.85rem}.gif-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:6px}.gif-result-item{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-sm);cursor:pointer;border:2px solid transparent;transition:border-color 0.15s,transform 0.15s;background:var(--bg-surface)}.gif-result-item:hover{border-color:var(--primary);transform:scale(1.03)}.tenor-badge{text-align:center;font-size:0.72rem;color:var(--text-muted);padding:8px;border-top:1px solid var(--border-color);flex-shrink:0}@keyframes countPulse{0%{transform:scale(1)}50%{transform:scale(1.35)}100%{transform:scale(1)}}.count-pulse{animation:countPulse 0.25s ease}@media (max-width:600px){.episode-reaction-bar{padding:12px 14px;gap:10px}.reaction-btn{padding:7px 12px;font-size:0.82rem}.comment-section-header,.comment-input-area,.comment-list{padding-left:14px;padding-right:14px}.comment-body,.comment-gif,.comment-footer{margin-left:38px}.reply-item .comment-body,.reply-item .comment-gif,.reply-item .comment-footer{margin-left:34px}.comment-replies,.reply-form-wrapper{margin-left:38px}.gif-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}.gif-picker-panel{max-height:85vh}}.comment-menu-container{position:relative;margin-left:auto}.comment-menu-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background 0.15s,color 0.15s}.comment-menu-btn:hover{background:rgba(255,255,255,0.06);color:var(--text-primary)}.comment-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:0 4px 12px rgba(0,0,0,0.5);min-width:140px;z-index:100;display:flex;flex-direction:column;padding:4px 0;opacity:0;pointer-events:none;transform:translateY(-5px);transition:opacity 0.15s,transform 0.15s}.comment-dropdown.open{opacity:1;pointer-events:all;transform:translateY(0)}.comment-dropdown-item{background:transparent;border:none;color:var(--text-secondary);padding:10px 16px;text-align:left;font-size:0.88rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:10px;transition:background 0.15s,color 0.15s}.comment-dropdown-item:hover{background:rgba(255,255,255,0.06);color:var(--text-primary)}.comment-dropdown-item.delete{color:#ef4444}.comment-dropdown-item.delete:hover{background:rgba(239,68,68,0.1)}.comment-dropdown-item:disabled{opacity:0.4;cursor:not-allowed;color:var(--text-muted)}.comment-item.is-editing > .comment-body,.comment-item.is-editing > .comment-gif,.comment-item.is-editing > .comment-footer,.reply-item.is-editing > .comment-body,.reply-item.is-editing > .comment-gif,.reply-item.is-editing > .comment-footer{display:none !important}.comment-edit-form{margin-top:8px;margin-left:46px}.reply-item .comment-edit-form{margin-left:42px}.staff-badge{display:inline-flex;align-items:center;font-size:0.72rem;font-weight:700;text-transform:uppercase;padding:2px 7px;border-radius:4px;letter-spacing:0.05em;user-select:none;margin-left:8px;vertical-align:middle}.admin-badge{background:rgba(168,85,247,0.12);color:#c084fc;border:1px solid rgba(168,85,247,0.3);box-shadow:0 0 10px rgba(168,85,247,0.15)}.mod-badge{background:rgba(14,165,233,0.12);color:#38bdf8;border:1px solid rgba(14,165,233,0.3);box-shadow:0 0 10px rgba(14,165,233,0.15)}.char-counter{font-size:0.78rem;color:var(--text-muted);font-weight:500;margin-right:auto;transition:color 0.2s ease}.char-counter.warning{color:#f59e0b}.char-counter.danger{color:#ef4444}.load-more-btn{display:flex;align-items:center;justify-content:center;width:100%;margin:24px 0;padding:12px 24px;background:rgba(255,255,255,0.02);border:1.5px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:0.9rem;font-weight:600;cursor:pointer;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);box-shadow:0 4px 15px rgba(0,0,0,0.2)}.load-more-btn:hover{background:rgba(255,255,255,0.05);border-color:var(--primary);color:var(--text-primary);box-shadow:0 0 15px rgba(var(--primary-rgb,255,62,62),0.12);transform:translateY(-2px)}.load-more-btn:active{transform:translateY(0)}.load-more-btn.loading{cursor:not-allowed;opacity:0.8}