.sakura-layer[data-v-8a3b6ee5]{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:var(--z-decor);overflow:hidden}.petal[data-v-8a3b6ee5]{position:absolute;top:-5vh;background:linear-gradient(135deg,#ffd1e3,#ffb6d5,#ffc9de);border-radius:80% 0;animation-name:sakuraFall-8a3b6ee5;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes sakuraFall-8a3b6ee5{0%{transform:translateY(-5vh) rotate(0)}25%{transform:translate(var(--drift),25vh) rotate(90deg)}50%{transform:translate(calc(var(--drift) * .4),50vh) rotate(180deg)}75%{transform:translate(var(--drift),75vh) rotate(270deg)}to{transform:translate(calc(var(--drift) * .6),108vh) rotate(360deg)}}.toast-host[data-v-0922df97]{position:fixed;top:20px;right:20px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:10px}.toast[data-v-0922df97]{display:flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:12px 18px;font-size:14px;color:var(--text-primary);box-shadow:var(--shadow-card);min-width:220px;max-width:360px}.toast .dot[data-v-0922df97]{width:8px;height:8px;border-radius:50%;flex:none}.toast.success .dot[data-v-0922df97]{background:var(--success-green)}.toast.error .dot[data-v-0922df97]{background:var(--error-red)}.toast.info .dot[data-v-0922df97]{background:var(--info-cyan)}.toast-enter-active[data-v-0922df97]{transition:all .3s var(--ease-out-expo)}.toast-leave-active[data-v-0922df97]{transition:all .25s var(--ease-smooth)}.toast-enter-from[data-v-0922df97]{opacity:0;transform:translate(40px)}.toast-leave-to[data-v-0922df97]{opacity:0;transform:translateY(-10px)}@media (max-width: 640px){.toast-host[data-v-0922df97]{top:auto;bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));left:var(--space-3);right:var(--space-3);align-items:stretch}}:root{--primary-green: #16A34A;--primary-hover: #15803D;--primary-light: #F0FDF4;--success-green: #16A34A;--warning-amber: #D97706;--error-red: #DC2626;--info-cyan: #0891B2;--text-green: #15803D;--tag-purple: #7C3AED;--tag-blue: #2563EB;--tag-cyan: #0891B2;--tag-gray: #6B7280;--bg-page: #F6F7F9;--bg-card: #FFFFFF;--bg-subtle: #F1F3F5;--text-primary: #111827;--text-secondary: #4B5563;--text-tertiary: #9CA3AF;--border-color: #E5E7EB;--border-strong: #D1D5DB;--input-border: #D1D5DB;--gradient-primary: linear-gradient(135deg, #16A34A, #22C55E);--radius-lg: 14px;--radius-md: 10px;--radius-sm: 8px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--fs-2xs: 11px;--fs-xs: 12px;--fs-sm: 13px;--fs-base: 14px;--fs-md: 16px;--fs-lg: 20px;--fs-xl: 24px;--fs-2xl: 30px;--fw-normal: 400;--fw-medium: 600;--fw-bold: 700;--z-decor: 1;--z-sticky: 50;--z-sidebar: 100;--z-dropdown: 200;--z-modal: 600;--z-toast: 800;--z-blocking: 900;--surface-subtle: #F3F4F6;--surface-success: #ECFDF5;--surface-warning: #FFFBEB;--surface-danger: #FEF2F2;--surface-info: #ECFEFF;--overlay-mask: rgba(17, 24, 39, .45);--skeleton-base: #EDEFF2;--skeleton-shine: #F7F8FA;--disabled-bg: var(--tag-gray);--focus-ring: 0 0 0 3px rgba(76, 175, 80, .35);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--glass-bg: #FFFFFF;--glass-border: #E5E7EB;--shadow-card: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .06);--shadow-card-hover: 0 4px 12px rgba(16, 24, 40, .08), 0 2px 6px rgba(16, 24, 40, .04);--shadow-pop: 0 12px 32px rgba(16, 24, 40, .14);--font-family: "Inter", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif}html.dark{--bg-page: #0B0D10;--bg-card: #14171C;--bg-subtle: #1B1F26;--text-primary: #E5E7EB;--text-secondary: #9CA3AF;--text-tertiary: #6B7280;--border-color: #262B33;--border-strong: #343A45;--input-border: #343A45;--primary-light: #10251A;--glass-bg: #14171C;--glass-border: #262B33;--shadow-card: 0 1px 2px rgba(0, 0, 0, .4);--shadow-card-hover: 0 4px 14px rgba(0, 0, 0, .5);--shadow-pop: 0 12px 32px rgba(0, 0, 0, .6);--primary-green: #4ADE80;--primary-hover: #86EFAC;--success-green: #4ADE80;--warning-amber: #FBBF24;--error-red: #F87171;--info-cyan: #22D3EE;--text-green: #86EFAC;--tag-purple: #A78BFA;--tag-blue: #60A5FA;--tag-cyan: #22D3EE;--tag-gray: #6B7280;--gradient-primary: linear-gradient(135deg, #16A34A, #22C55E);--surface-subtle: #1B1F26;--surface-success: rgba(74, 222, 128, .12);--surface-warning: rgba(251, 191, 36, .12);--surface-danger: rgba(248, 113, 113, .12);--surface-info: rgba(34, 211, 238, .12);--overlay-mask: rgba(0, 0, 0, .68);--skeleton-base: #1B1F26;--skeleton-shine: #232830;--focus-ring: 0 0 0 3px rgba(74, 222, 128, .35)}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{font-family:var(--font-family);background:var(--bg-page);color:var(--text-primary);transition:background .3s var(--ease-smooth),color .3s var(--ease-smooth);-webkit-font-smoothing:antialiased}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.fade-up{animation:fadeUp .4s var(--ease-out-expo) both}.scale-in{animation:scaleIn .3s var(--ease-out-expo) both}.glass-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:box-shadow .2s var(--ease-smooth),border-color .2s var(--ease-smooth)}.glass-card:hover{border-color:var(--border-strong)}.card-interactive{cursor:pointer}.card-interactive:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover);border-color:var(--primary-green)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-family);font-weight:var(--fw-medium);font-size:var(--fs-base);padding:9px 16px;transition:background .16s var(--ease-smooth),border-color .16s var(--ease-smooth),opacity .16s}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--primary-green);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-strong)}.btn-secondary:hover{background:var(--bg-subtle)}.btn-outline{background:transparent;color:var(--primary-green);border:1px solid var(--primary-green)}.btn-outline:hover{background:var(--primary-light)}.btn-danger{background:var(--error-red);color:#fff}.btn-sm{padding:5px 10px;font-size:var(--fs-sm)}.input{width:100%;padding:9px 12px;border-radius:var(--radius-sm);border:1px solid var(--input-border);background:var(--bg-card);color:var(--text-primary);font-size:var(--fs-base);font-family:var(--font-family);transition:all .2s var(--ease-smooth);outline:none}.input:focus{border-color:var(--primary-green);box-shadow:var(--focus-ring)}.input::placeholder{color:var(--text-tertiary)}.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:#fff}.pill-purple{background:var(--tag-purple)}.pill-blue{background:var(--tag-blue)}.pill-cyan{background:var(--tag-cyan)}.pill-gray{background:var(--tag-gray)}.pill-green{background:var(--success-green)}.pill-red{background:var(--error-red)}.pill-amber{background:var(--warning-amber)}.page-container{max-width:1280px;margin:0 auto;padding:var(--space-6) var(--space-7)}@media (max-width: 640px){.page-container{padding:var(--space-4)}}.page-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-primary);margin:0 0 2px;line-height:1.3}.page-subtitle{font-size:var(--fs-sm);color:var(--text-tertiary);margin:0 0 var(--space-5)}.grid-cards{display:grid;gap:var(--space-4);grid-template-columns:repeat(3,1fr)}@media (max-width: 1024px){.grid-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.grid-cards{grid-template-columns:1fr}}.select{width:100%;padding:12px 36px 12px 16px;border-radius:var(--radius-sm);border:1.5px solid var(--input-border);background:var(--bg-card);color:var(--text-primary);font-size:var(--fs-base);font-family:var(--font-family);transition:all .2s var(--ease-smooth);outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-tertiary) 50%),linear-gradient(135deg,var(--text-tertiary) 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% + 2px),calc(100% - 13px) calc(50% + 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}.select:focus{border-color:var(--primary-green);box-shadow:var(--focus-ring)}.pill-sm{padding:2px 8px;font-size:11px}.btn-block{width:100%}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}.btn:disabled,.input:disabled,.select:disabled{opacity:.5;cursor:not-allowed}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}html,body{overflow-x:hidden}img,video,canvas,pre{max-width:100%}.modal-mask{padding:16px}.modal{max-width:min(440px,calc(100vw - 32px))}@media (max-width: 640px){.page-container{padding:14px 12px}.grid-cards{gap:12px}.toolbar{flex-wrap:wrap}.toolbar .input,.toolbar .select{min-width:0;flex:1 1 140px}.glass-card{border-radius:14px}button,.btn{touch-action:manipulation}}
