*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--stripe-purple:#533afd;--stripe-purple-hover:#4434d4;--stripe-purple-deep:#2e2b8c;--stripe-purple-light:#b9b9f9;--stripe-purple-soft:#d6d9fc;--stripe-purple-mid:#665efd;--heading:#061b31;--label:#273951;--body:#64748d;--white:#fff;--brand-dark:#1c1e54;--dark-navy:#0d253d;--ruby:#ea2261;--magenta:#f96bee;--magenta-light:#ffd7ef;--success:#15be53;--success-text:#108c3d;--lemon:#9b6829;--error:#ea2261;--info:#2874ad;--bg:#f6f9fc;--surface:#fff;--border:#e5edf5;--border-lt:#f0f4f8;--radius:4px;--radius-md:6px;--radius-lg:8px;--shadow-sm:#1717170f 0px 3px 6px;--shadow:#17171714 0px 15px 35px;--shadow-elevated:#32325d40 0px 30px 45px -30px, #0000001a 0px 18px 36px -18px;--shadow-deep:#03032740 0px 14px 21px -14px, #0000001a 0px 8px 17px -8px;--primary:var(--stripe-purple);--primary-hov:var(--stripe-purple-hover);--text:var(--heading);--text-2:var(--label);--text-3:var(--body);--text-4:#94a3b8;--warning:var(--lemon);--font:"Plus Jakarta Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono:"Source Code Pro", "SFMono-Regular", Consolas, monospace;--max-w:1120px}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px}body{font-family:var(--font);font-feature-settings:"ss01" 1;background:var(--bg);color:var(--body);min-height:100vh;font-weight:300;line-height:1.4}#app{min-height:100vh}button,input,select,textarea,label{font-feature-settings:"ss01" 1;font-family:inherit}a{color:var(--stripe-purple);text-decoration:none;transition:color .15s}a:hover{color:var(--stripe-purple-hover)}.btn{border-radius:var(--radius);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;height:36px;padding:0 16px;font-size:14px;font-weight:400;line-height:1;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled,.btn.loading{opacity:.55;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--stripe-purple);color:var(--white);border-color:var(--stripe-purple)}.btn-primary:hover:not(:disabled){background:var(--stripe-purple-hover);border-color:var(--stripe-purple-hover);color:var(--white)}.btn-ghost{color:var(--stripe-purple);border-color:var(--stripe-purple-light);background:0 0}.btn-ghost:hover:not(:disabled){color:var(--stripe-purple);background:#533afd0d}.btn-download{background:var(--white);color:var(--label);border-color:var(--border)}.btn-download:hover:not(:disabled){border-color:var(--stripe-purple-light);color:var(--stripe-purple);background:#533afd08}.btn-download:disabled{opacity:.4}.spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.65s linear infinite spin}.spinner.sm{border-width:1.5px;border-color:#533afd40;border-top-color:var(--stripe-purple);width:11px;height:11px}.spinner-dark{border-color:#061b3126;border-top-color:var(--heading)}@keyframes spin{to{transform:rotate(360deg)}}:focus-visible{outline:2px solid var(--stripe-purple);outline-offset:2px}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--stripe-purple);outline-offset:1px}.page[data-v-20b96d07]{background:var(--white);grid-template-columns:minmax(280px,360px) minmax(0,1fr);min-height:100vh;display:grid}.aside[data-v-20b96d07]{color:var(--white);background:linear-gradient(165deg,#1c1e54 0%,#0d253d 55%,#061b31 100%);align-items:center;padding:40px 32px;display:flex}.aside-inner[data-v-20b96d07]{width:100%;animation:.7s both rise-20b96d07}.aside-logo[data-v-20b96d07]{object-fit:contain;width:auto;height:36px;margin-bottom:24px}.aside-kicker[data-v-20b96d07]{letter-spacing:.08em;text-transform:uppercase;color:#b9b9f9e6;margin-bottom:12px;font-size:11px;font-weight:400}.aside-title[data-v-20b96d07]{letter-spacing:-.4px;color:var(--white);margin-bottom:14px;font-size:26px;font-weight:300;line-height:1.3}.aside-desc[data-v-20b96d07]{color:#ffffffad;font-size:14px;font-weight:300;line-height:1.55}.main[data-v-20b96d07]{justify-content:center;align-items:center;padding:40px 24px;display:flex;position:relative;overflow:hidden}.bg-glow[data-v-20b96d07]{filter:blur(10px);pointer-events:none;background:radial-gradient(circle at 30% 40%,#f96bee29,#0000 55%),radial-gradient(circle at 70% 30%,#533afd2e,#0000 50%);width:min(520px,70vw);height:min(520px,70vw);position:absolute;top:-12%;right:-8%}.main-inner[data-v-20b96d07]{z-index:1;flex-direction:column;align-items:center;width:100%;max-width:400px;animation:.7s 80ms both rise-20b96d07;display:flex;position:relative}.card[data-v-20b96d07]{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-elevated);padding:36px 32px}.card-head[data-v-20b96d07]{margin-bottom:28px}.card-head h2[data-v-20b96d07]{letter-spacing:-.26px;color:var(--heading);margin-bottom:6px;font-size:26px;font-weight:300;line-height:1.15}.card-head p[data-v-20b96d07]{color:var(--body);font-size:14px;font-weight:300}.form[data-v-20b96d07]{flex-direction:column;gap:16px;display:flex}.field[data-v-20b96d07]{flex-direction:column;gap:6px;display:flex}.field label[data-v-20b96d07]{color:var(--label);font-size:13px;font-weight:400}.field input[data-v-20b96d07]{border:1px solid var(--border);border-radius:var(--radius);height:42px;color:var(--heading);background:var(--white);outline:none;padding:0 14px;font-size:15px;font-weight:400;transition:border-color .15s,box-shadow .15s}.field input[data-v-20b96d07]::placeholder{color:var(--body);font-weight:300}.field input[data-v-20b96d07]:focus{border-color:var(--stripe-purple);box-shadow:0 0 0 3px #533afd1f}.error[data-v-20b96d07]{color:var(--ruby);border-radius:var(--radius);background:#ea22610f;border:1px solid #ea226140;padding:10px 12px;font-size:13px;font-weight:400;line-height:1.45}.submit[data-v-20b96d07]{width:100%;height:42px;margin-top:4px;font-size:15px}.foot[data-v-20b96d07]{color:var(--text-4);margin-top:28px;font-size:12px;font-weight:300}@keyframes rise-20b96d07{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=800px){.page[data-v-20b96d07]{grid-template-columns:1fr}.aside[data-v-20b96d07]{padding:28px 24px 24px}.aside-title[data-v-20b96d07]{font-size:22px}.main[data-v-20b96d07]{padding:28px 20px 40px}.card[data-v-20b96d07]{box-shadow:var(--shadow);padding:28px 22px}}.shell[data-v-4da4ef42]{background:var(--bg);grid-template-columns:280px 1fr;min-height:100vh;display:grid}.sidebar[data-v-4da4ef42]{background:var(--white);border-right:1px solid var(--border);z-index:20;flex-direction:column;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.side-brand[data-v-4da4ef42]{border-bottom:1px solid var(--border-lt);align-items:flex-start;gap:12px;margin-bottom:16px;padding:8px 8px 20px;display:flex}.side-logo[data-v-4da4ef42]{object-fit:contain;flex-shrink:0;width:auto;height:32px;margin-top:2px}.side-copy[data-v-4da4ef42]{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.side-name[data-v-4da4ef42]{color:var(--heading);letter-spacing:-.01em;font-size:15px;font-weight:400;line-height:1.3}.side-tag[data-v-4da4ef42]{color:var(--body);letter-spacing:.01em;white-space:normal;text-overflow:unset;font-size:11px;font-weight:300;line-height:1.35;overflow:visible}.nav-label[data-v-4da4ef42]{letter-spacing:.08em;text-transform:uppercase;color:var(--text-4);padding:0 10px 8px;font-size:11px;font-weight:400}.side-nav[data-v-4da4ef42]{flex-direction:column;flex:1;gap:4px;display:flex}.nav-item[data-v-4da4ef42]{border-radius:var(--radius-md);color:var(--label);align-items:center;gap:10px;padding:10px 12px;text-decoration:none;transition:background .15s,color .15s;display:flex}.nav-item[data-v-4da4ef42]:hover{color:var(--stripe-purple);background:#533afd0a}.nav-item.active[data-v-4da4ef42]{color:var(--stripe-purple);box-shadow:inset 0 0 0 1px var(--stripe-purple-soft);background:#533afd14}.nav-ico[data-v-4da4ef42]{flex-shrink:0;display:flex}.nav-text[data-v-4da4ef42]{flex-direction:column;gap:1px;min-width:0;display:flex}.nav-title[data-v-4da4ef42]{font-size:14px;font-weight:400;line-height:1.2}.nav-hint[data-v-4da4ef42]{color:var(--body);font-size:11px;font-weight:300}.nav-item.active .nav-hint[data-v-4da4ef42]{color:#533afdb8}.side-foot[data-v-4da4ef42]{border-top:1px solid var(--border-lt);padding-top:12px}.side-logout[data-v-4da4ef42]{border:1px solid var(--border);border-radius:var(--radius);width:100%;height:36px;color:var(--label);cursor:pointer;background:0 0;font-size:13px;font-weight:400;transition:border-color .15s,color .15s,background .15s}.side-logout[data-v-4da4ef42]:hover{border-color:var(--stripe-purple-light);color:var(--stripe-purple);background:#533afd0a}.content[data-v-4da4ef42]{flex-direction:column;min-width:0;min-height:100vh;display:flex}.page[data-v-4da4ef42]{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:28px}@media (width<=900px){.shell[data-v-4da4ef42]{grid-template-columns:1fr}.sidebar[data-v-4da4ef42]{border-right:none;border-bottom:1px solid var(--border);height:auto;padding:12px;position:relative}.side-nav[data-v-4da4ef42]{flex-flow:wrap}.nav-hint[data-v-4da4ef42],.side-foot[data-v-4da4ef42]{display:none}.page[data-v-4da4ef42]{padding:20px 16px 40px}}.dash[data-v-a34a5df0]{flex-direction:column;gap:20px;animation:.5s both rise-a34a5df0;display:flex}.card[data-v-a34a5df0]{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.hero[data-v-a34a5df0]{justify-content:space-between;align-items:center;gap:24px;min-height:200px;padding:32px 36px;display:flex;position:relative;overflow:hidden}.hero-copy[data-v-a34a5df0]{z-index:1;flex:1;min-width:0;max-width:520px;position:relative}.welcome-accent[data-v-a34a5df0]{filter:blur(2px);opacity:.85;background:radial-gradient(circle at 30% 30%,#f96bee59,#0000 55%),radial-gradient(circle at 70% 70%,#533afd66,#0000 60%);border-radius:50%;flex-shrink:0;width:120px;height:120px}.eyebrow[data-v-a34a5df0]{letter-spacing:.08em;text-transform:uppercase;color:var(--stripe-purple);margin-bottom:8px;font-size:11px;font-weight:400}.hero-title[data-v-a34a5df0]{letter-spacing:-.7px;color:var(--heading);margin-bottom:10px;font-size:36px;font-weight:300;line-height:1.1}.hero-desc[data-v-a34a5df0]{color:var(--body);max-width:420px;margin-bottom:22px;font-size:15px;font-weight:300;line-height:1.5}.hero-actions[data-v-a34a5df0]{flex-wrap:wrap;gap:10px;display:flex}.metrics[data-v-a34a5df0]{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.metric[data-v-a34a5df0]{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:8px;padding:18px 16px;display:flex}.metric.accent[data-v-a34a5df0]{border-color:var(--stripe-purple-soft);background:linear-gradient(#533afd0d,#fff)}.metric-l[data-v-a34a5df0]{color:var(--body);font-size:12px;font-weight:400}.metric-n[data-v-a34a5df0]{letter-spacing:-.5px;color:var(--heading);font-feature-settings:"tnum" 1, "ss01" 1;font-size:28px;font-weight:300}.recent[data-v-a34a5df0]{padding:22px 24px 10px}.recent-hd[data-v-a34a5df0]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.recent-hd h3[data-v-a34a5df0]{letter-spacing:-.22px;color:var(--heading);font-size:22px;font-weight:300}.batch-list[data-v-a34a5df0]{list-style:none}.batch-item[data-v-a34a5df0]{border-top:1px solid var(--border-lt);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:14px 4px;transition:background .15s;display:flex}.batch-item[data-v-a34a5df0]:hover{background:#533afd08}.batch-name[data-v-a34a5df0]{color:var(--heading);margin-bottom:4px;font-size:14px;font-weight:400;display:block}.batch-sub[data-v-a34a5df0]{color:var(--body);font-size:12px;font-weight:300}.batch-right[data-v-a34a5df0]{flex-direction:column;align-items:flex-end;gap:8px;min-width:120px;display:flex}.st[data-v-a34a5df0]{border-radius:var(--radius);border:1px solid var(--border);padding:2px 8px;font-size:11px;font-weight:400}.st.run[data-v-a34a5df0]{color:var(--stripe-purple);border-color:var(--stripe-purple-soft);background:#533afd14}.st.done[data-v-a34a5df0]{color:var(--success-text);background:#15be531f;border-color:#15be534d}.st.idle[data-v-a34a5df0]{color:var(--body);background:var(--bg)}.mini-track[data-v-a34a5df0]{background:#eef2f7;border-radius:999px;width:100px;height:4px;overflow:hidden}.mini-fill[data-v-a34a5df0]{background:linear-gradient(90deg, var(--stripe-purple), var(--stripe-purple-mid));height:100%}.empty-line[data-v-a34a5df0],.empty-block[data-v-a34a5df0]{color:var(--body);padding:28px 8px 32px;font-size:14px;font-weight:300}.empty-block[data-v-a34a5df0]{flex-direction:column;align-items:flex-start;gap:14px;display:flex}@keyframes rise-a34a5df0{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.hero[data-v-a34a5df0]{grid-template-columns:1fr;padding:24px}.hero-title[data-v-a34a5df0]{font-size:28px}.metrics[data-v-a34a5df0]{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.metrics[data-v-a34a5df0]{grid-template-columns:1fr}.batch-item[data-v-a34a5df0]{flex-direction:column;align-items:flex-start}.batch-right[data-v-a34a5df0]{align-items:flex-start;width:100%}.mini-track[data-v-a34a5df0]{width:100%}}.workspace[data-v-10feecef]{flex-direction:column;gap:20px;animation:.45s both fade-in-10feecef;display:flex}.page-intro[data-v-10feecef]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-kicker[data-v-10feecef]{letter-spacing:.08em;text-transform:uppercase;color:var(--stripe-purple);margin-bottom:6px;font-size:11px;font-weight:400}.page-title[data-v-10feecef]{letter-spacing:-.5px;color:var(--heading);margin-bottom:6px;font-size:28px;font-weight:300;line-height:1.1}.page-desc[data-v-10feecef]{color:var(--body);max-width:480px;font-size:14px;font-weight:300}.refresh-badge[data-v-10feecef]{border-radius:var(--radius);border:1px solid var(--border);background:var(--white);height:28px;color:var(--body);flex-shrink:0;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:400;display:inline-flex}.refresh-badge.active[data-v-10feecef]{border-color:var(--stripe-purple-soft);color:var(--stripe-purple);background:#533afd0a}.refresh-dot[data-v-10feecef]{background:#cbd5e1;border-radius:50%;width:6px;height:6px}.refresh-badge.active .refresh-dot[data-v-10feecef]{background:var(--stripe-purple);animation:1.6s infinite pulse-10feecef;box-shadow:0 0 0 3px #533afd2e}@keyframes pulse-10feecef{0%,to{opacity:1}50%{opacity:.45}}.top-grid[data-v-10feecef]{grid-template-columns:1fr 1.15fr;align-items:stretch;gap:18px;display:grid}.card[data-v-10feecef]{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.top-grid>.card[data-v-10feecef]{flex-direction:column;min-height:0;display:flex}.top-grid>.card>.card-bd[data-v-10feecef]{flex-direction:column;flex:1;min-height:0;display:flex}.card-rise[data-v-10feecef]{animation:rise-10feecef .55s var(--delay,0s) ease both}.card-wide[data-v-10feecef]{width:100%}.card-hd[data-v-10feecef]{border-bottom:1px solid var(--border-lt);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px 12px;display:flex}.card-eyebrow[data-v-10feecef]{letter-spacing:.08em;text-transform:uppercase;color:var(--stripe-purple);margin-bottom:4px;font-size:11px;font-weight:400}.card-hd h2[data-v-10feecef]{letter-spacing:-.2px;color:var(--heading);font-size:20px;font-weight:300;line-height:1.15}.hd-right[data-v-10feecef]{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.card-bd[data-v-10feecef]{padding:16px 20px 20px}.toolbar[data-v-10feecef]{flex-wrap:wrap;flex-shrink:0;gap:8px;padding:0 20px 12px;display:flex}.upload-zone[data-v-10feecef]{border-radius:var(--radius-md);background:linear-gradient(#533afd08,#0000);border:1px dashed #362baa;flex-direction:column;flex:1;justify-content:center;min-height:160px;padding:20px 16px;display:flex}.upload-zone-main[data-v-10feecef]{flex-direction:column;gap:12px;display:flex}.upload-row[data-v-10feecef]{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.upload-mode-tabs[data-v-10feecef]{border-radius:var(--radius);background:var(--bg);border:1px solid var(--border);gap:4px;width:fit-content;margin-bottom:12px;padding:3px;display:flex}.upload-mode-tab[data-v-10feecef]{appearance:none;border-radius:calc(var(--radius) - 1px);height:32px;color:var(--body);cursor:pointer;background:0 0;border:none;padding:0 14px;font-size:13px;font-weight:400;transition:background .15s,color .15s}.upload-mode-tab[data-v-10feecef]:hover:not(:disabled){color:var(--heading)}.upload-mode-tab.active[data-v-10feecef]{background:var(--white);color:var(--stripe-purple);box-shadow:0 1px 2px #0f172a0f}.upload-mode-tab[data-v-10feecef]:disabled{opacity:.55;cursor:not-allowed}.manual-form[data-v-10feecef]{flex-direction:column;gap:12px;width:100%;max-width:420px;margin:0 auto;display:flex}.manual-field[data-v-10feecef]{flex-direction:column;gap:6px;display:flex}.manual-label[data-v-10feecef]{color:var(--label);font-size:12px;font-weight:400}.manual-input[data-v-10feecef]{border:1px solid var(--border);border-radius:var(--radius);background:var(--white);height:38px;color:var(--heading);outline:none;padding:0 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}.manual-input[data-v-10feecef]:focus{border-color:var(--stripe-purple);box-shadow:0 0 0 3px #533afd1f}.manual-input[data-v-10feecef]:disabled{opacity:.7;cursor:not-allowed}.manual-error[data-v-10feecef]{color:var(--ruby);margin:0;font-size:12px}.manual-actions[data-v-10feecef]{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:2px;display:flex}.manual-draft[data-v-10feecef]{border:1px solid var(--border);border-radius:var(--radius);background:var(--white);margin-top:2px;overflow:hidden}.manual-draft-hd[data-v-10feecef]{border-bottom:1px solid var(--border-lt);color:var(--label);justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;display:flex}.manual-draft-count[data-v-10feecef]{color:var(--stripe-purple);font-feature-settings:"tnum" 1}.manual-draft-list[data-v-10feecef]{max-height:132px;margin:0;padding:0;list-style:none;overflow-y:auto}.manual-draft-item[data-v-10feecef]{border-bottom:1px solid var(--border-lt);align-items:center;gap:10px;padding:8px 10px 8px 12px;display:flex}.manual-draft-item[data-v-10feecef]:last-child{border-bottom:none}.manual-draft-idx[data-v-10feecef]{width:18px;color:var(--body);font-feature-settings:"tnum" 1;flex-shrink:0;font-size:11px}.manual-draft-copy[data-v-10feecef]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.manual-draft-name[data-v-10feecef]{color:var(--heading);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:400;overflow:hidden}.manual-draft-meta[data-v-10feecef]{color:var(--body);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:300;overflow:hidden}.manual-draft-remove[data-v-10feecef]{border-radius:var(--radius);width:28px;height:28px;color:var(--body);cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;display:grid}.manual-draft-remove[data-v-10feecef]:hover:not(:disabled){color:var(--ruby);background:#ea226114}.manual-draft-remove[data-v-10feecef]:disabled{opacity:.5;cursor:not-allowed}.card-stats>.card-bd[data-v-10feecef]{justify-content:center}.task-name-row[data-v-10feecef]{align-items:center;gap:10px;margin-top:4px;display:flex}.task-name-label[data-v-10feecef]{color:var(--label);flex-shrink:0;font-size:13px;font-weight:400}.task-name-input[data-v-10feecef]{border:1px solid var(--border);border-radius:var(--radius);background:var(--white);min-width:0;height:38px;color:var(--heading);outline:none;flex:1;padding:0 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}.task-name-input[data-v-10feecef]:focus{border-color:var(--stripe-purple);box-shadow:0 0 0 3px #533afd1f}.task-name-input[data-v-10feecef]::placeholder{color:var(--body);font-weight:300}.validate-anim[data-v-10feecef]{border-radius:var(--radius);background:linear-gradient(135deg,#533afd0f,#f96bee0d);border:1px solid #533afd2e;align-items:center;gap:14px;margin-top:16px;padding:18px 16px;animation:.28s validate-fade-in-10feecef;display:flex}.validate-anim-ring[data-v-10feecef]{flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.validate-anim-spin[data-v-10feecef]{border:2.5px solid #533afd2e;border-top-color:var(--stripe-purple);border-radius:50%;width:28px;height:28px;animation:.75s linear infinite validate-spin-10feecef}.validate-anim-title[data-v-10feecef]{color:var(--heading);margin:0;font-size:14px;font-weight:500}.validate-anim-desc[data-v-10feecef]{color:var(--body);margin:4px 0 0;font-size:12px;font-weight:300;line-height:1.45}.batch-name-panel[data-v-10feecef]{border-radius:var(--radius);border:1px solid var(--border);background:var(--white);margin-top:16px;padding:16px;animation:.28s validate-fade-in-10feecef}.batch-name-hd[data-v-10feecef]{margin-bottom:12px}.batch-name-title[data-v-10feecef]{color:var(--heading);margin:0;font-size:14px;font-weight:500}.batch-name-desc[data-v-10feecef]{color:var(--body);margin:4px 0 0;font-size:12px;font-weight:300;line-height:1.45}.batch-name-actions[data-v-10feecef]{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}@keyframes validate-spin-10feecef{to{transform:rotate(360deg)}}@keyframes validate-fade-in-10feecef{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.upload-msg[data-v-10feecef]{border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:12px;padding:11px 13px;font-size:13px;display:flex}.upload-msg.success[data-v-10feecef]{color:var(--success-text);background:#15be531a;border:1px solid #15be5359}.upload-msg.error[data-v-10feecef]{color:var(--ruby);background:#ea22610f;border:1px solid #ea226140}.toggle-skipped[data-v-10feecef]{color:inherit;cursor:pointer;background:0 0;border:none;font-size:12px;text-decoration:underline}.skipped-list[data-v-10feecef]{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--label);max-height:160px;margin-top:8px;padding:10px 12px 10px 28px;font-size:12px;overflow:auto}.start-panel[data-v-10feecef]{border-radius:var(--radius-md);border:1px solid var(--stripe-purple-soft);background:#533afd0a;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;display:flex}.start-title[data-v-10feecef]{color:var(--heading);font-size:14px;font-weight:400}.start-desc[data-v-10feecef]{color:var(--body);font-size:12px;font-weight:300}.batch-select[data-v-10feecef]{border:1px solid var(--border);border-radius:var(--radius);background:var(--white);min-width:180px;max-width:260px;height:36px;color:var(--heading);cursor:pointer;outline:none;padding:0 12px;font-size:13px}.batch-select[data-v-10feecef]:focus{border-color:var(--stripe-purple);box-shadow:0 0 0 3px #533afd1f}.batch-select-empty[data-v-10feecef]{border:1px solid var(--border);border-radius:var(--radius);background:var(--white);height:36px;color:var(--body);align-items:center;padding:0 12px;font-size:13px;font-weight:300;display:inline-flex}.batch-alert[data-v-10feecef]{border-radius:var(--radius);margin:0 20px 12px;padding:10px 14px;font-size:13px;font-weight:300}.batch-alert strong[data-v-10feecef]{font-weight:400}.batch-alert.warn[data-v-10feecef]{color:var(--lemon);background:#9b682914;border:1px solid #9b682947}.batch-alert.error[data-v-10feecef]{color:var(--ruby);background:#ea22610f;border:1px solid #ea226140}.batch-alert.info[data-v-10feecef]{color:var(--info);background:#2874ad14;border:1px solid #2874ad38}.download-err[data-v-10feecef]{color:var(--ruby);margin:0 20px 10px;font-size:13px}.stats-grid[data-v-10feecef]{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.stat[data-v-10feecef]{border-radius:var(--radius-md);border:1px solid var(--border);background:linear-gradient(#fff,#fbfdff);flex-direction:column;gap:3px;min-height:64px;padding:10px 8px;display:flex}.stat-n[data-v-10feecef]{letter-spacing:-.3px;font-feature-settings:"tnum" 1, "ss01" 1;color:var(--heading);font-size:20px;font-weight:300}.stat-n.success[data-v-10feecef]{color:var(--success-text)}.stat-n.error[data-v-10feecef]{color:var(--ruby)}.stat-n.warn[data-v-10feecef]{color:var(--lemon)}.stat-n.info[data-v-10feecef]{color:var(--stripe-purple)}.stat-n.muted[data-v-10feecef]{color:var(--body)}.stat-l[data-v-10feecef]{color:var(--body);font-size:11px}.stats-empty[data-v-10feecef]{color:var(--text-4);margin-top:12px;font-size:13px;font-weight:300}.progress-wrap[data-v-10feecef]{margin-top:14px}.progress-meta[data-v-10feecef]{color:var(--body);justify-content:space-between;margin-bottom:8px;font-size:12px;display:flex}.progress-pct[data-v-10feecef]{color:var(--heading);font-feature-settings:"tnum" 1, "ss01" 1}.progress-track[data-v-10feecef]{background:#eef2f7;border-radius:999px;height:6px;overflow:hidden}.progress-fill[data-v-10feecef]{border-radius:inherit;background:linear-gradient(90deg, var(--stripe-purple), var(--stripe-purple-mid));height:100%;transition:width .4s}.result-count[data-v-10feecef]{color:var(--body);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);padding:4px 8px;font-size:12px}.table-wrap[data-v-10feecef]{padding:0 4px 4px;overflow-x:auto}table[data-v-10feecef]{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}thead th[data-v-10feecef]{z-index:1;text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--body);border-bottom:1px solid var(--border);white-space:nowrap;background:#f7fafc;padding:11px 16px;font-size:11px;font-weight:400;position:sticky;top:0}thead th[data-v-10feecef]:first-child{border-radius:0;padding-left:20px}thead th[data-v-10feecef]:last-child{padding-right:20px}tbody td[data-v-10feecef]{border-bottom:1px solid var(--border-lt);color:var(--label);vertical-align:middle;background:var(--white);padding:13px 16px;font-weight:400;transition:background .12s}tbody td[data-v-10feecef]:first-child{padding-left:20px}tbody td[data-v-10feecef]:last-child{padding-right:20px}tbody tr:nth-child(2n) td[data-v-10feecef]{background:#fbfcfe}tbody tr:hover td[data-v-10feecef]{background:#533afd09}.row-processing td[data-v-10feecef]{background:#533afd0e!important}.row-processing td[data-v-10feecef]:first-child{box-shadow:inset 3px 0 0 var(--stripe-purple)}.col-num[data-v-10feecef]{font-feature-settings:"tnum" 1;width:56px;color:var(--text-4)}.col-prov[data-v-10feecef]{width:120px}.col-name[data-v-10feecef]{width:88px;color:var(--heading);font-weight:400}.col-cert[data-v-10feecef]{min-width:168px}.col-status[data-v-10feecef]{width:148px}.col-shot[data-v-10feecef]{text-align:left;white-space:nowrap;width:88px}.td-muted[data-v-10feecef]{color:var(--text-4);font-weight:300}.td-err[data-v-10feecef]{color:var(--ruby);font-size:12px;font-weight:300}.td-hospital[data-v-10feecef]{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.cert-code[data-v-10feecef]{font-family:var(--font-mono);color:var(--heading);letter-spacing:-.2px;border-radius:var(--radius);border:1px solid var(--border);white-space:nowrap;background:#f4f7fb;padding:3px 8px;font-size:12px;font-weight:500;display:inline-block}.badge[data-v-10feecef]{border-radius:var(--radius);white-space:nowrap;border:1px solid #0000;align-items:center;gap:5px;max-width:100%;height:24px;padding:0 9px;font-size:11px;font-weight:400;display:inline-flex}.badge-success[data-v-10feecef]{color:var(--success-text);background:#15be5324;border-color:#15be5352}.badge-error[data-v-10feecef]{color:var(--ruby);background:#ea226114;border-color:#ea226138}.badge-pending[data-v-10feecef]{color:var(--lemon);background:#9b68291a;border-color:#9b682938}.badge-processing[data-v-10feecef]{color:var(--stripe-purple);border-color:var(--stripe-purple-soft);background:#533afd14}.badge-notfound[data-v-10feecef]{color:var(--body);border-color:var(--border);background:#f1f5f9}.badge-default[data-v-10feecef]{background:var(--white);color:var(--body);border-color:var(--border)}.link-view[data-v-10feecef]{border-radius:var(--radius);border:1px solid var(--stripe-purple-light);height:28px;color:var(--stripe-purple);letter-spacing:0;white-space:nowrap;writing-mode:horizontal-tb;cursor:pointer;background:#533afd0a;justify-content:center;align-items:center;padding:0 12px;font-size:12px;font-weight:400;line-height:1;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.link-view[data-v-10feecef]:hover{border-color:var(--stripe-purple);box-shadow:var(--shadow-sm);background:#533afd1a}.empty[data-v-10feecef]{color:var(--text-4);flex-direction:column;align-items:center;gap:12px;padding:48px 20px;display:flex}.empty-icon[data-v-10feecef]{background:var(--bg);border:1px solid var(--border);width:48px;height:48px;color:var(--stripe-purple-light);border-radius:50%;justify-content:center;align-items:center;display:flex}.empty p[data-v-10feecef]{font-size:14px;font-weight:300}.overlay[data-v-10feecef]{z-index:1000;background:#061b316b;justify-content:center;align-items:center;padding:24px;animation:.2s fade-10feecef;display:flex;position:fixed;inset:0}.modal[data-v-10feecef]{background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border);width:min(720px,94vw);max-height:88vh;box-shadow:var(--shadow-deep);flex-direction:column;margin:auto;animation:.22s fade-in-10feecef;display:flex;overflow:hidden}.modal-validate[data-v-10feecef]{width:min(560px,94vw)}.modal-hd[data-v-10feecef]{border-bottom:1px solid var(--border);color:var(--heading);justify-content:space-between;align-items:center;padding:16px 20px;font-size:16px;font-weight:400;display:flex}.modal-close[data-v-10feecef]{width:32px;height:32px;color:var(--body);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.modal-close[data-v-10feecef]:hover{background:var(--bg);color:var(--heading)}.modal-bd[data-v-10feecef]{flex:1;justify-content:center;padding:20px;display:flex;overflow:auto}.modal-bd img[data-v-10feecef]{border:1px solid var(--border);border-radius:var(--radius);max-width:100%;height:auto}.validate-bd[data-v-10feecef]{text-align:left;display:block}.validate-summary[data-v-10feecef]{color:var(--heading);margin:0 0 8px;font-size:14px;font-weight:400}.validate-meta[data-v-10feecef]{color:var(--body);margin:0 0 12px;font-size:12px;font-weight:300}.validate-list[data-v-10feecef]{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);max-height:280px;color:var(--label);margin:0;padding:12px 14px 12px 28px;font-size:13px;font-weight:300;overflow:auto}.validate-list li+li[data-v-10feecef]{margin-top:4px}.modal-ft[data-v-10feecef]{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}@keyframes rise-10feecef{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-10feecef{0%{opacity:0}to{opacity:1}}@keyframes fade-10feecef{0%{opacity:0}to{opacity:1}}@media (width<=960px){.top-grid[data-v-10feecef]{grid-template-columns:1fr}.stats-grid[data-v-10feecef]{grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.stats-grid[data-v-10feecef]{grid-template-columns:repeat(2,1fr)}.card-hd[data-v-10feecef]{flex-direction:column}.batch-select[data-v-10feecef]{width:100%;min-width:0;max-width:none}.start-panel[data-v-10feecef]{flex-direction:column;align-items:stretch}.page-intro[data-v-10feecef]{flex-direction:column}}
