.sidebar{z-index:100;background-color:#181818;border-right:1px solid #333;width:260px;height:100vh;padding:24px;position:fixed;top:0;left:0;overflow-y:auto}.sidebar__header{justify-content:space-between;align-items:center;display:flex}.sidebar__logo{color:#fff;margin-bottom:40px;font-size:28px;font-weight:700;display:block}.sidebar__toggle{color:#fff;cursor:pointer;padding:6px;font-size:24px;line-height:1;display:none}.sidebar__nav{margin-bottom:32px}.sidebar__list{flex-direction:column;gap:8px;display:flex}.sidebar__item{width:100%}.sidebar__link{color:#aaa;border-radius:8px;padding:10px 14px;font-size:15px;transition:background-color .2s,color .2s;display:block}.sidebar__link:hover{color:#fff;background-color:#252525}.sidebar__section{margin-top:32px}.sidebar__heading{color:#aaa;text-transform:uppercase;letter-spacing:1px;margin-bottom:16px;font-size:13px;font-weight:600}@media (width<=768px){.sidebar{width:220px;padding:20px}}@media (width<=480px){.sidebar{border-bottom:1px solid #333;border-right:none;width:100%;height:auto;padding:16px;position:fixed;overflow:visible}.sidebar__logo{margin-bottom:0;font-size:24px}.sidebar__toggle{display:block}.sidebar__nav,.sidebar__section{display:none}.sidebar--open .sidebar__nav{margin-top:24px;margin-bottom:20px;display:block}.sidebar--open .sidebar__section{margin-top:20px;display:block}}.button{color:#fff;cursor:pointer;background-color:#0000;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;min-height:42px;padding:10px 18px;font-size:15px;font-weight:500;transition:background-color .2s,color .2s,border-color .2s,opacity .2s;display:inline-flex}.button--primary{color:#000;background-color:#fff}.button--primary:hover{background-color:#aaa}.button:disabled{opacity:.45;cursor:not-allowed}@media (width<=480px){.button{min-height:40px;padding:9px 16px;font-size:14px}}.search-bar{width:100%;max-width:600px;margin-bottom:32px;position:relative}.search-bar__input{color:#fff;background-color:#1f1f1f;border:1px solid #333;border-radius:12px;outline:none;width:100%;padding:14px 55px 14px 18px;font-size:16px;transition:border-color .2s}.search-bar__input:focus{border-color:#fff}.search-bar__input::placeholder{color:#666}.search-bar__button{cursor:pointer;background-color:#0000;border:none;justify-content:center;align-items:center;width:32px;height:32px;min-height:0;padding:0;line-height:0;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.search-bar__button:before{content:"";border:2px solid #fff;border-radius:50%;width:13px;height:13px;position:absolute;top:6px;left:5px}.search-bar__button:after{content:"";background-color:#fff;width:7px;height:2px;position:absolute;top:20px;left:18px;transform:rotate(45deg)}@media (width<=480px){.search-bar{max-width:none;margin-bottom:20px}.search-bar__input{padding:12px 50px 12px 16px;font-size:15px}}.layout{min-height:100vh}.layout__main{flex-direction:column;min-width:0;margin-left:260px;display:flex}.layout__content{flex:1}.layout__search{justify-content:center;padding:20px 0;display:flex}@media (width<=768px){.layout__main{margin-left:220px}}@media (width<=480px){.layout__main{margin-left:0;padding-top:70px}.layout__search{padding:16px}}.movie-card{cursor:pointer;background-color:#181818;border:1px solid #0000;border-radius:10px;flex-direction:column;transition:transform .2s,border-color .2s;display:flex;overflow:hidden}.movie-card:hover{border-color:#666;transform:translateY(-5px)}.movie-card__image-wrapper{aspect-ratio:2/3;position:relative}.movie-card__image{object-fit:cover;width:100%;height:100%}.movie-card__rating{color:#fff;background-color:#000000bf;border-radius:8px;padding:6px 10px;font-size:14px;position:absolute;bottom:10px;right:10px}.movie-card__content{padding:12px}.movie-card__title{color:#fff;text-overflow:ellipsis;white-space:nowrap;margin-bottom:8px;font-size:18px;overflow:hidden}.movie-card__date{color:#666;font-size:14px}@media (width<=480px){.movie-card__content{padding:10px}.movie-card__title{font-size:16px}.movie-card__date{font-size:13px}.movie-card__rating{padding:5px 8px;font-size:13px;bottom:8px;right:8px}}.favorite-button{color:#fff;background-color:#000000bf;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;padding:0;font-size:20px;transition:transform .2s,background-color .2s;display:flex;position:absolute;top:12px;right:12px}.favorite-button:hover{background-color:#000000e6;transform:scale(1.1)}@media (width<=480px){.favorite-button{width:38px;height:38px;font-size:18px;top:8px;right:8px}}.pagination{justify-content:center;align-items:center;gap:20px;margin-top:40px;display:flex}.pagination__info{color:#aaa;text-align:center;min-width:70px;font-size:16px;font-weight:500}@media (width<=480px){.pagination{gap:12px;margin-top:30px}.pagination__info{min-width:60px;font-size:14px}}.movie-sort{align-items:center;gap:12px;margin:24px 0 30px;display:flex}.movie-sort__label{color:#aaa;font-size:16px;font-weight:500}.movie-sort__select{color:#aaa;cursor:pointer;background-color:#1f1f1f;border:1px solid #333;border-radius:8px;outline:none;min-width:210px;padding:10px 14px;font-size:15px;transition:border-color .2s,background-color .2s}.movie-sort__select:hover{border-color:#666}.movie-sort__select:focus{background-color:#252525;border-color:#aaa}@media (width<=480px){.movie-sort{flex-direction:column;align-items:flex-start;gap:8px;margin:20px 0 24px}.movie-sort__select{width:100%;min-width:0}}.home-page{padding:30px}.home-page__title{color:#e5e5e5;margin-bottom:30px;font-size:36px;font-weight:700}@media (width<=768px){.home-page{padding:30px}}@media (width<=480px){.home-page{padding:20px}.home-page__title{margin-bottom:20px;font-size:28px}}.favorite-page{padding:40px}.favorite-page__title{color:#e5e5e5;margin-bottom:32px;font-size:36px;font-weight:700}.favorite-page__empty{color:#aaa;text-align:center;justify-content:center;align-items:center;min-height:300px;font-size:20px;display:flex}@media (width<=768px){.favorite-page{padding:30px}.favorite-page__title{font-size:32px}}@media (width<=480px){.favorite-page{padding:20px}.favorite-page__title{margin-bottom:24px;font-size:28px}.favorite-page__empty{min-height:220px;font-size:17px}}.actor-card{cursor:pointer;background-color:#1f1f1f;border:1px solid #0000;border-radius:12px;flex-direction:column;transition:transform .2s;display:flex;overflow:hidden}.actor-card:hover{transform:translateY(-4px)}.actor-card__image-wrapper{aspect-ratio:2/3;width:100%;overflow:hidden}.actor-card__image{object-fit:cover;width:100%;height:100%;display:block}.actor-card__info{padding:12px}.actor-card__name{color:#fff;margin:0;font-size:16px;font-weight:600}.actor-card__character{color:#aaa;margin-top:6px;font-size:14px}@media (width<=480px){.actor-card__info{padding:10px}.actor-card__name{font-size:15px}.actor-card__character{font-size:13px}}.back-button{color:#fff;cursor:pointer;background-color:#333;border:1px solid #666;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:500;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.back-button:hover{color:#000;background-color:#fff;border-color:#fff}@media (width<=480px){.back-button{padding:10px 18px;font-size:14px}}.movie-page{padding:40px}.movie-page__back-button{margin-bottom:20px}.movie-page__header{align-items:flex-start;gap:40px;display:flex}.movie-page__image-wrapper{flex-shrink:0;width:320px;position:relative}.movie-page__image{border-radius:16px;width:100%;display:block}.movie-page__info{flex-direction:column;gap:16px;display:flex}.movie-page__title{color:#e5e5e5;font-size:42px;font-weight:700}.movie-page__average,.movie-page__release-date{color:#aaa;font-size:18px}.movie-page__genres,.movie-page__countries,.movie-page__runtime-block{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.movie-page__genres-title,.movie-page__countries-title,.movie-page__runtime-title{font-weight:600}.movie-page__genre,.movie-page__country{color:#aaa;font-size:17px}.movie-page__runtime{color:#aaa;font-size:16px}.movie-page__description{margin-top:40px}.movie-page__overview{color:#aaa;margin-top:16px;font-size:17px;line-height:1.7}.movie-page__actors-title,.movie-page__similar-title{color:#e5e5e5;margin-top:50px;margin-bottom:20px;font-size:28px;font-weight:600}.movie-page__credits{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px;display:grid}.movie-page__favorite{color:#fff;cursor:pointer;background-color:#000000bf;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;padding:0;font-size:20px;transition:transform .2s,background-color .2s;display:flex;position:absolute;top:12px;right:12px}.movie-page__favorite:hover{background-color:#000000e6;transform:scale(1.1)}@media (width<=768px){.movie-page{padding:30px}.movie-page__header{gap:30px}.movie-page__image-wrapper{width:280px}.movie-page__title{font-size:36px}.movie-page__overview{font-size:16px}}@media (width<=480px){.movie-page{padding:20px}.movie-page__header{flex-direction:column;gap:24px}.movie-page__image-wrapper{width:100%;max-width:320px;margin:0 auto}.movie-page__info{width:100%}.movie-page__title{font-size:30px}.movie-page__average,.movie-page__release-date{font-size:16px}.movie-page__genre,.movie-page__country{font-size:15px}.movie-page__description{margin-top:30px}.movie-page__overview{font-size:15px;line-height:1.6}.movie-page__actors-title,.movie-page__similar-title{margin-top:36px;font-size:24px}.movie-page__credits{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.movie-page__favorite{width:46px;height:46px}}.person-page{padding:40px}.person-page__back-button{margin-bottom:20px}.person-page__header{align-items:flex-start;gap:40px;margin-bottom:40px;display:flex}.person-page__image{border-radius:16px;flex-shrink:0;width:320px}.person-page__info{flex-direction:column;gap:16px;font-size:17px;display:flex}.person-page__name{color:#e5e5e5;margin-bottom:12px;font-size:42px;font-weight:700}.person-page__birthday,.person-page__deathday,.person-page__place,.person-page__known-for,.person-page__popularity{color:#aaa;line-height:1.6}.person-page__biography{margin-bottom:50px}.person-page__biography-title,.person-page__movies-title{color:#e5e5e5;margin-bottom:20px;font-size:30px;font-weight:700}.person-page__biography-text{color:#aaa;white-space:pre-line;font-size:17px;line-height:1.8}.person-page__movies{margin-top:40px}.person-page__movies-title{margin-bottom:24px}@media (width<=768px){.person-page{padding:30px}.person-page__header{gap:30px}.person-page__image{width:280px}.person-page__name{font-size:36px}}@media (width<=480px){.person-page{padding:20px}.person-page__header{flex-direction:column;align-items:center;gap:24px}.person-page__image{width:100%;max-width:320px}.person-page__info{width:100%;font-size:15px}.person-page__name{font-size:30px}.person-page__biography{margin-bottom:36px}.person-page__biography-title,.person-page__movies-title{font-size:24px}.person-page__biography-text{font-size:15px;line-height:1.6}.person-page__movies{margin-top:30px}}.search-page{padding:30px}.search-page__title{color:#e5e5e5;margin-bottom:30px;font-size:36px;font-weight:700}@media (width<=768px){.search-page{padding:30px}.search-page__title{font-size:32px}}@media (width<=480px){.search-page{padding:20px}.search-page__title{margin-bottom:20px;font-size:28px}}.upcoming-page{padding:40px}.upcoming-page__title{color:#e5e5e5;margin-bottom:30px;font-size:36px;font-weight:700}.upcoming-page__empty{color:#aaa;text-align:center;margin-top:40px;font-size:20px}.upcoming-page__pagination{margin-top:30px}@media (width<=768px){.upcoming-page{padding:30px}.upcoming-page__title{font-size:32px}}@media (width<=480px){.upcoming-page{padding:20px}.upcoming-page__title{margin-bottom:20px;font-size:28px}.upcoming-page__empty{margin-top:30px;font-size:17px}.upcoming-page__pagination{margin-top:24px}}.movie-filters{background-color:#1f1f1f;border:1px solid #333;border-radius:12px;grid-template-columns:repeat(3,1fr) auto;align-items:end;gap:20px;margin-bottom:30px;padding:20px;display:grid}.movie-filters__field{flex-direction:column;gap:8px;display:flex}.movie-filters__label{color:#aaa;font-size:14px;font-weight:500}.movie-filters__input,.movie-filters__select{color:#e5e5e5;background-color:#181818;border:1px solid #333;border-radius:8px;outline:none;width:100%;min-height:42px;padding:8px 12px;font-size:14px;transition:border-color .2s}.movie-filters__input:focus,.movie-filters__select:focus{border-color:#aaa}.movie-filters__submit{color:#000;cursor:pointer;background-color:#fff;border:1px solid #aaa;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:12px 24px;font-size:15px;font-weight:500;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.movie-filters__submit:hover{color:#fff;background-color:#000;border-color:#fff}.movie-filters__error{color:#e57373;margin-top:4px;font-size:12px}@media (width<=768px){.movie-filters{grid-template-columns:repeat(2,1fr)}.movie-filters__submit{width:100%}}@media (width<=480px){.movie-filters{grid-template-columns:1fr;gap:16px;padding:16px}.movie-filters__submit{width:100%}}.discover-page{padding:40px}.discover-page__title{color:#e5e5e5;margin-bottom:30px;font-size:36px;font-weight:700}.discover-page__results{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px;margin-top:30px;display:grid}.discover-page__load-more{color:#fff;cursor:pointer;background-color:#1f1f1f;border:1px solid #333;border-radius:8px;margin:32px auto 0;padding:12px 24px;font-size:15px;font-weight:500;transition:background-color .2s,border-color .2s,opacity .2s;display:block}.discover-page__load-more:hover:not(:disabled){background-color:#252525;border-color:#fff}.discover-page__load-more:disabled{opacity:.6;cursor:default}@media (width<=768px){.discover-page{padding:30px}.discover-page__results{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:20px}}@media (width<=480px){.discover-page{padding:20px}.discover-page__title{margin-bottom:20px;font-size:28px}.discover-page__results{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}*{margin:0;padding:0}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#e5e5e5;background:#181818;margin:0;font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;background:0 0;border:none}img{max-width:100%;display:block}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,h5,h6,p{margin:0}.movie-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px;display:grid}@media (width<=768px){.movie-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:20px}}@media (width<=480px){.movie-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
