:root{--green:#2E7D5B;--green-l:#3E9B72;--green-d:#215A42;--green-bg:#EEF6F1;--earth:#B5763A;--gold:#E8A33D;--red:#D9534F;--blue:#3A7BBF;--ink:#1D2B24;--ink2:#4A5A52;--ink3:#8A9A92;--line:#E8EDEA;--bg:#F4F7F4;--card:#FFFFFF;--r:14px;--r-s:10px;--shadow:0 2px 12px rgba(30,60,45,.06);--shadow-l:0 8px 28px rgba(30,60,45,.12);--safe-b:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:#e9ede9;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;font-size:inherit}input,textarea,select{font-family:inherit;font-size:14px;color:var(--ink)}a{color:inherit;text-decoration:none}.hidden{display:none!important}#app{display:flex;justify-content:center;min-height:100vh;background:#e9ede9}.phone{position:relative;width:100%;max-width:440px;height:100vh;height:100dvh;background:var(--bg);display:flex;flex-direction:column;box-shadow:0 0 60px #0000001a;overflow-x:hidden}.topbar{position:sticky;top:0;z-index:30;background:var(--card);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;padding:10px 14px;min-height:50px}.topbar.green{background:linear-gradient(135deg,var(--green) 0%,var(--green-l) 100%);border:none;color:#fff}.topbar.green .tb-title,.topbar.green .tb-sub{color:#fff}.tb-back{width:28px;height:28px;display:grid;place-items:center;font-size:20px;flex:0 0 auto}.tb-title{font-size:16px;font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tb-sub{font-size:11px;color:var(--ink3);font-weight:400}.tb-act{font-size:13px;color:var(--green);flex:0 0 auto}.view{flex:1;padding-bottom:calc(66px + var(--safe-b));overflow-y:auto}.view.no-tab{padding-bottom:20px}.tabbar{position:fixed;bottom:0;width:100%;max-width:440px;z-index:30;display:flex;background:#fffffff5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);padding-bottom:var(--safe-b)}.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 6px;color:var(--ink3);font-size:10px}.tabbar a .ic{font-size:20px;line-height:1}.tabbar a.on{color:var(--green);font-weight:600}.sec{background:var(--card);border-radius:var(--r);margin:12px;padding:14px;box-shadow:var(--shadow)}.sec-t{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sec-t h3{margin:0;font-size:15px;font-weight:700;display:flex;align-items:center;gap:6px}.sec-t h3:before{content:"";width:3px;height:14px;border-radius:2px;background:var(--green)}.sec-t .more{font-size:12px;color:var(--ink3)}.row{display:flex;align-items:center;gap:10px}.between{display:flex;align-items:center;justify-content:space-between;gap:10px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.muted{color:var(--ink3)}.small{font-size:12px}.tiny{font-size:11px}.bold{font-weight:700}.mt{margin-top:10px}.mt2{margin-top:20px}.price{color:var(--red);font-weight:700}.price .u{font-size:12px;font-weight:600}.price .n{font-size:20px}.tag{display:inline-block;padding:1px 7px;border-radius:20px;font-size:10px;background:var(--green-bg);color:var(--green);border:1px solid #D6E9DE;margin-right:4px;line-height:1.7}.tag.gold{background:#fdf4e4;color:#a5701f;border-color:#f2e0c0}.tag.gray{background:#f2f4f3;color:var(--ink3);border-color:#e8edea}.tag.blue{background:#eaf2fb;color:#2a5d93;border-color:#d3e4f6}.tag.red{background:#fdecec;color:#b33a36;border-color:#f6d5d4}.divider{height:1px;background:var(--line);margin:12px 0}.card-hd h3{margin:0 0 4px;font-size:13px;font-weight:600}.line-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 18px;height:44px;border-radius:22px;background:var(--green);color:#fff;font-weight:600;font-size:15px;transition:.15s}.btn:active{transform:scale(.97);opacity:.9}.btn.block{display:flex;width:100%}.btn.ghost{background:var(--green-bg);color:var(--green)}.btn.line{background:#fff;border:1px solid var(--green);color:var(--green)}.btn.gold{background:linear-gradient(135deg,#e8a33d,#d98a22)}.btn.gray{background:#f0f2f1;color:var(--ink3)}.btn.sm{height:32px;padding:0 12px;font-size:12px;border-radius:16px}.btn.xs{height:26px;padding:0 10px;font-size:11px;border-radius:13px}.btn.disabled{background:#dde3df!important;color:#fff!important;pointer-events:none}.field{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.field:last-child{border-bottom:none}.field .lb{width:76px;flex:0 0 auto;color:var(--ink2);font-size:13px}.field input,.field textarea,.field select{flex:1;border:none;outline:none;background:transparent;min-width:0}.field input::placeholder{color:#b6c2bc}.field.col{display:block}.field.col .lb{margin-bottom:6px;display:block;width:auto}.field.col textarea{width:100%;min-height:72px;border:1px solid var(--line);border-radius:var(--r-s);padding:10px;background:#fbfcfb}.chipbar{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);padding:9px 12px;display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.chipbar::-webkit-scrollbar{display:none}.chipbar>*{flex:0 0 auto;white-space:nowrap}.upgrid{display:flex;flex-wrap:wrap;gap:8px}.upcell{position:relative;width:64px;height:64px;border-radius:9px;overflow:hidden;border:1px solid var(--line)}.upcell img{width:100%;height:100%;object-fit:cover;display:block}.updel{position:absolute;top:2px;right:2px;width:16px;height:16px;border-radius:50%;background:#14201a9e;color:#fff;display:grid;place-items:center;font-style:normal;cursor:pointer;line-height:1}.upadd{width:64px;height:64px;border:1.5px dashed #B9C6BE;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--ink3);font-size:11px;cursor:pointer;background:#fbfcfb}.upadd:active{background:var(--green-bg)}.radio{border:1px solid var(--line);border-radius:var(--r-s);padding:10px 12px;margin-bottom:8px;display:flex;align-items:center;gap:10px;background:#fbfcfb;border-width:1.5px}.radio.on{border-color:var(--green);background:var(--green-bg)}.radio .dot{width:16px;height:16px;border-radius:50%;border:1.5px solid #C8D3CD;flex:0 0 auto;display:grid;place-items:center}.radio.on .dot{border-color:var(--green);background:var(--green)}.radio.on .dot:after{content:"";width:6px;height:6px;border-radius:50%;background:#fff}.switch{width:44px;height:25px;border-radius:13px;background:#dde3df;position:relative;transition:.2s;flex:0 0 auto}.switch.on{background:var(--green)}.switch:after{content:"";position:absolute;top:2.5px;left:2.5px;width:20px;height:20px;border-radius:50%;background:#fff;transition:.2s;box-shadow:0 1px 3px #0003}.switch.on:after{transform:translate(19px)}.hero{position:relative;height:260px;background:#dce6df}.hero img{width:100%;height:100%;object-fit:cover}.hero .dots{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:5px}.hero .dots i{width:6px;height:6px;border-radius:50%;background:#ffffff80}.hero .dots i.on{background:#fff;width:16px;border-radius:3px}.cover{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-s);background:#e4ebe6}.cover.wide{aspect-ratio:16/10}.thumb{width:76px;height:76px;border-radius:var(--r-s);object-fit:cover;flex:0 0 auto;background:#e4ebe6}.avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;background:#dce6df;flex:0 0 auto}.pcard{background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}.pcard .ph{position:relative}.pcard .ph img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#e4ebe6}.pcard .badge{position:absolute;top:8px;left:8px;background:#0000008c;color:#fff;font-size:10px;padding:2px 7px;border-radius:10px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pcard .bd{padding:9px 10px 11px;flex:1;display:flex;flex-direction:column;gap:4px}.pcard .ti{font-size:13px;font-weight:600;line-height:1.4;height:36px;overflow:hidden}.pcard .mt{display:flex;align-items:baseline;justify-content:space-between;margin-top:auto}.li{display:flex;gap:11px;padding:12px 0;border-bottom:1px solid var(--line)}.li:last-child{border-bottom:none;padding-bottom:0}.li:first-child{padding-top:0}.li .bd{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.li{content-visibility:auto;contain-intrinsic-size:auto 84px}.sec .li:nth-child(-n+3){content-visibility:visible}.bar{height:6px;border-radius:3px;background:#edf1ee;overflow:hidden}.bar i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--green),var(--green-l));transition:width .5s}.stat{text-align:center;padding:10px 4px}.stat .v{font-size:18px;font-weight:700;color:var(--green)}.stat .k{font-size:11px;color:var(--ink3);margin-top:2px}.kpi{background:linear-gradient(135deg,var(--green) 0%,var(--green-l) 100%);border-radius:var(--r);margin:12px;padding:16px;color:#fff;box-shadow:0 6px 20px #2e7d5b40}.kpi .grid4{margin-top:6px}.kpi .stat .v,.kpi .stat .k{color:#fff}.kpi .stat .k{opacity:.8}.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:14px 6px}.cat{display:flex;flex-direction:column;align-items:center;gap:5px;padding:8px 2px;border-radius:var(--r-s)}.cat:active{background:var(--green-bg)}.cat .ic{width:44px;height:44px;border-radius:14px;background:var(--green-bg);display:grid;place-items:center;font-size:22px}.cat .ic svg.lic-real{width:30px;height:30px}.cat .nm{font-size:11px;color:var(--ink2);font-weight:500}.cat .ct{font-size:9px;color:var(--ink3)}.env{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.env .it{background:#f7faf8;border:1px solid var(--line);border-radius:var(--r-s);padding:9px 6px;text-align:center}.env .it .ic{font-size:15px}.env .it .v{font-size:14px;font-weight:700;margin-top:1px}.env .it .k{font-size:9px;color:var(--ink3)}.env .it.warn{background:#fef6e9;border-color:#f4e0be}.env .it.warn .v{color:#b4781f}.tl{position:relative;padding-left:22px}.tl:before{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:1.5px;background:var(--line)}.tl .it{position:relative;padding-bottom:16px}.tl .it:last-child{padding-bottom:0}.tl .it:before{content:"";position:absolute;left:-19px;top:5px;width:9px;height:9px;border-radius:50%;background:#fff;border:2px solid var(--green)}.tl .it.done:before{background:var(--green)}.tl .it .tt{font-size:13px;font-weight:600}.tl .it .ts{font-size:11px;color:var(--ink3)}.tl .it .dd{font-size:12px;color:var(--ink2);margin-top:3px}.trace-item{display:flex;gap:10px;padding:11px 0;border-bottom:1px dashed var(--line)}.trace-item:last-child{border:none}.trace-item .ic{width:34px;height:34px;border-radius:10px;background:var(--green-bg);display:grid;place-items:center;font-size:16px;flex:0 0 auto}.trace-item .bd{flex:1;min-width:0}.trace-item .tt{font-size:13px;font-weight:600}.trace-item .dd{font-size:12px;color:var(--ink2);margin-top:2px}.chain{display:inline-flex;align-items:center;gap:3px;font-size:10px;color:var(--green);background:var(--green-bg);padding:1px 6px;border-radius:8px}.chain.bad{color:#b33a36;background:#fdecec}.live{position:relative;border-radius:var(--r-s);overflow:hidden;background:#12211a}.live img{width:100%;aspect-ratio:16/9;object-fit:cover;opacity:.92}.live .ov{position:absolute;inset:auto 0 0 0;padding:8px 10px;background:linear-gradient(transparent,#000000b3);color:#fff;font-size:11px;display:flex;justify-content:space-between;align-items:center}.live .dot-r{display:inline-flex;align-items:center;gap:4px}.live .dot-r:before{content:"";width:6px;height:6px;border-radius:50%;background:#ff4d4f;animation:pulse 1.4s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.thumbs{display:flex;gap:6px;overflow-x:auto;margin-top:8px;padding-bottom:2px}.thumbs img{width:86px;height:60px;border-radius:8px;object-fit:cover;flex:0 0 auto;background:#e4ebe6}.thumbs::-webkit-scrollbar{display:none}.actionbar{position:fixed;bottom:0;width:100%;max-width:440px;background:#fffffffa;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);padding:10px 14px calc(10px + var(--safe-b));display:flex;align-items:center;gap:10px;z-index:35}.actionbar .info{flex:1;min-width:0}.actionbar .ics{display:flex;gap:14px;text-align:center}.actionbar .ics .ic{font-size:17px;line-height:1.1}.actionbar .ics .lb{font-size:9px;color:var(--ink3)}.sheet-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#14201a73;z-index:100;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s}@keyframes fade{0%{opacity:0}to{opacity:1}}.sheet{width:100%;max-width:440px;background:#fff;border-radius:18px 18px 0 0;padding:18px 16px calc(18px + var(--safe-b));max-height:82vh;overflow-y:auto;animation:up .25s cubic-bezier(.2,.9,.3,1)}@keyframes up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet h3{margin:0 0 14px;font-size:16px;text-align:center}.sheet .close{position:absolute;right:16px;top:16px;font-size:18px;color:var(--ink3)}.toast{position:fixed;left:50%;top:44%;transform:translate(-50%,-50%);background:#14201ae0;color:#fff;padding:11px 18px;border-radius:10px;font-size:13px;z-index:200;max-width:76%;text-align:center;animation:fade .15s}.loading{position:fixed;left:50%;top:46%;transform:translate(-50%,-50%);background:#14201ad1;color:#fff;padding:14px 20px;border-radius:12px;font-size:12px;z-index:200;display:flex;align-items:center;gap:9px}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;padding:48px 20px;color:var(--ink3)}.empty .ic{font-size:44px;opacity:.55}.empty .tx{margin-top:10px;font-size:13px}.cert{background:linear-gradient(160deg,#fffdf7,#f6f1e4);border:1px solid #E6DCC4;border-radius:var(--r);padding:22px 18px;text-align:center;position:relative}.cert:before{content:"";position:absolute;top:7px;right:7px;bottom:7px;left:7px;border:1px solid #E6DCC4;border-radius:10px;pointer-events:none}.cert .seal{position:absolute;right:16px;bottom:14px;width:56px;height:56px;border-radius:50%;border:2px solid #C9553F;color:#c9553f;display:grid;place-items:center;font-size:9px;font-weight:700;transform:rotate(-14deg);opacity:.85;line-height:1.15;text-align:center}.cert h2{font-size:17px;margin:0 0 14px;letter-spacing:3px;color:#8a6b2f}.cert .body{font-size:13px;color:var(--ink2);line-height:2}.cert .hl{font-weight:700;color:var(--ink);border-bottom:1px dashed #C9B98E;padding:0 4px}.agreement{max-height:46vh;overflow-y:auto;font-size:12.5px;line-height:1.9;color:var(--ink2);background:#fbfcfb;border:1px solid var(--line);border-radius:var(--r-s);padding:12px;white-space:pre-wrap}.view::-webkit-scrollbar,.sheet::-webkit-scrollbar{width:0}.lic{display:inline-block;flex:none}.ic,.ico{display:inline-flex;align-items:center;justify-content:center}.ic>svg,.ico>svg{display:block}.actionbar .ics .ic{font-size:17px}.lic-w{display:inline-flex;align-items:center;justify-content:center;width:20px;font-size:18px;color:var(--green)}.sec-t h3 .lic{color:var(--green);margin-right:3px}.btn .lic{vertical-align:-.16em;margin-right:1px}.tb-act{display:inline-flex;align-items:center;gap:2px}.pcard .badge{display:inline-flex;align-items:center;gap:3px}.chain .lic{margin-top:-1px}.empty .ic svg{stroke-width:1.35}.cat .ic svg,.login-brand .logo svg{stroke-width:1.6}.kpi .ico svg{stroke-width:1.7}.dwrap{display:block}.dwrap .li:last-child{border-bottom:none}.vwrap{position:relative;border-radius:12px;overflow:hidden;background:#10201a;margin:0 0 12px}.vwrap.big{margin-top:10px}.vplayer{width:100%;display:block;max-height:260px;object-fit:cover;background:#10201a}.vtag{position:absolute;left:8px;top:8px;display:inline-flex;align-items:center;gap:3px;font-size:10px;color:#fff;background:#0a1a138c;padding:3px 8px;border-radius:9px}.vfailed .vmsg{display:flex;flex-direction:column;align-items:center;gap:6px;padding:24px 14px;color:#ffffffe0;font-size:12px;text-align:center}.vfailed .vmsg small{opacity:.6;font-size:10px}.vfailed img{width:100%;max-height:190px;object-fit:cover;display:block;opacity:.45}.vbadge{display:inline-flex;align-items:center;gap:2px;color:var(--green);font-weight:600;margin-left:5px}.buy-item{padding:10px 12px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;background:#fbfdfb}.athumb{width:44px;height:44px;border-radius:10px;object-fit:cover;flex:none;border:1px solid var(--line)}.brand-foot{display:flex;align-items:center;gap:10px;margin:28px 16px 8px;padding:14px;border-top:1px solid var(--line)}.brand-foot .bf-logo{width:34px;height:34px;border-radius:8px;object-fit:cover;border:1px solid var(--line);flex:none}.brand-foot .bf-txt{min-width:0}.brand-foot .cp{font-size:11px;color:var(--ink3);line-height:1.7}.brand-foot .cp-cert{font-size:10px;color:var(--ink3);opacity:.85;line-height:1.7}@media(min-width:900px){body{background:linear-gradient(180deg,#f4f7f4,#e7ece8)}#app{background:transparent}.phone{max-width:1080px;box-shadow:0 0 80px #2e7d5b14;border-left:1px solid var(--line);border-right:1px solid var(--line)}.sec{margin:16px 24px;padding:18px 22px}.hero{height:320px}.grid2:has(.pcard){grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}.grid3{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.grid4{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.cats{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}.env{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.tabbar,.actionbar{left:50%;transform:translate(-50%);max-width:1080px}.sheet{max-width:720px}.pcard{transition:transform .15s,box-shadow .15s}.pcard:hover{transform:translateY(-3px);box-shadow:0 10px 28px #2e7d5b24}.tabbar a:hover{color:var(--green)}}.banner-fade{position:relative;margin:-30px 12px 0;aspect-ratio:2/1;border-radius:var(--r-s);overflow:hidden;box-shadow:0 8px 22px #00000029;background:#dce6df;z-index:2}.banner-fade .bf-item{position:absolute;top:0;right:0;bottom:0;left:0;display:block;opacity:0;transition:opacity .7s ease}.view{scroll-behavior:auto}.page-fade-enter-active,.page-fade-leave-active{transition:opacity .16s ease}.page-fade-enter-from,.page-fade-leave-to{opacity:0}.pb-bar{height:92px}.pb-tab{height:16px}.field select{background:transparent;border:none;outline:none;text-align:right}.field.col select{text-align:left;border:1px solid var(--line);border-radius:var(--r-s);padding:9px 10px;background:#fbfcfb}.field.col input{width:100%;border:1px solid var(--line);border-radius:var(--r-s);padding:9px 10px;background:#fbfcfb}.home-hero{background:linear-gradient(160deg,var(--green-d),var(--green) 60%,var(--green-l));padding:58px 0 40px;margin-top:-50px}.home-hero .brand-row{padding:0 16px;display:flex;align-items:baseline;justify-content:space-between}.home-hero .search{padding:12px 14px 0}.home-hero .search a{display:flex;align-items:center;gap:8px;background:#fffffff0;border-radius:22px;padding:10px 14px;font-size:13px;color:#8a9a92}.notice-bar{display:flex;gap:8px;align-items:flex-start;background:#fff8e8;border:1px solid #F3E2BE;border-radius:10px;padding:9px 12px}.banner-fade{cursor:pointer}.banner-fade .bf-item{opacity:0}.banner-fade .bf-item.on{opacity:1}.bf-dots{position:absolute;bottom:8px;left:0;right:0;display:flex;justify-content:center;gap:5px}.bf-dots i{width:6px;height:6px;border-radius:3px;background:#ffffff80;transition:all .3s}.bf-dots i.on{width:16px;background:#fff}.banner-title{position:absolute;left:14px;bottom:14px;color:#fff;font-weight:700;font-size:15px;text-shadow:0 1px 6px rgba(0,0,0,.55)}.hscroll{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}.hscroll::-webkit-scrollbar{display:none}.skel{background:linear-gradient(90deg,#eef2ef 25%,#f7faf8 37%,#eef2ef 63%);background-size:400% 100%;animation:skel 1.2s ease infinite;border-radius:8px}@keyframes skel{0%{background-position:100% 50%}to{background-position:0 50%}}.skel-card{height:92px;margin:12px}.skel-hero{height:260px}.sheet .btn.block{margin-top:12px}.sheet .sheet-hint{font-size:11px;color:var(--ink3);line-height:1.7;margin-top:8px}.sheet-head{position:relative}.sheet-head .sheet-close{position:absolute;right:-4px;top:-2px;width:28px;height:28px;display:grid;place-items:center;color:var(--ink3);font-size:18px}
