:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#15283b;background:#f8fafb;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}.app-shell{min-height:100vh}.icon{flex:none}.topbar{height:60px;display:flex;align-items:center;gap:28px;padding:0 26px;background:#fff;border-bottom:1px solid #dce4e9;box-shadow:0 2px 9px #19344a08}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand strong{font-family:Georgia,Times New Roman,serif;font-size:26px;letter-spacing:-1.15px;color:#082e37}.brand-symbol{height:29px;width:29px;border-radius:9px;background:#d8f7ed;display:grid;place-items:center;color:#18a98b}.tagline{font-size:15px;color:#31485d;white-space:nowrap}.top-actions{margin-left:auto;display:flex;align-items:center;gap:9px}.primary-button,.soft-button{border:1px solid #dce4e9;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:37px;padding:0 13px;font-size:13px;font-weight:650;white-space:nowrap;transition:background .16s,border-color .16s,transform .16s}.primary-button{border-color:#06646c;background:#06646c;color:#fff;box-shadow:0 2px 4px #0a595c25}.primary-button:hover:not(:disabled){background:#07545c;transform:translateY(-1px)}.soft-button{background:#fff;color:#203b50}.soft-button:hover:not(:disabled){background:#eff8f7;border-color:#8dc9c2}.workspace{display:grid;grid-template-columns:minmax(310px,26.5%) minmax(470px,39%) minmax(340px,34.5%);min-height:calc(100vh - 60px)}.steps-panel,.graph-panel,.audit-panel{min-width:0;padding:20px 19px 24px}.steps-panel,.graph-panel{border-right:1px solid #dde6ea}.steps-panel{background:#fbfcfd}.graph-panel{background:#fdfefe;padding-left:17px;padding-right:17px}.audit-panel{background:#fff;padding-left:20px;padding-right:20px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:15px}.panel-heading h1,.panel-heading h2,.audit-heading h2,.sim-head h3{font-family:Georgia,Times New Roman,serif;color:#142539;letter-spacing:-.6px;margin:0 0 4px}.panel-heading h1,.panel-heading h2,.audit-heading h2{font-size:23px}.panel-heading p,.audit-heading p,.sim-head p{margin:0;font-size:13px;line-height:1.45;color:#68798e}.panel-heading .soft-button{margin-top:2px}.step-list{display:flex;flex-direction:column;gap:10px}.step-card{border:1px solid #dce5eb;border-radius:9px;background:#fff;box-shadow:0 2px 4px #1a344407;padding:12px}.step-card.selected{border-color:#b5dcd7;box-shadow:0 3px 11px #0c766410}.step-card-head{border:0;background:transparent;padding:0;width:100%;display:flex;align-items:flex-start;gap:11px;text-align:left;color:#1d2d41}.step-number{background:#e6f2ff;color:#247bb7;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:15px;font-weight:750;flex:none}.step-title-wrap{flex:1;min-width:0}.step-title-wrap strong{display:block;font-size:16px;line-height:1.2}.step-title-wrap small{display:block;color:#657b91;font-size:12px;margin-top:2px;line-height:1.3}.step-chevron{font-size:20px;color:#6a8295;line-height:1}.step-tags{display:flex;gap:5px;margin:10px 0 0 43px;flex-wrap:wrap}.step-tags span{border-radius:13px;background:#f0f3f7;color:#5b7186;padding:4px 9px;font-size:11px;font-weight:600}.step-details{margin:10px 0 0}.field-row{display:flex;align-items:center;gap:7px;border:1px solid #e1e8ed;border-radius:6px;padding:6px;background:#fff;margin-bottom:5px}.field-row>input{flex:1;min-width:60px;border:0;outline:0;font-size:12px;color:#243a4b}.field-row label{white-space:nowrap;font-size:11px;color:#577087;display:flex;align-items:center;gap:3px}.field-row input[type=checkbox]{accent-color:#08777b}.add-field{width:100%;border:1px solid #e1e8ed;background:#f9fbfc;border-radius:6px;min-height:29px;display:flex;align-items:center;justify-content:center;gap:4px;font-size:12px;color:#315168;font-weight:650}.add-field:hover{background:#eef8f7}.step-note{font-size:11px;color:#74899b;margin:4px 0 0 43px}.route-selects{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:7px}.route-selects label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#526b7f;font-weight:650}.route-selects select{width:100%;border:1px solid #dce5ea;background:#fff;border-radius:6px;padding:5px 4px;color:#28465a;font-size:11px}.graph-tools .soft-button{font-size:12px}.graph-scroll{overflow-x:auto;overflow-y:hidden;border:1px solid #e5ecef;border-radius:8px;background-color:#fff;background-image:linear-gradient(#eaf0f3 1px,transparent 1px),linear-gradient(90deg,#eaf0f3 1px,transparent 1px);background-size:18px 18px}.graph-canvas{position:relative;width:520px;margin:0 auto}.graph-lines{position:absolute;inset:0}.graph-node{position:absolute;transform:translate(-50%,-50%);width:200px;min-height:70px;display:flex;align-items:center;gap:10px;padding:10px 12px;text-align:left;background:#f0f8f7;color:#19364b;border:1.5px solid #26aa92;border-radius:11px;box-shadow:0 2px 7px #0b4c530d}.graph-node.form{background:#f1f7ff;border-color:#68a9e9}.graph-node.decision{background:#f5f2ff;border-color:#a290e7;clip-path:polygon(0 50%,50% 0,100% 50%,50% 100%);width:205px;min-height:98px;border-radius:0;justify-content:center;padding:13px 30px}.graph-node.decision .node-index{background:#a191df}.graph-node.end{background:#edf9f6;border-color:#22a58a}.graph-node.dead{background:#fff3f3;border-color:#e15a5a}.graph-node.selected{outline:3px solid #0c68654a;outline-offset:3px}.graph-node strong{display:block;font-size:13px;line-height:1.2}.graph-node small{display:block;margin-top:3px;font-size:11px;line-height:1.25;color:#546e80}.node-index{border-radius:50%;background:#72ade6;color:#fff;width:27px;height:27px;display:grid;place-items:center;font-size:13px;font-weight:750;flex:none}.graph-node.start .node-index,.graph-node.end .node-index{background:#2f9e85}.graph-node.dead .node-index{background:#d63535}.graph-key{position:absolute;bottom:11px;left:13px;display:flex;gap:10px;flex-wrap:wrap;border:1px solid #e7ebee;background:#fffdfdee;border-radius:7px;padding:8px 9px;box-shadow:0 2px 6px #0a2a3f0e}.graph-key span{font-size:10px;color:#5b7081;display:flex;align-items:center;gap:4px}.line{height:2px;width:17px;display:inline-block;background:#168f81}.line.red{background:#dc4b4b}.diamond{height:10px;width:10px;transform:rotate(45deg);border:2px solid #a290e7;display:inline-block}.audit-heading{margin:4px 0 14px}.audit-heading h2{margin-bottom:11px}.audit-heading p strong{font-size:15px;color:#1e3447}.audit-tabs{display:flex;gap:6px;margin-bottom:12px}.audit-tabs button{border:1px solid #e0e6eb;background:#fff;color:#647789;border-radius:6px;padding:8px 11px;font-size:12px;font-weight:650;white-space:nowrap}.audit-tabs button.active{background:#08666b;border-color:#08666b;color:#fff}.finding-list{display:flex;flex-direction:column;gap:9px;min-height:120px}.finding{border:1px solid #f0cccc;border-radius:8px;background:#fff9f9;padding:13px;display:flex;gap:10px}.finding.warning{border-color:#f0dbb7;background:#fffbf2}.finding-icon{color:#d32f2f;background:#ffeded;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:none}.finding.warning .finding-icon{color:#b6780c;background:#fff1d7}.finding-top{display:flex;align-items:flex-start;justify-content:space-between;gap:5px}.finding h3{font-size:13px;line-height:1.25;margin:0;color:#23394c}.finding-top span{font-size:10px;font-weight:750;text-transform:uppercase;color:#b32d2d;background:#ffe8e8;border-radius:11px;padding:3px 7px}.finding.warning .finding-top span{color:#9c6610;background:#fff0d0}.finding p{font-size:11px;line-height:1.42;color:#65798a;margin:7px 0}.finding button{border:0;background:transparent;padding:0;color:#087277;font-size:11px;font-weight:750;display:flex;align-items:center;gap:3px}.all-clear{min-height:120px;border:1px solid #c6e6dc;background:#f6fcfa;border-radius:8px;color:#168b75;padding:20px;display:flex;flex-direction:column;gap:5px}.all-clear strong{color:#203d45;font-size:13px}.all-clear p{color:#607a7c;font-size:11px;margin:0}.simulator{border-top:1px solid #e3e9ed;margin-top:20px;padding-top:16px}.sim-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.sim-head h3{font-size:20px}.sim-head p{font-size:11px}.sim-head .soft-button{min-height:30px;padding:0 8px;font-size:11px}.progress-track{display:flex;justify-content:space-between;gap:1px;margin:22px 0 15px;position:relative}.progress-track:before{content:"";position:absolute;top:13px;left:5%;right:5%;border-top:2px solid #d9e4ea}.progress-track span{z-index:1;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:43px;color:#80909b}.progress-track b{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #ccd8de;font-size:11px}.progress-track span.done b{background:#168f81;border-color:#168f81;color:#fff}.progress-track small{font-size:10px;color:#415668}.sim-card{border:1px solid #dfe7eb;border-radius:8px;padding:13px;background:#fff;box-shadow:0 2px 6px #153f5208}.sim-card>strong{font-size:13px}.sim-card>p{font-size:11px;color:#66798a;margin:3px 0 10px}.sim-card fieldset{border:0;padding:0;margin:7px 0 0;display:flex;flex-direction:column;gap:7px}.sim-card legend{font-size:11px;font-weight:700;padding:0;margin-bottom:7px}.sim-card fieldset label{font-size:11px;display:flex;align-items:center;gap:5px}.sim-card input[type=radio]{accent-color:#0b7c78}.sim-input{font-size:11px;font-weight:700;display:flex;flex-direction:column;gap:4px}.sim-input input{padding:8px;border:1px solid #cbd9df;border-radius:5px;font-size:12px}.sim-input small{color:#b23d3d;font-weight:500}.review-value{border-radius:5px;background:#f3f8fa;padding:8px}.sim-actions{display:flex;justify-content:space-between;margin-top:13px}.sim-actions .soft-button,.sim-actions .primary-button{min-height:31px;font-size:11px}.audit-disclaimer{font-size:10px;color:#84919c;line-height:1.4;margin-top:13px}.toast{position:fixed;bottom:18px;right:18px;z-index:10;background:#173e47;color:#fff;border-radius:8px;padding:10px 10px 10px 14px;display:flex;gap:9px;align-items:center;box-shadow:0 8px 22px #0a28344f;font-size:12px}.toast button{border:0;background:transparent;color:#fff;display:grid;place-items:center;padding:2px}@media(max-width:1320px){.workspace{grid-template-columns:minmax(290px,29%) minmax(430px,39%) minmax(310px,32%)}.topbar{gap:16px;padding:0 15px}.tagline{font-size:13px}.top-actions .soft-button,.top-actions .primary-button{padding:0 9px;font-size:12px}}@media(max-width:1120px){.workspace{grid-template-columns:minmax(300px,38%) minmax(500px,62%)}.audit-panel{grid-column:1/-1;border-top:1px solid #dce5e9;display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.audit-heading,.audit-tabs,.finding-list{grid-column:1}.simulator{grid-column:2;grid-row:1/span 3;margin-top:0;border-top:0;padding-top:3px}.audit-disclaimer{grid-column:1/-1}.tagline{display:none}}@media(max-width:760px){.topbar{height:auto;min-height:58px;flex-wrap:wrap;padding:10px 14px;gap:9px}.brand strong{font-size:22px}.top-actions{order:2;width:100%;justify-content:space-between;margin-left:0}.top-actions .soft-button,.top-actions .primary-button{font-size:11px;min-width:0}.workspace{display:block}.steps-panel,.graph-panel,.audit-panel{border-right:0;border-bottom:1px solid #dce5e9;padding:16px 14px}.steps-panel{max-height:none}.graph-canvas{margin-left:0}.audit-panel{display:block}.simulator{margin-top:18px;border-top:1px solid #e3e9ed;padding-top:16px}.toast{left:14px;right:14px;bottom:14px}.panel-heading h1,.panel-heading h2,.audit-heading h2{font-size:21px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
