:root{font-family:Inter,Segoe UI,system-ui,sans-serif;color:#f4f6f9;background:#131518;color-scheme:dark;font-synthesis:none;text-rendering:optimizeLegibility;--muted: #b5bbc6;--panel: #1b1e23;--line: #363b45;--accent: #bdf381}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:290px;min-height:100dvh;background:radial-gradient(ellipse at 45% 0%,#232b25 0%,transparent 54%),#131518}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}button:focus-visible,input:focus-visible,.file-picker:focus-within{outline:2px solid var(--accent);outline-offset:4px}.layout{width:min(100% - 36px,560px);margin-inline:auto;padding:clamp(32px,10vh,116px) 0 36px}.layout.operator{width:min(100% - 36px,740px);padding-top:clamp(28px,6vh,64px)}.brand{display:flex;gap:12px;align-items:center;font-weight:650;letter-spacing:-.018em;margin-bottom:22px}.brand small{margin-left:auto;color:var(--muted);font-weight:500;font-size:.82rem}.brand-icon{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:3px;background:#303e2a;color:var(--accent)}.brand-icon i{width:2px;height:10px;border-radius:2px;background:currentColor}.brand-icon i:nth-child(2),.brand-icon i:nth-child(4){height:15px}.brand-icon i:nth-child(3){height:20px}.card{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:clamp(22px,5vw,38px);box-shadow:0 22px 60px #0004}.card+.card{margin-top:18px}h1,h2,p{margin:0}h1{font-size:clamp(1.75rem,5.5vw,2.5rem);letter-spacing:-.05em;line-height:1.11}h2{font-size:clamp(1.35rem,4vw,1.75rem);letter-spacing:-.035em}p{color:var(--muted);line-height:1.62;margin-top:14px}small{line-height:1.45}.file-picker{display:flex;align-items:center;gap:15px;min-height:102px;margin:26px 0 16px;padding:16px;border-radius:13px;border:1px dashed #596356;background:#222923;position:relative;cursor:pointer}.file-picker:hover{background:#283128;border-color:var(--accent)}.file-picker>span:nth-child(2){min-width:0;overflow-wrap:anywhere}.file-picker small,.job-state small,.job-list small{display:block;color:var(--muted);margin-top:5px}.file-picker input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.upload-symbol{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:11px;background:#384a31;color:var(--accent);font-size:1.55rem}.primary,.secondary{min-height:43px;padding:10px 17px;border:1px solid transparent;border-radius:10px;font-weight:650}.primary{background:var(--accent);color:#162011}.primary:hover:not(:disabled){background:#d0ffa0}.secondary{background:#2a3038;border-color:#424957;color:#f4f6f9}.secondary:hover:not(:disabled){background:#373f4a}form .primary{width:100%}.job-state+.primary{margin-top:18px}footer{border-top:1px solid var(--line);margin-top:26px;padding-top:15px;font-size:.82rem;color:var(--muted)}.job-state{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:11px;margin-top:22px;overflow-wrap:anywhere}.state-dot{display:inline-block;flex:0 0 9px;height:9px;border-radius:50%;background:#ebbf6e}.job-state.ready .state-dot{background:var(--accent)}.job-state.failed .state-dot{background:#ffb2a4}.error,.notice{border:1px solid #684841;border-radius:10px;padding:10px 13px;background:#362927;color:#ffd5cd}.notice{background:#342f21;border-color:#615339;color:#ffe3ab}.progress{display:flex;gap:9px;align-items:center;margin:12px 0;font-size:.84rem}progress{flex:1;accent-color:var(--accent)}.section-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.connection{color:var(--muted);font-size:.82rem}.link-field{margin-top:18px}.link-field>div{display:flex;gap:8px;margin:6px 0}.link-field input{flex:1;width:0;min-height:43px;background:#131518;border:1px solid var(--line);border-radius:10px;padding:0 11px;color:#f4f6f9}.link-field small{color:var(--muted)}.job-list{list-style:none;padding:0;margin:16px 0 0}.job-list li{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 0}.job-list li:last-child{padding-bottom:0}.job-list li>div{min-width:0;overflow-wrap:anywhere}@media(max-width:430px){.card{border-radius:16px}.operator .section-header{align-items:flex-start}}
