:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}body{background-color:#fff;margin:0;padding:0}.app{max-width:1200px;margin:0 auto;padding:2rem;text-align:center;background-color:#fff;min-height:100vh}.app h1{color:#333;margin-bottom:.5rem}.app p{color:#666;margin-bottom:2rem}.form{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem;flex-wrap:wrap}.username-input{padding:.75rem 1rem;font-size:1rem;border:2px solid #ddd;border-radius:8px;min-width:250px;transition:border-color .3s}.username-input:focus{outline:none;border-color:#007bff}.username-input:disabled{background-color:#f5f5f5;cursor:not-allowed}button{padding:.75rem 1.5rem;font-size:1rem;background-color:#007bff;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s}button:hover:not(:disabled){background-color:#0056b3}button:disabled{background-color:#ccc;cursor:not-allowed}.error{background-color:#fee;border:1px solid #fcc;color:#c00;padding:1rem;border-radius:8px;margin:1rem 0;max-width:600px;margin-left:auto;margin-right:auto}.loading{background-color:#e6f3ff;border:1px solid #b3d9ff;color:#06c;padding:1.5rem;border-radius:8px;margin:1rem 0;max-width:600px;margin-left:auto;margin-right:auto}.loading p{margin:.5rem 0}.results{margin-top:2rem;text-align:left}.results h2{text-align:center;color:#333;margin-bottom:1.5rem}.controls{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem;flex-wrap:wrap}.control-group{display:flex;flex-direction:column;gap:.4rem;min-width:170px}.control-group label{font-size:.85rem;color:#555;text-align:left}.control-group input,.control-group select{padding:.6rem .75rem;font-size:.95rem;border:1px solid #dee2e6;border-radius:8px;background:#fff;color:#212529}.control-group input:focus,.control-group select:focus{outline:none;border-color:#007bff}.results-container{display:flex;gap:2rem;align-items:flex-start}.movies-list{display:flex;flex-direction:column;gap:1rem;flex:1}.empty-results{background:#fff3cd;border:1px solid #ffe69c;color:#664d03;padding:1rem;border-radius:10px;text-align:center}.movie-item-link{text-decoration:none;color:inherit;display:block}.movie-item{display:flex;align-items:flex-start;background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:1rem;transition:all .3s;gap:1rem;cursor:pointer}.movie-item-link:hover .movie-item{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px);border-color:#007bff}.movie-rank{font-size:1.2rem;font-weight:700;color:#007bff;min-width:50px;text-align:center;flex-shrink:0}.movie-poster{flex-shrink:0}.movie-poster img{width:80px;height:auto;border-radius:8px;box-shadow:0 2px 8px #00000026}.movie-details{flex:1}.movie-title{margin:0 0 .5rem;font-size:1.1rem}.movie-director{margin-bottom:.5rem;color:#666;font-style:italic;font-size:.95rem}.movie-stats{display:flex;gap:1rem;flex-wrap:wrap}.stat{background:#e9ecef;padding:.25rem .75rem;border-radius:20px;font-size:.9rem;color:#495057}.stat.highlight{background:#007bff;color:#fff;font-weight:700}.recommendation-sidebar{width:300px;flex-shrink:0}.recommendation-card-link{text-decoration:none;color:inherit;display:block}.recommendation-card{background:#fff;border:2px solid #007bff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 12px #007bff1a;position:sticky;top:2rem;cursor:pointer;transition:all .3s}.recommendation-card-link:hover .recommendation-card{transform:translateY(-2px);box-shadow:0 6px 16px #007bff33;border-color:#0056b3}.recommendation-card h3{margin:0 0 1rem;color:#007bff;text-align:center;font-size:1.2rem}.rec-poster{text-align:center;margin-bottom:1rem}.rec-poster img{width:120px;height:auto;border-radius:8px;box-shadow:0 4px 12px #0003}.rec-details{text-align:center}.rec-title{margin:0 0 .5rem;font-size:1.1rem}.rec-director{margin:0 0 1rem;color:#666;font-style:italic;font-size:.95rem}.rec-stats{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.rec-stat{background:#f8f9fa;padding:.5rem;border-radius:8px;font-size:.9rem;color:#495057}.rec-stat.highlight{background:#007bff;color:#fff;font-weight:700}.shuffle-btn{width:100%;padding:.75rem;background:#28a745;color:#fff;border:none;border-radius:8px;font-size:.95rem;cursor:pointer;transition:background-color .3s;margin-top:1rem}.shuffle-btn:hover{background:#218838}.pagination-info{text-align:center;color:#666;margin-bottom:1rem;font-size:.95rem}.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:2rem;padding:1rem}.pagination-btn{padding:.5rem 1rem;font-size:.9rem;background-color:#f8f9fa;color:#333;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;transition:all .3s;min-width:40px}.pagination-btn:hover:not(:disabled){background-color:#007bff;color:#fff;border-color:#007bff}.pagination-btn:disabled{background-color:#e9ecef;color:#6c757d;border-color:#dee2e6;cursor:not-allowed}.pagination-btn.active{background-color:#007bff;color:#fff;border-color:#007bff;font-weight:700}.pagination-pages{display:flex;gap:.25rem}@media(max-width:768px){.form{flex-direction:column;align-items:center}.username-input{min-width:unset;width:100%;max-width:300px}.results-container{flex-direction:column;gap:1.5rem}.controls{flex-direction:column;align-items:center}.control-group{width:100%;max-width:300px}.recommendation-sidebar{width:100%;order:-1}.recommendation-card{position:relative;top:unset}.movie-item{flex-direction:column;text-align:center;align-items:center}.movie-poster img{width:120px}.movie-details{margin-top:.5rem}.movie-stats{justify-content:center}.pagination{padding:.5rem;gap:.25rem}.pagination-btn{padding:.4rem .6rem;font-size:.8rem;min-width:35px}.pagination-info{font-size:.85rem}}
