.switcher[data-v-5381544e]{position:relative}.switcher-trigger[data-v-5381544e]{border:1px solid var(--line);height:44px;color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:10px;padding:0 14px 0 10px;transition:border-color .16s,box-shadow .16s;display:flex}.switcher-trigger[data-v-5381544e]:hover{border-color:color-mix(in srgb, var(--brand) 40%, var(--line));box-shadow:var(--shadow-sm)}.switcher-badge[data-v-5381544e]{border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;line-height:1;display:flex}.switcher-copy[data-v-5381544e]{flex-direction:column;align-items:flex-start;line-height:1.25;display:flex}.switcher-copy strong[data-v-5381544e]{font-size:13.5px}.switcher-copy small[data-v-5381544e]{color:var(--muted);font-size:11.5px}.switcher-panel[data-v-5381544e]{z-index:60;border:1px solid var(--line);border-radius:var(--radius-lg);width:340px;box-shadow:var(--shadow-lg);background:#fff;padding:12px;position:absolute;top:calc(100% + 10px);right:0}.panel-tip[data-v-5381544e]{color:var(--muted);border-bottom:1px solid var(--line-soft);margin-bottom:8px;padding:4px 8px 10px;font-size:12px;line-height:1.6}.subject[data-v-5381544e]{border-radius:var(--radius);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:10px;width:100%;padding:10px;transition:background .16s,border-color .16s;display:flex}.subject[data-v-5381544e]:hover{background:var(--line-soft)}.subject.is-active[data-v-5381544e]{border-color:color-mix(in srgb, var(--brand) 35%, var(--line));background:var(--brand-soft)}.subject-badge[data-v-5381544e]{border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:17px;line-height:1;display:flex}.subject-copy[data-v-5381544e]{flex-direction:column;flex:1;min-width:0;display:flex}.subject-copy strong[data-v-5381544e]{font-size:13.5px}.subject-copy small[data-v-5381544e]{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.site-header[data-v-db4b56a3]{z-index:80;height:var(--header-h);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;position:fixed;top:0;left:0;right:0}.header-inner[data-v-db4b56a3]{align-items:center;gap:20px;height:100%;display:flex}.brand[data-v-db4b56a3]{flex:none;align-items:center;gap:10px;display:flex}.brand-mark[data-v-db4b56a3]{color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:700;display:flex}.brand-copy[data-v-db4b56a3]{flex-direction:column;line-height:1.25;display:flex}.brand-copy strong[data-v-db4b56a3]{font-size:14.5px}.brand-copy small[data-v-db4b56a3]{color:var(--muted);font-size:11.5px}.nav[data-v-db4b56a3]{flex:1;align-items:center;gap:2px;min-width:0;display:flex}.nav-link[data-v-db4b56a3]{height:34px;color:var(--ink-2);white-space:nowrap;background:0 0;border:none;border-radius:999px;align-items:center;gap:4px;padding:0 12px;font-size:13.5px;transition:background .16s,color .16s;display:inline-flex}.nav-link[data-v-db4b56a3]:hover{background:var(--brand-soft);color:var(--brand-dark)}.nav-link.is-active[data-v-db4b56a3]{background:var(--brand-soft);color:var(--brand-dark);font-weight:600}.dropdown[data-v-db4b56a3]{position:relative}.panel[data-v-db4b56a3]{z-index:60;border:1px solid var(--line);border-radius:var(--radius);width:220px;box-shadow:var(--shadow-lg);background:#fff;padding:8px;position:absolute;top:calc(100% + 10px);right:0}.panel-wide[data-v-db4b56a3]{width:min(680px,100vw - 40px);padding:16px;left:0;right:auto}.panel-section+.panel-section[data-v-db4b56a3]{border-top:1px solid var(--line-soft);margin-top:14px;padding-top:14px}.panel-title[data-v-db4b56a3]{color:var(--muted);margin-bottom:10px;font-size:12px}.panel-grid[data-v-db4b56a3]{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.panel-item[data-v-db4b56a3]{border-radius:var(--radius-sm);text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:9px 10px;transition:background .16s;display:flex}.panel-item[data-v-db4b56a3]:hover{background:var(--line-soft)}.panel-icon[data-v-db4b56a3]{border-radius:9px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.panel-copy[data-v-db4b56a3]{flex-direction:column;min-width:0;display:flex}.panel-copy strong[data-v-db4b56a3]{font-size:13px;font-weight:600}.panel-copy small[data-v-db4b56a3]{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.panel-row[data-v-db4b56a3]{border-radius:var(--radius-sm);width:100%;color:var(--ink-2);text-align:left;background:0 0;border:none;align-items:center;gap:9px;padding:9px 10px;font-size:13px;display:flex}.panel-row[data-v-db4b56a3]:hover{background:var(--line-soft);color:var(--brand-dark)}.panel-row.is-danger[data-v-db4b56a3]:hover{color:var(--danger);background:#e0313114}.user-meta[data-v-db4b56a3]{color:var(--muted);border-bottom:1px solid var(--line-soft);margin-bottom:6px;padding:6px 10px 8px;font-size:11.5px}.header-tools[data-v-db4b56a3]{flex:none;align-items:center;gap:10px;display:flex}.header-search[data-v-db4b56a3]{width:210px;height:36px}.header-search input[data-v-db4b56a3]{font-size:13px}.user-trigger[data-v-db4b56a3]{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:8px;height:38px;padding:0 12px 0 6px;display:flex}.user-trigger[data-v-db4b56a3]:hover{border-color:color-mix(in srgb, var(--brand) 40%, var(--line))}.user-avatar[data-v-db4b56a3]{background:var(--brand-soft);width:26px;height:26px;color:var(--brand-dark);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.user-name[data-v-db4b56a3]{white-space:nowrap;text-overflow:ellipsis;max-width:90px;font-size:13px;overflow:hidden}@media (width<=1280px){.header-search[data-v-db4b56a3]{display:none}}@media (width<=1080px){.nav-link[data-v-db4b56a3]:nth-child(n+4){display:none}}.site-footer[data-v-9984077d]{border-top:1px solid var(--line);background:#fff}.footer-inner[data-v-9984077d]{grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,.8fr));gap:28px;padding:36px 0 24px;display:grid}.brand-line[data-v-9984077d]{align-items:center;gap:10px;display:flex}.brand-mark[data-v-9984077d]{color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:700;display:flex}.brand-line strong[data-v-9984077d]{font-size:15px;display:block}.brand-line small[data-v-9984077d]{color:var(--muted);font-size:12px}.footer-desc[data-v-9984077d]{max-width:460px;color:var(--muted);margin-top:14px;font-size:12.5px;line-height:1.8}.footer-tags[data-v-9984077d]{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.col-title[data-v-9984077d]{color:var(--ink);margin-bottom:10px;font-size:13px;font-weight:600}.col-link[data-v-9984077d]{width:100%;color:var(--muted);text-align:left;background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-size:12.5px;display:flex}.col-link[data-v-9984077d]:hover{color:var(--brand)}.subject-switch[data-v-9984077d]{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.subject-chip[data-v-9984077d]{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;padding:4px 10px;font-size:11.5px}.subject-chip.is-active[data-v-9984077d]{background:var(--brand-soft);color:var(--brand-dark);border-color:#0000}.footer-bottom[data-v-9984077d]{border-top:1px solid var(--line-soft);color:var(--muted-2);justify-content:space-between;gap:12px;padding:14px 0 22px;font-size:12px;display:flex}@media (width<=980px){.footer-inner[data-v-9984077d]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.footer-bottom[data-v-9984077d]{flex-direction:column;gap:4px}}.dialog-extra[data-v-4ab7ad40]{color:var(--muted);white-space:pre-line;padding:10px 24px 0;font-size:12.5px}.toast-enter-active[data-v-4ab7ad40],.toast-leave-active[data-v-4ab7ad40]{transition:opacity .2s,transform .2s}.toast-enter-from[data-v-4ab7ad40],.toast-leave-to[data-v-4ab7ad40]{opacity:0;transform:translateY(-8px)}.pay-dialog[data-v-70291db2]{width:min(460px,100vw - 32px)}.pay-body[data-v-70291db2]{padding:14px 24px 4px}.pay-amount[data-v-70291db2]{border-radius:var(--radius);background:var(--brand-soft);justify-content:space-between;align-items:baseline;padding:12px 16px;display:flex}.pay-amount span[data-v-70291db2]{color:var(--muted);font-size:13px}.pay-amount strong[data-v-70291db2]{font-size:26px}.pay-order[data-v-70291db2]{margin-top:10px}.methods[data-v-70291db2]{flex-direction:column;gap:8px;margin-top:14px;display:flex}.method[data-v-70291db2]{border:1px solid var(--line);border-radius:var(--radius);text-align:left;background:#fff;align-items:center;gap:12px;padding:12px 14px;transition:border-color .16s,background .16s;display:flex}.method[data-v-70291db2]:hover{border-color:color-mix(in srgb, var(--brand) 40%, var(--line))}.method.is-active[data-v-70291db2]{border-color:var(--brand);background:var(--brand-soft)}.method-icon[data-v-70291db2]{width:36px;height:36px;color:var(--brand-dark);background:#fff;border-radius:10px;justify-content:center;align-items:center;display:flex}.method-copy[data-v-70291db2]{flex-direction:column;flex:1;display:flex}.method-copy strong[data-v-70291db2]{font-size:13.5px}.method-copy small[data-v-70291db2]{color:var(--muted);font-size:11.5px}.pay-tip[data-v-70291db2]{color:var(--muted-2);margin-top:14px;font-size:11.5px;line-height:1.7}.current-method[data-v-70291db2]{color:var(--muted);font-size:12px}:root{--brand:#12a150;--brand-dark:#0b7a3b;--brand-soft:#12a15014;--brand-gradient:linear-gradient(135deg, #12a150 0%, #2f9e44 100%);--ink:#0f1c2e;--ink-2:#33445c;--muted:#6b7c93;--muted-2:#94a3b8;--line:#e4eaf2;--line-soft:#f1f4f8;--bg:#f3f6fa;--card:#fff;--warn:#e8590c;--danger:#e03131;--success:#12a150;--price:#e8590c;--radius-lg:18px;--radius:12px;--radius-sm:8px;--shadow-sm:0 2px 8px #101c2e0d;--shadow:0 8px 24px #101c2e12;--shadow-lg:0 18px 48px #101c2e24;--header-h:68px;--container:1200px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.6}h1,h2,h3,h4{color:var(--ink);margin:0;font-weight:600;line-height:1.35}h1{font-size:26px}h2{font-size:20px}h3{font-size:16px}p{margin:0}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}img{max-width:100%;display:block}ul{margin:0;padding:0;list-style:none}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-main{padding:calc(var(--header-h) + 24px) 0 64px;flex:1}.container{width:min(var(--container), 100% - 48px);margin:0 auto}.container-wide{width:min(1440px,100% - 48px);margin:0 auto}.page{padding-top:8px}.stack{flex-direction:column;gap:20px;display:flex}.stack-sm{flex-direction:column;gap:10px;display:flex}.row{align-items:center;gap:12px;display:flex}.row-top{align-items:flex-start;gap:12px;display:flex}.spread{justify-content:space-between;align-items:center;gap:12px;display:flex}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.grid{gap:20px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.with-aside{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:24px;display:grid}@media (width<=1100px){.with-aside{grid-template-columns:minmax(0,1fr)}}@media (width<=980px){.grid-4,.grid-5,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.grid-2,.grid-3,.grid-4,.grid-5{grid-template-columns:minmax(0,1fr)}.container,.container-wide{width:min(100% - 24px,100%)}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-pad{padding:22px 24px}.card-pad-sm{padding:16px 18px}.card-hover{transition:transform .18s,box-shadow .18s,border-color .18s}.card-hover:hover{box-shadow:var(--shadow);border-color:color-mix(in srgb, var(--brand) 32%, var(--line));transform:translateY(-3px)}.card-title{font-size:15px;font-weight:600}.card-sub{color:var(--muted);margin-top:4px;font-size:12.5px}.divider{background:var(--line-soft);height:1px;margin:16px 0}.muted{color:var(--muted)}.muted-2{color:var(--muted-2)}.small{font-size:12.5px}.strong{font-weight:600}.brand-text{color:var(--brand)}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.ellipsis{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-through{text-decoration:line-through}.price{color:var(--price);font-variant-numeric:tabular-nums;font-weight:700}.price em{margin-right:1px;font-size:.75em;font-style:normal}.price-unit{color:var(--muted);font-size:12px;font-weight:400}.btn{border:1px solid var(--line);height:38px;color:var(--ink-2);white-space:nowrap;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 18px;font-size:13.5px;font-weight:500;transition:all .16s;display:inline-flex}.btn:hover:not(:disabled){border-color:color-mix(in srgb, var(--brand) 45%, var(--line));color:var(--brand)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand);color:#fff;border-color:#0000}.btn-primary:hover:not(:disabled){background:var(--brand-dark);color:#fff}.btn-soft{background:var(--brand-soft);color:var(--brand-dark);border-color:#0000}.btn-soft:hover:not(:disabled){background:color-mix(in srgb, var(--brand) 16%, #fff);color:var(--brand-dark)}.btn-danger{color:var(--danger);background:#e0313114;border-color:#0000}.btn-danger:hover:not(:disabled){color:var(--danger);background:#e0313124}.btn-ghost{color:var(--muted);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){color:var(--brand);background:var(--brand-soft)}.btn-sm{height:30px;padding:0 12px;font-size:12.5px}.btn-lg{height:46px;padding:0 26px;font-size:15px}.btn-block{width:100%}.chip{border:1px solid var(--line);height:28px;color:var(--muted);background:#fff;border-radius:999px;align-items:center;gap:5px;padding:0 12px;font-size:12.5px;transition:all .16s;display:inline-flex}button.chip:hover{color:var(--brand);border-color:color-mix(in srgb, var(--brand) 40%, var(--line))}.chip-active{background:var(--brand);color:#fff;border-color:#0000}button.chip-active:hover{color:#fff}.tag{background:var(--line-soft);height:22px;color:var(--muted);border-radius:6px;align-items:center;padding:0 8px;font-size:11.5px;display:inline-flex}.tag-brand{background:var(--brand-soft);color:var(--brand-dark)}.tag-warn{color:var(--warn);background:#e8590c1a}.tag-danger{color:var(--danger);background:#e031311a}.tag-success{color:var(--success);background:#12a1501a}.field{flex-direction:column;gap:6px;display:flex}.field-label{color:var(--ink-2);font-size:13px;font-weight:500}.field-label em{color:var(--danger);margin-left:2px;font-style:normal}.input,.select,.textarea{border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--ink);background:#fff;outline:none;padding:9px 12px;font-size:13.5px;transition:border-color .16s,box-shadow .16s}.input:focus,.select:focus,.textarea:focus{border-color:color-mix(in srgb, var(--brand) 55%, var(--line));box-shadow:0 0 0 3px var(--brand-soft)}.input::placeholder,.textarea::placeholder{color:var(--muted-2)}.textarea{resize:vertical;min-height:96px;line-height:1.7}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%236b7c93' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;height:38px;padding-right:30px}.search-box{border:1px solid var(--line);height:40px;color:var(--muted);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:0 14px;display:flex}.search-box:focus-within{border-color:color-mix(in srgb, var(--brand) 55%, var(--line));box-shadow:0 0 0 3px var(--brand-soft)}.search-box input{background:0 0;border:none;outline:none;flex:1;min-width:0}.check{color:var(--ink-2);cursor:pointer;align-items:center;gap:7px;font-size:13px;display:inline-flex}.check input{width:15px;height:15px;accent-color:var(--brand);cursor:pointer}.switch{background:var(--line);border-radius:999px;width:40px;height:22px;transition:background .18s;position:relative}.switch.is-on{background:var(--brand)}.switch:after{content:"";width:18px;height:18px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;transition:transform .18s;position:absolute;top:2px;left:2px}.switch.is-on:after{transform:translate(18px)}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-head-main{flex-direction:column;gap:6px;display:flex}.page-title{align-items:center;gap:10px;font-size:24px;font-weight:700;display:flex}.page-desc{color:var(--muted);font-size:13px}.crumbs{color:var(--muted-2);align-items:center;gap:6px;margin-bottom:14px;font-size:12.5px;display:flex}.crumbs a:hover{color:var(--brand)}.stat-strip{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;display:grid}.stat{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:16px 18px}.stat-label{color:var(--muted);align-items:center;gap:6px;font-size:12.5px;display:flex}.stat-value{color:var(--ink);font-variant-numeric:tabular-nums;margin-top:6px;font-size:24px;font-weight:700}.stat-value em{color:var(--muted);margin-left:2px;font-size:13px;font-style:normal;font-weight:400}.stat-hint{color:var(--muted-2);margin-top:4px;font-size:12px}.list-item{border-bottom:1px solid var(--line-soft);align-items:center;gap:14px;padding:14px 0;display:flex}.list-item:last-child{border-bottom:none}.move:hover{background:var(--line-soft)}.empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:46px 20px;display:flex}.empty-title{color:var(--ink-2);font-size:14px;font-weight:600}.empty-desc{color:var(--muted);font-size:12.5px}.pager{justify-content:center;align-items:center;gap:6px;margin-top:22px;display:flex}.pager button{border:1px solid var(--line);border-radius:var(--radius-sm);min-width:34px;height:34px;color:var(--ink-2);background:#fff;padding:0 10px}.pager button:hover:not(:disabled){border-color:color-mix(in srgb, var(--brand) 45%, var(--line));color:var(--brand)}.pager button.is-active{background:var(--brand);color:#fff;border-color:#0000}.pager button:disabled{opacity:.45;cursor:not-allowed}.mask{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f1c2e73;position:fixed;inset:0}.dialog{z-index:91;border-radius:var(--radius-lg);width:min(420px,100vw - 32px);box-shadow:var(--shadow-lg);background:#fff;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.dialog-head{padding:20px 24px 0;font-size:16px;font-weight:600}.dialog-body{color:var(--ink-2);white-space:pre-line;padding:12px 24px 4px;font-size:13.5px;line-height:1.7}.dialog-foot{justify-content:flex-end;gap:10px;padding:18px 24px 22px;display:flex}.drawer-mask{z-index:90;background:#0f1c2e66;position:fixed;inset:0}.drawer{z-index:91;width:min(520px,100vw);box-shadow:var(--shadow-lg);background:#fff;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.toast-host{z-index:120;pointer-events:none;flex-direction:column;align-items:center;gap:10px;display:flex;position:fixed;top:84px;left:50%;transform:translate(-50%)}.toast{color:#fff;max-width:460px;box-shadow:var(--shadow);background:#0f1c2ee6;border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-size:13px;display:flex}.toast-success{background:#0b7a3bf0}.toast-warning{background:#c64a0af0}.toast-error{background:#be1e1ef0}.placeholder{border-radius:var(--radius);background:var(--line-soft);color:var(--muted-2);justify-content:center;align-items:center;display:flex}.fade-enter-active,.fade-leave-active{transition:opacity .18s}.fade-enter-from,.fade-leave-to{opacity:0}
