.aa-map{border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#102426,#09191b 72%);padding:clamp(14px,2.5vw,26px);overflow:hidden}
.aa-map-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.aa-map-head h2{border:0;padding:0;font-size:22px}
.aa-map-head p{margin:4px 0 0;color:var(--muted);font-size:14px}
.aa-map-head .aa-map-kicker{font-size:11px;letter-spacing:1px;color:var(--accent);font-weight:500;margin:0 0 5px}
.aa-map-tabs{display:flex;gap:5px;background:#071416;border:1px solid var(--line);padding:4px;border-radius:999px}
.aa-map-tabs button{font:500 13px 'DM Sans',sans-serif;color:var(--muted);background:transparent;border:0;border-radius:999px;padding:8px 13px;cursor:pointer}
.aa-map-tabs button[aria-pressed="true"]{background:var(--accent);color:#102021}
.aa-map-tabs button:focus-visible,.aa-map-row:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.aa-map-axis{display:grid;grid-template-columns:minmax(145px,1fr) 24px minmax(145px,1fr) 24px minmax(165px,1.15fr);gap:8px;padding:0 10px 6px;color:var(--muted);font-size:10px;letter-spacing:.8px;text-transform:uppercase}
.aa-map-axis span:nth-child(2){grid-column:3}.aa-map-axis span:nth-child(3){grid-column:5}
.aa-map-panel[hidden]{display:none}
.aa-map-row{display:grid;grid-template-columns:minmax(145px,1fr) 24px minmax(145px,1fr) 24px minmax(165px,1.15fr);gap:8px;align-items:center;padding:7px 10px;border-top:1px solid #20383a;cursor:pointer;transition:background .18s ease}
.aa-map-row:hover,.aa-map-row:focus{background:#142b2b}
.aa-map-node{min-height:55px;padding:8px 11px;display:flex;flex-direction:column;justify-content:center;gap:2px;border:1px solid #2b4848;border-radius:9px;background:#0d2022;line-height:1.25}
.aa-map-node b,.aa-map-node a{font-size:14px;font-weight:500;color:var(--ink)}
.aa-map-node small{font-size:11px;line-height:1.3}
.aa-map-node.aa-product{background:#152927;border-color:#52674b}
.aa-map-node.aa-product>a,.aa-map-node.aa-product small a{color:var(--accent);text-decoration:none}
.aa-map-node.aa-product a:hover{text-decoration:underline}
.aa-flow{font-size:20px;text-align:center;color:#8fa995}
.aa-map-footer{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;padding:12px 10px;border-top:1px solid var(--line);color:#a9bdb5;font-size:12px}
.aa-map-footer b{flex-basis:100%;color:var(--ink);font-weight:500}
.aa-nitrogen,.aa-carbon{display:inline-flex;border:1px dashed #75bbaa;color:#a3d9ca;border-radius:999px;padding:3px 9px;font-size:11px}
.aa-carbon{border-color:#b89662;border-style:solid;color:#e5c68e}
.aa-map-note{min-height:42px;padding:10px 12px;margin-top:12px;border-left:2px solid var(--accent);background:#0a1a1c;color:#bfd0c8;font-size:14px}
.aa-map-note b{color:var(--ink)}
.aa-map-legend{display:flex;gap:16px;flex-wrap:wrap;margin:10px 0 0;color:var(--muted);font-size:12px}
.aa-map-legend span{display:inline-flex;align-items:center;gap:6px}
.aa-map-legend i{width:17px;border-top:2px solid #8fa995}
.aa-map-legend i.aa-legend-n{border-color:#75bbaa;border-top-style:dashed}
.aa-map-legend i.aa-legend-c{border-color:#e5c68e}
.aa-map-caption{margin:12px 0 0;color:var(--muted);font-size:12px}
.aa-cat-start{width:min(100%,480px);margin:0 auto;padding:13px 16px;border:1px solid #38514a;border-radius:10px;background:#122523;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}
.aa-cat-split{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative;margin-top:26px}
.aa-cat-split:before{content:"";position:absolute;top:-14px;left:50%;height:14px;border-left:1px solid #8fa995}
.aa-cat-nitrogen,.aa-cat-carbon,.aa-cat-branch{padding:13px 14px;border:1px solid #38514a;border-radius:10px;background:#122523;display:flex;flex-direction:column;gap:4px}
.aa-cat-carbon{border-color:#9b8158;background:#28251b}
.aa-cat-start>i,.aa-cat-split i{font-style:normal;font-size:15px;color:#8fa995}
.aa-cat-split i{color:#d8b776}
.aa-cat-start b,.aa-cat-start strong,.aa-cat-split b,.aa-cat-branch b{font-size:14px;color:var(--ink);font-weight:500;line-height:1.35}
.aa-cat-start span,.aa-cat-split span,.aa-cat-branch span{font-size:12px;color:var(--muted);line-height:1.4}
.aa-cat-start small,.aa-cat-split small,.aa-cat-branch small{font-size:10px;letter-spacing:.7px;color:#e4c58b}
.aa-cat-branches{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0 0;padding-top:17px}
.aa-cat-branches:before{content:"";position:absolute;top:0;left:12%;right:12%;border-top:1px solid #b89662}
.aa-cat-branch{position:relative;min-height:110px}
.aa-cat-branch:before{content:"";position:absolute;top:-18px;left:50%;height:17px;border-left:1px solid #b89662}
.aa-cat-branch small{font-size:10px;letter-spacing:.7px;color:#e4c58b}
@media(max-width:720px){.aa-map-axis,.aa-map-row{grid-template-columns:minmax(130px,1fr) 20px minmax(130px,1fr) 20px minmax(150px,1fr);min-width:680px}.aa-map-panel[data-aa-panel="build"]{overflow-x:auto}.aa-cat-branches{grid-template-columns:repeat(2,minmax(0,1fr))}.aa-cat-branches:before,.aa-cat-branch:before{display:none}}
@media(max-width:520px){.aa-map{padding:14px}.aa-map-tabs button{padding:7px 10px}.aa-map-head{align-items:flex-start}.aa-cat-split{grid-template-columns:1fr}.aa-cat-split:before{display:none}.aa-cat-branches{grid-template-columns:1fr 1fr}.aa-map-footer{font-size:11px}}
@media(prefers-reduced-motion:reduce){.aa-map-row{transition:none}}
