/* Erweiterter grafischer SOLL-Prozesseditor. */
.target-process-node .target-node-text{background:var(--node-color,#f3f6f9)}
.target-process-node .target-node-text:focus{background:var(--node-color,#fff)}
.target-process-canvas .target-connector{fill:none;stroke:#263f78;stroke-width:3;cursor:pointer;pointer-events:stroke}
.target-process-canvas .target-connector:hover,.target-process-canvas .target-connector.selected{stroke:#d86f59;stroke-width:5;filter:drop-shadow(0 0 2px #fff)}

/* SOLL-Prozess & Roadmap: semantische Ebenen, Mehrfachauswahl und Kontextmenü. */
.target-header-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}
.target-process-workspace{overflow:auto}
.target-process-canvas{flex:0 0 auto}
.target-process-node{background:var(--node-color,#f3f6f9)}
.target-process-node textarea{background:color-mix(in srgb,var(--node-color,#f3f6f9) 88%,#fff)}
.target-process-node.selected{z-index:4;outline:3px solid #d86f59;outline-offset:2px;box-shadow:0 0 0 2px #fff,0 6px 16px #102d5840}
.target-process-node.selected [data-target-node-drag]{cursor:move}
.target-process-node.selected:after{content:'';position:absolute;inset:-6px;border:1px dashed #d86f59;pointer-events:none}
.target-process-node.role-technical{border-radius:5px}
.target-process-node.role-technical>header{background:#557863}
.target-process-node.role-process>header{background:#263f78}
.target-process-node.role-usecase>header{background:#7089a8}
.target-selection-marquee{position:absolute;z-index:10;border:1px solid #d86f59;background:#d86f5922;pointer-events:none}
.target-context-menu{position:fixed;z-index:2000;display:none;width:330px;max-height:min(620px,calc(100vh - 24px));padding:8px;border:1px solid #8f9db0;background:#fff;box-shadow:0 8px 24px #102d5840;overflow:auto}
.target-context-menu.open{display:grid;gap:4px}
.target-context-menu strong{padding:3px 5px;color:#263f78;font-size:11px}
.target-context-menu .target-selection-count{padding:0 5px 5px;color:#68778d;font-size:10px}
.target-context-menu button,.target-context-menu label{display:flex;align-items:center;justify-content:space-between;min-height:28px;padding:4px 7px;border:1px solid #c4cfdb;background:#f7f9fb;color:#263451;font-size:10px;font-weight:700;text-align:left}
.target-context-menu button:hover{border-color:#d86f59;background:#fff7f4}
.target-context-menu button.danger{color:#9b493c}
.target-context-menu input[type=color]{width:34px;height:20px;min-height:20px;padding:0;border:0}
.target-context-menu-head{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #d9e0e8;padding:2px 2px 6px}.target-context-menu-head span{color:#263f78;font-size:12px;font-weight:700}.target-context-menu-head button{width:28px;min-height:28px;padding:0;justify-content:center;font-size:17px}.target-context-menu.palette-mode>.target-arrange-grid,.target-context-menu.palette-mode>[data-target-selection-clear],.target-context-menu.palette-mode>[data-target-selection-delete],.target-context-menu.palette-mode>.target-selection-count{display:none}.target-ral-picker{display:grid!important;grid-template-columns:1fr;gap:5px;margin-top:7px}.target-ral-picker select{width:100%;height:30px;border:1px solid #b9c5d4;background:#fff;color:#263451}.target-ral-picker button{justify-content:center!important}.target-ral-note{display:block;margin:5px 2px 0;color:#68778d;font-size:9px;line-height:1.35}
.target-arrange-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.target-arrange-grid button{justify-content:center!important;white-space:normal}
.target-color-palette{min-width:0;margin:4px 0 0;padding:7px;border:1px solid #c4cfdb}.target-color-palette legend{padding:0 4px;color:#263f78;font-size:10px;font-weight:700}.target-color-palette>div{display:flex;flex-wrap:wrap;gap:5px}.target-context-menu .target-color-swatch{display:block;width:27px;height:27px;min-height:27px;padding:0;border:2px solid #fff;border-radius:2px;background:var(--swatch);box-shadow:0 0 0 1px #aebbc9}.target-context-menu .target-color-swatch:hover{border-color:#fff;outline:2px solid #d86f59}.target-color-palette>label{display:flex;margin-top:7px;padding:3px!important}.target-color-palette>label input{width:38px!important;height:25px!important}.target-color-palette>label button{flex:1;justify-content:center}
.target-process-node.selected .target-node-resize{width:16px;height:16px;background:#fff;border:2px solid #d86f59}

/* Prozesskarten entsprechen der Standard-Wertstromvisualisierung. */
.target-process-node.role-process{border:1px solid #c4cfdb;border-top:5px solid var(--phase);background:#fff;box-shadow:none}
.target-process-node.role-process>header{height:31px;padding:3px 5px;border:0;background:#fff;color:#68778d}
.target-process-node.role-process .target-process-department{margin-right:auto;overflow:hidden;color:#68778d;font-size:9px;font-weight:600;line-height:16px;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.target-process-node.role-process .target-node-grip{display:none}
.target-process-node.role-process>header label,.target-process-node.role-process>header button{opacity:.35}
.target-process-node.role-process:hover>header label,.target-process-node.role-process:hover>header button,.target-process-node.role-process.selected>header label,.target-process-node.role-process.selected>header button{opacity:1}
.target-process-node.role-process>header button{border-color:#c4cfdb;background:#fff;color:#263451}
.target-process-node.role-process .target-node-text{height:70px;padding:5px 9px;background:#fff;color:#263451;font-size:15px;font-weight:800;line-height:20px}
.target-process-node.role-usecase{border-top:4px solid #7089a8;box-shadow:none}
.target-process-node.role-usecase>header{height:25px}
.target-process-node.role-usecase .target-node-text{height:77px;font-size:12px;font-weight:700;line-height:16px}
.target-process-node.target-boundary{display:grid;place-items:center;min-width:58px;min-height:58px;border:3px solid #d86f59;border-radius:50%;background:var(--node-color);color:#fff;box-shadow:none}
.target-process-node.target-boundary strong{display:grid;place-items:center;width:100%;height:100%;font-size:9px;cursor:move}
.target-process-node.target-boundary.role-boundary-end{border-color:#d86f59;background:#d86f59}
.target-edge-handle{fill:#fff;stroke:#d86f59;stroke-width:3;cursor:move;pointer-events:all}
.target-edge-handle.bend{fill:#d86f59}
.target-node-grip{margin-right:auto!important;letter-spacing:0!important}
.target-node-symbol{display:grid;place-items:center;min-width:32px;height:22px;margin-right:auto;padding:0 5px;border:1px solid #ffffff66;background:#ffffff16;color:#fff;font-size:11px}
.target-node-color{display:block!important;width:24px;height:24px;margin:0 3px 0 0;border:1px solid #ffffff66!important;background:#fff!important;overflow:hidden;cursor:pointer}
.target-node-color input{width:30px!important;height:30px!important;margin:-4px!important;padding:0!important;border:0!important;background:transparent!important;cursor:pointer}
.target-edge-tools{display:flex;align-items:center;gap:8px}
.target-edge-tools label{display:flex;align-items:center;gap:6px;font-weight:700}
.target-edge-tools select{height:28px;min-height:28px;padding:2px 24px 2px 7px;border:1px solid #dce5f2;background:#fff;color:var(--navy);font:inherit;font-size:11px;font-weight:700}
.target-tech-heading{margin-top:18px}
.target-tech-library{grid-template-columns:repeat(2,minmax(0,1fr))}
.target-process-workspace>aside .target-tech-library button{display:flex;align-items:center;gap:7px;min-height:42px;cursor:grab}
.target-tech-library i{display:grid;place-items:center;flex:0 0 34px;height:28px;background:var(--navy);color:#fff;font-size:11px;font-style:normal;font-weight:800}
.target-tech-library b{white-space:normal!important}
.project-potential-overview>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 46px 12px 14px;background:#eef2f7;cursor:pointer;list-style:none;position:relative}
.project-potential-overview>summary::-webkit-details-marker{display:none}
.project-potential-overview>summary:after{content:'−';position:absolute;right:15px;top:50%;display:grid;place-items:center;width:26px;height:26px;transform:translateY(-50%);border:1px solid #aebbc9;background:#fff;color:var(--navy);font-size:18px;font-weight:800}
.project-potential-overview:not([open])>summary:after{content:'+'}
.project-potential-overview>summary>b{font-size:24px}

/* Zielbild: E2E-Zeile, direktes Scrollband, zugeordnete Use Cases, Legende zuletzt. */
.target-process-editor .target-process-workspace{display:block;overflow:auto hidden;background:#fff;scrollbar-width:none}
.target-process-editor .target-process-workspace::-webkit-scrollbar{display:none}
.target-process-editor .target-process-canvas{min-width:1100px;background-color:#fff;background-image:linear-gradient(#e7edf4 1px,transparent 1px),linear-gradient(90deg,#e7edf4 1px,transparent 1px);background-size:28px 28px}
.target-process-editor .target-process-node.role-process{box-shadow:0 2px 5px #102d5818}
.target-process-editor .target-process-node.role-process .target-node-text{height:calc(100% - 31px);overflow:hidden}
.target-process-editor .target-process-node.role-usecase{border:1px solid color-mix(in srgb,var(--node-color) 68%,#263f78);border-top:5px solid color-mix(in srgb,var(--node-color) 78%,#fff);background:var(--node-color);box-shadow:0 4px 10px #102d5824}
.target-process-editor .target-process-node.role-usecase>header{height:28px;background:color-mix(in srgb,var(--node-color) 75%,#102d58)}
.target-process-editor .target-process-node.role-usecase .target-node-text{height:calc(100% - 28px);padding:10px 12px;background:var(--node-color);color:#fff;font-size:13px;font-weight:700;line-height:18px;overflow:hidden}
.target-process-editor .target-e2e-scroll{position:sticky;left:0;z-index:7;width:100%;height:18px;margin-bottom:-18px;transform:translateY(var(--scroll-band-y));overflow-x:auto;overflow-y:hidden;border-top:1px solid #b9c5d4;border-bottom:1px solid #dce4ee;background:#eef2f7;box-shadow:0 1px 3px #102d5820}
.target-process-editor .target-e2e-scroll>div{height:1px}
.target-source-tray{display:none}
.target-source-tray>strong{color:#263451;font-size:12px}.target-source-tray>span,.target-source-tray>em{color:#68778d;font-size:10px;font-style:normal}
.target-source-tray>button{flex:0 0 auto;height:28px;max-width:240px;padding:3px 9px;border:1px solid #b9c5d4;background:#fff;color:#263451;font-size:10px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:grab}
.target-process-legend{display:flex;align-items:center;gap:12px;min-height:58px;padding:9px 12px;border-top:4px solid #263f78;background:#eef2f7}
.target-process-legend>strong{color:#263451;font-size:14px;white-space:nowrap}.target-process-legend>span{color:#68778d;font-size:10px}
.target-process-legend>div{display:flex;align-items:center;gap:8px;margin-left:auto;overflow-x:auto}
.target-process-legend button{display:flex;align-items:center;gap:7px;height:34px;padding:3px 9px;border:1px solid #aebbc9;background:var(--legend-color);color:#fff;cursor:pointer}
.target-process-legend button i{display:grid;place-items:center;min-width:29px;height:24px;border:1px solid #ffffff66;background:#ffffff20;font-size:10px;font-style:normal;font-weight:800}.target-process-legend button b{font-size:10px;white-space:nowrap}
.target-process-canvas.has-background{background-position:center;background-repeat:no-repeat;background-size:contain}
.target-process-editor .target-header-actions{flex-wrap:wrap;justify-content:flex-end;max-width:min(760px,55%)}
.target-process-editor .target-header-actions button{height:32px;min-height:32px;padding:4px 10px;font-size:10px}

/* Projekt-Roadmap zwischen Zielbild und Potentialtabelle. */
.target-roadmap-grip{width:auto!important;min-width:68px!important;padding:0 6px!important;font-size:9px!important;cursor:grab!important}
.project-roadmap{min-width:0;max-width:100%;border-top:10px solid #f1f4f8;background:#fff}
.project-roadmap>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 14px;border-bottom:1px solid #c4cfdb;background:#eef2f7}
.project-roadmap h3{margin:3px 0;color:#263451;font-size:20px}.project-roadmap p{margin:0;color:#68778d}
.roadmap-controls{display:flex;align-items:center;gap:8px}.roadmap-controls label{display:flex;align-items:center;gap:6px;color:#263451;font-size:11px;font-weight:700;white-space:nowrap}.roadmap-controls select,.roadmap-controls input{height:32px;min-height:32px;padding:3px 8px;border:1px solid #b9c5d4;background:#fff;color:#263451;font:inherit}
.roadmap-scroll{max-width:100%;overflow-x:auto;border-bottom:1px solid #c4cfdb}
.roadmap-grid{display:grid;grid-template-columns:260px repeat(var(--roadmap-columns),minmax(86px,1fr));min-width:max(100%,1200px);background:#fff}
.roadmap-corner,.roadmap-period{position:sticky;top:0;z-index:3;display:grid;place-items:center;min-height:38px;border-right:1px solid #6d7fa1;background:#263f78;color:#fff;font-size:10px;font-weight:700}.roadmap-corner{left:0;z-index:4;justify-content:start;padding-left:12px}
.roadmap-name{position:sticky;left:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:52px;padding:7px 8px 7px 12px;border-right:1px solid #b9c5d4;border-bottom:1px solid #dce4ee;background:#eef2f7;color:#263451}.roadmap-name strong{font-size:11px;line-height:15px}.roadmap-name button{flex:0 0 24px;width:24px;height:24px;min-height:24px;padding:0;border:1px solid #d5a99f;background:#fff;color:#9b493c;font-size:14px}
.roadmap-track{position:relative;display:grid;grid-template-columns:repeat(var(--roadmap-columns),minmax(86px,1fr));min-height:52px;border-bottom:1px solid #dce4ee}.roadmap-track>span{border-right:1px solid #dce4ee}.roadmap-track>span.dragover,.roadmap-period.dragover{background:#d9e8dd}
.roadmap-track article{position:absolute;z-index:2;top:7px;bottom:7px;left:calc(var(--roadmap-start)*100%/var(--roadmap-columns) + 4px);width:calc(var(--roadmap-duration)*100%/var(--roadmap-columns) - 8px);display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 7px;background:var(--roadmap-color);color:#fff;box-shadow:0 2px 5px #102d5828;cursor:grab;overflow:hidden}.roadmap-track article b{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.roadmap-track article label{display:flex;align-items:center;gap:4px;font-size:8px;white-space:nowrap}.roadmap-track article input{width:38px;height:22px;min-height:22px;padding:1px 4px;border:1px solid #ffffff66;background:#fff;color:#263451;font-size:9px}
.roadmap-empty{display:grid;place-items:center;min-height:92px;color:#78869a;font-size:13px;font-weight:700}
.roadmap-empty[data-roadmap-intake]{border:2px dashed #8fa4be;background:#f7f9fb;transition:.12s ease;cursor:copy}.roadmap-empty[data-roadmap-intake].dragover{border-color:#d86f59;background:#fff3ef;color:#263451;box-shadow:inset 0 0 0 2px #fff}
.target-process-node.roadmap-dragging{opacity:.62;outline:3px solid #d86f59;cursor:grabbing}
.global-undo{flex:0 0 auto;height:34px;min-height:34px;padding:3px 10px;border:1px solid #b9c5d4;background:#fff;color:#263451;font-size:11px;font-weight:700;white-space:nowrap}.global-undo:hover:not(:disabled){border-color:#d86f59;background:#fff7f4}.global-undo:disabled{opacity:.42;cursor:default}
.global-history{display:flex;align-items:center;gap:4px;flex:0 0 auto}
.target-color-entry{position:relative;display:inline-grid}.target-color-entry .target-color-remove{position:absolute;right:-4px;top:-5px;display:none;width:15px;height:15px;min-height:15px;padding:0!important;border:1px solid #d5a99f!important;border-radius:50%;background:#fff!important;color:#9b493c;font-size:11px;line-height:12px}.target-color-entry:hover .target-color-remove{display:grid;place-items:center}

/* Projektweite Premium-Hierarchie und konsistentes Aktionsraster. */
.topbar{height:78px;padding:0 18px;gap:12px;border-bottom:1px solid #c6d0dc;box-shadow:0 3px 12px #102d5812}
.topbar .brand{flex:0 0 190px;height:52px;padding:0}.topbar .brand img{width:100%;height:100%;object-fit:contain}
.project-nav{flex:1 1 auto;min-width:0;max-width:none;align-items:stretch;gap:2px;overflow-x:auto;overflow-y:hidden}
.project-nav button{flex:1 0 118px;min-width:118px;max-width:168px;min-height:78px;padding:8px 10px;border-left:1px solid transparent;border-right:1px solid transparent;color:#263451;font-size:13px;font-weight:600;line-height:17px;text-align:center;white-space:normal}
.project-nav button:hover{border-left-color:#e2e8ef;border-right-color:#e2e8ef;background:#f7f9fc}.project-nav button.active{background:linear-gradient(180deg,#fff 0,#f4f7fa 100%)}
.project-nav button small{margin-top:2px;color:#68778d;font-size:9px;line-height:12px}
.global-history{gap:0;border:1px solid #b9c5d4;background:#fff}.global-history .global-undo{height:36px;min-height:36px;border:0;border-right:1px solid #dce4ee}.global-history .global-undo:last-child{border-right:0}
.topbar .help-button,.topbar .global-undo{height:36px;min-height:36px;padding:0 11px}
.topbar .save-status{min-height:36px;display:flex;align-items:center;padding:0 12px;border-left-width:4px}
.topbar .project-badge{flex:0 1 285px;min-width:205px;max-width:285px;min-height:52px;padding:8px 12px;border-left-width:4px}.topbar .project-badge strong{overflow:hidden;text-overflow:ellipsis;white-space:normal;line-height:15px}
.project-notes-page{background:#f4f6f9}.project-notes-intro{position:relative;padding:20px 22px 18px;border:1px solid #d5dde7;border-left:5px solid #d86f59;background:linear-gradient(115deg,#fff 0,#f3f6fa 72%)}.project-notes-intro:after{content:'';position:absolute;right:22px;top:20px;width:54px;height:5px;background:#263f78}
.project-notes-intro h2{font-size:28px;letter-spacing:-.02em}.project-notes-intro p{font-size:13px;line-height:19px}
.target-process-editor>header,.project-roadmap>header{padding:16px 18px;background:linear-gradient(110deg,#eef2f7,#f8fafc)}.target-process-editor>header h3,.project-roadmap h3{font-size:21px;letter-spacing:-.01em}.target-process-editor>header p,.project-roadmap>header p{margin-top:3px;color:#68778d;font-size:12px}
.target-process-editor .target-header-actions{display:grid;grid-template-columns:repeat(3,minmax(126px,1fr));width:min(660px,55%);max-width:660px;gap:7px}.target-process-editor .target-header-actions button{width:100%;height:36px;min-height:36px;padding:4px 9px}
.target-process-editor .target-header-actions .primary{box-shadow:inset 0 -3px 0 #102d5833}.target-process-editor .target-header-actions .secondary:hover{border-color:#d86f59;background:#fff7f4}
@media(max-width:1350px){.topbar{gap:7px;padding-inline:10px}.topbar .brand{flex-basis:150px}.project-nav button{flex-basis:108px;min-width:108px;padding-inline:6px;font-size:12px}.topbar .project-badge{max-width:220px}.global-history .global-undo{font-size:10px}.target-process-editor .target-header-actions{width:min(520px,52%);grid-template-columns:repeat(2,minmax(126px,1fr))}}
.project-potential-overview>summary>[data-potential-table-export]{height:32px;min-height:32px;margin-left:auto;padding:4px 11px;border:1px solid #aebbc9;background:#fff;color:#263451;font-size:10px;font-weight:700}
.project-notes-intro:after{display:none!important}
.target-central-colors{display:flex;align-items:center;justify-content:center;min-height:30px;margin-top:6px;border:1px solid #aebbc9;background:#fff;color:#263451;font-size:10px;font-weight:700;text-decoration:none}
.target-color-palette .target-color-remove,.target-color-palette>label:not(.target-ral-picker){display:none}
