.architecture-map{background:var(--page-dark,#172d4a);border:1px solid #344e6d;border-radius:18px;overflow:hidden;color:#f5f8fc;text-align:left}
.architecture-map svg{width:28px;height:28px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
.architecture-map ul,.architecture-map ol{list-style:none;padding:0;margin:0}
.arch-label{font-size:12px;letter-spacing:.08em;font-weight:500;color:#b9cce0;margin:0}
.foundation-emphasis{color:var(--brand-blue,#2664b5)}
.arch-entry{padding:22px 32px;background:var(--page-dark,#172d4a);display:flex;gap:32px;align-items:center;border-bottom:1px solid #294561}
.arch-entry .arch-label{color:#b9cce0}
.arch-entry ul{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:16px;flex:1}
.arch-entry img{width:28px;height:28px;object-fit:contain;flex:none}
.arch-entry img[src*="/business-system."]{box-sizing:border-box;padding:3px}
.arch-entry li{flex-direction:column;text-align:center}
.arch-entry li{display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px;color:#edf4fb}
.arch-core{position:relative;padding:24px 28px 26px}
.arch-agent{background:#203f64;color:#fff;padding:24px;border-radius:12px}
.architecture-map h3{font-size:25px;font-weight:600;line-height:1.4;margin:0 0 20px;text-align:center}
.arch-agent ol{display:flex;align-items:center;justify-content:center;gap:0}
.arch-agent li{position:relative;font-size:14px;line-height:1.6;display:flex;align-items:center;gap:12px;flex:0 0 auto;white-space:nowrap}
.arch-agent li:last-child{flex:0}
.arch-agent li:not(:last-child):after{content:"";flex:none;width:28px;min-width:14px;height:7px;margin-right:12px;background:#8eabc9;clip-path:polygon(0 42%,calc(100% - 5px) 42%,calc(100% - 5px) 0,100% 50%,calc(100% - 5px) 100%,calc(100% - 5px) 58%,0 58%)}

.arch-agent .arch-confirm{color:#ffbd79}
.arch-support{text-align:center;color:#b2cbe3;font-size:12px;padding:0 10px 16px}
.arch-brain{background:#1d3755;border:1px solid #3c5875;padding:24px;border-radius:12px;margin-top:24px}
.arch-capabilities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;max-width:860px;margin:0 auto}
.arch-capabilities>div{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:12px;align-items:center;text-align:left}
.arch-capabilities :is(svg,img){color:#9dc6ef;grid-row:1/3;margin:0}
.arch-capabilities h4{font-size:16px;margin:0 0 5px;font-weight:600}
.arch-capabilities p{font-size:13px;line-height:1.7;color:#c1d2e3;margin:0;text-wrap:pretty}

.arch-sources{position:relative;padding-top:0}
.arch-sources ul{padding-top:38px!important}
.architecture-map .arch-source-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;color:#9dbddd;stroke-width:1.2;overflow:visible}



.arch-sources ul{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}


.arch-sources li{position:relative;background:#1c3552;border:1px solid #3b536d;border-radius:8px;padding:14px 10px;text-align:center}
.arch-sources strong{display:block;font-size:14px;font-weight:600;margin-bottom:6px}
.arch-sources li span{display:block;color:#bfd0e1;font-size:12px;line-height:1.7}



@media(max-width:1000px){.arch-entry{padding:20px;gap:18px}.arch-entry ul{gap:14px}.arch-entry li{flex-direction:column;text-align:center;font-size:12px}.arch-capabilities{gap:16px}}
@media(max-width:600px){.arch-entry{display:block}.arch-entry ul{margin-top:16px;grid-template-columns:repeat(2,1fr);gap:18px}.arch-entry li{flex-direction:row;justify-content:flex-start}.arch-core{padding:18px 16px}.arch-agent,.arch-brain{padding:18px}.architecture-map h3{font-size:21px;margin-bottom:18px}.arch-agent ol{display:flex;flex-direction:column;align-items:center;gap:0}.arch-agent li{display:flex;flex-direction:column;align-items:center;gap:8px;white-space:normal}.arch-agent li:not(:last-child):after{flex:none;width:7px;height:20px;min-width:0;margin:0 0 8px;clip-path:polygon(42% 0,58% 0,58% calc(100% - 5px),100% calc(100% - 5px),50% 100%,0 calc(100% - 5px),42% calc(100% - 5px))}.arch-capabilities{grid-template-columns:1fr;gap:18px}.arch-capabilities>div+div{border-top:1px solid #3c5875;padding-top:18px}.arch-sources ul{grid-template-columns:1fr;gap:8px;margin-left:18px}.arch-sources li{text-align:left;padding:12px}.arch-sources strong{margin-bottom:3px}.arch-sources li span{font-size:12px}}

@media(min-width:601px) and (max-width:850px){.arch-agent li{gap:8px;font-size:13px}.arch-agent li:not(:last-child):after{width:18px;margin-right:8px}}
