.upcoming-page{padding:40px 0}.upcoming-header{text-align:center;margin-bottom:40px}.upcoming-header-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background:linear-gradient(135deg,var(--animehub-primary) 0,rgba(var(--animehub-primary-rgb,33,113,177),.8) 100%);border-radius:20px;margin-bottom:20px;color:#fff}.upcoming-title{font-size:2rem;font-weight:700;margin:0 0 10px}.upcoming-description{color:var(--animehub-text-muted);font-size:1rem;margin:0}.upcoming-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:20px;background:var(--animehub-bg-secondary);border-radius:16px;margin-bottom:30px}.view-switcher{display:flex;gap:8px;background:var(--animehub-bg-primary);padding:6px;border-radius:12px}.view-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:0 0;border:none;border-radius:8px;text-decoration:none;color:var(--animehub-text-muted);font-weight:600;font-size:.9rem;transition:.2s;cursor:pointer}.view-btn:hover{color:var(--animehub-text-primary);background:var(--animehub-bg-secondary)}.view-btn.active{background:var(--animehub-primary);color:#fff}.view-btn svg{width:18px;height:18px}.week-nav{display:flex;align-items:center;gap:15px}.week-nav-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--animehub-bg-primary);border:1px solid var(--animehub-border);border-radius:10px;text-decoration:none;color:inherit;transition:.2s}.week-nav-btn:hover{background:var(--animehub-primary);border-color:var(--animehub-primary);color:#fff}.week-info{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:180px}.week-range{font-size:1.1rem;font-weight:700}.week-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.week-badge.current{background:var(--animehub-primary);color:#fff}.week-badge.next{background:#10b981;color:#fff}.week-badge.prev{background:#6b7280;color:#fff}.month-nav{display:flex;align-items:center;gap:15px}.month-nav-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--animehub-bg-primary);border:1px solid var(--animehub-border);border-radius:10px;text-decoration:none;color:inherit;transition:.2s}.month-nav-btn:hover{background:var(--animehub-primary);border-color:var(--animehub-primary);color:#fff}.month-title{font-size:1.2rem;font-weight:700;margin:0;min-width:160px;text-align:center}.schedule-section{background:var(--animehub-bg-secondary);border-radius:16px;overflow:hidden}.day-tabs{display:flex;gap:8px;padding:15px 20px;background:var(--animehub-bg-secondary);border-radius:12px;margin-bottom:20px;overflow-x:auto;-webkit-overflow-scrolling:touch}.day-tab{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;background:var(--animehub-bg-primary);border:2px solid transparent;border-radius:10px;cursor:pointer;transition:.2s;color:var(--animehub-text-primary);font-weight:600;font-size:.95rem;white-space:nowrap}.day-tab:hover{border-color:var(--animehub-primary);background:var(--animehub-bg-primary)}.day-tab.active{background:var(--animehub-primary);color:#fff;border-color:var(--animehub-primary)}.day-tab.today:not(.active){border-color:var(--animehub-primary)}.day-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;background:rgba(var(--animehub-primary-rgb,33,113,177),.15);color:var(--animehub-primary);font-size:.75rem;font-weight:700;padding:0 6px;border-radius:11px}.day-tab.active .day-count{background:rgba(255,255,255,.25);color:#fff}.day-panels{padding:30px}.day-panel{display:none}.day-panel.active{display:block;animation:.25s fadeIn}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid var(--animehub-border)}.panel-title{display:flex;align-items:center;gap:12px;font-size:1.3rem;font-weight:700;margin:0}.panel-date{font-weight:400;color:var(--animehub-text-muted)}.today-tag{display:inline-block;padding:4px 10px;background:var(--animehub-primary);color:#fff;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase}.panel-count{color:var(--animehub-text-muted);font-size:.9rem}.empty-state{text-align:center;padding:60px 20px;color:var(--animehub-text-muted)}.empty-state svg{opacity:.3;margin-bottom:20px}.empty-state p{margin:0;font-size:1rem}.empty-state.large{padding:100px 20px}.empty-state.large h3{font-size:1.3rem;margin:0 0 10px;color:var(--animehub-text-primary)}.anime-schedule-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.anime-schedule-card{background:var(--animehub-bg-primary);border-radius:12px;overflow:hidden;transition:.3s}.anime-schedule-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(0,0,0,.12)}.card-link{display:block;text-decoration:none;color:inherit}.card-poster{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--animehub-bg-secondary)}.card-poster img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.anime-schedule-card:hover .card-poster img{transform:scale(1.05)}.poster-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--animehub-text-muted)}.card-time{position:absolute;top:10px;left:10px;background:rgba(0,0,0,.85);color:#fff;padding:6px 12px;border-radius:8px;font-size:.85rem;font-weight:700;z-index:2}.card-badge{position:absolute;top:10px;right:10px;padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;z-index:2}.card-badge-pv{background:linear-gradient(135deg,#f59e0b 0,#d97706 100%);color:#fff;box-shadow:0 2px 8px rgba(245,158,11,.4)}.card-badge-raw{background:linear-gradient(135deg,#6b7280 0,#4b5563 100%);color:#fff}.card-badge-en{background:linear-gradient(135deg,#3b82f6 0,#2563eb 100%);color:#fff}.card-badge-es{background:linear-gradient(135deg,#f97316 0,#ea580c 100%);color:#fff}.card-badge-vi{background:linear-gradient(135deg,#dc2626 0,#b91c1c 100%);color:#fff}.card-badge-version{background:var(--animehub-primary);color:#fff}.card-info{padding:15px}.card-title{font-size:.95rem;font-weight:600;margin:0 0 8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-episode-title{font-size:.85rem;color:var(--animehub-text-muted);font-weight:500;margin:0 0 6px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.card-episode{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--animehub-primary);font-weight:600}.card-episode__version{display:inline-block;padding:1px 5px;border-radius:3px;font-size:.65rem;font-weight:700;color:#fff;background:var(--animehub-primary);line-height:1.4}.card-episode-pv .card-episode__version{background:linear-gradient(135deg,#f59e0b 0,#d97706 100%)}.card-episode-raw .card-episode__version{background:#6b7280}.card-episode-en .card-episode__version{background:#3b82f6}.card-episode-es .card-episode__version{background:#f97316}.card-episode-vi .card-episode__version{background:#dc2626}.anime-schedule-card.is-pv{border:2px solid rgba(245,158,11,.3)}.anime-schedule-card.has-episode .card-title{color:var(--animehub-primary)}.card-countdown{display:inline-block;margin-left:10px;padding:3px 8px;background:rgba(var(--animehub-primary-rgb,33,113,177),.1);color:var(--animehub-primary);border-radius:6px;font-size:.75rem;font-weight:600}.calendar-section{background:var(--animehub-bg-secondary);border-radius:16px;padding:25px}.calendar-grid{background:var(--animehub-bg-primary);border-radius:12px;overflow:hidden}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--animehub-bg-secondary)}.calendar-weekday{padding:15px;text-align:center;font-weight:700;font-size:.85rem;color:var(--animehub-text-muted)}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{position:relative;min-height:100px;padding:12px;border:1px solid var(--animehub-border);display:flex;flex-direction:column;align-items:center;transition:.2s}.calendar-day:hover{background:var(--animehub-bg-secondary);z-index:2}.calendar-day.empty{background:var(--animehub-bg-secondary);opacity:.4}.calendar-day.today{background:rgba(var(--animehub-primary-rgb,33,113,177),.08);border-color:var(--animehub-primary)}.day-number{font-size:1rem;font-weight:600;margin-bottom:6px}.anime-count{display:inline-block;background:var(--animehub-primary);color:#fff;font-size:.7rem;font-weight:700;padding:3px 10px;border-radius:12px}.day-popup{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:280px;background:var(--animehub-bg-primary);border:1px solid var(--animehub-border);border-radius:12px;padding:15px;box-shadow:0 10px 40px rgba(0,0,0,.15);z-index:100;display:none;margin-top:5px;max-height:300px;overflow-y:auto}.calendar-day:hover .day-popup{display:block}.popup-header{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--animehub-border);font-size:.9rem}.popup-list{display:flex;flex-direction:column;gap:6px}.popup-item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;text-decoration:none;color:inherit;transition:background .2s}.popup-item:hover{background:var(--animehub-bg-secondary)}.item-time{font-weight:700;color:var(--animehub-primary);min-width:50px;font-size:.85rem}.item-title{flex:1;font-weight:500;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-ep{font-size:.75rem;color:var(--animehub-text-muted);background:var(--animehub-bg-secondary);padding:3px 8px;border-radius:6px;flex-shrink:0}.popup-item.version-pv{border-left:3px solid #f59e0b;padding-left:12px}.popup-item.version-raw{border-left:3px solid #6b7280;padding-left:12px}.popup-item.version-en{border-left:3px solid #3b82f6;padding-left:12px}.popup-item.version-es{border-left:3px solid #f97316;padding-left:12px}.popup-item .item-version-badge{display:inline-block;margin-left:6px;padding:2px 6px;background:var(--animehub-primary);color:#fff;border-radius:4px;font-size:.65rem;font-weight:700;text-transform:uppercase}.popup-item.version-pv .item-version-badge{background:linear-gradient(135deg,#f59e0b 0,#d97706 100%)}.popup-item.version-raw .item-version-badge{background:#6b7280}.popup-item.version-en .item-version-badge{background:#3b82f6}.popup-item.version-es .item-version-badge{background:#f97316}.coming-soon-section{margin-top:50px}.section-heading{display:flex;align-items:center;gap:12px;font-size:1.4rem;margin-bottom:25px}.section-heading svg{color:var(--animehub-primary)}.anime-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px}@media (max-width:992px){.upcoming-nav{flex-direction:column;align-items:stretch}.month-nav,.view-switcher,.week-nav{justify-content:center}}@media (max-width:768px){.upcoming-page{padding:20px 0}.upcoming-header{margin-bottom:25px}.upcoming-header-icon{width:60px;height:60px;border-radius:16px}.upcoming-header-icon svg{width:30px;height:30px}.upcoming-title{font-size:1.5rem}.upcoming-nav{padding:15px;border-radius:12px;margin-bottom:20px}.view-switcher{width:100%}.view-btn{flex:1;justify-content:center;padding:12px}.week-info{min-width:auto}.week-range{font-size:.95rem}.day-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.day-tab{min-width:60px;padding:15px 8px}.day-name{font-size:.75rem}.day-date{font-size:1.2rem}.day-panels{padding:20px}.anime-schedule-grid{grid-template-columns:repeat(2,1fr);gap:12px}.card-info{padding:12px}.card-title{font-size:.85rem}.calendar-section{padding:15px}.calendar-day{min-height:70px;padding:8px}.day-number{font-size:.9rem}.anime-count{font-size:.65rem;padding:2px 6px}.day-popup{width:240px;left:0;transform:none}}@media (max-width:480px){.anime-schedule-grid{grid-template-columns:1fr}.anime-schedule-card{display:flex}.card-link{display:flex;width:100%}.card-poster{width:90px;aspect-ratio:auto;height:120px;flex-shrink:0}.card-info{flex:1;display:flex;flex-direction:column;justify-content:center}.card-countdown{margin-left:0;margin-top:6px}.anime-grid{grid-template-columns:repeat(2,1fr);gap:12px}}