:root{--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-7: 28px;--s-8: 32px;--s-10: 40px;--s-12: 48px;--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 18px;--r-xl: 24px;--r-full: 999px;--fs-11: .6875rem;--fs-12: .75rem;--fs-13: .8125rem;--fs-14: .875rem;--fs-15: .9375rem;--fs-17: 1.0625rem;--fs-20: 1.25rem;--fs-26: 1.625rem;--fs-32: 2rem;--t-fast: .15s;--t-med: .2s;--t-slow: .28s;--ease: cubic-bezier(.22, .61, .36, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--header-h: 52px;--tabbar-h: 56px;--tap-min: 44px;--maxw: 480px;--bg: #f2f3f7;--bg-elevated: #ffffff;--bg-elevated-2: #f7f8fb;--bg-sunken: #eceef3;--text: #0a0b0d;--text-2: #545b69;--text-3: #767d8c;--border: rgba(10, 11, 13, .08);--border-strong: rgba(10, 11, 13, .14);--overlay: rgba(15, 18, 26, .42);--accent: #2f6bff;--accent-press: #2559e6;--accent-weak: rgba(47, 107, 255, .12);--on-accent: #ffffff;--success: #16a34a;--success-weak: rgba(22, 163, 74, .12);--danger: #ef4444;--danger-weak: rgba(239, 68, 68, .12);--warning: #b86a00;--warning-weak: rgba(224, 134, 0, .14);--info: #2f6bff;--info-weak: rgba(47, 107, 255, .12);--neutral: #6b7280;--neutral-weak: rgba(107, 114, 128, .12);--shadow-1: 0 1px 2px rgba(10, 11, 13, .05), 0 1px 1px rgba(10, 11, 13, .03);--shadow-2: 0 4px 16px rgba(10, 11, 13, .08), 0 1px 3px rgba(10, 11, 13, .04);--shadow-tabbar: 0 -.5px 0 var(--border), 0 -8px 24px rgba(10, 11, 13, .04);--skeleton-base: rgba(10, 11, 13, .06);--skeleton-shine: rgba(10, 11, 13, .1)}html[data-theme=dark]{--bg: #0b0c0f;--bg-elevated: #16181d;--bg-elevated-2: #1d2026;--bg-sunken: #0f1115;--text: #f4f5f7;--text-2: #a3a9b5;--text-3: #6c7280;--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .18);--overlay: rgba(0, 0, 0, .6);--accent: #5b8bff;--accent-press: #4a7bf0;--accent-weak: rgba(91, 139, 255, .18);--on-accent: #ffffff;--success: #34d27b;--success-weak: rgba(52, 210, 123, .16);--danger: #ff6b6b;--danger-weak: rgba(255, 107, 107, .16);--warning: #f5a623;--warning-weak: rgba(245, 166, 35, .16);--info: #5b8bff;--info-weak: rgba(91, 139, 255, .16);--neutral: #8b909c;--neutral-weak: rgba(139, 144, 156, .16);--shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--shadow-2: 0 6px 20px rgba(0, 0, 0, .5);--shadow-tabbar: 0 -.5px 0 var(--border), 0 -8px 24px rgba(0, 0, 0, .4);--skeleton-base: rgba(255, 255, 255, .06);--skeleton-shine: rgba(255, 255, 255, .12)}@media (prefers-color-scheme: dark){html:not([data-theme]){--bg: #0b0c0f;--bg-elevated: #16181d;--text: #f4f5f7}}*,*:before,*:after{box-sizing:border-box}html,body,#app{height:100%}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Roboto,Helvetica,Arial,sans-serif;font-size:var(--fs-15);line-height:1.45;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}#app{max-width:var(--maxw);margin:0 auto;background:var(--bg);position:relative;overflow:hidden}button{font:inherit;color:inherit;border:none;background:none;cursor:pointer;letter-spacing:inherit}input,textarea,select{font:inherit;color:inherit;letter-spacing:inherit}a{color:var(--accent);text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p{margin:0}.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.press{transition:transform var(--t-fast) var(--ease),opacity var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease);-webkit-user-select:none;user-select:none}.press:active{transform:scale(.97);opacity:.86}.tap{min-width:var(--tap-min);min-height:var(--tap-min);display:inline-flex;align-items:center;justify-content:center}.card{background:var(--bg-elevated);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}.sk{position:relative;overflow:hidden;background:var(--skeleton-base);border-radius:var(--r-sm)}.sk:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,var(--skeleton-shine),transparent);animation:sk-shimmer 1.25s ease-in-out infinite}@keyframes sk-shimmer{to{transform:translate(100%)}}.scroll-y{overflow-y:auto;-webkit-overflow-scrolling:touch}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{scrollbar-width:none}.nav-enter-active,.nav-leave-active{transition:transform var(--t-slow) var(--ease-out),opacity var(--t-slow) var(--ease-out);will-change:transform,opacity}.nav-enter-from{transform:translate(28px);opacity:0}.nav-leave-to{transform:translate(-14px);opacity:0}.fade-enter-active,.fade-leave-active{transition:opacity var(--t-med) var(--ease)}.fade-enter-from,.fade-leave-to{opacity:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.001ms!important}.spin,.sk:after{animation-duration:revert!important}*:not(.spin):not(.sk){animation-duration:.001ms!important}}.spin{width:20px;height:20px;border-radius:50%;border:2px solid var(--accent-weak);border-top-color:var(--accent);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tabbar[data-v-a4161748]{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--maxw);display:grid;grid-template-columns:repeat(4,1fr);height:calc(var(--tabbar-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--bg-elevated);background:color-mix(in srgb,var(--bg-elevated) 88%,transparent);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);box-shadow:var(--shadow-tabbar);z-index:50}.tab[data-v-a4161748]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--text-3);transition:color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.tab[data-v-a4161748]:active{transform:scale(.92)}.tab.active[data-v-a4161748]{color:var(--accent)}.lbl[data-v-a4161748]{font-size:var(--fs-11);font-weight:500;letter-spacing:0}.tab.active .lbl[data-v-a4161748]{font-weight:600}.lock[data-v-cbcc7af1]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:var(--s-6);background:var(--bg)}.lk-card[data-v-cbcc7af1]{display:flex;flex-direction:column;align-items:center;gap:var(--s-2);width:100%;max-width:320px;text-align:center}.lk-logo[data-v-cbcc7af1]{width:72px;height:72px;border-radius:22px;display:flex;align-items:center;justify-content:center;color:var(--accent);background:var(--accent-weak);margin-bottom:var(--s-2)}.lk-brand[data-v-cbcc7af1]{font-size:var(--fs-20);font-weight:800;letter-spacing:-.02em}.lk-tag[data-v-cbcc7af1]{font-size:var(--fs-13);color:var(--text-3);margin-bottom:var(--s-4)}.lk-btn[data-v-cbcc7af1]{width:100%;height:50px;border-radius:var(--r-md);background:var(--accent);color:var(--on-accent);font-size:var(--fs-15);font-weight:700;display:flex;align-items:center;justify-content:center;gap:var(--s-2)}.lk-btn[data-v-cbcc7af1]:disabled{opacity:.7}.lk-fail[data-v-cbcc7af1]{font-size:var(--fs-13);color:var(--danger);font-weight:600}.lk-logout[data-v-cbcc7af1]{margin-top:var(--s-2);font-size:var(--fs-13);color:var(--text-3);padding:var(--s-2)}.spin.sm[data-v-cbcc7af1]{width:16px;height:16px;border-width:2px;border-color:#fff6;border-top-color:#fff}.aifab[data-v-407d4c13]{position:fixed;right:var(--s-4);bottom:calc(var(--tabbar-h) + var(--safe-bottom) + var(--s-4));z-index:90;width:56px;height:56px;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-press));box-shadow:var(--shadow-2);animation:aifab-bob-407d4c13 3.2s ease-in-out infinite;transition:transform var(--t-fast) var(--ease)}.aifab[data-v-407d4c13]:active{transform:scale(.92)}.ring[data-v-407d4c13]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--r-full);background:var(--accent);z-index:-1;animation:aifab-pulse-407d4c13 2.4s ease-out infinite}@keyframes aifab-pulse-407d4c13{0%{transform:scale(1);opacity:.45}70%{transform:scale(1.5);opacity:0}to{transform:scale(1.5);opacity:0}}@keyframes aifab-bob-407d4c13{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (prefers-reduced-motion: reduce){.aifab[data-v-407d4c13],.ring[data-v-407d4c13]{animation:none}}.app-root[data-v-03a70660]{height:100%;display:flex;flex-direction:column}.app-main[data-v-03a70660]{flex:1;min-height:0;position:relative}.actbar[data-v-03a70660]{flex:none;display:flex;align-items:center;gap:8px;padding:8px 16px;padding-top:calc(env(safe-area-inset-top,0px) + 8px);background:var(--accent);color:var(--on-accent);font-size:var(--fs-13);z-index:50}.actbar-dot[data-v-03a70660]{flex:none;width:7px;height:7px;border-radius:50%;background:var(--on-accent);opacity:.9}.actbar-txt[data-v-03a70660]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.actbar-txt b[data-v-03a70660]{font-weight:700}.actbar-exit[data-v-03a70660]{flex:none;background:#ffffff38;color:var(--on-accent);font-weight:600;font-size:var(--fs-12);padding:4px 12px;border-radius:var(--r-full);transition:transform var(--t-fast) var(--ease)}.actbar-exit[data-v-03a70660]:active{transform:scale(.94)}
