:root{--bg:#09070d;--panel:#15111d;--panel2:#201827;--text:#fff;--muted:#99929f;--pink:#f12058;--line:#29212f;--gold:#ffcd73;--safe-bottom:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}
body{min-height:100vh}
button,input{font:inherit}
.app{width:min(100%,520px);min-height:100vh;margin:auto;background:var(--bg);padding-bottom:calc(68px + var(--safe-bottom))}
.topbar{position:sticky;top:0;z-index:20;height:58px;display:flex;align-items:center;padding:0 15px;background:rgba(9,7,13,.96);backdrop-filter:blur(16px)}
.brand{font-size:21px;font-weight:900;letter-spacing:1px}
.brand em{font-style:normal;color:var(--pink)}
.top-actions{margin-left:auto;display:flex;gap:17px}
.icon-btn{border:0;background:none;color:#fff;padding:5px;font-size:22px}
.category-strip{display:flex;gap:25px;overflow:auto;padding:6px 16px 14px;scrollbar-width:none}
.category-strip::-webkit-scrollbar{display:none}
.category{position:relative;flex:none;color:#aaa3af;font-size:17px;border:0;background:none;padding:6px 1px}
.category.active{color:var(--pink);font-weight:800}
.category.active:after{content:"";position:absolute;left:18%;right:18%;height:3px;border-radius:3px;background:var(--pink);bottom:-5px}
.home-banner{position:relative;display:block;margin:0 14px 14px;height:176px;border-radius:15px;overflow:hidden;background:#1a1520;color:#fff}
.home-banner img{width:100%;height:100%;object-fit:cover;display:block}
.home-banner:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.5))}
.home-banner>span{position:absolute;z-index:2;right:10px;top:10px;padding:3px 7px;border-radius:5px;background:rgba(0,0,0,.55);font-size:10px}
.hero{margin:0 14px 16px;height:210px;border-radius:15px;overflow:hidden;position:relative;background:#1a1520}
.hero img{width:100%;height:100%;object-fit:cover}
.hero:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.85))}
.hero-copy{position:absolute;z-index:2;left:16px;right:16px;bottom:14px}
.hero-copy h2{margin:0 0 6px;font-size:23px}
.hero-copy p{margin:0;color:#ddd;font-size:13px}
.section{padding:0 14px 18px}
.section-title{display:flex;align-items:center;margin:0 0 12px;font-size:20px;font-weight:900}
.section-title span{margin-left:auto;color:#8f8795;font-size:13px;font-weight:400}
.more{margin-left:auto;border:0;background:none;color:#8f8795;font-size:13px;font-weight:400;padding:5px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px 10px}
.card{min-width:0}
.poster{position:relative;aspect-ratio:3/4.15;border-radius:9px;overflow:hidden;background:#1d1722}
.poster img{width:100%;height:100%;object-fit:cover}
.badge{position:absolute;left:5px;top:5px;padding:3px 6px;background:var(--pink);border-radius:5px;font-size:10px;font-weight:800}
.episode-count{position:absolute;right:5px;bottom:5px;padding:3px 5px;border-radius:4px;background:rgba(0,0,0,.62);font-size:10px}
.card h3{font-size:14px;margin:7px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card p{font-size:11px;margin:0;color:#88808d}
.load-more{display:block;margin:22px auto 4px;border:1px solid #362c3e;border-radius:20px;background:var(--panel);color:#b9b1bd;padding:10px 28px}
.load-more:disabled{opacity:.55}
.bottom-nav{position:fixed;z-index:30;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,520px);height:calc(62px + var(--safe-bottom));padding-bottom:var(--safe-bottom);display:grid;grid-template-columns:repeat(3,1fr);background:rgba(14,11,19,.97);border-top:1px solid var(--line)}
.ui-icon{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ui-icon.is-filled{fill:currentColor;stroke:currentColor}
.icon-only{display:grid;place-items:center}
.nav-item{border:0;background:none;color:#77717d;display:grid;place-content:center;justify-items:center;gap:3px;font-size:11px}
.nav-item .ui-icon{width:25px;height:25px}
.nav-item.active{color:var(--pink)}
.splash{position:fixed;inset:0;z-index:100;background:#000;display:grid;place-items:center;overflow:hidden}
.splash-slides{position:absolute;inset:0}
.splash-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s ease}
.splash-slide.active{opacity:1}
.skip{position:absolute;right:18px;top:calc(18px + env(safe-area-inset-top,0px));width:58px;height:58px;border:0;border-radius:50%;background:rgba(30,30,30,.78);color:#fff;font-size:16px}
.dots{position:absolute;bottom:36px;display:flex;gap:11px}
.dots i{width:8px;height:8px;border-radius:50%;background:#fff;transition:width .2s ease}
.dots i.active{width:28px;border-radius:8px;background:var(--pink)}
.ad-mask{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.82);display:grid;place-items:center;padding:18px}
.ad-box{position:relative;display:grid;place-items:center;width:100%;height:100%;pointer-events:none}
.ad-box img{display:block;max-width:100%;max-height:88vh;object-fit:contain;border-radius:20px;pointer-events:auto}
.page-head{height:52px;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:rgba(9,7,13,.97)}
.back{border:0;background:none;color:#fff;font-size:27px}
.page-title{font-size:18px;font-weight:800}
.detail-cover{height:340px;position:relative;overflow:hidden}
.detail-cover img{width:100%;height:100%;object-fit:cover}
.detail-cover:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,var(--bg))}
.detail-info{position:relative;margin-top:-80px;padding:0 18px 18px;z-index:2}
.detail-info h1{font-size:25px;margin:0 0 8px}
.chips{display:flex;gap:7px;flex-wrap:wrap}
.chip{color:#f4d9e0;background:#2d1720;border-radius:12px;padding:4px 9px;font-size:11px}
.description{color:#aaa2ad;line-height:1.65;font-size:14px}
.detail-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px 18px}
.action{border:0;border-radius:12px;background:var(--panel);color:#fff;padding:10px 4px;display:flex;align-items:center;justify-content:center;gap:6px}
.action .ui-icon{width:20px;height:20px}
.action.active{color:var(--pink)}
.episodes{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;padding:12px 16px}
.episode{height:42px;border:0;border-radius:8px;background:var(--panel2);color:#ddd}
.episode.active{background:var(--pink);color:#fff}
.player{height:65vh;background:#000;position:relative}
.player video{width:100%;height:100%;object-fit:contain;background:#000}
.player-tools{position:absolute;right:12px;bottom:72px;display:grid;gap:18px}
.tool{border:0;background:rgba(0,0,0,.4);width:48px;height:48px;border-radius:50%;color:#fff;font-size:11px}
.tool.active{color:var(--pink)}
.player-meta{position:absolute;left:16px;right:78px;bottom:28px}
.player-meta h3{margin:0 0 6px}
.player-meta p{margin:0;color:#ccc;font-size:13px}
.paywall{position:absolute;inset:0;display:grid;place-content:center;text-align:center;background:rgba(0,0,0,.78);padding:25px}
.primary{border:0;border-radius:22px;background:linear-gradient(90deg,#f02057,#ff647e);color:#fff;padding:12px 26px;font-weight:800}
.mine-head{padding:45px 20px 22px;background:linear-gradient(160deg,#29131e,#0a080d)}
.avatar{width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,#f24,#9147ff);display:grid;place-items:center;font-size:28px}
.mine-head h2{margin:10px 0 4px}
.mine-head p{color:#888;margin:0}
.assets{margin:0 14px 16px;padding:16px;border-radius:14px;background:linear-gradient(120deg,#382314,#1a1211);display:flex;justify-content:space-between;color:var(--gold)}
.mine-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:0 14px 16px;padding:14px 4px;border-radius:14px;background:var(--panel)}
.mine-stats span{text-align:center;color:#aaa;font-size:11px}
.mine-stats b{display:block;margin-bottom:5px;color:#fff;font-size:17px}
.menu{margin:0 14px;background:var(--panel);border-radius:14px;overflow:hidden}
.menu button{width:100%;height:54px;border:0;border-bottom:1px solid var(--line);background:none;color:#fff;text-align:left;padding:0 16px}
.empty{text-align:center;color:#7e7683;padding:70px 20px}
.loading{display:grid;place-content:center;height:55vh;color:#888}
.toast{position:fixed;z-index:200;left:50%;bottom:92px;transform:translateX(-50%);background:rgba(0,0,0,.82);border-radius:18px;padding:9px 16px;font-size:13px;white-space:nowrap}
.vip-head{margin:18px 14px;padding:24px 20px;border-radius:18px;background:linear-gradient(135deg,#4b291b,#21130f);color:var(--gold)}
.vip-head h1{margin:0 0 8px;font-size:23px}
.vip-head p{margin:0;color:#e8d5b6;font-size:13px}
.vip-products{display:grid;gap:12px;padding:0 14px}
.vip-products button{display:grid;grid-template-columns:1fr auto;align-items:center;text-align:left;padding:18px;border:1px solid #5e422f;border-radius:14px;background:var(--panel);color:#fff}
.vip-products span{grid-row:1/3;grid-column:2;color:var(--gold);font-size:22px;font-weight:800}
.vip-products small{color:#8f8795;margin-top:5px}
.category-strip{gap:28px;padding:24px 16px 18px}
.promo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px 12px;padding:10px 16px 24px}
.promo{text-decoration:none;color:#fff;text-align:center;min-width:0}
.promo img{width:100%;aspect-ratio:1;border-radius:14px;object-fit:cover;display:block}
.promo span{display:block;margin-top:7px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hot-title{justify-content:flex-start}
.hot-mark{position:relative;display:grid;place-items:center;width:30px;height:18px;margin-right:7px;border-radius:4px;background:linear-gradient(135deg,#dd173f,#fe5a7b);font-size:8px;font-weight:700;line-height:1;letter-spacing:0;color:#fff}
.hot-mark:after{content:"";position:absolute;left:9px;bottom:-3px;border:3px solid transparent;border-top-color:#ed315b;border-bottom:0}
.hot-title>.more{margin-left:auto}
.home-section{padding-top:8px}
.wide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}
.wide-card{min-width:0}
.wide-cover{position:relative;aspect-ratio:1.58;border-radius:12px;overflow:hidden;background:#17131b}
.wide-cover img{width:100%;height:100%;object-fit:cover;display:block}
.wide-badge{position:absolute;left:0;top:0;min-width:34px;padding:3px 6px;border-radius:0 0 6px 0;background:var(--pink);font-size:10px;font-style:normal;font-weight:700;line-height:1.2;text-align:center}
.wide-meta{position:absolute;left:7px;right:7px;bottom:7px;padding:3px 6px;border-radius:5px;background:rgba(0,0,0,.58);font-size:10px;color:#fff}
.wide-card h3{margin:7px 2px 0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.center-mask{position:fixed;inset:0;z-index:75;background:rgba(0,0,0,.84);display:grid;align-content:center;padding:48px 16px 80px}
.center-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 12px}
.center-item{text-decoration:none;color:#fff;text-align:center;min-width:0}
.center-item img{width:100%;aspect-ratio:1;border-radius:16px;object-fit:cover;display:block}
.center-item span{display:block;margin-top:7px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.center-close{position:absolute;right:16px;top:20px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.13);color:#fff;font-size:24px}
.guide-mask{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.68);display:grid;place-items:center;padding:26px}
.guide-card{width:min(100%,360px);min-height:260px;border-radius:25px;background:#181818;display:grid;place-items:center;align-content:center;gap:14px;text-align:center;padding:26px}
.guide-card img{width:82px;height:82px;border-radius:22px}
.guide-card h3{font-size:25px;margin:0}
.guide-card button{border:0;border-radius:24px;background:var(--pink);color:#fff;font-weight:800;padding:12px 45px}
.theater-tabs{display:flex;gap:28px;overflow:auto;padding:22px 16px 16px;scrollbar-width:none}
.theater-tabs button{flex:none;border:0;background:none;color:#555159;font-size:18px;font-weight:800;padding:0 0 8px}
.theater-tabs button.active{color:#fff}
.theater-promos{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:8px 16px 20px}
.theater-promos a{text-decoration:none;color:#fff;text-align:center;min-width:0}
.theater-promos img{width:100%;aspect-ratio:1;border-radius:15px;object-fit:cover;display:block}
.theater-promos span{display:block;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
.mode-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:0 16px 20px}
.mode-tabs button{border:1px solid #84203d;border-radius:6px;background:#171217;color:var(--pink);font-size:16px;padding:8px 2px}
.mode-tabs button.active{background:var(--pink);color:#fff}
.mode-tabs.is-loading button.active{opacity:.72}
.mine-page{background:#090909}
.mine-hero{position:relative;min-height:300px;padding:75px 20px 34px;text-align:center;background:linear-gradient(rgba(0,0,0,.62),rgba(0,0,0,.86)),url('/launch_splash.jpg') center 28%/cover}
.mine-hero>img{width:82px;height:82px;border-radius:50%;background:#202020}
.mine-hero h1{margin:12px 0 4px;font-size:23px}
.mine-hero p{margin:0;color:#aaa;font-size:15px}
.settings{position:absolute;right:16px;top:18px;border:0;background:none;color:#fff;font-size:28px}
.vip-entry{display:grid;width:calc(100% - 28px);margin:-22px 14px 14px;padding:17px;border:1px solid #6b5967;border-radius:16px;background:#141116;color:#fff;text-align:left;gap:7px;position:relative}
.vip-entry b{font-size:17px}
.vip-entry span{font-size:12px;color:#b9b2ba}
.mine-overview{display:grid;grid-template-columns:repeat(4,1fr);margin:0 14px 14px;background:#151217;border-radius:14px}
.mine-overview button{border:0;background:none;color:#ddd;padding:14px 3px;font-size:11px}
.mine-overview b{display:block;margin-top:6px;color:#fff;font-size:16px}
.mine-menu{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 14px 14px;padding:8px 0;background:#151217;border-radius:14px}
.mine-menu button{border:0;background:none;color:#ddd;padding:12px 3px;font-size:11px;display:grid;justify-items:center;gap:7px}
.mine-menu i{display:grid;place-items:center;width:36px;height:36px;border:1px solid #4a424c;border-radius:50%;background:#1d1920;color:#eee;font-style:normal}
.mine-menu i .ui-icon{width:19px;height:19px}
.service-menu{grid-template-columns:repeat(4,1fr)}
.extra-menu{grid-template-columns:repeat(3,1fr)}
.version{text-align:center;color:#555;margin:22px 0}
.player-page{height:100vh;background:#000;color:#fff;overflow:hidden}
.cinema{position:relative;width:100%;height:100%;background:#000;overflow:hidden}
.cinema:fullscreen,.cinema:-webkit-full-screen{width:100vw;height:100vh;height:100dvh}
.player-page.immersive{position:fixed;inset:0;z-index:9999;width:100vw;height:100vh;height:100dvh}
body.player-immersive{overflow:hidden}
.cinema video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}
.player-top{position:absolute;z-index:4;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;padding:18px 16px;background:linear-gradient(rgba(0,0,0,.72),transparent)}
.player-back,.speed{border:0;background:none;color:#fff}
.player-back{display:flex;align-items:center;gap:8px}
.player-back .ui-icon{width:27px;height:27px}
.player-back b{font-size:21px}
.speed{min-width:70px;padding:12px 15px;border:1px solid #555;border-radius:30px;font-size:18px;font-weight:800}
.cinema-meta{position:absolute;z-index:3;left:16px;right:16px;bottom:145px;text-shadow:0 1px 3px #000}
.cinema-meta h1{margin:0 0 12px;font-size:21px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cinema-meta p{margin:0 0 14px;font-size:15px}
.cinema-meta span{font-size:14px}
.cinema-meta input{display:block;width:100%;accent-color:#fff;margin-top:10px}
.episode-bar{position:absolute;z-index:4;left:18px;right:56px;bottom:38px;height:62px;border:0;border-radius:14px;background:#202020;color:#fff;padding:0 18px;font-size:17px;display:flex;align-items:center;gap:10px}
.episode-bar .ui-icon{width:20px;height:20px}.episode-bar b{margin-left:auto;font-size:24px;font-weight:400}
.fullscreen{position:absolute;z-index:4;right:14px;bottom:45px;width:36px;height:48px;border:1px solid #aaa;border-radius:9px;background:#141414;color:#fff}
.fullscreen .ui-icon{width:20px;height:20px}
.episode-drawer{position:fixed;z-index:10;left:50%;bottom:0;width:min(100%,520px);max-height:72vh;transform:translate(-50%,105%);transition:transform .25s ease;border-radius:26px 26px 0 0;background:#202020;padding:12px 10px calc(24px + var(--safe-bottom));overflow:auto}
.episode-drawer.open{transform:translate(-50%,0)}
.drawer-handle{display:block;width:54px;height:6px;margin:0 auto 20px;border:0;border-radius:6px;background:#777}
.drawer-title{display:flex;align-items:center;gap:14px;padding:0 12px 14px}
.drawer-title img{width:62px;height:62px;border-radius:18px}
.drawer-title h2{margin:0 0 7px;font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drawer-title p{margin:0;color:#bbb}
.drawer-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px 16px}
.drawer-actions.four{grid-template-columns:repeat(4,1fr)}
.feature-card{display:grid;gap:18px;margin:24px 16px;padding:22px;border-radius:16px;background:var(--panel);word-break:break-all}
.feature-card h2,.feature-card p{margin:0}
.feature-card strong{color:var(--gold);font-size:14px}
.feature-card label{display:grid;gap:10px;color:#bbb}
.feature-card input{height:48px;border:1px solid #3b313f;border-radius:12px;background:#0d0a10;color:#fff;padding:0 14px}
.order-list{display:grid;gap:12px;padding:16px}.order-list article{display:grid;grid-template-columns:1fr auto;gap:7px;padding:16px;border-radius:14px;background:var(--panel)}.order-list article div{display:grid;gap:5px}.order-list article span,.order-list article small{color:#777;font-size:11px}.order-list article strong{color:var(--pink);font-size:13px}.order-list article small{grid-column:1/-1;word-break:break-all}
.vip-page{padding-bottom:calc(86px + var(--safe-bottom));background:#09070d}.vip-head{margin:12px 16px;padding:25px 20px;border:1px solid #68442d;border-radius:18px;background:linear-gradient(135deg,#332317,#171113);color:#f5d5a5}.vip-head p,.vip-head span{margin:0;color:#c6a77d;font-size:13px}.vip-head h1{margin:10px 0;font-size:25px;color:#fff}.wallet-line{display:flex;align-items:center;justify-content:space-between;margin:0 16px 14px;padding:15px 18px;border-radius:13px;background:#181419;color:#aaa}.wallet-line b{font-size:22px;color:var(--gold)}.product-section{padding:9px 16px 18px}.product-section h2{margin:0;font-size:20px}.product-section>p{margin:6px 0 14px;color:#777;font-size:12px}.vip-products,.coin-products{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.vip-products button,.coin-products button{min-width:0;border:1px solid #4d3540;border-radius:12px;background:#171217;color:#fff;padding:14px 6px;display:grid;gap:7px;text-align:center}.vip-products button:first-child{border-color:#c99958;background:linear-gradient(145deg,#382717,#1a1513)}.vip-products b,.coin-products b{font-size:15px}.vip-products span{font-size:15px;color:#f2c483}.vip-products small{color:#aaa}.vip-products del{font-size:10px;color:#666}.coin-products span{font-size:17px;color:var(--pink);font-weight:800}.coin-products small{color:#f4c379}.vip-products button:disabled,.coin-products button:disabled{opacity:.55}
