@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap";@import"https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400;500;600&display=swap";.header{position:fixed;top:0;left:0;right:0;height:80px;background:#1a1a1af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #2d2d2d;z-index:1000}.header__container{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 20px;max-width:1400px;margin:0 auto}.header__logo{font-size:1.5rem;font-weight:700;color:#f59e0b;text-decoration:none;transition:color .2s ease}.header__logo:hover{color:#f7b13c}.header__nav{display:flex;align-items:center;gap:32px}.header__wishlist-btn{position:relative;background:none;border:none;color:#fff;cursor:pointer;padding:16px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;gap:8px}.header__wishlist-btn:hover{background:#2d2d2d;transform:translateY(-1px)}.header__wishlist-btn__icon{width:18px;height:18px;fill:currentColor}.header__wishlist-btn__count{background:#f59e0b;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;position:absolute;top:4px;right:4px}.header__wishlist-btn__count--empty{display:none}@media(max-width:768px){.header__container{padding:0 16px}.header__logo{font-size:1.25rem}.header__wishlist-btn{padding:8px}.header__wishlist-btn__count{top:2px;right:2px;width:18px;height:18px;font-size:10px}}.movie-card{position:relative;background:#2d2d2d;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px #0000001a}.movie-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 25px #00000026}.movie-card__image-container{position:relative;width:100%;aspect-ratio:.667;overflow:hidden;background:linear-gradient(45deg,#2d2d2d,#141414)}.movie-card__image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.movie-card__image--loading{opacity:0}.movie-card__image--loaded{opacity:1}.movie-card__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 0%,transparent 60%,rgba(26,26,26,.8) 100%);opacity:0;transition:opacity .3s ease}.movie-card__content{position:absolute;bottom:0;left:0;right:0;padding:16px;color:#fff;transform:translateY(100%);transition:transform .3s ease}.movie-card__title{font-size:.875rem;font-weight:600;line-height:1.4;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.movie-card__meta{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:#b3b3b3}.movie-card__rating{display:flex;align-items:center;gap:4px}.movie-card__rating__star{color:#fbbf24;width:12px;height:12px}.movie-card__year{font-weight:500}.movie-card:hover .movie-card__overlay{opacity:1}.movie-card:hover .movie-card__content{transform:translateY(0)}.movie-card:hover .movie-card__image{transform:scale(1.1)}.movie-card__fallback{display:flex;align-items:center;justify-content:center;background:linear-gradient(45deg,#2d2d2d,#070707);color:gray;font-size:1.875rem;width:100%;height:100%}.movie-card--popular{border:2px solid transparent}.movie-card--popular:hover{border-color:#0ea5e9;box-shadow:0 0 20px #0ea5e94d}.movie-card--popular .movie-card__title{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.movie-card--top_rated{border:2px solid transparent}.movie-card--top_rated:hover{border-color:#8b5cf6;box-shadow:0 0 20px #8b5cf64d}.movie-card--top_rated .movie-card__title{font-family:Playfair Display,serif;font-style:italic}.movie-card--upcoming{border:2px solid transparent}.movie-card--upcoming:hover{border-color:#10b981;box-shadow:0 0 20px #10b9814d}.movie-card--upcoming .movie-card__title{font-family:Roboto Mono,monospace;text-transform:uppercase;letter-spacing:.5px}.movie-card__wishlist-btn{position:absolute;top:8px;right:8px;background:#1a1a1acc;border:1px solid rgba(255,255,255,.3);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2}.movie-card__wishlist-btn:hover{background:#1a1a1af2;border-color:#f59e0b;transform:scale(1.1)}.movie-card__wishlist-btn--active{background:#f59e0be6;border-color:#f59e0b;color:#fff}.movie-card__wishlist-btn--active:hover{background:#f59e0b}.movie-card--wishlist .movie-card__content{position:static;transform:none;background:#2d2d2d}.movie-card--wishlist .movie-card__overlay{display:none}.movie-card--wishlist .movie-card__wishlist-btn{background:#f59e0be6;border-color:#f59e0b80}.movie-card--wishlist .movie-card__wishlist-btn:hover{background:#f59e0b;border-color:#f59e0b}.movie-card--wishlist:hover{border-color:transparent;box-shadow:0 4px 6px #0000001a}@media(max-width:768px){.movie-card__content{position:static;transform:none;padding:8px;background:#2d2d2d}.movie-card__overlay{display:none}.movie-card:hover .movie-card__image{transform:none}}.carousel{margin-bottom:60px}.carousel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;padding:0 16px}.carousel__title{font-size:1.5rem;font-weight:700;color:#fff;margin:0}.carousel__title--popular{color:#0ea5e9;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.carousel__title--top_rated{color:#8b5cf6;font-family:Playfair Display,serif;font-style:italic}.carousel__title--upcoming{color:#10b981;font-family:Roboto Mono,monospace;text-transform:uppercase;letter-spacing:1px}.carousel__container{position:relative;overflow-x:hidden;overflow-y:visible}.carousel__track{display:flex;gap:24px;transition:transform .3s ease;overflow-x:auto;overflow-y:visible;scrollbar-width:none;-ms-overflow-style:none}.carousel__track::-webkit-scrollbar{display:none}.carousel__item{flex:0 0 auto;width:140px;margin:24px 0;padding:0 2px}@media(min-width:768px){.carousel__item{width:180px}}@media(min-width:1024px){.carousel__item{width:220px}}.carousel__nav{position:absolute;top:50%;transform:translateY(-50%);background:#000c;border:.5px solid rgba(255,255,255,.3);color:#fff;width:50px;height:50px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10;box-shadow:0 2px 8px #0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.carousel__nav:hover:not(:disabled){background:#000000e6;border-color:#fff9;transform:translateY(-50%) scale(1.15);box-shadow:0 6px 25px #fff3,0 3px 12px #00000080}.carousel__nav:active:not(:disabled){background:#000000f2;color:#fff;transform:translateY(-50%) scale(1.05);box-shadow:0 3px 15px #ffffff26,0 2px 6px #0006}.carousel__nav:focus:not(:disabled){outline:none}.carousel__nav:disabled{opacity:.3;cursor:not-allowed}.carousel__nav:disabled:hover{transform:translateY(-50%);box-shadow:0 2px 8px #0000004d;border-color:#ffffff4d;background:#000c}.carousel__nav--prev{left:8px}.carousel__nav--next{right:8px}.carousel__nav svg{width:24px;height:24px;fill:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6));transition:transform .2s ease}.carousel__nav:hover:not(:disabled) svg{transform:scale(1.2)}.carousel__loading{display:flex;align-items:center;justify-content:center;min-height:300px}.carousel__loading__spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top:3px solid #6366f1;border-radius:50%;animation:spin 1s linear infinite}.carousel__loading__spinner--popular{border-top-color:#0ea5e9}.carousel__loading__spinner--top_rated{border-top-color:#8b5cf6}.carousel__loading__spinner--upcoming{border-top-color:#10b981}.carousel__error{text-align:center;padding:64px 16px;border-radius:8px;background:#ef44440d;border:1px solid rgba(239,68,68,.2)}.carousel__error__title{font-size:1.25rem;color:#ef4444;margin-bottom:16px;font-weight:600}.carousel__error__message{color:#b3b3b3;margin-bottom:24px;font-size:.875rem}.carousel__error__retry{background:#6366f1;color:#fff;border:none;padding:16px 32px;border-radius:8px;cursor:pointer;font-weight:500;font-size:.875rem;transition:all .2s ease}.carousel__error__retry:hover{background:#6366f1e6;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.carousel__error__retry:active{transform:translateY(0)}@media(max-width:480px){.carousel__header{padding:0;flex-direction:column;align-items:flex-start;gap:8px}.carousel__title{font-size:1.25rem}.carousel__nav{width:40px;height:40px}.carousel__nav svg{width:16px;height:16px}.carousel__progress-text{font-size:.75rem}}@media(max-width:360px){.carousel__controls--mobile{padding:8px}.carousel__nav-group{padding:2px;gap:2px}}@media(prefers-contrast:high){.carousel__nav{border-width:2px}.carousel__nav:disabled{opacity:.6}.carousel__nav-group{border-width:2px}}@media(prefers-reduced-motion:reduce){.carousel__track{scroll-behavior:auto}.carousel__nav{transition:none}.carousel__nav:hover:not(:disabled){transform:none}.carousel__nav svg{transition:none}}.error-message{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 140px);padding:32px 20px}.error-message__container{max-width:500px;text-align:center;padding:64px 32px;background:#2d2d2d4d;border-radius:16px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.error-message__icon{font-size:4rem;margin-bottom:32px;opacity:.8;display:block}.error-message__title{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:24px;line-height:1.2}.error-message__text{font-size:1rem;color:#b3b3b3;margin-bottom:48px;line-height:1.6;max-width:400px;margin-left:auto;margin-right:auto}.error-message__retry{display:inline-flex;align-items:center;gap:8px;padding:16px 32px;background:#6366f1;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-width:120px;justify-content:center}.error-message__retry:hover:not(:disabled){background:#3438ed;transform:translateY(-2px);box-shadow:0 4px 12px #6366f14d}.error-message__retry:disabled{opacity:.7;cursor:not-allowed;transform:none}.error-message__retry--loading{pointer-events:none}.error-message__retry__spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@media(max-width:768px){.error-message{padding:24px 20px;min-height:calc(100vh - 120px)}.error-message__container{padding:48px 24px}.error-message__icon{font-size:3rem;margin-bottom:24px}.error-message__title{font-size:1.25rem}.error-message__text{font-size:.875rem}}.movie-image-area__poster{width:100%;aspect-ratio:.667;border-radius:12px;box-shadow:0 20px 25px #00000026;object-fit:cover}.movie-image-area__fallback{width:100%;aspect-ratio:.667;background:linear-gradient(45deg,#2d2d2d,#070707);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:2.25rem;color:gray}@media(max-width:1024px){.movie-image-area{max-width:300px;margin:0 auto}}@media(max-width:768px){.movie-image-area{max-width:250px}}@media(max-width:480px){.movie-image-area{max-width:200px}}.movie-button-description{display:flex;flex-direction:column;gap:32px}.movie-button-description__button-area .movie-button-description__wishlist-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 24px;background:#6366f1;color:#1a1a1a;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease;text-align:center;min-width:200px;width:200px;white-space:nowrap}.movie-button-description__button-area .movie-button-description__wishlist-btn--loading{pointer-events:none}.movie-button-description__button-area .movie-button-description__wishlist-btn--loading span{opacity:.7}.movie-button-description__button-area .movie-button-description__wishlist-btn:disabled{cursor:not-allowed;opacity:.7;transform:none!important}.movie-button-description__button-area .movie-button-description__wishlist-btn:disabled:hover{transform:none!important}.movie-button-description__button-area .movie-button-description__wishlist-btn:hover:not(.movie-button-description__button-area .movie-button-description__wishlist-btn--primary):not(.movie-button-description__button-area .movie-button-description__wishlist-btn--secondary):not(.movie-button-description__button-area .movie-button-description__wishlist-btn--accent){background:#3438ed;transform:translateY(-2px)}.movie-button-description__button-area .movie-button-description__wishlist-btn--added:not(.movie-button-description__button-area .movie-button-description__wishlist-btn--primary):not(.movie-button-description__button-area .movie-button-description__wishlist-btn--secondary):not(.movie-button-description__button-area .movie-button-description__wishlist-btn--accent){background:#2d2d2d;color:#6366f1}.movie-button-description__button-area .movie-button-description__wishlist-btn svg{width:20px;height:20px;flex-shrink:0;display:block;margin:0}.movie-button-description__button-area .movie-button-description__wishlist-btn span{line-height:1.2;display:flex;align-items:center;margin:0;padding:2px 0}.movie-button-description__button-area .movie-button-description__wishlist-btn--primary{background:#0ea5e9;color:#1a1a1a;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:500;border-radius:8px;border:2px solid transparent;box-shadow:0 4px 12px #0ea5e94d;transition:background-color .3s ease,transform .3s ease,box-shadow .3s ease;min-width:200px;width:200px;white-space:nowrap}.movie-button-description__button-area .movie-button-description__wishlist-btn--primary:hover{background:#0c8ac3;transform:translateY(-1px);box-shadow:0 6px 16px #0ea5e966}.movie-button-description__button-area .movie-button-description__wishlist-btn--primary.movie-button-description__wishlist-btn--added{background:#2d2d2d;color:#0ea5e9;border:2px solid #0ea5e9}.movie-button-description__button-area .movie-button-description__wishlist-btn--primary.movie-button-description__wishlist-btn--added:hover{background:#0ea5e9;color:#1a1a1a}.movie-button-description__button-area .movie-button-description__wishlist-btn--secondary{background:#8b5cf6;color:#1a1a1a;font-family:Playfair Display,serif;font-style:italic;font-weight:500;border-radius:12px;border:2px solid #8b5cf6;box-shadow:0 4px 12px #8b5cf64d;transition:background-color .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease;min-width:200px;width:200px;white-space:nowrap}.movie-button-description__button-area .movie-button-description__wishlist-btn--secondary:hover{background:transparent;color:#8b5cf6;transform:translateY(-1px);box-shadow:0 6px 16px #8b5cf666}.movie-button-description__button-area .movie-button-description__wishlist-btn--secondary.movie-button-description__wishlist-btn--added{background:#2d2d2d;color:#8b5cf6;border:2px solid #8b5cf6}.movie-button-description__button-area .movie-button-description__wishlist-btn--secondary.movie-button-description__wishlist-btn--added:hover{background:#8b5cf6;color:#1a1a1a}.movie-button-description__button-area .movie-button-description__wishlist-btn--accent{background:transparent;color:#10b981;font-family:Roboto Mono,monospace;text-transform:uppercase;letter-spacing:.5px;font-weight:500;font-size:.875rem;border:2px solid #10b981;border-radius:4px;box-shadow:0 4px 12px #10b9814d;position:relative;overflow:hidden;transition:color .3s ease,transform .3s ease,box-shadow .3s ease;min-width:200px;width:200px;white-space:nowrap;padding:16px 24px}.movie-button-description__button-area .movie-button-description__wishlist-btn--accent:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:#10b981;transition:left .5s ease;z-index:-1;border-radius:4px}.movie-button-description__button-area .movie-button-description__wishlist-btn--accent:hover{color:#1a1a1a;transform:translateY(-1px);box-shadow:0 6px 16px #10b98166}.movie-button-description__button-area .movie-button-description__wishlist-btn--accent:hover:before{left:0}.movie-button-description__button-area .movie-button-description__wishlist-btn--accent.movie-button-description__wishlist-btn--added{background:#10b981;color:#1a1a1a}.movie-button-description__button-area .movie-button-description__wishlist-btn--accent.movie-button-description__wishlist-btn--added:before{left:0}.movie-button-description__button-area .movie-button-description__wishlist-btn--accent.movie-button-description__wishlist-btn--added:hover{background:#2d2d2d;color:#10b981}.movie-button-description__button-area .movie-button-description__wishlist-btn--accent.movie-button-description__wishlist-btn--added:hover:before{left:-100%}.movie-button-description__description .movie-button-description__overview{font-size:1rem;line-height:1.6;color:#fff}.movie-button-description--popular .movie-button-description__description{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.movie-button-description--popular .movie-button-description__description .movie-button-description__overview{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;line-height:1.6;color:#fff}.movie-button-description--top_rated .movie-button-description__description{font-family:Playfair Display,serif}.movie-button-description--top_rated .movie-button-description__description .movie-button-description__overview{font-family:Playfair Display,serif;font-size:1.125rem;line-height:1.7;font-style:normal;color:#fff}.movie-button-description--upcoming .movie-button-description__description{font-family:Roboto Mono,monospace}.movie-button-description--upcoming .movie-button-description__description .movie-button-description__overview{font-family:Roboto Mono,monospace;font-size:.875rem;line-height:1.5;text-transform:uppercase;letter-spacing:.5px;color:#fff}.movie-additional-info{max-width:1400px;margin:0 auto;padding:48px 20px;border-top:1px solid #2d2d2d}.movie-additional-info__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.movie-additional-info__item{background:#2d2d2d;padding:24px;border-radius:8px}.movie-additional-info__item .movie-additional-info__label{font-size:.875rem;font-weight:600;color:#b3b3b3;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.movie-additional-info__item .movie-additional-info__value{font-size:1rem;color:#fff;font-weight:500}.movie-additional-info__item .movie-additional-info__rating{display:flex;align-items:center;gap:4px}.movie-additional-info__item .movie-additional-info__rating svg{width:16px;height:16px;color:#fbbf24}.movie-additional-info__item .movie-additional-info__rating__votes{color:#b3b3b3;font-size:.875rem;margin-left:4px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:#1a1a1a;color:#fff;line-height:1.6;overflow-x:hidden}#root{min-height:100vh;display:flex;flex-direction:column}.container{max-width:1400px;margin:0 auto;padding:0 20px}.section{margin-bottom:60px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-links{position:relative;z-index:1000}.skip-links .skip-link{position:absolute;top:-40px;left:6px;background:#6366f1;color:#fff;padding:8px;text-decoration:none;border-radius:4px;font-weight:600;transition:top .3s}.skip-links .skip-link:focus{top:6px;outline:2px solid rgba(255,255,255,.8);outline-offset:1px;box-shadow:0 0 0 3px #fff3}.main-content{outline:none}.main-content:focus{outline:none}button:focus,a:focus,[role=button]:focus,input:focus,select:focus,textarea:focus{outline:2px solid rgba(255,255,255,.25);outline-offset:2px;box-shadow:0 0 0 2px #ffffff12;transition:outline-color .2s}[tabindex="0"]:focus,[tabindex="-1"]:focus{outline:2px solid rgba(255,255,255,.25);outline-offset:2px;box-shadow:0 0 0 2px #ffffff12;transition:outline-color .2s}.loading{display:flex;align-items:center;justify-content:center;min-height:200px}.loading__spinner{width:40px;height:40px;border:3px solid #2d2d2d;border-top:3px solid #6366f1;border-radius:50%;animation:spin 1s linear infinite}.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:32px;text-align:center}.error__title{font-size:1.25rem;color:#6366f1;margin-bottom:16px}.error__message{color:#b3b3b3;margin-bottom:24px}.error__retry{background:#6366f1;color:#fff;border:none;padding:16px 32px;border-radius:8px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.error__retry:hover{background:#3438ed}@media(max-width:768px){.hide-mobile{display:none!important}}@media(min-width:769px){.hide-desktop{display:none!important}}.show-mobile{display:none!important}@media(max-width:768px){.show-mobile{display:block!important}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#2d2d2d}::-webkit-scrollbar-thumb{background:gray;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#b3b3b3}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1rem}.page-loading__spinner{width:40px;height:40px;border:3px solid rgba(26,26,26,.2);border-top:3px solid #1a1a1a;border-radius:50%;animation:spin 1s linear infinite}.page-loading__text{color:#b3b3b3;font-size:1rem;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
