:root{--text:#202420;--muted:#4f5652;--border:#e1e0db;--border-dark:#aaada8;--surface:#f7f6f2;--primary:#0b7a53;--primary-dark:#075d3f;--success:#176b43;--warning:#a23d26}*{box-sizing:border-box}html{background:#fdfcf9}body{min-height:100vh;color:var(--text);background:#fdfcf9;flex-direction:column;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Yu Gothic UI,Meiryo,sans-serif;font-size:16px;line-height:1.6;display:flex}.app-page{flex:1 0 auto;min-width:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,select,label{-webkit-tap-highlight-color:transparent}.site-footer{border-top:1px solid var(--border);background:#fdfcf9;flex:none}.site-footer-inner{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;width:min(100% - 48px,1080px);min-height:72px;margin:0 auto;padding:14px 0;display:grid}.site-footer-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px 24px;font-size:14px;display:flex}.site-footer-meta nav{align-items:center;gap:9px;display:inline-flex}.site-footer-meta a{text-underline-offset:3px;text-decoration:underline}.site-footer-meta a:hover{color:var(--primary-dark)}.site-footer-logo{line-height:0;display:block}.site-footer-logo img{width:96px;height:auto}.legal-shell{width:min(100% - 48px,860px);margin:0 auto;padding:54px 0 36px}.legal-shell article{max-width:780px}.legal-product{color:var(--primary-dark);margin:0 0 6px;font-size:15px;font-weight:650}.legal-shell h1{margin:0;font-size:32px;font-weight:700;line-height:1.35}.legal-lead{color:var(--text);margin:18px 0 0;font-size:16px;line-height:1.9}.legal-date{color:var(--muted);margin:12px 0 0;font-size:14px}.legal-shell section{margin-top:38px;padding-top:2px}.legal-shell h2{margin:0 0 12px;font-size:21px;font-weight:650;line-height:1.5}.legal-shell p{margin:10px 0 0;font-size:15px;line-height:1.9}.legal-shell ul{margin:10px 0 0;padding-left:24px}.legal-shell li{margin-top:6px;font-size:15px;line-height:1.8}.legal-shell a{color:var(--primary-dark);text-underline-offset:3px;text-decoration:underline}.studio-header,.public-header{border-bottom:1px solid var(--border);background:#fdfcf9;justify-content:space-between;align-items:center;height:56px;padding:0 max(24px,50vw - 660px);display:flex}.brand{align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.brand-mark{flex:none;place-items:center;width:32px;height:32px;line-height:0;display:grid}.brand-mark img{width:32px;height:32px;display:block}.studio-header nav{align-items:center;gap:22px;font-size:15px;font-weight:600;display:flex}.studio-header nav a:hover{color:var(--primary);text-decoration:underline}.studio-header .header-create-link{color:#fff;background:var(--primary);border-radius:3px;padding:7px 13px}.studio-header .header-create-link:hover{color:#fff;background:var(--primary-dark);text-decoration:none}.header-tools{align-items:center;gap:22px;display:flex}.capabilities-trigger,.saved-flows-trigger,.samples-trigger{min-height:40px;color:var(--text);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:6px 2px;font-size:15px;display:inline-flex}.capabilities-trigger:hover,.saved-flows-trigger:hover,.samples-trigger:hover{text-underline-offset:3px;text-decoration:underline}.capabilities-overlay{z-index:100;background:#20242033;justify-content:flex-end;display:flex;position:fixed;inset:0}.capabilities-panel{border-left:1px solid var(--border);background:#fdfcf9;width:min(460px,100%);height:100%;padding:24px 30px;overflow-y:auto;box-shadow:-8px 0 24px #20242014}.capabilities-panel>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;min-height:44px;display:flex}.capabilities-panel h2{align-items:center;gap:9px;margin:0;font-size:21px;font-weight:650;display:inline-flex}.capabilities-panel header button{width:40px;height:40px;color:var(--text);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.capabilities-overview{color:var(--text);margin:22px 0 24px;font-size:16px;font-weight:600;line-height:1.7}.capabilities-overview span{display:block}.capability-stages{border-top:1px solid var(--border)}.capability-stage{border-bottom:1px solid var(--border);padding:20px 0}.capability-stage>header{align-items:baseline;gap:12px;display:flex}.capability-stage>header span{color:var(--primary-dark);letter-spacing:.06em;font-size:13px;font-weight:650}.capability-stage h3{margin:0;font-size:17px;font-weight:650}.capability-stage p{color:var(--muted);margin:8px 0 0 34px;font-size:15px;line-height:1.7}.capabilities-safety{background:#eef8f2;border:1px solid #cfe4d7;border-radius:6px;align-items:flex-start;gap:10px;margin-top:24px;padding:14px;display:flex}.capabilities-safety>svg{color:var(--success);flex:none}.capabilities-safety strong{font-size:14px;font-weight:650;display:block}.capabilities-safety p{color:var(--muted);margin:2px 0 0;font-size:14px;line-height:1.6}.saved-flows-overlay{z-index:100;background:#20242033;justify-content:flex-end;display:flex;position:fixed;inset:0}.saved-flows-panel{border-left:1px solid var(--border);background:#fdfcf9;width:min(540px,100%);height:100%;padding:24px 30px;overflow-y:auto;box-shadow:-8px 0 24px #20242014}.saved-flows-panel>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;min-height:44px;display:flex}.saved-flows-panel h2{align-items:center;gap:9px;margin:0;font-size:21px;font-weight:650;display:inline-flex}.saved-flows-panel>header button{width:40px;height:40px;color:var(--text);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.saved-flows-empty{color:var(--muted);margin:28px 0 0;font-size:15px}.saved-flows-error{border-left:4px solid var(--warning);color:#7d2e1c;background:#fff8f6;margin-top:18px;padding:12px 14px;font-size:15px}.saved-flow-list{margin-top:12px}.saved-flow-row{border-bottom:1px solid var(--border);padding:20px 0}.saved-flow-summary{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.saved-flow-summary>div{min-width:0}.saved-flow-summary h3{overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:650}.saved-flow-summary p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 0;font-size:14px;display:-webkit-box;overflow:hidden}.saved-flow-status{border:1px solid var(--border-dark);border-radius:3px;flex:none;padding:3px 8px;font-size:13px;font-weight:600}.saved-flow-status.published{color:var(--success);background:#f2faf5;border-color:#7cb394}.saved-flow-status.pending{color:#7d5120;background:#fffaf0;border-color:#cda66e}.saved-flow-meta{color:var(--muted);margin:10px 0 0;font-size:13px}.saved-flow-actions{flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:14px;display:flex}.saved-flow-actions a,.saved-flow-actions>button{color:var(--text);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:2px 0;font-size:14px;text-decoration:underline;display:inline-flex}.saved-flow-actions .saved-flow-delete{color:var(--warning)}.saved-flow-confirmation{background:#fff8f6;border:1px solid #d49a8b;border-radius:6px;margin-top:16px;padding:14px}.saved-flow-confirmation p{color:#6f2d20;margin:0;font-size:14px}.saved-flow-confirmation>div{justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.button.danger-button{color:#fff;border-color:var(--warning);background:var(--warning)}.button.danger-button:hover:not(:disabled){background:#87321f;border-color:#87321f}.samples-overlay{z-index:100;background:#20242033;justify-content:flex-end;display:flex;position:fixed;inset:0}.samples-panel{border-left:1px solid var(--border);background:#fdfcf9;width:min(600px,100%);height:100%;padding:24px 30px;overflow-y:auto;box-shadow:-8px 0 24px #20242014}.samples-panel>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;min-height:44px;display:flex}.samples-panel h2{align-items:center;gap:9px;margin:0;font-size:21px;font-weight:650;display:inline-flex}.samples-panel>header button{width:40px;height:40px;color:var(--text);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.samples-overview{color:var(--muted);margin:20px 0 10px;font-size:15px}.sample-row{border-bottom:1px solid var(--border);padding:19px 0}.sample-row>header{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.sample-row h3{margin:0;font-size:18px;font-weight:650}.sample-row>header>span{color:var(--muted);flex:none;font-size:14px}.sample-row>p{color:var(--muted);margin:4px 0 0;font-size:15px}.sample-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;margin-top:12px;display:flex}.sample-start-link{color:var(--primary-dark);text-underline-offset:3px;align-items:center;gap:6px;font-size:15px;font-weight:600;text-decoration:underline;display:inline-flex}.sample-downloads{flex-wrap:wrap;align-items:center;gap:7px 13px;display:flex}.sample-downloads>span{color:var(--muted);align-items:center;gap:4px;font-size:14px;display:inline-flex}.sample-downloads a{color:var(--text);text-underline-offset:3px;font-size:14px;text-decoration:underline}.sample-downloads small{color:var(--muted);margin-left:4px;font-size:14px;text-decoration:none}.public-header{color:var(--muted);font-size:15px}.public-brand{color:var(--text);align-items:center;gap:10px;font-size:17px;font-weight:700;display:flex}.public-context{border-left:1px solid var(--border-dark);color:var(--muted);margin-left:2px;padding-left:12px;font-size:15px;font-weight:600}.studio-shell{width:min(1160px,100% - 48px);margin:0 auto;padding:36px 0 40px}.page-heading-row{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.page-heading-row h1{margin:0;font-size:30px;line-height:1.35}.page-heading-row p{color:var(--muted);margin:8px 0 0;font-size:16px}.empty-state{border:1px solid var(--border);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:350px;padding:60px 24px;display:flex}.empty-state h2{margin:0;font-size:22px}.empty-state p{color:var(--muted);margin:10px 0 24px;font-size:16px}.flow-table-wrap{border:1px solid var(--border);overflow:auto}.flow-table{border-collapse:collapse;width:100%;font-size:15px}.flow-table th{text-align:left;background:var(--surface);border-bottom:2px solid var(--border-dark);white-space:nowrap;padding:12px 14px}.flow-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:15px 14px}.flow-table tr:last-child td{border-bottom:0}.flow-table td:first-child{min-width:280px}.flow-table td:first-child strong,.flow-table td:first-child span{display:block}.flow-table td:first-child strong{font-size:16px}.flow-table td:first-child span{color:var(--muted);margin-top:3px}.status-label{border:1px solid var(--border-dark);text-align:center;min-width:76px;padding:3px 8px;display:inline-block}.status-label.published{color:var(--success);background:#f2faf5;border-color:#7cb394}.row-actions{white-space:nowrap;align-items:center;gap:14px;display:flex}.row-actions a,.row-actions button{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:15px;text-decoration:underline}.row-actions button:disabled{color:var(--muted);cursor:wait}.tool-shell{width:min(1080px,100% - 48px);margin:0 auto;padding:36px 0 40px}.flow-header{margin-bottom:28px;padding-right:300px;position:relative}.flow-title-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.flow-header h1{margin:0;font-size:30px;font-weight:700;line-height:1.3}.flow-header>p{max-width:850px;color:var(--muted);margin:12px 0 0;font-size:16px}.version-label{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:3px;padding:2px 9px;font-size:15px}.flow-identity{color:var(--muted);flex-direction:column;align-items:flex-end;gap:2px;font-size:13px;line-height:1.5;display:flex;position:absolute;top:4px;right:0}.flow-details{margin-top:14px}.flow-details summary{color:var(--primary);cursor:pointer;align-items:center;gap:6px;font-size:15px;font-weight:600;list-style:none;display:inline-flex}.flow-details summary::-webkit-details-marker{display:none}.flow-details[open] .flow-details-chevron{transform:rotate(180deg)}.flow-details-body{border-top:1px solid var(--border);max-width:720px;margin-top:10px;padding:12px 0 0}.flow-details-body p{margin:0 0 6px;font-size:15px}.flow-details-body p:last-child{margin-bottom:0}.public-edit-link{color:var(--text);text-underline-offset:3px;align-items:center;gap:6px;font-size:14px;text-decoration:underline;display:inline-flex}.public-edit-link:hover{color:var(--primary-dark)}.step-content{border:1px solid var(--border);background:#fff;min-height:420px;padding:32px}.section-heading{margin-bottom:26px}.section-heading h2,.result-toolbar h2{margin:0;font-size:23px;line-height:1.4}.section-heading p,.result-toolbar p{color:var(--muted);margin:7px 0 0;font-size:15px}.runner-content{background:0 0;border:0;min-height:0;padding:0}.runner-content>.section-heading{margin-bottom:8px}.runner-content .step-actions{border-top:0;padding-top:0}.runner-sample-link{color:var(--primary-dark);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:0 0 18px;padding:3px 0;font-size:15px;text-decoration:underline}.runner-sample-link:hover:not(:disabled){color:var(--primary)}.runner-sample-link:disabled{color:var(--muted);cursor:wait}.file-list{border-top:1px solid var(--border)}.file-row{border-bottom:1px solid var(--border);grid-template-columns:190px minmax(260px,1fr) 230px;align-items:center;gap:14px 18px;padding:22px 0;display:grid}.file-label h3{margin:0;font-size:17px}.file-label p{color:var(--muted);margin:5px 0 0;font-size:15px}.file-picker{border:1px solid var(--border-dark);cursor:pointer;background:#fff;justify-content:space-between;align-items:center;min-width:0;height:46px;display:flex}.file-picker:hover{border-color:var(--primary)}.file-picker input{opacity:0;width:1px;height:1px;position:absolute}.file-picker span{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 12px;font-size:15px;overflow:hidden}.file-picker strong{border-left:1px solid var(--border-dark);background:var(--surface);flex:none;align-items:center;height:100%;padding:0 15px;font-size:15px;display:flex}.encoding-control{grid-template-columns:auto 1fr;align-items:center;gap:10px;display:grid}.encoding-control label{color:var(--muted);font-size:15px}.encoding-control select{border:1px solid var(--border-dark);width:100%;height:46px;color:var(--text);background:#fff;padding:0 10px;font-size:15px}.file-status{min-height:24px;color:var(--muted);grid-column:2/4;font-size:15px}.file-status>span{align-items:center;gap:8px;display:flex}.success-text{color:var(--success);font-weight:600}.warning-text{color:var(--warning);font-weight:600}.runner-file-list{grid-template-columns:1fr;gap:28px;display:grid}.runner-file-block{min-width:0}.runner-file-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:10px;display:flex}.runner-file-heading h3{margin:0;font-size:18px}.runner-file-dropzone{text-align:center;background:#fff;border:1px dashed #aeb4af;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:128px;padding:20px;display:flex}.runner-file-dropzone.drag-active{border-color:var(--primary);outline:2px solid var(--primary);outline-offset:-2px;background:#fafcf9}.runner-file-dropzone>strong{font-size:17px;font-weight:600}.runner-file-dropzone>span{color:var(--muted);font-size:14px}.runner-file-button{flex:none;min-width:136px}.runner-file-button input{opacity:0;width:1px;height:1px;position:absolute}.runner-encoding-control{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.runner-encoding-control label{color:var(--muted);font-size:15px}.runner-encoding-control select{border:1px solid var(--border-dark);background:#fff;width:100%;min-height:44px;padding:7px 9px;font-size:15px}.runner-file-status{min-height:22px;color:var(--muted);margin-top:8px;font-size:15px}.runner-file-status>span{align-items:center;gap:8px;display:flex}.execution-summary{border-top:1px solid var(--border)}.execution-summary>div{border-bottom:1px solid var(--border);grid-template-columns:180px minmax(240px,1fr) 220px;align-items:center;gap:20px;min-height:58px;padding:12px 6px;font-size:15px;display:grid}.execution-summary strong{font-size:16px}.execution-summary span:last-child{color:var(--muted)}.processing-status{background:var(--surface);justify-content:center;align-items:center;gap:14px;min-height:120px;margin-top:24px;font-size:17px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;min-height:46px;padding:9px 20px;font-size:15px;font-weight:700;display:inline-flex}.button.primary{color:#fff;background:var(--primary);border-color:var(--primary)}.button.primary:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.button.secondary{color:var(--text);border-color:var(--border-dark);background:0 0}.button.secondary:hover{background:#f7f6f2;border-color:#757d78}.button.plain{color:var(--text);border-color:var(--border-dark);background:#fff}.button.plain:hover{background:var(--surface)}.button:disabled{color:#7b8794;cursor:not-allowed;background:#e4e7eb;border-color:#d0d5da}.text-button{cursor:pointer;background:0 0;border:0;padding:4px;font-size:15px;text-decoration:underline}.text-button.danger{color:var(--warning)}.step-actions{border-top:1px solid var(--border);gap:12px;margin-top:28px;padding-top:22px;display:flex}.step-actions.end{justify-content:flex-end}.step-actions.between{justify-content:space-between}.step-actions.start{justify-content:flex-start}.runner-result{border-top:1px solid var(--border);margin-top:34px;padding-top:30px}.result-toolbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.table-wrap{overscroll-behavior:contain;scrollbar-gutter:stable;border:1px solid var(--border);width:100%;max-height:min(65vh,680px);overflow:auto}.table-wrap table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:15px}.table-wrap th{z-index:1;text-align:left;background:var(--surface);border-bottom:2px solid var(--border-dark);padding:12px 14px;font-size:15px;position:sticky;top:0}.table-wrap th.numeric-cell{text-align:right}.table-wrap td{border-bottom:1px solid var(--border);padding:11px 14px}.table-wrap td.numeric-cell{text-align:right;font-variant-numeric:tabular-nums}.table-wrap:focus-visible{outline-offset:2px;outline:3px solid #b9dfcf}.table-wrap tr:last-child td{border-bottom:0}.table-wrap tbody tr:nth-child(2n){background:#fafbfc}.table-note{color:var(--muted);margin:12px 0 0;font-size:15px}.error-message{border:1px solid #d49a8b;border-left:5px solid var(--warning);color:#7d2e1c;background:#fff8f6;margin:20px 0 0;padding:14px 16px;font-size:15px}.warning-message{color:#674b12;background:#fffaf0;border-left:4px solid #b78118;margin:20px 0 0;padding:14px 16px;font-size:15px}.warning-message strong{margin-bottom:5px;display:block}.warning-message ul{margin:0;padding-left:20px}.loading-row{min-height:300px;color:var(--muted);justify-content:center;align-items:center;gap:12px;font-size:16px;display:flex}.spinner{border:3px solid #bcccdc;border-top-color:var(--primary);border-radius:50%;flex:none;width:22px;height:22px;animation:.8s linear infinite spin;display:inline-block}.spinner.small{border-width:2px;width:17px;height:17px}@keyframes spin{to{transform:rotate(360deg)}}.flow-form{border-top:1px solid var(--border)}.form-section{border-bottom:1px solid var(--border);padding:28px 0}.form-section h2{margin:0 0 20px;font-size:21px}.form-section-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;display:flex}.form-section-heading h2{margin-bottom:4px}.form-section-heading p{color:var(--muted);margin:0;font-size:15px}.field-grid{gap:18px;display:grid}.field-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.four-columns{grid-template-columns:1.2fr 1fr 1fr .8fr}.field.full{grid-column:1/-1}.field{flex-direction:column;gap:7px;min-width:0;display:flex}.field>span{font-size:15px;font-weight:600}.field>span b{color:var(--warning);margin-left:5px;font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--border-dark);width:100%;min-height:44px;color:var(--text);background:#fff;border-radius:6px;padding:9px 11px;font-size:16px}.field textarea{resize:vertical;line-height:1.6}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary);outline-offset:0;outline:2px solid #c8eadb}.input-definition{border:1px solid var(--border-dark);margin:0 0 24px;padding:24px 20px 20px;position:relative}.input-definition:last-child{margin-bottom:0}.input-definition legend{padding:0 8px;font-size:17px;font-weight:700}.remove-input{color:var(--warning);cursor:pointer;background:0 0;border:0;padding:0;font-size:15px;text-decoration:underline;position:absolute;top:16px;right:18px}.column-editor{border-top:1px solid var(--border);margin-top:22px}.column-editor-head{justify-content:space-between;align-items:center;min-height:50px;display:flex}.column-editor-head strong{font-size:16px}.column-editor-head button{border:1px solid var(--border-dark);cursor:pointer;background:#fff;padding:4px 10px;font-size:15px}.column-row{border-top:1px solid var(--border);grid-template-columns:minmax(220px,1fr) 180px 110px 60px;align-items:end;gap:14px;padding:14px 0;display:grid}.check-field{cursor:pointer;align-items:center;gap:8px;min-height:44px;font-size:15px;display:flex}.check-field input,.publication-control input{flex:none;width:18px;height:18px}.row-remove{min-height:44px;color:var(--warning);cursor:pointer;background:0 0;border:0;padding:0;font-size:15px;text-decoration:underline}.row-remove:disabled{color:#9aa5b1;cursor:not-allowed}.sql-editor{tab-size:2;font-family:Consolas,Cascadia Mono,monospace}.field-help{color:var(--muted);margin:10px 0 0;font-size:15px}.publication-control{border:1px solid var(--border);background:var(--surface);cursor:pointer;align-items:flex-start;gap:10px;margin-top:22px;padding:16px;display:flex}.publication-control span{flex-direction:column;gap:2px;display:flex}.publication-control strong{font-size:16px}.publication-control small{color:var(--muted);font-size:15px}.form-actions{justify-content:flex-end;padding-top:26px;display:flex}.save-result{border:1px solid #7cb394;border-left:5px solid var(--success);background:#f2faf5;flex-direction:column;gap:7px;margin-top:24px;padding:16px 18px;font-size:15px;display:flex}.save-result>strong{font-size:17px}.save-result>div{flex-wrap:wrap;gap:18px;display:flex}.save-result a{color:var(--primary);text-decoration:underline}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wizard-shell{width:min(1040px,100% - 48px);padding-top:38px}.wizard-heading{margin-bottom:12px}.wizard-heading-row{justify-content:space-between;align-items:center;gap:20px;display:flex}.wizard-heading h1{letter-spacing:-.015em;margin:0;font-size:clamp(28px,3vw,32px);font-weight:650;line-height:1.3}.edit-status{border:1px solid var(--border-dark);border-radius:3px;flex:none;padding:4px 9px;font-size:14px;font-weight:600}.edit-status.published{color:var(--success);background:#f2faf5;border-color:#7cb394}.edit-status.pending{color:#7d5120;background:#fffaf0;border-color:#cda66e}.edit-flow-links{flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:10px;display:flex}.edit-flow-links a,.edit-flow-links button{color:var(--text);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:2px 0;font-size:14px;text-decoration:underline;display:inline-flex}.confirmation-overlay{z-index:110;background:#20242047;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.confirmation-dialog{border:1px solid var(--border-dark);background:#fff;border-radius:7px;width:min(480px,100%);padding:26px}.confirmation-dialog h2{margin:0;font-size:21px;font-weight:650;line-height:1.5}.confirmation-dialog p{color:var(--muted);margin:10px 0 0;font-size:15px}.confirmation-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.wizard-stepper{color:var(--muted);margin-bottom:24px;font-size:14px}.wizard-stepper ol{align-items:center;gap:0;margin:0;padding:0;list-style:none;display:flex}.wizard-stepper li{white-space:nowrap}.wizard-stepper li:not(:last-child):after{color:#a2a7a3;content:"/";margin:0 12px}.wizard-stepper button{min-height:32px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:2px 0}.wizard-stepper button:hover:not(:disabled){color:var(--primary-dark);text-underline-offset:3px;text-decoration:underline}.wizard-stepper button:disabled{cursor:not-allowed;opacity:.62}.wizard-stepper li.active button{color:var(--primary-dark);opacity:1;cursor:default;font-weight:600}.wizard-stepper li.complete button{color:var(--text)}.wizard-card{background:0 0;border:0}.wizard-panel{border-top:1px solid var(--border);padding:28px 0 0}.wizard-panel>.section-heading{margin-bottom:22px}.wizard-panel>.section-heading h2{font-size:23px;font-weight:650}.wizard-panel>.section-heading p{font-size:15px}.csv-dropzone{text-align:center;background:#fff;border:1px dashed #aeb4af;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:160px;padding:28px;display:flex}.csv-dropzone.dragging{border-color:var(--primary);outline:2px solid var(--primary);outline-offset:-2px;background:#fafcf9}.csv-dropzone strong{font-size:18px;font-weight:600}.csv-dropzone>span{color:var(--muted);margin:3px 0 8px;font-size:15px}.upload-icon{fill:none;stroke:#4b6077;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;width:48px;height:48px}.csv-dropzone.compact{text-align:center;gap:10px;min-height:160px;padding:24px;display:flex}.csv-dropzone.compact>div{flex-direction:column;gap:3px;min-width:0;display:flex}.csv-dropzone.compact strong{margin:0;font-size:18px}.csv-dropzone.compact>div span{color:var(--muted);font-size:15px}.csv-dropzone.compact.full{background:#fff}.encoding-support{color:#3f5e51;text-align:center;margin:12px 0 0;font-size:15px}.privacy-note{color:var(--muted);align-items:center;gap:7px;margin:9px 0 0;font-size:14px;display:flex}.privacy-note svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:16px;height:16px}.replace-file:focus-visible,.detail-toggle:focus-visible,.delete-file:focus-visible{outline-offset:2px;outline:3px solid #b9dfcf}.edit-input-file-list{flex-direction:column;gap:28px;display:flex}.edit-input-file>header{justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:10px;display:flex}.edit-input-file h3{margin:0;font-size:18px}.edit-input-file>header span{max-width:70%;color:var(--muted);text-align:right;font-size:14px}.edit-input-dropzone{min-height:132px}.edit-input-file-status{color:var(--muted);align-items:center;gap:8px;margin:8px 0 0;font-size:15px;display:flex}.edit-input-error{margin-left:0}.added-files{margin-top:34px}.added-files>h3{margin:0 0 12px;font-size:18px}.editor-file-list{border-top:1px solid var(--border);flex-direction:column;gap:0;display:flex}.editor-file-card{border:0;border-bottom:1px solid var(--border);background:0 0;padding:20px 0}.file-card-main{grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.csv-file-icon{border:1px solid var(--border-dark);width:42px;height:50px;color:var(--muted);background:#fff;border-radius:6px;place-items:center;font-size:13px;font-weight:700;display:grid}.file-card-info{min-width:0}.file-card-info h4{overflow-wrap:anywhere;margin:0;font-size:18px;line-height:1.4}.file-meta{color:var(--muted);align-items:center;gap:7px;margin:4px 0 0;font-size:15px;display:flex}.read-status{color:var(--success);font-weight:700}.file-card-actions{align-items:center;gap:12px;display:flex}.replace-file,.detail-toggle,.delete-file{border:1px solid var(--border);cursor:pointer;background:#fff;min-height:42px}.replace-file{color:var(--text);align-items:center;gap:6px;padding:8px 12px;font-size:15px;display:inline-flex}.detail-toggle{color:var(--text);align-items:center;gap:7px;padding:8px 14px;font-size:15px;font-weight:600;display:inline-flex}.delete-file{width:44px;color:var(--warning);border-color:#e4b6ae;place-items:center;display:grid}.delete-file svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.replace-file:hover,.detail-toggle:hover{border-color:var(--primary);background:#f0f8f4}.delete-file:hover{background:#fff7f5}.column-preview{flex-wrap:wrap;align-items:center;gap:7px;margin:14px 0 0 68px;display:flex}.column-preview-label{color:var(--muted);margin-right:4px;font-size:15px}.column-chip{color:#40516a;text-overflow:ellipsis;white-space:nowrap;background:#f6f8fa;border:1px solid #e1e6ed;border-radius:3px;max-width:190px;padding:4px 11px;font-size:15px;overflow:hidden}.inline-file-error{border-left:4px solid var(--warning);color:#7d2e1c;background:#fff8f6;margin:14px 0 0 68px;padding:10px 12px;font-size:15px}.file-details{border-top:1px solid var(--border);background:0 0;margin:18px 0 0 68px;padding:20px 0 0}.detail-grid{grid-template-columns:1.2fr 1fr .8fr .7fr;gap:16px;display:grid}.inferred-columns{margin-top:22px}.inferred-columns h5{margin:0 0 10px;font-size:16px}.inferred-column-list{flex-wrap:wrap;gap:10px 28px;max-width:900px;display:flex}.inferred-column-list label{align-items:center;gap:8px;min-width:0;max-width:100%;display:inline-flex}.inferred-column-list label span{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:15px;overflow:hidden}.inferred-column-list select{border:1px solid var(--border-dark);background:#fff;flex:none;width:120px;min-height:40px;padding:6px 8px;font-size:15px}.wizard-actions{border-top:0;align-items:flex-end;gap:14px;margin-top:28px;padding-top:0;display:flex}.wizard-actions.between{justify-content:space-between}.wizard-actions.end{justify-content:flex-end}.next-action{flex-direction:column;align-items:flex-start;gap:7px;display:flex}.next-action p{color:var(--warning);margin:0;font-size:15px}.wizard-actions .button.primary{gap:9px}.button svg{flex:none}.processing-form{flex-direction:column;gap:24px;display:flex}.schema-overview{border-top:1px solid var(--border)}.schema-overview article{border-bottom:1px solid var(--border);padding:16px 0}.schema-overview article:last-child{border-bottom:0}.schema-overview article>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.schema-overview article>header strong{font-size:16px}.schema-overview article>header span{color:var(--muted);font-size:15px}.schema-preview,.schema-overview details>div{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.schema-preview>span,.schema-overview details>div>span{border:1px solid var(--border);background:0 0;border-radius:4px;align-items:center;gap:7px;padding:4px 8px;font-size:15px;display:inline-flex}.schema-preview small,.schema-overview details small{color:var(--muted);font-size:12px}.schema-overview .all-columns{margin-top:9px}.schema-overview .all-columns summary{color:var(--primary-dark);cursor:pointer;font-size:15px}.processing-details{margin-top:12px}.processing-details>summary{min-height:50px;color:var(--primary-dark);cursor:pointer;align-items:center;gap:7px;font-size:15px;font-weight:600;list-style:none;display:flex}.processing-details>summary::-webkit-details-marker{display:none}.processing-details[open] .details-chevron{transform:rotate(180deg)}.processing-details-body{border-top:1px solid var(--border);padding:16px 0 8px}.processing-input-settings{padding:0}.processing-identifier{max-width:520px}.processing-input-settings .inferred-columns{margin-top:20px}.processing-input-settings .inferred-columns h4{margin:0 0 10px;font-size:16px;font-weight:600}.input-reference{border-top:1px solid var(--border)}.input-reference h3{border-bottom:1px solid var(--border);background:0 0;margin:0;padding:14px 0 10px;font-size:16px;font-weight:600}.input-reference>div{border-bottom:1px solid var(--border);grid-template-columns:180px 1fr 70px;align-items:center;gap:16px;min-height:48px;padding:8px 0;font-size:15px;display:grid}.input-reference>div:last-child{border-bottom:0}.input-reference code{color:var(--text);font-size:15px;font-weight:600}.input-reference span:last-child{color:var(--muted);text-align:right}.output-fields{margin-top:2px}.instruction-field textarea{min-height:150px;font-size:17px}.ai-data-note{color:var(--muted);align-items:center;gap:7px;margin:-12px 0 0;font-size:15px;display:flex}.ai-data-note svg{color:var(--muted);flex:none}.result-toolbar h3{margin:0;font-size:22px}.result-toolbar .button{gap:7px}.publish-definition{border-top:1px solid var(--border)}.publish-definition>div{border-bottom:1px solid var(--border);grid-template-columns:170px 1fr;align-items:center;min-height:54px;padding:10px 0;display:grid}.publish-definition>div:last-child{border-bottom:0}.publish-definition span{color:var(--muted)}.publish-definition strong{font-size:16px}.sql-adjustment{border:1px solid var(--border);background:#fff;margin:22px 0}.sql-adjustment summary{min-height:50px;color:var(--primary-dark);cursor:pointer;background:#f7faf8;align-items:center;gap:8px;padding:10px 14px;font-size:16px;font-weight:700;display:flex}.sql-adjustment summary::marker{content:""}.sql-adjustment-body{border-top:1px solid var(--border);padding:18px}.sql-adjustment-body .button{gap:8px;margin-top:14px}.publish-form{flex-direction:column;gap:20px;display:flex}.output-settings{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:0 0;padding:18px 0}.public-url-result{border:1px solid #75b49d;border-left:5px solid var(--primary);background:#f3faf6;margin-top:22px;padding:18px}.public-url-result>strong{align-items:center;gap:8px;font-size:18px;display:flex}.public-url-copy{grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:12px;display:grid}.public-url-copy input{border:1px solid var(--border-dark);background:#fff;width:100%;min-height:44px;padding:8px 11px;font-size:15px}.public-url-copy .button{gap:7px}.published-links{flex-wrap:wrap;gap:10px 20px;margin-top:12px;display:flex}.published-links a{color:var(--primary-dark);text-underline-offset:3px;align-items:center;gap:6px;font-size:15px;text-decoration:underline;display:inline-flex}.public-open-link{color:var(--primary-dark);text-underline-offset:3px;align-items:center;gap:6px;margin-top:12px;font-size:15px;text-decoration:underline;display:inline-flex}button:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #b9dfcf}@media (max-width:1000px){.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:850px){.tool-shell{width:min(100% - 32px,1080px);padding-top:26px}.studio-shell{width:min(100% - 32px,1160px);padding-top:26px}.studio-header,.public-header{padding:0 16px}.file-row{grid-template-columns:1fr;gap:12px}.file-status{grid-column:auto}.execution-summary>div{grid-template-columns:150px 1fr;gap:8px 16px}.execution-summary span:last-child{grid-column:2}.field-grid.four-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.column-row{grid-template-columns:minmax(180px,1fr) 160px 100px 60px}.wizard-shell{width:min(100% - 32px,1040px)}.wizard-panel{padding:24px 0 0}.file-details{margin-left:0}.flow-header{padding-right:0}.flow-identity{align-items:flex-start;margin-top:10px;position:static}.runner-file-status{grid-column:auto}}@media (max-width:600px){body{font-size:16px}.site-footer-inner{grid-template-columns:1fr;gap:12px;width:calc(100% - 36px);min-height:0;padding:16px 0 18px}.site-footer-meta{flex-direction:column;align-items:flex-start;gap:8px}.site-footer-logo{justify-self:end}.site-footer-logo img{width:92px}.legal-shell{width:calc(100% - 36px);padding:36px 0 30px}.legal-shell h1{font-size:28px}.legal-shell section{margin-top:32px}.studio-header nav a:first-child,.public-header>span,.studio-header .brand>span:last-child,.public-brand>span:nth-child(2){display:none}.header-tools{gap:12px}.flow-header h1{font-size:25px}.step-content{min-height:380px;padding:22px 18px}.runner-content{min-height:0;padding:0}.result-toolbar{flex-direction:column;align-items:stretch}.result-toolbar .button{width:100%}.table-wrap{max-height:58vh}.encoding-control{grid-template-columns:1fr;gap:5px}.runner-file-list{grid-template-columns:1fr}.runner-file-heading{flex-direction:column;align-items:stretch;gap:8px}.runner-file-dropzone{min-height:150px;padding:18px 14px}.runner-encoding-control{grid-template-columns:1fr;gap:5px}.execution-summary>div{grid-template-columns:1fr;gap:3px}.execution-summary span:last-child{grid-column:auto}.step-actions .button{flex:1}.page-heading-row,.form-section-heading{flex-direction:column;align-items:stretch}.page-heading-row .button,.form-section-heading .button{width:100%}.field-grid.two-columns,.field-grid.four-columns{grid-template-columns:1fr}.column-row{grid-template-columns:1fr 1fr}.check-field,.row-remove{align-self:center}.wizard-shell{width:100%;padding:28px 18px 32px}.wizard-heading-row{flex-direction:column;align-items:flex-start;gap:10px}.wizard-heading h1{font-size:28px;line-height:1.35}.wizard-stepper{margin-bottom:22px}.wizard-panel{padding-top:24px}.csv-dropzone{min-height:158px;padding:22px 14px}.csv-dropzone strong{font-size:17px}.csv-dropzone.compact{gap:10px;min-height:158px;padding:20px 14px}.csv-dropzone.compact .button{width:auto}.csv-dropzone.compact>div span{font-size:14px;line-height:1.5}.encoding-support{text-align:left}.privacy-note{text-align:left;align-items:flex-start}.edit-input-file>header{flex-direction:column;align-items:flex-start;gap:3px}.edit-input-file>header span{text-align:left;max-width:100%}.file-card-main{grid-template-columns:44px minmax(0,1fr);gap:12px}.csv-file-icon{width:40px;height:46px}.file-card-actions{grid-column:1/-1;justify-content:flex-end}.replace-file,.detail-toggle{flex:1}.column-preview,.inline-file-error{margin-left:0}.detail-grid{grid-template-columns:1fr}.wizard-actions{flex-direction:column-reverse;align-items:stretch}.wizard-actions .button,.next-action,.next-action .button{width:100%}.next-action{align-items:stretch}.next-action p{text-align:left}.input-reference>div{grid-template-columns:1fr auto;gap:3px 12px}.input-reference code{grid-column:1/-1}.publish-definition>div{grid-template-columns:1fr;gap:2px}.ai-data-note{align-items:flex-start}.public-url-copy{grid-template-columns:1fr}.public-url-copy .button{width:100%}.saved-flows-panel{padding:20px 18px}.saved-flow-summary{flex-direction:column;gap:8px}.saved-flow-confirmation>div{flex-direction:column-reverse;align-items:stretch}.saved-flow-confirmation .button{width:100%}}@media (max-width:480px){.header-tools{gap:10px}.header-tools>button svg{display:none}.samples-panel{padding:20px 18px}.sample-actions{flex-direction:column;align-items:flex-start}}
