.toast-host[data-v-8a9b96d7]{position:fixed;top:calc(var(--nav-h, 56px) + var(--space-3));left:50%;transform:translate(-50%);z-index:9999;pointer-events:none;width:min(420px,calc(100vw - var(--space-8)));padding-top:env(safe-area-inset-top,0)}.toast-host__stack[data-v-8a9b96d7]{display:flex;flex-direction:column;gap:var(--space-2);align-items:stretch}.toast[data-v-8a9b96d7]{pointer-events:auto;position:relative;display:flex;align-items:center;gap:var(--space-3);padding:12px 14px 12px 16px;border-radius:14px;background:color-mix(in srgb,var(--surface-strong) 92%,transparent);border:1px solid var(--line);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);box-shadow:0 8px 28px #17171f1a,0 1px #fff6 inset;color:var(--text-1);font-size:var(--text-sm);letter-spacing:.01em;line-height:1.45;overflow:hidden;will-change:transform,opacity}.toast__bar[data-v-8a9b96d7]{position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--toast-color, var(--text-3))}.toast--success[data-v-8a9b96d7]{--toast-color: var(--success)}.toast--error[data-v-8a9b96d7]{--toast-color: var(--danger)}.toast--warning[data-v-8a9b96d7]{--toast-color: var(--warning)}.toast--info[data-v-8a9b96d7]{--toast-color: var(--accent-strong)}.toast__icon[data-v-8a9b96d7]{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--toast-color) 14%,transparent);color:var(--toast-color);flex-shrink:0}.toast__msg[data-v-8a9b96d7]{flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.toast__close[data-v-8a9b96d7]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:0;background:transparent;color:var(--text-3);cursor:pointer;flex-shrink:0;transition:background-color .15s ease-out,color .15s ease-out,transform .1s ease-out}.toast__close[data-v-8a9b96d7]:hover{background:var(--bg-subtle);color:var(--text-1)}.toast__close[data-v-8a9b96d7]:active{transform:scale(.9)}.toast-enter-active[data-v-8a9b96d7]{transition:transform .42s cubic-bezier(.34,1.1,.64,1),opacity .28s ease-out}.toast-leave-active[data-v-8a9b96d7]{transition:transform .28s cubic-bezier(.34,1.1,.64,1),opacity .22s ease-out;position:absolute;left:0;right:0}.toast-enter-from[data-v-8a9b96d7]{opacity:0;transform:translateY(-12px) scale(.96)}.toast-leave-to[data-v-8a9b96d7]{opacity:0;transform:translateY(-8px) scale(.98)}.toast-move[data-v-8a9b96d7]{transition:transform .42s cubic-bezier(.34,1.1,.64,1)}@media (max-width: 640px){.toast-host[data-v-8a9b96d7]{top:calc(var(--nav-h, 56px) + var(--space-2));width:calc(100vw - var(--space-6))}.toast[data-v-8a9b96d7]{padding:11px 12px 11px 14px;font-size:var(--text-sm);border-radius:12px}}@media (prefers-reduced-motion: reduce){.toast-enter-active[data-v-8a9b96d7],.toast-leave-active[data-v-8a9b96d7],.toast-move[data-v-8a9b96d7]{transition:opacity .18s ease-out}.toast-enter-from[data-v-8a9b96d7],.toast-leave-to[data-v-8a9b96d7]{opacity:0;transform:none}}:root{color-scheme:light;--brand-50: #eef2ff;--brand-100: #e0e7ff;--brand-500: #6366f1;--brand-600: #4f46e5;--brand-700: #4338ca;--violet-500: #a855f7;--violet-600: #9333ea;--pink-500: #ec4899;--bg: #f7f7f9;--bg-subtle: #f0f0f4;--surface: #ffffff;--surface-strong: #ffffff;--surface-glass: rgba(255, 255, 255, .72);--surface-glass-strong: rgba(255, 255, 255, .86);--text-1: #17171f;--text-2: #52525f;--text-3: #8b8b99;--text-invert: #ffffff;--line: rgba(23, 23, 31, .08);--line-strong: rgba(23, 23, 31, .14);--accent: var(--brand-500);--accent-strong: var(--brand-600);--accent-soft: var(--brand-50);--danger: #e5484d;--success: #2f9e63;--warning: #f59e0b;--grad-brand: linear-gradient(120deg, #6366f1 0%, #a855f7 52%, #ec4899 100%);--grad-hero: radial-gradient(1200px 520px at 18% -12%, rgba(99, 102, 241, .16), transparent 62%), radial-gradient(900px 460px at 88% 4%, rgba(168, 85, 247, .14), transparent 58%), radial-gradient(760px 420px at 52% 110%, rgba(236, 72, 153, .1), transparent 60%);--shadow-xs: 0 1px 2px rgba(23, 23, 31, .05);--shadow-sm: 0 2px 10px rgba(23, 23, 31, .06);--shadow-md: 0 10px 30px rgba(23, 23, 31, .09);--shadow-lg: 0 24px 60px rgba(23, 23, 31, .14);--shadow-glow: 0 8px 34px rgba(99, 102, 241, .28);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 26px;--radius-full: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--font-ui: -apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "HarmonyOS Sans SC", "Segoe UI", "Microsoft YaHei", sans-serif;--font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "PingFang SC", "HarmonyOS Sans SC", "Segoe UI", "Microsoft YaHei", sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Code", Consolas, monospace;--text-xs: 12px;--text-sm: 14px;--text-base: 15px;--text-md: 17px;--text-lg: 20px;--text-xl: 26px;--text-2xl: 34px;--text-3xl: 44px;--text-hero: clamp(38px, 6.4vw, 64px);--leading-tight: 1.12;--leading-snug: 1.3;--leading-normal: 1.58;--tracking-tight: -.022em;--tracking-tighter: -.035em;--ease-spring: cubic-bezier(.21, 1.02, .45, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .16s;--dur-base: .24s;--dur-slow: .42s;--nav-h: 64px;--container: 1160px;--touch-target: 44px}html[data-theme=dark]{color-scheme:dark;--bg: #0d0d12;--bg-subtle: #14141b;--surface: #1a1a22;--surface-strong: #20202a;--surface-glass: rgba(26, 26, 34, .72);--surface-glass-strong: rgba(26, 26, 34, .88);--text-1: #f2f2f7;--text-2: #b0b0bc;--text-3: #737380;--text-invert: #101018;--line: rgba(255, 255, 255, .09);--line-strong: rgba(255, 255, 255, .16);--accent: #818cf8;--accent-strong: #a5b4fc;--accent-soft: rgba(99, 102, 241, .16);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .35);--shadow-sm: 0 2px 12px rgba(0, 0, 0, .32);--shadow-md: 0 12px 34px rgba(0, 0, 0, .42);--shadow-lg: 0 28px 70px rgba(0, 0, 0, .55);--shadow-glow: 0 8px 38px rgba(99, 102, 241, .32);--grad-hero: radial-gradient(1200px 520px at 18% -12%, rgba(99, 102, 241, .22), transparent 62%), radial-gradient(900px 460px at 88% 4%, rgba(168, 85, 247, .2), transparent 58%), radial-gradient(760px 420px at 52% 110%, rgba(236, 72, 153, .13), transparent 60%)}@media (prefers-reduced-motion: reduce){:root{--ease-spring: linear;--dur-fast: 0ms;--dur-base: 0ms;--dur-slow: 0ms}*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-1);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh;transition:background-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--grad-hero);pointer-events:none}img,svg,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}input,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4,p{margin:0}ul{margin:0;padding:0;list-style:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}::selection{background:color-mix(in srgb,var(--accent) 26%,transparent)}.container{width:min(var(--container),100% - var(--space-8));margin-inline:auto}.grad-text{background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}.surface{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.glass{background:var(--surface-glass);backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px);border:1px solid var(--line)}.glass-strong{background:var(--surface-glass-strong);backdrop-filter:saturate(180%) blur(26px);-webkit-backdrop-filter:saturate(180%) blur(26px);border:1px solid var(--line)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target);padding:0 var(--space-6);border-radius:var(--radius-full);font-size:var(--text-base);font-weight:590;letter-spacing:.01em;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-base) var(--ease-out),background-color var(--dur-base) var(--ease-out),opacity var(--dur-base) var(--ease-out)}.btn:active{transform:scale(.965)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{color:var(--text-invert);background:var(--grad-brand);box-shadow:var(--shadow-glow)}.btn-primary:hover{box-shadow:0 12px 44px #6366f161;transform:translateY(-1px)}.btn-ghost{background:transparent;border:1px solid var(--line-strong);color:var(--text-1)}.btn-ghost:hover{background:var(--bg-subtle)}.btn-soft{background:var(--accent-soft);color:var(--accent-strong)}.btn-soft:hover{filter:brightness(1.06)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--touch-target);height:var(--touch-target);border-radius:var(--radius-full);color:var(--text-2);transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.icon-btn:hover{background:var(--bg-subtle);color:var(--text-1)}.icon-btn:active{transform:scale(.92)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field-label{font-size:var(--text-sm);font-weight:590;color:var(--text-2)}.input{width:100%;min-height:52px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line-strong);background:var(--surface);color:var(--text-1);font-size:var(--text-md);transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.input::placeholder{color:var(--text-3)}.input:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line-strong))}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}.input-error{border-color:var(--danger)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--danger) 12%,transparent)!important}.field-error{font-size:var(--text-xs);color:var(--danger);min-height:18px}.skeleton{position:relative;overflow:hidden;background:var(--bg-subtle);border-radius:var(--radius-md)}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--surface) 72%,transparent),transparent);animation:shimmer 1.6s infinite}@keyframes shimmer{to{transform:translate(100%)}}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-16) var(--space-6);color:var(--text-3);text-align:center}.tag{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:590;background:var(--accent-soft);color:var(--accent-strong)}.chip{display:inline-flex;align-items:center;gap:var(--space-2);min-height:38px;padding:0 var(--space-4);border-radius:var(--radius-full);border:1px solid var(--line);background:var(--surface);color:var(--text-2);font-size:var(--text-sm);font-weight:560;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.chip:hover{border-color:var(--line-strong);color:var(--text-1)}.chip:active{transform:scale(.96)}.chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.page-enter-active,.page-leave-active{transition:opacity var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.page-enter-from{opacity:0;transform:translateY(10px)}.page-leave-to{opacity:0;transform:translateY(-6px)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .5s var(--ease-out),transform .65s var(--ease-spring)}.reveal.visible{opacity:1;transform:translateY(0)}
