:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#241f1a;--panel-bg:#fffcf7db;--panel-border:#3e2c1f1a;--text-muted:#6c635d;--accent:#24211d;--accent-soft:#efdfcf;--accent-contrast:#fffdf9;--shadow:0 20px 50px #2a211914;background:radial-gradient(circle at 0 0,#fad8ae73,#0000 34%),radial-gradient(circle at 100% 0,#d4e1ff80,#0000 28%),linear-gradient(#f7f2ea 0%,#f4efe8 52%,#efe7dd 100%);font-family:SF Pro Display,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:inherit;margin:0}button,input,table{font:inherit}.page{width:min(1200px,100% - 32px);margin:0 auto;padding:32px 0 64px}.hero{grid-template-columns:1.25fr .9fr;gap:20px;margin-bottom:22px;display:grid}.hero-copy,.hero-card,.panel,.job-card,.preview-card{border:1px solid var(--panel-border);background:var(--panel-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow);border-radius:28px}.hero-copy,.hero-card{padding:28px}.hero-copy h1{letter-spacing:-.05em;margin:10px 0 18px;font-size:clamp(2.4rem,5vw,4.5rem);line-height:.95}.hero-copy p:last-child,.hero-card p:last-child{margin-bottom:0}.hero-card h2{margin:10px 0;font-size:1.45rem;line-height:1.2}.panel{margin-bottom:20px;padding:24px}.panel-header,.job-card-header,.preview-topline{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.panel-header h2,.preview-topline h3,.job-card h3{margin:6px 0 0}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);margin:0;font-size:.75rem}.muted{color:var(--text-muted)}.pill,.stage-badge{color:#3d362f;background:#24211d0f;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:.85rem;display:inline-flex}.upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0;display:grid}.upload-block.locked{opacity:.55}.locked-banner{color:#3d342d;background:#24211d14;border-radius:16px;margin-top:16px;padding:14px 16px}.upload-card{background:#ffffff7a;border:1px dashed #24211d38;border-radius:22px;gap:10px;padding:20px;display:grid}.upload-title{font-size:1.1rem;font-weight:700}.upload-desc{color:var(--text-muted);min-height:40px}.threshold-section{gap:16px;margin-bottom:24px;display:grid}.threshold-pills{flex-wrap:wrap;gap:10px;display:flex}.pill-button,.button{cursor:pointer;border:0;border-radius:999px;padding:12px 18px;transition:transform .18s,background .18s,box-shadow .18s}.pill-button{color:#433931;background:#24211d12}.pill-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.pill-button.active,.button{background:var(--accent);color:var(--accent-contrast);box-shadow:0 12px 24px #24211d2e}.button.secondary{color:#2f2a25;box-shadow:none;background:#24211d14}.pill-button:hover,.button:hover{transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.88;transform:none}.button-loading{align-items:center;gap:10px;display:inline-flex}.spinner{border:2px solid #fffdf959;border-top-color:#fffdf9;border-radius:999px;width:16px;height:16px;animation:.85s linear infinite spin}.spinner.dark{border-color:#24211df2 #24211d2e #24211d2e}.threshold-input{background:#ffffffb8;border:1px solid #24211d24;border-radius:16px;width:min(280px,100%);padding:14px 16px}.rule-textarea{resize:vertical;background:#ffffffb8;border:1px solid #24211d24;border-radius:16px;width:100%;min-height:104px;padding:14px 16px}.actions,.job-card-actions{flex-wrap:wrap;gap:12px;display:flex}.preview-card{padding:20px}.preview-spacing{margin-top:18px}.job-list{gap:18px;display:grid}.job-card{padding:22px}.progress-shell{background:#24211d12;border-radius:999px;height:12px;margin:18px 0 16px;overflow:hidden}.progress-bar{border-radius:inherit;background:linear-gradient(90deg,#2b2723,#846a55);height:100%;transition:width .24s}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.stats-grid div{background:#ffffff8c;border-radius:18px;padding:14px}.stats-grid span{color:var(--text-muted);font-size:.86rem;display:block}.stats-grid strong{margin-top:6px;font-size:1.25rem;display:block}.table-shell{margin-top:14px;overflow-x:auto}.table-note{margin:12px 0 0}.raw-response{width:320px}.raw-response summary{cursor:pointer;color:#4a4038;-webkit-user-select:none;user-select:none}.raw-response pre{color:#2d2722;white-space:pre-wrap;word-break:break-word;background:#24211d0f;border-radius:14px;max-height:240px;margin:10px 0 0;padding:12px;font-size:.8rem;line-height:1.45;overflow:auto}.response-actions{align-items:flex-start;gap:10px;display:flex}.icon-button{color:#342d27;cursor:pointer;background:#24211d14;border:0;border-radius:10px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.row-running{background:linear-gradient(90deg,#ffe8bfb8,#fff6e6e6,#ffe8bfb8);animation:2.2s ease-in-out infinite pulseRow;position:relative;box-shadow:inset 0 0 0 1px #cd9a4d38}.row-running:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 10%,#ffffffad 50%,#0000 90%);animation:2.4s ease-in-out infinite sweepLight;position:absolute;inset:0;transform:translate(-100%)}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:30;background:#1c181494;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-card{background:#fffcf7f5;border:1px solid #3e2c1f1f;border-radius:24px;width:min(1100px,100%);max-height:calc(100vh - 48px);padding:18px;overflow:auto;box-shadow:0 24px 60px #19130e3d}.modal-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.modal-header h3{margin:0}.close-button{font-size:1.2rem}.modal-image{background:#fff;border-radius:18px;width:100%;display:block}table{border-collapse:collapse;width:100%;min-width:720px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #24211d14;padding:12px 14px}thead th{color:var(--text-muted);font-size:.9rem;font-weight:600}.empty-state{background:#ffffff85;border:1px dashed #24211d24;border-radius:24px;padding:28px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulseRow{0%,to{box-shadow:inset 0 0 0 1px #cd9a4d38,0 0 #ffd79400}50%{box-shadow:inset 0 0 0 1px #cd9a4d61,0 8px 28px #ffd79447}}@keyframes sweepLight{0%{transform:translate(-120%)}to{transform:translate(120%)}}@media (width<=900px){.hero,.upload-grid,.stats-grid{grid-template-columns:1fr}.page{width:min(100% - 20px,1200px);padding-top:16px}}
