:root{--bg: #eef0f3;--panel: #ffffff;--ink: #1c2230;--sub: #6b7280;--line: #e3e6ec;--line-2: #d3d7df;--acc: #ff6a3d;--acc-2: #ffd9cc;--acc-hover: #f05a2c;--ok: #16a34a;--heart: #e23b5a;--chip: #f1f3f6;--danger-bg: #fdecec;--vip-from: #2b2440;--vip-to: #43345f;--vip-cta: #ffcf3f;--vip-cta-ink: #3a2c00;--shadow: 0 10px 30px rgba(20, 30, 50, .12);--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-full: 999px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 14px;--sp-5: 16px;--font-sans: -apple-system, "PingFang SC", "Microsoft YaHei", "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0}body{font-family:var(--font-sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}#root{min-height:100vh}.app-shell{height:100vh;height:100dvh;max-width:390px;margin:0 auto;background:var(--panel);box-shadow:var(--shadow);position:relative;overflow:hidden;display:flex;flex-direction:column}button{font-family:inherit;cursor:pointer}img{display:block}a{color:inherit;text-decoration:none}.ph{background:repeating-linear-gradient(45deg,#f3f5f8,#f3f5f8 8px,#eceff3 8px 16px);border:1px dashed var(--line-2);color:#9aa1ad}.skel{background:linear-gradient(90deg,#eef0f3 25%,#e2e6ec 37%,#eef0f3 63%);background-size:400% 100%;animation:skel-shimmer 1.4s ease infinite}@keyframes skel-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.skel-page{padding-bottom:20px}.skel-sec{padding:18px 14px 0}.skel-row{display:flex;gap:10px;overflow:hidden;margin-top:12px}.skel-col{flex:0 0 auto}.content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:120px}.cv{position:relative;overflow:hidden}.cv .img,.cv .img-ph,.pc .img,.pc .img-ph,.slide .img,.slide .img-ph,.chero .img,.chero .bg,.chero .img-ph{position:absolute;inset:0;background-size:cover;background-position:center}.cv .img-ph,.pc .img-ph,.slide .img-ph,.chero .img-ph{background:repeating-linear-gradient(45deg,#f3f5f8,#f3f5f8 8px,#eceff3 8px 16px);border:1px dashed var(--line-2);border-radius:0}.hd{position:sticky;top:0;z-index:40;background:var(--panel);display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--line)}.hd .logo{font-weight:800;font-size:18px;letter-spacing:.5px;line-height:1.1;display:flex;align-items:center;gap:8px}.hd .logo img{width:28px;height:28px;object-fit:contain}.hd .logo small{display:block;font-size:9px;color:var(--sub);font-weight:600;letter-spacing:1px}.hd .me{width:34px;height:34px;border-radius:50%;border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--sub);background:transparent;cursor:pointer}.hd-actions{display:flex;align-items:center;gap:10px}.hd-share{width:34px;height:34px;border-radius:50%;border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;color:var(--sub);background:transparent;cursor:pointer}.cat{position:sticky;top:56px;z-index:35;background:var(--panel);display:flex;gap:8px;overflow-x:auto;padding:10px 14px;border-bottom:1px solid var(--line);scrollbar-width:none}.cat::-webkit-scrollbar{display:none}.cat span{flex:0 0 auto;padding:7px 14px;border-radius:var(--r-full);background:var(--chip);font-size:13px;color:var(--sub);border:1px solid transparent;cursor:pointer;white-space:nowrap}.cat span.on{background:var(--acc-2);color:var(--acc);font-weight:700;border-color:var(--acc)}.sec{padding:16px 14px 4px}.sec-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.sec-h b{font-size:15px;font-weight:700}.sec-h .en{font-size:9px;color:var(--sub);letter-spacing:1px;display:block;font-weight:700;margin-bottom:1px}.sec-h .more{font-size:12px;color:var(--acc);background:none;border:none;display:inline-flex;align-items:center;gap:3px;padding:0}.car{margin:0 14px}.car .slide{height:190px;border-radius:var(--r-lg);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.car .slide .meta{position:absolute;left:14px;right:14px;bottom:14px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.4)}.car .slide .meta .t{font-size:17px;font-weight:800}.car .slide .meta .s{font-size:12px;opacity:.92;margin-top:3px}.car .slide .bg{position:absolute;inset:0;background-size:cover;background-position:center}.play{position:absolute;right:12px;top:12px;width:40px;height:40px;border-radius:50%;background:#ffffffeb;display:flex;align-items:center;justify-content:center;color:var(--acc);border:none;cursor:pointer;z-index:3}.dots{display:flex;gap:6px;justify-content:center;margin-top:9px}.dots i{width:7px;height:7px;border-radius:50%;background:var(--line-2)}.dots i.on{background:var(--acc);width:18px;border-radius:4px}.hrow{display:flex;gap:10px;overflow-x:auto;padding:2px 14px;scrollbar-width:none}.hrow::-webkit-scrollbar{display:none}.card{flex:0 0 auto;width:108px;cursor:pointer}.card .cv{width:108px;height:108px;border-radius:var(--r-md);position:relative;overflow:hidden}.card .cv .img{position:absolute;inset:0;background-size:cover;background-position:center}.card .nm{font-size:12px;font-weight:600;margin-top:6px;line-height:1.25;height:30px;overflow:hidden}.card .tag{font-size:10px;color:var(--sub);margin-top:2px}.card .cv .new{position:absolute;left:6px;top:6px;background:var(--acc);color:#fff;font-size:9px;padding:2px 6px;border-radius:6px;z-index:4;font-weight:700}.fav{position:absolute;right:8px;bottom:8px;width:28px;height:28px;border-radius:50%;background:#fff;border:none;display:flex;align-items:center;justify-content:center;color:var(--heart);cursor:pointer;z-index:3;padding:0}.pbtn{position:absolute;right:8px;top:8px;width:30px;height:30px;border-radius:50%;background:#ffffffeb;border:none;color:var(--acc);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;padding:0}.vip{margin:14px;background:linear-gradient(120deg,var(--vip-from),var(--vip-to));color:#fff;border-radius:var(--r-md);padding:13px 15px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;border:none;width:calc(100% - 28px);text-align:left}.vip .l .a{font-size:13px;font-weight:700}.vip .l .b{font-size:11px;opacity:.85;margin-top:3px}.vip .r{background:var(--vip-cta);color:var(--vip-cta-ink);font-weight:800;font-size:13px;padding:7px 12px;border-radius:var(--r-full);white-space:nowrap}.grp{display:flex;gap:6px;padding:0 14px 8px}.grp span{flex:0 0 auto;font-size:11px;padding:4px 10px;border-radius:var(--r-full);background:var(--chip);color:var(--sub);cursor:pointer}.grp span.on{background:var(--ink);color:#fff}.chart{display:flex;gap:10px;padding:4px 14px;align-items:center;cursor:pointer}.chart .rk{font-size:18px;font-weight:800;width:22px;color:var(--acc)}.chart .cv{width:46px;height:46px;border-radius:var(--r-sm);flex:0 0 auto;position:relative;overflow:hidden}.chart .cv .img{position:absolute;inset:0;background-size:cover;background-position:center}.chart .info{flex:1;min-width:0}.chart .info .t{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart .info .s{font-size:11px;color:var(--sub);margin-top:2px}.chart .fav{position:static;background:var(--chip);color:var(--heart)}.mix-grid{display:flex;gap:10px;overflow-x:auto;padding:2px 14px;scrollbar-width:none}.mix-grid::-webkit-scrollbar{display:none}.mix{width:130px;flex:0 0 auto;cursor:pointer}.mix .cv{height:130px;border-radius:var(--r-md);position:relative;overflow:hidden}.mix .cv .img{position:absolute;inset:0;background-size:cover;background-position:center}.mix .nm{font-size:12px;font-weight:600;margin-top:6px}.mix .ar{font-size:10px;color:var(--sub);margin-top:1px}.coach{margin:6px 14px 4px;display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:var(--r-md);padding:11px;cursor:pointer}.coach .cv{width:64px;height:64px;border-radius:var(--r-md);flex:0 0 auto;position:relative;overflow:hidden}.coach .cv .img{position:absolute;inset:0;background-size:cover;background-position:center}.coach .info{flex:1;min-width:0}.coach .info .t{font-size:13px;font-weight:700}.coach .info .c{font-size:10px;color:var(--sub);margin-top:2px}.coach .info .meta{font-size:10px;color:var(--sub);margin-top:3px}.coach .rb{background:var(--acc);color:#fff;font-weight:800;font-size:12px;padding:8px 12px;border-radius:var(--r-full);border:none;cursor:pointer;white-space:nowrap}.promo{margin:14px;height:84px;border-radius:var(--r-md);border:1px dashed var(--line-2);display:flex;align-items:center;justify-content:center;color:#9aa1ad;font-size:12px;background:#f7f8fa;width:calc(100% - 28px);cursor:pointer}.disc{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:6px 14px 10px}.dcard{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;cursor:pointer;background:#fff}.dcard .cv{height:96px;position:relative;overflow:hidden}.dcard .cv .img{position:absolute;inset:0;background-size:cover;background-position:center}.dcard .cv .ty{position:absolute;left:8px;top:8px;background:#0000008c;color:#fff;font-size:9px;padding:2px 7px;border-radius:6px;z-index:2}.dcard .bd{padding:8px}.dcard .bd .t{font-size:12px;font-weight:600;line-height:1.25}.dcard .bd .d{font-size:10px;color:var(--sub);margin-top:3px;height:26px;overflow:hidden}.dcard .bd .tg{display:flex;gap:5px;margin-top:6px}.dcard .bd .tg i{font-size:9px;background:var(--chip);color:var(--sub);padding:2px 7px;border-radius:6px;font-style:normal}.end{text-align:center;font-size:11px;color:var(--sub);padding:12px}.nav{flex:0 0 auto;height:58px;background:#fff;border-top:1px solid var(--line);display:flex;z-index:45}.nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11px;color:var(--sub);gap:3px;cursor:pointer}.nav a.on{color:var(--acc);font-weight:700}.nav a .ic{font-size:18px;line-height:1;display:flex}.mini{position:absolute;left:12px;right:12px;bottom:70px;height:54px;background:var(--ink);color:#fff;border-radius:var(--r-md);display:flex;align-items:center;gap:10px;padding:0 8px;z-index:50;box-shadow:0 6px 18px #00000040;cursor:grab}.mini .cv{width:40px;height:40px;border-radius:9px;flex:0 0 auto;overflow:hidden;position:relative}.mini .cv .img{position:absolute;inset:0;background-size:cover;background-position:center}.mini .ti{flex:1;min-width:0}.mini .ti .t{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini .ti .s{font-size:10px;opacity:.7}.mini .pp{width:34px;height:34px;border-radius:50%;background:#fff;color:var(--ink);border:none;cursor:pointer;flex:0 0 auto;display:flex;align-items:center;justify-content:center}.mini .icon-btn{color:#fffc;background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center}.sheet{position:absolute;inset:0;background:#0a0c128c;z-index:80;display:flex;flex-direction:column;justify-content:flex-end}.sheet .panel{background:var(--ink);color:#fff;border-radius:22px 22px 0 0;padding:18px 18px 26px;height:62%}.sheet .top{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#ffffffb3}.sheet .top button{background:none;border:none;color:#fff;cursor:pointer;padding:4px;display:flex}.sheet .pc{height:200px;border-radius:var(--r-lg);margin:14px 0;overflow:hidden;position:relative}.sheet .pc .img{position:absolute;inset:0;background-size:cover;background-position:center}.sheet .pt{font-size:18px;font-weight:800}.sheet .ps{font-size:12px;opacity:.75;margin-top:4px}.prog{height:4px;background:#ffffff40;border-radius:4px;margin:18px 0 6px;position:relative;cursor:pointer}.prog i{position:absolute;left:0;top:0;bottom:0;width:38%;background:var(--acc);border-radius:4px}.prog:after{content:"";position:absolute;left:38%;top:-4px;width:12px;height:12px;border-radius:50%;background:#fff;transform:translate(-50%)}.time{display:flex;justify-content:space-between;font-size:11px;opacity:.7}.ctrl{display:flex;align-items:center;justify-content:center;gap:26px;margin-top:18px}.ctrl button{background:none;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.ctrl .play{width:56px;height:56px;border-radius:50%;background:#fff;color:var(--ink)}.sheet .row{display:flex;justify-content:space-between;margin-top:18px;border-top:1px solid rgba(255,255,255,.15);padding-top:14px;font-size:12px;color:#fffc}.chero{margin:0 14px;height:150px;border-radius:var(--r-lg);position:relative;overflow:hidden;color:#fff}.chero .bg{position:absolute;inset:0;background-size:cover;background-position:center}.chero .ht{position:absolute;left:16px;bottom:30px;font-size:20px;font-weight:800;text-shadow:0 1px 4px rgba(0,0,0,.4);z-index:2}.chero .hs{position:absolute;left:16px;bottom:12px;font-size:12px;opacity:.92;text-shadow:0 1px 4px rgba(0,0,0,.4);z-index:2}.fg{margin:6px 14px}.fg .gl{font-size:11px;color:var(--sub);margin:8px 0 6px}.fg .chips{display:flex;gap:8px;flex-wrap:wrap}.fg .chips span{font-size:12px;padding:7px 13px;border-radius:var(--r-full);background:var(--chip);color:var(--sub);border:1px solid transparent;cursor:pointer}.fg .chips span.on{background:var(--acc-2);color:var(--acc);border-color:var(--acc);font-weight:700}.res{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:var(--r-md);padding:11px;margin:8px 14px;cursor:pointer;background:#fff}.res .cv{width:58px;height:58px;border-radius:10px;flex:0 0 auto;position:relative;overflow:hidden}.res .cv .img{position:absolute;inset:0;background-size:cover;background-position:center}.res .info{flex:1;min-width:0}.res .info .ty{font-size:9px;color:var(--acc);font-weight:700;letter-spacing:.5px}.res .info .t{font-size:13px;font-weight:600;margin-top:2px}.res .info .d{font-size:10px;color:var(--sub);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.res .arrow{color:var(--sub);display:flex;align-items:center}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px;text-align:center;min-height:320px}.empty .ill{width:120px;height:120px;border-radius:24px;background:var(--chip);display:flex;align-items:center;justify-content:center;font-size:40px;color:var(--line-2)}.empty .ill.danger{background:var(--danger-bg);color:var(--heart)}.empty .t{font-size:15px;font-weight:700}.empty .s{font-size:12px;color:var(--sub);line-height:1.5}.empty button{margin-top:6px;background:var(--acc);color:#fff;border:none;font-weight:700;font-size:13px;padding:10px 18px;border-radius:var(--r-full);cursor:pointer}.empty button.dark{background:var(--ink)}.promo-grid{display:flex;gap:10px;overflow-x:auto;padding:2px 14px;scrollbar-width:none}.promo-grid::-webkit-scrollbar{display:none}.promo-card{flex:0 0 auto;width:210px;min-height:92px;border:0;border-radius:var(--r-md);padding:14px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;cursor:pointer}.promo-card .eyebrow{font-size:9px;font-weight:800;letter-spacing:1.5px;opacity:.7;text-transform:uppercase}.promo-card .ptitle{font-size:13px;font-weight:700;line-height:1.35}.promo-card .cta{margin-top:auto;font-size:11px;font-weight:700}.detail-top{flex:0 0 auto;height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;border-bottom:1px solid var(--line);background:var(--panel)}.detail-top .back{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:none;border:0;color:var(--ink);cursor:pointer}.detail-top span{font-size:15px;font-weight:700}.detail-top .ph-spacer{width:40px}.detail-content{padding-bottom:24px}.detail-cover{height:280px;position:relative;overflow:hidden;background:var(--chip)}.detail-cover .img,.detail-cover .img-ph{position:absolute;inset:0;background-size:cover;background-position:center}.detail-head{padding:16px 16px 0}.detail-head .t{font-size:20px;font-weight:900;margin:0;letter-spacing:.3px}.detail-head .meta{font-size:12px;color:var(--sub);margin-top:6px;font-variant-numeric:tabular-nums}.detail-head .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.detail-head .tags i{font-size:11px;background:var(--chip);color:var(--ink);padding:4px 10px;border-radius:var(--r-full);font-style:normal;font-weight:600}.detail-play{display:flex;align-items:center;justify-content:center;gap:8px;margin:16px 16px 0;height:48px;background:var(--acc);color:#fff;font-size:15px;font-weight:800;border:0;border-radius:var(--r-full);cursor:pointer;width:calc(100% - 32px)}.detail-play:hover{background:var(--acc-hover)}.detail-block{padding:16px 16px 0}.detail-h{font-size:15px;font-weight:800;margin-bottom:8px}.detail-p{font-size:13px;color:var(--sub);line-height:1.6;margin:0}.license{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.license .row{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;font-size:13px;border-bottom:1px solid var(--line)}.license .row:last-child{border-bottom:0}.license .row span{color:var(--sub)}.license .row b{font-weight:700}.license .row b.price{color:var(--acc);font-size:15px}.detail-bar{flex:0 0 auto;display:flex;gap:8px;padding:10px 14px;border-top:1px solid var(--line);background:var(--panel)}.detail-bar .fav{position:static;width:auto;height:46px;padding:0 14px;background:var(--chip);border:0;border-radius:var(--r-full);display:flex;align-items:center;gap:5px;color:var(--heart);font-size:13px;font-weight:700}.detail-bar .buy{flex:1;height:46px;background:var(--acc);color:#fff;font-size:14px;font-weight:800;border:0;border-radius:var(--r-full);cursor:pointer}.detail-bar .dl{flex:1;height:46px;background:var(--ink);color:#fff;font-size:14px;font-weight:800;border:0;border-radius:var(--r-full);cursor:pointer}.toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%);background:#000000d9;color:#fff;font-size:13px;padding:10px 18px;border-radius:var(--r-md);z-index:999;max-width:80%;text-align:center}.detail-loading,.detail-notfound{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--sub)}.detail-notfound .t{font-size:15px;font-weight:700;color:var(--ink)}.detail-notfound button{background:var(--acc);color:#fff;border:0;padding:10px 18px;border-radius:var(--r-full);font-weight:700;cursor:pointer}.request-card{display:flex;align-items:center;justify-content:space-between;width:calc(100% - 28px);margin:0 14px;padding:16px;background:linear-gradient(120deg,var(--vip-from),var(--vip-to));color:#fff;border:0;border-radius:var(--r-md);cursor:pointer;text-align:left}.request-card .en{font-size:9px;letter-spacing:2px;opacity:.75;font-weight:800}.request-card b{display:block;font-size:16px;margin-top:4px}.request-card p{font-size:12px;opacity:.85;margin:6px 0 0}.request-card .arrow{color:#fff;display:flex}.card .cv .count{position:absolute;left:6px;top:6px;background:#0000008c;color:#fff;font-size:9px;font-weight:700;padding:2px 7px;border-radius:6px;z-index:4}.training-flow{display:flex;flex-direction:column;gap:12px;padding:0 14px}.stage{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.stage-h{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--chip);font-size:13px;font-weight:800}.stage-h i{font-size:11px;color:var(--sub);font-style:normal;font-weight:600}.stage-list{padding:4px 0}.trow{display:flex;align-items:center;gap:12px;padding:8px 14px;cursor:pointer}.trow:hover{background:var(--chip)}.trow .cv{width:48px;height:48px;flex:0 0 auto}.trow .ti{flex:1;min-width:0}.trow .ti .nm{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trow .ti .s{font-size:11px;color:var(--sub);margin-top:2px}.product-card{width:130px;flex:0 0 auto;cursor:pointer}.product-card .cv{width:130px;height:130px;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md)}.product-card .cv .topic{position:absolute;left:6px;top:6px;background:var(--acc);color:#fff;font-size:9px;font-weight:700;padding:2px 7px;border-radius:6px;z-index:4}.product-card .nm{font-size:12px;font-weight:600;margin-top:6px;line-height:1.3}.product-card .price{font-size:10px;color:var(--acc);margin-top:2px;font-weight:700}.me-content{padding-bottom:24px}.me-card{display:flex;align-items:center;gap:14px;padding:18px 16px;background:linear-gradient(120deg,var(--vip-from),var(--vip-to));color:#fff}.me-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.4);background:#fff}.me-info{flex:1;min-width:0}.me-name{font-size:17px;font-weight:800}.me-org{font-size:11px;opacity:.8;margin-top:2px}.me-badges{display:flex;gap:8px;margin-top:8px}.badge-balance{font-size:11px;font-weight:700;background:#ffffff2e;padding:3px 9px;border-radius:var(--r-full)}.badge-vip{font-size:11px;font-weight:700;background:#00000040;padding:3px 9px;border-radius:var(--r-full)}.badge-vip.on{background:var(--vip-cta);color:var(--vip-cta-ink)}.me-tabs{display:flex;background:var(--panel);border-bottom:1px solid var(--line)}.me-tabs button{flex:1;height:44px;background:none;border:0;font-size:13px;color:var(--sub);font-weight:600;position:relative}.me-tabs button.on{color:var(--acc);font-weight:800}.me-tabs button.on:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:24px;height:3px;background:var(--acc)}.me-tabbody{padding:4px 0 20px}.me-sec{padding:14px 14px 0}.me-sec h3{font-size:14px;font-weight:800;margin:0 0 10px}.me-plan-grid{display:flex;gap:10px}.me-plan{flex:1;border:1px solid var(--line);border-radius:var(--r-md);padding:14px;text-align:center}.me-plan .pname{font-size:13px;font-weight:700}.me-plan .pprice{font-size:20px;font-weight:900;color:var(--acc);margin-top:6px}.me-plan .pdesc{font-size:10px;color:var(--sub);margin-top:4px;line-height:1.4;height:28px;overflow:hidden}.me-plan .pbtn-buy{margin-top:10px;width:100%;height:34px;background:var(--acc);color:#fff;border:0;border-radius:var(--r-full);font-size:12px;font-weight:800;cursor:pointer}.me-membership.active{background:var(--acc-2);border:1px solid var(--acc);border-radius:var(--r-md);padding:14px}.me-membership.active b{color:var(--acc)}.me-membership.active p{font-size:12px;color:var(--sub);margin:6px 0 0}.me-entry{display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px 14px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);font-size:14px;font-weight:600;color:var(--ink);cursor:pointer}.wallet-balance{margin:14px;padding:20px;background:linear-gradient(120deg,var(--vip-from),var(--vip-to));color:#fff;border-radius:var(--r-md);text-align:center}.wallet-balance span{font-size:12px;opacity:.85;display:block}.wallet-balance b{font-size:40px;font-weight:900;display:inline-block;margin:6px 4px 0 0}.wallet-balance i{font-style:normal;font-size:14px;opacity:.9}.wallet-balance small{display:block;font-size:11px;opacity:.7;margin-top:4px}.me-recharge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.me-recharge{border:1px solid var(--line);border-radius:var(--r-md);padding:12px 0;background:var(--panel);display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer}.me-recharge b{font-size:16px;font-weight:900;color:var(--acc)}.me-recharge span{font-size:11px;color:var(--sub)}.tx-row{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line)}.tx-row .t{font-size:13px;font-weight:600}.tx-row .s{font-size:11px;color:var(--sub);margin-top:2px}.tx-row .amt{font-size:15px;font-weight:800;font-variant-numeric:tabular-nums}.tx-row .amt.plus{color:var(--ok)}.tx-row .amt.minus{color:var(--ink)}.order-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);cursor:pointer}.order-row .l{flex:1;min-width:0}.order-row .t{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-row .s{font-size:11px;color:var(--sub);margin-top:3px}.order-row .r{text-align:right}.order-row .amt{font-size:14px;font-weight:800}.order-row .st{display:inline-block;margin-top:3px;font-size:10px;font-weight:700;padding:2px 8px;border-radius:var(--r-full)}.order-row .st.paid{background:#dcfce7;color:#15803d}.order-row .st.pending{background:#fef3c7;color:#b45309}.order-row .st.cancelled{background:var(--chip);color:var(--sub)}.dl-again{flex:0 0 auto;margin-left:12px;padding:7px 14px;background:var(--acc);color:#fff;border:0;border-radius:var(--r-full);font-size:12px;font-weight:700;cursor:pointer}.dl-again:disabled{opacity:.55;cursor:default}.dl-notice{margin:0 0 12px;padding:10px 14px;background:#fff7f4;border:1px solid #ffd9cc;border-radius:10px;font-size:11.5px;line-height:1.6;color:#8a5a33}.dl-notice b{color:#d96a1f}.dl-side{flex:0 0 auto;display:flex;align-items:center;gap:8px;margin-left:12px}.dl-state{display:inline-block;padding:3px 8px;border-radius:var(--r-full);font-size:10px;font-weight:700;white-space:nowrap}.dl-state.done{background:#dcfce7;color:#15803d}.dl-state.ok{background:#dbeafe;color:#1d4ed8}.dl-state.expired{background:var(--chip);color:var(--sub)}.me-loading{padding:40px;text-align:center;color:var(--sub);font-size:13px}.me-empty-mini{padding:16px 0;text-align:center;color:var(--sub);font-size:12px}img.img{object-fit:cover;width:100%;height:100%}.fav.on{background:var(--heart);color:#fff}.req-content{padding:16px}.req-intro{font-size:13px;color:var(--sub);margin:0 0 16px;line-height:1.6}.req-field{display:block;margin-bottom:14px}.req-field span{display:block;font-size:13px;font-weight:700;margin-bottom:6px}.req-field input,.req-field textarea{width:100%;padding:11px 13px;border:1px solid var(--line-2);border-radius:var(--r-sm);font-size:14px;box-sizing:border-box;font-family:inherit;background:var(--panel)}.req-field input:focus,.req-field textarea:focus{border-color:var(--acc);outline:none}.req-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.req-check{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--sub);margin:4px 0 16px}.req-check input{width:16px;height:16px;accent-color:var(--acc)}.req-err{color:#e23b5b;font-size:12px;margin-bottom:10px}.req-ok{color:var(--ok);font-size:12px;margin-bottom:10px}.album-head{display:flex;gap:14px;padding:16px;align-items:flex-start}.album-cover{width:120px;height:120px;flex:0 0 auto;border:1px solid var(--line);border-radius:var(--r-md)}.album-info{flex:1;min-width:0}.album-info .t{font-size:18px;font-weight:900;margin:0}.album-info .meta{font-size:12px;color:var(--acc);font-weight:700;margin-top:6px}.album-info .d{font-size:12px;color:var(--sub);line-height:1.5;margin:8px 0 0}.album-tracks{padding:4px 0 20px}.album-tracks .trow{display:flex;align-items:center;gap:12px;padding:10px 14px;cursor:pointer}.album-tracks .trow:hover{background:var(--chip)}.album-tracks .idx{width:20px;text-align:center;font-size:14px;font-weight:800;color:var(--sub);flex:0 0 auto}.album-tracks .cv{width:48px;height:48px;flex:0 0 auto}.od-empty{padding:60px 20px;text-align:center;color:var(--sub);font-size:13px}.od-status{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:12px;margin:16px 16px 12px;font-size:13px}.od-status b{font-size:15px;font-weight:800}.od-status span{font-size:11px;opacity:.85}.od-status.paid{background:#eefbf1;color:#15803d}.od-status.pending{background:#fef3c7;color:#b45309}.od-status.cancelled,.od-status.closed,.od-status.refunded{background:var(--chip);color:var(--sub)}.od-item{display:flex;align-items:center;gap:12px;margin:0 16px;padding:14px;border:1px solid var(--line);border-radius:12px}.od-item .cv{width:56px;height:56px;flex:0 0 auto}.od-item-info{flex:1;min-width:0}.od-item-kind{font-size:10px;color:var(--acc);font-weight:700;letter-spacing:.5px}.od-item-title{font-size:15px;font-weight:700;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.od-item-meta{font-size:11px;color:var(--sub);margin-top:3px}.od-item-price{font-size:16px;font-weight:800;color:var(--ink)}.od-meta-card{margin:12px 16px;padding:4px 14px;border:1px solid var(--line);border-radius:12px}.od-meta-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.od-meta-row:last-child{border-bottom:0}.od-meta-row span{color:var(--sub)}.od-meta-row b{font-weight:700;word-break:break-all;text-align:right}.od-actions{margin:0 16px}.od-btn{width:100%;padding:13px;border:0;border-radius:var(--r-full);font-size:15px;font-weight:800;cursor:pointer}.od-btn.primary{background:var(--acc);color:#fff}.od-btn.ghost{background:#fff;color:var(--acc);border:1px solid var(--acc);margin-top:10px}.od-btn:disabled{opacity:.6}.license-card{margin:20px 16px 8px;border:1px solid #e8d5b0;border-radius:14px;background:linear-gradient(160deg,#fffdf5,#fff7e6);overflow:hidden;box-shadow:0 4px 16px #8c642814}.license-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(90deg,#f7e3bd,#f0d49a)}.license-badge{font-size:13px;font-weight:800;color:#7a5413}.license-no{font-size:11px;color:#8a6a2a;font-variant-numeric:tabular-nums;letter-spacing:.5px}.license-body{padding:14px 16px 4px}.license-line{display:flex;align-items:baseline;gap:12px;padding:7px 0;font-size:13px}.license-line span{flex:0 0 64px;color:#9a8a5f;font-size:12px}.license-line b{font-weight:700;color:#3a3220}.license-sec{padding:10px 16px}.license-sec-title{font-size:12px;font-weight:800;color:#7a5413;margin-bottom:6px}.license-use{font-size:12px;line-height:1.7;padding-left:2px}.license-use.ok{color:#3f6b2f}.license-use.no{color:#a05a3a}.license-foot{padding:12px 16px;text-align:center;font-size:10px;color:#b3a06b;border-top:1px dashed #e8d5b0}.invite-card{border:1px solid #ffd9cc;background:#fff7f4;border-radius:12px;padding:14px}.invite-row{display:flex;align-items:center;justify-content:space-between;font-size:12px}.invite-row span{color:var(--sub)}.invite-row b{font-size:16px;font-weight:800;color:var(--acc);letter-spacing:1px;font-variant-numeric:tabular-nums}.invite-link{margin-top:8px;padding:8px 10px;background:#fff;border:1px dashed #ffd9cc;border-radius:8px;font-size:11px;color:#8a5a33;word-break:break-all;line-height:1.5}.invite-actions{display:flex;gap:10px;margin-top:12px}.invite-actions button{flex:1;height:34px;border:0;border-radius:var(--r-full);font-size:12px;font-weight:800;cursor:pointer;background:var(--acc);color:#fff}.invite-actions button.ghost{background:#fff;color:var(--acc);border:1px solid var(--acc)}.share-mask{position:fixed;inset:0;background:#00000073;z-index:200;display:flex;align-items:flex-end;justify-content:center}.share-panel{width:100%;max-width:390px;background:#fff;border-radius:18px 18px 0 0;padding:18px 20px calc(18px + env(safe-area-inset-bottom));animation:slide-up .22s ease}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.share-panel-title{text-align:center;font-size:15px;font-weight:800;margin-bottom:18px}.share-options{display:flex;justify-content:space-around;gap:12px}.share-options button{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;background:none;border:0;cursor:pointer;font-size:12px;color:#3a4048;padding:8px 0}.share-ico{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-style:normal;color:#fff}.share-ico.friend{background:#07c160}.share-ico.timeline{background:#4f8ef7}.share-ico.copy{background:#ff8a3d}.share-cancel{width:100%;margin-top:16px;padding:12px;background:#f4f6f9;border:0;border-radius:12px;font-size:14px;color:#3a4048;cursor:pointer;font-weight:700}.admin-shell{display:flex;min-height:100vh;background:#f4f5f8;color:#1c2230}.admin-side{width:200px;background:#1c2230;color:#fff;display:flex;flex-direction:column;padding:16px 0;flex:0 0 auto}.admin-brand{font-size:16px;font-weight:800;padding:0 20px 16px;border-bottom:1px solid rgba(255,255,255,.1);letter-spacing:.5px}.admin-side button{display:block;width:100%;text-align:left;padding:12px 20px;background:none;border:0;color:#ffffffb3;font-size:14px;cursor:pointer;border-left:3px solid transparent}.admin-side button:hover{color:#fff;background:#ffffff0f}.admin-side button.on{color:#fff;background:#ff6a3d2e;border-left-color:#ff6a3d;font-weight:700}.admin-side-foot{margin-top:auto;padding:16px 20px 0;border-top:1px solid rgba(255,255,255,.1)}.admin-who{font-size:12px;color:#fff9;margin-bottom:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-side-foot button{padding:8px 12px;border:1px solid rgba(255,255,255,.3);border-radius:6px;text-align:center}.admin-main{flex:1;padding:24px;overflow-y:auto;max-width:1100px}.admin-page h2{margin:0 0 16px;font-size:20px}.admin-page h3{margin:24px 0 10px;font-size:15px}.metric-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.metric{background:#fff;border:1px solid #e3e6ec;border-radius:10px;padding:16px}.metric .v{font-size:24px;font-weight:900;color:#ff6a3d}.metric .l{font-size:12px;color:#6b7280;margin-top:4px}.admin-table-wrap{background:#fff;border:1px solid #e3e6ec;border-radius:10px;overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th{text-align:left;padding:11px 14px;background:#f8f9fb;color:#6b7280;font-weight:700;border-bottom:1px solid #e3e6ec;white-space:nowrap}.admin-table td{padding:11px 14px;border-bottom:1px solid #f1f3f6;white-space:nowrap}.admin-table tr:last-child td{border-bottom:0}.tag{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700}.tag.published,.tag.paid{background:#dcfce7;color:#15803d}.tag.draft,.tag.pending{background:#fef3c7;color:#b45309}.tag.rejected{background:#fee2e2;color:#b91c1c}.mini-btn{padding:5px 12px;background:#ff6a3d;color:#fff;border:0;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer}.mini-btn.danger{background:#ef4444}.mini-actions{display:inline-flex;gap:6px}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#1c2230}.login-card{width:360px;background:#fff;border-radius:12px;padding:32px;box-shadow:0 10px 40px #0003}.login-card h1{margin:0 0 4px;font-size:20px}.login-card p{margin:0 0 20px;font-size:13px;color:#6b7280}.login-card input{width:100%;padding:12px 14px;border:1px solid #d3d7df;border-radius:8px;font-size:14px;margin-bottom:12px;box-sizing:border-box}.login-card input:focus{border-color:#ff6a3d;outline:none}.login-err{color:#ef4444;font-size:12px;margin-bottom:10px}.login-btn{width:100%;padding:12px;background:#ff6a3d;color:#fff;border:0;border-radius:8px;font-size:14px;font-weight:800;cursor:pointer}.login-btn:disabled{opacity:.6;cursor:not-allowed}.settings-form label{display:block;font-size:13px;font-weight:700;margin-bottom:14px;color:#374151}.settings-form input,.settings-form textarea{display:block;width:100%;margin-top:6px;padding:10px 12px;border:1px solid #d3d7df;border-radius:8px;font-size:14px;box-sizing:border-box;font-family:inherit}.settings-form .login-btn{width:auto;padding:10px 32px}.settings-meta{font-size:13px;color:#6b7280;margin:4px 0 16px;display:flex;gap:20px}.admin-loading,.admin-err{padding:60px;text-align:center;color:#6b7280;font-size:14px}.admin-err{color:#ef4444}.admin-toast{position:fixed;top:24px;right:24px;background:#1c2230;color:#fff;padding:10px 18px;border-radius:8px;font-size:13px;z-index:999}.modal-mask{position:fixed;inset:0;background:#0a0c1280;display:flex;align-items:flex-start;justify-content:center;padding-top:60px;z-index:500}.modal{background:#fff;border-radius:12px;max-width:92vw;max-height:84vh;overflow-y:auto;box-shadow:0 20px 60px #00000040}.modal-h{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eef0f3}.modal-h b{font-size:16px}.modal-h button{background:none;border:0;font-size:22px;line-height:1;color:#9aa1ad;cursor:pointer}.modal-b{padding:20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.af{display:block;margin-bottom:14px;font-size:13px;font-weight:700;color:#374151}.af>span{display:block;margin-bottom:6px}.af input,.af select,.af textarea{display:block;width:100%;margin:0;padding:10px 12px;border:1px solid #d3d7df;border-radius:8px;font-size:14px;box-sizing:border-box;font-family:inherit}.af input:focus,.af select:focus,.af textarea:focus{border-color:#ff6a3d;outline:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.form-row{display:flex;gap:20px;align-items:center;margin-bottom:14px}.af-check{display:flex;align-items:center;gap:6px;font-size:13px;color:#374151;cursor:pointer}.af-check input{width:16px;height:16px;accent-color:#ff6a3d}.af-check select{padding:6px 10px;border:1px solid #d3d7df;border-radius:6px}.admin-subtabs{display:flex;gap:6px;margin-bottom:16px;border-bottom:1px solid #e3e6ec}.admin-subtabs button{padding:9px 18px;background:none;border:0;font-size:13px;font-weight:600;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent}.admin-subtabs button.on{color:#ff6a3d;font-weight:800;border-bottom-color:#ff6a3d}.admin-hint{font-size:12px;color:#9aa1ad;margin:8px 0 14px}.admin-sub{font-size:11px;color:#9aa1ad}.admin-warn{font-size:13px;color:#b45309;background:#fef3c7;border-radius:8px;padding:10px 12px;margin:0 0 12px}.risk-tag{display:inline-block;padding:3px 9px;border-radius:var(--r-full, 999px);font-size:11px;font-weight:700}.risk-tag.high{background:#fee2e2;color:#dc2626}.risk-tag.medium{background:#fef3c7;color:#d97706}.risk-tag.normal{background:#dcfce7;color:#16a34a}.danger-btn{background:#dc2626}.danger-btn:hover{background:#b91c1c}.album-pick{display:grid;grid-template-columns:1fr 1fr;gap:6px;max-height:220px;overflow-y:auto;border:1px solid #e3e6ec;border-radius:8px;padding:10px}.album-pick-item{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:#374151;cursor:pointer}.album-pick-item input{accent-color:#ff6a3d}.admin-page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.admin-page-head h2{margin:0}.upload-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.upload-box{display:block;border:1px solid #e3e6ec;border-radius:8px;padding:10px}.upload-box>span{font-size:12px;font-weight:700;color:#6b7280;display:block;margin-bottom:6px}.upload-box-body{display:flex;align-items:center;justify-content:space-between;gap:8px}.upload-val{font-size:12px;color:#9aa1ad;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.upload-btn{flex:0 0 auto;padding:6px 12px;background:#ff6a3d;color:#fff;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer}.upload-btn input{display:none}.chip-pick{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid #e3e6ec;border-radius:8px;max-height:160px;overflow-y:auto}.chip-wrap{display:flex;flex-wrap:wrap;gap:6px}.chip-wrap .chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:#f4f6f9;border:1px solid #e3e6ec;border-radius:999px;font-size:12px;color:#3a4048}.chip-x{border:0;background:transparent;color:#c4c9d1;cursor:pointer;font-size:14px;line-height:1;padding:0}.chip-x:hover{color:#dc2626}.chip-pick button{padding:5px 12px;border:1px solid #d3d7df;border-radius:999px;background:#fff;font-size:12px;color:#374151;cursor:pointer}.chip-pick button.on{background:#ff6a3d;border-color:#ff6a3d;color:#fff;font-weight:700}.ai-auto-box{border:1px solid #ffd9cc;background:#fff7f4;border-radius:10px;padding:12px 14px;margin-bottom:14px}.ai-auto-box .af{margin:10px 0 0}.ai-ready-warn{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#fff4e5,#ffe8d6);border:1px solid #ffc799;border-radius:12px;padding:16px 18px;margin-bottom:18px}.ai-ready-icon{width:40px;height:40px;flex:0 0 40px;border-radius:50%;background:#ff8a3d;color:#fff;font-size:20px;font-weight:700;display:flex;align-items:center;justify-content:center}.ai-ready-body{flex:1}.ai-ready-body strong{display:block;font-size:15px;color:#c2571a;margin-bottom:4px}.ai-ready-body p{margin:0;font-size:12.5px;line-height:1.6;color:#8a5a33}.ai-ready-body b{color:#d96a1f}.ai-ready-ok{background:#eefbf1;border:1px solid #b8e6c5;color:#1f8a43;border-radius:12px;padding:12px 16px;margin-bottom:18px;font-size:13px}.ai-ready-ok span{font-weight:700;margin-right:6px}.ai-tip{background:linear-gradient(135deg,#fff7f4,#ffeae0);border:1px solid #ffd9cc;border-radius:10px;padding:14px 16px;margin-bottom:18px}.ai-tip strong{display:block;font-size:14px;color:#ff6a3d;margin-bottom:6px}.ai-tip p{margin:0;font-size:12px;line-height:1.6;color:#6b6e76}.af-required{color:#ff6a3d;margin-left:4px;font-style:normal;font-weight:700}.taxo-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.taxo-col{background:#fff;border:1px solid #e3e6ec;border-radius:10px;padding:16px}.taxo-col h3{margin:0 0 12px;font-size:15px}.taxo-add{display:flex;gap:6px;margin-bottom:12px}.taxo-add input,.taxo-add select{flex:1;padding:8px 10px;border:1px solid #d3d7df;border-radius:6px;font-size:13px}.taxo-card{border:1px solid #eef0f3;border-radius:8px;padding:12px;margin-bottom:10px}.taxo-card-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.taxo-card-h b{font-size:13px}.taxo-card-h small{font-size:11px;color:#ff6a3d;font-weight:700;margin-left:4px}.taxo-actions{display:flex;gap:6px}.taxo-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12px;color:#6b7280}.taxo-filters button{padding:4px 10px;border:1px solid #d3d7df;border-radius:999px;background:#fff;font-size:12px;cursor:pointer}.taxo-filters button.on{background:#ff6a3d;border-color:#ff6a3d;color:#fff}.taxo-tags{display:flex;flex-wrap:wrap;gap:6px}.taxo-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#f4f5f8;border-radius:999px;font-size:12px}.taxo-tag button{background:none;border:0;color:#9aa1ad;cursor:pointer;font-size:14px;line-height:1;padding:0}.taxo-empty{font-size:12px;color:#9aa1ad}.pipeline{display:flex;flex-wrap:wrap;gap:8px;background:#fff;border:1px solid #e3e6ec;border-radius:10px;padding:14px;margin-bottom:8px}.pipeline span{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#374151}.pipeline i{width:20px;height:20px;border-radius:50%;background:#ff6a3d;color:#fff;font-style:normal;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.adjust-box{margin-top:16px;padding:14px;border:1px solid #ffd9cc;background:#fff7f4;border-radius:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.adjust-box h3{width:100%;margin:0 0 4px;font-size:13px}.adjust-box select,.adjust-box input{padding:8px 10px;border:1px solid #d3d7df;border-radius:6px;font-size:13px}
