.uploader-wrap[data-v-4497cff4]{display:flex;justify-content:center;align-items:center;padding:24px 16px}.drop-zone[data-v-4497cff4]{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:520px;padding:52px 32px 44px;border:2.5px dashed #c7d2fe;border-radius:24px;background:linear-gradient(145deg,#fafbff,#f0f3ff);cursor:pointer;transition:border-color .22s,background .22s,transform .15s;-webkit-user-select:none;user-select:none;outline:none}.drop-zone[data-v-4497cff4]:hover,.drop-zone[data-v-4497cff4]:focus-visible{border-color:var(--primary);background:linear-gradient(145deg,#f0f3ff,#e5e8ff)}.drop-zone.is-dragging[data-v-4497cff4]{border-color:var(--secondary);background:linear-gradient(145deg,#ede9ff,#ddd6ff);transform:scale(1.01)}.drop-icon svg[data-v-4497cff4]{width:72px;height:72px;filter:drop-shadow(0 6px 16px rgba(99,102,241,.25))}.drop-title[data-v-4497cff4]{font-size:1.1rem;font-weight:600;color:var(--text)}.drop-hint[data-v-4497cff4]{font-size:.85rem;color:var(--text-muted)}.pick-btn[data-v-4497cff4]{margin-top:4px;padding:10px 28px;background:var(--primary);color:#fff;font-size:.9rem;font-weight:600;border-radius:50px;transition:background .18s,box-shadow .18s,transform .12s;box-shadow:0 3px 12px #6366f159}.pick-btn[data-v-4497cff4]:hover{background:var(--primary-dark);box-shadow:0 5px 18px #6366f173;transform:translateY(-1px)}.pick-btn[data-v-4497cff4]:active{transform:translateY(0)}.card[data-v-02aea496]{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-md);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.card[data-v-02aea496]:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.swatch[data-v-02aea496]{height:128px;position:relative;display:flex;align-items:flex-end;justify-content:space-between;padding:8px 10px}.pct-badge[data-v-02aea496]{background:#ffffffe0;color:#1e1b4b;font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.family-badge[data-v-02aea496]{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:20px;background:#ffffffc7;color:#1e1b4b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.info[data-v-02aea496]{padding:10px 14px 4px;display:flex;flex-direction:column;gap:2px}.info-row[data-v-02aea496]{display:flex;align-items:center;gap:6px;padding:5px 6px;border-radius:8px;cursor:pointer;transition:background .15s}.info-row[data-v-02aea496]:hover{background:#f0f3ff}.label[data-v-02aea496]{font-size:.68rem;font-weight:700;color:var(--primary);min-width:28px;letter-spacing:.04em}.value[data-v-02aea496]{flex:1;font-size:.78rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mono[data-v-02aea496]{font-family:Fira Code,Cascadia Code,Consolas,monospace}.copy-icon[data-v-02aea496]{font-size:.8rem;color:var(--text-muted);transition:color .15s,transform .15s;min-width:16px;text-align:center}.copy-icon.copied[data-v-02aea496]{color:var(--success);transform:scale(1.3)}.progress-bar-wrap[data-v-02aea496]{margin:8px 14px 0;height:4px;background:#e8ecf0;border-radius:2px;overflow:hidden}.progress-bar[data-v-02aea496]{height:100%;border-radius:2px;min-width:2px;opacity:.85;transition:width .6s cubic-bezier(.4,0,.2,1)}.desc[data-v-02aea496]{font-size:.72rem;color:var(--text-muted);line-height:1.55;padding:6px 14px 14px}.chart-layout[data-v-7e4b8fc0]{display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:start}@media(max-width:680px){.chart-layout[data-v-7e4b8fc0]{grid-template-columns:1fr}}.donut-wrap[data-v-7e4b8fc0]{display:flex;justify-content:center;align-items:center;flex-shrink:0}.donut-svg[data-v-7e4b8fc0]{width:240px;height:240px}.seg[data-v-7e4b8fc0]{cursor:pointer;transition:opacity .2s,transform .15s;transform-origin:130px 130px;stroke:#fff;stroke-width:2}.seg--active[data-v-7e4b8fc0]{filter:drop-shadow(0 2px 8px rgba(0,0,0,.2))}.center-name[data-v-7e4b8fc0]{font-size:14px;font-weight:700;fill:#1e1b4b;font-family:PingFang SC,Microsoft YaHei,sans-serif}.center-pct[data-v-7e4b8fc0]{font-size:12px;fill:#64748b;font-family:PingFang SC,Microsoft YaHei,sans-serif}.family-list[data-v-7e4b8fc0]{display:flex;flex-direction:column;gap:6px}.family-item[data-v-7e4b8fc0]{display:flex;align-items:flex-start;gap:12px;padding:10px 14px;border-radius:var(--radius-sm);background:transparent;border:2px solid transparent;text-align:left;transition:background .18s,border-color .18s;cursor:pointer}.family-item[data-v-7e4b8fc0]:hover{background:#f5f7ff}.family-item.is-selected[data-v-7e4b8fc0]{background:#eef2ff;border-color:#c7d2fe}.family-item.is-dimmed[data-v-7e4b8fc0]{opacity:.5}.dot[data-v-7e4b8fc0]{width:18px;height:18px;border-radius:50%;flex-shrink:0;margin-top:2px;box-shadow:0 2px 6px #00000026}.family-text[data-v-7e4b8fc0]{flex:1;min-width:0}.family-header[data-v-7e4b8fc0]{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:5px}.family-name[data-v-7e4b8fc0]{font-size:.88rem;font-weight:600;color:var(--text)}.family-pct[data-v-7e4b8fc0]{font-size:.8rem;font-weight:700;color:var(--primary);white-space:nowrap}.bar-track[data-v-7e4b8fc0]{height:5px;background:#e8ecf0;border-radius:3px;overflow:hidden}.bar-fill[data-v-7e4b8fc0]{height:100%;border-radius:3px;min-width:3px;opacity:.85;transition:width .8s cubic-bezier(.4,0,.2,1)}.family-desc[data-v-7e4b8fc0]{font-size:.72rem;color:var(--text-muted);margin-top:6px;line-height:1.5}.color-dots[data-v-7e4b8fc0]{display:flex;flex-direction:column;gap:3px;flex-shrink:0}.mini-dot[data-v-7e4b8fc0]{width:14px;height:14px;border-radius:4px;display:block;box-shadow:0 1px 3px #0000001f}.picker-wrap[data-v-974b2a79]{display:flex;flex-direction:column;gap:16px}.picker-toolbar[data-v-974b2a79]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.tool-group[data-v-974b2a79]{display:flex;gap:8px}.tool-btn[data-v-974b2a79]{display:inline-flex;align-items:center;gap:7px;padding:8px 20px;border-radius:50px;font-size:.88rem;font-weight:600;background:var(--card-bg);color:var(--text-muted);border:2px solid var(--border);transition:all .18s}.tool-btn[data-v-974b2a79]:hover{border-color:var(--primary-light);color:var(--primary);background:#f0f3ff}.tool-btn.active[data-v-974b2a79]{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 3px 12px #6366f159}.tool-clear[data-v-974b2a79]{padding:7px 16px;border-radius:50px;font-size:.82rem;font-weight:600;background:transparent;color:var(--text-muted);border:1.5px solid var(--border);transition:all .15s}.tool-clear[data-v-974b2a79]:hover{background:#fef2f2;color:#dc2626;border-color:#fca5a5}.img-container[data-v-974b2a79]{position:relative;display:inline-block;max-width:100%;line-height:0}.picker-img[data-v-974b2a79]{display:block;max-height:400px;max-width:100%;width:auto;height:auto;border-radius:var(--radius);box-shadow:var(--shadow-lg);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.overlay-canvas[data-v-974b2a79]{position:absolute;top:0;left:0;border-radius:var(--radius)}.hover-pip[data-v-974b2a79]{position:absolute;display:inline-flex;align-items:center;gap:6px;background:#0f0f23d1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:9px;padding:4px 10px 4px 5px;pointer-events:none;white-space:nowrap;z-index:10;box-shadow:0 4px 12px #00000040}.pip-swatch[data-v-974b2a79]{width:22px;height:22px;border-radius:5px;flex-shrink:0;border:1.5px solid rgba(255,255,255,.2)}.pip-hex[data-v-974b2a79]{font-size:.76rem;font-weight:700;font-family:Fira Code,Cascadia Code,Consolas,monospace}.mode-hint[data-v-974b2a79]{font-size:.82rem;color:var(--text-muted);padding:4px 0}.mini-loading[data-v-974b2a79]{display:flex;align-items:center;gap:10px;padding:16px 20px;background:var(--card-bg);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);font-size:.88rem;color:var(--text-muted)}.mini-spinner[data-v-974b2a79]{width:22px;height:22px;border:3px solid #e0e7ff;border-top-color:var(--primary);border-radius:50%;animation:spin-974b2a79 .8s linear infinite;flex-shrink:0}@keyframes spin-974b2a79{to{transform:rotate(360deg)}}.mini-error[data-v-974b2a79]{color:var(--error);font-size:.85rem;padding:10px 14px;background:#fef2f2;border-radius:var(--radius-sm);border:1.5px solid #fca5a5}.point-card[data-v-974b2a79]{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-md);overflow:hidden;border:2px solid #e0e7ff}.pc-top[data-v-974b2a79]{display:flex}.pc-swatch[data-v-974b2a79]{width:120px;flex-shrink:0;display:flex;align-items:flex-end;justify-content:center;padding:0 8px 12px;min-height:140px}.pc-hex-label[data-v-974b2a79]{font-size:.72rem;font-weight:700;font-family:monospace;text-shadow:0 1px 4px rgba(0,0,0,.2);text-align:center}.pc-info[data-v-974b2a79]{flex:1;padding:14px 16px;display:flex;flex-direction:column;gap:3px}.pc-family-badge[data-v-974b2a79]{display:inline-block;background:#ede9fe;color:#7c3aed;font-size:.76rem;font-weight:700;padding:3px 12px;border-radius:20px;margin-bottom:6px}.pc-row[data-v-974b2a79]{display:flex;align-items:center;gap:7px;padding:4px 6px;border-radius:7px;cursor:pointer;transition:background .15s;outline:none}.pc-row[data-v-974b2a79]:hover,.pc-row[data-v-974b2a79]:focus-visible{background:#f0f3ff}.pc-row-label[data-v-974b2a79]{font-size:.66rem;font-weight:700;color:var(--primary);min-width:27px;letter-spacing:.05em}.pc-row-val[data-v-974b2a79]{flex:1;font-size:.76rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pc-row-copy[data-v-974b2a79]{font-size:.8rem;color:var(--text-muted);transition:color .15s,transform .15s;min-width:14px}.pc-row-copy.copied[data-v-974b2a79]{color:var(--success);transform:scale(1.3)}.pc-rgb-bars[data-v-974b2a79]{margin-top:8px;display:flex;flex-direction:column;gap:5px}.rgb-row[data-v-974b2a79]{display:flex;align-items:center;gap:6px}.rgb-label[data-v-974b2a79]{font-size:.68rem;font-weight:700;color:var(--text-muted);min-width:13px;font-family:monospace}.rgb-track[data-v-974b2a79]{flex:1;height:6px;background:#f1f5f9;border-radius:3px;overflow:hidden}.rgb-fill[data-v-974b2a79]{height:100%;border-radius:3px;min-width:2px;opacity:.85;transition:width .5s cubic-bezier(.4,0,.2,1)}.rgb-num[data-v-974b2a79]{font-size:.68rem;font-weight:600;color:var(--text-muted);min-width:26px;text-align:right;font-family:monospace}.pc-desc[data-v-974b2a79]{font-size:.76rem;color:var(--text-muted);line-height:1.65;padding:10px 16px 14px;border-top:1px solid var(--border)}.area-title-row[data-v-974b2a79]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.area-title[data-v-974b2a79]{font-size:1rem;font-weight:700;color:var(--text)}.area-count-badge[data-v-974b2a79]{background:#e0e7ff;color:var(--primary);font-size:.76rem;font-weight:600;padding:2px 10px;border-radius:20px}.fam-badge[data-v-974b2a79]{background:#ede9fe;color:#7c3aed}.area-color-grid[data-v-974b2a79]{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:14px}.area-chart-card[data-v-974b2a79]{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:22px}.area-chart-title[data-v-974b2a79]{font-size:.9rem;font-weight:700;color:var(--text);margin-bottom:18px}.slide-up-enter-active[data-v-974b2a79],.slide-up-leave-active[data-v-974b2a79]{transition:opacity .28s ease,transform .28s ease}.slide-up-enter-from[data-v-974b2a79]{opacity:0;transform:translateY(14px)}.slide-up-leave-to[data-v-974b2a79]{opacity:0;transform:translateY(-6px)}.mono[data-v-974b2a79]{font-family:Fira Code,Cascadia Code,Consolas,monospace}@media(max-width:520px){.pc-top[data-v-974b2a79]{flex-direction:column}.pc-swatch[data-v-974b2a79]{width:100%;min-height:80px;padding-bottom:10px}.area-color-grid[data-v-974b2a79]{grid-template-columns:repeat(2,1fr);gap:10px}.tool-btn[data-v-974b2a79]{padding:7px 14px;font-size:.82rem}}.app-root[data-v-7cf7de1c]{min-height:100vh;display:flex;flex-direction:column}.app-header[data-v-7cf7de1c]{background:linear-gradient(135deg,#4f46e5,#7c3aed 60%,#a21caf);padding:0 16px;box-shadow:0 4px 24px #4f46e540}.header-inner[data-v-7cf7de1c]{max-width:1100px;margin:0 auto;padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}.logo[data-v-7cf7de1c]{display:flex;align-items:center;gap:14px}.logo-icon[data-v-7cf7de1c]{font-size:2.4rem;line-height:1;filter:drop-shadow(0 2px 8px rgba(0,0,0,.2))}.app-title[data-v-7cf7de1c]{font-size:1.45rem;font-weight:800;color:#fff;letter-spacing:-.01em}.app-sub[data-v-7cf7de1c]{font-size:.82rem;color:#ffffffbf;margin-top:2px}.reupload-btn[data-v-7cf7de1c]{color:#ffffffe0;border:1.5px solid rgba(255,255,255,.35);padding:7px 18px;border-radius:50px;font-size:.85rem;font-weight:600;transition:background .18s,border-color .18s;white-space:nowrap}.reupload-btn[data-v-7cf7de1c]:hover{background:#ffffff1f;border-color:#fff9}.header-actions[data-v-7cf7de1c]{display:flex;align-items:center;gap:10px}.btn-lang[data-v-7cf7de1c]{color:#ffffffe0;border:1.5px solid rgba(255,255,255,.35);padding:5px 14px;border-radius:50px;font-size:.82rem;font-weight:700;letter-spacing:.03em;transition:background .18s,border-color .18s;background:#ffffff1a}.btn-lang[data-v-7cf7de1c]:hover{background:#ffffff38;border-color:#ffffffb3}.main-content[data-v-7cf7de1c]{flex:1;max-width:1100px;margin:0 auto;width:100%;padding:28px 16px 40px;display:flex;flex-direction:column;gap:8px}.error-banner[data-v-7cf7de1c]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;background:#fef2f2;border:1.5px solid #fca5a5;border-radius:var(--radius-sm);color:#b91c1c;font-size:.88rem;font-weight:500}.dismiss-btn[data-v-7cf7de1c]{background:none;color:#b91c1c;font-size:.9rem;padding:2px 6px;border-radius:4px;transition:background .15s}.dismiss-btn[data-v-7cf7de1c]:hover{background:#fee2e2}.section[data-v-7cf7de1c]{padding:8px 0}.section-title[data-v-7cf7de1c]{font-size:1.1rem;font-weight:700;color:var(--text);margin-bottom:18px;display:flex;align-items:center;gap:10px}.section-count[data-v-7cf7de1c]{font-size:.78rem;font-weight:600;background:#e0e7ff;color:var(--primary);padding:2px 10px;border-radius:20px}.section-subtitle[data-v-7cf7de1c]{font-size:.76rem;font-weight:500;color:var(--text-muted);background:#f1f5f9;padding:2px 10px;border-radius:20px}.img-loading-placeholder[data-v-7cf7de1c]{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px;background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:var(--text-muted);font-size:.88rem}.loading-section[data-v-7cf7de1c]{padding:24px 0}.loading-card[data-v-7cf7de1c]{display:flex;flex-direction:column;align-items:center;gap:14px;padding:44px 24px;background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-md)}.spinner[data-v-7cf7de1c]{width:44px;height:44px;border:4px solid #e0e7ff;border-top-color:var(--primary);border-radius:50%;animation:spin-7cf7de1c .85s linear infinite}@keyframes spin-7cf7de1c{to{transform:rotate(360deg)}}.loading-text[data-v-7cf7de1c]{font-weight:600;color:var(--text)}.loading-hint[data-v-7cf7de1c]{font-size:.82rem;color:var(--text-muted)}.action-bar[data-v-7cf7de1c]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 0 6px}.action-left[data-v-7cf7de1c],.action-right[data-v-7cf7de1c]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btn-chip[data-v-7cf7de1c]{padding:6px 16px;border-radius:50px;font-size:.82rem;font-weight:600;background:var(--card-bg);color:var(--text-muted);border:1.5px solid var(--border);transition:all .15s}.btn-chip[data-v-7cf7de1c]:hover{border-color:var(--primary-light);color:var(--primary)}.btn-chip.active[data-v-7cf7de1c]{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-chip.filter-chip[data-v-7cf7de1c]{background:#eef2ff;color:var(--primary);border-color:#c7d2fe}.btn-outline[data-v-7cf7de1c]{padding:7px 16px;border-radius:50px;font-size:.82rem;font-weight:600;background:transparent;color:var(--primary);border:1.5px solid var(--primary);transition:all .18s}.btn-outline[data-v-7cf7de1c]:hover{background:var(--primary);color:#fff;box-shadow:0 3px 10px #6366f14d}.btn-ghost[data-v-7cf7de1c]{background:transparent}.color-grid[data-v-7cf7de1c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:18px}@media(max-width:480px){.color-grid[data-v-7cf7de1c]{grid-template-columns:repeat(2,1fr);gap:12px}}.empty-hint[data-v-7cf7de1c]{text-align:center;color:var(--text-muted);font-size:.88rem;padding:32px}.chart-card[data-v-7cf7de1c]{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:28px 24px}.chart-hint[data-v-7cf7de1c]{font-size:.75rem;color:var(--text-muted);text-align:center;margin-top:10px}.analysis-grid[data-v-7cf7de1c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.analysis-card[data-v-7cf7de1c]{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s;border:2px solid transparent}.analysis-card[data-v-7cf7de1c]:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.analysis-card.is-highlighted[data-v-7cf7de1c]{border-color:var(--primary-light);box-shadow:var(--shadow-md)}.analysis-bar[data-v-7cf7de1c]{height:6px;width:100%}.analysis-body[data-v-7cf7de1c]{padding:14px 16px 16px}.analysis-header[data-v-7cf7de1c]{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.analysis-name[data-v-7cf7de1c]{font-size:.92rem;font-weight:700;color:var(--text)}.analysis-pct[data-v-7cf7de1c]{font-size:.85rem;font-weight:700;color:var(--primary)}.swatch-row[data-v-7cf7de1c]{display:flex;height:18px;border-radius:9px;overflow:hidden;gap:2px;margin-bottom:10px}.swatch-mini[data-v-7cf7de1c]{border-radius:4px;min-width:6px;transition:flex .5s}.analysis-desc[data-v-7cf7de1c]{font-size:.75rem;color:var(--text-muted);line-height:1.55}.colors-detail[data-v-7cf7de1c]{margin-top:12px;display:flex;flex-direction:column;gap:7px;border-top:1px solid var(--border);padding-top:12px}.color-detail-row[data-v-7cf7de1c]{display:flex;align-items:flex-start;gap:8px;font-size:.72rem}.cd-swatch[data-v-7cf7de1c]{width:20px;height:20px;border-radius:5px;flex-shrink:0;box-shadow:0 1px 3px #0000001f;margin-top:1px}.cd-hex[data-v-7cf7de1c]{font-weight:700;color:var(--text);white-space:nowrap;min-width:70px}.cd-pct[data-v-7cf7de1c]{color:var(--primary);font-weight:600;white-space:nowrap;min-width:38px}.cd-desc[data-v-7cf7de1c]{color:var(--text-muted);line-height:1.45}.mono[data-v-7cf7de1c]{font-family:Fira Code,Cascadia Code,Consolas,monospace}.app-footer[data-v-7cf7de1c]{text-align:center;padding:18px 16px;font-size:.75rem;color:var(--text-muted);border-top:1px solid var(--border)}.toast[data-v-7cf7de1c]{position:fixed;bottom:28px;left:50%;transform:translate(-50%);background:#1e1b4b;color:#fff;padding:10px 22px;border-radius:50px;font-size:.86rem;font-weight:600;box-shadow:0 6px 24px #0003;pointer-events:none;z-index:9999;white-space:nowrap}.fade-enter-active[data-v-7cf7de1c],.fade-leave-active[data-v-7cf7de1c]{transition:opacity .3s,transform .3s}.fade-enter-from[data-v-7cf7de1c],.fade-leave-to[data-v-7cf7de1c]{opacity:0;transform:translateY(-8px)}.toast-enter-active[data-v-7cf7de1c],.toast-leave-active[data-v-7cf7de1c]{transition:opacity .3s,transform .3s}.toast-enter-from[data-v-7cf7de1c],.toast-leave-to[data-v-7cf7de1c]{opacity:0;transform:translate(-50%) translateY(12px)}.expand-enter-active[data-v-7cf7de1c],.expand-leave-active[data-v-7cf7de1c]{transition:opacity .25s,max-height .3s;overflow:hidden;max-height:500px}.expand-enter-from[data-v-7cf7de1c],.expand-leave-to[data-v-7cf7de1c]{opacity:0;max-height:0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #6366f1;--primary-light: #818cf8;--primary-dark: #4f46e5;--secondary: #8b5cf6;--accent: #ec4899;--bg: #f5f7ff;--card-bg: #ffffff;--border: #e2e8f0;--text: #1e1b4b;--text-muted: #64748b;--success: #10b981;--error: #ef4444;--shadow-sm: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(99,102,241,.1), 0 2px 4px rgba(0,0,0,.05);--shadow-lg: 0 10px 40px rgba(99,102,241,.15), 0 4px 8px rgba(0,0,0,.08);--radius: 16px;--radius-sm: 10px}html{font-size:16px;scroll-behavior:smooth}body{font-family:PingFang SC,Microsoft YaHei,Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;line-height:1.6}button{cursor:pointer;border:none;outline:none;font-family:inherit}input,textarea{font-family:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#c7d2fe;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--primary-light)}
