/* Configuration maps use the existing workspace palette and native editors. */
.setup-map-studio{display:grid;grid-template-columns:240px minmax(0,1fr);gap:20px;align-items:start;min-width:0}
.setup-map-studio :where(h3,h4,p){margin:0}
.setup-map-studio :where(h3,h4,strong,p,small){overflow-wrap:anywhere}
.setup-map-studio .icon{flex-shrink:0}
.setup-map-library{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:16px;min-width:0;position:sticky;top:20px}
.setup-map-library>header,.setup-map-details>header{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.setup-map-library h3{font-size:16px;line-height:1.5}
.setup-map-library small{color:var(--muted);font-size:12px;line-height:1.6}
.setup-map-search{display:flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:10px;padding-inline:10px;min-height:44px;background:var(--bg)}
.setup-map-search input{border:0;background:transparent;min-width:0;width:100%;padding:10px 0;font:inherit;font-size:12px;color:var(--ink);outline-offset:3px}
.setup-map-search .icon{width:17px;height:17px;color:var(--muted)}
.setup-map-filter{display:flex;align-items:center;gap:8px;margin:10px 0 16px;font-size:12px;color:var(--muted)}
.setup-map-filter select{flex:1;min-width:0;min-height:40px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);padding:8px;font:inherit}
.setup-map-library nav{display:grid;gap:6px;max-height:65vh;overflow:auto;scrollbar-width:thin}
.setup-map-library-item{display:flex;gap:10px;padding:12px 10px;min-height:60px;border:1px solid transparent;border-radius:12px;color:var(--ink);text-decoration:none;background:var(--surface)}
.setup-map-library-item>span:last-child{display:grid;gap:4px;min-width:0;flex:1}
.setup-map-library-item strong{font-size:13px;line-height:1.6}
.setup-map-library-item.active{border-color:var(--brand);background:var(--tint)}
.setup-map-library-item:hover{background:var(--tint)}
.setup-map-item-icon{color:var(--brand);padding-block-start:3px}
.setup-map-item-icon .icon{width:17px;height:17px}
.setup-map-library [hidden]{display:none!important}
.setup-map-library>p{font-size:13px;padding-block:16px;color:var(--muted)}
.setup-map-badge{display:inline-flex;align-items:center;justify-self:start;width:fit-content;border-radius:6px;padding:3px 7px;line-height:1.5;font-size:10px;font-weight:700;background:var(--bg);color:var(--muted);white-space:normal}
.setup-map-badge.published{background:var(--tint);color:var(--brand)}
.setup-map-badge.draft{background:color-mix(in srgb,var(--gold) 14%,var(--surface));color:var(--ink);border:1px solid color-mix(in srgb,var(--gold) 30%,var(--line))}
.setup-map-main{min-width:0;display:grid;gap:24px}
.setup-map-designer{border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden;min-width:0}
.setup-map-toolbar{display:flex;gap:16px;justify-content:space-between;align-items:start;padding:22px;border-bottom:1px solid var(--line)}
.setup-map-toolbar>div:first-child{min-width:0;flex:1}
.setup-map-toolbar .eyebrow{font-size:10px;letter-spacing:.04em;color:var(--brand);font-weight:700}
.setup-map-toolbar h3{font-size:21px;line-height:1.5;margin-top:4px}
.setup-map-toolbar p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:6px}
.setup-map-toolbar .admin-actions{justify-content:end;flex-wrap:wrap;max-width:45%;margin:0}
.setup-map-readiness{display:flex;align-items:center;gap:10px;padding:12px 22px;background:var(--tint);border-bottom:1px solid var(--line);font-size:12px;line-height:1.8;color:var(--ink)}
.setup-map-readiness>span:first-of-type{flex:1;min-width:0}
.setup-map-readiness>.icon{width:18px;height:18px;color:var(--brand)}
.setup-map-canvas{padding:24px;background-color:var(--bg);background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:18px 18px;min-width:0}
.setup-map-branch{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;min-width:0}
.setup-map-branch>header{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:14px}
.setup-map-branch h4{font-size:14px;line-height:1.7;color:var(--ink)}
.setup-map-branch>header>.btn{flex-shrink:0;max-width:60%;white-space:normal}
.setup-map-branch+.setup-map-branch{margin-block-start:16px}
.setup-map-branch-nodes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;min-width:0}
.setup-map-node{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface);min-width:0;align-self:start}
.setup-map-node-title{display:flex;gap:12px;align-items:start}
.setup-map-node-title>div{min-width:0;flex:1}
.setup-map-node .icon-tile{width:34px;height:34px;flex-shrink:0;border-radius:10px}
.setup-map-node .icon-tile .icon{width:18px;height:18px}
.setup-map-node h4{font-size:15px;line-height:1.6}
.setup-map-node small{font-size:10px;color:var(--muted);line-height:1.6;display:block;margin-bottom:4px}
.setup-map-node-link{color:var(--ink);text-decoration:none}
.setup-map-node-link:hover{text-decoration:underline;text-underline-offset:4px;color:var(--brand)}
.setup-map-node>p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:12px}
.setup-map-node.focus{max-width:560px;margin-inline:auto;border-color:var(--brand);background:var(--tint);box-shadow:0 4px 12px color-mix(in srgb,var(--brand) 6%,transparent)}
.setup-map-node.focus h4{font-size:20px}
.setup-map-node-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.setup-map-studio .btn{min-height:36px;height:auto;font-size:12px;padding:8px 12px;white-space:normal;gap:6px}
.setup-map-node-actions .btn{min-height:36px}
.setup-map-join{display:flex;flex-direction:column;align-items:center;gap:5px;padding:5px;min-height:64px;color:var(--muted);font-size:10px;line-height:1.6;text-align:center}
.setup-map-join i{height:10px;border-left:1px solid var(--brand);opacity:.5}
.setup-map-join i:last-child{position:relative;height:12px}
.setup-map-join i:last-child:after{content:"";position:absolute;width:5px;height:5px;border-bottom:1px solid var(--brand);border-right:1px solid var(--brand);transform:rotate(45deg);bottom:0;left:-3px}
.setup-map-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;align-items:start}
.setup-map-two>.setup-map-branch{margin:0}
.setup-map-two .setup-map-branch-nodes{grid-template-columns:1fr}
.setup-map-empty,.setup-map-caption,.setup-map-branch.restricted>p{font-size:12px;line-height:1.8;color:var(--muted)}
.setup-map-caption{padding:16px 2px 0}
.setup-map-centered{margin-inline:auto;max-width:560px}
.setup-map-details{min-width:0;scroll-margin-top:24px}
.setup-map-details>header{margin:0 0 16px;padding-inline:4px}
.setup-map-details>header h3{font-size:18px;line-height:1.5}
.setup-map-details>header p{font-size:12px;color:var(--muted);line-height:1.8;margin-top:4px}
.setup-map-details :where(.panel,.af-grid,.flow-editor-grid,.af-service-profile,.table-wrap){min-width:0}
.setup-map-details .flow-editor-grid{grid-template-columns:minmax(0,1fr)}
.setup-map-details .flow-editor-grid>aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.setup-flow-canvas{min-width:0}
.setup-flow-canvas>header{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:16px}
.setup-flow-canvas>header>div:first-child{flex:1;min-width:0}
.setup-flow-canvas>header h4{font-size:15px;line-height:1.6}
.setup-flow-canvas>header p{font-size:12px;line-height:1.8;color:var(--muted)}
.setup-flow-canvas ol{padding:0;margin:0;list-style:none;display:grid;gap:0}
.setup-flow-group>header{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.setup-flow-group>header>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--brand);color:var(--surface);font-size:12px;font-weight:700;flex-shrink:0}
.setup-flow-group>header h4{font-size:12px;color:var(--muted);line-height:1.8}
.setup-flow-branches{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px}
.setup-flow-branches.parallel{position:relative;padding-block:12px;border-block:1px solid var(--gold)}
.setup-flow-branches.parallel:before{content:"";position:absolute;top:-10px;left:50%;height:10px;border-left:1px solid var(--gold)}
.setup-flow-branches.parallel:after{content:"";position:absolute;bottom:-10px;left:50%;height:10px;border-left:1px solid var(--gold)}
.setup-flow-branches .setup-map-node.human{border-top:3px solid var(--brand)}
.setup-flow-branches .setup-map-node.decision{border-top:3px solid var(--gold)}
.setup-flow-group .setup-map-join{min-height:52px}
.setup-map-studio :where(a,button,input,select):focus-visible{outline:2px solid var(--brand);outline-offset:3px}
@container workspace (max-width:1100px){.setup-map-studio{grid-template-columns:210px minmax(0,1fr);gap:16px}.setup-map-toolbar{flex-direction:column}.setup-map-toolbar .admin-actions{max-width:100%;justify-content:start}.setup-map-canvas{padding:18px}.setup-map-two{grid-template-columns:1fr}.setup-map-details .flow-editor-grid>aside{grid-template-columns:1fr}}
@container workspace (max-width:760px){.setup-map-studio{grid-template-columns:minmax(0,1fr)}.setup-map-library{position:static;padding:14px}.setup-map-library>header{margin-bottom:12px}.setup-map-library nav{max-height:180px;grid-template-columns:repeat(2,minmax(0,1fr))}.setup-map-library-item{padding:10px}.setup-map-toolbar{padding:18px}.setup-map-readiness{padding:12px 18px;flex-wrap:wrap}.setup-map-readiness .setup-map-badge{margin-inline-start:28px}.setup-map-canvas{padding:16px}}
@container workspace (max-width:480px){.setup-map-library nav{grid-template-columns:1fr}.setup-map-toolbar h3{font-size:18px}.setup-map-canvas{padding:12px}.setup-map-branch{padding:12px}.setup-map-branch>header{flex-wrap:wrap;align-items:start}.setup-map-branch>header>.btn{max-width:100%}.setup-map-node{padding:12px}.setup-map-node.focus h4{font-size:17px}.setup-map-toolbar .admin-actions,.setup-map-node-actions{width:100%}.setup-map-details>header h3{font-size:16px}}
@media(pointer:coarse){.setup-map-studio .btn,.setup-map-studio select{min-height:44px}}
@media(prefers-reduced-motion:reduce){.setup-map-studio *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
