:root{--canvas:#f3f5f8;--canvas-deep:#edf0f5;--surface:#fff;--surface-raised:#ffffffeb;--surface-muted:#f7f8fa;--surface-subtle:#fafbfc;--editor:#fbfcfe;--ink-950:#141b2a;--ink-900:#1d2739;--ink-800:#324057;--ink-700:#4b5b72;--ink-600:#66748a;--ink-500:#8994a5;--ink-400:#aeb6c2;--line:#e1e5eb;--line-strong:#ced5df;--accent-800:#2949a9;--accent-700:#3358c8;--accent-600:#4169df;--accent-100:#e9efff;--accent-50:#f4f7ff;--green-700:#177254;--green-600:#208263;--green-100:#e6f5ef;--green-50:#f2faf7;--amber-700:#9b6119;--amber-600:#b9771f;--amber-100:#fff2dd;--red-700:#aa383f;--red-600:#c3484f;--red-100:#fdebed;--purple-700:#6e50a2;--purple-100:#f0eafd;--shadow-sm:0 1px 2px #1420380a, 0 6px 18px #1420380a;--shadow-md:0 12px 38px #1420381a, 0 2px 8px #1420380f;--shadow-lg:0 28px 80px #121c3033, 0 7px 24px #121c301a;--radius-sm:9px;--radius-md:13px;--radius-lg:20px;--spring:cubic-bezier(.2, .8, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:100%/1.5 system-ui,-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Hiragino Sans,Yu Gothic UI,Meiryo,sans-serif}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px}body{min-width:320px;color:var(--ink-900);background:var(--canvas);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0}button,input,select,textarea{font:inherit}button,select{color:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline-offset:2px;outline:3px solid #4169df38}button:active:not(:disabled){transition:transform 90ms ease-out;transform:scale(.97)}button:disabled{cursor:not-allowed;opacity:.42}.visually-hidden{clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.button{letter-spacing:-.01em;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 14px;font-size:.76rem;font-weight:720;transition:transform .1s,box-shadow .18s,background .18s,border-color .18s;display:inline-flex}.button.primary{color:#fff;background:linear-gradient(#4c73e5 0%,#335bce 100%);border-color:#274fbf;box-shadow:inset 0 1px #ffffff40,0 5px 14px #3358c83d}.button.primary:hover:not(:disabled){background:linear-gradient(#577be8 0%,#3a62d5 100%);box-shadow:inset 0 1px #ffffff47,0 8px 20px #3358c845}.button.secondary{color:var(--ink-800);border-color:var(--line-strong);background:var(--surface-raised);box-shadow:0 1px 2px #1420380a}.button.secondary:hover:not(:disabled){background:var(--surface);border-color:#aeb9c9}.icon-button{border:1px solid var(--line);width:34px;height:34px;color:var(--ink-600);background:var(--surface-raised);cursor:pointer;border-radius:9px;flex:none;place-items:center;padding:0;transition:transform .1s,color .15s,background .15s,border-color .15s;display:inline-grid}.icon-button:hover:not(:disabled){color:var(--ink-900);border-color:var(--line-strong);background:var(--surface)}.icon-button.compact{border-radius:7px;width:27px;height:27px}.icon-button.danger:hover:not(:disabled){color:var(--red-600);background:var(--red-100);border-color:#f1c4c8}.mini-button{border:1px solid var(--line);min-height:28px;color:var(--ink-600);background:var(--surface);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:4px;padding:0 8px;font-size:.58rem;font-weight:700;transition:transform .1s,color .14s,border-color .14s,background .14s;display:inline-flex}.mini-button:hover:not(:disabled),.mini-button.is-active{color:var(--accent-700);background:var(--accent-50);border-color:#becbf1}.mini-button.icon-only{width:28px;padding:0}.workbench-shell{background:radial-gradient(circle at 58% -12%, #6184e614, transparent 28rem), var(--canvas);min-height:100vh}.app-header{z-index:50;-webkit-backdrop-filter:blur(24px)saturate(165%);backdrop-filter:blur(24px)saturate(165%);background:#f8f9fccc;border-bottom:1px solid #ced5dfd1;grid-template-columns:minmax(250px,1fr) auto minmax(250px,1fr);align-items:center;gap:16px;min-height:66px;padding:9px 15px;display:grid;position:sticky;top:0;box-shadow:0 5px 26px #1c273d0a}.brand-lockup{align-items:center;gap:10px;min-width:0;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#446ee0,#273f9f);border:1px solid #ffffffb3;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff40,0 7px 17px #2c4aa338}.brand-mark>svg:last-child{color:var(--accent-800);background:#fff;border-radius:5px;padding:2px;position:absolute;bottom:5px;right:4px}.brand-lockup>div{min-width:0;display:grid}.brand-lockup strong{color:var(--ink-950);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;line-height:1.28;overflow:hidden}.brand-lockup span:not(.brand-mark){color:var(--ink-500);text-overflow:ellipsis;white-space:nowrap;font-size:.59rem;overflow:hidden}.header-context{justify-content:center;align-items:center;gap:7px;display:flex}.detected-pill,.local-pill{border:1px solid var(--line);min-height:29px;color:var(--ink-600);letter-spacing:.02em;white-space:nowrap;background:#ffffffad;border-radius:999px;align-items:center;gap:5px;padding:0 9px;font-size:.55rem;font-weight:720;display:inline-flex}.detected-pill svg{color:var(--accent-600)}.detected-pill strong{color:var(--accent-700)}.local-pill{color:var(--green-700);background:#eff9f5c2;border-color:#cae4da}.header-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.header-action{min-height:36px}.mobile-area-tabs{display:none}.workbench-layout{grid-template-columns:244px minmax(590px,1fr) 302px;align-items:stretch;min-height:calc(100vh - 66px);display:grid}.source-sidebar,.flow-sidebar{background:#f8f9fbb8;min-width:0;padding:15px 12px}.source-sidebar{border-right:1px solid var(--line)}.flow-sidebar{border-left:1px solid var(--line)}.sidebar-section+.sidebar-section{border-top:1px solid var(--line);margin-top:19px;padding-top:17px}.panel-heading{justify-content:space-between;align-items:center;gap:8px;min-height:31px;margin-bottom:10px;display:flex}.panel-heading>div{min-width:0}.panel-heading small,.eyebrow{color:var(--accent-600);letter-spacing:.13em;font-size:.52rem;font-weight:820;line-height:1.2;display:block}.panel-heading h2{color:var(--ink-900);letter-spacing:-.015em;margin:2px 0 0;font-size:.76rem;line-height:1.25}.panel-heading>span{color:var(--ink-500);background:var(--canvas-deep);border-radius:999px;padding:3px 7px;font-size:.51rem;font-weight:760}.input-methods{background:var(--canvas-deep);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;display:grid}.input-methods button{min-width:0;min-height:31px;color:var(--ink-600);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:4px;padding:0 5px;font-size:.53rem;font-weight:700;display:flex}.input-methods button.is-active{color:var(--accent-700);background:var(--surface);box-shadow:0 1px 5px #18243c1a}.source-file-card{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:9px;padding:10px;display:grid}.source-file-icon{width:31px;height:31px;color:var(--accent-700);background:var(--accent-100);border-radius:9px;place-items:center;display:grid}.source-file-card>div{min-width:0;display:grid}.source-file-card strong{color:var(--ink-800);text-overflow:ellipsis;white-space:nowrap;font-size:.61rem;overflow:hidden}.source-file-card>div span{color:var(--ink-500);font-size:.49rem}.source-validity{align-items:center;gap:3px;font-size:.47rem;font-weight:760;display:inline-flex}.source-validity.good{color:var(--green-700)}.source-validity.bad{color:var(--red-600)}.upload-zone{text-align:left;width:100%;min-height:58px;color:var(--accent-700);background:var(--accent-50);cursor:pointer;border:1px dashed #afbed4;border-radius:11px;align-items:center;gap:9px;margin-top:8px;padding:8px 10px;transition:transform .1s,border-color .15s,background .15s;display:flex}.upload-zone:hover{border-color:var(--accent-600);background:var(--accent-100)}.upload-zone>span{min-width:0;display:grid}.upload-zone strong{color:var(--ink-800);font-size:.59rem}.upload-zone small{color:var(--ink-500);text-overflow:ellipsis;white-space:nowrap;font-size:.48rem;overflow:hidden}.demo-list{gap:5px;display:grid}.demo-list>button{border:1px solid var(--line);text-align:left;min-width:0;min-height:51px;color:var(--ink-500);background:var(--surface);cursor:pointer;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 7px;transition:transform .1s,border-color .15s,box-shadow .15s;display:grid}.demo-list>button:hover{box-shadow:var(--shadow-sm);border-color:#bdc8d8}.demo-icon{border-radius:9px;place-items:center;width:31px;height:31px;display:grid}.demo-icon.blue{color:var(--accent-700);background:var(--accent-100)}.demo-icon.amber{color:var(--amber-700);background:var(--amber-100)}.demo-list>button>span:nth-child(2){min-width:0;display:grid}.demo-list strong{color:var(--ink-800);font-size:.59rem}.demo-list small{color:var(--ink-500);text-overflow:ellipsis;white-space:nowrap;font-size:.48rem;overflow:hidden}.template-list{gap:5px;display:grid}.template-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;align-items:center;min-width:0;padding:3px;display:flex}.template-run{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:7px;min-width:0;padding:5px;display:flex}.template-run>span{width:26px;height:26px;color:var(--accent-700);background:var(--accent-100);border-radius:8px;flex:none;place-items:center;display:grid}.template-run>div{min-width:0;display:grid}.template-run strong{color:var(--ink-800);text-overflow:ellipsis;white-space:nowrap;font-size:.57rem;overflow:hidden}.template-run small{color:var(--ink-500);font-size:.47rem}.privacy-card{color:var(--green-700);background:var(--green-50);border:1px solid #cce4db;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:18px;padding:10px;display:grid}.privacy-card>span{background:var(--green-100);border-radius:8px;place-items:center;width:29px;height:29px;display:grid}.privacy-card div{min-width:0}.privacy-card strong{font-size:.58rem;display:block}.privacy-card p{color:var(--ink-600);margin:1px 0 0;font-size:.48rem;line-height:1.45}.studio-area{background:linear-gradient(#f7f8fbc2,#f2f5f8e0);min-width:0;padding:14px 16px 17px;overflow:hidden}.studio-heading{justify-content:space-between;align-items:center;gap:16px;min-height:55px;margin-bottom:10px;display:flex}.studio-heading>div{min-width:0}.studio-heading h1{color:var(--ink-950);letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:1.03rem;line-height:1.22;overflow:hidden}.studio-heading p{color:var(--ink-500);margin:4px 0 0;font-size:.55rem}.run-button{flex:none;min-height:38px}.editor-stage,.data-preview-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:15px;overflow:hidden}.editor-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid;position:relative}.code-pane{background:var(--editor);min-width:0}.code-pane:first-child{border-right:1px solid var(--line)}.code-pane.has-error{box-shadow:inset 0 0 0 1px #c3484f29}.code-pane-header{border-bottom:1px solid var(--line);background:var(--surface-subtle);justify-content:space-between;align-items:center;gap:8px;min-height:43px;padding:7px 9px;display:flex}.code-pane-header>div:first-child{align-items:center;gap:7px;display:flex}.code-pane-icon{width:28px;height:28px;color:var(--accent-700);background:var(--accent-100);border-radius:8px;place-items:center;display:grid}.code-pane-header>div:first-child>div{display:grid}.code-pane-header small{color:var(--ink-500);letter-spacing:.11em;font-size:.44rem;font-weight:820}.code-pane-header strong{color:var(--ink-800);font-size:.61rem;line-height:1.2}.code-pane-actions{justify-content:flex-end;align-items:center;gap:4px;min-width:0;display:flex}.format-select select{border:1px solid var(--line);width:87px;min-height:28px;color:var(--ink-700);background:var(--surface);cursor:pointer;border-radius:7px;outline:0;padding:0 24px 0 7px;font-size:.56rem;font-weight:720}.format-select select:focus{border-color:var(--accent-600);box-shadow:0 0 0 3px #4169df1a}.indent-control{background:var(--canvas-deep);border-radius:7px;padding:2px;display:flex}.indent-control button{width:24px;min-height:24px;color:var(--ink-500);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:0;font-size:.53rem;font-weight:750}.indent-control button.is-active{color:var(--accent-700);background:var(--surface);box-shadow:0 1px 3px #1420381a}.code-editor-wrap{background:var(--editor);grid-template-columns:40px minmax(0,1fr);height:246px;display:grid}.line-gutter{border-right:1px solid var(--line);height:100%;color:var(--ink-400);background:var(--surface-muted);text-align:right;-webkit-user-select:none;user-select:none;margin:0;padding:11px 8px 11px 0;font:500 .61rem/1.65 ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;overflow:hidden}.code-editor{resize:none;width:100%;height:100%;color:var(--ink-800);caret-color:var(--accent-600);tab-size:2;scrollbar-color:var(--line-strong) transparent;background:0 0;border:0;outline:0;padding:11px 12px;font:500 .64rem/1.65 ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;overflow:auto}.code-editor::selection{color:var(--ink-950);background:#4169df2e}.code-editor[readonly]{color:#28416c}.code-pane-footer{border-top:1px solid var(--line);min-height:27px;color:var(--ink-500);background:var(--surface-subtle);font-variant-numeric:tabular-nums;align-items:center;gap:9px;padding:5px 9px;font-size:.47rem;display:flex}.code-pane-footer strong,.code-pane-footer em{align-items:center;gap:4px;margin-left:auto;font-style:normal;font-weight:720;display:inline-flex}.code-pane-footer strong{color:var(--red-600)}.code-pane-footer em{color:var(--green-700)}.editor-transform-arrow{z-index:4;border:1px solid var(--line-strong);width:29px;height:29px;color:var(--accent-700);background:var(--surface);pointer-events:none;border-radius:999px;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 5px 15px #1e30551f}.editor-status-strip{border-top:1px solid var(--line);min-height:31px;color:var(--ink-500);background:var(--surface-subtle);white-space:nowrap;scrollbar-width:none;align-items:center;gap:12px;padding:6px 9px;font-size:.48rem;display:flex;overflow-x:auto}.editor-status-strip span{align-items:center;gap:4px;display:inline-flex}.editor-status-strip span:last-child{text-overflow:ellipsis;min-width:0;margin-left:auto;overflow:hidden}.status-good{color:var(--green-700)}.status-bad{color:var(--red-600)}.data-preview-card{margin-top:10px}.preview-toolbar{border-bottom:1px solid var(--line);background:var(--surface-subtle);justify-content:space-between;align-items:center;gap:10px;min-height:45px;padding:6px 8px;display:flex}.preview-tabs{background:var(--canvas-deep);border-radius:9px;gap:2px;padding:3px;display:flex}.preview-tabs button{min-height:29px;color:var(--ink-600);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;padding:0 9px;font-size:.56rem;font-weight:700;display:flex}.preview-tabs button.is-active{color:var(--accent-700);background:var(--surface);box-shadow:0 1px 4px #1420381a}.preview-tabs em{min-width:16px;color:var(--red-600);background:var(--red-100);border-radius:999px;padding:1px 4px;font-size:.45rem;font-style:normal}.preview-toolbar-meta{color:var(--ink-500);align-items:center;gap:8px;font-size:.49rem;display:flex}.preview-toolbar-meta strong{border-radius:999px;padding:3px 6px;font-size:.47rem}.preview-toolbar-meta strong.good{color:var(--green-700);background:var(--green-100)}.preview-toolbar-meta strong.bad{color:var(--red-600);background:var(--red-100)}.preview-content{background:var(--surface);overscroll-behavior:contain;scrollbar-color:var(--line-strong) transparent;min-width:0;height:278px;overflow:auto}.tree-view{min-width:430px;padding:7px 0}.tree-row{padding-block:3px;text-align:left;cursor:default;background:0 0;border:0;grid-template-columns:16px minmax(100px,.45fr) minmax(170px,1fr);align-items:center;gap:5px;width:100%;min-height:29px;padding-right:10px;display:grid}.tree-row[aria-expanded]{cursor:pointer}.tree-row:hover{background:var(--accent-50)}.tree-chevron{width:16px;height:16px;color:var(--ink-400);place-items:center;display:grid}.tree-row strong{color:var(--accent-700);text-overflow:ellipsis;white-space:nowrap;font:650 .59rem/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:hidden}.tree-value{color:var(--ink-600);text-overflow:ellipsis;white-space:nowrap;font:500 .58rem/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:hidden}.tree-value.type-string{color:var(--green-700)}.tree-value.type-number{color:var(--accent-700)}.tree-value.type-boolean{color:var(--purple-700)}.tree-value.type-null{color:var(--ink-400);font-style:italic}.table-scroller{width:100%;height:100%;overflow:auto}.data-table{border-collapse:separate;border-spacing:0;min-width:100%;color:var(--ink-700);background:var(--surface);white-space:nowrap;font-size:.56rem}.data-table th,.data-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;text-overflow:ellipsis;max-width:220px;height:35px;padding:0 9px;overflow:hidden}.data-table thead th{z-index:2;height:38px;color:var(--ink-800);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f6f8fbf5;font-weight:760;position:sticky;top:0}.data-table th:first-child{z-index:3;min-width:45px;color:var(--ink-500);background:var(--surface-muted);text-align:center;position:sticky;left:0}.data-table tbody tr:nth-child(2n) td{background:var(--surface-subtle)}.data-table tbody tr:hover td{background:var(--accent-50)}.data-table .empty-cell{height:190px;color:var(--ink-500);text-align:center}.diff-view{min-width:620px}.diff-summary{z-index:2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f9fafcf0;align-items:center;gap:7px;min-height:39px;padding:7px 10px;display:flex;position:sticky;top:0}.diff-summary span{border-radius:7px;align-items:center;gap:4px;padding:3px 7px;font-size:.51rem;font-weight:750;display:inline-flex}.diff-summary .added{color:var(--green-700);background:var(--green-100)}.diff-summary .removed{color:var(--red-600);background:var(--red-100)}.diff-summary .changed{color:var(--amber-700);background:var(--amber-100)}.diff-list{padding:6px 0}.diff-row{border-bottom:1px solid var(--line);grid-template-columns:22px minmax(140px,.7fr) minmax(130px,1fr) 16px minmax(130px,1fr);align-items:center;gap:6px;min-height:33px;padding:5px 10px;font:500 .54rem/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;display:grid}.diff-row:hover{background:var(--surface-muted)}.diff-row strong{color:var(--ink-800);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.diff-row>span:not(.diff-status){color:var(--ink-600);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.diff-status{border-radius:6px;place-items:center;width:20px;height:20px;font-weight:850;display:grid}.diff-row.added .diff-status{color:var(--green-700);background:var(--green-100)}.diff-row.removed .diff-status{color:var(--red-600);background:var(--red-100)}.diff-row.changed .diff-status{color:var(--amber-700);background:var(--amber-100)}.empty-view{min-height:210px;color:var(--green-700);flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex}.empty-view strong{color:var(--ink-700);font-size:.7rem}.validation-view{min-width:640px;padding:10px}.validation-metrics{grid-template-columns:1.2fr repeat(3,1fr);gap:7px;display:grid}.metric-card{border:1px solid var(--line);background:var(--surface-subtle);border-radius:10px;flex-direction:column;justify-content:center;min-height:55px;padding:8px 10px;display:flex}.metric-card strong{color:var(--ink-800);letter-spacing:-.025em;font-size:.85rem;line-height:1.1}.metric-card span{color:var(--ink-500);margin-top:3px;font-size:.47rem}.metric-card.good{background:var(--green-50);border-color:#c7e2d8}.metric-card.good strong{color:var(--green-700)}.metric-card.bad{background:#fff6f6;border-color:#f0cbd0}.metric-card.bad strong{color:var(--red-600)}.validation-content{grid-template-columns:1.25fr .75fr;gap:8px;margin-top:8px;display:grid}.issue-panel,.schema-panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:0;overflow:hidden}.issue-panel>header,.schema-panel>header{border-bottom:1px solid var(--line);background:var(--surface-subtle);justify-content:space-between;align-items:center;gap:8px;min-height:43px;padding:7px 9px;display:flex}.issue-panel header>div,.schema-panel header>div{display:grid}.issue-panel header small,.schema-panel header small{color:var(--accent-600);letter-spacing:.1em;font-size:.42rem;font-weight:820}.issue-panel header strong,.schema-panel header strong{color:var(--ink-800);font-size:.56rem}.issue-panel header>span{color:var(--red-600);background:var(--red-100);border-radius:999px;padding:2px 6px;font-size:.47rem;font-weight:750}.issue-panel ol{max-height:129px;margin:0;padding:0;list-style:none;overflow:auto}.issue-panel li{border-bottom:1px solid var(--line);grid-template-columns:51px 48px 58px minmax(0,1fr);align-items:center;gap:5px;min-height:38px;padding:6px 8px;font-size:.49rem;display:grid}.issue-panel li>strong{color:var(--ink-600);font-size:.47rem}.issue-panel li p{color:var(--ink-700);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.issue-kind{text-align:center;border-radius:5px;padding:2px 4px;font-size:.43rem;font-weight:780}.issue-kind.syntax{color:var(--red-600);background:var(--red-100)}.issue-kind.mapping{color:var(--amber-700);background:var(--amber-100)}.issue-kind.conversion{color:var(--purple-700);background:var(--purple-100)}.validation-empty{min-height:128px;color:var(--green-700);flex-direction:column;justify-content:center;align-items:center;display:flex}.validation-empty strong{color:var(--ink-700);margin-top:5px;font-size:.59rem}.validation-empty span{color:var(--ink-500);font-size:.48rem}.schema-panel pre{height:129px;color:var(--ink-700);background:var(--editor);margin:0;padding:8px;font:500 .47rem/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}.schema-panel header .schema-actions{align-items:center;gap:4px;display:flex}.schema-status{color:var(--ink-500);background:var(--canvas-deep);border-radius:999px;padding:2px 5px;font-size:.42rem;font-weight:760}.schema-status.valid{color:var(--green-700);background:var(--green-100)}.schema-status.invalid{color:var(--red-600);background:var(--red-100)}.schema-editor{resize:none;width:100%;height:129px;color:var(--ink-700);background:var(--editor);border:0;outline:0;padding:8px;font:500 .47rem/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}.schema-editor:focus{box-shadow:inset 0 0 0 2px var(--accent-600)}.schema-empty{text-align:center;height:129px;color:var(--accent-600);flex-direction:column;justify-content:center;align-items:center;padding:14px;display:flex}.schema-empty p{max-width:260px;color:var(--ink-500);margin:6px 0 0;font-size:.48rem;line-height:1.55}.local-ribbon{min-height:42px;color:var(--green-700);background:var(--green-50);border:1px solid #cee4dc;border-radius:11px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:9px;padding:7px 10px;display:grid}.local-ribbon>div{display:grid}.local-ribbon strong{color:var(--ink-700);font-size:.53rem}.local-ribbon div span{color:var(--ink-500);font-size:.45rem}.local-ribbon>span{background:var(--green-100);letter-spacing:.04em;border-radius:6px;align-items:center;gap:3px;padding:3px 6px;font-size:.43rem;font-weight:820;display:inline-flex}.status-link{min-width:0;color:var(--ink-500);font-size:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.status-link:hover{color:var(--accent-700)}.flow-sidebar{position:relative;overflow:visible}.flow-heading{margin-bottom:9px}.flow-source-node,.flow-output-node{border:1px solid var(--line);text-align:left;width:100%;min-width:0;min-height:53px;color:var(--green-700);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px;display:grid}.flow-node-index{width:29px;height:29px;color:var(--accent-700);background:var(--accent-100);border-radius:8px;place-items:center;display:grid}.flow-source-node>div,.flow-output-node>div{min-width:0;display:grid}.flow-source-node small,.flow-output-node small{color:var(--accent-600);letter-spacing:.1em;font-size:.41rem;font-weight:830}.flow-source-node strong,.flow-output-node strong{color:var(--ink-800);text-overflow:ellipsis;white-space:nowrap;font-size:.59rem;overflow:hidden}.flow-source-node em,.flow-output-node em{color:var(--ink-500);text-overflow:ellipsis;white-space:nowrap;font-size:.46rem;font-style:normal;overflow:hidden}.flow-list{gap:7px;margin:7px 0;padding:0;list-style:none;display:grid}.flow-list>li{position:relative}.flow-list>li:before{content:"";z-index:0;border-left:1px dashed #bcc6d4;height:9px;position:absolute;top:-8px;left:18px}.flow-list>li.is-disabled{opacity:.5}.flow-step{z-index:1;border:1px solid var(--line);background:var(--surface);min-width:0;min-height:62px;transition:transform .18s var(--spring), border-color .16s ease, box-shadow .16s ease;border-radius:11px;grid-template-columns:26px 13px minmax(0,1fr) auto;align-items:center;gap:5px;padding:6px;display:grid;position:relative;box-shadow:0 2px 8px #14203809}.flow-step:hover{box-shadow:var(--shadow-sm);border-color:#c3ccda}.flow-step.is-featured{background:linear-gradient(135deg, var(--accent-50), var(--surface));border-color:#c4cff2}.step-toggle{border:1px solid var(--line);background:var(--surface-muted);cursor:pointer;border-radius:7px;place-items:center;width:25px;height:25px;padding:0;display:grid}.step-toggle span{color:#fff;background:var(--accent-600);border-radius:5px;place-items:center;width:19px;height:19px;font-size:.48rem;font-weight:800;display:grid}.step-grip{color:var(--ink-400)}.step-main{text-align:left;cursor:pointer;background:0 0;border:0;min-width:0;padding:1px;display:grid}.step-kind{color:var(--accent-600);letter-spacing:.08em;align-items:center;gap:3px;font-size:.39rem;font-weight:830;display:flex}.step-kind svg{width:11px;height:11px}.step-main strong{color:var(--ink-800);text-overflow:ellipsis;white-space:nowrap;font-size:.57rem;line-height:1.35;overflow:hidden}.step-main small{color:var(--ink-500);text-overflow:ellipsis;white-space:nowrap;font-size:.45rem;overflow:hidden}.step-actions{grid-template-columns:repeat(3,22px);align-self:start;gap:2px;display:grid}.step-actions button{border:1px solid var(--line);width:22px;height:22px;color:var(--ink-500);background:var(--surface);cursor:pointer;border-radius:6px;place-items:center;padding:0;display:grid}.step-actions button:hover:not(:disabled){color:var(--accent-700);background:var(--accent-50)}.step-actions button.danger:hover:not(:disabled){color:var(--red-600);background:var(--red-100)}.mapping-quick-edit{width:calc(100% - 14px);min-height:25px;color:var(--accent-700);background:var(--accent-50);cursor:pointer;border:1px solid #d5dcf3;border-radius:0 0 8px 8px;align-items:center;gap:4px;margin:3px 7px 0;padding:0 7px;font-size:.45rem;font-weight:720;display:flex}.mapping-quick-edit svg:last-child{margin-left:auto}.add-step-wrap{position:relative}.add-step-button{width:100%;min-height:37px;color:var(--accent-700);background:var(--accent-50);cursor:pointer;border:1px dashed #afbed4;border-radius:10px;justify-content:center;align-items:center;gap:5px;font-size:.55rem;font-weight:750;display:flex}.add-step-button:hover{border-color:var(--accent-600);background:var(--accent-100)}.step-menu{z-index:30;border:1px solid var(--line);background:var(--surface-raised);-webkit-backdrop-filter:blur(18px)saturate(150%);backdrop-filter:blur(18px)saturate(150%);box-shadow:var(--shadow-md);animation:pop-in .18s var(--spring) both;transform-origin:bottom;border-radius:11px;grid-template-columns:repeat(2,1fr);gap:3px;padding:5px;display:grid;position:absolute;bottom:calc(100% + 5px);left:0;right:0}.step-menu button{text-align:left;min-width:0;min-height:34px;color:var(--accent-700);cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px;padding:5px 6px;font-size:.49rem;display:grid}.step-menu button:hover{background:var(--accent-50)}.step-menu span{color:var(--ink-700);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.flow-output-node{color:var(--accent-700);background:linear-gradient(135deg, var(--accent-50), var(--surface));cursor:pointer;border-color:#c6d1f1;margin-top:7px}.flow-output-node:before{content:"";border-left:1px dashed #bcc6d4;height:8px;margin-top:-61px;position:absolute;left:30px}.flow-health{border:1px solid var(--line);background:var(--surface-subtle);border-radius:10px;align-items:center;gap:7px;margin-top:8px;padding:8px;display:flex}.flow-health>span{border-radius:8px;place-items:center;width:27px;height:27px;display:grid}.flow-health>span.good{color:var(--green-700);background:var(--green-100)}.flow-health>span.bad{color:var(--red-600);background:var(--red-100)}.flow-health>div{display:grid}.flow-health strong{color:var(--ink-700);font-size:.53rem}.flow-health small{color:var(--ink-500);font-size:.44rem}.save-template-button{border:1px solid var(--accent-600);color:#fff;background:var(--accent-700);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:5px;width:100%;min-height:36px;margin-top:7px;font-size:.54rem;font-weight:750;display:flex}.sheet-backdrop{z-index:100;-webkit-backdrop-filter:blur(9px)saturate(115%);backdrop-filter:blur(9px)saturate(115%);background:#131b2a57;place-items:center;padding:22px;animation:.16s ease-out both backdrop-in;display:grid;position:fixed;inset:0}.mapping-sheet,.template-sheet,.settings-sheet{box-shadow:var(--shadow-lg);animation:sheet-in .28s var(--spring) both;background:#fbfcfef7;border:1px solid #ffffffa8;border-radius:21px;overflow:hidden}.mapping-sheet{grid-template-rows:auto auto minmax(0,1fr) auto auto;width:min(1160px,96vw);max-height:min(820px,94vh);display:grid}.template-sheet{width:min(520px,94vw)}.settings-sheet{grid-template-rows:auto auto minmax(0,1fr) auto;width:min(920px,96vw);max-height:min(760px,94vh);display:grid}.sheet-header{border-bottom:1px solid var(--line);background:#ffffffbd;justify-content:space-between;align-items:center;gap:13px;min-height:65px;padding:12px 15px;display:flex}.sheet-header>div{align-items:center;gap:9px;display:flex}.sheet-icon{width:36px;height:36px;color:var(--accent-700);background:var(--accent-100);border-radius:10px;place-items:center;display:grid}.sheet-header small{color:var(--accent-600);letter-spacing:.12em;font-size:.48rem;font-weight:830;display:block}.sheet-header h2{color:var(--ink-950);letter-spacing:-.025em;margin:1px 0 0;font-size:.91rem;line-height:1.25}.mapping-intro{border-bottom:1px solid var(--line);background:var(--accent-50);justify-content:space-between;align-items:center;gap:12px;min-height:59px;padding:10px 15px;display:flex}.mapping-intro>div{display:grid}.mapping-intro strong{color:var(--ink-800);font-size:.64rem}.mapping-intro span{color:var(--ink-500);font-size:.53rem}.mapping-count{background:var(--accent-100);white-space:nowrap;border-radius:999px;padding:4px 8px;font-weight:750;color:var(--accent-700)!important}.mapping-table-wrap{background:var(--surface);min-height:0;padding:12px 14px 3px;overflow:auto}.mapping-head,.mapping-row{grid-template-columns:26px minmax(150px,1fr) 28px minmax(150px,1fr) 100px minmax(120px,.75fr) 30px;align-items:center;gap:7px;display:grid}.mapping-head{min-width:760px;color:var(--ink-500);padding:0 4px 6px;font-size:.51rem;font-weight:700}.mapping-list{gap:6px;min-width:760px;display:grid}.mapping-row{border:1px solid var(--line);background:var(--surface-subtle);border-radius:10px;min-height:50px;padding:6px 4px;transition:opacity .16s,border-color .16s,background .16s}.mapping-row:hover{background:var(--surface);border-color:#c6cfdd}.mapping-row.is-disabled{opacity:.48}.mapping-row input,.mapping-row select,.form-field input,.form-field textarea{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:36px;color:var(--ink-800);background:var(--surface);border-radius:8px;outline:0;padding:7px 8px;font-size:.59rem;transition:border-color .14s,box-shadow .14s}.mapping-row input:focus,.mapping-row select:focus,.form-field input:focus,.form-field textarea:focus{border-color:var(--accent-600);box-shadow:0 0 0 3px #4169df1a}.field-toggle{cursor:pointer;place-items:center;display:grid}.field-toggle input{opacity:0;pointer-events:none;position:absolute}.field-toggle>span{border:1px solid var(--line-strong);color:#0000;background:var(--surface);border-radius:6px;place-items:center;width:20px;height:20px;display:grid}.field-toggle input:checked+span{color:#fff;border-color:var(--accent-600);background:var(--accent-600)}.field-toggle input:focus-visible+span{outline-offset:2px;outline:3px solid #4169df33}.mapping-arrow{width:27px;height:27px;color:var(--accent-700);background:var(--accent-100);border-radius:999px;place-items:center;display:grid}.add-mapping-button{width:fit-content;min-height:35px;color:var(--accent-700);background:var(--accent-50);cursor:pointer;border:1px dashed #acbad1;border-radius:9px;align-items:center;gap:5px;margin:8px 14px 13px;padding:0 10px;font-size:.57rem;font-weight:720;display:flex}.sheet-footer{border-top:1px solid var(--line);background:#f8f9fbeb;justify-content:space-between;align-items:center;gap:12px;min-height:62px;padding:10px 14px;display:flex}.sheet-footer p{color:var(--ink-500);align-items:center;gap:5px;margin:0;font-size:.51rem;display:flex}.sheet-footer>div{align-items:center;gap:7px;display:flex}.template-sheet-body{background:var(--surface);gap:14px;padding:18px;display:grid}.template-callout{color:var(--accent-700);background:var(--accent-50);border:1px solid #cbd7f2;border-radius:11px;align-items:center;gap:9px;padding:11px;display:flex}.template-callout>div{display:grid}.template-callout strong{color:var(--ink-800);font-size:.64rem}.template-callout span{color:var(--ink-500);font-size:.53rem}.form-field{color:var(--ink-700);gap:5px;font-size:.59rem;font-weight:700;display:grid}.form-field textarea{resize:vertical}.form-field select{border:1px solid var(--line-strong);width:100%;min-height:38px;color:var(--ink-800);background:var(--surface);border-radius:9px;outline:0;padding:7px 9px;font-size:.6rem}.form-field select:focus{border-color:var(--accent-600);box-shadow:0 0 0 3px #4169df1a}.settings-tabs{border-bottom:1px solid var(--line);background:var(--surface-subtle);grid-template-columns:repeat(3,1fr);gap:4px;min-height:49px;padding:7px 12px;display:grid}.settings-tabs button{min-height:34px;color:var(--ink-600);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:.58rem;font-weight:720;display:flex}.settings-tabs button.is-active{color:var(--accent-700);background:var(--surface);box-shadow:0 1px 5px #1420381a}.settings-body{background:var(--surface);min-height:0;padding:18px;overflow:auto}.setting-section{gap:16px;display:grid}.setting-title{justify-content:space-between;align-items:center;gap:15px;display:flex}.setting-title>div{min-width:0}.setting-title small{color:var(--accent-600);letter-spacing:.12em;font-size:.47rem;font-weight:830}.setting-title h3{color:var(--ink-900);letter-spacing:-.025em;margin:3px 0 0;font-size:.84rem;line-height:1.25}.setting-title p{color:var(--ink-500);margin:4px 0 0;font-size:.55rem}.switch{cursor:pointer;align-items:center;gap:6px;display:flex}.switch input{opacity:0;pointer-events:none;position:absolute}.switch>span{background:var(--line-strong);border-radius:999px;width:37px;height:22px;transition:background .15s;position:relative}.switch>span:after{content:"";width:16px;height:16px;transition:transform .18s var(--spring);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #14203840}.switch input:checked+span{background:var(--accent-600)}.switch input:checked+span:after{transform:translate(15px)}.switch input:focus-visible+span{outline-offset:2px;outline:3px solid #4169df33}.switch em{color:var(--ink-600);font-size:.53rem;font-style:normal;font-weight:700}.extract-builder{border:1px solid var(--line);background:var(--surface-subtle);border-radius:12px;grid-template-columns:180px minmax(0,1fr);gap:10px;padding:14px;display:grid}.syntax-help{color:var(--accent-700);background:var(--accent-50);border:1px solid #cbd7f2;border-radius:11px;align-items:flex-start;gap:8px;padding:11px 12px;display:flex}.syntax-help p{margin:0;display:grid}.syntax-help strong{color:var(--ink-700);font-size:.57rem}.syntax-help span{color:var(--ink-500);font-size:.5rem}.logic-control{background:var(--canvas-deep);border-radius:9px;padding:3px;display:flex}.logic-control button{min-width:49px;min-height:29px;color:var(--ink-500);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 8px;font-size:.53rem;font-weight:770}.logic-control button.is-active{color:var(--accent-700);background:var(--surface);box-shadow:0 1px 4px #1420381a}.filter-list{gap:6px;display:grid}.filter-head,.filter-row{grid-template-columns:27px minmax(130px,1fr) minmax(150px,1fr) minmax(110px,.8fr) 45px 29px;align-items:center;gap:6px;min-width:690px;display:grid}.filter-head{color:var(--ink-500);padding:0 5px;font-size:.49rem;font-weight:710}.filter-row{border:1px solid var(--line);background:var(--surface-subtle);border-radius:10px;min-height:49px;padding:6px 5px}.filter-row>span:first-child{color:var(--accent-700);text-align:center;font-size:.53rem;font-weight:780}.filter-row input,.filter-row select{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:35px;color:var(--ink-800);background:var(--surface);border-radius:8px;outline:0;padding:6px 8px;font-size:.56rem}.filter-row input:focus,.filter-row select:focus{border-color:var(--accent-600);box-shadow:0 0 0 3px #4169df1a}.case-toggle{cursor:pointer;place-items:center;display:grid}.case-toggle input{opacity:0;position:absolute}.case-toggle span{border:1px solid var(--line);min-width:31px;height:24px;color:var(--ink-500);background:var(--surface);border-radius:7px;place-items:center;font-size:.48rem;font-weight:750;display:grid}.case-toggle input:checked+span{color:var(--accent-700);background:var(--accent-100);border-color:#bdc9ef}.inline-add-button{width:fit-content;min-height:35px;color:var(--accent-700);background:var(--accent-50);cursor:pointer;border:1px dashed #acbad1;border-radius:9px;align-items:center;gap:5px;padding:0 10px;font-size:.56rem;font-weight:720;display:flex}.csv-settings-grid{border:1px solid var(--line);background:var(--surface-subtle);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;display:grid}.csv-settings-grid .wide{grid-column:1/-1}.local-option{color:var(--green-700);background:var(--green-100);border-radius:999px;align-items:center;gap:4px;padding:4px 7px;font-size:.49rem;font-weight:740;display:inline-flex}.spinner{border:2px solid #fff6;border-top-color:currentColor;border-radius:50%;width:14px;height:14px;animation:.75s linear infinite spin}.tree-overflow{min-height:30px;color:var(--ink-500);background:var(--surface-subtle);padding-block:6px;font-size:.51rem}.virtual-spacer td{background:0 0!important;border:0!important;padding:0!important}@keyframes spin{to{transform:rotate(360deg)}}.toast{z-index:200;border:1px solid var(--line-strong);max-width:min(390px,100vw - 30px);min-height:46px;color:var(--ink-800);-webkit-backdrop-filter:blur(18px)saturate(170%);backdrop-filter:blur(18px)saturate(170%);box-shadow:var(--shadow-md);animation:toast-in .28s var(--spring) both;background:#ffffffe8;border-radius:12px;grid-template-columns:28px minmax(0,1fr) 25px;align-items:center;gap:7px;padding:8px 9px;display:grid;position:fixed;bottom:18px;right:18px}.toast>span{width:28px;height:28px;color:var(--green-700);background:var(--green-100);border-radius:8px;place-items:center;display:grid}.toast p{margin:0;font-size:.61rem;font-weight:650}.toast button{width:25px;height:25px;color:var(--ink-500);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}@keyframes backdrop-in{0%{opacity:0}}@keyframes sheet-in{0%{opacity:0;filter:blur(3px);transform:translateY(16px)scale(.985)}}@keyframes toast-in{0%{opacity:0;transform:translateY(11px)scale(.97)}}@keyframes pop-in{0%{opacity:0;transform:translateY(5px)scale(.98)}}@media (max-width:1320px){.workbench-layout{grid-template-columns:224px minmax(555px,1fr) 282px}.source-sidebar,.flow-sidebar{padding-inline:10px}.studio-area{padding-inline:12px}.header-context .detected-pill{display:none}.app-header{grid-template-columns:minmax(250px,1fr) auto auto}.code-pane-actions{gap:3px}.mini-button{padding-inline:6px}.code-editor-wrap{height:230px}.preview-content{height:260px}}@media (max-width:1080px){.app-header{grid-template-columns:minmax(230px,1fr) auto auto;min-height:62px}.header-context .local-pill{display:none}.mobile-area-tabs{z-index:45;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(20px)saturate(160%);backdrop-filter:blur(20px)saturate(160%);background:#f8f9fce0;grid-template-columns:repeat(3,1fr);gap:4px;min-height:47px;padding:6px 10px;display:grid;position:sticky;top:62px}.mobile-area-tabs button{min-height:34px;color:var(--ink-600);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:5px;font-size:.61rem;font-weight:720;display:flex}.mobile-area-tabs button.is-active{color:var(--accent-700);background:var(--surface);box-shadow:0 1px 5px #1420381a}.workbench-layout{min-height:calc(100vh - 109px);display:block}.source-sidebar,.studio-area,.flow-sidebar{border:0;min-height:calc(100vh - 109px);display:none}.mobile-show-source .source-sidebar,.mobile-show-studio .studio-area,.mobile-show-flow .flow-sidebar{display:block}.source-sidebar,.flow-sidebar{width:min(720px,100%);margin:auto;padding:18px}.studio-area{padding:15px}.source-sidebar .privacy-card{margin-top:24px}.flow-sidebar .flow-list{max-width:720px}.flow-sidebar .save-template-button{margin-bottom:20px}}@media (max-width:760px){.app-header{grid-template-columns:minmax(0,1fr) auto;padding:8px 10px}.brand-mark{border-radius:11px;width:38px;height:38px}.brand-lockup strong{font-size:.71rem}.brand-lockup span:not(.brand-mark),.header-context{display:none}.header-actions{gap:4px}.header-action{width:36px;padding:0}.header-action span{display:none}.mobile-area-tabs{top:58px}.studio-area{padding:12px 9px 16px}.studio-heading{min-height:52px}.studio-heading h1{max-width:66vw;font-size:.84rem}.studio-heading p{font-size:.49rem}.run-button{width:38px;padding:0;font-size:0}.editor-grid{grid-template-columns:1fr}.code-pane:first-child{border-right:0;border-bottom:1px solid var(--line)}.code-editor-wrap{height:220px}.editor-transform-arrow{top:50%;left:50%;transform:translate(-50%,-50%)rotate(90deg)}.code-pane-actions .mini-button span,.icon-only-mobile span{display:none}.code-pane-actions .mini-button{padding-inline:6px}.format-select select{width:82px}.editor-status-strip span:nth-child(2){display:none}.preview-toolbar{flex-direction:column;align-items:stretch}.preview-tabs{grid-template-columns:repeat(4,1fr);display:grid}.preview-tabs button{justify-content:center;min-width:0;padding-inline:5px}.preview-toolbar-meta{justify-content:flex-end;padding:0 3px}.preview-content{height:330px}.local-ribbon div span{display:none}.local-ribbon>span{font-size:0}.local-ribbon>span svg{width:13px;height:13px}.sheet-backdrop{place-items:end center;padding:0}.mapping-sheet,.template-sheet,.settings-sheet{border-radius:21px 21px 0 0;width:100%;max-width:none;max-height:93vh}.mapping-sheet{grid-template-rows:auto auto minmax(0,1fr) auto auto}.mapping-intro span:not(.mapping-count),.mapping-head{display:none}.mapping-list{min-width:0}.mapping-row{grid-template-rows:37px 37px;grid-template-columns:26px minmax(90px,1fr) 25px minmax(90px,1fr) 30px;gap:5px;min-width:0}.mapping-row .field-toggle{grid-area:1/1/3}.mapping-row>input:first-of-type{grid-area:1/2}.mapping-row .mapping-arrow{grid-area:1/3;width:24px;height:24px}.mapping-row>input:nth-of-type(2){grid-area:1/4}.mapping-row select{grid-area:2/2/auto/4}.mapping-row>input:nth-of-type(3){grid-area:2/4/auto/6}.mapping-row>.icon-button{grid-area:1/5}.sheet-footer{align-items:flex-end}.sheet-footer p{max-width:42%}.sheet-footer .button{min-height:36px;padding-inline:11px}.validation-content{grid-template-columns:1fr}.validation-view{min-width:590px}.settings-body{padding:14px 10px;overflow-x:auto}.setting-title{align-items:flex-start}.extract-builder,.csv-settings-grid{grid-template-columns:1fr}.csv-settings-grid .wide{grid-column:auto}}@media (max-width:480px){.source-sidebar,.flow-sidebar{padding:15px 12px}.code-pane-header{align-items:flex-start}.code-pane-header>div:first-child{display:none}.code-pane-actions{justify-content:flex-start;width:100%}.code-pane-actions .mini-button.icon-only{margin-left:auto}.code-pane-actions .mini-button.icon-only+.mini-button.icon-only{margin-left:0}.indent-control{margin-left:auto}.preview-tabs button{font-size:.5rem}.preview-tabs button svg{width:12px;height:12px}.preview-toolbar-meta span:first-child{margin-right:auto}.preview-toolbar-meta span:nth-child(2){display:none}.sheet-header h2{text-overflow:ellipsis;white-space:nowrap;max-width:70vw;font-size:.78rem;overflow:hidden}.mapping-intro{min-height:52px}.mapping-table-wrap{padding-inline:8px}.sheet-footer{flex-direction:column;align-items:stretch}.sheet-footer p{max-width:none}.sheet-footer>div{grid-template-columns:1fr 1fr;display:grid}.toast{max-width:none;bottom:15px;left:15px;right:15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}button:active:not(:disabled){transform:none}.mapping-sheet,.template-sheet,.settings-sheet,.toast,.step-menu{filter:none!important;transform:none!important}}@media (prefers-reduced-transparency:reduce){.app-header,.mobile-area-tabs,.step-menu,.toast,.sheet-header{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}.sheet-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#131b2a9e}}@media (prefers-contrast:more){:root{--line:#8792a4;--line-strong:#626f84}.button.primary,.save-template-button{border:2px solid #172b70}.app-header,.source-sidebar,.flow-sidebar,.editor-stage,.data-preview-card{background:var(--surface)}}@media (prefers-color-scheme:dark){:root{--canvas:#11141a;--canvas-deep:#1b2029;--surface:#1b2028;--surface-raised:#1f252ff0;--surface-muted:#171b22;--surface-subtle:#202630;--editor:#151a22;--ink-950:#f5f7fb;--ink-900:#e8ecf3;--ink-800:#d1d8e5;--ink-700:#b6c0cf;--ink-600:#98a4b6;--ink-500:#7f8b9d;--ink-400:#647083;--line:#303846;--line-strong:#465163;--accent-800:#9cb4ff;--accent-700:#89a7ff;--accent-600:#7698ff;--accent-100:#24345f;--accent-50:#1d2947;--green-700:#77d8b3;--green-600:#5cc69f;--green-100:#183c31;--green-50:#172c27;--amber-700:#efb45f;--amber-600:#d99a45;--amber-100:#45331d;--red-700:#ff969d;--red-600:#ef7b83;--red-100:#472329;--purple-700:#c6a9f7;--purple-100:#372a4d;--shadow-sm:0 1px 2px #0000002e, 0 6px 18px #0000001f;--shadow-md:0 12px 38px #00000052, 0 2px 8px #00000038;--shadow-lg:0 28px 80px #00000075, 0 7px 24px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.workbench-shell{background:radial-gradient(circle at 58% -12%, #5074dc1a, transparent 28rem), var(--canvas)}.app-header,.mobile-area-tabs{border-color:var(--line);background:#181c24d1}.source-sidebar,.flow-sidebar{background:#171b22c2}.studio-area{background:linear-gradient(#13171ee0,#0f1218f0)}.code-editor[readonly]{color:#b8caff}.metric-card.bad{background:#342026}.mapping-sheet,.template-sheet,.settings-sheet{background:#1b2028fa;border-color:#ffffff1a}.sheet-header,.sheet-footer{background:#1f252feb}.toast{background:#1f252ff0}}
