:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#1d2b31;background:#f6f8f9;font-synthesis:none;--green:#13765e;--border:#dfe6e8;--muted:#64767e}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #36b39a;outline-offset:3px}input:focus,textarea:focus,select:focus{outline:2px solid #269a81;outline-offset:1px}[hidden]{display:none!important}.sidebar{position:fixed;width:226px;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--border);padding:30px 20px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;font-size:24px;font-weight:700;letter-spacing:-1px;text-decoration:none;color:#20343b}.brand>span:last-child{color:var(--green)}.brand-mark{display:grid;place-items:center;width:33px;height:33px;background:var(--green);border-radius:9px;color:white;margin-right:10px;font-size:21px}.workspace{display:flex;gap:10px;align-items:center;margin-top:42px;padding-bottom:25px;border-bottom:1px solid var(--border);font-size:13px;font-weight:600}.workspace-icon{padding:9px 11px;background:#edf2f4;border:1px solid #e0e7ea;border-radius:7px}.workspace small,.sidebar-bottom small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:5px}.nav-label{font-size:10px;letter-spacing:1.4px;color:#89979c;margin:30px 10px 12px}.nav-item{display:flex;align-items:center;gap:13px;width:100%;border:0;background:transparent;padding:13px 12px;text-align:left;color:#536870;border-radius:7px;font-size:13px;margin:4px 0}.nav-item>span{font-size:19px}.nav-item small{margin-left:auto;font-size:10px}.nav-item.selected{background:#e8f4ef;color:#12684f;font-weight:600}.sidebar-bottom{margin-top:auto;font-size:12px;color:#405d58}.status-dot{display:inline-block;width:7px;height:7px;background:#289677;border-radius:50%;margin-right:7px}main{margin-left:226px;min-height:100vh;padding:0 42px}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);font-size:12px;color:var(--muted)}.slash{margin:0 12px;color:#b4c1c6}.prototype-tag{font-size:9px;letter-spacing:1.3px;background:#eaf0f2;border:1px solid #dfe7ea;border-radius:5px;padding:7px 10px;color:#63767d}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:38px 0 22px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.7px;color:var(--green);margin-bottom:12px}h1{font-size:34px;font-weight:600;letter-spacing:-1.2px;margin:0 0 12px}p{color:var(--muted);font-size:13px;line-height:1.65;margin:0}h2{font-size:16px;margin:0 0 5px;font-weight:600}.button{border-radius:7px;padding:12px 17px;font-size:12px;font-weight:600;white-space:nowrap}.primary{background:var(--green);color:#fff;border:1px solid var(--green);box-shadow:0 2px 3px #193e2910}.primary span{margin-left:18px}.secondary{background:white;border:1px solid #ccd9dd;color:#27454c;width:100%;margin:12px 0}.preview-notice{font-size:11px;color:#526a74;padding:11px 14px;background:#edf2f5;border-radius:6px;margin-bottom:25px;line-height:1.6}.editor-grid{display:grid;grid-template-columns:minmax(360px,1fr) 330px;gap:28px;align-items:start}.editor{min-width:0}.rule-name-label{font-size:9px!important;letter-spacing:1.3px;color:#7a8b92}.rule-name{background:transparent!important;border:0!important;border-bottom:1px solid var(--border)!important;border-radius:0!important;padding:8px 0 17px!important;font-size:20px!important;font-weight:550;margin-bottom:24px}.step{padding:25px;background:#fff;border:1px solid var(--border);border-radius:11px;margin-bottom:20px;box-shadow:0 2px 4px #20343b03}.step-heading{display:flex;align-items:flex-start;gap:13px;margin-bottom:24px}.step-heading p{font-size:12px}.step-number{border:1px solid #d3e5de;background:#f0f7f3;color:var(--green);border-radius:7px;font-size:12px;font-weight:700;display:grid;place-items:center;width:30px;height:30px;flex-shrink:0}.badge{font-size:8px;font-weight:650;letter-spacing:1px;border:1px solid #dce5e7;border-radius:4px;padding:5px 7px;color:#7c8c92;margin-left:auto}.segmented{display:flex;gap:4px;background:#f1f5f5;padding:4px;border-radius:7px;margin-bottom:21px}.segmented button{border:0;background:transparent;color:#6e8188;flex:1;padding:10px;font-size:11px;border-radius:5px}.segmented button.active{background:white;box-shadow:0 1px 4px #263b3920;color:#1c6755;font-weight:650}label{display:block;font-size:11px;font-weight:600;margin:15px 0 8px}input,textarea,select{width:100%;border:1px solid #d7e1e4;border-radius:6px;padding:10px 11px;background:#fff;color:#334e58;font-size:12px}textarea{resize:vertical}.hint{font-size:10px;line-height:1.65;margin-top:9px;color:#7e8e94}.inline-field{display:flex;gap:10px;align-items:center;margin-top:14px;font-size:11px;color:#627780}.inline-field input{width:75px}.inline-field label{margin:0}.destination{padding-bottom:19px;margin-bottom:20px;border-bottom:1px solid #e7edef}.destination-heading{display:flex;align-items:center;gap:10px;margin-bottom:13px}.destination-heading strong{font-size:12px}.destination-heading .destination-name{font-weight:600;border:0;padding-left:0}.remove{border:0;background:transparent;color:#9b5960;font-size:10px;white-space:nowrap;padding:7px}.field-pair{display:grid;grid-template-columns:90px 1fr;gap:10px}.mapping-label{font-size:9px;letter-spacing:1px;color:#84939a;margin:20px 0 9px}.mapping{display:grid;grid-template-columns:1fr 95px 1.3fr 22px;gap:6px;align-items:center;margin-bottom:7px}.mapping input,.mapping select{font-size:10px;padding:9px 7px;min-width:0}.mapping .remove{padding:4px;font-size:15px}.text-button{border:0;background:transparent;color:var(--green);font-size:11px;font-weight:600;padding:9px 0}.add-button{width:100%;padding:12px;border:1px dashed #b9d4ca;border-radius:6px;background:#f8fcfa;color:var(--green);font-size:11px;font-weight:600}.closing-note{display:flex;align-items:center;gap:12px;font-size:12px;padding:12px 4px}.closing-note>span{font-size:23px;color:#729b8a}.closing-note p{font-size:10px;margin-top:4px}.closing-note button{margin-left:auto;white-space:nowrap}.preview-panel{background:#fff;border:1px solid var(--border);border-radius:11px;padding:23px;position:sticky;top:22px}.preview-heading{display:flex;align-items:center}.preview-heading h2{font-size:13px;margin:0}.preview-panel>p{font-size:11px;margin:13px 0 22px}.preview-panel textarea{font-family:Consolas,monospace;font-size:11px;line-height:1.8;min-height:207px;background:#f7faf9}.preview-panel label{font-size:10px}.preview-footer{font-size:10px;line-height:1.8;border-top:1px solid var(--border);padding-top:17px;margin-top:20px;color:#8a9a9f}.payload-title{font-size:10px;font-weight:600;color:#56776a;margin:18px 0 9px}pre{font:11px/1.8 Consolas,monospace;background:#f0f6f3;color:#2d6553;border:1px solid #e1ebe6;padding:13px;border-radius:6px;white-space:pre-wrap;overflow-wrap:anywhere}#feedback{font-size:11px;line-height:1.7;color:#56776a}#feedback.error{color:#a23a42}.base-card{display:flex;gap:20px;align-items:center;background:#eaf5ef;border:1px solid #cfe3d9;padding:25px;border-radius:10px}.module-icon{font-size:24px;background:#fff;border:1px solid #dce7e1;border-radius:10px;padding:12px;color:var(--green)}.module-disclaimer{font-size:12px;margin:22px 0}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.module-card{background:#fff;border:1px solid var(--border);border-radius:9px;padding:23px}.module-card h2{margin:18px 0 10px}.module-card p{font-size:12px;min-height:66px}.module-state{font-size:9px;letter-spacing:1px;color:#8a969c;margin-top:20px;border-top:1px solid var(--border);padding-top:15px}footer{padding:35px 0;font-size:11px;color:#8b9ba1;display:flex;justify-content:space-between}@media(min-width:1500px){main{padding-left:65px;padding-right:65px}.editor-grid{grid-template-columns:minmax(420px,1fr) 390px;gap:35px}}@media(max-width:1100px){.sidebar{width:185px;padding:25px 15px}main{margin-left:185px;padding:0 24px}.editor-grid{grid-template-columns:1fr}.preview-panel{position:static}.module-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.sidebar{position:static;width:auto;padding:15px}.workspace,.nav-label,.sidebar-bottom{display:none}.sidebar nav{display:flex;margin-top:12px;gap:12px}main{margin-left:0;padding:0 17px}.topbar{height:56px}.page-heading{align-items:flex-start;flex-direction:column;margin-top:26px}h1{font-size:29px}.editor-grid{display:block}.step{padding:18px}.module-grid{grid-template-columns:1fr}.closing-note{flex-wrap:wrap}.mapping{grid-template-columns:1fr 75px 1fr 20px;gap:4px}.prototype-tag{font-size:7px}.preview-panel{margin-top:20px}}
dialog{width:min(760px,92vw);border:1px solid #dfe6e8;border-radius:12px;padding:28px;color:#1d2b31}dialog::backdrop{background:#1d2b3166}dialog textarea{height:45vh;font-family:Consolas,monospace;font-size:11px}.dialog-actions{display:flex;gap:12px;align-items:center;margin-top:15px}.dialog-actions .secondary{width:auto;margin:0}#copy-status{margin-top:12px}
.sources-list{display:grid;gap:15px}.source-card{display:flex;align-items:center;gap:20px;padding:24px;background:#fff;border:1px solid var(--border);border-radius:10px}.source-information{min-width:0}.source-information p{overflow-wrap:anywhere}.source-information small{display:block;color:#84949a;font-size:10px;line-height:1.8;margin-top:8px}.source-actions{display:flex;gap:18px;margin-left:auto}.source-actions button:disabled{opacity:.4;cursor:default}.deployment-summary{margin-top:25px}.deployment-selected{border:2px solid #23846b;background:#f7fcf9}.execution-note{font-size:10px;color:#176f57;background:#edf7f1;padding:10px;border-radius:5px;line-height:1.6}#source-error{color:#a23a42;margin-top:12px}#incoming-source{margin-bottom:4px}.segmented{margin-top:20px}#source-dialog{width:min(570px,92vw)}@media(max-width:650px){.source-card{align-items:flex-start;gap:10px;flex-wrap:wrap}.source-actions{margin-left:0;width:100%}.sidebar nav{flex-wrap:wrap}.sidebar .nav-item{width:calc(50% - 6px)}.deployment-grid{grid-template-columns:1fr}}
.wizard-body{max-width:860px}.wizard-progress{list-style:none;display:flex;gap:18px;padding:0;margin:28px 0;flex-wrap:wrap;font-size:12px;color:#82938f}.wizard-progress li{padding:10px 15px;border-bottom:2px solid #dfe6e8}.wizard-progress li.current{color:#13765e;border-color:#13765e;font-weight:600}.wizard-actions{display:flex;align-items:center;gap:18px;margin:22px 0}.wizard-actions .secondary{width:auto;margin:0}.wizard-actions span{font-size:11px;color:#64767e}.wizard-actions .primary{margin-left:auto}.wizard-body textarea{min-height:230px;font:12px/1.8 Consolas,monospace}.wizard-body .step>p{margin:10px 0 18px}.wizard-body .execution-note{margin-top:15px}.source-actions{flex-wrap:wrap}#receiver-status{margin-top:18px}#receiver-dialog{width:min(780px,94vw)}#receiver-dialog .dialog-actions{flex-wrap:wrap}#receiver-sample{max-height:280px;overflow:auto}@media(max-width:650px){.wizard-progress{gap:4px}.wizard-progress li{padding:8px;font-size:10px}}
.rule-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:28px;align-items:start}.rule-workspace .wizard-body{max-width:none;min-width:0}.rule-graph{position:sticky;top:24px;padding:23px;background:#fff;border:1px solid var(--border);border-radius:11px;min-width:0}.graph-heading{display:flex;align-items:center;gap:10px}.graph-heading .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:7px}.graph-heading h2{font-size:14px;margin:0}.graph-heading .badge{flex-shrink:0}.graph-intro{font-size:11px;margin:15px 0 24px}.graph-node{border:1px solid #dce6e2;border-radius:8px;background:#fbfdfc;padding:14px;position:relative;overflow-wrap:anywhere;transition:border-color .15s,background-color .15s}.graph-node strong{display:block;font-size:12px;line-height:1.5;font-weight:600;margin:6px 0}.graph-kind{font-size:8px;font-weight:650;letter-spacing:1.3px;color:#6f8a7e}.graph-node p{font-size:10px;line-height:1.7;color:#6b7f78}.graph-status{display:block;font-size:9px;color:#789084;margin-top:9px;line-height:1.6}.graph-active{border-color:#399b7b;background:#f1f9f5;box-shadow:0 0 0 3px #e9f5ef}.graph-pending{border-style:dashed;background:#fafbfc}.graph-pending .graph-status{color:#8b7b61}.graph-connector{height:28px;width:1px;background:#bdd5c8;margin:0 auto;position:relative}.graph-connector:after{content:'';position:absolute;bottom:0;left:-3px;width:6px;height:6px;border-right:1px solid #9cbfae;border-bottom:1px solid #9cbfae;transform:rotate(45deg)}.graph-destination-label{text-align:center;font-size:9px;color:#7d9187;margin:12px 0 18px}.graph-destinations{list-style:none;margin:0;padding:0 0 0 17px}.graph-destinations li{position:relative;margin:0;padding:0 0 14px 16px;border-left:1px solid #bdd5c8}.graph-destinations li:before{content:'';position:absolute;top:33px;left:0;width:16px;border-top:1px solid #bdd5c8}.graph-destinations li:last-child{padding-bottom:0;border-left-color:transparent}.graph-destinations li:last-child:after{content:'';position:absolute;top:0;left:-1px;height:33px;border-left:1px solid #bdd5c8}.graph-footer{border-top:1px solid var(--border);padding-top:16px;margin-top:22px;font-size:9px;line-height:1.8;color:#889b91}@media(min-width:1650px){.rule-workspace{grid-template-columns:minmax(0,1fr) 360px;gap:36px}}@media(max-width:1150px){.rule-workspace{grid-template-columns:minmax(0,1fr)}.rule-graph{position:static;max-width:600px;width:100%;margin-top:12px}}@media(prefers-reduced-motion:reduce){.graph-node{transition:none}}
.rule-workspace{grid-template-columns:minmax(460px,1.05fr) minmax(340px,1fr);gap:26px}.rule-graph{padding:0;overflow:hidden;border:1px solid #33425f;background:#1c263b;color:#e8eefb;box-shadow:0 12px 32px #1c263b10;border-radius:14px}.rule-graph .graph-heading{padding:23px 24px 0}.rule-graph .eyebrow{color:#7f9bbd}.rule-graph h2{color:#f0f5ff;font-size:15px}.rule-graph .badge{border-color:#41506d;color:#a8bad6}.rule-graph .graph-intro{padding:0 24px;color:#93a7c6;margin:11px 0 20px}.rule-graph .graph-footer{margin:0;padding:16px 24px;border-color:#33425b;color:#8b9fbf;font-size:10px}.flow-diagram{display:block;width:100%;height:auto;max-height:none}.diagram-kind{fill:#a3b6d2;font:8px 'Segoe UI',sans-serif;letter-spacing:1.6px}.diagram-title{fill:#f1f5ff;font:600 12px 'Segoe UI',sans-serif}.diagram-detail{fill:#9cafd0;font:9px 'Segoe UI',sans-serif}.diagram-edge-label{fill:#9bafd0;font:9px 'Segoe UI',sans-serif;paint-order:stroke;stroke:#1c263b;stroke-width:8px;stroke-linejoin:round}.diagram-next{font-size:10px;color:#9fb2ce;text-align:center;padding:5px 20px 24px;line-height:1.8}.diagram-empty{min-height:340px;padding:70px 35px;text-align:center;background-image:radial-gradient(#657ba12b .7px,transparent .7px);background-size:20px 20px}.diagram-empty-icon{display:block;font-size:45px;font-weight:300;color:#53c9c1;line-height:1.3;margin-bottom:20px}.diagram-empty strong{display:block;font-size:13px;color:#d3dff2}.diagram-empty p{color:#8fa4c4;font-size:11px;margin:12px auto;max-width:220px}@media(max-width:1200px){.rule-workspace{grid-template-columns:minmax(0,1fr)}.rule-graph{position:static;max-width:600px;width:100%}}@media(min-width:1650px){.rule-workspace{grid-template-columns:minmax(460px,1.1fr) minmax(400px,1fr);gap:32px}}
.destination-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0 18px;margin:8px 0 15px;border-bottom:1px solid var(--border)}.destination-position{font-size:11px;font-weight:600;color:#466658;white-space:nowrap}.destination-page-button{border:1px solid #dbe5e0;background:#f7faf8;color:#24654f;border-radius:6px;padding:8px 11px;font-size:10px}.destination-page-button:disabled{opacity:.35;cursor:default}#destinations .destination{border:1px solid #e1e9e5;background:#fbfdfc;border-radius:9px;padding:18px;margin-bottom:18px}#destinations .destination-name{background:transparent}@media(max-width:650px){.destination-pagination{gap:6px}.destination-page-button{padding:8px}.destination-position{font-size:10px}#destinations .destination{padding:12px}}
.rule-view-switch{display:flex;align-items:center;gap:5px;margin:20px 0}.rule-view-switch button{padding:9px 18px;border:1px solid #d8e3dd;border-radius:6px;background:#fff;color:#638074;font-size:12px}.rule-view-switch button[aria-pressed=true]{background:#e7f4ed;border-color:#86bda5;color:#155f45;font-weight:600}.rule-view-switch span{font-size:10px;color:#82978c;margin-left:10px}.graph-toolbar{display:flex;align-items:center;gap:7px;border-top:1px solid #33425b;border-bottom:1px solid #33425b;padding:10px 18px}.graph-toolbar button,.flow-actions button{border:1px solid #435473;background:#28364e;color:#d6e3f7;border-radius:5px;padding:6px 10px;font-size:11px;white-space:nowrap}.graph-toolbar button:disabled{opacity:.35;cursor:default}.graph-toolbar output{min-width:40px;text-align:center;color:#a4b9d8;font-size:10px}.graph-toolbar #graph-expand{margin-left:auto}.flow-actions{display:flex;gap:8px;padding:12px 18px}.flow-actions button{font-size:10px}#connection-graph{height:clamp(240px,42vh,420px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#506381 #1c263b}.graph-stage{display:grid;place-items:center;min-width:100%;min-height:100%}.flow-diagram{display:block;flex-shrink:0;max-width:none;max-height:none}.diagram-empty{min-height:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.diagram-node-hit{cursor:pointer;outline:none}.diagram-node-hit:hover>rect:last-of-type,.diagram-node-hit:focus>rect:last-of-type{fill:#354767;stroke:#e4f2ff;stroke-width:2}.flow-mode .rule-workspace{grid-template-columns:minmax(0,1fr)}.flow-mode .rule-graph{order:1;position:static;max-width:none;width:100%}.flow-mode .wizard-body{order:2}.flow-mode.inspector-open .rule-workspace{grid-template-columns:minmax(0,1fr) minmax(320px,420px)}.flow-mode #connection-graph{height:min(65vh,650px)}#graph-dialog{width:96vw;height:92dvh;max-width:none;max-height:none;padding:0;background:#1c263b;overflow:hidden;border:1px solid #435473}#graph-dialog .rule-graph{position:static;display:flex;flex-direction:column;width:100%;height:100%;max-width:none;border:0;border-radius:0}#graph-dialog #connection-graph{height:auto;flex:1;min-height:0}#graph-dialog .graph-footer{flex-shrink:0}@media(max-width:1000px){.flow-mode.inspector-open .rule-workspace{grid-template-columns:minmax(0,1fr)}.flow-mode.inspector-open .wizard-body{order:1}.flow-mode.inspector-open .rule-graph{order:2}.graph-toolbar{gap:5px;padding:10px 12px}.rule-view-switch span{display:none}}
#node-tray{position:fixed;inset:0 0 0 auto;margin:0;width:min(560px,96vw);max-width:96vw;height:100dvh;max-height:100dvh;border:0;border-left:1px solid #d5e1dc;border-radius:14px 0 0 14px;padding:0;background:#f6f8f9;overflow-y:auto;overscroll-behavior:contain;box-shadow:-18px 0 70px #102c3026}#node-tray[open]{animation:node-tray-enter .2s ease-out}#node-tray::backdrop{background:#11213740}.node-tray-heading{padding:25px 25px 20px;background:white;border-bottom:1px solid #dfe6e8}.node-tray-heading .eyebrow{font-size:9px;margin-bottom:10px}.node-tray-heading h2{font-size:20px;margin-bottom:7px}.node-tray-heading p{font-size:11px}#node-tray .wizard-body{padding:0 22px 22px;max-width:none}#node-tray #close-inspector{position:sticky;top:0;z-index:2;display:block;width:100%;text-align:right;padding:14px 0;background:#f6f8f9}#node-tray .step{padding:18px}#node-tray .wizard-actions{position:sticky;bottom:0;background:#f6f8f9;padding:14px 0;margin-bottom:0;border-top:1px solid #dfe6e8}#node-tray .mapping{grid-template-columns:1fr 90px 1.2fr 22px}#node-tray input,#node-tray select{min-width:0}.flow-mode .rule-workspace{grid-template-columns:minmax(0,1fr)}@keyframes node-tray-enter{from{transform:translateX(100%);opacity:.6}to{transform:translateX(0);opacity:1}}@media(prefers-reduced-motion:reduce){#node-tray[open]{animation:none}}@media(max-width:650px){#node-tray .wizard-body{padding:0 12px 14px}#node-tray .mapping{grid-template-columns:1fr 75px 1fr 20px}}
#connection-graph{cursor:grab;touch-action:none;scrollbar-width:none}#connection-graph::-webkit-scrollbar{display:none}#connection-graph.graph-dragging{cursor:grabbing;user-select:none}#connection-graph.graph-dragging *{cursor:grabbing}#connection-graph .diagram-node-hit{cursor:pointer}
.rules-table-wrap{background:#fff;border:1px solid var(--border);border-radius:10px;overflow-x:auto}.rules-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.rules-table th{padding:15px 18px;background:#f8faf9;border-bottom:1px solid var(--border);font-size:10px;font-weight:600;color:#73877d;white-space:nowrap}.rules-table td{padding:20px 18px;border-bottom:1px solid #edf1ef;color:#536d61}.rules-table tr:last-child td{border-bottom:0}.rules-table .rule-link{border:0;background:none;text-align:left;padding:0;color:#174e39;font-size:13px;font-weight:600;cursor:pointer}.rules-table .rule-link:hover{text-decoration:underline}.rule-status-pill{background:#eef2f5;border:1px solid #dce4ea;color:#687c8c;font-size:9px;padding:4px 8px;border-radius:20px}.rule-row-actions{display:flex;gap:16px;align-items:center;white-space:nowrap}.rules-empty{text-align:center;padding:65px 25px}.rules-empty h2{font-size:18px;margin-bottom:12px}.rules-pagination{display:flex;align-items:center;gap:15px;margin:20px 0;color:#758b80;font-size:11px}.rules-pagination .button{width:auto;margin:0}.rules-pagination span{margin:auto}.rules-pagination button:disabled{opacity:.35;cursor:default}.rule-editor-header{display:flex;align-items:center;gap:18px;margin:24px 0}.rule-editor-header #rule-save-state{margin-left:auto;font-size:11px;color:#7b8e84}.rule-editor-header #save-rule:disabled{opacity:.5;cursor:default}#rules-list-status{font-size:12px;color:#9c4b4b}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.rules-table-wrap{position:relative;max-width:100%;min-width:0}.rules-table th{position:relative}
.rule-header-actions{display:flex;gap:12px;align-items:center}.rule-header-actions .secondary{width:auto;margin:0}.live-test-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin:20px 0}.live-test-actions a{font-size:11px;color:#177355}.trace-step{border:1px solid #dbe8df;background:#f8fcf9;border-radius:7px;padding:14px;margin:12px 0}.trace-step strong{font-size:12px;color:#176849}.trace-step.error strong{color:#a23a42}.trace-step pre{max-height:220px;overflow:auto;font-size:10px}#live-test-status{font-size:12px;color:#526e60;line-height:1.8}@media(max-width:650px){.rule-header-actions{flex-wrap:wrap}}
.schedule-option{display:flex;align-items:center;gap:10px;padding:13px 0;font-size:12px}.schedule-option input{width:16px;height:16px;accent-color:#197b5b}.schedule-option span{margin-left:auto;font-size:10px;color:#8a9b93}.app-message{max-width:440px;width:calc(100vw - 36px);padding:30px;border:1px solid #d7e4dd;border-radius:15px;box-shadow:0 25px 100px #16392e33}.app-message::backdrop{background:#112c2d55;backdrop-filter:blur(3px)}.app-message-icon{display:grid;place-items:center;width:38px;height:38px;background:#edf5f0;color:#217253;border-radius:12px;font-weight:700;margin-bottom:18px}.app-message h2{font-size:21px;line-height:1.4;margin-bottom:12px}.app-message p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.app-message .dialog-actions{justify-content:flex-end;margin-top:25px}.app-message .dialog-actions .secondary{width:auto}.app-message.danger .primary{background:#a44949;border-color:#a44949}.app-message.danger .app-message-icon{background:#faeded;color:#a44949}
.variable-chip{min-width:0;text-align:left;border:1px solid #c4ddd4;background:#eef8f3;color:#176d50;border-radius:8px;padding:10px 12px;cursor:pointer;overflow-wrap:anywhere;font:inherit;font-size:12px}.variable-chip.missing{background:#fff9ed;border-color:#ead6a7;color:#81652a}.variable-dialog{width:min(580px,calc(100vw - 48px))}.variable-dialog #variable-options{max-height:48vh;overflow:auto;margin-top:16px}.variable-group h3{font-size:12px;color:#647c72;text-transform:uppercase;letter-spacing:.06em;margin:20px 0 8px}.variable-choice{display:flex;flex-direction:column;gap:4px;text-align:left;width:100%;padding:12px;border:1px solid #e1ebe5;background:#fff;border-radius:8px;margin:6px 0;cursor:pointer}.variable-choice:hover,.variable-choice:focus-visible{background:#edf7f2;border-color:#1a8569}.variable-choice .hint{overflow-wrap:anywhere;margin:0}.enrichment-intro{border-top:1px solid #dce7e1;margin-top:24px;padding-top:20px}.enrichment-intro h3{font-size:16px}.enrichment-card{border:1px solid #dce7e1;border-radius:12px;padding:18px;margin:12px 0;background:#f9fcfa}.enrichment-card details{margin-top:15px}.enrichment-card summary{font-size:12px;color:#637e70;cursor:pointer}.enrichment-card textarea{margin-top:10px;min-height:130px}.enrichment-card .mapping{margin:10px 0}.enrichment-card .destination-heading input{min-width:0;width:100%}
.loop-config{margin:16px 0;padding:14px;border:1px solid #cde4d9;border-radius:10px;background:#f1f9f5}.loop-config #loop-summary:not(:empty){margin-top:14px;padding-top:14px;border-top:1px solid #cde4d9}.loop-config label{font-size:12px}
.mqtt-topic-diagnostics{margin:16px 0;padding:14px;border:1px solid #d8e6df;border-radius:10px;background:#f5faf7;max-height:220px;overflow:auto}.mqtt-topic-choice{display:grid;gap:5px;padding:10px 0;border-top:1px solid #dde9e2}.mqtt-topic-choice code{overflow-wrap:anywhere;font-size:12px}.mqtt-topic-choice small{color:#6a8175}.mqtt-topic-choice button{justify-self:start}
#source-dialog{max-height:88vh;overflow:auto}#mqtt-connection-options{border-top:1px solid #dce7e1;margin-top:18px;padding-top:14px}#mqtt-connection-options summary,#mqtt-server-setup summary{cursor:pointer;color:#176d50;font-size:13px}#mqtt-server-setup{margin-top:16px;padding:12px;background:#f6faf8;border-radius:8px}#mqtt-extra-settings .schedule-option{margin-top:16px}

#mqtt-wizard-progress { margin: 16px 0; padding: 10px 14px; border-radius: 10px; background: #eef4ff; color: #315a91; font-size: 13px; font-weight: 600; }
#source-dialog { width: min(520px, calc(100vw - 40px)); }
#source-dialog section h3 { margin: 12px 0; }

#source-dialog button[aria-pressed="true"] { background: #e8efff; border-color: #4775d1; color: #264e9f; box-shadow: inset 0 0 0 1px #4775d1; }

#flow-palette { display:flex; gap:8px; align-items:center; padding:10px; flex-wrap:wrap; border-bottom:1px solid #35425b; color:#b8c7de; font-size:12px; }
#flow-palette[hidden] {display:none} #flow-palette button { background:#29354e; color:#e4ecfa; border:1px solid #4c6081; border-radius:8px; padding:7px 10px; cursor:grab; }
.flow-edit-node {cursor:grab;touch-action:none} .flow-edit-node:active {cursor:grabbing} .flow-node-remove {fill:#d8e5fb;cursor:pointer;font-size:20px} .is-live {background:#daf8e8;color:#17683e} .rule-editor-header {flex-wrap:wrap}

.gallagher-action-choices {display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}
.gallagher-action-choice {flex:1;min-width:220px;text-align:left;padding:20px;border:2px solid #687c9a;border-radius:12px;background:transparent;color:inherit;cursor:pointer}
.gallagher-action-choice strong,.gallagher-action-choice span {display:block}.gallagher-action-choice strong{font-size:19px;margin-bottom:8px}.gallagher-action-choice span{font-size:13px}
.gallagher-action-choice[aria-pressed="true"]{border-color:#559be8;background:rgba(85,155,232,.14)}

.mapping,#node-tray .mapping {grid-template-columns:minmax(140px,1fr) minmax(180px,1fr) minmax(140px,1.3fr) 28px;gap:10px}
.mapping input,.mapping select {font-size:13px;padding:10px; width:100%}
.cardholder-change{display:grid;gap:12px;padding:20px;margin:16px 0;border:1px solid var(--border);border-radius:12px;background:#f9fcfa}
.cardholder-change select,.cardholder-change input{width:100%;min-width:0;padding:11px;font-size:14px}
.cardholder-condition{display:grid;gap:10px;grid-template-columns:1fr 1fr;align-items:center;padding:14px;background:#edf7f2;border-radius:8px}
.cardholder-condition label{grid-column:1/-1}
@media(max-width:1000px){.mapping,#node-tray .mapping{grid-template-columns:minmax(0,1fr) minmax(180px,1fr)}.mapping .remove{justify-self:end}}
@media(max-width:600px){.mapping,#node-tray .mapping,.cardholder-condition{grid-template-columns:minmax(0,1fr)}.cardholder-condition label{grid-column:auto}}

.destination{container-type:inline-size}
@container(max-width:640px){.mapping{grid-template-columns:minmax(0,1fr) minmax(180px,1fr)}.mapping .remove{justify-self:end}}
@container(max-width:380px){.mapping{grid-template-columns:minmax(0,1fr)}}

.validation-error{outline:2px solid #b43838;outline-offset:4px;border-radius:10px}

.rule-editor-header{gap:10px;align-items:center}
.rule-editor-header .button,.rule-editor-header .text-button{flex:0 0 auto;width:auto;min-width:0;max-width:100%;margin:0;padding:9px 14px;white-space:nowrap;font-size:13px}
.rule-editor-header #back-to-rules{padding-left:0}

.destination-pagination{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;padding:14px;background:#edf5f1;border:1px solid #c8ddd2;border-radius:10px;margin:16px 0}
.destination-pagination .destination-page-button{min-height:44px;padding:11px 16px;font-size:13px;font-weight:600;white-space:normal}
.destination-pagination .destination-position{font-size:13px;font-weight:700;text-align:center}
.destination-pagination .next-card-button{background:#13765e;border-color:#13765e;color:#fff;box-shadow:0 2px 5px #13765e24}
.destination-pagination .next-card-button:hover:not(:disabled){background:#095a45;border-color:#095a45}
.destination-pagination .destination-page-button:disabled{opacity:1;background:#e6ece8;color:#82938a;border-color:#d6e0da;box-shadow:none}
@media(max-width:650px){.destination-pagination{gap:7px;padding:10px}.destination-pagination .destination-page-button{padding:9px;font-size:12px}.destination-pagination .destination-position{font-size:12px;white-space:normal}}

.destination-pagination{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
.destination-pagination .destination-page-button{width:50%;min-width:112px;justify-self:start;padding:9px 12px}
.destination-pagination .next-card-button{justify-self:end}
@media(max-width:650px){.destination-pagination .destination-page-button{width:auto;min-width:0;padding:9px 10px}}

.source-type-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.source-type-card{display:flex;flex-direction:column;gap:8px;text-align:left;padding:18px;background:#fff;border:1px solid #d5e4dc;border-radius:12px;color:#23483c;cursor:pointer;font:inherit}.source-type-card:hover,.source-type-card:focus-visible{border-color:#16866a;background:#eff9f4;outline:2px solid #a7dfcc}.source-type-card>span:last-child{font-size:12px;color:#647b72;line-height:1.4}.source-type-icon{font-size:23px;color:#16866a}.source-setup-progress{color:#637c70;font-size:13px}.source-setup-review,.message-field-card{padding:16px;border:1px solid #dce7e1;border-radius:10px;margin:12px 0;background:#f8fcf9}.integration-setting{margin:12px 0}.integration-setting input[type=checkbox]{width:auto;margin-left:10px}.message-field-card textarea{min-height:110px}@media(max-width:500px){.source-type-cards{grid-template-columns:1fr}}


#listen-event-type,#listen-source-results{height:220px;min-height:220px;padding:6px;background-image:none}#listen-event-type option,#listen-source-results option{padding:8px 10px}

#module-management{margin-top:32px}#module-management .destination{margin-top:24px}#module-management input[type=checkbox]{width:auto}#module-management pre{white-space:pre-wrap;overflow-wrap:anywhere}.module-card li{margin:6px 0}
/* Compact module library */
#modules-view .modules-heading{margin-bottom:24px;align-items:center}
#modules-view .modules-heading h1{font-size:30px;margin:5px 0 6px}
#modules-view .modules-heading p{font-size:13px;margin:0;color:var(--muted)}
.modules-license-tools{display:flex;align-items:center;gap:10px}
.module-license-pill{font-size:11px;font-weight:600;color:#166650;background:#e7f4ed;border:1px solid #d1e9dc;padding:8px 12px;border-radius:999px}
.module-section-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 14px}
.module-section-heading h2{font-size:18px;margin:0;display:flex;align-items:center;gap:9px}
.module-section-heading p{font-size:12px;color:var(--muted);margin:5px 0 0}
.module-count{font-size:11px;font-weight:600;color:#60716c;background:#e9efec;border-radius:6px;padding:3px 7px}
.carousel-controls{display:flex;gap:7px}
.carousel-arrow{width:33px;height:33px;border:1px solid var(--border);background:#fff;border-radius:50%;color:#29493f;font-size:17px}
.carousel-arrow:disabled{opacity:.3;cursor:default}
.module-carousel{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:2px;padding:2px 2px 12px;scrollbar-width:thin;scrollbar-color:#bdd4c9 transparent}
#modules-view .module-card{position:relative;display:flex;flex-direction:column;border-radius:16px;border:1px solid #dfe8e3;padding:18px;box-shadow:0 3px 12px #203e3010;transition:border-color .18s,box-shadow .18s}
#modules-view .module-card:hover{border-color:#a9cbb9;box-shadow:0 5px 18px #203e3019}
.module-carousel>.module-card{flex:0 0 248px;height:278px;scroll-snap-align:start}
#modules-view .module-card>.module-icon{display:grid;place-items:center;width:38px;height:38px;font-size:20px;padding:0;background:#edf7f1;border:0;border-radius:11px}
#modules-view .module-card h2{font-size:16px;margin:13px 0 7px}
#modules-view .module-card>p{font-size:12px;line-height:1.5;min-height:0;margin:0 0 10px;color:#66796f;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#modules-view .module-state{position:absolute;top:20px;right:16px;margin:0;padding:4px 7px;border:0;border-radius:5px;background:#f1f5f2;color:#5c7567;font-size:9px;letter-spacing:.2px}
#modules-view .module-capabilities{display:flex;flex-wrap:wrap;gap:5px;list-style:none;padding:0;margin:0 0 10px}
#modules-view .module-capabilities li{font-size:9px;line-height:1.4;padding:3px 6px;border-radius:5px;background:#f3f6f4;margin:0;color:#5e7468}
#modules-view .module-card>.text-button{margin-top:auto;align-self:flex-start;font-size:12px;padding:0;color:#13765e;font-weight:600}
.module-explore{margin-top:24px;padding-top:22px;border-top:1px solid #dfe8e3}
.module-marketplace{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:174px;gap:12px;max-height:732px;overflow-y:auto;padding:2px 6px 8px 2px;scrollbar-width:thin}
#modules-view .module-marketplace .module-card{padding:14px;box-shadow:none}
#modules-view .module-marketplace .module-icon{width:30px;height:30px;font-size:17px}
#modules-view .module-marketplace .module-state{top:16px;right:12px}
#modules-view .module-marketplace h2{font-size:14px;margin:10px 0 6px}
#modules-view .module-marketplace .module-capabilities{display:none}
#modules-view .module-marketplace .module-card>p{font-size:11px}
.modules-empty{font-size:13px;color:#3e7460;padding:18px 20px;background:#edf6f0;border:1px dashed #c6dfcf;border-radius:12px;margin:0}
@media(max-width:1100px){.module-marketplace{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#modules-view .modules-heading{align-items:flex-start;gap:14px}.modules-license-tools{align-self:flex-start}.module-license-pill{font-size:10px;padding:7px 9px}.module-marketplace{grid-template-columns:1fr}.module-carousel>.module-card{flex-basis:230px}}
.module-carousel>.module-card{height:248px}

.email-form-tabs{display:flex;gap:8px;margin:20px 0 14px}.email-form-tab{flex:1;padding:11px;border:1px solid #dce7e1;border-radius:8px;background:#f7faf8;color:#61746a}.email-form-tab[aria-pressed=true]{background:#e4f2eb;color:#12654f;border-color:#92c6ac;font-weight:600}.email-form-part{padding:18px;background:#f8fbf9;border:1px solid #e0e9e3;border-radius:12px}.email-form-part h3{margin-top:0}.email-form-part textarea{min-height:130px}.email-form-controls{display:flex;justify-content:space-between;gap:12px;margin-top:18px}

#native-workflow-builder{width:100%;height:min(88vh,1000px);min-height:650px;border:1px solid #29374d;border-radius:12px;display:block;background:#10182a}.native-builder-active>.rule-workspace,.native-builder-active>.wizard-progress,.native-builder-active>.closing-note{display:none!important}.native-builder-active>.page-heading,.native-builder-active>.preview-notice{display:none}.native-builder-active .rule-view-switch{margin:16px 0}

.native-builder-active>.rule-view-switch,.native-builder-active>#save-rule,.native-builder-active>#publish-rule{display:none}.native-builder-active .rule-editor-header>#save-rule,.native-builder-active .rule-editor-header>#publish-rule{display:none}

.managed-module-frame{display:block;width:100%;height:85vh;min-height:650px;border:1px solid #e0e8eb;border-radius:12px;background:white;margin-top:16px}#module-management:has(.managed-module-frame){margin-top:18px}

#modules-view.managed-open>:not(#module-management){display:none}#modules-view.managed-open #module-management{margin-top:0}

.checking-session body{visibility:hidden}.signed-in-account{margin:22px 16px 12px;padding:14px 4px;border-top:1px solid #e0e9e5;font-size:12px;display:flex;flex-direction:column;gap:7px}.signed-in-account span{font-size:11px;color:#799087}.signed-in-account button{border:0;background:transparent;color:#18745c;text-align:left;padding:3px 0;cursor:pointer}

.brand-mark-image{width:42px;height:42px;object-fit:contain;display:block;flex-shrink:0}

/* Native list options use an opaque, readable surface. */
select option,select optgroup{background-color:#fff;color:#243c48;color-scheme:light}
