.sheet-scrim[data-v-6a6e3011]{position:fixed;inset:0;z-index:80;background:#0000004d;backdrop-filter:blur(2px);animation:fade .22s}.sheet[data-v-6a6e3011]{position:fixed;left:0;right:0;bottom:0;z-index:90;max-width:var(--w);margin:0 auto;background:var(--surface);border-radius:var(--r-l) var(--r-l) 0 0;box-shadow:var(--sh-float);padding:6px var(--px) calc(env(safe-area-inset-bottom) + 22px);animation:sheetUp .32s var(--ease);max-height:92dvh;overflow-y:auto}.sheet-grab[data-v-6a6e3011]{width:38px;height:4px;border-radius:2px;background:#ded8cf;margin:6px auto 16px}.sheet-head[data-v-6a6e3011]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:6px;gap:12px}.sheet-head h2[data-v-6a6e3011]{font-size:22px;letter-spacing:-.01em;color:var(--ink)}.close[data-v-6a6e3011]{width:34px;height:34px}.sheet-sub[data-v-6a6e3011]{color:var(--ink-2);font-size:14px;line-height:1.7;margin-top:8px}.field[data-v-6a6e3011]{margin-top:19px}.field>label[data-v-6a6e3011]{display:block;font-size:13px;color:var(--ink-2);margin-bottom:8px;font-weight:500}.field input[data-v-6a6e3011],.field select[data-v-6a6e3011]{width:100%;height:52px;padding:0 15px;border-radius:var(--r-s);background:var(--surface-2);border:1px solid transparent;font-size:16px;transition:border-color .2s,background .2s,box-shadow .2s;appearance:none;-webkit-appearance:none}.field select[data-v-6a6e3011]{background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 15px) 22px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.field input[data-v-6a6e3011]:focus,.field select[data-v-6a6e3011]:focus{border-color:var(--c-accent);background:var(--surface);outline:none;box-shadow:0 0 0 3.5px #9a758029}.seg[data-v-6a6e3011]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.seg button[data-v-6a6e3011]{height:52px;border-radius:var(--r-s);background:var(--surface-2);color:var(--ink-2);font-size:16px;border:1px solid transparent;transition:all .18s var(--ease)}.seg button[aria-pressed=true][data-v-6a6e3011]{background:var(--c-accent-light);color:var(--c-accent-dark);border-color:#9a758073;font-weight:600}.note[data-v-6a6e3011]{font-size:12px;color:var(--ink-3);margin-top:8px;line-height:1.6}.note.err[data-v-6a6e3011]{color:#e53e3e}.req[data-v-6a6e3011]{color:#e53e3e;font-style:normal;margin-left:2px}.field input.input-err[data-v-6a6e3011]{border-color:#e53e3e}.actions[data-v-6a6e3011]{margin-top:24px;display:flex;flex-direction:column;gap:11px}.mobile-shell[data-v-e1a4509c]{position:relative;z-index:1;max-width:var(--w);margin:0 auto;min-height:100dvh}.fade-enter-active[data-v-e1a4509c],.fade-leave-active[data-v-e1a4509c]{transition:opacity .26s var(--ease)}.fade-enter-from[data-v-e1a4509c],.fade-leave-to[data-v-e1a4509c]{opacity:0}:root{color-scheme:light;--c-primary:#2E272B;--c-primary-light:#463C40;--c-primary-soft:#f6f1f3;--c-accent:#B8929A;--c-accent-dark:#9A7580;--c-accent-light:#F5EAED;--c-gold:#C4A882;--c-gold-dark:#A68A4B;--c-gold-light:#F5EDE0;--c-bg:#F8F5F3;--c-bg-warm:#FBF9F7;--c-surface:#FFFFFF;--c-text-1:#2E272B;--c-text-2:#6E6266;--c-text-3:#A09399;--c-text-4:#D2C8CC;--c-text-inv:#FFFFFF;--c-border:#EFE9EB;--c-border-light:#F5F1F2;--c-divider:#F2ECEE;--c-success:#48bb78;--c-warning:#ecc94b;--c-error:#e53e3e;--c-yi:#48bb78;--c-ji:#e53e3e;--c-blue:#6BA3B0;--c-purple:#A89BB5;--shadow-xs:0 1px 2px rgba(0,0,0,.04);--shadow-sm:0 2px 8px rgba(0,0,0,.06);--shadow-md:0 4px 16px rgba(0,0,0,.08);--shadow-lg:0 8px 32px rgba(0,0,0,.12);--font-body:-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue","Microsoft YaHei",sans-serif;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:24px;--r-full:9999px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--fs-xs:11px;--fs-sm:12px;--fs-md:15px;--fs-lg:18px;--fs-2xl:20px;--fs-3xl:24px;--fs-4xl:28px;--header-h:56px;--safe-bottom:env(safe-area-inset-bottom,0px);--page-px:20px;--ease:cubic-bezier(.25,.1,.25,1);--grad-rose:linear-gradient(135deg,#C99AA4 0%,#9A7580 100%);--grad-rose-soft:linear-gradient(135deg,#F7EEF1 0%,#F1E2E7 100%);--grad-ink:linear-gradient(135deg,#3A3034 0%,#241E21 100%);--sh-rose:0 8px 20px -8px rgba(154,117,128,.45);--w:480px;--primary:var(--c-primary);--primary-press:#000;--primary-soft:var(--c-primary-soft);--primary-softer:#fafafa;--accent:var(--c-accent);--bg:var(--c-bg);--surface:var(--c-surface);--surface-2:var(--c-border-light);--ink:var(--c-text-1);--ink-2:var(--c-text-2);--ink-3:var(--c-text-3);--ink-4:var(--c-text-4);--hairline:var(--c-border);--hairline-2:var(--c-border-light);--sh-card:var(--shadow-sm);--sh-float:var(--shadow-lg);--sh-soft:var(--shadow-xs);--sh-primary:0 6px 16px -6px rgba(26,26,26,.32);--r-s:var(--r-md);--r-m:var(--r-lg);--r-l:20px;--pill:var(--r-full);--px:var(--page-px);--tab-h:56px}*,*:before,*:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{font-size:16px;background:var(--c-bg);color:var(--c-text-1);font-family:var(--font-body);-webkit-text-size-adjust:100%}body{min-height:100dvh;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--c-bg)}#app{min-height:100dvh;padding-bottom:var(--s-6);-webkit-overflow-scrolling:touch}button,input,select,textarea{font:inherit;color:inherit}button{border:none;background:none;cursor:pointer;padding:0}a{color:inherit;text-decoration:none}ul{list-style:none}:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px;border-radius:4px}h1,h2,h3{font-weight:600;margin:0}p{margin:0}::selection{background:#b8929a38}::-webkit-scrollbar{display:none}*{scrollbar-width:none}.page{min-height:100vh;background:var(--c-bg)}.section{padding:var(--s-5) var(--page-px)}.section-title{font-size:var(--fs-lg);font-weight:600;margin-bottom:var(--s-4)}.section-desc{font-size:var(--fs-sm);color:var(--c-text-2);margin-top:var(--s-2)}.app-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;height:var(--header-h);padding:0 var(--s-4);background:var(--c-surface);border-bottom:1px solid var(--c-divider)}.app-header .back-btn,.app-header .icon-action{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:none;color:var(--c-text-1);border-radius:var(--r-sm);transition:background .2s}.app-header .back-btn:active,.app-header .icon-action:active{background:var(--c-primary-soft)}.app-header .back-btn svg{width:20px;height:20px}.app-header .header-title{font-size:var(--fs-lg);font-weight:600;position:absolute;left:50%;transform:translate(-50%);white-space:nowrap}.app-header .header-action{display:flex;align-items:center;gap:var(--s-3)}.card{background:var(--c-surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card-flat{background:var(--c-surface);border-radius:var(--r-lg)}.card-dark{background:var(--c-primary);color:#fff;border-radius:var(--r-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px var(--s-4);font-size:var(--fs-md);font-weight:600;border-radius:var(--r-md);outline:none;transition:transform .18s var(--ease),box-shadow .2s ease,opacity .2s;user-select:none}.btn:active{transform:scale(.98)}.btn-primary{background:var(--grad-rose);color:#fff;box-shadow:var(--sh-rose)}.btn-primary:active{box-shadow:0 3px 10px -6px #9a758080}.btn-primary:disabled{background:var(--c-text-4);box-shadow:none;cursor:not-allowed}.btn-secondary{background:var(--c-primary-soft);color:var(--c-text-1)}.btn-block{width:100%}.btn-ghost{background:var(--c-surface);color:var(--c-primary);border:1px solid var(--c-border)}.menu-item{display:flex;align-items:center;justify-content:space-between;padding:16px var(--s-4);cursor:pointer;transition:background .15s}.menu-item:active{background:var(--c-border-light)}.menu-item .menu-icon{width:20px;height:20px;margin-right:var(--s-3)}.menu-item .menu-label{font-size:var(--fs-lg);display:flex;align-items:center}.tag{display:inline-flex;align-items:center;padding:4px 10px;font-size:var(--fs-sm);font-weight:500;border-radius:var(--r-full)}.tag-primary{background:var(--c-primary-soft);color:var(--c-text-1)}.tag-accent{background:var(--c-accent-light);color:var(--c-accent-dark)}.tag-yi{background:#48bb781f;color:var(--c-yi)}.tag-ji{background:#e53e3e1a;color:var(--c-ji)}.pill-tag{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 14px;border-radius:var(--r-full);font-size:13px;font-weight:500}.pill-tag:before{content:"";width:5px;height:5px;border-radius:50%}.pill-yi{background:#48bb781a;color:var(--c-yi)}.pill-yi:before{background:var(--c-yi)}.pill-ji{background:#e53e3e17;color:var(--c-ji)}.pill-ji:before{background:var(--c-ji)}.stats-row{display:flex;gap:var(--s-3)}.stat-card{flex:1;padding:var(--s-5) var(--s-3)}.stat-num{font-size:var(--fs-3xl);font-weight:700;line-height:1.2}.stat-label{display:block;font-size:var(--fs-sm);color:var(--c-text-3);margin-top:var(--s-1)}.divider{height:1px;background:var(--c-divider);margin:var(--s-3) 0}.divider-thick{height:8px;background:var(--c-border-light)}.input,.form-input{width:100%;padding:12px 16px;border:1px solid var(--c-border);border-radius:var(--r-md);font-size:var(--fs-md);background:var(--c-bg-warm);outline:none;transition:border-color .2s,background .2s;color:var(--c-text-1)}.input:focus,.form-input:focus{border-color:var(--c-primary);background:var(--c-surface)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--s-12) var(--s-4);gap:var(--s-4);color:var(--c-text-3);font-size:var(--fs-md)}.empty-state{display:flex;flex-direction:column;align-items:center;padding:var(--s-12) var(--s-4);color:var(--c-text-3);font-size:var(--fs-md)}.empty-state .ico{font-size:40px;opacity:.3;margin-bottom:var(--s-4)}.spinner{width:20px;height:20px;border:2px solid rgba(26,26,26,.12);border-top-color:var(--c-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000bf;color:#fff;font-size:var(--fs-md);padding:var(--s-3) var(--s-5);border-radius:var(--r-md);z-index:9999;animation:toastIn .2s ease;max-width:80%;text-align:center}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--s-6)}.modal-sheet{background:var(--c-surface);width:100%;max-width:480px;border-radius:var(--r-xl) var(--r-xl) 0 0;margin:auto auto 0;padding:24px 22px calc(36px + var(--safe-bottom));animation:sheetUp .25s ease;max-height:88vh;overflow-y:auto}.modal-handle{width:36px;height:4px;background:var(--c-border);border-radius:2px;margin:0 auto 18px}.modal-title{font-size:var(--fs-lg);font-weight:600;margin-bottom:20px;text-align:center}.bottom-tab-bar{position:fixed;bottom:0;left:0;right:0;height:56px;background:#fff;display:flex;align-items:center;justify-content:space-around;z-index:100;padding-bottom:env(safe-area-inset-bottom,0);border-top:1px solid var(--c-divider)}.tab-bar-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 0;color:var(--c-text-3);font-weight:600}.tab-bar-item.active{color:var(--c-text-1)}.tab-bar-item .tab-label{font-size:var(--fs-sm)}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2.5px)}}@keyframes sheetUp{0%{transform:translateY(40px);opacity:.4}to{transform:translateY(0);opacity:1}}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.drawer-enter-active,.drawer-leave-active{transition:transform .3s var(--ease)}.drawer-enter-from,.drawer-leave-to{transform:translate(100%)}.scrim-enter-active,.scrim-leave-active{transition:opacity .3s}.scrim-enter-from,.scrim-leave-to{opacity:0}.hidden{display:none!important}.safe-bottom{padding-bottom:calc(var(--s-6) + var(--safe-bottom))}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
