:root{--bg-color:#0a0a0f;--surface-color:#1a1a1a;--surface-2:#242424;--accent-color:#ff2b4a;--text-primary:#fff;--text-muted:#888;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5;overflow-x:hidden}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}img{max-width:100%;display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:var(--surface-2);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.hero-carousel{width:100%;height:560px;position:relative;overflow:hidden}.hero-slide{opacity:0;visibility:hidden;width:100%;height:100%;transition:opacity .8s ease-in-out,visibility .8s;position:absolute;top:0;left:0}.hero-slide.active{opacity:1;visibility:visible}.hero-backdrop{object-fit:cover;object-position:center 20%;width:100%;height:100%;transition:transform 6s cubic-bezier(.25,.46,.45,.94);transform:scale(1.05)}.hero-slide.active .hero-backdrop{transform:scale(1)}.hero-backdrop.fallback{background-color:#080808}.hero-gradient{background:linear-gradient(#00000045 0%,#0000 20%,#0006 50%,#000c 75%,#0a0a0f 100%);width:100%;height:100%;position:absolute;top:0;left:0}.hero-vignette{background:linear-gradient(90deg,#00000080 0%,#0000 40%);width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{z-index:10;opacity:0;max-width:800px;transition:transform .8s cubic-bezier(.25,.46,.45,.94) .3s,opacity .8s .3s;position:absolute;bottom:42px;left:24px;right:24px;transform:translateY(20px)}.hero-slide.active .hero-content{opacity:1;transform:translateY(0)}.hero-badges{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.badge{-webkit-backdrop-filter:blur(4px);background-color:#00000073;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:6px;padding:5px 10px;display:flex}.badge.solid{background-color:#fff3;border-color:#ffffff59}.badge span{color:#fff;font-size:12px;font-weight:700}.hero-title{color:#fff;letter-spacing:-.5px;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:10px;font-size:32px;font-weight:900;line-height:1.15;display:-webkit-box;overflow:hidden}@media (width>=768px){.hero-title{font-size:48px}}.hero-overview{color:#ffffff8c;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:600px;margin-bottom:20px;font-size:14px;font-weight:400;line-height:1.5;display:-webkit-box;overflow:hidden}.hero-actions{gap:12px;display:flex}.btn{border-radius:12px;align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:700;transition:transform .2s,opacity .2s;display:flex}.btn:active{transform:scale(.95)}.btn:hover{opacity:.9}.btn-primary{color:#000;background-color:#fff}.btn-outline{color:#fff;-webkit-backdrop-filter:blur(4px);background-color:#0000;border:1.5px solid #ffffff4d}.hero-indicators{z-index:10;gap:5px;display:flex;position:absolute;bottom:24px;right:24px}.indicator{cursor:pointer;background-color:#ffffff40;border-radius:2px;width:6px;height:3px;transition:width .35s cubic-bezier(.215,.61,.355,1),background-color .3s}.indicator.active{background-color:#fff;width:22px}.hero-shimmer{background:linear-gradient(90deg, var(--surface-2) 25%, var(--surface-color) 50%, var(--surface-2) 75%);background-size:200% 100%;width:100%;height:560px;animation:2s infinite shimmer}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (width<=768px){.hero-carousel,.hero-shimmer{height:400px}.hero-title{margin-bottom:8px;font-size:24px}.hero-overview{-webkit-line-clamp:3;margin-bottom:16px;font-size:13px}.hero-content{bottom:30px;left:16px;right:16px}.hero-indicators{bottom:12px;right:16px}}.section-row{margin-bottom:24px}.section-header{align-items:center;gap:8px;margin-bottom:14px;padding:0 24px;display:flex}.section-icon{color:var(--accent-color)}.section-title{letter-spacing:-.3px;color:var(--text-primary);font-size:18px;font-weight:700}.section-scroll{scrollbar-width:none;margin-bottom:-20px;padding:0 24px 20px;overflow:auto hidden}.section-scroll::-webkit-scrollbar{display:none}.section-content{gap:12px;display:inline-flex}.movie-card{cursor:pointer;flex-shrink:0;width:140px;transition:transform .3s cubic-bezier(.215,.61,.355,1)}.movie-card:hover{transform:translateY(-8px)}.poster-container{background-color:var(--surface-color);border:1.5px solid #0000;border-radius:14px;width:140px;height:210px;margin-bottom:8px;transition:border-color .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 4px 12px #0003}.movie-card:hover .poster-container{border-color:#ffffff26;box-shadow:0 10px 24px #ff2b4a26}.movie-poster{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.25,.46,.45,.94)}.movie-poster.fallback{background-color:var(--surface-2);color:var(--text-muted);justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.movie-card:hover .movie-poster{transform:scale(1.1)}.poster-overlay{opacity:0;background:linear-gradient(#0006 0%,#0000 30% 70%,#000c 100%);flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:8px;transition:opacity .3s;display:flex;position:absolute;top:0;left:0}.movie-card:hover .poster-overlay{opacity:1}.rating-badge{-webkit-backdrop-filter:blur(4px);color:#fff;background-color:#0009;border-radius:8px;align-self:flex-end;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.movie-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;padding:0 4px;font-size:13px;font-weight:600;overflow:hidden}.shimmer-title{background-color:var(--surface-color);border-radius:6px;width:140px;height:18px;animation:2s infinite shimmer}.shimmer-card{background-color:var(--surface-color);border-radius:14px;flex-shrink:0;width:140px;height:210px;animation:2s infinite shimmer}@media (width<=768px){.section-header{margin-bottom:10px;padding:0 16px}.section-title{font-size:16px}.section-scroll{padding:0 16px 20px}.movie-card{width:110px}.poster-container{border-radius:10px;width:110px;height:165px}.shimmer-card{width:110px;height:165px}.shimmer-title{width:110px}}.detail-page{background-color:var(--background-color);min-height:100vh;padding-bottom:60px;position:relative}.back-button{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#0a0a0f99;border:1px solid #ffffff1a;position:absolute;top:24px;left:24px}.back-button:hover{background-color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-2px)}.detail-hero{width:100%;height:60vh;position:relative}.detail-backdrop{object-fit:cover;object-position:center 20%;width:100%;height:100%}.detail-backdrop.fallback{background-color:#080808}.detail-gradient{background:linear-gradient(#0a0a0f00 0%,#0a0a0fcc 70%,#0a0a0f 100%);width:100%;height:100%;position:absolute;top:0;left:0}.detail-content-container{z-index:10;gap:40px;max-width:1200px;margin:-120px auto 0;padding:0 40px;display:flex;position:relative}.detail-poster-wrapper{flex-shrink:0;width:250px}.detail-poster{border:1px solid #ffffff1a;border-radius:16px;width:100%;box-shadow:0 12px 32px #00000080}.detail-poster.fallback{background-color:var(--surface-2);height:375px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.detail-info{flex-grow:1;padding-top:20px}.detail-title{letter-spacing:-.02em;margin-bottom:16px;font-size:3rem;font-weight:800;line-height:1.1}.detail-meta{color:var(--text-secondary);flex-wrap:wrap;gap:20px;margin-bottom:24px;font-size:14px;font-weight:500;display:flex}.meta-item{align-items:center;gap:6px;display:flex}.meta-item.rating{color:#fff;font-weight:700}.detail-genres{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.genre-tag{background-color:var(--surface-color);color:var(--text-secondary);border:1px solid #ffffff1a;border-radius:20px;padding:6px 14px;font-size:13px;font-weight:600}.detail-overview{color:var(--text-secondary);max-width:800px;margin-bottom:40px;font-size:16px;line-height:1.6}.detail-actions{gap:16px;margin-bottom:40px;display:flex}.play-btn{gap:10px;padding:14px 28px;font-size:16px;transition:all .3s cubic-bezier(.25,.46,.45,.94);box-shadow:0 4px 16px #ff2b4a4d}.play-btn:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 8px 24px #ff2b4a80}.episodes-section{border-top:1px solid #ffffff0d;margin-top:48px;padding-top:32px}.season-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.episodes-section h2{font-size:1.5rem;font-weight:700}.season-selector{background-color:var(--surface-color);color:var(--text-color);cursor:pointer;border:1px solid #ffffff1a;border-radius:8px;outline:none;padding:8px 16px;font-family:Inter,sans-serif;font-size:14px;font-weight:600}.episodes-grid{gap:16px;display:grid}.episodes-grid.anime-episodes{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));margin-top:24px}.anime-episode{background-color:var(--surface-color);color:var(--text-color);cursor:pointer;border:1px solid #ffffff0d;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px;font-weight:600;transition:all .2s;display:flex}.anime-episode:hover{background-color:var(--surface-2);color:var(--primary-color);border-color:#fff3;transform:translateY(-2px)}.episodes-grid.tv-episodes{grid-template-columns:1fr}.tv-episode{text-align:left;cursor:pointer;background-color:#0000;border:1px solid #ffffff0d;border-radius:12px;align-items:center;transition:all .2s;display:flex;overflow:hidden}.tv-episode:hover,.tv-episode.active{background-color:var(--surface-color);border-color:#ffffff26}.tv-episode.active{border-left:4px solid var(--primary-color)}.tv-episode-img{background-color:var(--surface-2);flex-shrink:0;width:160px;height:90px}.tv-episode-img img{object-fit:cover;width:100%;height:100%}.fallback-img{width:100%;height:100%;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.tv-episode-info{flex-direction:column;gap:4px;padding:16px;display:flex}.ep-num{color:var(--primary-color);font-size:13px;font-weight:700}.ep-name{color:var(--text-color);font-size:16px;font-weight:600}.player-overlay{z-index:9999;background-color:#000;flex-direction:column;animation:.3s cubic-bezier(.4,0,.2,1) fadeIn;display:flex;position:fixed;inset:0}.player-header{z-index:10000;pointer-events:none;background:linear-gradient(#000c,#0000);justify-content:flex-end;align-items:center;gap:1rem;padding:1.5rem;display:flex;position:absolute;top:0;left:0;right:0}.player-header>*{pointer-events:auto}.server-selector{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;outline:none;padding:.5rem 1rem;font-family:inherit;font-size:.9rem;font-weight:500;transition:all .2s}.server-selector:hover{background:#ffffff26;border-color:#ffffff4d}.server-selector option{color:#fff;background-color:#0a0a0f}.player-close-btn{cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.player-close-btn:hover{background:var(--primary-color);transform:scale(1.1)}.player-container{aspect-ratio:16/9;width:100%;max-width:1600px;height:100%;max-height:900px}.player-iframe{border:none;width:100%;height:100%}@media (width<=768px){.detail-content-container{flex-direction:column;gap:24px;margin-top:-60px;padding:0 20px}.detail-poster-wrapper{width:140px;margin:0 auto}.detail-title{text-align:center;font-size:2rem}.detail-meta,.detail-genres,.detail-actions{justify-content:center}.detail-overview{text-align:center}.tv-episode{flex-direction:column}.tv-episode-img{width:100%;height:180px}.player-header{flex-direction:column-reverse;align-items:flex-end;padding:1rem}.player-close-btn{width:36px;height:36px}}.search-page{flex-direction:column;min-height:100vh;padding-top:100px;display:flex}.search-header{margin-bottom:24px;padding:0 4%}.search-input-container{align-items:center;width:100%;max-width:800px;margin:0 auto;display:flex;position:relative}.search-icon{color:var(--text-muted);position:absolute;left:20px}.search-input{background-color:var(--surface-color);color:#fff;border:1px solid #ffffff1a;border-radius:16px;width:100%;padding:20px 60px;font-size:1.2rem;font-weight:500;transition:all .3s;box-shadow:0 10px 30px #0000004d}.search-input:focus{border-color:var(--accent-color);background-color:var(--surface-2);outline:none;box-shadow:0 10px 40px #ff2b4a26}.search-input::placeholder{color:#ffffff4d}.clear-btn{color:var(--text-muted);transition:color .2s;position:absolute;right:20px}.clear-btn:hover{color:#fff}.search-tabs{scrollbar-width:none;justify-content:center;gap:12px;margin-bottom:30px;padding:0 4%;display:flex;overflow-x:auto}.search-tabs::-webkit-scrollbar{display:none}.tab-btn{color:var(--text-muted);white-space:nowrap;background-color:#0000;border:1px solid #ffffff1a;border-radius:20px;padding:8px 24px;font-size:.95rem;font-weight:600;transition:all .2s}.tab-btn:hover{color:#fff;border-color:#ffffff4d}.tab-btn.active{color:#000;background-color:#fff;border-color:#fff}.search-content{flex:1;padding:0 4% 60px}.search-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:24px;padding-top:10px;display:grid}@media (width>=768px){.search-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.search-card{cursor:pointer;flex-direction:column;gap:12px;transition:transform .3s cubic-bezier(.25,.46,.45,.94);display:flex}.search-card:hover{transform:translateY(-8px)}.search-card-img-wrapper{aspect-ratio:2/3;background-color:var(--surface-2);border-radius:12px;position:relative;overflow:hidden;box-shadow:0 8px 24px #0006}.search-card-img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.search-card-img-placeholder{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.search-card:hover .search-card-img{transform:scale(1.08)}.search-card-overlay{opacity:0;background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:flex;position:absolute;top:0;left:0}.search-card:hover .search-card-overlay{opacity:1}.search-card-rating{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:gold;background:#000000b3;border:1px solid #ffd7004d;border-radius:6px;padding:4px 8px;font-size:.8rem;font-weight:700;position:absolute;top:10px;right:10px}.search-card-info{flex-direction:column;gap:4px;display:flex}.search-card-title{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:600;overflow:hidden}.search-card-meta{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.search-card-type{text-transform:uppercase;letter-spacing:.5px;background:#ffffff1a;border-radius:4px;padding:2px 6px;font-size:.75rem}.search-loading,.search-empty{height:300px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.spinner{border:4px solid #ffffff1a;border-top-color:var(--accent-color);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-container{flex-direction:column;min-height:100vh;display:flex}.main-content{flex-grow:1}.navbar{z-index:100;justify-content:space-between;align-items:center;height:70px;padding:0 24px;transition:background-color .3s;display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(10px);background-color:#0a0a0fd9}.nav-brand{align-items:center;gap:12px;display:flex}.nav-logo{object-fit:cover;background-color:var(--surface-color);border-radius:10px;width:36px;height:36px}.nav-title{letter-spacing:-.3px;color:var(--text-primary);font-size:20px;font-weight:800}.nav-actions{align-items:center;gap:16px;display:flex}.icon-button{background-color:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background-color .2s;display:flex}.icon-button:hover{background-color:#fff3}@media (width<=768px){.navbar{height:60px;padding:0 16px}.nav-title{font-size:18px}.icon-button{width:36px;height:36px}}
