:root{--imdb-black: #0f0f0f;--imdb-dark-gray: #1a1a1a;--imdb-gray: #2a2a2a;--imdb-light-gray: #3a3a3a;--imdb-yellow: #f5c518;--imdb-yellow-hover: #e6b800;--imdb-white: #ffffff;--imdb-text-light: #f5f5f5;--imdb-text-gray: #aaaaaa;--imdb-blue: #5799ef;font-family:Roboto,Arial,sans-serif;line-height:1.4;font-weight:400;color-scheme:dark;color:var(--imdb-text-light);background-color:var(--imdb-black);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:var(--imdb-blue);text-decoration:none}a:hover{color:var(--imdb-yellow);text-decoration:underline}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--imdb-black);color:var(--imdb-text-light);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}h1{font-size:2.5em;line-height:1.2;font-weight:600;color:var(--imdb-white)}h2{font-size:1.8em;font-weight:600;color:var(--imdb-white)}h3{font-size:1.4em;font-weight:500;color:var(--imdb-white)}button{border-radius:4px;border:1px solid transparent;padding:.6em 1.2em;font-size:.9em;font-weight:500;font-family:inherit;background-color:var(--imdb-gray);color:var(--imdb-text-light);cursor:pointer;transition:all .2s ease}button:hover{background-color:var(--imdb-light-gray)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}button,.clickable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;min-height:44px;min-width:44px}.movie-overview,.movie-overview-full,p,.selectable{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.movie-card{position:relative;background:var(--imdb-dark-gray);border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000004d;transition:all .3s ease;cursor:pointer;border:1px solid var(--imdb-gray)}.movie-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0006;border-color:var(--imdb-yellow)}.movie-card:focus{outline:none;box-shadow:0 0 0 2px var(--imdb-yellow)}.movie-poster{position:relative;width:100%;height:400px;overflow:hidden}.movie-card:hover .poster-image{transform:scale(1.05)}.movie-rating{position:absolute;top:.5rem;right:.5rem;background:#000000e6;color:var(--imdb-yellow);padding:.3rem .6rem;border-radius:4px;font-size:.75rem;font-weight:700;display:flex;align-items:center;gap:.2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(245,197,24,.3)}.movie-rating svg{width:10px;height:10px;color:var(--imdb-yellow);fill:var(--imdb-yellow)}.movie-info{padding:1rem}.movie-title{font-size:1rem;font-weight:600;color:var(--imdb-white);margin-bottom:.4rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.movie-year{font-size:.85rem;color:var(--imdb-text-gray);margin-bottom:.6rem;font-weight:400}.movie-overview{font-size:.8rem;color:var(--imdb-text-gray);line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0}.movie-card-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#000000d9,#f5c5181a);color:var(--imdb-white);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.movie-card:hover .movie-card-overlay{opacity:1}@media (max-width: 768px){.movie-poster{height:350px}.movie-info{padding:1rem}.movie-title{font-size:1rem}.movie-overview{font-size:.8rem;-webkit-line-clamp:2}}@media (max-width: 480px){.movie-poster{height:300px}.movie-info{padding:.875rem}.movie-title{font-size:.95rem}.movie-year{font-size:.85rem}.movie-overview{font-size:.75rem}.movie-rating{top:.5rem;right:.5rem;padding:.2rem .4rem;font-size:.75rem}.movie-rating svg{width:10px;height:10px}}.actor-card{position:relative;background:var(--imdb-dark-gray);border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000004d;transition:all .3s ease;cursor:pointer;border:1px solid var(--imdb-gray)}.actor-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0006;border-color:var(--imdb-yellow)}.actor-card:focus{outline:none;box-shadow:0 0 0 2px var(--imdb-yellow)}.actor-poster{position:relative;width:100%;height:400px;overflow:hidden}.poster-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.actor-card:hover .poster-image{transform:scale(1.05)}.actor-popularity{position:absolute;top:.5rem;right:.5rem;background:#000000e6;color:var(--imdb-yellow);padding:.3rem .6rem;border-radius:4px;font-size:.75rem;font-weight:700;display:flex;align-items:center;gap:.2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(245,197,24,.3)}.actor-popularity svg{width:10px;height:10px;color:var(--imdb-yellow);fill:var(--imdb-yellow)}.actor-name{font-size:1rem;font-weight:600;color:var(--imdb-white);margin-bottom:.4rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.actor-department{font-size:.85rem;color:var(--imdb-yellow);margin-bottom:.6rem;font-weight:500}.actor-known-for{font-size:.8rem;color:var(--imdb-text-gray);line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0}.actor-card-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#000000d9,#f5c5181a);color:var(--imdb-white);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.actor-card:hover .actor-card-overlay{opacity:1}@media (max-width: 768px){.actor-poster{height:350px}.actor-info{padding:1rem}.actor-name{font-size:1rem}.actor-known-for{font-size:.8rem;-webkit-line-clamp:2}}@media (max-width: 480px){.actor-poster{height:300px}.actor-info{padding:.875rem}.actor-name{font-size:.95rem}.actor-department{font-size:.85rem}.actor-known-for{font-size:.75rem}.actor-popularity{top:.5rem;right:.5rem;padding:.2rem .4rem;font-size:.75rem}.actor-popularity svg{width:10px;height:10px}}.company-card{position:relative;background:var(--imdb-dark-gray);border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000004d;transition:all .3s ease;cursor:pointer;border:1px solid var(--imdb-gray)}.company-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0006;border-color:var(--imdb-yellow)}.company-card:focus{outline:none;box-shadow:0 0 0 2px var(--imdb-yellow)}.company-poster{position:relative;width:100%;height:200px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--imdb-white)}.poster-image{max-width:80%;max-height:80%;object-fit:contain;transition:transform .3s ease}.company-card:hover .poster-image{transform:scale(1.05)}.poster-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--imdb-gray) 0%,var(--imdb-light-gray) 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--imdb-text-gray);gap:.5rem}.poster-placeholder svg{width:60px;height:60px;opacity:.5;color:var(--imdb-text-gray)}.poster-placeholder span{font-size:.9rem;font-weight:500;color:var(--imdb-text-gray)}.company-info{padding:1rem}.company-name{font-size:1rem;font-weight:600;color:var(--imdb-white);margin-bottom:.4rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.company-country{font-size:.85rem;color:var(--imdb-yellow);margin-bottom:.6rem;font-weight:500}.company-type{font-size:.8rem;color:var(--imdb-text-gray);line-height:1.4;margin:0}.company-card-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#000000d9,#f5c5181a);color:var(--imdb-white);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.company-card:hover .company-card-overlay{opacity:1}.overlay-content{text-align:center;padding:1rem}.overlay-content h3{font-size:1.1rem;font-weight:600;margin-bottom:.4rem;text-shadow:0 2px 4px rgba(0,0,0,.5);color:var(--imdb-white)}.overlay-content p{font-size:.85rem;opacity:.9;margin:0;color:var(--imdb-text-gray)}@media (max-width: 768px){.company-poster{height:180px}.company-info{padding:1rem}.company-name{font-size:1rem}}@media (max-width: 480px){.company-poster{height:150px}.company-info{padding:.875rem}.company-name{font-size:.95rem}.company-country{font-size:.85rem}.company-type{font-size:.75rem}}.filter-tabs{width:100%}.tabs-container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.tabs{display:flex;gap:.5rem;background:var(--imdb-dark-gray);padding:.25rem;border-radius:6px;border:1px solid var(--imdb-gray)}.tab{padding:.75rem 1.25rem;background:transparent;border:none;border-radius:4px;font-size:.9rem;font-weight:500;color:var(--imdb-text-gray);cursor:pointer;transition:all .2s ease;white-space:nowrap}.tab:hover{color:var(--imdb-white);background:var(--imdb-gray)}.tab.active{background:var(--imdb-yellow);color:var(--imdb-black);font-weight:600}.genre-filter,.genre-filter-active{display:flex;align-items:center}.genre-tag{display:flex;align-items:center;gap:.5rem;background:var(--imdb-yellow);color:var(--imdb-black);padding:.5rem 1rem;border-radius:16px;font-size:.9rem;font-weight:600}.remove-genre{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer;padding:0;width:1.25rem;height:1.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.remove-genre:hover{background:#fff3}.genre-filter-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--imdb-gray);border:1px solid var(--imdb-light-gray);border-radius:4px;color:var(--imdb-white);font-size:.9rem;cursor:pointer;transition:all .2s ease}.genre-filter-button:hover{border-color:var(--imdb-yellow);color:var(--imdb-yellow);background:var(--imdb-light-gray)}.genre-filter-button svg{width:16px;height:16px}.genre-form{display:flex;align-items:center;gap:.5rem;background:var(--imdb-dark-gray);padding:.5rem;border-radius:4px;border:1px solid var(--imdb-gray);box-shadow:0 4px 6px #0003}.genre-select{padding:.5rem;border:1px solid var(--imdb-gray);border-radius:4px;font-size:.9rem;background:var(--imdb-gray);color:var(--imdb-white);min-width:140px}.genre-select:focus{outline:none;border-color:var(--imdb-yellow);box-shadow:0 0 0 2px #f5c51833}.apply-genre,.cancel-genre{padding:.5rem .75rem;border:none;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.apply-genre{background:var(--imdb-yellow);color:var(--imdb-black)}.apply-genre:hover{background:var(--imdb-yellow-hover)}.cancel-genre{background:var(--imdb-gray);color:var(--imdb-white);border:1px solid var(--imdb-light-gray)}.cancel-genre:hover{background:var(--imdb-light-gray);color:var(--imdb-white)}.year-filter,.year-filter-active{display:flex;align-items:center}.year-tag{display:flex;align-items:center;gap:.5rem;background:var(--imdb-yellow);color:var(--imdb-black);padding:.5rem 1rem;border-radius:16px;font-size:.9rem;font-weight:600}.remove-year{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer;padding:0;width:1.25rem;height:1.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.remove-year:hover{background:#fff3}.year-filter-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--imdb-gray);border:1px solid var(--imdb-light-gray);border-radius:4px;color:var(--imdb-white);font-size:.9rem;cursor:pointer;transition:all .2s ease}.year-filter-button:hover{border-color:var(--imdb-yellow);color:var(--imdb-yellow);background:var(--imdb-light-gray)}.year-filter-button svg{width:16px;height:16px}.year-form{display:flex;align-items:center;gap:.5rem;background:var(--imdb-dark-gray);padding:.5rem;border-radius:4px;border:1px solid var(--imdb-gray);box-shadow:0 4px 6px #0003}.year-select{padding:.5rem;border:1px solid var(--imdb-gray);border-radius:4px;font-size:.9rem;background:var(--imdb-gray);color:var(--imdb-white);min-width:120px}.year-select:focus{outline:none;border-color:var(--imdb-yellow);box-shadow:0 0 0 2px #f5c51833}.apply-year,.cancel-year{padding:.5rem .75rem;border:none;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.apply-year{background:var(--imdb-yellow);color:var(--imdb-black)}.apply-year:hover{background:var(--imdb-yellow-hover)}.cancel-year{background:var(--imdb-gray);color:var(--imdb-white);border:1px solid var(--imdb-light-gray)}.cancel-year:hover{background:var(--imdb-light-gray);color:var(--imdb-white)}@media (max-width: 768px){.tabs-container{flex-direction:column;align-items:stretch}.tabs{justify-content:center}.tab{flex:1;text-align:center;padding:.75rem 1rem}.genre-filter{justify-content:center}.genre-form{flex-wrap:wrap;justify-content:center}.genre-select{min-width:120px}.year-filter{justify-content:center}.year-form{flex-wrap:wrap;justify-content:center}.year-select{min-width:100px}}@media (max-width: 480px){.tabs{flex-direction:column;gap:.25rem}.tab{padding:.625rem 1rem;font-size:.9rem}.genre-filter-button{padding:.625rem .875rem;font-size:.85rem}.genre-form{padding:.75rem}.year-filter-button{padding:.625rem .875rem;font-size:.85rem}.year-form{padding:.75rem}}.hero{position:relative;background:linear-gradient(135deg,var(--imdb-black) 0%,var(--imdb-dark-gray) 50%,var(--imdb-gray) 100%);color:var(--imdb-text-light);padding:4rem 0 3rem;text-align:center;overflow:hidden;min-height:50vh;display:flex;align-items:center;border-bottom:1px solid var(--imdb-gray)}.hero-background{position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(120,119,198,.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,119,198,.3) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(120,219,255,.2) 0%,transparent 50%);animation:backgroundShift 20s ease-in-out infinite}@keyframes backgroundShift{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.1) rotate(2deg)}}.hero-content{position:relative;z-index:2;max-width:900px;margin:0 auto;padding:0 1.5rem}.hero-title{font-size:2.8rem;font-weight:700;margin-bottom:1rem;color:var(--imdb-white);text-shadow:0 2px 8px rgba(0,0,0,.5);letter-spacing:-.02em}.hero-subtitle{font-size:1.1rem;margin-bottom:2rem;color:var(--imdb-text-gray);line-height:1.5;font-weight:400;max-width:600px;margin-left:auto;margin-right:auto}.filters{background:#fff;padding:2rem 0;border-bottom:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d}.movies-section{padding:3rem 0;min-height:60vh}.movies-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.movies-header h2{font-size:2rem;font-weight:700;color:#1a202c;margin:0}.movies-count{color:#718096;font-size:1rem;margin:0}.movies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 0;color:#718096}.loading p{margin-top:1rem;font-size:1.1rem}.no-results{text-align:center;padding:4rem 0;color:#718096}.no-results h3{font-size:1.5rem;margin-bottom:.5rem;color:#4a5568}.no-results p{font-size:1rem}@media (max-width: 768px){.hero{padding:3rem 0}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.movies-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.movies-header{flex-direction:column;align-items:flex-start;text-align:left}.movies-header h2{font-size:1.5rem}}@media (max-width: 480px){.hero-title{font-size:2rem}.movies-grid{grid-template-columns:1fr;gap:1rem}}.login-container{position:relative}.login-button,.logout-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--imdb-gray);color:var(--imdb-white);border:1px solid var(--imdb-light-gray);border-radius:4px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-button:hover,.logout-button:hover{background:var(--imdb-light-gray);color:var(--imdb-yellow);border-color:var(--imdb-yellow);transform:translateY(-1px)}.login-button svg,.logout-button svg{width:16px;height:16px}.user-info{display:flex;align-items:center;gap:1rem}.user-name{color:var(--imdb-white);font-weight:600;font-size:.9rem}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--imdb-dark-gray);border:1px solid var(--imdb-gray);border-radius:8px;padding:2rem;width:100%;max-width:400px;margin:1rem;box-shadow:0 20px 40px #00000080;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.modal-header h2{margin:0;color:var(--imdb-white);font-size:1.4rem;font-weight:600}.close-button{background:none;border:none;cursor:pointer;padding:.5rem;border-radius:4px;color:var(--imdb-text-gray);transition:all .2s ease}.close-button:hover{background:var(--imdb-gray);color:var(--imdb-white)}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:var(--imdb-white);font-size:.9rem}.form-group input{padding:.875rem 1rem;border:1px solid var(--imdb-gray);border-radius:4px;font-size:1rem;transition:all .2s ease;background:var(--imdb-dark-gray);color:var(--imdb-white)}.form-group input:focus{outline:none;border-color:var(--imdb-yellow);background:var(--imdb-gray);box-shadow:0 0 0 2px #f5c51833}.submit-button{padding:.875rem 1.5rem;background:var(--imdb-yellow);color:var(--imdb-black);border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:.5rem}.submit-button:hover{background:var(--imdb-yellow-hover);transform:translateY(-1px)}.submit-button:active{transform:translateY(0)}.form-footer{margin-top:1.5rem;text-align:center;padding-top:1.5rem;border-top:1px solid var(--imdb-gray)}.form-footer p{margin:0;color:var(--imdb-text-gray);font-size:.9rem}.toggle-button{background:none;border:none;color:var(--imdb-yellow);font-weight:600;cursor:pointer;margin-left:.5rem;text-decoration:underline;font-size:.9rem}.toggle-button:hover{color:var(--imdb-yellow-hover)}@media (max-width: 768px){.login-button,.logout-button{padding:.625rem 1.25rem;font-size:.9rem}.user-name{font-size:.9rem}.modal-content{padding:1.5rem;margin:.5rem}.modal-header h2{font-size:1.25rem}}@media (max-width: 480px){.user-info{flex-direction:column;gap:.5rem;align-items:flex-start}.login-button,.logout-button{padding:.5rem 1rem;font-size:.85rem}.user-name{font-size:.85rem}}.movie-detail{min-height:100vh;background:linear-gradient(180deg,#0f0f0f,#1a1a1a,#0f0f0f);color:var(--imdb-white);padding-top:80px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;animation:fadeIn .6s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--imdb-dark-gray);color:var(--imdb-text-light);border:1px solid var(--imdb-gray);border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s ease;margin:2rem;z-index:10;position:relative}.movie-backdrop{position:relative;height:60vh;overflow:hidden;margin-top:-80px}.movie-backdrop img{width:100%;height:100%;object-fit:cover}.backdrop-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#0000004d,#000000b3)}.movie-nav{position:absolute;top:calc(2rem + 80px);left:2rem;right:2rem;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:2rem}.nav-left{display:flex;align-items:center;gap:1rem;justify-content:flex-start}.back-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--imdb-dark-gray);color:var(--imdb-text-light);border:1px solid var(--imdb-gray);border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-decoration:none}.back-button svg{width:16px;height:16px;flex-shrink:0}.nav-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:transparent;border-radius:4px;cursor:pointer;transition:all .2s ease;color:var(--imdb-text-light)}.nav-button:hover{background:var(--imdb-gray);color:var(--imdb-yellow)}.nav-button svg{width:18px;height:18px}.home-button{background:var(--imdb-yellow);color:var(--imdb-black);font-weight:600;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:50px;font-size:.95rem;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #00000026}.home-button:hover{background:var(--imdb-yellow-hover);color:var(--imdb-black);transform:translateY(-1px);box-shadow:0 6px 16px #0003}.back-button svg,.home-button svg{width:20px;height:20px}.movie-content{position:relative;margin-top:-8rem;z-index:5;background:transparent}.movie-header{display:flex;align-items:flex-start;gap:2rem;padding:2rem;background:#000c;border-bottom:1px solid rgba(245,197,24,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideUp .8s ease-out .2s both}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.movie-poster-large{flex-shrink:0;width:300px;height:450px;border-radius:16px;overflow:hidden;box-shadow:0 20px 40px #00000080,0 0 0 1px #f5c5181a;transition:all .4s ease;animation:scaleIn .8s ease-out .4s both}.movie-poster-large:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 25px 50px #0009,0 0 0 1px #f5c5184d}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.movie-poster-large img{width:100%;height:100%;object-fit:cover}.poster-placeholder-large{width:100%;height:100%;background:linear-gradient(135deg,#2a2a2a,#1a1a1a);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#666;font-size:.9rem;border-radius:8px;border:2px dashed #444444;gap:.5rem}.poster-placeholder-large svg{opacity:.6}.poster-placeholder-large span{text-align:center;font-weight:500}.movie-info-main{flex:1;color:var(--imdb-white);padding-left:1rem;animation:slideRight .8s ease-out .3s both}@keyframes slideRight{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.title-section{margin-bottom:1.5rem}.movie-title-large{font-size:2.5rem;font-weight:800;margin-bottom:.25rem;color:var(--imdb-white);line-height:1.2;letter-spacing:-.02em}.original-title{font-size:1.1rem;color:var(--imdb-text-gray);margin-bottom:.5rem;font-weight:400}.movie-tagline{font-size:1.1rem;font-style:italic;color:var(--imdb-yellow);margin-bottom:0;font-weight:300}.movie-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:2rem;margin-bottom:2rem;padding:2rem 0;border-top:1px solid rgba(245,197,24,.2);border-bottom:1px solid rgba(245,197,24,.2)}.meta-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#1a1a1a66;border-radius:12px;border:1px solid rgba(245,197,24,.1);transition:all .3s ease}.meta-item:hover{background:#1a1a1a99;border-color:#f5c5184d;transform:translateY(-2px)}.meta-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#f5c5181a;border-radius:8px;color:var(--imdb-yellow);flex-shrink:0}.meta-content{display:flex;flex-direction:column;gap:.25rem;flex:1}.meta-label{font-size:.8rem;color:#ccc;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.meta-value{font-size:1.1rem;font-weight:600;color:#fff}.rating{display:flex;align-items:center;gap:.25rem;color:#f5c518}.rating-score{font-size:1.2rem;font-weight:700}.rating-total{font-size:.9rem;color:#ccc;font-weight:400}.movie-genres{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:2rem}.genre-tag{padding:.6rem 1.2rem;background:linear-gradient(135deg,#f5c5181a,#f5c5180d);color:var(--imdb-white);border-radius:25px;font-size:.85rem;font-weight:600;border:1px solid rgba(245,197,24,.2);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;letter-spacing:.025em}.genre-tag:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.genre-tag.clickable{cursor:pointer}.genre-tag:hover{background:linear-gradient(135deg,#f5c51833,#f5c5181a);color:var(--imdb-yellow);border-color:#f5c51866;transform:translateY(-2px)}.genre-tag:hover:before{left:100%}.genre-tag.clickable:hover{background:linear-gradient(135deg,var(--imdb-yellow) 0%,#e6b800 100%);color:var(--imdb-black);transform:translateY(-3px);box-shadow:0 6px 20px #f5c51866}.movie-actions{display:flex;gap:1.5rem;margin-top:2rem;flex-wrap:wrap;animation:slideUp .8s ease-out .6s both}.movie-actions .btn{font-weight:600;letter-spacing:.025em;transition:all .3s cubic-bezier(.4,0,.2,1)}.movie-actions .btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #f5c5184d}.imdb-button{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;background:#f5c518;color:#000;text-decoration:none;border-radius:8px;font-weight:600;font-size:.95rem;transition:all .2s ease;border:none;cursor:pointer}.imdb-button:hover{background:#e6b800;transform:translateY(-2px);box-shadow:0 4px 12px #f5c5184d}.favorite-button{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;background:transparent;color:#ccc;border:2px solid #444444;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease}.favorite-button:hover{border-color:#f5c518;color:#f5c518;transform:translateY(-2px);box-shadow:0 4px 12px #f5c51833}.favorite-button.favorited{background:#f5c5181a;color:#f5c518;border-color:#f5c518}.favorite-button.favorited:hover{background:#f5c51833;transform:translateY(-2px);box-shadow:0 4px 12px #f5c5184d}.imdb-button svg,.favorite-button svg{width:20px;height:20px}.movie-details{background:transparent;padding:3rem 2rem;max-width:1200px;animation:fadeInUp .8s ease-out .8s both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.detail-section{margin-bottom:4rem}.detail-section:last-child{margin-bottom:0}.detail-section h2{font-size:1.75rem;font-weight:700;color:var(--imdb-white);margin-bottom:1.5rem;position:relative;padding-bottom:.75rem;letter-spacing:-.01em}.detail-section h2:after{content:"";position:absolute;bottom:0;left:0;width:60px;height:3px;background:linear-gradient(90deg,var(--imdb-yellow),#e6b800);border-radius:2px;animation:expandWidth .6s ease-out 1s both}@keyframes expandWidth{0%{width:0}to{width:60px}}.overview-section{margin-bottom:3rem}.movie-overview-full{font-size:1.1rem;line-height:1.8;color:#e0e0e0;max-width:900px;font-weight:400;margin:0;text-align:justify}.cast-scroll-container{overflow-x:auto;padding-bottom:1rem;margin-bottom:1rem}.cast-scroll-container::-webkit-scrollbar{height:8px}.cast-scroll-container::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}.cast-scroll-container::-webkit-scrollbar-thumb{background:var(--imdb-yellow);border-radius:4px}.cast-scroll-container::-webkit-scrollbar-thumb:hover{background:#e6b800}.cast-grid{display:flex;gap:1.5rem;padding:.5rem 0;min-width:max-content}.cast-member{text-align:center;background:#1a1a1acc;border-radius:12px;padding:1.25rem;transition:all .3s ease;border:1px solid rgba(245,197,24,.1);cursor:pointer;min-width:160px;flex-shrink:0}.cast-member:hover{transform:translateY(-4px);background:#1a1a1af2;border-color:#f5c5184d;box-shadow:0 8px 25px #0006}.cast-member:hover .cast-name{color:var(--imdb-yellow)}.cast-photo{width:90px;height:90px;border-radius:50%;margin:0 auto 1rem;border:2px solid rgba(245,197,24,.2);overflow:hidden;transition:transform .3s ease}.cast-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.cast-member:hover .cast-photo{transform:scale(1.05)}.cast-member:hover .cast-photo img{transform:scale(1.1)}.cast-photo-placeholder{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#333,#222);display:flex;align-items:center;justify-content:center;color:#666}.cast-info{text-align:center}.cast-name{font-weight:600;color:var(--imdb-white);margin:0 0 .5rem;font-size:.95rem;line-height:1.3}.cast-character{color:#f5c518;margin:0;font-size:.85rem;font-weight:400;line-height:1.2;opacity:.9}.movie-highlights{background:linear-gradient(135deg,#1a1a1ae6,#121212e6);border-top:1px solid rgba(245,197,24,.2);border-bottom:1px solid rgba(245,197,24,.2);padding:3rem 0;margin:2rem 0}.highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.highlight-card{display:flex;align-items:center;gap:1.2rem;padding:1.8rem 1.5rem;background:#f5c5180d;border:1px solid rgba(245,197,24,.2);border-radius:16px;transition:all .3s ease;cursor:default}.highlight-card:hover{background:#f5c5181a;border-color:#f5c51866;transform:translateY(-4px);box-shadow:0 8px 25px #0000004d}.highlight-icon{display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:var(--imdb-yellow);color:var(--imdb-black);border-radius:12px;flex-shrink:0}.highlight-content{display:flex;flex-direction:column;gap:.3rem;min-width:0;flex:1}.highlight-value{font-size:2rem;font-weight:700;color:var(--imdb-white);line-height:1}.highlight-label{font-size:.8rem;color:#ccc;text-transform:uppercase;letter-spacing:.3px;font-weight:500;line-height:1.2;word-spacing:-.1em}.production-companies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.5rem}.production-company-card{display:flex;flex-direction:column;align-items:center;padding:2rem;background:#1a1a1a99;border:1px solid rgba(245,197,24,.1);border-radius:16px;cursor:pointer;transition:all .3s ease;text-align:center}.production-company-card:hover{background:#1a1a1acc;border-color:#f5c5184d;transform:translateY(-4px);box-shadow:0 8px 25px #0000004d}.company-logo{width:80px;height:80px;margin-bottom:1rem;display:flex;align-items:center;justify-content:center;border-radius:12px;overflow:hidden;background:#ffffff0d}.company-logo img{width:100%;height:100%;object-fit:contain;filter:brightness(.9);transition:filter .3s ease}.production-company-card:hover .company-logo img{filter:brightness(1.1)}.company-logo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#666;background:#ffffff1a;border-radius:8px}.company-info{display:flex;flex-direction:column;gap:.5rem;align-items:center}.company-name{font-size:1rem;font-weight:600;color:var(--imdb-white);margin:0;transition:color .3s ease;line-height:1.3}.production-company-card:hover .company-name{color:var(--imdb-yellow)}.company-country{font-size:.85rem;color:#ccc;font-weight:400;padding:.25rem .75rem;background:#ffffff1a;border-radius:12px;transition:all .3s ease}.production-company-card:hover .company-country{background:#f5c51833;color:var(--imdb-white)}.additional-info-section{margin-bottom:2rem}.additional-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.info-item{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;background:#1a1a1a99;border-radius:12px;border:1px solid rgba(245,197,24,.1);transition:all .3s ease}.info-item:hover{background:#1a1a1acc;border-color:#f5c51833;transform:translateY(-2px)}.info-label{font-size:.85rem;color:#ccc;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:1.1rem;color:#fff;font-weight:600;line-height:1.4}@media (max-width: 768px){.movie-detail{padding-top:60px}.movie-backdrop{height:40vh;margin-top:-60px}.movie-nav{top:calc(1rem + 60px);left:1rem;right:1rem;flex-direction:column;gap:1rem;align-items:flex-start}.nav-left{width:100%;justify-content:space-between}.back-button{padding:.5rem .75rem;font-size:.8rem}.movie-details{padding:2rem 1rem}.detail-section{margin-bottom:2.5rem}.detail-section h2{font-size:1.5rem;margin-bottom:1rem}.movie-overview-full{font-size:1rem;line-height:1.6}.highlights-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.highlight-card{padding:1.5rem;gap:1rem}.highlight-icon{width:50px;height:50px}.highlight-value{font-size:1.5rem}.cast-grid{gap:1rem}.cast-member{padding:1rem;min-width:140px}.cast-photo{width:70px;height:70px}.cast-name{font-size:.85rem}.cast-character{font-size:.75rem}.production-companies-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.production-company-card{padding:1.5rem}.company-logo{width:60px;height:60px}.additional-info{grid-template-columns:1fr;gap:1rem}.info-item{padding:1rem}.info-label{font-size:.75rem}.info-value{font-size:1rem}}@media (max-width: 480px){.movie-detail{padding-top:50px}.movie-backdrop{height:35vh;margin-top:-50px}.movie-nav{top:calc(.5rem + 50px);left:.5rem;right:.5rem}.movie-details{padding:1.5rem .75rem}.detail-section h2{font-size:1.25rem}.cast-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem}.cast-member{padding:.75rem}.cast-photo{width:60px;height:60px}.highlights-grid{grid-template-columns:1fr;gap:1rem}.highlight-card{padding:1rem;gap:1rem}.highlight-icon{width:40px;height:40px}.highlight-value{font-size:1.25rem}.production-companies-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.production-company-card{padding:1rem}.company-logo{width:50px;height:50px}.info-item{padding:.75rem}}.movie-detail-loading,.movie-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:2rem;background:var(--imdb-black);color:var(--imdb-white)}.movie-detail-error h2{font-size:2rem;color:var(--imdb-yellow);margin-bottom:1rem}.movie-detail-error p{font-size:1.1rem;color:#718096;margin-bottom:2rem}@media (max-width: 768px){.back-button{margin-bottom:1.5rem;padding:.625rem .875rem;font-size:.85rem}.movie-header{flex-direction:column;align-items:center;text-align:center;gap:2rem}.movie-poster-large{width:250px;height:375px}.movie-title-large{font-size:2.5rem}}@media (max-width: 768px){.movie-backdrop{height:40vh}.movie-content{margin-top:-5rem}.movie-nav{top:1rem;left:1rem;right:1rem;gap:1rem}.nav-left{min-width:auto}.back-button{padding:.625rem 1rem;font-size:.85rem}.movie-header{flex-direction:column;gap:2rem}.movie-info-main{padding-left:0}.movie-poster-large{width:200px;height:300px;margin:0 auto}.movie-title-large{font-size:2rem;text-align:center}.original-title{text-align:center}.movie-tagline{font-size:1rem;text-align:center}.movie-meta{grid-template-columns:repeat(2,1fr);gap:1rem;padding:.75rem 0}.movie-actions{justify-content:center;flex-wrap:wrap}.movie-details{padding:2rem 1rem}.cast-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}.cast-member{padding:1rem}.cast-photo{width:70px;height:70px}.cast-photo-placeholder{width:100%;height:100%}.additional-info{grid-template-columns:1fr;gap:1rem}.info-item{padding:1rem}.info-grid{grid-template-columns:1fr}}@media (max-width: 480px){.movie-backdrop{height:30vh}.movie-content{margin-top:-3rem}.movie-nav{top:.5rem;left:.5rem;right:.5rem}.movie-poster-large{width:150px;height:225px}.movie-title-large{font-size:1.5rem}.movie-tagline{font-size:1rem}.movie-meta{gap:1rem}.meta-value{font-size:1rem}.movie-details{padding:1rem}.detail-section h2{font-size:1.5rem}.movie-overview-full{font-size:1rem}.cast-member{padding:.75rem}.cast-photo,.cast-photo-placeholder{width:50px;height:50px}}.actor-filmography{min-height:100vh;background:var(--imdb-black);color:var(--imdb-text-light);padding-top:2rem}.actor-filmography .container{max-width:1200px;margin:0 auto;padding:0 2rem}.actor-filmography-loading,.actor-filmography-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;gap:1rem}.actor-filmography-loading .spinner{width:40px;height:40px;border:3px solid var(--imdb-gray);border-top:3px solid var(--imdb-yellow);border-radius:50%;animation:spin 1s linear infinite}.actor-filmography-error h2{color:var(--imdb-yellow);margin-bottom:.5rem}.actor-header{margin-bottom:3rem}.actor-info{display:flex;gap:2rem;align-items:flex-start;margin-top:1rem}.actor-photo{flex-shrink:0;width:200px;height:300px;border-radius:12px;overflow:hidden;background:var(--imdb-dark-gray);border:2px solid var(--imdb-gray)}.actor-photo img{width:100%;height:100%;object-fit:cover}.actor-photo-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--imdb-gray);background:var(--imdb-dark-gray)}.actor-details{flex:1;min-width:0}.actor-name{font-size:2.5rem;font-weight:700;color:var(--imdb-text-light);margin:0 0 1rem;line-height:1.2}.actor-birthday{font-size:1rem;color:var(--imdb-text-muted);margin:0 0 1.5rem}.actor-birthday strong{color:var(--imdb-yellow)}.actor-biography{font-size:1rem;line-height:1.6;color:var(--imdb-text-light);margin:0}.movies-section{margin-top:3rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.section-header h2{font-size:1.8rem;font-weight:600;color:var(--imdb-yellow);margin:0}.sort-select{padding:.5rem .75rem;background:var(--imdb-dark-gray);color:var(--imdb-text-light);border:1px solid var(--imdb-gray);border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s ease}.movies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:2rem;margin-top:2rem}@media (max-width: 768px){.actor-filmography .container{padding:0 1rem}.actor-info{flex-direction:column;align-items:center;text-align:center;gap:1.5rem}.actor-photo{width:150px;height:225px}.actor-name{font-size:2rem}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.section-header h2{font-size:1.5rem}.movies-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1.5rem}}@media (max-width: 480px){.actor-filmography{padding-top:1rem}.back-button{margin-bottom:1.5rem}.actor-header{margin-bottom:2rem}.actor-photo{width:120px;height:180px}.actor-name{font-size:1.8rem}.actor-biography{font-size:.9rem}.movies-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}}.genre-movies{min-height:100vh;background:var(--imdb-black);color:var(--imdb-text-light);padding-top:2rem}.genre-movies .container{max-width:1200px;margin:0 auto;padding:0 2rem}.genre-movies-loading,.genre-movies-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;gap:1rem}.genre-movies-loading .spinner{width:40px;height:40px;border:3px solid var(--imdb-gray);border-top:3px solid var(--imdb-yellow);border-radius:50%;animation:spin 1s linear infinite}.genre-movies-error h2{color:var(--imdb-yellow);margin-bottom:.5rem}.back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--imdb-dark-gray);color:var(--imdb-text-light);border:1px solid var(--imdb-gray);border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s ease;margin-bottom:2rem}.back-button:hover{background:var(--imdb-gray);color:var(--imdb-yellow);border-color:var(--imdb-yellow);transform:translateY(-1px)}.back-button svg{flex-shrink:0}.genre-header{margin-bottom:2rem}.genre-info{margin-top:1rem}.genre-title{font-size:2.5rem;font-weight:700;color:var(--imdb-text-light);margin:0 0 .5rem;line-height:1.2}.genre-subtitle{font-size:1.1rem;color:var(--imdb-text-muted);margin:0}.controls-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem;background:var(--imdb-dark-gray);border-radius:8px;border:1px solid var(--imdb-gray)}.sort-controls label{font-size:.9rem;color:var(--imdb-text-muted);font-weight:500}.sort-select{padding:.5rem .75rem;background:var(--imdb-black);color:var(--imdb-text-light);border:1px solid var(--imdb-gray);border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s ease;min-width:150px}.sort-select:hover,.sort-select:focus{border-color:var(--imdb-yellow);outline:none}.movies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:2rem;margin-bottom:3rem}.no-movies{text-align:center;padding:3rem;color:var(--imdb-text-muted);font-size:1.1rem}.pagination{display:flex;justify-content:space-between;align-items:center;margin:3rem 0;padding:1rem;background:var(--imdb-dark-gray);border-radius:8px;border:1px solid var(--imdb-gray)}.pagination-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--imdb-yellow);color:var(--imdb-black);border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:var(--imdb-yellow-hover);transform:translateY(-1px)}.pagination-btn:disabled{background:var(--imdb-gray);color:var(--imdb-text-muted);cursor:not-allowed;transform:none}.pagination-info{display:flex;flex-direction:column;align-items:center;gap:.5rem}.page-numbers{display:flex;align-items:center;gap:.25rem}.page-btn{padding:.5rem .75rem;background:transparent;color:var(--imdb-text-light);border:1px solid var(--imdb-gray);border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s ease;min-width:40px}.page-btn:hover{background:var(--imdb-gray);color:var(--imdb-yellow);border-color:var(--imdb-yellow)}.page-btn.active{background:var(--imdb-yellow);color:var(--imdb-black);border-color:var(--imdb-yellow);font-weight:600}.ellipsis{color:var(--imdb-text-muted);padding:0 .5rem}.page-info{font-size:.9rem;color:var(--imdb-text-muted)}@media (max-width: 768px){.genre-movies .container{padding:0 1rem}.genre-title{font-size:2rem}.controls-section{flex-direction:column;align-items:stretch;gap:1rem}.sort-controls{justify-content:center}.movies-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1.5rem}.pagination{flex-direction:column;gap:1rem}.pagination-info{order:-1}.page-numbers{flex-wrap:wrap;justify-content:center}}@media (max-width: 480px){.genre-movies{padding-top:1rem}.back-button,.genre-header{margin-bottom:1.5rem}.genre-title{font-size:1.8rem}.genre-subtitle{font-size:1rem}.movies-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}.pagination-btn{padding:.625rem .875rem;font-size:.85rem}.page-btn{padding:.375rem .625rem;font-size:.85rem;min-width:35px}}.production-company-movies{min-height:100vh;background-color:#000;color:#fff;padding:2rem 0}.production-company-movies .container{max-width:1200px;margin:0 auto;padding:0 1rem}.controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem;background-color:#1a1a1a;border-radius:8px;border:1px solid #333}.sort-controls{display:flex;align-items:center;gap:.5rem}.sort-controls label{font-weight:500;color:#fff}.sort-select{background-color:#000;color:#fff;border:1px solid #F5C518;padding:.5rem;border-radius:4px;font-size:.9rem}.sort-select:focus{outline:none;border-color:#f5c518;box-shadow:0 0 0 2px #f5c51833}.movies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}@media (max-width: 768px){.production-company-movies{padding:1rem 0}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.page-title{font-size:1.5rem}.controls{flex-direction:column;gap:1rem;align-items:stretch}.movies-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.pagination{gap:.25rem}.pagination-btn,.back-button{padding:.4rem .8rem;font-size:.8rem}}.popular-actors{min-height:100vh;background-color:#000;color:#fff;padding:2rem 0}.popular-actors .container{max-width:1200px;margin:0 auto;padding:0 1rem}.actors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.actor-card{background-color:#1a1a1a;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .3s ease;border:1px solid #333}.actor-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #f5c5184d;border-color:#f5c518}.actor-image{width:100%;height:300px;overflow:hidden;position:relative;background-color:#333}.actor-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.actor-card:hover .actor-image img{transform:scale(1.05)}.no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#2a2a2a;color:#666}.actor-info{padding:1rem}.actor-name{font-size:1.1rem;font-weight:700;color:#f5c518;margin:0 0 .5rem;line-height:1.3}.actor-popularity{font-size:.9rem;color:#ccc;margin:0 0 .5rem}.known-for{font-size:.85rem;color:#999;margin:0;line-height:1.4}.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:2rem;flex-wrap:wrap}.pagination-btn{background-color:#1a1a1a;color:#fff;border:1px solid #333;padding:.5rem 1rem;border-radius:4px;cursor:pointer;transition:all .3s ease;font-size:.9rem}.pagination-btn:hover{background-color:#f5c518;color:#000;border-color:#f5c518}.pagination-btn.active{background-color:#f5c518;color:#000;border-color:#f5c518;font-weight:700}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-btn:disabled:hover{background-color:#1a1a1a;color:#fff;border-color:#333}@media (max-width: 768px){.popular-actors{padding:1rem 0}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.page-title{font-size:1.5rem}.actors-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.actor-image{height:250px}.pagination{gap:.25rem}.pagination-btn,.back-button{padding:.4rem .8rem;font-size:.8rem}}@media (max-width: 480px){.actors-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.actor-image{height:200px}.actor-info{padding:.75rem}.actor-name{font-size:1rem}}.production-companies{min-height:100vh;background:linear-gradient(135deg,#0f0f23,#1a1a2e,#16213e);color:#fff;padding:3rem 0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.production-companies .container{max-width:1200px;margin:0 auto;padding:0 1rem}.page-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:3rem;padding-bottom:1.5rem;border-bottom:3px solid #F5C518;position:relative}.page-header:after{content:"";position:absolute;bottom:-3px;left:0;width:100px;height:3px;background:linear-gradient(90deg,#f5c518,gold);border-radius:2px}.back-button{display:flex;align-items:center;gap:.5rem;background:#f5c5181a;border:2px solid #F5C518;color:#f5c518;padding:.75rem 1.25rem;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-button:hover{background:#f5c518;color:#000;transform:translateY(-2px);box-shadow:0 8px 25px #f5c51866}.page-title{font-size:2.5rem;font-weight:700;color:#f5c518;margin:0;letter-spacing:-.02em;text-shadow:0 2px 4px rgba(245,197,24,.3)}.filter-controls{display:flex;gap:2.5rem;margin:3rem 0;padding:2rem;background:#ffffff0d;border-radius:16px;border:1px solid rgba(245,197,24,.2);box-shadow:0 8px 32px #0000004d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:relative}.filter-controls:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#F5C518,transparent);border-radius:16px 16px 0 0}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-weight:600;color:#f5c518;font-size:.95rem;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.5px;font-size:.85rem}.filter-select{padding:.75rem 1.25rem;border:2px solid rgba(245,197,24,.3);border-radius:8px;background:#ffffff1a;font-size:.95rem;color:#fff;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:500}.filter-select:hover{border-color:#f5c518;background:#f5c5181a;transform:translateY(-1px)}.filter-select:focus{outline:none;border-color:#f5c518;box-shadow:0 0 0 3px #f5c5184d;background:#f5c51826}.companies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.company-card{background:#ffffff14;border:1px solid rgba(245,197,24,.15);border-radius:16px;overflow:hidden;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 32px #0006,0 2px 8px #f5c5181a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:relative;display:flex;flex-direction:column;height:200px}.company-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:2px;background:linear-gradient(90deg,transparent,#F5C518,transparent);transition:left .6s ease}.company-card:hover:before{left:100%}.company-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 60px #00000080,0 8px 32px #f5c51833;border-color:#f5c51866}.company-logo{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem;background:linear-gradient(135deg,#fff,#f8f9fa);min-height:120px;box-shadow:0 4px 16px #0003;transition:transform .3s ease}.company-logo img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .3s ease}.company-card:hover .company-logo{transform:scale(1.1) rotate(2deg)}.company-card:hover .company-logo img{transform:scale(1.15)}.no-logo{display:flex;align-items:center;justify-content:center;color:#666;width:100%;height:100%}.company-info{padding:1.5rem;background:#0000004d;border-top:1px solid rgba(245,197,24,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.company-name{font-size:1.25rem;font-weight:700;color:#f5c518;margin:0 0 .75rem;letter-spacing:-.01em;line-height:1.3;text-align:center}.company-origin{font-size:.95rem;color:#e0e0e0;margin:0 0 .5rem;font-weight:500;text-align:center}.company-year{color:#b8b8b8;font-size:.9rem;margin:0;font-weight:400;opacity:.9;text-align:center}.pagination{display:flex;justify-content:center;align-items:center;gap:.75rem;margin-top:4rem;padding:3rem 0;position:relative;flex-wrap:wrap}.pagination:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:200px;height:1px;background:linear-gradient(90deg,transparent,#F5C518,transparent)}.pagination-btn{padding:.875rem 1.25rem;background:#ffffff14;color:#fff;border:2px solid rgba(245,197,24,.2);border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);min-width:48px;text-align:center;box-shadow:0 4px 16px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.pagination-btn:hover{background:#f5c51826;border-color:#f5c518;transform:translateY(-3px);box-shadow:0 8px 25px #f5c51866;color:#f5c518}.pagination-btn.active{background:linear-gradient(135deg,#f5c518,gold);color:#000;border-color:#f5c518;box-shadow:0 6px 20px #f5c51880,0 0 0 3px #f5c51833;font-weight:700;transform:scale(1.05)}.pagination-btn:disabled{background:#ffffff08;color:#666;border-color:#ffffff1a;cursor:not-allowed;box-shadow:none;opacity:.5}.pagination-btn:disabled:hover{background:#ffffff08;color:#666;border-color:#ffffff1a;transform:none}.current-page{font-weight:700;color:#f5c518;padding:.875rem 1.25rem;background:#f5c51826;border:2px solid rgba(245,197,24,.4);border-radius:12px;min-width:48px;text-align:center;box-shadow:0 4px 16px #f5c5184d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.9rem;display:flex;align-items:center}.loading{display:flex;justify-content:center;align-items:center;min-height:400px;font-size:1.1rem;color:#f5c518}.loading:after{content:"";width:40px;height:40px;border:3px solid rgba(245,197,24,.3);border-top:3px solid #F5C518;border-radius:50%;animation:spin 1s linear infinite;margin-left:1rem}@media (max-width: 1200px){.companies-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}.production-companies{padding:2rem 1rem}}@media (max-width: 900px){.companies-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}.page-title{font-size:2rem}.filter-controls{gap:1.5rem;padding:1.5rem}}@media (max-width: 768px){.production-companies{padding:1rem 0}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.page-title{font-size:1.5rem}.filter-controls{flex-direction:column;gap:1rem;margin:1rem 0;padding:1rem}.filter-group,.filter-select{width:100%}.companies-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.company-card{height:180px}.company-logo{min-height:100px}.pagination{gap:.25rem}.pagination-btn,.back-button{padding:.4rem .8rem;font-size:.8rem}}@media (max-width: 600px){.companies-grid{grid-template-columns:1fr;gap:1rem}.filter-controls{flex-direction:column;gap:1rem;padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.page-title{font-size:1.75rem}.pagination{gap:.5rem;margin-top:2rem;padding:2rem 0}.pagination-btn{padding:.75rem 1rem;font-size:.85rem;min-width:40px}.company-card{padding:1.5rem}.company-info{padding:1rem;margin:1rem -1.5rem -1.5rem}}@media (max-width: 480px){.companies-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.company-card{height:160px}.company-logo{min-height:80px;padding:.75rem}.company-info{padding:.75rem}.company-name{font-size:1rem}}.genres{min-height:100vh;background-color:#000;color:#fff;padding:2rem 0}.genres .container{max-width:1200px;margin:0 auto;padding:0 1rem}.page-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #F5C518}.back-button{display:flex;align-items:center;gap:.5rem;background:none;border:1px solid #F5C518;color:#f5c518;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .3s ease}.back-button:hover{background-color:#f5c518;color:#000}.back-button svg{transition:transform .3s ease}.back-button:hover svg{transform:translate(-2px)}.page-title{font-size:2rem;font-weight:700;color:#f5c518;margin:0}.genres-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.genre-card{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border-radius:12px;padding:2rem 1rem;cursor:pointer;transition:all .3s ease;border:1px solid #333;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:150px;position:relative;overflow:hidden}.genre-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#f5c5181a,#f5c5180d);opacity:0;transition:opacity .3s ease}.genre-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 12px 30px #f5c51866;border-color:#f5c518}.genre-card:hover:before{opacity:1}.genre-icon{color:#f5c518;margin-bottom:1rem;transition:all .3s ease;z-index:1;position:relative}.genre-card:hover .genre-icon{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(245,197,24,.5))}.genre-name{font-size:1.1rem;font-weight:700;color:#fff;margin:0;line-height:1.3;z-index:1;position:relative;transition:color .3s ease}.genre-card:hover .genre-name{color:#f5c518}.loading,.error{text-align:center;padding:2rem;font-size:1.1rem}.error{color:#ff6b6b}@media (max-width: 768px){.genres{padding:1rem 0}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.page-title{font-size:1.5rem}.genres-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.genre-card{padding:1.5rem .75rem;min-height:120px}.genre-name{font-size:1rem}.back-button{padding:.4rem .8rem;font-size:.8rem}}@media (max-width: 480px){.genres-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.genre-card{padding:1.25rem .5rem;min-height:100px}.genre-icon svg{width:32px;height:32px}.genre-name{font-size:.9rem}}.genre-card:nth-child(1){border-left:3px solid #ff4757}.genre-card:nth-child(2){border-left:3px solid #2ed573}.genre-card:nth-child(3){border-left:3px solid #ffa502}.genre-card:nth-child(4){border-left:3px solid #3742fa}.genre-card:nth-child(5){border-left:3px solid #ff6348}.genre-card:nth-child(6){border-left:3px solid #ff3838}.genre-card:nth-child(7){border-left:3px solid #2f3542}.genre-card:nth-child(8){border-left:3px solid #1e90ff}.genre-card:nth-child(9){border-left:3px solid #ff9ff3}.genre-card:nth-child(10){border-left:3px solid #54a0ff}.genre-card:nth-child(11){border-left:3px solid #5f27cd}.genre-card:nth-child(12){border-left:3px solid #00d2d3}.genre-card:nth-child(13){border-left:3px solid #ff9f43}.genre-card:nth-child(14){border-left:3px solid #10ac84}.genre-card:nth-child(15){border-left:3px solid #ee5a6f}.genre-card:nth-child(16){border-left:3px solid #0abde3}.genre-card:nth-child(17){border-left:3px solid #006ba6}.genre-card:nth-child(18){border-left:3px solid #f8b500}.genre-card:nth-child(19){border-left:3px solid #d63031}.search-bar{display:flex;max-width:600px;margin:0 auto;background:var(--imdb-gray);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:4px;padding:4px;box-shadow:0 4px 12px #0000004d;transition:all .3s ease;border:1px solid var(--imdb-light-gray)}.search-bar:focus-within{box-shadow:0 6px 16px #0006;border-color:var(--imdb-yellow);background:var(--imdb-light-gray)}.search-input-container{position:relative;flex:1;display:flex;align-items:center}.search-type-select{background:var(--imdb-dark-gray);color:var(--imdb-white);border:1px solid var(--imdb-light-gray);border-radius:4px 0 0 4px;padding:.75rem .5rem;font-size:.9rem;cursor:pointer;outline:none;transition:all .2s ease;min-width:80px}.search-type-select:focus{border-color:var(--imdb-yellow);background:var(--imdb-gray)}.search-type-select:hover{background:var(--imdb-gray)}.search-input{flex:1;padding:.75rem 1rem;font-size:1rem;border:none;border-radius:0;background:transparent;color:var(--imdb-white);transition:all .3s ease;outline:none}.search-input::placeholder{color:var(--imdb-text-gray)}.clear-button{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:#ef44441a;color:#ef4444;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;font-weight:700;transition:all .2s ease}.clear-button:hover{background:#ef444433;transform:translateY(-50%) scale(1.1)}.search-button{background:var(--imdb-yellow);color:var(--imdb-black);border:none;border-radius:4px;padding:.75rem 1.25rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:60px;font-weight:600}.search-button:hover{background:var(--imdb-yellow-hover);transform:translateY(-1px);box-shadow:0 4px 12px #f5c51866}.search-button:active{transform:scale(.98)}@media (max-width: 768px){.search-bar{max-width:100%;margin:0 1rem}.search-input{font-size:1rem;padding:.875rem 1.25rem}.search-type-select{padding:.875rem .5rem;font-size:.85rem;min-width:70px}.search-button{padding:.875rem 1.25rem;min-width:50px}}@media (max-width: 480px){.search-input{padding:.75rem 1rem}.search-type-select{padding:.75rem .4rem;font-size:.8rem;min-width:60px}.search-button{padding:.75rem 1rem}.clear-button{right:.75rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:#333;background-color:#f8fafc}.app{min-height:100vh;display:flex;flex-direction:column}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.app-header{background:var(--imdb-black);color:var(--imdb-white);padding:1rem 0;box-shadow:0 2px 10px #0000004d;border-bottom:1px solid var(--imdb-gray)}.header-content{display:flex;align-items:center;justify-content:space-between;gap:2rem;width:100%}.header-left{display:flex;align-items:center;flex-shrink:0}.home-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--imdb-yellow);color:var(--imdb-black);border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;position:relative;z-index:10}.home-button:hover{background:var(--imdb-yellow-hover);transform:translateY(-1px);box-shadow:0 4px 12px #f5c5184d}.home-button svg{width:18px;height:18px}.app-title{font-size:1.5rem;font-weight:700;margin:0}.app-title a{color:var(--imdb-white);text-decoration:none;transition:color .3s ease}.app-title a:hover{color:var(--imdb-yellow)}.header-center{flex:1;max-width:600px;display:flex;justify-content:center}.header-right{display:flex;align-items:center;gap:1rem;justify-content:flex-end}.header-login{display:flex;align-items:center}.main-dropdown{position:relative}.dropdown-toggle{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--imdb-yellow);color:var(--imdb-black);border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease}.dropdown-toggle:hover{background:var(--imdb-yellow-hover);transform:translateY(-1px);box-shadow:0 4px 12px #f5c5184d}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--imdb-dark-gray);border:1px solid var(--imdb-gray);border-radius:8px;box-shadow:0 8px 24px #0006;min-width:280px;max-width:320px;overflow:hidden;z-index:1000}.dropdown-section{padding:.75rem 0}.dropdown-section-title{font-size:.8rem;font-weight:600;color:var(--imdb-yellow);text-transform:uppercase;letter-spacing:.5px;margin:0 0 .5rem;padding:0 1rem}.dropdown-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;color:var(--imdb-text-light);border:none;text-align:left;cursor:pointer;font-size:.9rem;transition:all .2s ease}.dropdown-item:hover{background:var(--imdb-gray);color:var(--imdb-yellow)}.dropdown-item svg{width:16px;height:16px;flex-shrink:0}.favorite-btn svg{color:var(--imdb-yellow)}.dropdown-divider{height:1px;background:var(--imdb-gray);margin:0}.dropdown-login{padding:0 1rem}.app-main{flex:1;padding:0}@media (max-width: 768px){.header-content{gap:1rem}.header-left{justify-content:flex-start}.home-button,.dropdown-toggle{padding:.5rem .75rem;font-size:.8rem}.home-button svg,.dropdown-toggle svg{width:16px;height:16px}.app-title{font-size:1.2rem}.header-center{max-width:none}.dropdown-menu{min-width:200px;right:-1rem}.dropdown-item{padding:.625rem .875rem;font-size:.85rem}}@media (max-width: 480px){.header-content{flex-direction:column;gap:1rem;align-items:stretch}.header-left{justify-content:center}.header-center{order:3}.header-right{order:2;align-self:center;gap:.5rem}.header-login{justify-content:center}.dropdown-menu{right:-2rem;left:-2rem;min-width:auto}}.app-footer{background-color:#1a202c;color:#a0aec0;padding:2rem 0;text-align:center;margin-top:auto}.app-footer p{margin:0;font-size:.9rem}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.container{padding:0 .5rem}.header-content{flex-direction:column;gap:1rem;align-items:stretch}.app-title{font-size:1.5rem;text-align:center}.header-search{margin:0;max-width:none}.header-login{display:flex;justify-content:center}}@media (max-width: 480px){.app-header{padding:.75rem 0}.header-content{gap:.75rem}.app-title{font-size:1.3rem}}
