.tool-page{padding-top:var(--spacing-4);padding-bottom:var(--spacing-6)}.tool-header{margin-bottom:32px}.tool-header h1{font-size:2.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:6px}.tool-header .subheadline{font-size:1.25rem;color:var(--color-text-muted);max-width:800px;line-height:1.6}.controls{display:flex;align-items:center;gap:10px;margin-bottom:36px;flex-wrap:wrap}.controls-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted);margin-right:2px}.segmented{display:flex;border:1.5px solid var(--color-border);border-radius:6px;overflow:hidden;background:transparent}.seg-btn{font-family:var(--font-sans);font-size:12px;font-weight:600;padding:7px 15px;border:none;border-right:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all .15s;margin:0}.seg-btn:last-child{border-right:none}.seg-btn:hover{background:#0000000d}:root[data-theme=dark] .seg-btn:hover{background:#ffffff0d}.seg-btn.active{background:var(--color-accent);color:#fff}.divider{width:1px;height:22px;background:var(--color-border);margin:0 4px}.meta-row{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-bottom:36px;padding-bottom:24px}.field label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted);display:block;margin-bottom:6px}.field input{font-family:var(--font-sans);font-size:16px;border:none;border-bottom:1.5px solid var(--color-border);padding:6px 0;background:transparent;width:100%;outline:none;color:var(--color-text);border-radius:0}.field input:focus{border-bottom-color:var(--color-accent)}.diagram-wrapper{width:100vw;position:relative;left:50%;transform:translate(-50%);padding:20px 0}.diagram{display:block;width:max-content;margin:0 auto;padding:0 40px}.flow{display:flex;align-items:center;gap:0;width:max-content;margin:0 auto}.node{border-radius:12px;padding:12px 16px;flex-shrink:0;display:flex;flex-direction:column;min-height:144px;box-sizing:border-box}.node-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);display:block;margin-bottom:6px}.node textarea{font-family:var(--font-sans);font-size:1rem;border:none;background:transparent;outline:none;resize:none;line-height:1.6;color:var(--color-text);width:100%;display:block;padding:0;overflow:hidden;flex-grow:1}.node-antecedent{border:1.5px solid #d97706;background:#d977060a;box-shadow:0 4px 12px #d977060d;width:270px}.node-antecedent .node-label{color:#d97706}:root[data-theme=dark] .node-antecedent{background:#d977061f;border-color:#f59e0b;box-shadow:0 4px 12px #d9770626}:root[data-theme=dark] .node-antecedent .node-label{color:#f59e0b}.split-conn{display:flex;align-items:center;flex-shrink:0}.split-line{height:2px;width:70px;background:var(--color-text-muted)}.seq-conn{height:2px;width:70px;background:var(--color-text-muted);flex-shrink:0}.branches{display:flex;flex-direction:column;align-items:flex-start;gap:36px;flex:1}.branch{display:flex;align-items:center;position:relative}.branch-tap{height:2px;width:70px;background:var(--color-text-muted);flex-shrink:0}.branch:before,.branch:after{content:"";position:absolute;left:0;width:2px;background:var(--color-text-muted)}.branch:before{top:0;bottom:50%}.branch:after{top:50%;bottom:-36px}.branch:first-child:before{display:none}.branch:last-child:after{display:none}.diagram:not(.has-3-branches) .branch:nth-child(2):after{display:none}.node-behavior,.node-consequence{border-radius:12px;padding:12px 16px;width:270px;flex-shrink:0;transition:all .2s ease;display:flex;flex-direction:column;min-height:144px;box-sizing:border-box}.branch-desired .node-behavior,.branch-desired .node-consequence{border:1.5px solid var(--color-accent);background:#1d9e750a;box-shadow:0 4px 12px #1d9e750f}.branch-desired .branch-label-input{color:var(--color-accent)}:root[data-theme=dark] .branch-desired .node-behavior,:root[data-theme=dark] .branch-desired .node-consequence{background:#1d9e7526;border-color:#21b687;box-shadow:0 4px 12px #1d9e7526}:root[data-theme=dark] .branch-desired .branch-label-input{color:#21b687}.branch-problem .node-behavior,.branch-problem .node-consequence{border:1.5px solid #ef4444;background:#ef44440a;box-shadow:0 4px 12px #ef44440d}.branch-problem .branch-label-input{color:#dc2626}:root[data-theme=dark] .branch-problem .node-behavior,:root[data-theme=dark] .branch-problem .node-consequence{background:#ef44441f;border-color:#f87171;box-shadow:0 4px 12px #ef444426}:root[data-theme=dark] .branch-problem .branch-label-input{color:#f87171}.branch-alternative .node-behavior,.branch-alternative .node-consequence{border:1.5px solid #8b5cf6;background:#8b5cf60a;box-shadow:0 4px 12px #8b5cf60d}.branch-alternative .branch-label-input{color:#7c58ed}:root[data-theme=dark] .branch-alternative .node-behavior,:root[data-theme=dark] .branch-alternative .node-consequence{background:#8b5cf61f;border-color:#a78bfa;box-shadow:0 4px 12px #8b5cf626}:root[data-theme=dark] .branch-alternative .branch-label-input{color:#a78bfa}input.branch-label-input{font-family:var(--font-sans);font-size:.65rem!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.08em!important;border:none!important;border-bottom:1px dashed transparent!important;background:transparent!important;outline:none!important;width:100%!important;display:block!important;margin-bottom:6px!important;cursor:text!important;padding:0!important;border-radius:0!important;box-shadow:none!important}input.branch-label-input:hover{border-bottom-color:var(--color-border)!important}input.branch-label-input:focus{border-bottom-color:currentColor!important}.node-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.node-header .branch-label-input{margin-bottom:0}.remove-node-btn{background:transparent;border:none;color:#ccc;cursor:pointer;display:flex;padding:4px;border-radius:4px;transition:all .15s;margin-left:8px}.remove-node-btn:hover{color:#e53e3e;background:#e53e3e1a}.node-behavior textarea,.node-consequence textarea{font-family:var(--font-sans);font-size:1rem;border:none;background:transparent;outline:none;resize:none;line-height:1.6;color:var(--color-text);width:100%;display:block;padding:0;overflow:hidden;flex-grow:1}.node-behavior textarea::placeholder,.node-consequence textarea::placeholder,.node textarea::placeholder{font-size:.9rem;font-style:italic;opacity:.75}.add-node-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;margin:12px;background:transparent;border:1.5px dashed var(--color-border);color:var(--color-text-muted);cursor:pointer;flex-shrink:0;transition:all .15s;padding:0}.add-node-btn:hover{border-color:var(--color-accent);color:var(--color-accent);background:#1d9e750d}.diagram[data-layout=top-down] .flow{flex-direction:column;align-items:center}.diagram[data-layout=top-down] .node-antecedent{width:560px}.diagram[data-layout=top-down] .split-conn{flex-direction:column}.diagram[data-layout=top-down] .split-line,.diagram[data-layout=top-down] .seq-conn{height:60px;width:2px}.diagram[data-layout=top-down] .branches{flex-direction:row;width:100%;justify-content:center;align-items:flex-start;gap:36px}.diagram[data-layout=top-down] .branch{flex-direction:column;flex:1;max-width:290px}.diagram[data-layout=top-down] .branch-tap{width:2px;height:60px}.diagram[data-layout=top-down] .branch:before,.diagram[data-layout=top-down] .branch:after{top:0;bottom:auto;height:2px;width:auto}.diagram[data-layout=top-down] .branch:before{left:0;right:50%}.diagram[data-layout=top-down] .branch:after{left:50%;right:-36px}.diagram[data-layout=bottom-up] .flow{flex-direction:column-reverse;align-items:center}.diagram[data-layout=bottom-up] .node-antecedent{width:560px}.diagram[data-layout=bottom-up] .split-conn{flex-direction:column}.diagram[data-layout=bottom-up] .split-line,.diagram[data-layout=bottom-up] .seq-conn{height:60px;width:2px}.diagram[data-layout=bottom-up] .branches{flex-direction:row;width:100%;justify-content:center;align-items:flex-end;gap:36px}.diagram[data-layout=bottom-up] .branch{flex-direction:column-reverse;flex:1;max-width:290px}.diagram[data-layout=bottom-up] .branch-tap{width:2px;height:60px}.diagram[data-layout=bottom-up] .branch:before,.diagram[data-layout=bottom-up] .branch:after{bottom:0;top:auto;height:2px;width:auto}.diagram[data-layout=bottom-up] .branch:before{left:0;right:50%}.diagram[data-layout=bottom-up] .branch:after{left:50%;right:-36px}@media print{header.header,footer.footer,.no-print{display:none!important}html,body{background:#fff!important;padding:6mm 8mm!important;margin:0!important;height:100%!important;box-sizing:border-box!important}main,.tool-page{margin:0!important;padding:0!important;height:100%!important;box-sizing:border-box!important}.tool-page{max-width:none!important;width:100%!important;min-width:0!important;display:flex!important;flex-direction:column!important}.diagram-wrapper{width:var(--print-wrapper-width, auto)!important;height:var(--print-wrapper-height, auto)!important;left:auto!important;transform:none!important;padding:0!important;overflow:visible!important;margin:0 auto!important;position:relative!important}.diagram{transform:scale(var(--print-diagram-scale, 1))!important;transform-origin:top center!important;width:max-content!important;margin:0 auto!important;padding:0!important}.print-footer{display:flex!important;justify-content:flex-end!important;align-items:center;position:fixed!important;bottom:6mm!important;left:8mm!important;right:8mm!important;padding-top:6px!important;border-top:1px solid var(--color-border)!important;background:#fff!important}.print-footer-brand{font-size:8px;font-weight:600;color:var(--color-accent);text-transform:uppercase;letter-spacing:.05em}.meta-row{margin-bottom:18px;padding-bottom:14px}.field label{color:#555!important}.field input{font-size:12px;color:#000!important;border-bottom-color:#ccc!important}.diagram,.diagram *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.node-antecedent{border-color:#d97706!important;box-shadow:none!important}.branch-desired .node-behavior,.branch-desired .node-consequence{border-color:var(--color-accent)!important;box-shadow:none!important}.branch-problem .node-behavior,.branch-problem .node-consequence{border-color:#ef4444!important;box-shadow:none!important}.branch-alternative .node-behavior,.branch-alternative .node-consequence{border-color:#8b5cf6!important;box-shadow:none!important}.split-line,.branch-tap,.branch:before,.branch:after,.seq-conn{background:#666!important}.node textarea,.node-behavior textarea,.node-consequence textarea{color:#000!important}.branch-label-input{border-bottom-color:transparent!important}}
