:root{--primary-color:#e50914;--primary-hover:#b8070f;--primary-light:#ff1a2b;--primary-dark:#cc0812;--dark-bg:#141414;--secondary-color:#221f1f;--card-bg:#2a2a2a;--surface-bg:#333;--overlay-bg:rgba(0,0,0,.8);--light-text:#fff;--gray-text:#999;--muted-text:#666;--placeholder-text:#b3b3b3;--success-color:#10b981;--warning-color:#f59e0b;--error-color:#ef4444;--info-color:#3b82f6;--rating-color:#ffd700;--heart-color:#ff6b6b;--like-color:#10b981;--dislike-color:#ef4444;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1);--shadow-glow:0 0 20px rgba(229,9,20,.3);--transition-fast:.15s ease-in-out;--transition-normal:.3s ease-in-out;--transition-slow:.5s ease-in-out;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--z-dropdown:1000;--z-overlay:1010;--z-modal:1020;--z-tooltip:1030}.movie-card-enhanced{position:relative;background:var(--card-bg);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-normal);cursor:pointer;border:2px solid transparent;height:100%;display:flex;flex-direction:column}.movie-card-enhanced:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-glow);border-color:var(--primary-color)}.movie-card-enhanced:focus{outline:2px solid var(--primary-color);outline-offset:2px}.movie-card-image{position:relative;overflow:hidden;aspect-ratio: 2/3}.movie-card-poster{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.movie-card-enhanced:hover .movie-card-poster{transform:scale(1.05)}.movie-card-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.3) 0%,
    transparent 30%,
    transparent 70%,
    rgba(0, 0, 0, 0.8) 100%
  );opacity:0;transition:opacity var(--transition-normal);display:flex;flex-direction:column;justify-content:space-between;padding:var(--spacing-md)}.movie-card-enhanced:hover .movie-card-overlay{opacity:1}.watchlist-btn{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:40px;height:40px;background:rgba(0,0,0,.7);border:none;border-radius:50%;color:var(--light-text);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);font-size:1.1rem;z-index:10}.watchlist-btn:hover{background:var(--heart-color);color:#fff;transform:scale(1.1)}.watchlist-btn.active{background:var(--heart-color);color:#fff}.watchlist-btn:focus{outline:2px solid var(--primary-color);outline-offset:2px}.quick-rating{display:flex;gap:var(--spacing-sm);align-self:flex-end;width:100%;justify-content:center}.rating-btn{width:44px;height:44px;border:2px solid rgba(255,255,255,.3);background:rgba(0,0,0,.5);border-radius:50%;color:var(--light-text);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);font-size:1.2rem;cursor:pointer;min-height:44px}.rating-btn:hover{transform:scale(1.1);border-color:#fff;background:rgba(255,255,255,.2)}.rating-btn.thumbs-up:hover,.rating-btn.thumbs-up.active{background:var(--like-color);border-color:var(--like-color);color:#fff}.rating-btn.thumbs-down:hover,.rating-btn.thumbs-down.active{background:var(--dislike-color);border-color:var(--dislike-color);color:#fff}.movie-card-content{padding:var(--spacing-md);flex-grow:1;display:flex;flex-direction:column}.movie-card-title{font-weight:700;font-size:var(--font-size-lg);line-height:1.3;margin-bottom:var(--spacing-sm);color:var(--light-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.genre-badges{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.genre-badge{background:rgba(229,9,20,.2);color:var(--primary-light);border:1px solid rgba(229,9,20,.3);padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;white-space:nowrap}.movie-card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:auto;font-size:var(--font-size-sm);color:var(--gray-text)}.movie-card-year{font-weight:500}.movie-card-rating{display:flex;align-items:center;gap:.25rem;color:var(--rating-color);font-weight:600}.movie-card-rating .fa-star{font-size:.875rem}.review-card{background:var(--card-bg);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);transition:all var(--transition-normal)}.review-card:hover{border-color:rgba(229,9,20,.3);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.review-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.review-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--primary-color)}.review-avatar-placeholder{width:48px;height:48px;border-radius:50%;background:var(--surface-bg);display:flex;align-items:center;justify-content:center;color:var(--gray-text);font-size:1.5rem;border:2px solid var(--primary-color)}.review-author-info{flex-grow:1}.review-author-name{font-weight:600;color:var(--light-text);margin-bottom:.25rem}.review-date{font-size:var(--font-size-sm);color:var(--gray-text)}.review-rating{display:flex;align-items:center;gap:.25rem}.review-stars{display:flex;gap:.125rem}.review-star{color:var(--rating-color);font-size:var(--font-size-sm)}.review-star.empty{color:var(--muted-text)}.review-content{color:var(--light-text);line-height:1.6;margin-bottom:var(--spacing-md)}.review-actions{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1)}.review-like-buttons{display:flex;gap:var(--spacing-md)}.review-like-btn{background:none;border:none;color:var(--gray-text);display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);cursor:pointer;transition:color var(--transition-fast);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.review-like-btn:hover{color:var(--like-color);background:rgba(16,185,129,.1)}.review-like-btn.active{color:var(--like-color)}.review-dislike-btn:hover{color:var(--dislike-color);background:rgba(239,68,68,.1)}.review-dislike-btn.active{color:var(--dislike-color)}.review-composer{background:var(--card-bg);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.review-composer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.review-composer-title{font-size:var(--font-size-xl);font-weight:600;color:var(--light-text)}.rating-selector{display:flex;align-items:center;gap:var(--spacing-sm)}.rating-selector-label{color:var(--gray-text);margin-right:var(--spacing-sm)}.rating-stars-input{display:flex;gap:var(--spacing-xs)}.rating-star-input{background:none;border:none;color:var(--muted-text);font-size:1.5rem;cursor:pointer;transition:color var(--transition-fast);padding:var(--spacing-xs)}.rating-star-input:hover,.rating-star-input.active{color:var(--rating-color)}.review-textarea{width:100%;min-height:120px;background:var(--surface-bg);border:2px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:var(--spacing-md);color:var(--light-text);font-family:inherit;font-size:var(--font-size-md);resize:vertical;transition:border-color var(--transition-fast)}.review-textarea:focus{outline:none;border-color:var(--primary-color)}.review-textarea::placeholder{color:var(--placeholder-text)}.review-composer-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md)}.character-counter{font-size:var(--font-size-sm);color:var(--gray-text)}.character-counter.warning{color:var(--warning-color)}.character-counter.error{color:var(--error-color)}.review-filters{background:var(--surface-bg);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.review-filters-row{display:flex;flex-wrap:wrap;gap:var(--spacing-md);align-items:center}.filter-group{display:flex;align-items:center;gap:var(--spacing-sm)}.filter-label{color:var(--gray-text);font-size:var(--font-size-sm);font-weight:500}.filter-select{background:var(--dark-bg);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm);color:var(--light-text);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.filter-select:focus{outline:none;border-color:var(--primary-color)}.search-container-advanced{position:relative;max-width:800px;margin:0 auto}.search-input-advanced{width:100%;padding:var(--spacing-md) var(--spacing-lg);padding-right:4rem;background:rgba(255,255,255,.95);border:2px solid transparent;border-radius:var(--radius-lg);font-size:var(--font-size-lg);color:#333;transition:all var(--transition-fast)}.search-input-advanced:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(229,9,20,.2)}.search-input-loading{position:absolute;right:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--primary-color)}.search-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--card-bg);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);margin-top:var(--spacing-xs);max-height:400px;overflow-y:auto;z-index:var(--z-dropdown);box-shadow:var(--shadow-xl)}.search-dropdown-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);cursor:pointer;transition:background-color var(--transition-fast);border-bottom:1px solid rgba(255,255,255,.05)}.search-dropdown-item:hover,.search-dropdown-item:focus{background:rgba(229,9,20,.1)}.search-dropdown-item:last-child{border-bottom:none}.search-dropdown-image{width:40px;height:60px;object-fit:cover;border-radius:var(--radius-sm);background:var(--surface-bg)}.search-dropdown-content{flex-grow:1}.search-dropdown-title{font-weight:600;color:var(--light-text);margin-bottom:.25rem}.search-dropdown-meta{font-size:var(--font-size-sm);color:var(--gray-text)}.search-filters-sidebar{background:var(--card-bg);border-radius:var(--radius-lg);padding:var(--spacing-lg);height:fit-content;position:sticky;top:var(--spacing-lg)}.search-filters-title{font-size:var(--font-size-xl);font-weight:600;color:var(--light-text);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.filter-section{margin-bottom:var(--spacing-xl)}.filter-section-title{font-size:var(--font-size-md);font-weight:600;color:var(--light-text);margin-bottom:var(--spacing-md)}.genre-filters{display:grid;grid-template-columns:1fr;gap:var(--spacing-sm)}.genre-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-sm);transition:background-color var(--transition-fast)}.genre-checkbox:hover{background:rgba(255,255,255,.05)}.genre-checkbox input[type="checkbox"]{width:18px;height:18px;accent-color:var(--primary-color)}.genre-checkbox label{color:var(--light-text);cursor:pointer;font-size:var(--font-size-sm)}.year-range-container{margin:var(--spacing-md) 0}.year-range-slider{width:100%;height:6px;background:var(--surface-bg);border-radius:3px;outline:none;-webkit-appearance:none}.year-range-slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;background:var(--primary-color);border-radius:50%;cursor:pointer}.year-range-slider::-moz-range-thumb{width:20px;height:20px;background:var(--primary-color);border-radius:50%;cursor:pointer;border:none}.year-range-display{display:flex;justify-content:space-between;margin-top:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--gray-text)}.rating-filter{display:flex;align-items:center;gap:var(--spacing-sm);margin:var(--spacing-md) 0}.rating-filter-input{width:80px;background:var(--surface-bg);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm);color:var(--light-text);padding:var(--spacing-sm);font-size:var(--font-size-sm)}.rating-filter-input:focus{outline:none;border-color:var(--primary-color)}.mobile-filter-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--overlay-bg);z-index:var(--z-overlay);display:none}.mobile-filter-panel{position:fixed;bottom:0;left:0;right:0;background:var(--dark-bg);border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);padding:var(--spacing-lg);max-height:80vh;overflow-y:auto;transform:translateY(100%);transition:transform var(--transition-normal)}.mobile-filter-overlay.active{display:block}.mobile-filter-overlay.active .mobile-filter-panel{transform:translateY(0)}.mobile-filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.mobile-filter-close{background:none;border:none;color:var(--light-text);font-size:1.5rem;cursor:pointer;padding:var(--spacing-sm)}.profile-header{background:linear-gradient(135deg,rgba(229,9,20,.8),rgba(20,20,20,.9));border-radius:var(--radius-xl);padding:var(--spacing-2xl);margin-bottom:var(--spacing-xl);text-align:center}.profile-avatar-large{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid #fff;margin-bottom:var(--spacing-lg)}.profile-avatar-placeholder-large{width:120px;height:120px;border-radius:50%;background:var(--surface-bg);display:flex;align-items:center;justify-content:center;color:var(--gray-text);font-size:3rem;border:4px solid #fff;margin:0 auto var(--spacing-lg)}.profile-username{font-size:var(--font-size-3xl);font-weight:700;color:var(--light-text);margin-bottom:var(--spacing-sm)}.profile-bio{font-size:var(--font-size-lg);color:var(--gray-text);max-width:600px;margin:0 auto}.user-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--card-bg);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--spacing-lg);text-align:center;transition:all var(--transition-normal)}.stat-card:hover{transform:translateY(-4px);border-color:rgba(229,9,20,.3);box-shadow:var(--shadow-lg)}.stat-icon{font-size:2.5rem;color:var(--primary-color);margin-bottom:var(--spacing-md)}.stat-number{font-size:var(--font-size-3xl);font-weight:700;color:var(--light-text);margin-bottom:var(--spacing-sm)}.stat-label{font-size:var(--font-size-md);color:var(--gray-text);font-weight:500}.dashboard-section{background:var(--card-bg);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.dashboard-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.dashboard-section-title{font-size:var(--font-size-2xl);font-weight:600;color:var(--light-text)}.dashboard-section-action{background:none;border:1px solid var(--primary-color);color:var(--primary-color);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);text-decoration:none;font-size:var(--font-size-sm);transition:all var(--transition-fast)}.dashboard-section-action:hover{background:var(--primary-color);color:#fff}.recently-watched-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-lg)}.recently-watched-item{position:relative;cursor:pointer;transition:transform var(--transition-normal)}.recently-watched-item:hover{transform:scale(1.05)}.recently-watched-poster{width:100%;aspect-ratio: 2/3;object-fit:cover;border-radius:var(--radius-md)}.recently-watched-info{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.9));padding:var(--spacing-md);border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.recently-watched-title{font-size:var(--font-size-sm);font-weight:600;color:var(--light-text);margin-bottom:.25rem}.recently-watched-date{font-size:var(--font-size-xs);color:var(--gray-text)}.ratings-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-md)}.rating-summary{text-align:center;padding:var(--spacing-md);background:var(--surface-bg);border-radius:var(--radius-md)}.rating-summary-stars{font-size:var(--font-size-lg);color:var(--rating-color);margin-bottom:var(--spacing-sm)}.rating-summary-count{font-size:var(--font-size-xl);font-weight:700;color:var(--light-text);margin-bottom:.25rem}.rating-summary-label{font-size:var(--font-size-xs);color:var(--gray-text)}.watchlist-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--surface-bg);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);transition:all var(--transition-fast)}.watchlist-item:hover{background:rgba(229,9,20,.1)}.watchlist-poster-small{width:60px;height:90px;object-fit:cover;border-radius:var(--radius-sm)}.watchlist-content{flex-grow:1}.watchlist-title{font-weight:600;color:var(--light-text);margin-bottom:.25rem}.watchlist-meta{font-size:var(--font-size-sm);color:var(--gray-text)}.watchlist-actions{display:flex;gap:var(--spacing-sm)}.watchlist-action-btn{background:none;border:1px solid rgba(255,255,255,.2);color:var(--gray-text);padding:var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.watchlist-action-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.navbar-enhanced{background:var(--secondary-color);border-bottom:2px solid var(--primary-color);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:sticky;top:0;z-index:var(--z-dropdown)}.user-menu-dropdown{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:var(--spacing-sm);background:none;border:none;color:var(--light-text);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-md);transition:background-color var(--transition-fast)}.user-menu-trigger:hover{background:rgba(255,255,255,.1)}.user-menu-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.user-menu-panel{position:absolute;top:100%;right:0;background:var(--card-bg);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);min-width:200px;padding:var(--spacing-sm);margin-top:var(--spacing-sm);box-shadow:var(--shadow-xl);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-fast)}.user-menu-dropdown.active .user-menu-panel{opacity:1;visibility:visible;transform:translateY(0)}.user-menu-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);color:var(--light-text);text-decoration:none;border-radius:var(--radius-md);transition:background-color var(--transition-fast)}.user-menu-item:hover{background:rgba(229,9,20,.1);color:var(--light-text)}.user-menu-divider{height:1px;background:rgba(255,255,255,.1);margin:var(--spacing-sm) 0}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;background:var(--secondary-color);border-top:2px solid var(--primary-color);padding:var(--spacing-sm) 0;display:none;z-index:var(--z-dropdown)}.mobile-nav-items{display:flex;justify-content:space-around;align-items:center}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;color:var(--gray-text);text-decoration:none;padding:var(--spacing-sm);border-radius:var(--radius-md);transition:color var(--transition-fast);min-width:60px}.mobile-nav-item.active,.mobile-nav-item:hover{color:var(--primary-color)}.mobile-nav-icon{font-size:1.25rem}.mobile-nav-label{font-size:var(--font-size-xs);font-weight:500}.breadcrumb-enhanced{background:var(--surface-bg);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.breadcrumb-enhanced .breadcrumb{margin-bottom:0}.breadcrumb-enhanced .breadcrumb-item{color:var(--gray-text)}.breadcrumb-enhanced .breadcrumb-item.active{color:var(--light-text)}.breadcrumb-enhanced .breadcrumb-item a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-fast)}.breadcrumb-enhanced .breadcrumb-item a:hover{color:var(--primary-light)}.genre-browser{background:var(--card-bg);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.genre-browser-title{font-size:var(--font-size-2xl);font-weight:600;color:var(--light-text);text-align:center;margin-bottom:var(--spacing-xl)}.genre-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg)}.genre-card{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;color:#fff;text-decoration:none;transition:all var(--transition-normal);position:relative;overflow:hidden}.genre-card::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1));transform:translateX(-100%);transition:transform var(--transition-normal)}.genre-card:hover::before{transform:translateX(100%)}.genre-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-glow)}.genre-card-icon{font-size:3rem;margin-bottom:var(--spacing-md)}.genre-card-name{font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--spacing-sm)}.genre-card-count{font-size:var(--font-size-sm);opacity:.8}.btn-primary-enhanced{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border:none;color:#fff;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:var(--spacing-sm);transition:all var(--transition-normal);cursor:pointer}.btn-primary-enhanced:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);color:#fff}.btn-secondary-enhanced{background:transparent;border:2px solid var(--primary-color);color:var(--primary-color);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:var(--spacing-sm);transition:all var(--transition-normal);cursor:pointer}.btn-secondary-enhanced:hover{background:var(--primary-color);color:#fff;transform:translateY(-2px)}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:var(--primary-color);animation:spin 1s ease-in-out infinite}@keyframes spin {
  to { transform: rotate(360deg); }
}.loading-skeleton{background:linear-gradient(90deg,var(--surface-bg) 25%,var(--card-bg) 50%,var(--surface-bg) 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:var(--radius-md)}@keyframes loading {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media (max-width:575.98px){.mobile-bottom-nav{display:block}body{padding-bottom:80px}.movie-card-enhanced{margin-bottom:var(--spacing-lg)}.search-container-advanced{padding:0 var(--spacing-md)}.search-filters-sidebar{display:none}.user-stats{grid-template-columns:1fr}.dashboard-section,.profile-header{padding:var(--spacing-lg)}.genre-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.review-card{padding:var(--spacing-md)}.review-composer{padding:var(--spacing-md)}}@media (min-width:576px) and (max-width:767.98px){.user-stats{grid-template-columns:repeat(2,1fr)}.genre-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media (min-width:768px){.mobile-bottom-nav{display:none!important}body{padding-bottom:0}.recently-watched-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media (min-width:992px){.user-stats{grid-template-columns:repeat(4,1fr)}.movie-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (min-width:1200px){.recently-watched-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (prefers-color-scheme:dark){.search-input-advanced{background:rgba(255,255,255,.1);color:var(--light-text)}.search-input-advanced::placeholder{color:var(--placeholder-text)}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast:high){:root{--primary-color:red;--light-text:#fff;--dark-bg:#000;--card-bg:#222}}@media print{.mobile-bottom-nav,.user-menu-dropdown,.search-filters-sidebar,.quick-rating,.watchlist-btn,.review-actions{display:none!important}.movie-card-enhanced,.review-card,.dashboard-section{break-inside:avoid;margin-bottom:var(--spacing-md)}body{background:#fff!important;color:#000!important}.movie-card-enhanced,.review-card,.dashboard-section{background:#fff!important;border:1px solid #ccc!important}}:root{--delight-spring:cubic-bezier(.68,-.55,.265,1.55);--delight-bounce:cubic-bezier(.25,.46,.45,.94);--delight-ease:cubic-bezier(.4,.0,.2,1);--delight-pop:cubic-bezier(.175,.885,.32,1.275);--particle-gold:#ffd700;--particle-silver:silver;--particle-red:#ff6b6b;--particle-blue:#4ecdc4;--particle-purple:#9b59b6;--glow-primary:0 0 20px rgba(1,180,228,.5);--glow-success:0 0 20px rgba(33,208,122,.5);--glow-warning:0 0 20px rgba(255,193,7,.5)}.delight-loader{display:inline-block;width:40px;height:40px;position:relative;animation:delight-spin 1.2s infinite ease-in-out}.delight-loader::before,.delight-loader::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background:linear-gradient(45deg,var(--tmdb-blue),var(--tmdb-green),var(--tmdb-purple));animation:delight-pulse 1.5s infinite ease-in-out}.delight-loader::after{animation-delay:-.3s}@keyframes delight-spin {
    0% { transform: rotate(0deg) scale(1); }
    50% { transform: rotate(180deg) scale(1.1); }
    100% { transform: rotate(360deg) scale(1); }
}@keyframes delight-pulse {
    0%, 100% { opacity: 0.3; transform: scale(0.8); }
    50% { opacity: 1; transform: scale(1.2); }
}.movie-poster-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:8px;position:relative;overflow:hidden}.movie-poster-skeleton::after{content:'🎬';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2rem;opacity:.3;animation:skeleton-icon-bounce 2s infinite ease-in-out}@keyframes skeleton-shimmer {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
}@keyframes skeleton-icon-bounce {
    0%, 100% { transform: translate(-50%, -50%) scale(1); }
    50% { transform: translate(-50%, -50%) scale(1.1); }
}.search-loading{position:relative}.search-loading::after{content:'';position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:2px solid var(--tmdb-blue);border-radius:50%;border-top-color:transparent;animation:search-spin .8s linear infinite}@keyframes search-spin {
    to { transform: translateY(-50%) rotate(360deg); }
}.btn,.movie-card,.user-toggle,.star-rating label{transition:all .3s var(--delight-ease);position:relative;overflow:hidden}.btn:active,.movie-card:active{transform:scale(.98);transition:transform .1s ease}.btn::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .6s , height .6s}.btn:active::before{width:300px;height:300px}.movie-card{transform-style:preserve-3d;backface-visibility:hidden}.movie-card:hover{transform:translateY(-8px) rotateX(5deg);box-shadow:0 20px 40px rgba(0,0,0,.2) , 0 0 0 1px rgba(1,180,228,.1);transition:all .4s var(--delight-spring)}.movie-card:hover .movie-poster{transform:scale(1.05);transition:transform .4s var(--delight-ease)}@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-6px); }
}.movie-card:hover::after{content:'👁️';position:absolute;top:10px;right:10px;background:rgba(0,0,0,.8);color:#fff;padding:4px 8px;border-radius:12px;font-size:.8rem;animation:float 2s ease-in-out infinite;opacity:0;animation:fadeInFloat .3s ease forwards}@keyframes fadeInFloat {
    to {
        opacity: 1;
        animation: float 2s ease-in-out infinite;
    }
}.star-rating label:hover{transform:scale(1.2) rotate(5deg);text-shadow:var(--glow-warning);animation:star-twinkle .6s ease}@keyframes star-twinkle {
    0%, 100% { filter: brightness(1); }
    50% { filter: brightness(1.5) drop-shadow(0 0 8px gold); }
}.rating-celebration{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3rem;pointer-events:none;z-index:9999;animation:rating-burst 1s ease-out forwards}@keyframes rating-burst {
    0% {
        transform: translate(-50%, -50%) scale(0) rotate(0deg);
        opacity: 1;
    }
    70% {
        transform: translate(-50%, -50%) scale(1.2) rotate(360deg);
        opacity: 1;
    }
    100% {
        transform: translate(-50%, -50%) scale(0.8) rotate(360deg);
        opacity: 0;
    }
}.particle-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999}.particle{position:absolute;width:6px;height:6px;background:var(--particle-gold);border-radius:50%;animation:particle-fall 3s linear forwards}.particle:nth-child(2n) {background:var(--particle-silver)}.particle:nth-child(3n) {background:var(--particle-red)}.particle:nth-child(4n) {background:var(--particle-blue)}.particle:nth-child(5n) {background:var(--particle-purple)}@keyframes particle-fall {
    0% {
        transform: translateY(-100vh) rotate(0deg);
        opacity: 1;
    }
    100% {
        transform: translateY(100vh) rotate(720deg);
        opacity: 0;
    }
}.navbar-nav .nav-link:hover{text-shadow:0 0 8px rgba(255,255,255,.8);transform:translateY(-2px);transition:all .3s var(--delight-ease)}.search-input:focus,.header-search-input:focus{box-shadow:0 0 0 3px rgba(1,180,228,.2) , var(--glow-primary);transform:scale(1.02);transition:all .3s var(--delight-ease)}.dropdown-menu{transform:scale(.95) translateY(-10px);opacity:0;transition:all .2s var(--delight-spring)}.dropdown-menu.show{transform:scale(1) translateY(0);opacity:1;animation:dropdown-magical-entrance .4s var(--delight-bounce)}@keyframes dropdown-magical-entrance {
    0% {
        transform: scale(0.8) translateY(-20px) rotate(-2deg);
        opacity: 0;
    }
    60% {
        transform: scale(1.05) translateY(2px) rotate(1deg);
        opacity: 1;
    }
    100% {
        transform: scale(1) translateY(0) rotate(0deg);
        opacity: 1;
    }
}.notification-success{background:linear-gradient(135deg,var(--tmdb-green),#2ecc71);color:#fff;border-radius:12px;padding:1rem 1.5rem;box-shadow:0 10px 25px rgba(33,208,122,.3) , var(--glow-success);animation:notification-success-entrance .5s var(--delight-bounce);position:relative;overflow:hidden}.notification-success::before{content:'✨';position:absolute;left:-10px;top:50%;transform:translateY(-50%);font-size:1.5rem;animation:celebration-sparkle 2s infinite}@keyframes notification-success-entrance {
    0% {
        transform: translateX(100%) scale(0.8);
        opacity: 0;
    }
    60% {
        transform: translateX(-10px) scale(1.05);
        opacity: 1;
    }
    100% {
        transform: translateX(0) scale(1);
        opacity: 1;
    }
}@keyframes celebration-sparkle {
    0%, 100% { transform: translateY(-50%) rotate(0deg) scale(1); }
    25% { transform: translateY(-50%) rotate(90deg) scale(1.2); }
    50% { transform: translateY(-50%) rotate(180deg) scale(0.8); }
    75% { transform: translateY(-50%) rotate(270deg) scale(1.1); }
}.notification-error{background:linear-gradient(135deg,#e74c3c,#ff6b6b);color:#fff;border-radius:12px;padding:1rem 1.5rem;animation:friendly-shake .5s ease-in-out}@keyframes friendly-shake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-5px) rotate(-1deg); }
    75% { transform: translateX(5px) rotate(1deg); }
}.form-control.error{border-color:#ff6b6b;box-shadow:0 0 0 3px rgba(255,107,107,.2);animation:gentle-pulse 1s ease-in-out}@keyframes gentle-pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.02); }
}.form-control.success{border-color:var(--tmdb-green);box-shadow:0 0 0 3px rgba(33,208,122,.2)}.konami-activated{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#45b7d1,#96ceb4,#ffeaa7);background-size:400% 400%;animation:rainbow-background 4s ease infinite;z-index:10000;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fff;text-align:center}.konami-activated h1{font-size:3rem;margin-bottom:1rem;animation:konami-text-dance 2s ease-in-out infinite;text-shadow:2px 2px 4px rgba(0,0,0,.5)}@keyframes rainbow-background {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}@keyframes konami-text-dance {
    0%, 100% { transform: rotate(-2deg) scale(1); }
    50% { transform: rotate(2deg) scale(1.05); }
}.movie-poster.easter-egg-active{animation:poster-flip 1s ease-in-out;cursor:pointer}@keyframes poster-flip {
    0% { transform: rotateY(0deg); }
    50% { transform: rotateY(180deg); }
    100% { transform: rotateY(0deg); }
}.long-press-hint{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.8);color:#fff;padding:4px 8px;border-radius:12px;font-size:.7rem;opacity:0;animation:hint-fade-in .3s ease forwards}@keyframes hint-fade-in {
    to { opacity: 1; }
}@media (max-width:768px){.movie-card:hover{transform:translateY(-4px)}.btn:active{transform:scale(.95)}.star-rating label:hover{transform:scale(1.1)}.particle{width:4px;height:4px}.movie-poster-skeleton::after{animation-duration:3s}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.movie-card:hover{transform:none;box-shadow:0 4px 8px rgba(0,0,0,.2)}.star-rating label:hover{transform:none}}.movie-card,.btn,.dropdown-menu,.notification-success,.notification-error{will-change:transform;backface-visibility:hidden;perspective:1000px}.particle-container{transform:translateZ(0);backface-visibility:hidden}@media (prefers-color-scheme:dark){.movie-poster-skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a 50%,#2a2a2a 75%);background-size:200% 100%}.search-input:focus,.header-search-input:focus{box-shadow:0 0 0 3px rgba(1,180,228,.3) , 0 0 20px rgba(1,180,228,.2)}}.achievement-badge{display:inline-flex;align-items:center;background:linear-gradient(135deg,#ffd700,#ffa500);color:#333;padding:8px 16px;border-radius:25px;font-size:.9rem;font-weight:600;margin:4px;box-shadow:0 4px 15px rgba(255,215,0,.3);animation:badge-glow 2s ease-in-out infinite alternate;position:relative;overflow:hidden}.achievement-badge::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:badge-shine 3s ease-in-out infinite}.achievement-badge .icon{margin-right:8px;font-size:1.1rem}@keyframes badge-glow {
    0% { box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3); }
    100% { box-shadow: 0 6px 25px rgba(255, 215, 0, 0.6); }
}@keyframes badge-shine {
    0% { left: -100%; }
    100% { left: 100%; }
}.achievement-unlock{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);background:linear-gradient(135deg,#ffd700,#ffa500);color:#333;padding:30px 40px;border-radius:20px;text-align:center;z-index:10000;box-shadow:0 20px 60px rgba(0,0,0,.3);animation:achievement-popup 3s ease-out forwards}.achievement-unlock h3{margin:0 0 10px 0;font-size:1.5rem;font-weight:bold}.achievement-unlock p{margin:0;opacity:.8}@keyframes achievement-popup {
    0% {
        transform: translate(-50%, -50%) scale(0) rotate(-5deg);
        opacity: 0;
    }
    20% {
        transform: translate(-50%, -50%) scale(1.1) rotate(2deg);
        opacity: 1;
    }
    40% {
        transform: translate(-50%, -50%) scale(0.95) rotate(-1deg);
    }
    60% {
        transform: translate(-50%, -50%) scale(1.02) rotate(0.5deg);
    }
    80% {
        transform: translate(-50%, -50%) scale(1) rotate(0deg);
    }
    95% {
        transform: translate(-50%, -50%) scale(1) rotate(0deg);
        opacity: 1;
    }
    100% {
        transform: translate(-50%, -50%) scale(0.8) rotate(0deg);
        opacity: 0;
    }
}.movie-progress-bar{background:#2a2a2a;border-radius:25px;height:8px;overflow:hidden;position:relative;margin:10px 0}.movie-progress-fill{height:100%;background:linear-gradient(90deg,#ffd700,#ffa500,#ff6b6b);border-radius:25px;position:relative;transition:width .8s var(--delight-ease);overflow:hidden}.movie-progress-fill::after{content:'';position:absolute;top:0;left:0;height:100%;width:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:progress-shine 2s ease-in-out infinite}@keyframes progress-shine {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}.empty-state-creative{text-align:center;padding:60px 30px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:20px;margin:40px 0;position:relative;overflow:hidden}.empty-state-creative::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(1,180,228,.05) 0%,transparent 70%);animation:empty-state-float 6s ease-in-out infinite}@keyframes empty-state-float {
    0%, 100% { transform: rotate(0deg); }
    50% { transform: rotate(180deg); }
}.empty-state-icon{font-size:4rem;margin-bottom:20px;animation:empty-icon-bounce 3s ease-in-out infinite;position:relative;z-index:1}@keyframes empty-icon-bounce {
    0%, 100% { transform: translateY(0) scale(1); }
    25% { transform: translateY(-10px) scale(1.05); }
    50% { transform: translateY(0) scale(1); }
    75% { transform: translateY(-5px) scale(1.02); }
}.empty-state-title{font-size:1.8rem;font-weight:700;color:#333;margin-bottom:15px;position:relative;z-index:1}.empty-state-subtitle{font-size:1.1rem;color:#666;margin-bottom:25px;line-height:1.6;position:relative;z-index:1}.empty-state-cta{background:linear-gradient(135deg,#01b4e4,#21d07a);color:#fff;border:none;padding:15px 30px;border-radius:25px;font-size:1.1rem;font-weight:600;transition:all .3s var(--delight-spring);position:relative;z-index:1;box-shadow:0 8px 25px rgba(1,180,228,.3)}.empty-state-cta:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 12px 35px rgba(1,180,228,.4);color:#fff}.empty-watchlist{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.empty-reviews{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);color:#fff}.empty-search{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff}.btn-playful{position:relative;overflow:hidden}.btn-playful .btn-text{display:inline-block;transition:transform .3s var(--delight-ease)}.btn-playful:hover .btn-text{transform:scale(1.05)}.btn-playful::after{content:attr(data-hover);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);opacity:0;transition:all .3s var(--delight-spring);white-space:nowrap}.btn-playful:hover::after{transform:translate(-50%,-50%) scale(1);opacity:1}.btn-playful:hover .btn-text{opacity:0}.loading-quotes{text-align:center;margin:20px 0}.quote-item{opacity:0;animation:quote-fade 4s ease-in-out infinite;font-style:italic;color:#666}.quote-item:nth-child(2) {animation-delay:4s}.quote-item:nth-child(3) {animation-delay:8s}.quote-item:nth-child(4) {animation-delay:12s}@keyframes quote-fade {
    0%, 75%, 100% { opacity: 0; transform: translateY(10px); }
    25%, 50% { opacity: 1; transform: translateY(0); }
}.pull-to-refresh-indicator{position:fixed;top:-60px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#01b4e4,#21d07a);color:#fff;padding:15px 25px;border-radius:30px;font-weight:600;transition:all .3s var(--delight-spring);z-index:1000}.pull-to-refresh-indicator.active{top:20px;animation:refresh-bounce .6s ease-out}@keyframes refresh-bounce {
    0% { transform: translateX(-50%) scale(0.8); }
    50% { transform: translateX(-50%) scale(1.1); }
    100% { transform: translateX(-50%) scale(1); }
}.swipe-feedback{position:absolute;top:50%;right:20px;transform:translateY(-50%);background:rgba(0,0,0,.8);color:#fff;padding:10px 15px;border-radius:20px;font-size:.9rem;font-weight:600;opacity:0;pointer-events:none;transition:opacity .3s ease}.swipe-feedback.show{opacity:1;animation:swipe-pulse .6s ease-out}@keyframes swipe-pulse {
    0% { transform: translateY(-50%) scale(0.8); }
    50% { transform: translateY(-50%) scale(1.1); }
    100% { transform: translateY(-50%) scale(1); }
}body.holiday-theme{position:relative}body.holiday-theme::before{content:'';position:fixed;top:0;left:0;width:100%;height:100%;background:url(data:image/svg+xml,<svg\ xmlns=\"http://www.w3.org/2000/svg\"\ viewBox=\"0\ 0\ 100\ 100\"><circle\ cx=\"50\"\ cy=\"50\"\ r=\"2\"\ fill=\"%23ffffff\"\ opacity=\"0.1\"/></svg>) repeat;animation:snow-fall 10s linear infinite;pointer-events:none;z-index:1}@keyframes snow-fall {
    0% { transform: translateY(-100vh); }
    100% { transform: translateY(100vh); }
}body.halloween-theme .movie-card:hover{box-shadow:0 0 30px #ff6b35 , 0 0 60px #ff6b35;animation:spooky-glow 2s ease-in-out infinite alternate}@keyframes spooky-glow {
    0% { filter: hue-rotate(0deg); }
    100% { filter: hue-rotate(20deg); }
}.movie-card,.achievement-badge,.notification,.empty-state-creative{contain:layout style paint}@media (max-width:768px){.movie-card:hover{transform:translateY(-4px)}.achievement-badge{animation-duration:4s}.particle{animation-duration:2s}}@media (prefers-reduced-motion:reduce){.achievement-badge,.movie-progress-fill::after,.empty-state-creative::before{animation:none}}@media print{*,*::before,*::after{animation:none!important;transition:none!important;transform:none!important;box-shadow:none!important}.achievement-badge,.empty-state-creative{background:#f0f0f0!important;color:#333!important}}:root{--text-perfect-white:#fff;--text-perfect-light:#f8f9fa;--text-perfect-medium:#e9ecef;--text-perfect-muted:#ced4da;--shadow-text-strong:2px 2px 4px rgba(0,0,0,.9) , 0 0 8px rgba(0,0,0,.7);--shadow-text-medium:1px 1px 3px rgba(0,0,0,.8) , 0 0 6px rgba(0,0,0,.5);--shadow-text-light:1px 1px 2px rgba(0,0,0,.7) , 0 0 4px rgba(0,0,0,.3);--ease-bounce-out:cubic-bezier(.34,1.56,.64,1);--ease-back-out:cubic-bezier(.175,.885,.32,1.275);--ease-elastic:cubic-bezier(.68,-.55,.265,1.55);--ease-smooth:cubic-bezier(.4,0,.2,1);--gradient-text-glow:linear-gradient(135deg,#fff 0%,#f8f9fa 100%);--gradient-primary-vibrant:linear-gradient(135deg,#e50914 0%,#ff1744 50%,#e50914 100%);--gradient-accent-shine:linear-gradient(135deg,#ffd700 0%,#ffed4e 50%,#ffd700 100%)}.text-ultra-contrast{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-strong);font-weight:700;letter-spacing:.025em}.text-high-contrast{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-medium);font-weight:600}.text-medium-contrast{color:var(--text-perfect-light)!important;text-shadow:var(--shadow-text-light);font-weight:500}.text-muted-contrast{color:var(--text-perfect-muted)!important;text-shadow:var(--shadow-text-light);font-weight:500}.text-overlay-perfect{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-strong);font-weight:700;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.8) 100%);padding:.5rem 1rem;border-radius:8px}h1,h2,h3,h4,h5,h6,.display-1,.display-2,.display-3,.display-4,.display-5,.display-6{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-strong);font-weight:700}.show-title,.movie-title{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-strong);font-weight:800;letter-spacing:-.02em}.show-year,.movie-year{color:var(--text-perfect-medium)!important;text-shadow:var(--shadow-text-medium);font-weight:400}.info-label{color:var(--text-perfect-muted)!important;text-shadow:var(--shadow-text-light);font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:.875rem}.info-value{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-medium);font-weight:600;font-size:1rem}.cast-name,.season-name{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-medium);font-weight:600}.cast-character,.season-meta{color:var(--text-perfect-medium)!important;text-shadow:var(--shadow-text-light);font-weight:500}.navbar-brand{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-medium);font-weight:800}.nav-link{color:var(--text-perfect-light)!important;text-shadow:var(--shadow-text-light);font-weight:500;transition:all .3s var(--ease-smooth)}.nav-link:hover,.nav-link:focus{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-medium);transform:translateY(-1px)}.btn-primary-enhanced,.btn-secondary-enhanced{position:relative;overflow:hidden;transform-style:preserve-3d;backface-visibility:hidden}.btn-primary-enhanced::after,.btn-secondary-enhanced::after{content:'';position:absolute;top:50%;left:50%;width:0;height:0;background:rgba(255,255,255,.3);border-radius:50%;transform:translate(-50%,-50%);transition:width .6s var(--ease-back-out) , height .6s var(--ease-back-out)}.btn-primary-enhanced:active::after,.btn-secondary-enhanced:active::after{width:300px;height:300px;transition:width .2s ease-out , height .2s ease-out}.info-card{position:relative;transition:all .4s var(--ease-smooth)}.info-card::before{content:'';position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,#e50914,#ff1744,#ffd700,#e50914);background-size:400% 400%;border-radius:18px;z-index:-1;opacity:0;animation:gradientShift 3s ease infinite;transition:opacity .4s var(--ease-smooth)}.info-card:hover::before{opacity:.7}@keyframes gradientShift {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}.rating-star-input{position:relative;transition:all .3s var(--ease-elastic)}.rating-star-input::before{content:'✨';position:absolute;top:-20px;left:50%;transform:translateX(-50%) scale(0);font-size:.8rem;opacity:0;transition:all .3s var(--ease-bounce-out);pointer-events:none}.rating-star-input:hover::before{transform:translateX(-50%) scale(1);opacity:1;animation:sparkle .6s var(--ease-bounce-out)}@keyframes sparkle {
    0% { transform: translateX(-50%) scale(0) rotate(0deg); }
    50% { transform: translateX(-50%) scale(1.2) rotate(180deg); }
    100% { transform: translateX(-50%) scale(1) rotate(360deg); }
}.cast-member,.season-card,.video-item,.image-item{position:relative}.cast-member::after,.season-card::after,.video-item::after,.image-item::after{content:'Click to explore';position:absolute;top:10px;right:10px;background:rgba(0,0,0,.9);color:var(--text-perfect-white);padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:600;opacity:0;transform:translateY(10px) scale(.8);transition:all .3s var(--ease-back-out);pointer-events:none;text-shadow:none;z-index:10}.cast-member:hover::after,.season-card:hover::after,.video-item:hover::after,.image-item:hover::after{opacity:1;transform:translateY(0) scale(1);animation:gentle-bounce 2s infinite}@keyframes gentle-bounce {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-2px) scale(1.02); }
}.genre-badge{position:relative;overflow:hidden;cursor:pointer;transition:all .4s var(--ease-smooth)}.genre-badge::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s var(--ease-smooth)}.genre-badge:hover::before{left:100%}.genre-badge:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 25px rgba(229,9,20,.3);text-shadow:var(--shadow-text-medium)}.loading-shimmer{background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0.05) 25%,
        rgba(255, 255, 255, 0.15) 50%,
        rgba(255, 255, 255, 0.05) 75%
    );background-size:200% 100%;animation:shimmer 2s infinite;border-radius:8px;position:relative}.loading-shimmer::after{content:'✨';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.5rem;opacity:.3;animation:sparkle-rotate 3s infinite}@keyframes shimmer {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
}@keyframes sparkle-rotate {
    0% { transform: translate(-50%, -50%) scale(1) rotate(0deg); }
    25% { transform: translate(-50%, -50%) scale(1.2) rotate(90deg); }
    50% { transform: translate(-50%, -50%) scale(1) rotate(180deg); }
    75% { transform: translate(-50%, -50%) scale(1.2) rotate(270deg); }
    100% { transform: translate(-50%, -50%) scale(1) rotate(360deg); }
}.toast-notification{position:fixed;top:24px;right:24px;min-width:300px;max-width:400px;padding:16px 20px;border-radius:12px;color:var(--text-perfect-white);font-weight:600;text-shadow:var(--shadow-text-light);z-index:10000;backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);transform:translateX(120%) scale(.9);transition:all .5s var(--ease-back-out);box-shadow:0 12px 40px rgba(0,0,0,.4);display:flex;align-items:center;gap:12px}.toast-notification.show{transform:translateX(0) scale(1)}.toast-notification::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;border-radius:12px;padding:2px;background:linear-gradient(45deg,#e50914,#ffd700,#e50914);background-size:400% 400%;animation:gradientShift 3s ease infinite;z-index:-1}.toast-notification.toast-success{background:linear-gradient(135deg,rgba(16,185,129,.95),rgba(5,150,105,.95))}.toast-notification.toast-error{background:linear-gradient(135deg,rgba(239,68,68,.95),rgba(220,38,38,.95))}.toast-notification.toast-info{background:linear-gradient(135deg,rgba(59,130,246,.95),rgba(37,99,235,.95))}.toast-icon{font-size:1.2rem;animation:pulse 2s infinite}@keyframes pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.1); }
}.rating-celebration{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);font-size:4rem;z-index:10001;pointer-events:none;animation:celebration-burst 1.5s var(--ease-back-out) forwards;filter:drop-shadow(0 0 20px rgba(255,215,0,.8))}@keyframes celebration-burst {
    0% {
        transform: translate(-50%, -50%) scale(0) rotate(0deg);
        opacity: 0;
    }
    20% {
        transform: translate(-50%, -50%) scale(1.3) rotate(180deg);
        opacity: 1;
    }
    40% {
        transform: translate(-50%, -50%) scale(1) rotate(360deg);
        opacity: 1;
    }
    60% {
        transform: translate(-50%, -50%) scale(1.1) rotate(450deg);
        opacity: 1;
    }
    80% {
        transform: translate(-50%, -50%) scale(1) rotate(540deg);
        opacity: 1;
    }
    100% {
        transform: translate(-50%, -50%) scale(0.7) rotate(720deg);
        opacity: 0;
    }
}.confetti-particle{position:fixed;width:8px;height:8px;background:#ffd700;border-radius:50%;pointer-events:none;z-index:10000;animation:confetti-fall 3s linear forwards}.confetti-particle:nth-child(2n) {background:#e50914}.confetti-particle:nth-child(3n) {background:#00d4ff}.confetti-particle:nth-child(4n) {background:#10b981}.confetti-particle:nth-child(5n) {background:#f59e0b}@keyframes confetti-fall {
    0% {
        transform: translateY(-100vh) rotate(0deg);
        opacity: 1;
    }
    100% {
        transform: translateY(100vh) rotate(720deg);
        opacity: 0;
    }
}.movie-card-title,.season-name,.cast-name,.info-card-title,.production-company *,.network-item *,.review-card *,.alert-status *{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-medium)!important}.movie-card-meta,.season-meta,.cast-character,.info-label{color:var(--text-perfect-medium)!important;text-shadow:var(--shadow-text-light)!important}.btn-primary-enhanced,.btn-secondary-enhanced,.btn-outline-light,.watchlist-toggle-btn{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-light)!important;font-weight:600!important}.modal-content,.modal-header,.modal-body,.modal-footer{color:var(--text-perfect-white)!important}.modal-title{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-medium)!important}.form-control,.review-textarea{color:var(--text-perfect-white)!important;background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.3)!important}.form-control::placeholder,.review-textarea::placeholder{color:var(--text-perfect-muted)!important}.form-label{color:var(--text-perfect-white)!important;text-shadow:var(--shadow-text-light)!important;font-weight:600!important}.scroll-progress{position:fixed;top:0;left:0;width:0%;height:4px;background:var(--gradient-primary-vibrant);z-index:10000;transition:width .1s var(--ease-smooth);box-shadow:0 0 15px rgba(229,9,20,.6)}.page-enter{opacity:0;transform:translateY(20px);animation:page-enter-animation .8s var(--ease-back-out) forwards}.page-enter:nth-child(1) {animation-delay:.1s}.page-enter:nth-child(2) {animation-delay:.2s}.page-enter:nth-child(3) {animation-delay:.3s}.page-enter:nth-child(4) {animation-delay:.4s}.page-enter:nth-child(5) {animation-delay:.5s}@keyframes page-enter-animation {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}@media (max-width:768px){.text-ultra-contrast,.text-high-contrast{font-size:.95em;text-shadow:var(--shadow-text-strong)}.toast-notification{right:12px;left:12px;max-width:none;min-width:auto;transform:translateY(-120%) scale(.9)}.toast-notification.show{transform:translateY(0) scale(1)}.rating-celebration{font-size:3rem}.confetti-particle{width:6px;height:6px}}@media (prefers-reduced-motion:reduce){.info-card::before,.genre-badge::before,.loading-shimmer,.scroll-progress,.rating-celebration,.confetti-particle{animation:none!important}.cast-member:hover,.season-card:hover,.video-item:hover,.image-item:hover{transform:none!important}.btn-primary-enhanced:hover,.btn-secondary-enhanced:hover{transform:none!important}}@media (prefers-contrast:high){:root{--text-perfect-white:#fff;--text-perfect-light:#fff;--text-perfect-medium:#fff;--text-perfect-muted:#ccc;--shadow-text-strong:3px 3px 0 #000 , -1px -1px 0 #000 , 1px -1px 0 #000 , -1px 1px 0 #000;--shadow-text-medium:2px 2px 0 #000 , -1px -1px 0 #000;--shadow-text-light:1px 1px 0 #000}.info-card,.cast-member,.season-card,.video-item,.image-item{border:2px solid #fff!important}}@media print{.toast-notification,.rating-celebration,.confetti-particle,.scroll-progress{display:none!important}*{color:#000!important;text-shadow:none!important;background:transparent!important}.text-ultra-contrast,.text-high-contrast,.text-medium-contrast{color:#000!important;font-weight:700!important}}.mobile-menu-overlay{position:fixed;top:70px;left:0;right:0;bottom:0;background:rgba(255,255,255,.98);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:999;transform:translateY(-100%);transition:transform .3s ease-in-out;overflow-y:auto;max-height:calc(100vh - 70px)}.mobile-menu-overlay:not(.hidden) {transform:translateY(0)}.mobile-menu-overlay.show{transform:translateY(0)}@media (max-width:768px){.mobile-menu-overlay{background:rgba(255,255,255,.95);border-top:1px solid rgba(0,0,0,.1);box-shadow:0 -4px 20px rgba(0,0,0,.1)}.mobile-menu-overlay nav a{padding:1rem 1.5rem;font-size:1rem;font-weight:500;border-bottom:1px solid rgba(0,0,0,.05);display:flex;align-items:center;gap:.75rem;transition:all .2s ease}.mobile-menu-overlay nav a:hover,.mobile-menu-overlay nav a.active{background:rgba(59,130,246,.1);color:#3b82f6;transform:translateX(8px)}.mobile-menu-overlay nav a i{width:20px;text-align:center;font-size:1.1rem}.mobile-menu-overlay .pt-2{padding:1.5rem;background:rgba(0,0,0,.02);margin:1rem 0}.mobile-menu-overlay input{height:48px;font-size:16px;padding:.75rem 1rem .75rem 3rem;border-radius:12px;border:2px solid #e5e7eb;transition:all .2s ease}.mobile-menu-overlay input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}}@media (any-pointer:coarse){.movie-card,.btn,.nav-link,.dropdown-toggle,.search-btn{min-height:48px;min-width:48px}.btn:active{transform:scale(.98);transition:transform .1s ease}.movie-card:active{transform:scale(.99);transition:transform .1s ease}.form-group{margin-bottom:1.5rem}.form-group label{margin-bottom:.75rem;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.875rem 1rem;font-size:16px;border-radius:8px;border:2px solid #e5e7eb;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}}@media (max-width:768px){.tmdb-hero-container{background-attachment:scroll!important;min-height:60vh}.tmdb-hero-content{padding:2rem 0;text-align:center}.tmdb-hero-poster{margin:0 auto 2rem;max-width:240px;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.4)}.tmdb-hero-main{text-align:left;max-width:600px;margin:0 auto}.tmdb-hero-title{font-size:1.875rem;line-height:1.2;margin-bottom:1rem;font-weight:700}.tmdb-hero-meta{flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.tmdb-hero-meta span{background:rgba(255,255,255,.2);padding:.5rem .75rem;border-radius:20px;font-size:.875rem;font-weight:500}.tmdb-hero-actions{flex-direction:column;align-items:stretch;gap:1rem;margin-top:2rem}.tmdb-action-btn{width:100%;padding:1rem;font-size:1rem;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s ease}.tmdb-action-btn:active{transform:scale(.98)}.tmdb-user-score{margin:2rem auto}.tmdb-score-chart{width:80px;height:80px}.score-text{font-size:1.25rem;font-weight:700}.user-score-text{font-size:.75rem;margin-top:.5rem;text-align:center}.tmdb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;padding:0}.movie-card{border-radius:16px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:all .3s cubic-bezier(.4,0,.2,1);background:#fff;cursor:pointer;position:relative}.movie-card:active{transform:scale(.98)}.movie-poster{position:relative;overflow:hidden;border-radius:16px 16px 0 0;aspect-ratio: 2/3}.movie-poster img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease;border-radius:16px 16px 0 0}.movie-info{padding:1rem;background:#fff;border-radius:0 0 16px 16px}.movie-title{font-size:.9rem;font-weight:600;line-height:1.3;margin-bottom:.5rem;color:#1f2937;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:2.6rem}.movie-date{font-size:.8rem;color:#6b7280;font-weight:500}.movie-rating{position:absolute;top:.75rem;right:.75rem;background:rgba(0,0,0,.85);color:#fff;padding:.375rem .625rem;border-radius:16px;font-size:.75rem;font-weight:700;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1)}.tmdb-section .flex{flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:1.5rem}.tmdb-section .flex .tmdb-nav-link{align-self:flex-end;font-size:.9rem;color:#01b4e4;font-weight:600;text-decoration:none;padding:.5rem 1rem;border:1px solid #01b4e4;border-radius:20px;transition:all .2s ease}.tmdb-section .flex .tmdb-nav-link:hover{background:#01b4e4;color:#fff}}@media (max-width:480px){.tmdb-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.875rem}.movie-card{border-radius:14px}.movie-poster{border-radius:14px 14px 0 0}.movie-poster img{border-radius:14px 14px 0 0}.movie-info{padding:.875rem;border-radius:0 0 14px 14px}.movie-title{font-size:.85rem;min-height:2.4rem;line-height:1.25}.movie-date{font-size:.75rem}.movie-rating{top:.625rem;right:.625rem;padding:.25rem .5rem;font-size:.7rem;border-radius:12px}.tmdb-section-title{font-size:1.375rem;margin-bottom:1rem}.container{padding-left:.875rem;padding-right:.875rem}}@media (max-width:360px){.tmdb-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.75rem}.movie-info{padding:.75rem}.movie-title{font-size:.8rem;min-height:2.2rem}.movie-date{font-size:.7rem}.container{padding-left:.75rem;padding-right:.75rem}}@media (max-width:768px){.hero-search-form{position:relative;max-width:100%;margin:0 1rem;background:rgba(255,255,255,.95);border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px rgba(0,0,0,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.hero-search-input{width:100%;height:56px;padding:0 60px 0 1.25rem;font-size:16px;border:2px solid rgba(1,180,228,.2);border-radius:28px;transition:all .3s ease;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.05)}.hero-search-input:focus{border-color:#01b4e4;box-shadow:0 0 0 4px rgba(1,180,228,.1) , 0 4px 12px rgba(0,0,0,.05);outline:none}.hero-search-button{position:absolute;right:1.75rem;top:50%;transform:translateY(-50%);height:44px;padding:0 1.5rem;background:linear-gradient(135deg,#01b4e4,#0d8bc4);color:#fff;border:none;border-radius:22px;font-size:1rem;font-weight:600;transition:all .2s ease;box-shadow:0 4px 12px rgba(1,180,228,.3)}.hero-search-button:active{transform:translateY(-50%) scale(.98)}input[type="text"],input[type="email"],input[type="password"],input[type="search"],select,textarea{font-size:16px!important;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:12px;transition:all .2s ease;background:#fff;min-height:48px;width:100%}input[type="text"]:focus,input[type="email"]:focus,input[type="password"]:focus,input[type="search"]:focus,select:focus,textarea:focus{border-color:#01b4e4;box-shadow:0 0 0 3px rgba(1,180,228,.1);outline:none}.btn,button[type="submit"]{min-height:48px;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;border-radius:12px;transition:all .2s ease;cursor:pointer;border:none;position:relative;overflow:hidden}.btn:active,button[type="submit"]:active{transform:scale(.98)}.btn-primary{background:linear-gradient(135deg,#01b4e4,#0d8bc4);color:#fff;box-shadow:0 4px 12px rgba(1,180,228,.3)}.btn-secondary{background:#f8f9fa;color:#495057;border:2px solid #e5e7eb}label{font-weight:600;color:#374151;margin-bottom:.5rem;display:block;font-size:.95rem}.form-group{margin-bottom:1.5rem}.form-group:last-child{margin-bottom:0}}.loading-skeleton{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; }
}.movie-card.loading .movie-poster{height:180px;background:#f0f0f0}.movie-card.loading .movie-info{padding:.75rem}.movie-card.loading .movie-title,.movie-card.loading .movie-date{height:1rem;background:#e0e0e0;border-radius:4px;margin-bottom:.5rem}@media (max-width:768px){.movie-card,.btn,.mobile-menu-overlay,#mobileSearchOverlay{will-change:transform;transform:translateZ(0);-webkit-transform:translateZ(0)}.movie-poster img{will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}img{image-rendering:optimizeQuality;image-rendering:-webkit-optimize-contrast;max-width:100%;height:auto}img[loading="lazy"]{content-visibility:auto;contain-intrinsic-size:200px 300px}.mobile-menu-overlay,.tmdb-grid{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.movie-card,.btn{animation-fill-mode:both;animation-timing-function:cubic-bezier(.4,0,.2,1)}.tmdb-header{contain:layout style paint}.movie-card{contain:layout style}.movie-card[data-loading="true"] .movie-poster{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer {
        0% { background-position: 200% 0; }
        100% { background-position: -200% 0; }
    }@media (prefers-reduced-motion: reduce) {
        *,
        *::before,
        *::after {
            animation-duration: 0.01ms !important;
            animation-iteration-count: 1 !important;
            transition-duration: 0.01ms !important;
            scroll-behavior: auto !important;
        }
        
        .movie-card:hover,
        .movie-card:active {
            transform: none !important;
        }
        
        .loading-skeleton {
            animation: none !important;
        }
    }.tmdb-grid{contain:layout}@supports (font-display: swap) {
        * {
            font-display: swap;
        }
    }.tmdb-nav button,.tmdb-nav a{min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center}.swipe-container{touch-action:pan-y;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.swipe-container::-webkit-scrollbar{display:none}.swipe-item{scroll-snap-align:start;flex-shrink:0}.pull-to-refresh{position:relative;overflow:hidden}.pull-to-refresh-indicator{position:absolute;top:-60px;left:50%;transform:translateX(-50%);width:40px;height:40px;background:#01b4e4;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;transition:all .3s ease;z-index:1000}.pull-to-refresh.pulling .pull-to-refresh-indicator{top:20px;transform:translateX(-50%) rotate(180deg)}.pull-to-refresh.refreshing .pull-to-refresh-indicator{animation:spin 1s linear infinite}@keyframes spin {
        from { transform: translateX(-50%) rotate(0deg); }
        to { transform: translateX(-50%) rotate(360deg); }
    }.container{padding:0 1rem}.mobile-menu-overlay{transform:translateY(0);opacity:0;visibility:hidden;transition:opacity .3s ease , visibility .3s ease}.mobile-menu-overlay:not(.hidden) {opacity:1;visibility:visible}#signInDropdown{position:fixed!important;top:70px!important;right:1rem!important;left:auto!important;width:calc(100vw - 2rem);max-width:300px;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.2)}#signInDropdown a{padding:1rem 1.25rem;font-size:1rem;border-radius:12px;margin-bottom:.5rem}input[type="text"],input[type="email"],input[type="password"],input[type="search"],select,textarea{font-size:16px!important}.movie-poster img,.cast-member img{image-rendering:optimizeQuality;image-rendering:-webkit-optimize-contrast}}@media (max-width:360px){.container{padding:0 .75rem}.tmdb-nav{gap:.25rem}.header-search{width:120px}.sign-in-btn{padding:.5rem;font-size:.9rem}#signInDropdown{right:.5rem!important;width:calc(100vw - 1rem)}}@media (max-width:768px){.modal.mobile-bottom-sheet{align-items:flex-end}.modal.mobile-bottom-sheet .modal-dialog{width:100%;max-width:100%;margin:0;border-radius:20px 20px 0 0;transform:translateY(100%);transition:transform .3s ease-out}.modal.show.mobile-bottom-sheet .modal-dialog{transform:translateY(0)}.mobile-filters{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100vh;background:#fff;box-shadow:-4px 0 20px rgba(0,0,0,.15);z-index:1050;transition:right .3s ease-out;overflow-y:auto;padding:1rem}.mobile-filters.show{right:0}.mobile-filters-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:1049;opacity:0;visibility:hidden;transition:all .3s ease}.mobile-filters-overlay.show{opacity:1;visibility:visible}.mobile-tabs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;border-bottom:1px solid #e5e7eb;margin-bottom:1rem;padding-bottom:0}.mobile-tabs::-webkit-scrollbar{display:none}.mobile-tab{flex-shrink:0;padding:.875rem 1.25rem;white-space:nowrap;border-bottom:3px solid transparent;color:#6b7280;font-weight:500;transition:all .2s ease;scroll-snap-align:start;cursor:pointer}.mobile-tab.active{color:#01b4e4;border-bottom-color:#01b4e4;background:rgba(1,180,228,.05)}.mobile-pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;margin:2rem 0}.mobile-pagination .page-btn{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;background:#fff;color:#374151;text-decoration:none;border-radius:8px;font-weight:500;transition:all .2s ease}.mobile-pagination .page-btn.active{background:#01b4e4;color:#fff;border-color:#01b4e4}.mobile-pagination .page-btn:active{transform:scale(.95)}.mobile-list-item{padding:1rem;border-bottom:1px solid #f3f4f6;display:flex;align-items:center;gap:1rem;transition:background-color .2s ease;cursor:pointer}.mobile-list-item:active{background:#f8fafc}.mobile-list-item:last-child{border-bottom:none}.mobile-card-stack{display:flex;flex-direction:column;gap:.5rem}.mobile-card-stack .card{border-radius:16px;box-shadow:0 2px 12px rgba(0,0,0,.08);border:none;overflow:hidden}}@media (prefers-color-scheme:dark) and (max-width:768px){.mobile-menu-overlay{background:rgba(17,24,39,.95);color:#fff}.mobile-menu-overlay nav a{color:#e5e7eb;border-bottom-color:rgba(255,255,255,.1)}.mobile-menu-overlay nav a:hover,.mobile-menu-overlay nav a.active{background:rgba(59,130,246,.2);color:#60a5fa}.hero-search-form{background:rgba(17,24,39,.95)}.hero-search-input{background:rgba(31,41,55,.8);border-color:rgba(75,85,99,.6);color:#fff}.hero-search-input::placeholder{color:rgba(156,163,175,.8)}.movie-card{background:rgba(31,41,55,.8)}.movie-info{background:rgba(31,41,55,.9)}.movie-title{color:#f9fafb}.movie-date{color:#d1d5db}#signInDropdown{background:rgba(17,24,39,.95);border-color:rgba(75,85,99,.6)}}:root{--primary-color:#e50914;--secondary-color:#221f1f;--dark-bg:#141414;--dark-card:#1a1a1a;--light-text:#fff;--gray-text:#b3b3b3;--border-color:#333;--accent-color:#ffd700;--success-color:#10b981;--warning-color:#f59e0b;--error-color:#ef4444;--tv-accent:#00d4ff}body{background-color:var(--dark-bg);color:var(--light-text);font-family:'Inter','Segoe UI',Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.hero-section{position:relative;min-height:70vh;overflow:hidden}.hero-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-position:center;filter:blur(8px) brightness(.3);z-index:1}.hero-content{position:relative;z-index:2;padding:80px 0}.content-poster{max-height:500px;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.8);transition:transform .3s ease}.content-poster:hover{transform:scale(1.02)}.content-meta{background:rgba(26,26,26,.95);border-radius:16px;padding:32px;backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1)}.content-title{font-size:3rem;font-weight:800;line-height:1.1;margin-bottom:16px;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.content-year{color:var(--gray-text);font-weight:400}.content-tagline{font-style:italic;opacity:.9}.content-badges{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.rating-badge{background:linear-gradient(135deg,var(--accent-color),#ffb700);color:#000;padding:10px 16px;border-radius:25px;font-weight:700;font-size:1.1rem;box-shadow:0 4px 15px rgba(255,215,0,.3)}.status-badge{background:linear-gradient(135deg,var(--tv-accent),#08c);color:#fff;padding:6px 12px;border-radius:16px;font-size:.85rem;font-weight:600;box-shadow:0 2px 8px rgba(0,212,255,.3)}.genre-badge{background:rgba(255,255,255,.15);color:var(--light-text);padding:6px 14px;border-radius:20px;margin:4px 2px;display:inline-block;font-size:.9rem;font-weight:500;border:1px solid rgba(255,255,255,.2);transition:all .2s ease}.genre-badge:hover{background:rgba(255,255,255,.25);transform:translateY(-1px)}.content-overview{margin-bottom:24px}.info-card{background:var(--dark-card);border:1px solid var(--border-color);border-radius:12px;padding:24px;margin-bottom:24px;transition:all .3s ease}.info-card:hover{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 8px 25px rgba(229,9,20,.15)}.info-card-title{font-size:1.25rem;font-weight:700;margin-bottom:16px;color:var(--primary-color);display:flex;align-items:center;gap:8px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{font-weight:600;color:var(--gray-text);font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.info-value{font-weight:500;color:var(--light-text);font-size:1rem}.cast-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}.cast-member{background:var(--dark-card);border-radius:8px;overflow:hidden;transition:all .3s ease;cursor:pointer}.cast-member:hover{transform:translateY(-4px);box-shadow:0 8px 25px rgba(0,0,0,.4)}.cast-photo{width:100%;height:200px;object-fit:cover;background:var(--border-color)}.cast-info{padding:12px}.cast-name{font-weight:600;font-size:.9rem;margin-bottom:4px}.cast-character{color:var(--gray-text);font-size:.8rem}.network-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px}.network-item{display:flex;flex-direction:column;align-items:center;padding:16px;background:rgba(255,255,255,.05);border-radius:8px;text-align:center}.network-logo,.company-logo{width:80px;height:40px;object-fit:contain;background:#fff;border-radius:4px;padding:4px;margin-bottom:8px}.network-placeholder,.company-placeholder{display:flex;align-items:center;justify-content:center;font-size:12px;color:#666}.network-name,.company-name{font-size:.85rem;font-weight:600}.network-country,.company-country{font-size:.75rem}.production-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.production-company{display:flex;align-items:center;gap:12px;padding:12px;background:rgba(255,255,255,.05);border-radius:8px}.production-company .company-logo{width:40px;height:40px}.company-info{flex:1}.videos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.video-item{background:var(--dark-card);border-radius:8px;overflow:hidden;cursor:pointer;transition:all .3s ease}.video-item:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,.3)}.video-thumbnail{position:relative;width:100%;height:180px;background:#000}.video-image{width:100%;height:100%;object-fit:cover}.video-play-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(229,9,20,.9);border-radius:50%;width:60px;height:60px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px}.video-info{padding:12px}.video-title{font-weight:600;color:var(--light-text);margin-bottom:4px;font-size:.9rem}.video-type{color:var(--gray-text);font-size:.8rem;text-transform:capitalize}.images-section-title{color:var(--gray-text);margin-bottom:12px;font-size:1rem}.images-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.posters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.image-item{border-radius:8px;overflow:hidden;cursor:pointer;transition:all .3s ease}.image-item:hover{transform:scale(1.02)}.backdrop-image{width:100%;height:140px;object-fit:cover}.poster-image{width:100%;height:220px;object-fit:cover}.season-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.season-card{background:var(--dark-card);border-radius:8px;overflow:hidden;transition:all .3s ease;cursor:pointer}.season-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px rgba(0,0,0,.4)}.season-poster{width:100%;height:280px;object-fit:cover;background:var(--border-color)}.season-info{padding:16px}.season-name{font-weight:600;font-size:1rem;margin-bottom:8px}.season-meta{color:var(--gray-text);font-size:.85rem;display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.season-overview{font-size:.85rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.keywords-container{display:flex;flex-wrap:wrap;gap:8px}.keyword-badge{background:rgba(229,9,20,.2);color:var(--light-text);padding:4px 12px;border-radius:16px;font-size:.85rem;border:1px solid rgba(229,9,20,.3);white-space:nowrap}.similar-grid,.recommendations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.similar-item,.recommendation-item{text-decoration:none;color:inherit;display:block;background:var(--dark-card);border-radius:8px;overflow:hidden;transition:all .3s ease}.similar-item:hover,.recommendation-item:hover{transform:translateY(-4px);box-shadow:0 8px 25px rgba(0,0,0,.4);color:inherit;text-decoration:none}.similar-poster,.recommendation-poster{width:100%;height:225px;object-fit:cover}.similar-info,.recommendation-info{padding:12px}.similar-title,.recommendation-title{font-weight:600;font-size:.9rem;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.similar-year,.recommendation-year{font-size:.8rem}.similar-rating,.recommendation-rating{color:var(--accent-color);font-size:.8rem;margin-top:4px}.review-card{background:rgba(255,255,255,.05);padding:20px;border-radius:8px;border-left:4px solid var(--primary-color);margin-bottom:16px}.review-header{display:flex;justify-content:between;align-items:start;margin-bottom:8px}.review-author{flex:1}.review-rating{color:var(--accent-color);font-weight:600;margin-left:8px}.review-date{white-space:nowrap}.review-content{line-height:1.6;margin:0}.review-read-more{color:var(--primary-color);text-decoration:none}.review-read-more:hover{text-decoration:underline}.rating-card{background:var(--dark-card);border:1px solid var(--border-color)}.rating-score{font-size:3rem;font-weight:800;color:var(--accent-color);text-shadow:0 2px 10px rgba(255,215,0,.3)}.rating-max{font-size:1.2rem;color:var(--gray-text);margin-top:-8px}.rating-votes{margin-top:8px}.rating-stars-input{font-size:1.5rem;margin:20px 0;display:flex;justify-content:center;gap:4px}.rating-star-input{background:none;border:none;color:var(--border-color);transition:all .2s ease;cursor:pointer;font-size:inherit}.rating-star-input:hover{color:var(--accent-color);transform:scale(1.1)}.rating-star-input.active{color:var(--accent-color)}.rating-feedback{text-align:center}.login-to-rate{border-radius:8px;padding:12px}.technical-details .details-list{display:flex;flex-direction:column;gap:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.external-links{display:flex;flex-direction:column;gap:12px}.external-link{padding:8px 16px;background:rgba(255,255,255,.1);border-radius:8px;text-decoration:none;color:var(--light-text);transition:all .3s ease;display:flex;align-items:center;gap:8px}.external-link:hover{background:var(--primary-color);transform:translateY(-2px);color:#fff;text-decoration:none}.providers-section{margin-bottom:16px}.providers-section:last-child{margin-bottom:0}.providers-title{color:var(--gray-text);margin-bottom:8px;font-size:.9rem}.providers-list{display:flex;flex-wrap:wrap;gap:8px}.provider-logo{width:40px;height:40px;border-radius:8px;object-fit:cover}.providers-unavailable{font-size:.9rem}.user-reviews{text-align:center}.user-reviews-content{padding:40px 20px}.user-reviews-icon{font-size:3rem;color:var(--gray-text);margin-bottom:16px}.user-reviews-title{margin-bottom:8px}.user-reviews-text{margin-bottom:24px}.write-review-btn{background:var(--primary-color);border:none;padding:12px 24px;border-radius:8px}.login-to-review{padding:12px 24px;border-radius:8px}.text-ultra-contrast{color:#fff!important;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.text-high-contrast{color:#fff!important;text-shadow:1px 1px 2px rgba(0,0,0,.8)}.text-medium-contrast{color:#e5e5e5!important}.text-muted-contrast{color:#b3b3b3!important}.alert-status{border-radius:12px;border:1px solid;backdrop-filter:blur(10px)}.alert-warning{background:rgba(245,158,11,.15);color:#fbbf24;border-color:rgba(245,158,11,.3)}.alert-success{background:rgba(16,185,129,.15);color:#34d399;border-color:rgba(16,185,129,.3)}.content-type-indicator{position:absolute;top:16px;right:16px;background:linear-gradient(135deg,var(--primary-color),rgba(229,9,20,.8));color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:600;z-index:3;box-shadow:0 2px 8px rgba(229,9,20,.3);backdrop-filter:blur(10px)}.content-type-indicator.tv-indicator{background:linear-gradient(135deg,var(--tv-accent),rgba(0,212,255,.8));box-shadow:0 2px 8px rgba(0,212,255,.3)}.page-enter{animation:pageEnterSlide .6s ease-out;animation-fill-mode:both}.page-enter:nth-child(1) {animation-delay:0s}.page-enter:nth-child(2) {animation-delay:.1s}.page-enter:nth-child(3) {animation-delay:.2s}.page-enter:nth-child(4) {animation-delay:.3s}.page-enter:nth-child(5) {animation-delay:.4s}.page-enter:nth-child(6) {animation-delay:.5s}@keyframes pageEnterSlide {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}.btn-primary-enhanced,.btn-secondary-enhanced{position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;letter-spacing:.5px;border:none;border-radius:8px}.btn-primary-enhanced{background:linear-gradient(135deg,var(--primary-color),#c41e3a);color:#fff;box-shadow:0 4px 15px rgba(229,9,20,.3)}.btn-secondary-enhanced{background:linear-gradient(135deg,var(--secondary-color),#2a2a2a);color:#fff;border:1px solid var(--border-color);box-shadow:0 4px 15px rgba(0,0,0,.2)}.btn-primary-enhanced:hover,.btn-secondary-enhanced:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(229,9,20,.4);color:#fff}.btn-secondary-enhanced:hover{box-shadow:0 8px 25px rgba(0,0,0,.3)}.scroll-progress{position:fixed;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--tv-accent));z-index:9999;transition:width .1s ease}.info-card{position:relative}.info-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--primary-color),var(--tv-accent));border-radius:12px 12px 0 0;opacity:0;transition:opacity .3s ease}.info-card:hover::before{opacity:1}.content-actions{position:relative}.content-actions::before{content:'';position:absolute;top:-16px;left:50%;transform:translateX(-50%);width:60px;height:2px;background:linear-gradient(90deg,var(--primary-color),var(--tv-accent));border-radius:2px}.section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--border-color),transparent);margin:32px 0;position:relative}.section-divider::after{content:'\2726';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--dark-bg);color:var(--primary-color);padding:0 16px;font-size:12px}@media (max-width:768px){.content-title{font-size:2rem}.hero-content{padding:40px 0}.content-meta{padding:20px;margin-top:20px}.cast-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.season-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.videos-grid{grid-template-columns:1fr}.images-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.posters-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.content-badges{flex-direction:column;align-items:flex-start;gap:8px}.content-type-indicator{top:8px;right:8px;font-size:.75rem;padding:4px 8px}}@media (max-width:576px){.info-grid{grid-template-columns:1fr}.network-grid,.production-grid{grid-template-columns:1fr}.similar-grid,.recommendations-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}