.movie-detail-container{color:#fff;max-width:1200px;margin:0 auto;padding:140px 20px 40px}.movie-detail-content{gap:40px;margin-bottom:60px;display:flex}.movie-detail-left{flex:0 0 300px}.movie-poster{border-radius:12px;width:100%;margin-bottom:20px;box-shadow:0 4px 20px #00000080}.movie-poster-placeholder{aspect-ratio:2/3;text-align:center;background:linear-gradient(135deg,#1f2a2a 0%,#0d0e12 100%);border:1px solid #45a29e33;border-radius:12px;justify-content:center;align-items:center;width:100%;margin-bottom:20px;padding:40px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000080}.movie-poster-placeholder:before{content:"";pointer-events:none;background:radial-gradient(circle,#45a29e26 0%,#0000 70%);width:200%;height:200%;position:absolute;top:-50%;left:-50%}.placeholder-content{z-index:1;flex-direction:column;align-items:center;gap:12px;display:flex}.placeholder-title{font-family:var(--font-plus-jakarta), sans-serif;color:#fff;font-weight:800;line-height:1.2}.placeholder-year{font-family:var(--font-inter), sans-serif;color:#fff;background:var(--primary);text-transform:uppercase;letter-spacing:.05em;border-radius:6px;padding:4px 12px;font-size:.9rem;font-weight:700}.where-to-watch{background:#1a1a1a;border-radius:12px;padding:20px}.where-to-watch h3{margin-top:0;margin-bottom:15px;font-size:1.1rem}.ott-badges{flex-wrap:wrap;gap:10px;display:flex}.justwatch-link{color:var(--on-surface-variant);border:1px solid #ffffff1a;border-radius:4px;padding:2px 8px;font-size:.75rem;text-decoration:none;transition:all .2s}.justwatch-link:hover{color:var(--primary);border-color:var(--primary)}.ott-provider-icon{background-color:#222;border:1px solid #ffffff1a;border-radius:10px;width:44px;height:44px;transition:all .2s;display:block;overflow:hidden}.ott-provider-icon:hover{border-color:var(--primary);transform:translateY(-3px);box-shadow:0 4px 12px #0006}.provider-logo-img{object-fit:cover;width:100%;height:100%}.movie-detail-right{flex:1}.movie-title{margin:0 0 10px;font-size:2.5rem}.movie-meta-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.movie-meta{color:#ccc;gap:15px;font-size:1.1rem;display:flex}.movie-actions{align-items:center;gap:10px;display:flex}.movie-genres{flex-wrap:wrap;gap:10px;margin-bottom:25px;display:flex}.genre-pill{background:var(--primary);color:var(--on-primary,#fff);border-radius:99px;justify-content:center;align-items:center;height:32px;padding:0 16px;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.genre-pill:hover{opacity:.9;transform:translateY(-1px)}.movie-rating{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:8px;width:-webkit-fit-content;width:fit-content;margin-bottom:24px;padding:8px 16px;font-size:1.25rem;display:flex}.movie-rating span{color:#fff;font-weight:700}.user-review-snippet{border:1px solid var(--primary);background:#45a29e1a;border-radius:12px;flex-direction:column;gap:4px;padding:10px 16px;display:flex}.review-snippet-header{text-transform:uppercase;letter-spacing:.05em;color:var(--primary);align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:flex}.read-review-btn{color:#fff;align-items:center;gap:6px;font-size:.95rem;font-weight:600;text-decoration:none;transition:color .2s;display:flex}.read-review-btn:hover{color:var(--primary)}.movie-overview h3{color:var(--primary);margin-bottom:15px;font-size:1.3rem}.movie-overview p{color:#ddd;margin-bottom:30px;font-size:1.1rem;line-height:1.6}.movie-cast-section{margin-bottom:50px}.movie-section-title{color:#fff;align-items:center;gap:12px;margin-bottom:30px;font-size:1.8rem;display:flex}.movie-title-bar{background-color:var(--primary);border-radius:2px;width:4px;height:24px;display:inline-block}.movie-cast-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.movie-cast-card{color:inherit;background:#0d0d0d;border:1px solid #1f1f1f;border-radius:12px;align-items:center;gap:16px;padding:12px;text-decoration:none;transition:transform .2s,background .2s;display:flex}.movie-cast-card.clickable{cursor:pointer}.movie-cast-card:hover{background:#1a1a1a;transform:translateY(-2px)}.movie-cast-image{object-fit:cover;border-radius:50%;width:65px;height:65px;box-shadow:0 4px 10px #0000004d}.movie-cast-info{flex-direction:column;gap:4px;display:flex}.movie-cast-name{color:#fff;margin:0;font-size:1.05rem;font-weight:600}.movie-cast-character{color:#8892b0;font-size:.9rem}.movie-detail-skeleton{gap:40px;display:flex}.skeleton-poster{background:#333;border-radius:12px;width:300px;height:450px;animation:1.5s ease-in-out infinite pulse}.movie-skeleton-content{flex-direction:column;flex:1;gap:20px;display:flex}.movie-skeleton-text{background:#333;border-radius:4px;height:20px;animation:1.5s ease-in-out infinite pulse}.movie-skeleton-title{width:60%;height:40px}.movie-error-state{text-align:center;padding:100px 20px}.movie-error-state h2{color:var(--primary);margin-bottom:10px}.movie-watchlist-btn{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:12px;padding:10px 24px;font-size:.95rem;font-weight:600;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex}.movie-watchlist-btn:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-3px)scale(1.02);box-shadow:0 10px 20px #0006}.movie-watchlist-btn.active{color:#000;background:#fff;border-color:#fff}.movie-watchlist-btn:disabled{opacity:.6;cursor:not-allowed}.movie-watchlist-btn .heart-icon{font-size:1.1rem;transition:transform .3s}.movie-watchlist-btn:hover .heart-icon{transform:scale(1.2)}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.mobile-only{display:none}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:block!important}.where-to-watch.mobile-only{text-align:left;width:100%;margin-top:30px}.movie-detail-content{flex-direction:column;align-items:center;gap:32px}.movie-detail-left{flex:auto;width:100%;max-width:260px;margin:0 auto}.movie-title{font-size:2rem}.movie-watchlist-btn{padding:10px}.watchlist-text{display:none}.genre-pill{height:28px;padding:0 12px;font-size:.75rem}.movie-cast-grid{grid-template-columns:repeat(2,1fr);gap:12px}.movie-cast-card{gap:10px;padding:8px}.movie-cast-image{width:45px;height:45px}.movie-cast-name{font-size:.9rem}.movie-cast-character{font-size:.8rem}}
