.app{min-height:100vh;display:flex;flex-direction:column;background-color:var(--background-dark)}.main-content{flex:1;padding-top:60px}.header{position:fixed;top:0;left:0;right:0;background-color:var(--primary-color);border-bottom:1px solid var(--border-color);z-index:1000;height:60px}.header__content{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 var(--spacing-md)}.header__left{flex-shrink:0}.header__logo{display:flex;flex-direction:column;text-decoration:none;color:var(--text-primary)}.header__logo h1{font-size:1.75rem;font-weight:700;font-family:var(--font-family);font-style:italic;color:var(--text-primary);margin:0;line-height:1;transition:color .2s ease}.header__logo:hover h1{color:var(--accent-color)}.header__logo span{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;font-weight:500}.header__center{flex:1;max-width:500px;margin:0 var(--spacing-xl)}.header__right{flex-shrink:0;display:flex;align-items:center;gap:var(--spacing-md)}.header__sidebar-toggle{display:none}.header__nav{display:flex;gap:var(--spacing-lg)}.header__nav-link{color:var(--text-secondary);text-decoration:none;font-family:var(--font-family);font-weight:700;font-size:var(--font-size-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:all var(--transition-fast)}.header__nav-link:hover,.header__nav-link.active{color:var(--accent-color)}.header__sort-toggle{color:var(--text-secondary);font-weight:500;padding:var(--spacing-sm) var(--spacing-sm);border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer}.header__sort-toggle:hover{color:var(--text-primary);background-color:var(--secondary-color-color)}.header__sort-controls{display:flex;align-items:center;gap:var(--spacing-sm)}.header__sort-dropdown{position:relative}.header__sort-dropdown-menu{position:absolute;top:100%;left:0;background-color:var(--secondary-color);border:1px solid var(--border-color);border-radius:var(--radius-md);z-index:1000;min-width:100%;margin-top:4px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s ease-out}.header__sort-dropdown:hover .header__sort-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.header__sort-dropdown-item{width:100%;background:transparent;border:none;color:var(--text-secondary);font-family:var(--font-family);font-weight:700;font-size:var(--font-size-sm);padding:var(--spacing-sm);border-radius:0;transition:all var(--transition-fast);cursor:pointer;text-align:left;display:block;transform:translate(0)}.header__sort-dropdown-item:hover{color:var(--accent-color);transform:translate(2px)}.header__sort-dropdown-item.active{color:var(--text-secondary)}.header__sort-dropdown-item.active:hover{color:var(--accent-color);transform:translate(2px)}.header__sort-select{background:transparent;border:none;color:var(--text-secondary);font-family:var(--font-family);font-weight:700;font-size:var(--font-size-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;min-width:120px}.header__sort-select:hover{color:var(--accent-color)}.header__sort-select:focus{outline:none;color:var(--accent-color)}.header__sort-button{background:transparent;border:none;color:var(--text-secondary);font-family:var(--font-family);font-weight:700;font-size:var(--font-size-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;min-width:auto;transform:rotate(0)}.header__sort-button:hover{color:var(--accent-color);transform:scale(1.1)}.header__search{position:relative;margin-left:calc(var(--spacing-md) * -.25)}.header__search-input{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--secondary-color);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--font-size-sm);width:200px;transition:border-color var(--transition-fast)}.header__search-input:focus{outline:none;border-color:var(--accent-color)}.header__search-input::placeholder{color:var(--text-secondary)}.header__search-clear{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary);font-size:var(--font-size-lg);cursor:pointer;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast)}.header__search-clear:hover{color:var(--accent-color)}@media (max-width: 768px){.header{height:105px;min-height:105px;padding-top:var(--spacing-md);padding-bottom:var(--spacing-md);display:flex;flex-direction:column;align-items:stretch;width:100%}.header__content{flex-direction:column;align-items:center;height:auto;width:100%;gap:var(--spacing-xs)}.header__left{align-self:center;width:100%;margin-bottom:var(--spacing-xs)}.header__logo{align-items:center;text-align:center;width:100%}.header__logo h1{text-align:center;width:100%;margin:0}.header__options{display:flex;flex-direction:column;align-items:center;width:100%;gap:var(--spacing-xs)}.header__sort-controls,.header__search{width:100%;margin-left:0}.main-content{padding-top:120px}}@media (min-width: 769px){.header__content{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 var(--spacing-md)}.header__options{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-md)}.header__right{flex-direction:row;align-items:center;gap:var(--spacing-md)}.header__sort-controls,.header__search{width:auto;margin-left:calc(var(--spacing-md) * -.25)}}.layout{display:grid;grid-template-columns:280px 1fr;gap:var(--spacing-xl);min-height:calc(100vh - 60px);transition:grid-template-columns var(--transition-normal)}.layout.sidebar-collapsed{grid-template-columns:1fr}.layout.sidebar-collapsed .sidebar{display:none}.sidebar{background-color:var(--background-light);border-right:1px solid var(--border-color);padding:var(--spacing-sm) var(--spacing-lg);overflow-y:auto;position:sticky;top:80px;height:calc(100vh - 80px);transition:all var(--transition-normal)}.content{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-lg) 0;overflow-y:auto;position:relative}.layout.sidebar-collapsed .content{padding-left:var(--spacing-lg)}@media (max-width: 1024px){.layout{grid-template-columns:1fr;gap:var(--spacing-lg)}.sidebar{position:fixed;left:-280px;top:60px;width:280px;height:calc(100vh - 60px);z-index:1000;transition:left var(--transition-normal)}.sidebar.open{left:0}.content{padding:var(--spacing-md)}}.movie-grid{display:grid;grid-template-rows:repeat(5,1fr);grid-auto-flow:column;gap:var(--spacing-md);padding:var(--spacing-sm) 0;justify-content:center;min-height:calc(5 * (240px + var(--spacing-md)))}.movie-grid--single-page{grid-template-rows:none;grid-auto-flow:row;grid-template-columns:repeat(auto-fit,minmax(160px,200px));min-height:auto;justify-content:center}@media (max-width: 768px){.movie-grid{grid-template-rows:repeat(5,1fr);grid-auto-flow:column;gap:var(--spacing-md);min-height:calc(5 * (225px + var(--spacing-md)))}.movie-grid--single-page{grid-template-columns:repeat(auto-fit,minmax(150px,180px))}}.movie-card{background-color:transparent;border-radius:0;overflow:hidden;cursor:pointer;position:relative;transition:transform .3s ease}.movie-card:hover{transform:scale(1.05)}.movie-card__poster-container{width:100%;aspect-ratio:2/3;background-color:var(--border-color);position:relative;overflow:hidden}.movie-card__poster{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .2s ease}.movie-card__poster.loaded{opacity:1}.movie-card__content{padding:var(--spacing-sm) 0;text-align:center}.movie-card__title{font-size:var(--font-size-sm);font-weight:600;margin-bottom:var(--spacing-xs);line-height:1.3;color:var(--text-primary);font-family:var(--font-family)}.movie-card__year{color:var(--text-secondary);font-size:var(--font-size-xs)}.movie-card__rating{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.movie-card__rating-score{background-color:var(--accent-color);color:var(--text-primary);padding:2px 6px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600}.movie-card__services{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.movie-card__service{background-color:var(--background-dark);color:var(--text-secondary);padding:2px 6px;border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.search-container{position:relative;margin-bottom:var(--spacing-lg)}.search-input{width:100%;padding:var(--spacing-md) var(--spacing-lg);padding-left:48px;background-color:var(--secondary-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--font-size-base);transition:border-color var(--transition-fast)}.search-input:focus{border-color:var(--accent-color)}.search-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none;width:16px;height:16px}.filters-section,.filter-group{margin-bottom:var(--spacing-lg)}.filter-group__label{display:block;font-size:var(--font-size-sm);font-weight:700;margin-bottom:var(--spacing-sm);color:var(--text-secondary)}.filter-group__header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;margin-bottom:var(--spacing-xs);transition:all var(--transition-fast)}.filter-group__header:hover,.filter-group__header:hover .filter-group__label{color:var(--accent-color)}.filter-group__toggle{font-size:var(--font-size-xs);transition:transform var(--transition-fast);color:var(--text-secondary)}.filter-group__toggle.collapsed{transform:rotate(-90deg)}.filter-group__content{margin-left:var(--spacing-sm)}.filter-clear{margin-top:var(--spacing-sm);width:100%}.filter-clear:hover{background-color:var(--border-color);color:var(--text-primary)}.filters__footer{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);text-align:center}.filters__footer .btn{width:100%;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--primary-color);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.filters__footer .btn:hover{background-color:var(--border-color);color:var(--text-primary)}.filter-checkbox{display:flex;align-items:center;margin-bottom:var(--spacing-xs);cursor:pointer;transition:all var(--transition-fast)}.filter-checkbox:hover{color:var(--accent-color)}.filter-checkbox input[type=checkbox]{display:none}.filter-checkbox label{font-size:var(--font-size-sm);color:var(--text-primary);cursor:pointer;transition:color var(--transition-fast)}.filter-checkbox:hover label{color:var(--accent-color)}.filter-checkbox input[type=checkbox]:checked+label{color:var(--accent-color)}.filter-checkbox[data-service="Apple TV+"]:hover,.filter-checkbox[data-service="Apple TV+"]:hover label,.filter-checkbox[data-service="Apple TV+"] input[type=checkbox]:checked+label{color:#a6a6a6}.filter-checkbox[data-service="Disney+"]:hover,.filter-checkbox[data-service="Disney+"]:hover label,.filter-checkbox[data-service="Disney+"] input[type=checkbox]:checked+label{color:#4a90e2}.filter-checkbox[data-service="HBO Max"]:hover,.filter-checkbox[data-service="HBO Max"]:hover label,.filter-checkbox[data-service="HBO Max"] input[type=checkbox]:checked+label{color:#a855f7}.filter-checkbox[data-service=Hulu]:hover,.filter-checkbox[data-service=Hulu]:hover label,.filter-checkbox[data-service=Hulu] input[type=checkbox]:checked+label{color:#1ce783}.filter-checkbox[data-service=Netflix]:hover,.filter-checkbox[data-service=Netflix]:hover label,.filter-checkbox[data-service=Netflix] input[type=checkbox]:checked+label{color:#e50914}.filter-checkbox[data-service="Paramount+"]:hover,.filter-checkbox[data-service="Paramount+"]:hover label,.filter-checkbox[data-service="Paramount+"] input[type=checkbox]:checked+label{color:#3b82f6}.filter-checkbox[data-service=Peacock]:hover,.filter-checkbox[data-service=Peacock]:hover label,.filter-checkbox[data-service=Peacock] input[type=checkbox]:checked+label{background:linear-gradient(45deg,#ff6b35,#f7931e,#ffd23f,#009739,#09c,#9a4c95);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.range-slider{width:95%;margin:var(--spacing-md) 0}.range-slider__track{height:4px;background-color:var(--border-color);border-radius:2px;position:relative}.range-slider__fill{height:100%;background-color:var(--accent-color);border-radius:2px;position:absolute}.range-slider__thumb{width:10px;height:20px;background-color:var(--accent-color);border-radius:6px;position:absolute;top:50%;transform:translateY(-50%);cursor:pointer;transition:transform var(--transition-fast)}.range-slider__thumb:hover{transform:translateY(-50%) scale(1.1)}.range-slider__values{display:flex;justify-content:space-between;margin-top:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--text-secondary);width:105%}.results-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs);padding:var(--spacing-xs) 0;background-color:var(--background-light);border-radius:var(--radius-md)}.results-count{font-size:var(--font-size-sm);color:var(--text-secondary)}.sort-controls{display:flex;align-items:center;gap:var(--spacing-sm)}.sort-select{background-color:var(--secondary-color);border:1px solid var(--border-color);color:var(--text-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.sort-button{background-color:var(--secondary-color);border:1px solid var(--border-color);color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.sort-button:hover{background-color:var(--border-color);color:var(--text-primary)}.sort-button.active{background-color:var(--accent-color);color:var(--text-primary);border-color:var(--accent-color)}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-xl)}.pagination-button{background-color:var(--primary-color);border:1px solid var(--border-color);color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.pagination-button:hover:not(:disabled){background-color:var(--border-color)}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-button.active{background-color:var(--accent-color);border-color:var(--accent-color)}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:9999}.loading-content{background-color:var(--background-light);padding:var(--spacing-xl);border-radius:var(--radius-lg);text-align:center}.loading-spinner{margin-bottom:var(--spacing-md)}.empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--text-secondary)}.empty-state__icon{font-size:4rem;margin-bottom:var(--spacing-lg);opacity:.5}.empty-state__title{font-size:var(--font-size-xl);margin-bottom:var(--spacing-md);color:var(--text-primary)}.empty-state__message{font-size:var(--font-size-base);margin-bottom:var(--spacing-lg)}.mobile-menu-toggle{display:block;background:none;border:none;color:var(--text-primary);font-size:var(--font-size-xl);cursor:pointer;transition:all var(--transition-normal)}.mobile-menu-toggle:hover{color:var(--accent-color)}@media (max-width: 1024px){.mobile-menu-toggle{display:block}}.mobile-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:999;opacity:0;visibility:hidden;transition:all var(--transition-slow);display:none}@media (max-width: 1024px){.mobile-overlay{display:block}}.mobile-overlay.open{opacity:1;visibility:visible}.pagination-ellipsis{color:var(--text-secondary);padding:var(--spacing-sm) var(--spacing-md)}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.movie-details{padding:var(--spacing-xl) 0}.movie-details__hero{display:grid;grid-template-columns:300px 1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.movie-details__poster{flex-shrink:0;width:300px;height:450px}.movie-details__poster-img{width:100%;height:100%;object-fit:cover;border-radius:0}.movie-details__info{display:flex;flex-direction:column;gap:var(--spacing-lg)}.movie-details__title{font-size:var(--font-size-3xl);margin:0;color:var(--text-primary)}.movie-details__meta{display:flex;gap:var(--spacing-md);color:var(--text-secondary);font-size:var(--font-size-sm)}.movie-details__overview{font-size:var(--font-size-base);line-height:1.6;color:var(--text-primary);margin:0}.movie-details__ratings{display:flex;gap:var(--spacing-lg)}.movie-details__rating-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.movie-details__rating-label{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.movie-details__rating-score{background-color:var(--accent-color);color:var(--text-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-weight:600;font-size:var(--font-size-sm)}.movie-details__bottom-section{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg)}.movie-details__streaming h3{margin-bottom:var(--spacing-sm);color:var(--text-primary)}.movie-details__services{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.movie-details__service-link{background-color:var(--secondary-color);color:var(--text-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);text-decoration:none;font-size:var(--font-size-sm);transition:all var(--transition-fast)}.movie-details__service-link:hover{background-color:var(--accent-color);transform:translateY(-1px)}.movie-details__content{margin-bottom:var(--spacing-2xl)}.movie-details__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.movie-details__section h3{margin-bottom:var(--spacing-md);color:var(--text-primary)}.movie-details__section>div{margin-bottom:var(--spacing-sm);color:var(--text-secondary)}.movie-details__section strong{color:var(--text-primary)}.movie-details__trailer h3{margin-bottom:var(--spacing-md);color:var(--text-primary)}.movie-details__video-container{position:relative;width:100%;padding-bottom:56.25%;border-radius:var(--radius-lg);overflow:hidden}.movie-details__video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.movie-details__navigation{display:flex;justify-content:space-between;gap:var(--spacing-md)}@media (max-width: 768px){.movie-details__hero{grid-template-columns:1fr;gap:var(--spacing-lg)}.movie-details__poster{max-width:250px;margin:0 auto}.movie-details__title{font-size:var(--font-size-2xl)}.movie-details__ratings{flex-direction:column;gap:var(--spacing-md)}.movie-details__grid{grid-template-columns:1fr}.movie-details__navigation{flex-direction:column}}.about{padding:var(--spacing-2xl) 0}.about__content{max-width:800px;margin:0 auto}.about__content h1{color:var(--text-primary);margin-bottom:var(--spacing-lg)}.about__content h2{color:var(--text-primary);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md)}.about__content p{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-md)}.about__content ul{color:var(--text-secondary);margin-bottom:var(--spacing-lg);padding-left:var(--spacing-lg)}.about__content li{margin-bottom:var(--spacing-sm);line-height:1.6}.about__content strong{color:var(--text-primary)}.about__actions{margin-top:var(--spacing-2xl);text-align:center}.about .streaming-link{color:inherit;text-decoration:none;transition:color var(--transition-fast)}.about .streaming-link.netflix:hover{color:#e50914!important}.about .streaming-link.disney-plus:hover{color:#4a90e2!important}.about .streaming-link.hulu:hover{color:#1ce783!important}.about .streaming-link.hbo-max:hover{color:#a855f7!important}.about .streaming-link.paramount-plus:hover{color:#3b82f6!important}.about .streaming-link.apple-tv:hover{color:#fff!important}.about .streaming-link.peacock:hover{background:linear-gradient(45deg,#ff6b35,#f7931e,#ffd23f,#009739,#09c,#9a4c95)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important}.about .external-link{color:inherit;text-decoration:none;transition:color var(--transition-fast)}.about .external-link:hover{color:var(--accent-color)}.streaming-service-link{transition:color var(--transition-fast)}.streaming-service-link.netflix:hover{color:#e50914!important}.streaming-service-link.disney:hover{color:#4a90e2!important}.streaming-service-link.hulu:hover{color:#1ce783!important}.streaming-service-link.hbo:hover,.streaming-service-link.hbomax:hover{color:#a855f7!important}.streaming-service-link.paramount:hover{color:#3b82f6!important}.streaming-service-link.apple:hover,.streaming-service-link.appletv:hover{color:#fff!important}.streaming-service-link.peacock:hover{background:linear-gradient(45deg,#ff6b35,#f7931e,#ffd23f,#009739,#09c,#9a4c95)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #151515;--secondary-color: #202020;--accent-color: #4a9eff;--text-primary: #ffffff;--text-secondary: #b3b3b3;--text-muted: #808080;--border-color: #404040;--background-dark: #151515;--background-light: #151515;--card-bg: #2d2d2d;--font-family: -apple-system, BlinkMacSystemFont, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--text-primary);background-color:var(--background-dark);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;margin-bottom:var(--spacing-md);color:var(--text-primary)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}h5{font-size:var(--font-size-base)}h6{font-size:var(--font-size-sm)}p{margin-bottom:var(--spacing-md);color:var(--text-secondary)}a{color:var(--accent-color);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:#66b3ff}button{font-family:inherit;font-size:inherit;border:none;background:none;cursor:pointer;transition:all var(--transition-fast)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:500;text-decoration:none;transition:all var(--transition-fast);cursor:pointer;font-size:var(--font-size-sm);border:1px solid transparent}.btn-primary{background-color:var(--accent-color);color:var(--text-primary)}.btn-primary:hover{background-color:#66b3ff}.btn-secondary{background-color:var(--card-bg);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background-color:var(--border-color)}.btn-ghost{background-color:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.btn-ghost:hover{background-color:var(--border-color);color:var(--text-primary)}input,select,textarea{font-family:inherit;font-size:inherit;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--card-bg);color:var(--text-primary);transition:border-color var(--transition-fast)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-color)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.mb-5{margin-bottom:var(--spacing-xl)}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:var(--spacing-lg)}.mt-5{margin-top:var(--spacing-xl)}.p-0{padding:0}.p-1{padding:var(--spacing-xs)}.p-2{padding:var(--spacing-sm)}.p-3{padding:var(--spacing-md)}.p-4{padding:var(--spacing-lg)}.p-5{padding:var(--spacing-xl)}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.grid{display:grid}.gap-1{gap:var(--spacing-xs)}.gap-2{gap:var(--spacing-sm)}.gap-3{gap:var(--spacing-md)}.gap-4{gap:var(--spacing-lg)}.gap-5{gap:var(--spacing-xl)}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.w-full{width:100%}.h-full{height:100%}.rounded{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-lg{border-radius:var(--radius-lg)}@media (max-width: 768px){.container{padding:0 var(--spacing-sm)}.hidden-mobile{display:none}}@media (min-width: 769px){.hidden-desktop{display:none}}.loading{opacity:.6;pointer-events:none}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-color);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center;padding:var(--spacing-2xl)}.error-container h1{color:var(--accent-color);margin-bottom:var(--spacing-lg)}.error-container p{color:var(--text-secondary);margin-bottom:var(--spacing-xl)}
