:root{--blue:#2563eb;--blue-dark:#0b2f6b;--navy:#071a3d;--pale:#eff6ff;--page:#f7faff;--ink:#0f172a;--muted:#64748b;--line:#dbe5f3;--white:#fff;--safe:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#dbeafe;color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif}button,input{font:inherit}button{cursor:pointer}.app-shell{position:relative;width:100%;max-width:460px;min-height:100vh;margin:auto;background:var(--page);box-shadow:0 0 45px rgba(30,64,175,.14);overflow:hidden}.page{display:none;min-height:100vh;padding-bottom:0}.page.active{display:block}
.hero-header{padding:22px 18px 0;color:#fff;background:radial-gradient(circle at 82% 4%,#174ea6 0,transparent 40%),linear-gradient(160deg,#071a3d,#0b2f6b)}.brand-row{display:flex;align-items:center;gap:11px;margin-bottom:20px}.brand-row h1{font-size:19px;margin:0;font-weight:800;letter-spacing:.04em}.brand-row p{font-size:11px;color:#bfdbfe;margin:3px 0 0}.logo-mark{width:43px;height:43px;border:1px solid #60a5fa;border-radius:13px;display:grid;place-items:center;color:#dbeafe;font-size:20px;font-family:serif;background:linear-gradient(145deg,#1d4ed8,#071a3d);box-shadow:0 10px 24px rgba(2,11,29,.45)}.icon-button{margin-left:auto;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff;width:39px;height:39px;border-radius:50%;font-size:25px;display:grid;place-items:center}.hero-banner{position:relative;overflow:hidden;min-height:182px;padding:24px 22px;margin:0 -2px -34px;border-radius:21px;background:linear-gradient(115deg,#123f8b 0,#061a3f 55%,#1554b8 100%);border:1px solid rgba(147,197,253,.45);box-shadow:0 22px 44px rgba(3,18,48,.36)}.hero-banner>*:not(.orb):not(.grid-lines){position:relative;z-index:2}.banner-kicker{font-size:9px;letter-spacing:.25em;color:#93c5fd}.hero-banner h2{font-size:28px;margin:9px 0 6px;letter-spacing:.06em}.hero-banner p{font-size:12px;color:#dbeafe;margin:0 0 18px}.hero-banner button{border:0;color:#071a3d;background:linear-gradient(135deg,#fff,#93c5fd);font-size:12px;font-weight:700;border-radius:999px;padding:9px 15px;box-shadow:0 8px 22px rgba(96,165,250,.28)}.orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb-one{width:125px;height:125px;right:-20px;top:8px;background:radial-gradient(circle at 30% 30%,#bfdbfe,#3b82f6 38%,#071a3d 72%);opacity:.8}.orb-two{width:78px;height:78px;right:88px;bottom:-42px;background:radial-gradient(circle,#60a5fa,transparent 70%)}.grid-lines{position:absolute;inset:0;opacity:.17;background-image:linear-gradient(rgba(255,255,255,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 1px);background-size:22px 22px;transform:perspective(200px) rotateX(55deg) scale(1.6);transform-origin:bottom}
.shortcut-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:52px 14px 18px;background:linear-gradient(#eaf2ff,#f7faff)}.shortcut-grid button{border:0;background:transparent;display:flex;align-items:center;flex-direction:column;gap:7px;color:#334155;font-size:12px}.shortcut-icon{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;font-style:normal;color:#dbeafe;font-size:22px;background:linear-gradient(145deg,#2563eb,#0b2f6b);border:1px solid #60a5fa;box-shadow:0 9px 18px rgba(37,99,235,.2)}.content-section{padding:20px 16px}.content-section+.content-section{padding-top:8px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:13px}.section-heading h2{font-size:20px;margin:1px 0 0}.section-heading span{font-size:8px;color:#2563eb;letter-spacing:.25em}.section-heading button{border:0;background:transparent;color:#64748b;font-size:11px}.service-feature-list{display:grid;gap:10px}.feature-card{position:relative;padding:15px;border:1px solid var(--line);border-radius:16px;background:#fff;display:grid;grid-template-columns:1fr auto;gap:8px;box-shadow:0 8px 20px rgba(37,99,235,.055);overflow:hidden;text-align:left}.feature-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(#60a5fa,#1d4ed8)}.feature-card h3{font-size:14px;margin:0 0 6px}.feature-card p{font-size:10px;color:#64748b;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feature-card strong{align-self:center;color:#1d4ed8;font-size:17px}.feature-card strong small{font-size:10px}.avatar-row{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.avatar-item{text-align:center;min-width:0}.avatar-pic,.player-avatar{position:relative;overflow:hidden}.avatar-pic{aspect-ratio:1;border-radius:50%;border:2px solid #fff;box-shadow:0 5px 16px rgba(37,99,235,.15);display:grid;place-items:center;color:#fff;font-size:22px}.avatar-item strong{display:block;font-size:11px;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avatar-item span{font-size:9px;color:#2563eb}.status-dot{position:absolute;width:9px;height:9px;border-radius:50%;background:#22c55e;border:2px solid #fff;right:3px;bottom:4px}
.light-page{background:var(--page)}.page-topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;padding:18px 17px 14px;background:rgba(247,250,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.page-topbar span{font-size:8px;letter-spacing:.24em;color:#2563eb}.page-topbar h1{margin:2px 0 0;font-size:23px}.page-topbar b{position:absolute;right:17px;bottom:18px;color:#0b2f6b;font-size:12px;letter-spacing:.04em}.catalog-empty{padding:38px 8px;color:#94a3b8;font-size:11px;text-align:center}.icon-button.light{color:#1e293b;background:#fff;border:1px solid var(--line);box-shadow:0 5px 15px rgba(37,99,235,.06)}.service-layout{display:grid;grid-template-columns:87px 1fr;min-height:calc(100vh - 155px)}.group-sidebar{background:#eef4fc;border-right:1px solid var(--line)}.group-sidebar button{position:relative;width:100%;border:0;background:transparent;color:#64748b;font-size:11px;padding:17px 7px;line-height:1.35}.group-sidebar button.active{background:#fff;color:#1d4ed8;font-weight:700}.group-sidebar button.active:before{content:"";position:absolute;left:0;top:15px;bottom:15px;width:3px;background:#2563eb;border-radius:0 3px 3px 0}.service-content{padding:13px 12px;min-width:0;background:#fff}.category-pills{display:flex;gap:7px;overflow:auto;padding-bottom:10px;scrollbar-width:none}.category-pills button{flex:none;border:1px solid var(--line);background:#eff6ff;color:#64748b;border-radius:999px;padding:7px 12px;font-size:10px}.category-pills button.active{color:#fff;background:#2563eb;border-color:#2563eb}.catalog-meta{display:flex;justify-content:space-between;align-items:center;margin:9px 2px 5px}.catalog-meta strong{font-size:13px}.catalog-meta span{font-size:9px;color:#94a3b8}.catalog-item{padding:14px 2px;border-bottom:1px solid #e8eef7}.catalog-item h3{font-size:13px;margin:0 0 5px}.catalog-item p{font-size:9px;color:#64748b;line-height:1.55;margin:0 0 8px}.catalog-item-footer{display:flex;align-items:center;justify-content:space-between}.catalog-price{color:#1d4ed8;font-weight:800;font-size:16px}.catalog-price small{font-size:9px}.mini-buy{border:1px solid #60a5fa;background:#eff6ff;color:#1d4ed8;border-radius:999px;font-size:9px;padding:5px 10px}
.player-search-wrap{position:relative;margin:12px 16px}.player-search-wrap input{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px 42px 12px 14px;outline:0;font-size:12px;box-shadow:0 6px 17px rgba(37,99,235,.04)}.player-search-wrap span{position:absolute;right:15px;top:5px;font-size:24px;color:#94a3b8}.player-tabs{display:flex;gap:7px;overflow:auto;padding:0 16px 12px;scrollbar-width:none}.player-tabs button{flex:none;border:1px solid var(--line);background:#fff;color:#64748b;border-radius:999px;padding:7px 13px;font-size:10px}.player-tabs button.active{background:#0b2f6b;color:#dbeafe;border-color:#0b2f6b}.player-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:0 16px 18px}.player-card{border:1px solid var(--line);background:#fff;border-radius:17px;overflow:hidden;box-shadow:0 8px 20px rgba(37,99,235,.05)}.player-avatar{height:128px;display:grid;place-items:center;color:#fff;font-size:35px}.player-avatar:after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(transparent,rgba(3,18,48,.5))}.online-badge{position:absolute;z-index:2;left:9px;bottom:8px;font-size:8px;color:#fff;background:rgba(25,157,84,.88);border-radius:999px;padding:3px 7px}.player-info{padding:10px}.player-info h3{font-size:13px;margin:0}.player-info p{font-size:9px;color:#64748b;height:28px;line-height:1.5;margin:4px 0;overflow:hidden}.player-footer{display:flex;align-items:center;justify-content:space-between}.player-footer strong{color:#1d4ed8;font-size:14px}.player-footer span{font-size:8px;color:#64748b}
.profile-cover{padding:18px 17px 70px;color:#fff;background:radial-gradient(circle at 88% 22%,#2563eb,transparent 42%),linear-gradient(150deg,#071a3d,#0b2f6b)}.profile-nav{display:flex;justify-content:space-between;align-items:center;font-size:13px}.profile-nav button{border:0;background:transparent;color:#fff;font-size:19px}.profile-card{display:flex;gap:12px;align-items:center;margin-top:28px}.profile-avatar{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#93c5fd,#1d4ed8);border:2px solid rgba(255,255,255,.7);font-weight:800;font-size:21px}.profile-card h1{font-size:17px;margin:0 0 5px}.profile-card p{font-size:10px;color:#bfdbfe;margin:0}.wechat-login{margin-top:20px;width:100%;border:0;border-radius:13px;padding:12px;color:#fff;background:#16a85d;font-size:12px;font-weight:700}.wallet-card{position:relative;margin:-47px 16px 12px;padding:18px 14px;background:#fff;border-radius:17px;display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:center;box-shadow:0 12px 30px rgba(30,64,175,.12)}.wallet-card div+div{border-left:1px solid var(--line);padding-left:13px}.wallet-card span{display:block;color:#64748b;font-size:9px}.wallet-card strong{font-size:16px;margin-top:3px;display:block}.wallet-card button{border:0;background:#2563eb;color:#fff;border-radius:999px;font-size:9px;padding:7px 10px}.my-panel{margin:12px 16px;padding:15px;background:#fff;border-radius:16px;border:1px solid var(--line)}.panel-title{display:flex;justify-content:space-between}.panel-title h2{font-size:14px;margin:0}.panel-title button{border:0;background:transparent;color:#94a3b8;font-size:9px}.order-actions{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px}.order-actions button{border:0;background:transparent;color:#334155;font-size:10px}.order-actions i{font-style:normal;font-size:22px;display:block;color:#2563eb;margin-bottom:5px}.menu-list{padding:4px 15px}.menu-list button{width:100%;display:grid;grid-template-columns:30px 1fr auto;align-items:center;text-align:left;border:0;background:transparent;border-bottom:1px solid #e8eef7;padding:13px 0;font-size:11px}.menu-list button:last-child{border-bottom:0}.menu-list i{font-style:normal;width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:#eff6ff;color:#1d4ed8;font-size:9px}.menu-list b{font-size:17px;color:#94a3b8;font-weight:400}
.bottom-nav{position:fixed;z-index:20;bottom:0;width:100%;max-width:460px;display:grid;grid-template-columns:repeat(3,1fr);padding:7px 10px calc(7px + var(--safe));background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-top:1px solid rgba(191,219,254,.85);box-shadow:0 -8px 24px rgba(37,99,235,.06)}.bottom-nav button{border:0;background:transparent;color:#94a3b8;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:9px}.bottom-nav i{font-style:normal;font-size:22px;line-height:1}.bottom-nav button.active{color:#2563eb;font-weight:700}.modal-backdrop{position:fixed;z-index:50;inset:0;background:rgba(3,18,48,.58);display:none;align-items:flex-end;justify-content:center}.modal-backdrop.open{display:flex}.modal-sheet{position:relative;width:100%;max-width:460px;max-height:84vh;overflow:auto;padding:25px 20px calc(26px + var(--safe));background:#fff;border-radius:24px 24px 0 0;animation:sheetUp .25s ease}.modal-close{position:absolute;right:16px;top:13px;border:0;background:#eff6ff;color:#1d4ed8;width:30px;height:30px;border-radius:50%;font-size:19px}.modal-sheet h2{font-size:20px;margin:7px 0}.modal-sheet .eyebrow{font-size:9px;color:#2563eb;letter-spacing:.2em}.modal-sheet p{font-size:11px;color:#64748b;line-height:1.7}.modal-price{font-size:25px;color:#1d4ed8;font-weight:900;margin:15px 0}.modal-primary{width:100%;border:0;border-radius:13px;padding:13px;color:#fff;background:#2563eb;font-size:12px;font-weight:700}.modal-input{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px;margin:7px 0;outline:0}.toast{position:fixed;z-index:80;left:50%;bottom:100px;transform:translate(-50%,14px);max-width:330px;opacity:0;pointer-events:none;background:rgba(7,26,61,.94);color:#fff;border-radius:999px;padding:10px 16px;font-size:11px;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}@keyframes sheetUp{from{transform:translateY(100%)}to{transform:translateY(0)}}
.service-variant-list{display:grid;gap:10px;margin-top:16px}.service-variant{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:14px;background:#f8fbff}.service-variant-copy h3{margin:0;color:var(--navy);font-size:13px}.service-variant-copy p{margin:5px 0 0;font-size:10px;line-height:1.5}.service-variant-action{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.service-variant-action strong{color:#1d4ed8;font-size:17px;white-space:nowrap}.service-variant-action .modal-primary{width:auto;padding:8px 11px;border-radius:9px;white-space:nowrap}.catalog-price{font-size:15px!important}
@media(max-width:380px){.service-variant{grid-template-columns:1fr}.service-variant-action{flex-direction:row;align-items:center;justify-content:space-between}.service-variant-action .modal-primary{width:auto}}
@media(min-width:700px){body{padding:24px 0}.app-shell{min-height:calc(100vh - 48px);border-radius:26px}.bottom-nav{bottom:24px;border-radius:0 0 26px 26px}.modal-backdrop{align-items:center}.modal-sheet{border-radius:24px;max-width:420px}}
