.preview-trigger{display:inline-block;position:relative;cursor:pointer}.preview-popup{position:fixed;z-index:9999;background-color:var(--navy-blue-light);border:2px solid var(--grey);border-radius:var(--border-radius);padding:var(--spacing-md);box-shadow:0 8px 24px #000000b3;max-width:300px;pointer-events:none;animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.preview-content{display:flex;gap:var(--spacing-md)}.preview-image{width:80px;height:120px;object-fit:cover;border-radius:var(--border-radius);flex-shrink:0}.preview-image.placeholder:before{font-size:2rem}.preview-details h4{margin:0 0 var(--spacing-xs) 0;font-size:1rem;color:var(--off-white)}.preview-details p{margin:0;font-size:.875rem;color:var(--grey-light);line-height:1.4}.sidebar{position:sticky;top:var(--spacing-xl)}.sidebar-section{background-color:var(--navy-blue-light);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.sidebar-section h3{margin:0 0 var(--spacing-md) 0;font-size:1.25rem;color:var(--off-white);border-bottom:2px solid var(--grey-dark);padding-bottom:var(--spacing-sm)}.sidebar-list{list-style:none}.sidebar-list li{padding:var(--spacing-xs) 0;border-bottom:1px solid var(--grey-dark)}.sidebar-list li:last-child{border-bottom:none}.sidebar-list a{display:block;padding:var(--spacing-xs) 0;font-size:.9rem}.tag-item{color:var(--grey-light);font-size:.9rem;display:block;padding:var(--spacing-xs) 0}.count{color:var(--grey);font-size:.85rem}.main-content h2{margin:0 0 var(--spacing-xl) 0;font-size:2rem;color:var(--off-white)}.movie-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--spacing-lg)}.movie-card-info h3{font-size:1rem;color:var(--off-white);margin:0 0 var(--spacing-xs) 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.movie-year{font-size:.875rem;color:var(--grey-light);margin:0}.movie-detail{position:relative}.movie-backdrop{position:absolute;top:-2rem;left:-2rem;right:-2rem;height:400px;background-size:cover;background-position:center;opacity:.15;border-radius:var(--border-radius);pointer-events:none}.movie-header{position:relative;display:flex;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--navy-blue-light);border-radius:var(--border-radius)}.movie-poster-large{width:300px;aspect-ratio:2/3;object-fit:cover;border-radius:var(--border-radius);flex-shrink:0;align-self:flex-start}.movie-info{flex:1}.movie-info h1{margin:0 0 var(--spacing-lg) 0;font-size:2.5rem;color:var(--off-white)}.movie-info h1 .year{color:var(--grey-light);font-weight:400}.movie-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.meta-section h3{margin:0 0 var(--spacing-sm) 0;font-size:1rem;color:var(--grey-light);text-transform:uppercase;letter-spacing:.05em}.meta-section p{margin:0;color:var(--off-white)}.person-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.person-link{color:var(--off-white);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--grey-dark);border-radius:var(--border-radius);font-size:.9rem}.description{margin-bottom:var(--spacing-xl)}.description h3{margin:0 0 var(--spacing-md) 0;font-size:1.25rem;color:var(--off-white)}.description p{line-height:1.8;color:var(--grey-light)}.tags-section{margin-bottom:var(--spacing-xl)}.tags-section h3{margin:0 0 var(--spacing-md) 0;font-size:1.25rem;color:var(--off-white)}.tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.cast-section{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--navy-blue-light);border-radius:var(--border-radius)}.cast-section h2{margin:0 0 var(--spacing-lg) 0;font-size:1.75rem;color:var(--off-white)}.cast-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--spacing-lg)}.cast-card{text-align:center;display:flex;flex-direction:column}.cast-card a{display:flex;flex-direction:column;align-items:center;flex:1}.cast-card .preview-trigger{display:block;width:100%}.cast-photo{width:100%;aspect-ratio:2/3;border-radius:var(--border-radius);margin-bottom:var(--spacing-sm)}.cast-photo:not(.placeholder){object-fit:cover;background-color:var(--grey-dark)}.cast-name{font-size:.9rem;color:var(--off-white);margin:0}.media-section{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--navy-blue-light);border-radius:var(--border-radius)}.media-section h2{margin:0 0 var(--spacing-lg) 0;font-size:1.75rem;color:var(--off-white)}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.media-image{width:100%;height:auto;border-radius:var(--border-radius)}.images-section{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--navy-blue-light);border-radius:var(--border-radius)}.images-section h2{margin:0 0 var(--spacing-lg) 0;font-size:1.75rem;color:var(--off-white)}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.additional-image{width:100%;height:auto;border-radius:var(--border-radius)}@media(max-width:768px){.movie-header{flex-direction:column}.movie-poster-large{width:100%;max-width:300px;margin:0 auto}.movie-info h1{font-size:1.75rem}}.person-detail{padding:var(--spacing-lg);background-color:var(--navy-blue-light);border-radius:var(--border-radius)}.person-header{display:flex;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:2px solid var(--grey-dark)}.person-photo-large{width:250px;height:375px;object-fit:cover;border-radius:var(--border-radius);flex-shrink:0}.person-photo-large.placeholder{aspect-ratio:2/3}.person-photo-large.placeholder:before{font-size:5rem}.person-info{flex:1}.person-info h1{margin:0 0 var(--spacing-sm) 0;font-size:2.5rem;color:var(--off-white)}.person-dates{font-size:1rem;color:var(--grey-light);margin-bottom:var(--spacing-lg)}.person-meta{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.meta-item{display:flex;gap:var(--spacing-sm)}.meta-label{color:var(--grey-light);font-weight:600;min-width:80px}.meta-value{color:var(--off-white)}.external-links{display:flex;gap:var(--spacing-md)}.external-link{color:var(--accent-blue, #6b9bd1);text-decoration:none;font-weight:600;transition:color .2s ease}.external-link:hover{color:var(--off-white);text-decoration:underline}.bio{margin-top:var(--spacing-lg)}.bio h3{margin:0 0 var(--spacing-md) 0;font-size:1.25rem;color:var(--off-white)}.bio p{line-height:1.8;color:var(--grey-light)}.filmography-section{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:2px solid var(--grey-dark)}.filmography-section h2{margin:0 0 var(--spacing-lg) 0;font-size:1.75rem;color:var(--off-white)}.filmography-section .movie-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-lg)}.filmography-section .movie-poster{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:var(--border-radius);margin-bottom:var(--spacing-sm);background-color:var(--grey-dark)}.filmography-section .movie-card-info h3{font-size:.9rem;color:var(--off-white);margin:0 0 var(--spacing-xs) 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.filmography-section .movie-year{font-size:.8rem;color:var(--grey-light);margin:0}@media(max-width:768px){.person-header{flex-direction:column}.person-photo-large{width:100%;max-width:250px;margin:0 auto}.person-info h1{font-size:1.75rem}}.search-page h1{margin:0 0 var(--spacing-xl) 0;font-size:2rem;color:var(--off-white)}.search-controls{margin-bottom:var(--spacing-xl)}.search-input{width:100%;padding:var(--spacing-md);font-size:1.1rem;background-color:var(--navy-blue-light);border:2px solid var(--grey-dark);border-radius:var(--border-radius);color:var(--off-white);margin-bottom:var(--spacing-md);transition:var(--transition)}.search-input:focus{outline:none;border-color:var(--grey-light)}.search-input::placeholder{color:var(--grey)}.search-filters{display:flex;gap:var(--spacing-sm)}.filter-btn{background-color:var(--navy-blue-light);color:var(--grey-light);border:2px solid var(--grey-dark);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);font-size:.95rem;font-weight:500}.filter-btn:hover{border-color:var(--grey-light)}.filter-btn.active{background-color:var(--grey);color:var(--off-white);border-color:var(--grey)}.search-empty{text-align:center;padding:var(--spacing-xl) 0;color:var(--grey-light);font-size:1.1rem}.results-section{margin-bottom:var(--spacing-xl)}.results-section h2{margin:0 0 var(--spacing-lg) 0;font-size:1.5rem;color:var(--off-white);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--grey-dark)}.movie-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-lg)}.movie-card a{display:block;text-decoration:none}.movie-poster{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:var(--border-radius);margin-bottom:var(--spacing-sm);background-color:var(--grey-dark)}.movie-card-info h3{font-size:.9rem;color:var(--off-white);margin:0 0 var(--spacing-xs) 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.movie-year{font-size:.8rem;color:var(--grey-light);margin:0}.people-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-lg)}.person-card{text-align:center}.person-card a{display:block;text-decoration:none}.person-photo{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:var(--border-radius);margin-bottom:var(--spacing-sm);background-color:var(--grey-dark)}.person-card-info h3{font-size:.9rem;color:var(--off-white);margin:0 0 var(--spacing-xs) 0}.person-count{font-size:.8rem;color:var(--grey-light);margin:0}.tag-page h1{margin:0 0 var(--spacing-sm) 0;font-size:2.5rem;color:var(--off-white)}.tag-count{margin:0 0 var(--spacing-xl) 0;font-size:1.1rem;color:var(--grey-light)}.no-results{text-align:center;padding:var(--spacing-xl) 0;color:var(--grey-light);font-size:1.1rem}.tag-page .movie-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--spacing-lg)}.tag-page .movie-card a{display:block;text-decoration:none}.tag-page .movie-poster{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:var(--border-radius);margin-bottom:var(--spacing-sm);background-color:var(--grey-dark)}.tag-page .movie-card-info h3{font-size:1rem;color:var(--off-white);margin:0 0 var(--spacing-xs) 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.tag-page .movie-year{font-size:.875rem;color:var(--grey-light);margin:0}.header{background-color:#050816;border-bottom:2px solid var(--grey-dark);margin-bottom:var(--spacing-xl)}.header-content{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0}.logo{display:flex;align-items:center}.logo-img{height:128px;transition:var(--transition)}.logo:hover .logo-img{opacity:.8}.nav{display:flex;gap:var(--spacing-lg)}.nav a{font-size:1.1rem;font-weight:500}.footer{background-color:var(--navy-blue-dark);border-top:1px solid var(--grey-dark);padding:1.5rem 0;margin-top:4rem}.footer-text{text-align:center;color:var(--grey-light);font-size:.875rem;margin:0}.footer-link{color:var(--off-white);text-decoration:none;border-bottom:1px solid var(--grey)}.footer-link:hover{color:var(--grey-light);border-bottom-color:var(--grey-light)}:root{--navy-blue: #0a0f1e;--navy-blue-light: #1a2332;--navy-blue-dark: #050812;--grey: #6b7280;--grey-light: #9ca3af;--grey-dark: #4b5563;--off-white: #f9fafb;--off-white-dark: #e5e7eb;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--border-radius: .5rem;--transition: all .2s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--navy-blue);color:var(--off-white);line-height:1.6}a{color:var(--grey-light);text-decoration:none;transition:var(--transition)}a:hover{color:var(--off-white)}img{max-width:100%;height:auto;display:block}.container{max-width:1400px;margin:0 auto;padding:var(--spacing-sm)}.layout{display:grid;grid-template-columns:1fr 300px;gap:var(--spacing-xl);align-items:start}@media(max-width:1024px){.layout{grid-template-columns:1fr}}.card{background-color:var(--navy-blue-light);border-radius:var(--border-radius);padding:var(--spacing-lg);transition:var(--transition)}.card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.btn{background-color:var(--grey);color:var(--off-white);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);font-size:1rem}.btn:hover{background-color:var(--grey-light)}.tag{display:inline-block;background-color:var(--grey-dark);color:var(--off-white);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);font-size:.875rem;margin-right:var(--spacing-xs);margin-bottom:var(--spacing-xs);transition:var(--transition);text-decoration:none}.tag:hover{background-color:var(--grey);color:var(--off-white)}.placeholder{background:linear-gradient(135deg,#3a4556,#2d3748);display:flex;align-items:center;justify-content:center;color:var(--grey);border:1px solid var(--grey-dark)}.placeholder-person:before{content:"👤";font-size:3rem}.placeholder-movie:before{content:"🎬";font-size:2.5rem}
