.login-wrap[data-v-53750b43]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 20% 10%,#dff4e5,#f1f7f3 38%,#ebf4ef);padding:18px}.login-card[data-v-53750b43]{width:min(420px,100%);background:#fff;border-radius:16px;border:1px solid #d7e9dc;box-shadow:0 24px 60px #162f1f29;padding:22px}h1[data-v-53750b43]{margin:0 0 6px;font-size:24px}p[data-v-53750b43]{margin:0 0 16px;color:#627a68;font-size:13px}.form-item[data-v-53750b43]{margin-bottom:12px;display:flex;flex-direction:column;gap:6px}label[data-v-53750b43]{font-size:12px;color:#607768}input[data-v-53750b43]{border:1px solid #d7e6dc;border-radius:9px;min-height:36px;padding:0 10px;font-size:14px;outline:none}input[data-v-53750b43]:focus{border-color:#2f8f57;box-shadow:0 0 0 2px #2f8f571f}.login-btn[data-v-53750b43]{width:100%;height:38px;margin-top:2px}.captcha-row[data-v-53750b43]{display:grid;grid-template-columns:1fr 118px;gap:8px}.captcha-box[data-v-53750b43]{width:118px;height:36px;border-radius:8px;border:1px solid #d7e6dc;background:#f8fcf9;color:#4f6d5a;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;padding:0}.captcha-box[data-v-53750b43]:disabled{cursor:not-allowed;opacity:.75}.captcha[data-v-53750b43]{width:100%;height:100%;object-fit:cover}.captcha-tip[data-v-53750b43]{font-size:12px;line-height:1.4}.captcha-tip.error[data-v-53750b43]{color:#c34f4f}.layout[data-v-82db59a1]{display:flex;min-height:100vh}.sider[data-v-82db59a1]{width:228px;background:linear-gradient(180deg,#1f6d43,#225d3f);color:#edf6ef;border-right:1px solid rgba(255,255,255,.08);padding:18px 14px;overflow-y:auto}.brand[data-v-82db59a1]{display:flex;align-items:center;gap:10px;padding:4px 6px 14px;border-bottom:1px solid rgba(255,255,255,.14);margin-bottom:8px}.brand-dot[data-v-82db59a1]{width:12px;height:12px;border-radius:999px;background:#8ee4b0;box-shadow:0 0 0 4px #8ee4b033}.brand-title[data-v-82db59a1]{font-size:14px;font-weight:700;letter-spacing:1px}.brand-sub[data-v-82db59a1]{font-size:12px;opacity:.8}.nav-block[data-v-82db59a1]{margin-top:12px}.nav-group-title[data-v-82db59a1]{font-size:11px;opacity:.78;letter-spacing:1px;margin:0 8px 6px}.nav[data-v-82db59a1]{display:flex;flex-direction:column;gap:6px}.nav-item[data-v-82db59a1]{display:block;padding:10px 12px;border-radius:10px;font-size:13px;color:#e7f8ee;opacity:.92;transition:all .2s ease}.nav-item[data-v-82db59a1]:hover{background:#ffffff24}.nav-item.active[data-v-82db59a1]{background:#fff3;box-shadow:inset 0 0 0 1px #ffffff3d;opacity:1}.main[data-v-82db59a1]{flex:1;min-width:0;display:flex;flex-direction:column}.topbar[data-v-82db59a1]{height:58px;border-bottom:1px solid #d8e7dd;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.topbar-title[data-v-82db59a1]{font-size:16px;font-weight:600}.topbar-right[data-v-82db59a1]{position:relative;display:flex;align-items:center}.user-trigger[data-v-82db59a1]{display:inline-flex;align-items:center;gap:8px;height:36px;border:1px solid #d8e7dd;border-radius:999px;background:#fff;padding:0 10px 0 8px;color:#2a4434;cursor:pointer}.user-trigger[data-v-82db59a1]:hover{border-color:#bfd8ca;background:#f6fbf7}.user-avatar[data-v-82db59a1]{width:22px;height:22px;border-radius:50%;background:#e3f4e9;color:#2f8f57;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.user-name[data-v-82db59a1]{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.user-caret[data-v-82db59a1]{font-size:12px;color:#6a7f72;transition:transform .2s ease}.user-caret.open[data-v-82db59a1]{transform:rotate(180deg)}.user-dropdown[data-v-82db59a1]{position:absolute;top:44px;right:0;width:150px;border:1px solid #d8e7dd;border-radius:10px;background:#fff;box-shadow:0 10px 24px #152d1d1f;overflow:hidden;z-index:20}.dropdown-item[data-v-82db59a1]{width:100%;height:38px;border:0;border-bottom:1px solid #edf4ef;background:#fff;color:#2a4434;text-align:left;padding:0 12px;cursor:pointer;font-size:13px}.dropdown-item[data-v-82db59a1]:last-child{border-bottom:0}.dropdown-item[data-v-82db59a1]:hover{background:#f6fbf7}.dropdown-item.danger[data-v-82db59a1]{color:#d44f4f}.dropdown-item.danger[data-v-82db59a1]:hover{background:#fff1f1}.content[data-v-82db59a1]{padding:16px}@media (max-width: 900px){.sider[data-v-82db59a1]{width:96px;padding:14px 8px}.brand-title[data-v-82db59a1],.brand-sub[data-v-82db59a1],.nav-group-title[data-v-82db59a1]{display:none}.nav-item[data-v-82db59a1]{text-align:center;padding:9px 8px;font-size:12px}.user-name[data-v-82db59a1]{display:none}}.dashboard-page[data-v-219c2761]{display:grid;gap:14px}.hero[data-v-219c2761]{border:1px solid #d6e7dc;border-radius:16px;padding:18px;background:linear-gradient(135deg,#f5fcf7,#eaf6ee 45%,#f8fcfa);display:flex;justify-content:space-between;align-items:center;gap:14px}.hero-main h2[data-v-219c2761]{margin:0 0 6px;font-size:22px}.hero-main p[data-v-219c2761]{margin:0;color:#5f7465;font-size:13px}.hero-badge[data-v-219c2761]{padding:8px 12px;border-radius:999px;background:#2f8f57;color:#fff;font-size:12px;letter-spacing:1px}.kpis[data-v-219c2761]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.kpi-card[data-v-219c2761]{border:1px solid #dbe9df;border-radius:12px;background:#fff;padding:12px}.kpi-label[data-v-219c2761]{font-size:12px;color:#64796a}.kpi-value[data-v-219c2761]{margin-top:6px;font-size:24px;font-weight:700;color:#1f6d43}.kpi-sub[data-v-219c2761]{margin-top:6px;font-size:12px;color:#5f7465}.grid-two[data-v-219c2761]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.panel[data-v-219c2761]{border:1px solid #dbe9df;border-radius:12px;background:#fff;padding:12px}.panel-head[data-v-219c2761]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.panel-title[data-v-219c2761]{font-size:14px;font-weight:700}.panel-link[data-v-219c2761]{font-size:12px;color:#2f8f57}.trend-row[data-v-219c2761]{display:grid;grid-template-columns:52px 1fr 88px;gap:8px;align-items:center;margin-bottom:8px}.trend-day[data-v-219c2761]{font-size:12px;color:#607768}.trend-bars[data-v-219c2761]{display:grid;gap:6px}.bar-wrap[data-v-219c2761]{height:9px;border-radius:999px;background:#edf5ef;overflow:hidden}.bar[data-v-219c2761]{height:100%;border-radius:999px;transition:width .35s ease}.bar-login[data-v-219c2761]{background:linear-gradient(90deg,#25a35e,#34c675)}.bar-op[data-v-219c2761]{background:linear-gradient(90deg,#3fa6d8,#6dc3e9)}.trend-values[data-v-219c2761]{display:flex;justify-content:space-between;font-size:12px;color:#5f7465}.module-list[data-v-219c2761]{display:grid;gap:8px}.module-row[data-v-219c2761]{display:grid;grid-template-columns:64px 1fr 44px;gap:8px;align-items:center}.module-name[data-v-219c2761]{font-size:12px;color:#607768}.module-bar-wrap[data-v-219c2761]{height:10px;border-radius:999px;background:#edf5ef;overflow:hidden}.module-bar[data-v-219c2761]{height:100%;border-radius:999px;background:linear-gradient(90deg,#22b07d,#43d6a0)}.module-count[data-v-219c2761]{font-size:12px;color:#5f7465;text-align:right}.mini-table-wrap[data-v-219c2761]{overflow:auto}.mini-table[data-v-219c2761]{width:100%;border-collapse:collapse;min-width:620px}.mini-table th[data-v-219c2761],.mini-table td[data-v-219c2761]{border-bottom:1px solid #e3ece6;padding:8px 6px;text-align:left;font-size:12px;vertical-align:top}.tiny[data-v-219c2761]{font-size:12px}.quick-nav[data-v-219c2761]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quick-card[data-v-219c2761]{border:1px solid #dbe9df;border-radius:11px;padding:12px;background:linear-gradient(180deg,#fbfffc,#f2f9f4);transition:all .2s ease}.quick-card[data-v-219c2761]:hover{transform:translateY(-2px);border-color:#bfd8ca;box-shadow:0 8px 20px #1f6d4314}.quick-label[data-v-219c2761]{font-size:14px;font-weight:700;margin-bottom:4px}.quick-desc[data-v-219c2761]{font-size:12px;color:#5f7465}@media (max-width: 1200px){.kpis[data-v-219c2761]{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-two[data-v-219c2761]{grid-template-columns:1fr}.quick-nav[data-v-219c2761]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.hero[data-v-219c2761]{flex-direction:column;align-items:flex-start}.kpis[data-v-219c2761],.quick-nav[data-v-219c2761]{grid-template-columns:1fr}}.profile-page[data-v-108d4039]{max-width:960px}.profile-card[data-v-108d4039]{border:1px solid var(--line);border-radius:12px;background:#fbfefc;padding:16px}.profile-header[data-v-108d4039]{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px dashed #dce9df;margin-bottom:14px}.profile-avatar[data-v-108d4039]{width:48px;height:48px;border-radius:50%;background:#e3f4e9;color:#2f8f57;display:inline-flex;align-items:center;justify-content:center;font-size:18px;font-weight:700}.profile-name[data-v-108d4039]{font-size:16px;font-weight:700}.profile-sub[data-v-108d4039]{color:var(--text-soft);font-size:13px}.profile-grid[data-v-108d4039]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.profile-item[data-v-108d4039]{border:1px solid #e1ece4;border-radius:10px;background:#fff;padding:10px 12px;display:flex;flex-direction:column;gap:4px}.profile-item .k[data-v-108d4039]{color:var(--text-soft);font-size:12px}.profile-item .v[data-v-108d4039]{color:var(--text);font-size:14px;word-break:break-all}.profile-actions[data-v-108d4039]{margin-top:14px;display:flex;justify-content:flex-end;gap:8px}@media (max-width: 900px){.profile-grid[data-v-108d4039]{grid-template-columns:1fr}}.tiny[data-v-b6a1c881]{font-size:12px}.multiline[data-v-b6a1c881]{white-space:normal;line-height:1.45;min-width:180px}.tiny[data-v-befad218]{font-size:12px}.multiline[data-v-befad218]{white-space:normal;line-height:1.45;min-width:200px}.modal-card--game-type[data-v-7b3b65c9]{width:min(980px,100%)}.gtm-icon-preview[data-v-7b3b65c9]{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;box-shadow:inset 0 0 0 1px #ffffff2e}.gtm-icon-preview img[data-v-7b3b65c9]{width:28px;height:28px;object-fit:cover;border-radius:8px}.gtm-icon-preview--large[data-v-7b3b65c9]{width:62px;height:62px;font-size:24px}.gtm-icon-preview--large img[data-v-7b3b65c9]{width:40px;height:40px;border-radius:10px}.gtm-icon-grid[data-v-7b3b65c9]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:8px}.gtm-icon-item[data-v-7b3b65c9]{height:42px;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;align-items:center;gap:8px;padding:0 10px;cursor:pointer;color:var(--text)}.gtm-icon-item i[data-v-7b3b65c9]{width:16px;text-align:center}.gtm-icon-item.is-active[data-v-7b3b65c9]{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.gtm-bg-presets[data-v-7b3b65c9]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:8px}.gtm-bg-item[data-v-7b3b65c9]{height:40px;border:1px solid rgba(255,255,255,.45);border-radius:10px;color:#fff;font-size:12px;font-weight:600;cursor:pointer}.gtm-bg-item.is-active[data-v-7b3b65c9]{outline:2px solid var(--brand);outline-offset:1px}.gtm-preview[data-v-7b3b65c9]{border:1px dashed var(--line);border-radius:12px;padding:12px;background:#fbfefc}.gtm-upload-row[data-v-7b3b65c9]{display:grid;grid-template-columns:110px 1fr;gap:10px}.hidden-input[data-v-7b3b65c9]{display:none}@media (max-width: 980px){.gtm-icon-grid[data-v-7b3b65c9],.gtm-bg-presets[data-v-7b3b65c9]{grid-template-columns:repeat(2,minmax(0,1fr))}}.modal-card--barrage[data-v-e47acf6f]{width:min(980px,100%)}.bm-color-preview[data-v-e47acf6f]{display:inline-flex;align-items:center;justify-content:center;min-width:86px;height:28px;border-radius:999px;padding:0 10px;font-size:12px;border:1px solid rgba(0,0,0,.06)}.bm-picker[data-v-e47acf6f]{display:grid;grid-template-columns:46px 1fr auto;gap:8px;align-items:center;margin-bottom:8px}.bm-picker input[type=color][data-v-e47acf6f]{width:46px;height:34px;border:1px solid var(--line);border-radius:8px;padding:0;background:#fff}.bm-picker input[type=range][data-v-e47acf6f]{width:100%}.bm-picker span[data-v-e47acf6f]{font-size:12px;color:var(--text-soft)}.bm-preview[data-v-e47acf6f]{min-height:44px;border-radius:10px;border:1px solid rgba(0,0,0,.06);display:flex;align-items:center;gap:8px;padding:10px 12px}.bm-preview__label[data-v-e47acf6f]{display:inline-flex;align-items:center;justify-content:center;min-width:56px;height:24px;border-radius:999px;font-size:12px;background:#ffffff47}.single-grid[data-v-5575a033]{grid-template-columns:1fr}.big-textarea[data-v-5575a033]{min-height:140px}.clone-table-wrap[data-v-5575a033]{margin-top:4px}.clone-table-wrap table[data-v-5575a033]{min-width:740px}.clone-textarea[data-v-5575a033]{width:100%;min-height:64px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;resize:vertical}.big-textarea[data-v-c441f680]{min-height:130px}.clone-table-wrap[data-v-c441f680]{margin-top:4px}.clone-table-wrap table[data-v-c441f680]{min-width:860px}.single-grid[data-v-dbe90b17]{grid-template-columns:1fr}.big-textarea[data-v-dbe90b17]{min-height:130px}.clone-table-wrap[data-v-dbe90b17]{margin-top:4px}.clone-table-wrap table[data-v-dbe90b17]{min-width:640px}.clone-textarea[data-v-dbe90b17]{width:100%;min-height:64px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;resize:vertical}.big-textarea[data-v-6a811b38]{min-height:96px}.clone-table-wrap[data-v-6a811b38]{margin-top:4px}.clone-table-wrap table[data-v-6a811b38]{min-width:980px}.tiny[data-v-2722b957]{font-size:12px}.multiline[data-v-2722b957]{white-space:normal;line-height:1.45;min-width:220px}.reply-origin[data-v-2722b957]{border:1px solid var(--line);background:var(--panel-soft);border-radius:10px;padding:10px 12px;margin-bottom:12px}.reply-origin-content[data-v-2722b957]{margin-top:4px;white-space:pre-wrap;word-break:break-word;line-height:1.45}.big-textarea[data-v-2722b957]{min-height:120px}.section-card[data-v-854a2366]{margin-top:14px;border:1px solid var(--line);border-radius:12px;background:#fbfefc;padding:14px}.section-title[data-v-854a2366]{font-size:14px;font-weight:700;margin-bottom:10px}.section-actions[data-v-854a2366]{margin-top:10px;display:flex;justify-content:flex-end;gap:8px}.single-grid[data-v-854a2366]{grid-template-columns:1fr}.multiline[data-v-854a2366]{white-space:normal;line-height:1.45;min-width:280px}.big-textarea[data-v-854a2366]{min-height:120px}.result-card[data-v-854a2366]{margin-top:10px;border:1px dashed #c6ddcf;border-radius:10px;padding:10px 12px;background:#f5fbf7}.result-line[data-v-854a2366]{line-height:1.55}.clone-table-wrap[data-v-854a2366]{margin-top:4px}.clone-table-wrap table[data-v-854a2366]{min-width:740px}.clone-textarea[data-v-854a2366]{width:100%;min-height:64px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;resize:vertical}.big-textarea[data-v-59e57028]{min-height:96px}.finance-chart[data-v-85683211]{display:grid;gap:6px}.finance-chart-svg[data-v-85683211]{width:100%;height:336px;display:block;overflow:visible}.grid-line[data-v-85683211]{stroke:#758c7e2e;stroke-width:1;stroke-dasharray:4 6}.axis-line[data-v-85683211]{stroke:#2b40333d;stroke-width:1.4}.axis-label[data-v-85683211]{fill:#6a7c70;font-size:12px;font-weight:600}.axis-label-y[data-v-85683211]{text-anchor:end}.axis-label-x[data-v-85683211]{text-anchor:middle;dominant-baseline:hanging}.series-path[data-v-85683211]{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.series-income[data-v-85683211]{stroke:#2d6cdf}.series-expense[data-v-85683211]{stroke:#ff8a3d}.point[data-v-85683211]{stroke:#fff;stroke-width:2}.income-point[data-v-85683211]{fill:#2d6cdf}.expense-point[data-v-85683211]{fill:#ff8a3d}.bar-hover-bg[data-v-85683211]{fill:#ecf4ef00;transition:fill .2s ease}.bar-group[data-v-85683211]{cursor:default}.is-selectable .bar-group[data-v-85683211]{cursor:pointer}.is-selectable .bar-group:hover .bar-hover-bg[data-v-85683211],.bar-group.active .bar-hover-bg[data-v-85683211]{fill:#ebf4ee2e}.bar-rect[data-v-85683211]{transition:transform .18s ease,opacity .18s ease;transform-origin:center bottom}.is-selectable .bar-group:hover .bar-rect[data-v-85683211],.bar-group.active .bar-rect[data-v-85683211]{transform:translateY(-2px)}.income-bar[data-v-85683211]{fill:#2d6cdf}.expense-bar[data-v-85683211]{fill:#ff8a3d}.bar-group .bar-rect[data-v-85683211]{opacity:.9}.is-selectable .bar-group:hover .bar-rect[data-v-85683211],.bar-group.active .bar-rect[data-v-85683211]{opacity:1}.chart-summary-row[data-v-85683211]{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px}.chart-summary-card[data-v-85683211]{border:1px solid #e2ece5;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fbf9);padding:10px;text-align:left;display:grid;gap:4px;cursor:pointer}.chart-summary-card span[data-v-85683211]{font-size:12px;color:#6b7f72}.chart-summary-card strong[data-v-85683211]{font-size:12px;color:#1e3628}.chart-summary-card.active[data-v-85683211]{border-color:#2f8f57;background:linear-gradient(180deg,#f2fbf6,#ebf7ef)}@media (max-width: 768px){.finance-chart-svg[data-v-85683211]{height:296px}}.ledger-page[data-v-f7b17e89]{display:grid;gap:16px;padding-bottom:24px}.hero-card[data-v-f7b17e89],.panel[data-v-f7b17e89],.tab-btn[data-v-f7b17e89],.modal-card[data-v-f7b17e89],.summary-card[data-v-f7b17e89]{background:#fff;border:1px solid #dbe8df;box-shadow:0 10px 22px #1831220d}.hero-card[data-v-f7b17e89]{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;padding:12px 16px;border-radius:18px;background:linear-gradient(180deg,#fbfdfb,#f3f8f4)}.hero-main[data-v-f7b17e89]{display:grid;gap:8px;min-width:0}.share-strip[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.share-card[data-v-f7b17e89]{border:1px solid #deebe2;border-radius:16px;background:#ffffffeb;padding:10px 12px;display:grid;gap:4px;min-width:0}.share-card span[data-v-f7b17e89]{font-size:12px;color:#667d6f}.share-card strong[data-v-f7b17e89]{font-size:17px;line-height:1.2;color:#173422}.share-card small[data-v-f7b17e89]{line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-title-row[data-v-f7b17e89],.hero-meta[data-v-f7b17e89],.panel-actions[data-v-f7b17e89],.inline-actions[data-v-f7b17e89],.entry-actions[data-v-f7b17e89],.legend[data-v-f7b17e89],.color-row[data-v-f7b17e89]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hero-badge[data-v-f7b17e89],.chip[data-v-f7b17e89],.hero-book[data-v-f7b17e89],.hero-text[data-v-f7b17e89],.panel p[data-v-f7b17e89],.field span[data-v-f7b17e89],small[data-v-f7b17e89],.legend[data-v-f7b17e89],.entry-meta[data-v-f7b17e89]{font-size:12px;color:#5f7467}.hero-badge[data-v-f7b17e89]{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#2f8f571f;color:#1f6d43;font-weight:700}.hero-book[data-v-f7b17e89]{padding:5px 10px;border-radius:999px;background:#ffffffd6;border:1px solid #dfebe2;font-weight:600}.hero-card h2[data-v-f7b17e89],.panel h3[data-v-f7b17e89]{margin:0;color:#193421}.hero-card h2[data-v-f7b17e89]{font-size:20px}.hero-text[data-v-f7b17e89]{margin:0;font-size:12px;line-height:1.55;max-width:680px}.chip[data-v-f7b17e89]{padding:6px 10px;border-radius:999px;border:1px solid #deebe2;background:#ffffffe0}.hero-filters[data-v-f7b17e89],.summary-grid[data-v-f7b17e89],.overview-grid[data-v-f7b17e89],.setup-grid[data-v-f7b17e89],.entries-layout[data-v-f7b17e89],.form-grid[data-v-f7b17e89],.toolbar-grid[data-v-f7b17e89],.summary-strip[data-v-f7b17e89],.split-grid[data-v-f7b17e89]{display:grid;gap:12px}.hero-filters[data-v-f7b17e89]{align-content:start}.compact-field[data-v-f7b17e89]{gap:5px}.tabs[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;position:sticky;top:10px;z-index:20}.tab-btn[data-v-f7b17e89]{display:grid;gap:4px;padding:12px 14px;text-align:left;border-radius:18px;cursor:pointer;transition:.18s ease}.tab-btn strong[data-v-f7b17e89]{font-size:16px;color:#234032}.tab-btn span[data-v-f7b17e89]{color:#6b7f73}.tab-btn.active[data-v-f7b17e89],.segment-btn.active[data-v-f7b17e89],.btn-primary[data-v-f7b17e89]{background:#2f8f57;border-color:#2f8f57;color:#fff}.tab-btn.active strong[data-v-f7b17e89],.tab-btn.active span[data-v-f7b17e89],.segment-btn.active[data-v-f7b17e89]{color:#fff}.tab-btn[data-v-f7b17e89]:not(.active){background:linear-gradient(180deg,#fff,#f7fbf8)}.segment-btn[data-v-f7b17e89]:not(.active){background:linear-gradient(180deg,#fff,#f4f8f5);color:#2f4a3b;border-color:#cfdfd5;font-weight:600}.tab-btn[data-v-f7b17e89]:hover,.btn[data-v-f7b17e89]:hover,.segment-btn[data-v-f7b17e89]:hover,.legend-row[data-v-f7b17e89]:hover,.group-head[data-v-f7b17e89]:hover,.planner-month-btn[data-v-f7b17e89]:hover,.year-row[data-v-f7b17e89]:hover{transform:translateY(-1px);box-shadow:0 8px 18px #1c342414}.summary-grid[data-v-f7b17e89]{grid-template-columns:repeat(4,minmax(0,1fr))}.summary-card[data-v-f7b17e89]{border-radius:20px;padding:16px;display:grid;gap:10px;min-height:128px}.summary-head[data-v-f7b17e89]{display:grid;gap:4px}.summary-head span[data-v-f7b17e89]{font-size:13px;color:#5f7467}.summary-head strong[data-v-f7b17e89]{font-size:26px;line-height:1.1;color:#193421}.summary-line[data-v-f7b17e89]{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#506457;font-size:13px}.summary-line b[data-v-f7b17e89]{color:#203829}.accent-income[data-v-f7b17e89]{background:linear-gradient(180deg,#eef6ff,#fff)}.accent-balance[data-v-f7b17e89]{background:linear-gradient(180deg,#eef8f1,#fff)}.accent-year[data-v-f7b17e89]{background:linear-gradient(180deg,#fff5ea,#fff)}.accent-plan[data-v-f7b17e89]{background:linear-gradient(180deg,#f3f0ff,#fff)}.overview-grid[data-v-f7b17e89],.setup-grid[data-v-f7b17e89]{grid-template-columns:repeat(2,minmax(0,1fr))}.entries-layout[data-v-f7b17e89]{grid-template-columns:420px minmax(0,1fr);align-items:start}.panel[data-v-f7b17e89]{position:relative;overflow:hidden;border-radius:18px;padding:14px}.fixed-panel[data-v-f7b17e89]{min-height:0}.fixed-overview-grid[data-v-f7b17e89]{align-items:stretch}.trend-panel[data-v-f7b17e89],.annual-panel[data-v-f7b17e89]{height:auto;min-height:560px}.category-panel[data-v-f7b17e89],.member-panel[data-v-f7b17e89]{height:480px}.entry-form-panel[data-v-f7b17e89],.entry-list-panel[data-v-f7b17e89]{height:720px}.entry-form-panel[data-v-f7b17e89],.entry-list-panel[data-v-f7b17e89]{display:grid}.entry-form-panel[data-v-f7b17e89]{grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden}.entry-list-panel[data-v-f7b17e89]{grid-template-rows:auto auto minmax(0,1fr) auto}.member-panel[data-v-f7b17e89],.category-panel[data-v-f7b17e89]{min-height:0}.member-panel[data-v-f7b17e89],.category-panel[data-v-f7b17e89]{display:grid;grid-template-rows:auto minmax(0,1fr);gap:6px}.year-member-panel[data-v-f7b17e89]:before{background:linear-gradient(90deg,rgba(45,108,223,.24),transparent)}.month-member-panel[data-v-f7b17e89]:before{background:linear-gradient(90deg,rgba(255,138,61,.26),transparent)}.panel[data-v-f7b17e89]:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:linear-gradient(90deg,rgba(47,143,87,.18),transparent)}.panel-large[data-v-f7b17e89],.panel-span[data-v-f7b17e89]{grid-column:span 2}.panel-head[data-v-f7b17e89]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.panel-head h3[data-v-f7b17e89]{font-size:17px}.panel-title-row[data-v-f7b17e89]{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.panel-head p[data-v-f7b17e89]{margin:6px 0 0;line-height:1.45;max-width:540px}.panel-title-note[data-v-f7b17e89]{font-size:12px;font-weight:600;color:#6d8376}.panel-chip[data-v-f7b17e89]{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 10px;border-radius:999px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.02em}.panel-chip-year[data-v-f7b17e89]{background:#2d6cdf1a;border-color:#2d6cdf29;color:#2854a4}.setup-grid>.panel[data-v-f7b17e89]:first-child:before{background:linear-gradient(90deg,rgba(45,108,223,.24),transparent)}.setup-grid>.panel[data-v-f7b17e89]:nth-child(2):before{background:linear-gradient(90deg,rgba(255,138,61,.26),transparent)}.planner-panel[data-v-f7b17e89]:before{background:linear-gradient(90deg,rgba(47,143,87,.24),transparent)}.compact-head[data-v-f7b17e89]{margin-bottom:12px}.with-action[data-v-f7b17e89]{align-items:center}.segmented[data-v-f7b17e89]{display:flex;gap:8px;flex-wrap:wrap}.segmented.soft .segment-btn[data-v-f7b17e89]{background:#f4f8f5}.segmented .segment-btn.active[data-v-f7b17e89]{background:linear-gradient(180deg,#dff3e7,#eef8f2);border-color:#8cc3a2;color:#173422;box-shadow:inset 0 0 0 1px #2f8f5714}.segment-btn[data-v-f7b17e89],.btn[data-v-f7b17e89],.legend-row[data-v-f7b17e89],.planner-month-btn[data-v-f7b17e89],.year-row[data-v-f7b17e89]{border:1px solid #d6e4db;background:#fff;color:#254133;border-radius:12px;padding:8px 12px;cursor:pointer;transition:.18s ease}.btn-compact[data-v-f7b17e89]{padding:4px 8px;min-width:54px;font-size:12px}.btn-soft[data-v-f7b17e89]{background:#eef7f1}.btn-danger[data-v-f7b17e89]{background:#fff1f1;border-color:#efc6c6;color:#bb3f3f}.btn-danger.ghost[data-v-f7b17e89]{padding:8px 12px}.field[data-v-f7b17e89]{display:grid;gap:7px}.field>span[data-v-f7b17e89]{font-size:13px;font-weight:700;color:#234032}.field-label-with-tip[data-v-f7b17e89]{position:relative;display:inline-flex;align-items:center;width:fit-content;cursor:help}.field-label-with-tip[data-v-f7b17e89]:after{content:attr(data-tip);position:absolute;left:0;top:calc(100% + 10px);min-width:190px;max-width:280px;padding:8px 10px;border-radius:12px;background:#13271cf0;color:#fff;font-size:12px;font-weight:500;line-height:1.5;box-shadow:0 12px 28px #101f162e;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .18s ease,transform .18s ease;transition-delay:0s;z-index:12}.field-label-with-tip[data-v-f7b17e89]:hover:after{opacity:1;transform:translateY(0);transition-delay:.35s}.field input[data-v-f7b17e89],.field select[data-v-f7b17e89],.field textarea[data-v-f7b17e89],.toolbar-grid input[data-v-f7b17e89],.toolbar-grid select[data-v-f7b17e89]{width:100%;border:1px solid #d7e4db;background:#fbfefc;border-radius:10px;padding:9px 11px;font-size:13px;box-sizing:border-box}.field input[data-v-f7b17e89]::placeholder,.toolbar-grid input[data-v-f7b17e89]::placeholder,.field textarea[data-v-f7b17e89]::placeholder{font-size:12px;color:#8aa092}.field-span[data-v-f7b17e89]{grid-column:1 / -1}.two-col[data-v-f7b17e89]{grid-template-columns:repeat(2,minmax(0,1fr))}.centered-actions[data-v-f7b17e89]{justify-content:center}.form-actions[data-v-f7b17e89]{display:flex;gap:10px;margin-top:14px}.sticky-panel[data-v-f7b17e89]{position:sticky;top:72px}.entry-quick-stats[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.mini-stat[data-v-f7b17e89]{padding:10px 12px;border-radius:14px;border:1px solid #e3ece5;background:linear-gradient(180deg,#fff,#f8fcf9);display:grid;gap:4px}.mini-stat.income[data-v-f7b17e89]{border-color:#bcd8ff;background:linear-gradient(180deg,#eff6ff,#fff)}.mini-stat.expense[data-v-f7b17e89]{border-color:#f1c0c8;background:linear-gradient(180deg,#fff1f4,#fff)}.mini-stat span[data-v-f7b17e89]{font-size:12px;color:#62776a}.mini-stat strong[data-v-f7b17e89]{color:#1b3524}.toolbar-grid[data-v-f7b17e89]{grid-template-columns:2fr repeat(2,minmax(0,1fr));gap:10px}.sticky-toolbar[data-v-f7b17e89]{position:sticky;top:72px;z-index:5;padding:8px 10px;border-radius:16px;background:linear-gradient(180deg,#f7fcf8f7,#fffffff7);border:1px solid #e3ece5;margin-bottom:14px}.entry-mode-tabs[data-v-f7b17e89]{margin-bottom:14px}.entry-tab-btn[data-v-f7b17e89]{min-width:104px;justify-content:center;font-weight:700}.header-entry-tabs[data-v-f7b17e89]{margin-bottom:0;justify-content:flex-end;align-self:center}.entry-form-grid[data-v-f7b17e89]{min-height:0;overflow:auto;padding-right:6px;align-content:start}.entry-tab-btn.income-tab.active[data-v-f7b17e89]{background:linear-gradient(180deg,#dbeafe,#eef6ff);border-color:#86b7ff;color:#123c74;box-shadow:inset 0 0 0 1px #2d6cdf1f}.entry-tab-btn.expense-tab.active[data-v-f7b17e89]{background:linear-gradient(180deg,#ffe2e7,#fff1f4);border-color:#ee9aa8;color:#7d1f31;box-shadow:inset 0 0 0 1px #d9485f1f}.scroll-box[data-v-f7b17e89]{overflow:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:#b7c9bd transparent}.scroll-box[data-v-f7b17e89]::-webkit-scrollbar{width:8px}.scroll-box[data-v-f7b17e89]::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#c8d8cd,#aebfb4);border-radius:999px}.scroll-box[data-v-f7b17e89]::-webkit-scrollbar-track{background:transparent}.tall-scroll[data-v-f7b17e89]{height:auto;min-height:0}.medium-scroll[data-v-f7b17e89]{max-height:320px}.group-list[data-v-f7b17e89],.card-list[data-v-f7b17e89],.detail-list[data-v-f7b17e89]{display:grid;gap:12px}.group-list[data-v-f7b17e89]{align-content:start}.group-card[data-v-f7b17e89],.config-card[data-v-f7b17e89],.member-compare-card[data-v-f7b17e89]{border:1px solid #e3ece5;border-radius:16px;background:#fbfefc}.group-card[data-v-f7b17e89]{overflow:hidden;background:linear-gradient(180deg,#fff,#f7fbf8)}.group-card.group-card-income[data-v-f7b17e89]{border-color:#cfe0f4;box-shadow:inset 4px 0 #2d6cdf}.group-card.group-card-expense[data-v-f7b17e89]{border-color:#f0ccd3;box-shadow:inset 4px 0 #d9485f}.group-card[data-v-f7b17e89]:not(.expanded){min-height:72px}.group-card[data-v-f7b17e89]:nth-child(4n+1){border-color:#cfe0f4;box-shadow:inset 4px 0 #2d6cdf}.group-card[data-v-f7b17e89]:nth-child(4n+2){border-color:#cfe6d8;box-shadow:inset 4px 0 #2f8f57}.group-card[data-v-f7b17e89]:nth-child(4n+3){border-color:#f1dcc1;box-shadow:inset 4px 0 #ff8a3d}.group-card[data-v-f7b17e89]:nth-child(4n+4){border-color:#e2d5f4;box-shadow:inset 4px 0 #7a52cc}.config-card[data-v-f7b17e89]:hover,.member-compare-card[data-v-f7b17e89]:hover,.year-month-card[data-v-f7b17e89]:hover{transform:translateY(-1px);box-shadow:0 10px 20px #1831220f}.config-card.plan-card[data-v-f7b17e89]{background:linear-gradient(180deg,#fff,#f9fcfa)}.group-head[data-v-f7b17e89],.config-top[data-v-f7b17e89],.entry-row[data-v-f7b17e89],.year-row-top[data-v-f7b17e89],.stack-head[data-v-f7b17e89],.triple-line[data-v-f7b17e89],.member-compare-top[data-v-f7b17e89],.compare-line[data-v-f7b17e89],.detail-row[data-v-f7b17e89]{display:flex;align-items:center;justify-content:space-between;gap:12px}.polished-group-head[data-v-f7b17e89]{width:100%;padding:12px;background:linear-gradient(180deg,#ffffffeb,#f3f9f5eb);border-bottom:1px solid #e8f0ea}.group-head-main[data-v-f7b17e89]{display:grid;gap:4px;min-width:0}.group-head-main strong[data-v-f7b17e89]{font-size:15px;color:#183223}.group-head-main small[data-v-f7b17e89]{color:#60786a}.group-head-right[data-v-f7b17e89]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.group-total[data-v-f7b17e89]{font-weight:800}.expand-pill[data-v-f7b17e89]{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;border:1px solid #d8e5dc;background:#f5faf6;color:#2c4f39;font-weight:700;cursor:pointer}.expand-pill.active[data-v-f7b17e89]{background:#eaf6ee;border-color:#bcd8c7}.detail-pill[data-v-f7b17e89]{background:#fff}.danger-pill[data-v-f7b17e89]{color:#b33b4f;border-color:#efc8d1;background:#fff7f8}.danger-pill[data-v-f7b17e89]:hover{background:#fdecef;border-color:#e7aab8}.chevron[data-v-f7b17e89]{width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .18s ease}.chevron.open[data-v-f7b17e89]{transform:rotate(225deg)}.entry-list[data-v-f7b17e89]{padding:0 10px 10px;max-height:360px}.entry-table[data-v-f7b17e89]{border:1px solid #e2ece5;border-radius:14px;overflow:hidden;background:#fff;box-shadow:inset 0 1px #ffffffe6}.entry-table-head[data-v-f7b17e89],.entry-table-row[data-v-f7b17e89]{display:grid;grid-template-columns:minmax(130px,1fr) minmax(180px,1.1fr) minmax(180px,1.1fr) minmax(100px,.65fr) minmax(176px,auto);gap:10px;align-items:center}.entry-table-head[data-v-f7b17e89]{padding:8px 12px;background:linear-gradient(180deg,#eaf4ee,#f6fbf8);border-bottom:1px solid #e2ece5;font-size:11px;color:#50695a;font-weight:700}.entry-table-row[data-v-f7b17e89]{padding:9px 12px;border-bottom:1px solid #edf3ee}.entry-table-row[data-v-f7b17e89]:nth-child(odd){background:#fff}.entry-table-row[data-v-f7b17e89]:nth-child(2n){background:#edf7f1}.entry-table-row[data-v-f7b17e89]:hover{background:#e4f3ea}.pager-bar[data-v-f7b17e89]{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;padding-top:10px;border-top:1px solid #e6efe8;margin-top:10px}.pager-text[data-v-f7b17e89]{justify-self:center;font-size:13px;font-weight:700;color:#234032}.pager-note[data-v-f7b17e89]{color:#6b8173;justify-self:end}.entry-table-row[data-v-f7b17e89]:last-child{border-bottom:none}.entry-col[data-v-f7b17e89]{min-width:0;display:grid;gap:3px}.entry-col strong[data-v-f7b17e89]{font-size:12px;color:#1f3929;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-col small[data-v-f7b17e89]{font-size:11px;line-height:1.35;color:#6a8072;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-col-main strong[data-v-f7b17e89]{font-size:13px}.amount-col[data-v-f7b17e89]{text-align:right;justify-items:end;padding:0}.entry-amount[data-v-f7b17e89]{font-size:15px;font-weight:800}.entry-actions-inline[data-v-f7b17e89]{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:6px}.entry-table-head span[data-v-f7b17e89]:last-child,.entry-table-row>.entry-actions-inline[data-v-f7b17e89]{justify-self:end}.entry-detail-list[data-v-f7b17e89]{max-height:calc(100vh - 120px);padding-right:4px;overflow:auto;overscroll-behavior:contain}.entry-detail-modal[data-v-f7b17e89]{width:calc(100vw - 8px);max-width:none;max-height:calc(100vh - 8px);border-radius:22px}.entry-modal-table[data-v-f7b17e89]{min-width:1120px}.entry-modal-table .entry-table-row[data-v-f7b17e89]{min-height:0}.member-picker-grid[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.member-pick-card[data-v-f7b17e89]{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;border:1px solid #dfeae2;border-radius:14px;background:linear-gradient(180deg,#fff,#f8fcf9);cursor:pointer;transition:.18s ease}.member-pick-card[data-v-f7b17e89]:hover{transform:translateY(-1px);box-shadow:0 8px 18px #1c342414}.member-pick-card.active[data-v-f7b17e89]{border-color:#2f8f57;background:linear-gradient(180deg,#eef8f1,#fff);box-shadow:0 10px 22px #2f8f571f}.member-pick-input[data-v-f7b17e89]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none}.member-pick-avatar[data-v-f7b17e89]{width:30px;height:30px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.member-pick-main[data-v-f7b17e89]{min-width:0;display:grid;gap:2px}.member-pick-main strong[data-v-f7b17e89]{font-size:13px;line-height:1.2;color:#1c3828;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-pick-main small[data-v-f7b17e89]{font-size:11px;color:#6b8072;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-pick-check[data-v-f7b17e89]{min-width:38px;padding:3px 7px;border-radius:999px;background:#f1f6f3;color:#5a7364;font-size:11px;font-weight:700;text-align:center}.member-pick-card.active .member-pick-check[data-v-f7b17e89]{background:#2f8f57;color:#fff}.legend[data-v-f7b17e89]{color:#5d7265}.compact-legend[data-v-f7b17e89]{margin-bottom:10px}.chart-legend[data-v-f7b17e89]{justify-content:space-between;padding:8px 10px;border-radius:14px;background:linear-gradient(180deg,#f7fbf8,#eef5f1);border:1px solid #dfeae3}.legend-note[data-v-f7b17e89]{margin-left:auto;color:#789081}.dot[data-v-f7b17e89],.legend-swatch[data-v-f7b17e89]{width:10px;height:10px;border-radius:999px;display:inline-block;flex:0 0 auto}.legend-swatch.large[data-v-f7b17e89]{width:16px;height:16px}.dot.income[data-v-f7b17e89],.bar.income[data-v-f7b17e89],.compare-bar.income[data-v-f7b17e89],.year-bar.income[data-v-f7b17e89],.income-path[data-v-f7b17e89],.income-point[data-v-f7b17e89]{background:#2d6cdf;stroke:#2d6cdf;fill:#2d6cdf}.dot.expense[data-v-f7b17e89],.bar.expense[data-v-f7b17e89],.compare-bar.expense[data-v-f7b17e89],.year-bar.expense[data-v-f7b17e89],.expense-path[data-v-f7b17e89],.expense-point[data-v-f7b17e89]{background:#d9485f;stroke:#d9485f;fill:#d9485f}.dot.balance[data-v-f7b17e89]{background:#ff8a3d}.income-text[data-v-f7b17e89]{color:#2d6cdf}.expense-text[data-v-f7b17e89]{color:#d9485f}.ok[data-v-f7b17e89]{color:#2f8f57}.danger[data-v-f7b17e89]{color:#d24a4a}.trend-body[data-v-f7b17e89],.annual-body[data-v-f7b17e89]{height:auto;display:grid;grid-template-rows:auto minmax(260px,1fr) auto;min-height:0}.line-chart-wrap[data-v-f7b17e89],.year-line-box[data-v-f7b17e89]{display:grid;grid-template-rows:1fr auto;min-height:0;border:1px solid #e2ece5;border-radius:18px;padding:12px 12px 10px;background:linear-gradient(180deg,#fff,#f7fbf8);box-shadow:inset 0 1px #ffffffeb}.chart-strip[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.chart-chip[data-v-f7b17e89]{border:1px solid #e1ebe4;border-radius:16px;padding:10px 12px;background:#fff;display:grid;gap:4px}.chart-chip span[data-v-f7b17e89]{font-size:12px;color:#678071}.chart-chip strong[data-v-f7b17e89]{font-size:18px;color:#193421}.income-chip[data-v-f7b17e89]{background:linear-gradient(180deg,#eef5ff,#fff)}.expense-chip[data-v-f7b17e89]{background:linear-gradient(180deg,#eef8f1,#fff)}.neutral-chip[data-v-f7b17e89]{background:linear-gradient(180deg,#fbfdfb,#fff)}.line-chart[data-v-f7b17e89]{width:100%;height:100%}.guide-line[data-v-f7b17e89]{stroke:#e4ede7;stroke-width:1;stroke-dasharray:5 5}.axis-line[data-v-f7b17e89]{stroke:#d7e4db;stroke-width:1.2}.line-path[data-v-f7b17e89]{fill:none;stroke-width:3.2;stroke-linejoin:round;stroke-linecap:round}.point[data-v-f7b17e89]{stroke:#fff;stroke-width:2}.point-text[data-v-f7b17e89]{font-size:11px;text-anchor:middle;font-weight:700;paint-order:stroke;stroke:#fffffff5;stroke-width:5px;stroke-linejoin:round}.income-svg-text[data-v-f7b17e89]{fill:#2d6cdf}.expense-svg-text[data-v-f7b17e89]{fill:#2f8f57}.line-labels[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:8px;color:#6a7d72;font-size:12px;text-align:center}.year-labels[data-v-f7b17e89]{grid-template-columns:repeat(12,minmax(0,1fr))}.bar-chart-wrap[data-v-f7b17e89]{height:100%;border:1px solid #e2ece5;border-radius:18px;padding:14px 14px 10px;background:linear-gradient(180deg,#fff,#f7fbf8)}.bar-chart-grid[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(auto-fit,minmax(56px,1fr));gap:12px;height:100%;align-items:end}.bar-col[data-v-f7b17e89]{display:grid;gap:8px;align-items:end}.bar-pair[data-v-f7b17e89]{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-height:220px;align-items:end}.bar-wrap[data-v-f7b17e89]{display:grid;gap:6px;align-items:end}.bar-track[data-v-f7b17e89]{min-height:220px;border-radius:14px;background:linear-gradient(180deg,#f4f8f5,#ebf2ed);display:flex;align-items:flex-end;overflow:hidden}.bar[data-v-f7b17e89]{border-radius:12px 12px 5px 5px;min-height:8px;width:100%;box-shadow:inset 0 -1px #ffffff3d}.bar-value[data-v-f7b17e89],.bar-label[data-v-f7b17e89]{font-size:12px;text-align:center}.year-grid[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(12,minmax(72px,1fr));gap:10px;max-height:100%;overflow:auto;padding-right:4px;align-items:stretch}.year-month-card[data-v-f7b17e89]{display:grid;gap:6px;padding:12px;border:1px solid #e1ebe4;border-radius:16px;background:linear-gradient(180deg,#fff,#f7fbf8);text-align:left;color:#244233}.year-month-card.active[data-v-f7b17e89]{border-color:#2f8f57;box-shadow:0 10px 24px #2f8f5724}.year-month-top[data-v-f7b17e89]{display:flex;justify-content:space-between;gap:8px;align-items:center}.year-chart-card[data-v-f7b17e89]{min-height:250px;grid-template-rows:auto 1fr auto;box-shadow:inset 0 1px #ffffffeb}.year-column-chart[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:end;min-height:160px}.year-column-track[data-v-f7b17e89]{min-height:160px;display:flex;align-items:flex-end;border-radius:14px;background:linear-gradient(180deg,#f4f8f5,#ebf2ed);padding:0 2px}.year-column[data-v-f7b17e89]{width:100%;min-height:12px;border-radius:12px 12px 5px 5px;display:flex;align-items:flex-start;justify-content:center;padding-top:8px;color:#fff;font-size:11px;font-weight:700;box-shadow:inset 0 -1px #ffffff3d}.year-card-legend[data-v-f7b17e89]{display:flex;justify-content:space-between;font-size:11px;color:#698072}.year-row[data-v-f7b17e89]{display:grid;gap:10px;text-align:left;padding:12px;border-radius:14px;background:linear-gradient(180deg,#fff,#f9fcfa)}.year-row.active[data-v-f7b17e89]{border-color:#2f8f57;background:#eef8f2}.year-bars[data-v-f7b17e89]{display:grid;gap:8px}.year-bar[data-v-f7b17e89]{height:26px;border-radius:999px;color:#fff;display:flex;align-items:center;padding:0 10px;font-size:12px;font-weight:700;min-width:56px}.category-layout[data-v-f7b17e89]{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr);gap:12px;min-height:0}.category-top[data-v-f7b17e89]{display:grid;grid-template-columns:168px minmax(0,1fr);gap:12px;align-items:stretch}.category-side[data-v-f7b17e89]{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px}.category-side-head[data-v-f7b17e89]{margin-bottom:0}.category-focus[data-v-f7b17e89]{border:1px solid #e4eee7;border-radius:16px;background:linear-gradient(180deg,#fbfefc,#fff);padding:9px 11px;display:grid;gap:3px;margin-bottom:8px}.category-focus span[data-v-f7b17e89]{font-size:12px;color:#688071}.category-focus strong[data-v-f7b17e89]{font-size:16px;color:#193421}.donut-wrap[data-v-f7b17e89]{display:flex;align-items:center;justify-content:center}.donut-ring[data-v-f7b17e89]{width:150px;height:150px;border-radius:50%;display:flex;align-items:center;justify-content:center}.donut-inner[data-v-f7b17e89]{width:92px;height:92px;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center;box-shadow:inset 0 0 0 1px #e0ebe3}.donut-inner span[data-v-f7b17e89]{font-size:12px;color:#688071}.donut-inner strong[data-v-f7b17e89]{font-size:16px;color:#1b3524}.member-compare[data-v-f7b17e89]{min-height:0}.member-list[data-v-f7b17e89],.stack-list[data-v-f7b17e89]{max-height:340px;overflow:auto;padding-right:4px;align-content:start}.member-stat-card[data-v-f7b17e89]{border:1px solid #e3ece5;border-radius:16px;background:#fbfefc;padding:14px}.member-stat-top[data-v-f7b17e89]{display:flex;gap:12px;margin-bottom:10px}.category-legend[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;align-content:start;min-height:0;max-height:100%;padding-right:4px}.category-card[data-v-f7b17e89]{border:1px solid #e3ece5;border-radius:16px;background:linear-gradient(180deg,#fff,#f9fcfa);padding:9px 10px;display:grid;gap:4px;text-align:left;cursor:pointer;transition:.18s ease}.category-card[data-v-f7b17e89]:hover{transform:translateY(-1px);box-shadow:0 10px 20px #1831220f}.category-card.active[data-v-f7b17e89]{border-color:#2f8f57;background:linear-gradient(180deg,#f3fbf6,#eef8f2);box-shadow:inset 0 0 0 1px #2f8f5714}.category-card-top[data-v-f7b17e89]{display:flex;align-items:center;justify-content:space-between;gap:10px}.category-card-top em[data-v-f7b17e89]{font-style:normal;font-size:11px;font-weight:700;color:#5f7768}.category-card strong[data-v-f7b17e89]{font-size:14px;color:#1f3729}.category-card-meta[data-v-f7b17e89]{display:flex;align-items:center;justify-content:space-between;gap:8px}.category-card small[data-v-f7b17e89]{font-size:11px;color:#688071}.category-hint[data-v-f7b17e89]{color:#9a6a1b!important;font-weight:700}@media (min-width: 1500px){.category-legend[data-v-f7b17e89]{grid-template-columns:repeat(5,minmax(0,1fr))}}.legend-left[data-v-f7b17e89]{display:inline-flex;align-items:center;gap:8px}.legend-index[data-v-f7b17e89]{width:18px;height:18px;border-radius:999px;background:#edf4ef;color:#456352;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:11px;font-weight:700;flex:none}.panel-inset[data-v-f7b17e89]{border:1px solid #e3ece5;border-radius:18px;padding:12px;background:linear-gradient(180deg,#fff,#f8fcf9);min-height:0}.category-detail[data-v-f7b17e89]{min-height:0;overflow:hidden}.expand-btn[data-v-f7b17e89]{border:1px solid #d8e7dd;background:#f7fbf8;color:#21422f;border-radius:999px;padding:6px 10px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;cursor:pointer}.expand-btn svg[data-v-f7b17e89]{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.expand-btn[data-v-f7b17e89]:hover{border-color:#2f8f57;background:#eef8f2}.detail-list[data-v-f7b17e89]{max-height:100%}.category-detail-modal[data-v-f7b17e89]{width:min(1480px,calc(100vw - 48px))}.category-modal-summary[data-v-f7b17e89]{display:grid;gap:4px;padding:12px 14px;border:1px solid #e4eee7;border-radius:16px;background:linear-gradient(180deg,#fbfefc,#f4faf6);margin-bottom:12px}.category-modal-summary span[data-v-f7b17e89]{font-size:12px;color:#688071}.category-modal-summary strong[data-v-f7b17e89]{font-size:18px;color:#193421}.category-modal-summary small[data-v-f7b17e89]{font-size:12px;color:#597162}.category-modal-list[data-v-f7b17e89]{max-height:74vh;padding-right:6px;overscroll-behavior:contain}.category-modal-row[data-v-f7b17e89]{padding:12px 0}.detail-row[data-v-f7b17e89]{padding:10px 0;border-bottom:1px solid #edf3ee;align-items:flex-start}.detail-row[data-v-f7b17e89]:last-child{border-bottom:none}.mini-empty[data-v-f7b17e89]{padding:18px}.member-compare[data-v-f7b17e89]{display:grid;gap:12px;min-height:0;height:100%;padding-right:8px;align-content:start}.member-compare-card[data-v-f7b17e89]{padding:14px}.year-member-panel .member-compare-card[data-v-f7b17e89]{background:linear-gradient(180deg,#fff,#f7faff);border-color:#dbe6f8}.month-member-panel .member-compare-card[data-v-f7b17e89]{background:linear-gradient(180deg,#fff,#fff9f4);border-color:#f0dfd0}.member-compare-top[data-v-f7b17e89]{align-items:flex-start}.member-compare-meta[data-v-f7b17e89]{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:12px;font-size:12px}.member-compare-meta span[data-v-f7b17e89]{font-weight:700;color:#244032}.member-compare-meta small[data-v-f7b17e89]{color:#6f8577}.year-member-panel .member-compare-meta[data-v-f7b17e89]{background:#2d6cdf0f}.month-member-panel .member-compare-meta[data-v-f7b17e89]{background:#ff8a3d14}.config-user[data-v-f7b17e89]{display:flex;align-items:center;gap:10px}.member-compare-top .config-user>div[data-v-f7b17e89]{display:inline-flex;align-items:baseline;gap:8px;flex-wrap:wrap}.avatar[data-v-f7b17e89]{width:28px;height:28px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.compare-line[data-v-f7b17e89]{margin-top:10px;gap:10px}.compare-line span[data-v-f7b17e89]{width:40px;color:#607568;font-size:13px}.compare-bar-track[data-v-f7b17e89]{flex:1;height:10px;border-radius:999px;background:#ebf1ec;overflow:hidden}.compare-bar[data-v-f7b17e89]{height:100%;border-radius:999px}.fixed-setup-grid[data-v-f7b17e89]{align-items:start}.base-panel[data-v-f7b17e89]{min-height:410px}.base-grid[data-v-f7b17e89]{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:16px;align-items:start}.base-block[data-v-f7b17e89]{min-width:0;border:1px solid #e3ece5;border-radius:20px;background:linear-gradient(180deg,#fff,#f9fcfa);padding:12px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px}.member-block[data-v-f7b17e89],.category-block[data-v-f7b17e89]{min-height:320px}.base-card-grid[data-v-f7b17e89]{display:grid;gap:8px;align-content:start}.member-card-grid[data-v-f7b17e89]{grid-template-columns:repeat(2,minmax(0,1fr))}.category-card-grid[data-v-f7b17e89]{grid-template-columns:repeat(3,minmax(0,1fr))}.member-config-scroll[data-v-f7b17e89],.category-config-scroll[data-v-f7b17e89]{max-height:228px}.sub-head-main[data-v-f7b17e89]{display:grid;gap:4px}.right-actions[data-v-f7b17e89]{justify-content:flex-end}.compact-config-card[data-v-f7b17e89]{padding:9px 10px;gap:6px;display:grid;min-height:68px}.member-compact-card[data-v-f7b17e89]{grid-template-rows:auto auto}.category-compact-card[data-v-f7b17e89]{grid-template-rows:auto}.compact-card-top[data-v-f7b17e89]{display:flex;align-items:center;justify-content:space-between;gap:8px}.compact-card-edit[data-v-f7b17e89]{width:100%;border:none;background:transparent;padding:0;text-align:left;display:block;cursor:pointer}.compact-card-edit:hover strong[data-v-f7b17e89]{color:#2f8f57}.compact-user[data-v-f7b17e89]{min-width:0;gap:8px}.compact-user>div[data-v-f7b17e89]{min-width:0;display:grid;gap:1px}.compact-user strong[data-v-f7b17e89]{font-size:14px;line-height:1.2}.compact-user small[data-v-f7b17e89]{font-size:11px}.compact-user strong[data-v-f7b17e89],.compact-user small[data-v-f7b17e89],.compact-card-meta[data-v-f7b17e89]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-card-meta[data-v-f7b17e89]{font-size:11px;color:#6a8072;padding-left:36px;line-height:1.2}.planner-panel[data-v-f7b17e89]{min-height:600px;display:grid;grid-template-rows:auto auto auto minmax(0,1fr);gap:18px;align-content:start}.planner-panel .panel-head[data-v-f7b17e89]{margin-bottom:0}.fixed-month-strip[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:0}.planner-month-btn[data-v-f7b17e89]{display:grid;gap:4px;text-align:left;padding:10px 12px;border-radius:14px;background:linear-gradient(180deg,#fff,#f7fbf8)}.planner-month-btn strong[data-v-f7b17e89]{font-size:13px}.planner-month-btn span[data-v-f7b17e89]{font-size:11px;color:#607568}.planner-month-btn.active[data-v-f7b17e89]{border-color:#2f8f57;background:#eef8f2}.summary-strip[data-v-f7b17e89]{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:4px}.summary-strip .summary-card[data-v-f7b17e89]{box-shadow:none;border-color:#e1ebe4}.plan-summary[data-v-f7b17e89]{gap:6px;padding:18px 20px}.plan-summary strong[data-v-f7b17e89]{font-size:24px;line-height:1.15}.income-panel[data-v-f7b17e89]{background:linear-gradient(180deg,#eaf3ff,#fff)}.budget-panel[data-v-f7b17e89]{background:linear-gradient(180deg,#fff4e6,#fff)}.plan-panel[data-v-f7b17e89]{background:linear-gradient(180deg,#f7efff,#fff)}.balance-panel[data-v-f7b17e89]{background:linear-gradient(180deg,#ecf9ef,#fff)}.fixed-plan-grid[data-v-f7b17e89]{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;padding-top:2px}.plan-block[data-v-f7b17e89]{min-width:0}.plan-work-block[data-v-f7b17e89]{border:1px solid #e3ece5;border-radius:20px;padding:16px;background:linear-gradient(180deg,#fff,#f9fcfa)}.income-form[data-v-f7b17e89],.color-picker-box[data-v-f7b17e89],.member-color-box[data-v-f7b17e89]{position:relative}.category-modal[data-v-f7b17e89]{width:min(620px,100%)}.income-form[data-v-f7b17e89]{padding:14px;border:1px solid #e3ece5;border-radius:16px;background:linear-gradient(180deg,#f8fbff,#fff);margin-bottom:12px}.sub-head[data-v-f7b17e89]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.sub-head strong[data-v-f7b17e89]{font-size:15px;color:#1f3c2a}.empty[data-v-f7b17e89]{padding:24px;text-align:center;color:#6d7f74;border:1px dashed #d9e6de;border-radius:16px;background:#fbfefc}.palette-popover[data-v-f7b17e89],.palette-panel[data-v-f7b17e89]{margin-top:10px;border:1px solid #dce7df;border-radius:18px;background:#fff;box-shadow:0 16px 30px #152c1e1a;padding:12px}.palette-panel-wide[data-v-f7b17e89]{padding:14px}.member-visibility-note[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.visibility-chip[data-v-f7b17e89]{border:1px solid #e1ebe4;border-radius:16px;padding:10px 12px;display:grid;gap:4px;background:#fff}.visibility-chip strong[data-v-f7b17e89]{font-size:13px;color:#1d3928}.visibility-chip span[data-v-f7b17e89]{font-size:12px;line-height:1.45;color:#6a8172}.private-chip[data-v-f7b17e89]{background:linear-gradient(180deg,#fbfdfb,#fff)}.shared-chip[data-v-f7b17e89]{background:linear-gradient(180deg,#eef6ff,#fff)}.palette-grid[data-v-f7b17e89]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.palette-color[data-v-f7b17e89]{width:100%;aspect-ratio:1;border-radius:14px;border:2px solid rgba(255,255,255,.86);box-shadow:inset 0 0 0 1px #16281d14;cursor:pointer}.color-trigger[data-v-f7b17e89]{justify-content:flex-start;width:100%}.color-input[data-v-f7b17e89]{width:56px;height:36px;padding:2px}.modal-mask[data-v-f7b17e89]{position:fixed;top:0;right:0;bottom:0;left:0;background:#101f1675;display:flex;align-items:center;justify-content:center;padding:16px;z-index:1000;overscroll-behavior:contain}.modal-card[data-v-f7b17e89]{width:min(960px,calc(100vw - 32px));display:flex;flex-direction:column;overflow:hidden;border-radius:28px;max-height:calc(100vh - 24px)}.rounded-modal[data-v-f7b17e89]{border-radius:28px}.member-modal[data-v-f7b17e89]{width:min(760px,100%)}.modal-head[data-v-f7b17e89],.modal-foot[data-v-f7b17e89]{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #ebf1ed;background:#fff}.modal-foot[data-v-f7b17e89]{border-bottom:none;border-top:1px solid #ebf1ed;justify-content:flex-end}.sticky-modal-foot[data-v-f7b17e89]{position:sticky;bottom:0}.modal-body[data-v-f7b17e89]{padding:18px;background:#fff;overflow:auto;overscroll-behavior:contain}.member-modal-body[data-v-f7b17e89]{max-height:min(70vh,620px);overflow:auto}.modal-card.entry-detail-modal[data-v-f7b17e89]{width:min(1560px,88vw);max-width:none;max-height:min(860px,86vh);border-radius:24px;box-shadow:0 28px 72px #101f162e}.modal-card.entry-detail-modal .modal-head[data-v-f7b17e89],.modal-card.entry-detail-modal .modal-body[data-v-f7b17e89]{padding:14px 18px}.modal-card.entry-detail-modal .entry-detail-list[data-v-f7b17e89]{max-height:min(720px,calc(86vh - 126px))}.modal-card.entry-detail-modal .entry-modal-table[data-v-f7b17e89]{min-width:0;width:100%}.modal-card.entry-detail-modal .entry-table-head[data-v-f7b17e89],.modal-card.entry-detail-modal .entry-table-row[data-v-f7b17e89]{grid-template-columns:minmax(120px,1fr) minmax(190px,1.12fr) minmax(190px,1.12fr) minmax(110px,.72fr) minmax(174px,.82fr)}.modal-grid[data-v-f7b17e89]{align-items:start}@media (max-width: 1200px){.hero-card[data-v-f7b17e89],.summary-grid[data-v-f7b17e89],.overview-grid[data-v-f7b17e89],.setup-grid[data-v-f7b17e89],.entries-layout[data-v-f7b17e89],.summary-strip[data-v-f7b17e89],.fixed-plan-grid[data-v-f7b17e89],.fixed-month-strip[data-v-f7b17e89],.chart-strip[data-v-f7b17e89],.share-strip[data-v-f7b17e89]{grid-template-columns:1fr}.panel-large[data-v-f7b17e89],.panel-span[data-v-f7b17e89]{grid-column:auto}.trend-panel[data-v-f7b17e89],.annual-panel[data-v-f7b17e89],.category-panel[data-v-f7b17e89],.member-panel[data-v-f7b17e89],.entry-form-panel[data-v-f7b17e89],.entry-list-panel[data-v-f7b17e89]{height:auto}.sticky-panel[data-v-f7b17e89]{position:static}.category-layout[data-v-f7b17e89]{grid-template-columns:1fr;grid-template-rows:auto}.category-top[data-v-f7b17e89],.base-grid[data-v-f7b17e89],.member-card-grid[data-v-f7b17e89],.category-card-grid[data-v-f7b17e89],.member-visibility-note[data-v-f7b17e89]{grid-template-columns:1fr}.year-grid[data-v-f7b17e89]{grid-template-columns:repeat(6,minmax(88px,1fr))}.donut-wrap[data-v-f7b17e89]{grid-row:auto}}@media (max-width: 768px){.tabs[data-v-f7b17e89],.toolbar-grid[data-v-f7b17e89],.two-col[data-v-f7b17e89],.entry-quick-stats[data-v-f7b17e89],.summary-strip[data-v-f7b17e89],.summary-grid[data-v-f7b17e89],.fixed-month-strip[data-v-f7b17e89],.year-labels[data-v-f7b17e89]{grid-template-columns:1fr}.year-grid[data-v-f7b17e89]{grid-template-columns:repeat(3,minmax(96px,1fr))}.member-picker-grid[data-v-f7b17e89]{grid-template-columns:1fr}.category-legend[data-v-f7b17e89]{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-table-head[data-v-f7b17e89]{display:none}.entry-table-row[data-v-f7b17e89]{grid-template-columns:1fr;gap:8px}.amount-col[data-v-f7b17e89],.entry-actions-inline[data-v-f7b17e89]{justify-items:start;text-align:left;justify-content:flex-start}.pager-bar[data-v-f7b17e89]{grid-template-columns:1fr;justify-items:start}.pager-note[data-v-f7b17e89],.pager-text[data-v-f7b17e89]{justify-self:start}.hero-card[data-v-f7b17e89]{padding:14px}.hero-card h2[data-v-f7b17e89],.summary-head strong[data-v-f7b17e89],.plan-summary strong[data-v-f7b17e89]{font-size:22px}.group-head[data-v-f7b17e89],.config-top[data-v-f7b17e89],.entry-row[data-v-f7b17e89],.compare-line[data-v-f7b17e89],.detail-row[data-v-f7b17e89],.member-compare-top[data-v-f7b17e89],.sub-head[data-v-f7b17e89],.summary-line[data-v-f7b17e89],.chart-legend[data-v-f7b17e89]{flex-direction:column;align-items:flex-start}.group-head-right[data-v-f7b17e89],.entry-actions[data-v-f7b17e89]{width:100%;justify-content:space-between;flex-wrap:wrap}.palette-grid[data-v-f7b17e89]{grid-template-columns:repeat(4,minmax(0,1fr))}}:root{--bg: #f4f8f5;--panel: #ffffff;--panel-soft: #f6fbf7;--line: #d8e7dd;--text: #1f2d23;--text-soft: #64796a;--brand: #2f8f57;--brand-soft: #e3f4e9;--danger: #dd5f5f;--warn: #d39643}*{box-sizing:border-box}body{margin:0;font-family:PingFang SC,Microsoft YaHei,Hiragino Sans GB,sans-serif;color:var(--text);background:var(--bg)}a{color:inherit;text-decoration:none}.admin-page{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:0 8px 20px #1a35240a}.admin-title{margin:0 0 6px;font-size:18px;font-weight:700}.admin-subtitle{margin:0 0 16px;color:var(--text-soft);font-size:13px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.toolbar input,.toolbar select,.form-grid input,.form-grid select,.form-grid textarea{min-height:34px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:0 10px;color:var(--text);outline:none}.toolbar input,.toolbar select{min-width:170px}.form-grid textarea{min-height:72px;padding:8px 10px;resize:vertical}.toolbar input:focus,.toolbar select:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--brand);box-shadow:0 0 0 2px #2f8f571f}.btn{height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--text);padding:0 12px;min-width:74px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{border-color:var(--brand);background:var(--brand);color:#fff}.btn-soft{border-color:transparent;background:var(--brand-soft);color:var(--brand)}.btn-danger{border-color:transparent;background:#ffeceb;color:var(--danger)}.btn-warn{border-color:transparent;background:#fff4e6;color:var(--warn)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff}table{width:100%;border-collapse:collapse;min-width:860px;background:#fff}thead{background:var(--panel-soft)}thead th{position:sticky;top:0;z-index:2;background:var(--panel-soft)}th,td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;white-space:nowrap;font-size:13px;vertical-align:middle}tbody tr:hover{background:#f9fcfa}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions .btn{min-width:62px;height:30px;padding:0 10px;font-size:12px;border-radius:8px}.pagination{margin-top:12px;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;color:var(--text-soft);font-size:12px}.page-size{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:#f4faf6;border:1px solid #d9e9de}.page-size select{height:30px;border:1px solid #d9e9de;border-radius:999px;background:#fff;padding:0 10px;color:var(--text);outline:none}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#1320186b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-card{width:min(860px,100%);max-height:calc(100vh - 32px);background:linear-gradient(180deg,#fff,#fbfefc);border-radius:20px;border:1px solid rgba(217,233,222,.95);box-shadow:0 24px 70px #18271c38;display:flex;flex-direction:column;overflow:hidden;transform:translateY(0);animation:adminModalIn .18s ease-out}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 14px;border-bottom:1px solid #e6f0e8;background:linear-gradient(180deg,#fff,#f8fcf9)}.modal-title{margin:0;font-size:17px}.modal-body{padding:18px;overflow:auto}.modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:16px 18px;border-top:1px solid #e6f0e8;background:linear-gradient(180deg,#fcfefd,#f6fbf7);border-bottom-left-radius:20px;border-bottom-right-radius:20px}.modal-foot .btn{min-width:90px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-item{display:flex;flex-direction:column;gap:6px}.form-item-full{grid-column:1 / -1}.label{font-size:12px;color:var(--text-soft)}.tag{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:999px;font-size:12px}.tag-on{background:#e6f8ec;color:#26824e}.tag-off{background:#f4f4f4;color:#6f7e74}.check-list{max-height:380px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:10px;background:#fbfefc}.check-row{display:flex;align-items:center;gap:8px;padding:6px 4px}.multiline{white-space:normal;line-height:1.45;word-break:break-word}.muted{color:var(--text-soft)}.admin-toast{position:fixed;top:20px;left:50%;transform:translate(-50%,-20px);opacity:0;color:#fff;border-radius:999px;padding:8px 14px;font-size:13px;z-index:1200;transition:all .2s ease}.admin-toast.show{transform:translate(-50%);opacity:1}.admin-toast-info{background:#3f5f4b}.admin-toast-success{background:#2f8f57}.admin-toast-error{background:#d44f4f}@keyframes adminModalIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 900px){.admin-page{padding:12px;border-radius:12px}.toolbar{gap:8px}.toolbar input,.toolbar select{min-width:0;flex:1 1 calc(50% - 8px)}.toolbar .btn{flex:1 1 calc(33.333% - 8px);min-width:0}table{min-width:760px}.pagination{justify-content:center}.modal-mask{padding:10px}.modal-card{max-height:calc(100vh - 20px);border-radius:12px}.form-grid{grid-template-columns:1fr}}@media (max-width: 640px){.admin-title{font-size:17px}.admin-subtitle{margin-bottom:12px;font-size:12px}.toolbar input,.toolbar select{flex:1 1 100%}.toolbar .btn{flex:1 1 calc(50% - 8px)}.modal-head,.modal-foot,.modal-body{padding-left:12px;padding-right:12px}.modal-foot .btn{min-width:0;flex:1 1 0}}
