.toast-host[data-v-af9704e6]{z-index:2000;flex-direction:column;gap:10px;max-width:min(380px,100vw - 32px);display:flex;position:fixed;top:22px;right:22px}.toast[data-v-af9704e6]{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg);cursor:pointer;border-radius:12px;align-items:flex-start;gap:10px;padding:12px 15px;display:flex}.toast-icon[data-v-af9704e6]{color:var(--primary);margin-top:1px;display:flex}.toast-success .toast-icon[data-v-af9704e6]{color:var(--success)}.toast-error .toast-icon[data-v-af9704e6]{color:var(--danger)}.toast-text[data-v-af9704e6]{color:var(--ink-2);font-size:13px;line-height:1.55}.toast-enter-active[data-v-af9704e6],.toast-leave-active[data-v-af9704e6]{transition:opacity .2s,transform .2s}.toast-enter-from[data-v-af9704e6],.toast-leave-to[data-v-af9704e6]{opacity:0;transform:translate(14px)}.shell[data-v-e37894c1]{min-height:100vh}.sidebar[data-v-e37894c1]{background:var(--sidebar);width:248px;color:var(--sidebar-text);z-index:40;flex-direction:column;padding:22px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand[data-v-e37894c1]{align-items:center;gap:12px;padding:4px 8px 26px;display:flex}.brand-mark[data-v-e37894c1]{color:#fff;background:#ffffff1f;border:1px solid #ffffff29;border-radius:13px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.brand-text[data-v-e37894c1]{flex-direction:column;display:flex}.brand-name[data-v-e37894c1]{color:#fff;letter-spacing:.5px;font-size:16px;font-weight:700}.brand-sub[data-v-e37894c1]{letter-spacing:2px;color:#ffffff7a;margin-top:1px;font-size:10px}.nav[data-v-e37894c1]{flex-direction:column;gap:4px;display:flex}.nav-link[data-v-e37894c1]{color:#ffffffad;border-radius:12px;align-items:center;gap:11px;padding:11px 12px;font-size:13px;font-weight:500;transition:background .16s,color .16s;display:flex}.nav-link[data-v-e37894c1]:hover{color:#fff;background:#ffffff0f}.nav-link.router-link-active[data-v-e37894c1],.nav-link.exact.router-link-exact-active[data-v-e37894c1]{color:#fff;background:#ffffff21}.nav-link.exact.router-link-active[data-v-e37894c1]:not(.router-link-exact-active){color:#ffffffad;background:0 0}.nav-icon[data-v-e37894c1]{width:26px;height:26px;color:inherit;justify-content:center;align-items:center;display:flex}.side-bottom[data-v-e37894c1]{margin-top:auto}.side-cta[data-v-e37894c1]{height:40px;color:var(--primary-dark);background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:7px;margin-bottom:16px;font-size:13px;font-weight:600;display:flex}.side-user[data-v-e37894c1]{border-top:1px solid #ffffff1a;align-items:center;gap:10px;padding:12px 8px;display:flex}.side-avatar[data-v-e37894c1],.top-avatar[data-v-e37894c1]{color:#fff;background:#ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-weight:700;display:flex}.side-user-text[data-v-e37894c1]{flex-direction:column;flex:1;min-width:0;display:flex}.side-user-name[data-v-e37894c1]{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.side-user-label[data-v-e37894c1]{color:#ffffff73;font-size:10px}.logout[data-v-e37894c1]{color:#ffffff80;cursor:pointer;background:0 0;border:0;padding:6px;display:flex}.logout[data-v-e37894c1]:hover{color:#fff}.side-version[data-v-e37894c1]{letter-spacing:1.5px;color:#ffffff42;padding:12px 8px 0;font-size:9px}.main[data-v-e37894c1]{min-height:100vh;margin-left:248px}.topbar[data-v-e37894c1]{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f5f1eae0;border-bottom:1px solid #ece5dabf;align-items:center;gap:14px;height:66px;padding:0 28px;display:flex;position:sticky;top:0}.menu-btn[data-v-e37894c1]{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--ink-2);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;display:none}.top-title[data-v-e37894c1]{color:var(--ink-2);font-size:14px;font-weight:600}.top-right[data-v-e37894c1]{align-items:center;gap:9px;margin-left:auto;display:flex}.top-user[data-v-e37894c1]{color:var(--muted);font-size:12px}.top-avatar[data-v-e37894c1]{background:var(--primary);width:32px;height:32px;font-size:12px}.content[data-v-e37894c1]{max-width:1440px;margin:0 auto;padding:28px}.backdrop[data-v-e37894c1]{display:none}@media (width<=900px){.sidebar[data-v-e37894c1]{box-shadow:var(--shadow-lg);transition:transform .24s;transform:translate(-100%)}.sidebar.open[data-v-e37894c1]{transform:translate(0)}.main[data-v-e37894c1]{margin-left:0}.menu-btn[data-v-e37894c1]{display:inline-flex}.backdrop[data-v-e37894c1]{z-index:35;background:#14201d6b;display:block;position:fixed;inset:0}.topbar[data-v-e37894c1]{padding:0 18px}.content[data-v-e37894c1]{padding:20px 16px 32px}}.app-btn[data-v-af914da5]{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;height:40px;padding:0 20px;font-size:13px;font-weight:600;transition:transform .14s,box-shadow .14s,background .14s,border-color .14s,opacity .14s;display:inline-flex}.app-btn[data-v-af914da5]:hover:not(:disabled){transform:translateY(-1px)}.app-btn[data-v-af914da5]:active:not(:disabled){transform:translateY(0)}.app-btn[data-v-af914da5]:disabled{cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.variant-primary[data-v-af914da5]{color:#fff;background:linear-gradient(135deg,#267f78 0%,#1d5f5a 100%);box-shadow:0 10px 24px #267f7838}.variant-soft[data-v-af914da5]{background:var(--primary-soft);color:var(--primary)}.variant-ghost[data-v-af914da5]{border-color:var(--line-strong);color:var(--ink-2);background:0 0}.variant-danger[data-v-af914da5]{background:var(--danger-soft);color:var(--danger)}.variant-white[data-v-af914da5]{color:var(--primary-dark);background:#fff;box-shadow:0 10px 28px #143f3c2e}.variant-dark[data-v-af914da5]{color:#fff;background:#ffffff24;border-color:#fff3}.size-sm[data-v-af914da5]{height:32px;padding:0 14px;font-size:12px}.size-lg[data-v-af914da5]{height:46px;padding:0 26px;font-size:14px}.block[data-v-af914da5]{width:100%}.spinner[data-v-af914da5]{border:2px solid;border-right-color:#0000;border-radius:50%;width:13px;height:13px;animation:.7s linear infinite spin-af914da5}@keyframes spin-af914da5{to{transform:rotate(360deg)}}.login-page[data-v-5f94b520]{background:var(--bg);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);min-height:100vh;display:grid}.brand-panel[data-v-5f94b520]{color:#fff;box-shadow:var(--shadow-lg);background:linear-gradient(145deg,#143f3c 0%,#1c5a55 55%,#2a7a72 100%);border-radius:30px;flex-direction:column;margin:18px;padding:34px 40px;display:flex;position:relative;overflow:hidden}.brand-top[data-v-5f94b520]{z-index:2;align-items:center;gap:12px;display:flex;position:relative}.brand-mark[data-v-5f94b520]{background:#ffffff21;border:1px solid #ffffff29;border-radius:14px;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.brand-eyebrow[data-v-5f94b520]{letter-spacing:4px;color:#ffffff8f;font-size:11px}.brand-copy[data-v-5f94b520]{z-index:2;max-width:520px;margin:auto 0;position:relative}.brand-kicker[data-v-5f94b520]{letter-spacing:4px;color:#ffffff75;font-size:11px}.brand-copy h1[data-v-5f94b520]{letter-spacing:-1px;margin-top:20px;font-size:clamp(36px,4vw,54px);font-weight:700;line-height:1.25}.brand-copy p[data-v-5f94b520]{color:#ffffffb8;max-width:430px;margin-top:20px;font-size:14px;line-height:1.85}.brand-foot[data-v-5f94b520]{z-index:2;letter-spacing:1px;color:#ffffff70;align-items:center;gap:8px;font-size:11px;display:flex;position:relative}.status-dot[data-v-5f94b520]{background:#7fd4c6;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #7fd4c61f}.orb[data-v-5f94b520]{background:#ffffff0e;border-radius:50%;position:absolute}.orb-a[data-v-5f94b520]{width:420px;height:420px;top:-120px;right:-140px}.orb-b[data-v-5f94b520]{width:300px;height:300px;bottom:-80px;left:-100px}.form-panel[data-v-5f94b520]{justify-content:center;align-items:center;padding:32px;display:flex}.login-card[data-v-5f94b520]{width:min(400px,100%)}.login-eyebrow[data-v-5f94b520]{letter-spacing:3px;color:var(--primary);font-size:10px;font-weight:600}.login-card h2[data-v-5f94b520]{letter-spacing:-.6px;color:var(--ink);margin-top:10px;font-size:32px}.login-sub[data-v-5f94b520]{color:var(--muted);margin-top:8px;font-size:13px}.login-form[data-v-5f94b520]{flex-direction:column;gap:17px;margin-top:30px;display:flex}.login-form .input[data-v-5f94b520]{background:var(--surface);height:46px}.login-error[data-v-5f94b520]{background:var(--danger-soft);color:var(--danger);border-radius:10px;padding:10px 12px;font-size:12px}.login-note[data-v-5f94b520]{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin-top:24px;font-size:11px;display:flex}@media (width<=900px){.login-page[data-v-5f94b520]{grid-template-columns:1fr}.brand-panel[data-v-5f94b520]{display:none}.form-panel[data-v-5f94b520]{min-height:100vh;padding:24px}}.badge[data-v-d55816d8]{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.dot[data-v-d55816d8]{background:currentColor;border-radius:50%;width:5px;height:5px}.tone-teal[data-v-d55816d8]{background:var(--primary-soft);color:var(--primary)}.tone-gold[data-v-d55816d8]{background:var(--gold-soft);color:var(--gold)}.tone-blue[data-v-d55816d8]{background:var(--info-soft);color:var(--info)}.tone-violet[data-v-d55816d8]{background:var(--violet-soft);color:var(--violet)}.tone-green[data-v-d55816d8]{background:var(--success-soft);color:var(--success)}.tone-red[data-v-d55816d8]{background:var(--danger-soft);color:var(--danger)}.tone-gray[data-v-d55816d8]{background:var(--surface-muted);color:var(--ink-2)}.dashboard-stats[data-v-23924408]{margin-top:16px}.stat-button[data-v-23924408]{border:1px solid var(--line);text-align:left;cursor:default;font-family:inherit;position:relative}.stat-button.clickable[data-v-23924408]{cursor:pointer}.stat-button.clickable[data-v-23924408]:hover{border-color:var(--primary);transform:translateY(-1px);box-shadow:0 14px 34px #1f2a2714}.stat-text[data-v-23924408]{flex-direction:column;display:flex}.stat-arrow[data-v-23924408]{color:var(--muted);margin-left:auto}.tone-teal[data-v-23924408]{background:var(--primary-soft);color:var(--primary)}.tone-gold[data-v-23924408]{background:var(--gold-soft);color:var(--gold)}.tone-blue[data-v-23924408]{background:var(--info-soft);color:var(--info)}.tone-violet[data-v-23924408]{background:var(--violet-soft);color:var(--violet)}.tone-green[data-v-23924408]{background:var(--success-soft);color:var(--success)}.dashboard-grid[data-v-23924408]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:16px;display:grid}.panel[data-v-23924408]{padding:22px}.recent-donors[data-v-23924408]{margin-top:16px}.plain-link[data-v-23924408]{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.plain-link[data-v-23924408]:hover{text-decoration:underline}.mini-list[data-v-23924408]{flex-direction:column;display:flex}.mini-row[data-v-23924408]{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:12px;padding:10px 0;display:flex}.mini-row[data-v-23924408]:last-child{border-bottom:0;padding-bottom:0}.mini-thumb[data-v-23924408]{object-fit:contain;background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;flex-shrink:0;width:44px;height:44px}.mini-thumb-empty[data-v-23924408]{color:var(--primary);background:var(--primary-soft);justify-content:center;align-items:center;display:flex}.mini-main[data-v-23924408]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mini-title[data-v-23924408]{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.mini-sub[data-v-23924408]{color:var(--muted);font-size:11px}.mini-loading[data-v-23924408]{flex-direction:column;gap:10px;display:flex}.mini-empty[data-v-23924408]{text-align:center;color:var(--muted);padding:32px 10px;font-size:12px;line-height:1.7}@media (width<=1000px){.dashboard-grid[data-v-23924408]{grid-template-columns:1fr}}@media (width<=640px){.quick-grid[data-v-23924408]{grid-template-columns:1fr}}.modal-mask[data-v-f2e639d0]{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14201d7a;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal[data-v-f2e639d0]{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-height:min(88vh,900px);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.modal-head[data-v-f2e639d0]{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:22px 24px 16px;display:flex}.modal-title[data-v-f2e639d0]{color:var(--ink);font-size:18px;font-weight:700}.modal-close[data-v-f2e639d0]{background:var(--surface-muted);width:34px;height:34px;color:var(--ink-2);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;display:flex}.modal-close[data-v-f2e639d0]:hover{background:var(--line)}.modal-body[data-v-f2e639d0]{padding:22px 24px;overflow-y:auto}.modal-foot[data-v-f2e639d0]{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:10px;padding:16px 24px 20px;display:flex}.modal-enter-active[data-v-f2e639d0],.modal-leave-active[data-v-f2e639d0]{transition:opacity .18s}.modal-enter-active .modal[data-v-f2e639d0],.modal-leave-active .modal[data-v-f2e639d0]{transition:transform .18s}.modal-enter-from[data-v-f2e639d0],.modal-leave-to[data-v-f2e639d0]{opacity:0}.modal-enter-from .modal[data-v-f2e639d0],.modal-leave-to .modal[data-v-f2e639d0]{transform:translateY(10px)scale(.985)}.message[data-v-7ce1ea03]{color:var(--ink-2);white-space:pre-line;font-size:14px;line-height:1.75}.empty[data-v-f18c37a7]{text-align:center;flex-direction:column;align-items:center;padding:56px 24px;display:flex}.empty-icon[data-v-f18c37a7]{background:var(--surface-muted);width:62px;height:62px;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.empty-title[data-v-f18c37a7]{color:var(--ink-2);margin-top:16px;font-size:15px;font-weight:600}.empty-message[data-v-f18c37a7]{max-width:380px;color:var(--muted);margin-top:5px;font-size:12px;line-height:1.7}.empty-action[data-v-f18c37a7]{margin-top:18px}.pagination[data-v-bc8c2f6f]{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.total[data-v-bc8c2f6f]{color:var(--muted);font-size:12px}.pages[data-v-bc8c2f6f]{align-items:center;gap:5px;display:flex}.page-btn[data-v-bc8c2f6f]{border:1px solid var(--line);background:var(--surface);min-width:30px;height:30px;color:var(--ink-2);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 8px;font-size:12px;display:inline-flex}.page-btn[data-v-bc8c2f6f]:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.page-btn.active[data-v-bc8c2f6f]{background:var(--primary);border-color:var(--primary);color:#fff}.page-btn[data-v-bc8c2f6f]:disabled{cursor:not-allowed;color:#c6beb4}.page-btn.dots[data-v-bc8c2f6f]{background:0 0;border-color:#0000}.toolbar-card[data-v-acf4caa3]{margin-bottom:16px;padding:4px}.toolbar-card .toolbar[data-v-acf4caa3]{padding-bottom:10px}.toolbar-count[data-v-acf4caa3]{color:var(--muted);font-size:12px}.filter-chips[data-v-acf4caa3]{flex-wrap:wrap;gap:7px;padding:0 16px 14px;display:flex}.chip[data-v-acf4caa3]{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);cursor:pointer;border-radius:999px;padding:6px 14px;font-size:12px;transition:all .16s}.chip[data-v-acf4caa3]:hover{border-color:var(--primary);color:var(--primary)}.chip.active[data-v-acf4caa3]{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.table-card[data-v-acf4caa3]{overflow:hidden}.gift-table[data-v-acf4caa3]{min-width:920px}.price-cell[data-v-acf4caa3]{color:var(--ink);font-weight:600}.status-cell[data-v-acf4caa3]{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.url-warning[data-v-acf4caa3]{color:var(--danger);font-size:10px}.table-actions-right[data-v-acf4caa3]{justify-content:flex-end}.detail-loading[data-v-acf4caa3]{flex-direction:column;gap:14px;display:flex}.detail-hero[data-v-acf4caa3]{gap:20px;display:flex}.detail-cover[data-v-acf4caa3]{border-radius:var(--radius);object-fit:contain;background:var(--surface-soft);border:1px solid var(--line);flex-shrink:0;width:180px;height:180px}.detail-cover-empty[data-v-acf4caa3]{color:var(--primary);background:var(--primary-soft);justify-content:center;align-items:center;display:flex}.detail-main[data-v-acf4caa3]{flex:1;min-width:0}.detail-title-row[data-v-acf4caa3]{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.detail-title[data-v-acf4caa3]{color:var(--ink);font-size:22px;font-weight:700;line-height:1.4}.detail-price[data-v-acf4caa3]{color:var(--accent);margin-top:8px;font-size:24px;font-weight:700}.detail-grid[data-v-acf4caa3]{margin-top:16px}.detail-link[data-v-acf4caa3]{align-items:center;gap:10px;margin-top:14px;display:flex}.detail-section[data-v-acf4caa3]{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.detail-section-title[data-v-acf4caa3]{color:var(--ink);margin-bottom:10px;font-size:15px;font-weight:700}.detail-text[data-v-acf4caa3]{color:var(--ink-2);white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.85}.notes-box[data-v-acf4caa3]{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft);padding:16px}.thumb-grid[data-v-acf4caa3]{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.detail-thumb[data-v-acf4caa3]{object-fit:cover;background:var(--surface-soft);border:1px solid var(--line);cursor:zoom-in;border-radius:10px;width:88px;height:88px}.claim-card[data-v-acf4caa3]{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft);padding:14px}.claim-head[data-v-acf4caa3]{justify-content:space-between;align-items:center;gap:12px;display:flex}.claim-grid[data-v-acf4caa3]{margin-top:8px}@media (width<=700px){.detail-hero[data-v-acf4caa3]{flex-direction:column}.detail-cover[data-v-acf4caa3]{width:100%;height:220px}}.uploader[data-v-9f5d7c85]{flex-wrap:wrap;gap:10px;display:flex}.file-input[data-v-9f5d7c85]{display:none}.cover-empty[data-v-9f5d7c85],.cover-preview[data-v-9f5d7c85]{border-radius:var(--radius);width:100%;height:260px;position:relative;overflow:hidden}.cover-empty[data-v-9f5d7c85]{border:1px dashed var(--line-strong);background:var(--surface-soft);cursor:pointer;color:var(--ink-2);flex-direction:column;justify-content:center;align-items:center;display:flex}.cover-empty[data-v-9f5d7c85]:hover:not(:disabled){border-color:var(--primary)}.upload-icon[data-v-9f5d7c85]{background:var(--primary-soft);width:52px;height:52px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;display:flex}.upload-title[data-v-9f5d7c85]{margin-top:12px;font-size:13px;font-weight:600}.upload-hint[data-v-9f5d7c85]{color:var(--muted);margin-top:4px;font-size:11px}.cover-preview[data-v-9f5d7c85]{background:var(--surface-soft);border:1px solid var(--line)}.cover-preview img[data-v-9f5d7c85]{object-fit:contain;width:100%;height:100%}.cover-actions[data-v-9f5d7c85]{gap:8px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.cover-action[data-v-9f5d7c85]{color:#fff;cursor:pointer;background:#14201da3;border:0;border-radius:999px;padding:7px 14px;font-size:12px}.cover-action.remove[data-v-9f5d7c85]{background:#b4483be6}.tile[data-v-9f5d7c85]{aspect-ratio:1;background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;width:calc(25% - 7.5px);position:relative;overflow:hidden}.tile img[data-v-9f5d7c85]{object-fit:cover;cursor:zoom-in;width:100%;height:100%}.tile-remove[data-v-9f5d7c85]{color:#fff;cursor:pointer;background:#14201da8;border:0;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;top:6px;right:6px}.tile-add[data-v-9f5d7c85]{border:1px dashed var(--line-strong);color:var(--muted);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:11px;display:flex}.tile-add[data-v-9f5d7c85]:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.cover-uploading[data-v-9f5d7c85]{color:var(--muted);align-items:center;gap:8px;margin-top:8px;font-size:12px;display:inline-flex}.mini-spinner[data-v-9f5d7c85]{border:2px solid var(--primary);border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin-9f5d7c85}@keyframes spin-9f5d7c85{to{transform:rotate(360deg)}}@media (width<=700px){.tile[data-v-9f5d7c85]{width:calc(33.3333% - 6.66667px)}}.back-link[data-v-80ce6c65]{color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;margin-bottom:8px;padding:0;font-size:12px;display:inline-flex}.back-link[data-v-80ce6c65]:hover{color:var(--primary)}.title-row[data-v-80ce6c65]{align-items:center;gap:10px;display:flex}.editor-layout[data-v-80ce6c65]{grid-template-columns:minmax(0,1fr) 340px;align-items:flex-start;gap:16px;display:grid}.editor-main[data-v-80ce6c65],.editor-side[data-v-80ce6c65]{flex-direction:column;gap:16px;display:flex}.panel[data-v-80ce6c65]{padding:22px}.loading-card[data-v-80ce6c65]{flex-direction:column;gap:16px;display:flex}.desc-counter[data-v-80ce6c65]{text-align:right}.cover-hint[data-v-80ce6c65]{margin-top:10px}.tips[data-v-80ce6c65]{color:var(--ink-2);margin:0;padding-left:18px;font-size:12px;line-height:1.85}.tips li+li[data-v-80ce6c65]{margin-top:6px}.editor-actions[data-v-80ce6c65]{flex-direction:column;gap:10px;display:flex}@media (width<=1050px){.editor-layout[data-v-80ce6c65]{grid-template-columns:1fr}.editor-side[data-v-80ce6c65]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}}@media (width<=700px){.editor-side[data-v-80ce6c65]{display:flex}}.toolbar-card[data-v-04fa41c2]{margin-bottom:16px}.status-select[data-v-04fa41c2]{width:150px}.date-range[data-v-04fa41c2]{align-items:center;gap:7px;display:flex}.date-input[data-v-04fa41c2]{width:145px}.date-sep[data-v-04fa41c2]{color:var(--muted);font-size:12px}.table-card[data-v-04fa41c2]{overflow:hidden}.donor-table[data-v-04fa41c2]{min-width:900px}.name-row[data-v-04fa41c2]{align-items:center;gap:6px;display:flex}.price-cell[data-v-04fa41c2]{font-weight:600}@media (width<=900px){.date-range[data-v-04fa41c2]{flex-wrap:wrap}.date-input[data-v-04fa41c2],.status-select[data-v-04fa41c2]{width:100%}}:root{--bg:#f5f1ea;--surface:#fff;--surface-soft:#faf7f2;--surface-muted:#f0ebe2;--ink:#1f2a27;--ink-2:#5f6d69;--muted:#87928e;--line:#ece5da;--line-strong:#ddd4c6;--primary:#267f78;--primary-dark:#1d5f5a;--primary-soft:#e6f3f1;--accent:#d96a4f;--accent-soft:#fbedeb;--gold:#a97724;--gold-soft:#f8f0df;--info:#3b6fa8;--info-soft:#eaf1fa;--success:#2f7d4f;--success-soft:#e8f4ec;--danger:#b4483b;--danger-soft:#fbecea;--violet:#6658a8;--violet-soft:#f0edfa;--sidebar:#143f3c;--sidebar-soft:#1c514c;--sidebar-text:#dcece9;--radius-sm:10px;--radius:18px;--radius-lg:26px;--shadow:0 10px 30px #1f2a270f;--shadow-lg:0 24px 70px #143f3c29;--font:-apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif}*,:before,:after{box-sizing:border-box}html,body,#app{min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:14px;line-height:1.55}button,input,select,textarea{font:inherit}a{color:var(--primary);text-decoration:none}h1,h2,h3,h4,p{margin:0}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{border:3px solid var(--bg);background:#d8d0c4;border-radius:10px}.page{animation:.32s both page-in}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.page-head{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;display:flex}.page-title{letter-spacing:-.5px;color:var(--ink);font-size:28px;font-weight:700}.page-subtitle{color:var(--muted);margin-top:5px;font-size:13px}.page-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.section-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px;display:flex}.section-title{color:var(--ink);font-size:17px;font-weight:700}.section-hint{color:var(--muted);font-size:12px}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;padding:16px;display:flex}.toolbar-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar-spacer{flex:1}.field{flex-direction:column;gap:7px;display:flex}.label{color:var(--ink-2);font-size:13px;font-weight:600}.required{color:var(--accent);margin-left:2px}.hint{color:var(--muted);font-size:12px;line-height:1.6}.input,.select,.textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--ink);outline:none;padding:10px 12px;transition:border-color .16s,box-shadow .16s}.input::placeholder,.textarea::placeholder{color:#a7a09a}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #267f781f}.input:disabled,.select:disabled,.textarea:disabled{background:var(--surface-muted);color:var(--muted);cursor:not-allowed}.textarea{resize:vertical;min-height:150px;line-height:1.75}.search-box{min-width:260px;position:relative}.search-box .input{padding-left:38px}.search-icon{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;display:grid}.form-span-2{grid-column:span 2}.form-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:8px;display:flex}.data-table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:900px}.data-table th{text-align:left;color:var(--muted);letter-spacing:.2px;background:var(--surface-soft);border-bottom:1px solid var(--line);white-space:nowrap;padding:13px 16px;font-size:12px;font-weight:600}.data-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:14px 16px}.data-table tbody tr{transition:background .14s}.data-table tbody tr:hover{background:#fcfaf6}.data-table tbody tr:last-child td{border-bottom:none}.cell-stack{flex-direction:column;gap:3px;min-width:0;display:flex}.cell-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:260px;font-weight:600;overflow:hidden}.cell-sub{color:var(--muted);font-size:12px}.thumb{object-fit:contain;background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;flex-shrink:0;width:52px;height:52px}.thumb-placeholder{background:var(--primary-soft);width:52px;height:52px;color:var(--primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.table-product{align-items:center;gap:12px;min-width:240px;display:flex}.table-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.action-link{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.action-link:hover{text-decoration:underline}.action-link.danger{color:var(--danger)}.action-link:disabled{color:#b9b0a5;cursor:not-allowed;text-decoration:none}.mono{font-variant-numeric:tabular-nums;font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:12px}.link{color:var(--primary);font-weight:600}.link:hover{text-decoration:underline}.tag{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.tag-muted{background:var(--surface-muted);color:var(--ink-2)}.tag-anon{background:var(--violet-soft);color:var(--violet)}.table-empty{text-align:center;color:var(--muted);padding:50px 20px;font-size:13px}.skeleton{background:linear-gradient(90deg,#efe9df 25%,#f8f4ed 37%,#efe9df 63%) 0 0/400% 100%;border-radius:10px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}.divider{background:var(--line);height:1px;margin:18px 0}.text-muted{color:var(--muted)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.text-right{text-align:right}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.stat-card{align-items:flex-start;gap:14px;min-height:112px;padding:20px;display:flex}.stat-icon{border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.stat-value{letter-spacing:-.5px;font-size:30px;font-weight:700;line-height:1.15}.stat-label{color:var(--muted);margin-top:4px;font-size:12px}.summary-grid{grid-template-columns:1.5fr 1fr;gap:16px;display:grid}.welcome-card{border-radius:var(--radius-lg);color:#fff;box-shadow:var(--shadow-lg);background:linear-gradient(140deg,#143f3c 0%,#1c5a55 55%,#2a7a72 100%);padding:28px;position:relative;overflow:hidden}.welcome-card:after{content:"";background:#ffffff0f;border-radius:50%;width:260px;height:260px;position:absolute;top:-100px;right:-80px}.welcome-eyebrow{letter-spacing:3px;color:#ffffff8c;font-size:11px}.welcome-title{letter-spacing:-.3px;margin-top:10px;font-size:27px;font-weight:700}.welcome-desc{color:#ffffffbf;max-width:520px;margin-top:8px;font-size:13px;line-height:1.75}.welcome-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.quick-card{flex-direction:column;gap:16px;padding:22px;display:flex}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.quick-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft);cursor:pointer;text-align:left;align-items:center;gap:10px;padding:14px;transition:border-color .16s,transform .16s;display:flex}.quick-item:hover{border-color:var(--primary);transform:translateY(-1px)}.quick-icon{background:var(--primary-soft);width:34px;height:34px;color:var(--primary);border-radius:10px;justify-content:center;align-items:center;display:flex}.quick-title{font-size:13px;font-weight:600;display:block}.quick-hint{color:var(--muted);font-size:11px;display:block}.bar-list{flex-direction:column;gap:14px;display:flex}.bar-row{grid-template-columns:92px 1fr 46px;align-items:center;gap:12px;display:grid}.bar-label{color:var(--ink-2);font-size:12px}.bar-track{background:var(--surface-muted);border-radius:999px;height:8px;display:block;overflow:hidden}.bar-fill{border-radius:999px;height:100%;transition:width .4s;display:block}.bar-value{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.donor-cell{align-items:center;gap:10px;min-width:170px;display:flex}.avatar{object-fit:cover;background:var(--surface-soft);border-radius:50%;flex-shrink:0;width:38px;height:38px}.avatar-letter{background:var(--primary-soft);width:38px;height:38px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.detail-item{flex-direction:column;gap:3px;display:flex}.detail-label{color:var(--muted);font-size:11px}.detail-value{color:var(--ink);word-break:break-word;font-size:13px}.progress-steps{flex-direction:column;gap:0;display:flex}.progress-step{gap:12px;display:flex}.progress-rail{flex-direction:column;align-items:center;width:20px;display:flex}.progress-dot{background:var(--primary);border:3px solid var(--primary-soft);border-radius:50%;flex-shrink:0;width:16px;height:16px}.progress-line{background:var(--line);flex:1;width:2px;min-height:28px}.progress-body{padding-bottom:16px}.progress-title{font-size:13px;font-weight:600}.progress-time{color:var(--muted);font-size:11px}@media (width<=1200px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.summary-grid,.form-grid{grid-template-columns:1fr}.form-span-2{grid-column:span 1}.page-head{flex-direction:column;align-items:flex-start}}@media (width<=640px){.stat-grid{grid-template-columns:1fr}.toolbar{flex-direction:column;align-items:stretch}.search-box{min-width:0}.detail-grid{grid-template-columns:1fr}}
