:root,:root[data-theme=dark]{--bg:#0d0c0b;--bg-glow:radial-gradient(1100px 420px at 12% -8%, #ed193821, transparent 62%);--card:#171614;--card-2:#1d1c19;--line:#2a2825;--line-soft:#201f1c;--text:#f4f2ef;--muted:#9a948c;--faint:#6d6862;--red:#ed1938;--up:#39c07b;--down:#e2504a;--warn:#e8b53f;--warn-bg:#e8b53f17;--down-bg:#e2504a17;--alpha:#7fc79c;--alpha-line:#33503f;--checker-a:#2a2825;--checker-b:#1f1d1b;--lift:none;--header-bg:linear-gradient(to bottom, #1c1a18b8, #0d0c0b8c);--header-line:#ffffff0f}:root[data-theme=light]{--bg:#fff;--bg-glow:none;--card:#fff;--card-2:#f7f5f2;--line:#ddd8d0;--line-soft:#e7e3dc;--text:#191713;--muted:#6b6459;--faint:#948c80;--red:#d4102f;--up:#2f9d63;--down:#cf3b36;--warn:#9a6a10;--warn-bg:#fdf6e6;--down-bg:#fdeeed;--alpha:#2f7d52;--alpha-line:#c5e0d0;--checker-a:#e7e3dc;--checker-b:#fff;--lift:0 1px 2px #1917130f, 0 4px 12px #1917130d;--header-bg:linear-gradient(to bottom, #ffffffbd, #ffffff85);--header-line:#1917130f}*{box-sizing:border-box}html,body,#root{height:100%}html{scrollbar-gutter:stable}body{background:var(--bg);background-image:var(--bg-glow);color:var(--text);-webkit-font-smoothing:antialiased;background-repeat:no-repeat;margin:0;font:15px/1.5 Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}code{background:var(--card-2);border:1px solid var(--line-soft);border-radius:5px;padding:1px 5px;font:12.5px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}h1,h2{letter-spacing:-.015em}.faint{color:var(--faint)}.small{font-size:12px}.ellipsis{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.btn{font:inherit;white-space:nowrap;color:#fff;background:var(--red);border:1px solid var(--red);cursor:pointer;border-radius:9px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:filter .12s;display:inline-flex}.btn:hover{filter:brightness(1.08)}.btn:disabled{opacity:.6;cursor:default;filter:none}.btn-ghost{border-color:var(--line);color:var(--muted);background:0 0}.btn-ghost:hover{color:var(--text);border-color:var(--muted);filter:none}.small-btn{padding:4px 10px;font-size:12px}.link{font:inherit;color:var(--muted);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-size:12.5px;text-decoration:underline}.link:hover{color:var(--text)}.link.danger:hover{color:var(--down)}.icon-btn{font:inherit;border:1px solid var(--line);width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border-radius:9px}.icon-btn:hover{color:var(--text);border-color:var(--muted)}.gate{place-items:center;min-height:100%;padding:24px;display:grid}.gate-card{background:var(--card);border:1px solid var(--line);width:min(430px,100%);box-shadow:var(--lift);text-align:center;border-radius:20px;padding:36px 32px}.gate-card h1{margin:18px 0;font-size:17px;font-weight:600}.gate-card p{color:var(--muted);font-size:13.5px}.gate-error{color:var(--down);word-break:break-word}.gate-wait{justify-content:center;align-items:center;gap:10px;display:flex}.gate-host{color:var(--faint);margin-top:16px;font-size:12px}.gate-manual{margin-top:14px}.role-inline code:last-child{margin-right:0}.spinner{border:2px solid var(--line);border-top-color:var(--red);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.logo{display:inline-flex}.logo img{height:26px;display:block}.gate .logo img{height:30px}:root[data-theme=dark] .logo-on-light,:root[data-theme=light] .logo-on-dark{display:none}.top{z-index:10;background:var(--header-bg);-webkit-backdrop-filter:blur(24px)saturate(180%);backdrop-filter:blur(24px)saturate(180%);border-bottom:1px solid var(--header-line);position:sticky;top:0}.top-inner{justify-content:space-between;align-items:center;gap:12px;max-width:1360px;min-height:58px;margin:0 auto;padding:0 20px;display:flex}.brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-name{white-space:nowrap;font-size:15px;font-weight:600}.brand-tag{color:var(--faint);white-space:nowrap;font-size:12px}.who{align-items:center;gap:8px;min-width:0;display:flex}.who-name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:24px;max-width:1360px;margin:0 auto;padding:22px 20px 60px;display:grid}.side{flex-direction:column;gap:12px;display:flex;position:sticky;top:80px}.main{min-width:0}.drop{border:1.5px dashed var(--line);background:var(--card);text-align:center;cursor:pointer;border-radius:16px;padding:26px 18px;transition:border-color .12s,background .12s}.drop:hover,.drop:focus-visible{border-color:var(--muted);outline:none}.drop-over{border-color:var(--red);background:color-mix(in srgb, var(--red) 6%, var(--card))}.drop-busy{cursor:progress;opacity:.7}.drop-icon{color:var(--red);font-size:26px;line-height:1}.drop-title{margin-top:8px;font-size:14px;font-weight:600}.drop-sub{color:var(--faint);margin-top:6px;font-size:11.5px}.pending{flex-direction:column;gap:6px;font-size:13px;display:flex}.pending-row{justify-content:space-between;gap:8px;display:flex}.bar{background:var(--line-soft);border-radius:99px;height:6px;overflow:hidden}.bar>div{background:var(--red);height:100%;transition:width .3s}.side-head{text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin:10px 0 0;font-size:12px;font-weight:600}.files{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.file{text-align:left;width:100%;font:inherit;color:inherit;background:var(--card);border:1px solid var(--line-soft);cursor:pointer;border-radius:11px;flex-direction:column;gap:2px;padding:9px 12px;display:flex}.file:hover{border-color:var(--line)}.file-on{border-color:var(--red)}.file-name{font-size:13.5px;font-weight:500}.file-meta{color:var(--faint);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.error-box,.warn-box{word-break:break-word;border-radius:10px;margin:0;padding:9px 12px;font-size:13px}.error-box{color:var(--down);background:var(--down-bg);border:1px solid color-mix(in srgb, var(--down) 30%, transparent)}.warn-box{color:var(--warn);background:var(--warn-bg);border:1px solid color-mix(in srgb, var(--warn) 30%, transparent)}.chip{border:1px solid var(--line);color:var(--muted);white-space:nowrap;background:0 0;border-radius:99px;align-items:center;padding:5px 8px;font-size:11.5px;line-height:1;display:inline-flex}.chip-alpha{color:var(--alpha);border-color:var(--alpha-line)}.chip-noalpha{color:var(--faint);border-style:dashed}.chip-rec{color:var(--red);border-color:color-mix(in srgb, var(--red) 40%, transparent);padding:3px 7px;font-size:10.5px}.chip-btn{font:inherit;cursor:pointer;font-size:12px}.chip-btn:hover{color:var(--text);border-color:var(--muted)}.chip-on{color:var(--text);border-color:var(--red);background:color-mix(in srgb, var(--red) 10%, transparent)}.chips{flex-wrap:wrap;gap:6px;display:flex}.panel{flex-direction:column;gap:16px;display:flex}.panel-head{flex-direction:column;gap:10px;display:flex}.panel-title{align-items:baseline;gap:14px;min-width:0;display:flex}.panel-title h1{margin:0;font-size:22px;font-weight:600}.facts{flex-wrap:wrap;gap:6px;display:flex}.presets{flex-wrap:wrap;gap:8px;display:flex}.preset{font:inherit;color:var(--muted);background:var(--card);border:1px solid var(--line-soft);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:inline-flex}.preset:hover{color:var(--text);border-color:var(--line)}.preset-on{color:var(--text);border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.preset-title{font-weight:500}.card{background:var(--card);border:1px solid var(--line);box-shadow:var(--lift);border-radius:16px;padding:18px 20px}.form-card{flex-direction:column;gap:14px;display:flex}.preset-desc{color:var(--muted);margin:0;font-size:13.5px}.why{color:var(--text);border-left:2px solid var(--red);margin:0;padding-left:10px;font-size:13px}.params{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px 18px;display:grid}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-wide{grid-column:1/-1}.field-label{color:var(--muted);font-size:12px;font-weight:600}.field-help{color:var(--faint);font-size:11.5px}.input{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:8px;min-width:0;padding:6px 9px;font-size:13px}.input:focus{border-color:var(--red);outline:none}.input-num{width:96px}select.input{width:100%}.seg{border:1px solid var(--line);border-radius:9px;flex-wrap:wrap;width:fit-content;max-width:100%;display:inline-flex;overflow:hidden}.seg-btn{font:inherit;color:var(--muted);border:0;border-right:1px solid var(--line);cursor:pointer;background:0 0;padding:6px 10px;font-size:12.5px}.seg-btn:last-child{border-right:0}.seg-btn:hover{color:var(--text)}.seg-on{color:var(--text);background:color-mix(in srgb, var(--red) 14%, transparent)}.toggle{color:var(--muted);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.toggle input{accent-color:var(--red);width:16px;height:16px}.color{align-items:center;gap:8px;display:inline-flex}.color input{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:6px;width:36px;height:28px;padding:0}.size{flex-direction:column;gap:8px;display:flex}.size-custom{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.form-actions{justify-content:flex-end;display:flex}.section-head{text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin:8px 0 -4px;font-size:13px;font-weight:600}.job{flex-direction:column;gap:10px;display:flex}.job-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.job-title{font-size:14px;font-weight:600}.job-params{color:var(--faint);flex:1;min-width:0;font-size:12px}.status{text-transform:uppercase;letter-spacing:.05em;background:var(--card-2);color:var(--muted);border-radius:6px;padding:3px 8px;font-size:11px;font-weight:600}.status-done{color:var(--up)}.status-failed{color:var(--down)}.status-running{color:var(--red)}.result{flex-direction:column;gap:12px;display:flex}.result-main{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.result-cols{flex-wrap:wrap;align-items:flex-start;gap:22px;display:flex}.result-info{flex-direction:column;flex:1;gap:12px;min-width:260px;display:flex}.preview{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.checker{border:1px solid var(--line);background-color:var(--checker-b);background-image:linear-gradient(45deg, var(--checker-a) 25%, transparent 25%), linear-gradient(-45deg, var(--checker-a) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--checker-a) 75%), linear-gradient(-45deg, transparent 75%, var(--checker-a) 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;border-radius:8px;position:relative;overflow:hidden}.checker iframe{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:0 0;border:0;display:block}.checker video,.checker img{object-fit:contain;width:100%;height:100%;display:block}.bs{border:1px solid var(--line-soft);background:var(--card-2);border-radius:12px;padding:12px 14px}.bs-head{text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin-bottom:8px;font-size:12px;font-weight:600}.bs-kv{grid-template-columns:max-content 1fr;gap:4px 14px;margin:0 0 10px;font-size:13px;display:grid}.bs-kv dt{color:var(--muted)}.bs-kv dd{margin:0}.bs-steps{color:var(--muted);flex-direction:column;gap:3px;margin:0;padding-left:18px;font-size:12.5px;display:flex}.notes{color:var(--muted);margin:0;padding-left:18px;font-size:12.5px}.intro{max-width:680px;padding-top:6px}.intro h1{margin:0 0 16px;font-size:26px;font-weight:600}.intro ol{color:var(--muted);flex-direction:column;gap:10px;padding-left:20px;font-size:14px;display:flex}.intro strong{color:var(--text);font-weight:600}@media (width<=860px){.layout{grid-template-columns:minmax(0,1fr);padding:16px 16px 48px}.side{position:static}}@media (width<=560px){.brand-tag,.who-name{display:none}.top-inner{padding:0 16px}.icon-btn{flex:none}.panel-title h1{font-size:18px}}@media (width<=400px){.brand-name{font-size:13.5px}.brand{gap:8px}.logo img{height:22px}}
