.ai-map{container-type:inline-size}
.ai-map-canvas{position:relative;isolation:isolate;aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(10px,3cqw,20px);overflow:hidden;background:radial-gradient(ellipse at 85% 20%,#446ee545,transparent 65%),radial-gradient(ellipse at 15% 100%,#4ddfb91b,transparent 60%),#0f2049;color:#fff}
.ai-map-canvas:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#aecaff07 1px,transparent 1px),linear-gradient(90deg,#aecaff07 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(transparent,#000 30%,#000 70%,transparent)}
.ai-map-inputs{width:94%;display:grid;grid-template-columns:1fr 1fr;gap:clamp(8px,3cqw,20px)}
.ai-map-inputs>div{display:flex;align-items:center;justify-content:center;gap:clamp(5px,1.3cqw,9px);height:clamp(25px,5.8cqw,36px);padding:4px 7px;border:1px solid #8faee24d;border-radius:8px;background:#ffffff08;box-shadow:inset 0 1px #ffffff06;color:#dce9ff;font-size:clamp(8px,1.75cqw,11px);font-weight:600;white-space:nowrap}
.ai-map-inputs svg{width:clamp(12px,2.5cqw,16px);height:clamp(12px,2.5cqw,16px);flex-shrink:0;stroke:#9edbcf;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ai-map-wire{display:block;width:94%;height:clamp(10px,3.4cqw,21px);flex-shrink:0;overflow:visible;fill:none;stroke:#82b1ee42;stroke-width:1.2;vector-effect:non-scaling-stroke}
.ai-map-wire .ai-map-flow{stroke:#9cf0d3;stroke-width:1.5;stroke-dasharray:8 160;animation:ai-context-flow 5s linear infinite}
.ai-map-hub{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(3px,.8cqw,5px);width:70%;min-height:clamp(46px,12cqw,74px);padding:8px 5px;border:1px solid #9bc5ff9c;border-radius:clamp(9px,2cqw,13px);background:linear-gradient(125deg,#284caa,#233e8d);box-shadow:0 0 0 5px #79aaff09,0 12px 40px #05132c55,0 0 32px #6da8f928;color:#fff}
.ai-map-core-label{font-size:clamp(5px,1.1cqw,7px);font-weight:650;letter-spacing:.14em;color:#b6d3ff}
.ai-map-hub>strong{font-size:clamp(14px,3.3cqw,21px);font-weight:750;line-height:1.2;letter-spacing:-.025em;color:#fff}
.ai-map-hub>small{font-size:clamp(7px,1.55cqw,10px);line-height:1.5;color:#d5e5ff}
.ai-map-ai{position:absolute;right:clamp(-16px,-2.5cqw,-8px);top:clamp(-16px,-2.5cqw,-8px);display:flex;align-items:center;justify-content:center;gap:3px;width:clamp(30px,7.4cqw,46px);height:clamp(30px,7.4cqw,46px);border:1px solid #8ee4cb;border-radius:50%;background:linear-gradient(130deg,#d4fff1,#9de6d1);color:#154f48;box-shadow:0 0 0 5px #9dedcf0e,0 0 25px #7eedce25;animation:ai-context-breathe 4s ease-in-out infinite}
.ai-map-ai svg{width:clamp(11px,2.4cqw,15px);height:clamp(11px,2.4cqw,15px);stroke:currentColor;stroke-width:1.5;fill:none}
.ai-map-ai b{font-size:clamp(9px,2cqw,12px);font-weight:750}
.ai-map-wire-out{width:100%}
.ai-map-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(5px,1.5cqw,10px);width:100%}
.ai-map-actions>div{min-width:0;min-height:clamp(30px,8.4cqw,52px);display:flex;align-items:center;justify-content:center;gap:clamp(5px,1.5cqw,9px);padding:5px;border:1px solid #8faee23b;border-radius:9px;background:linear-gradient(120deg,#ffffff0b,#ffffff04)}
.ai-map-actions svg{width:clamp(13px,2.8cqw,18px);height:clamp(13px,2.8cqw,18px);flex-shrink:0;stroke:#99e9d0;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ai-map-actions strong{display:block;font-size:clamp(9px,1.9cqw,12px);line-height:1.5;font-weight:650;color:#f0f6ff}
.ai-map-actions small{display:block;margin-top:2px;font-size:clamp(6px,1.35cqw,8.5px);line-height:1.5;color:#bbd0ef;white-space:nowrap}
.ai-map-control{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:clamp(5px,1.5cqw,10px);font-size:clamp(7px,1.45cqw,9px);line-height:1.6;color:#c1d7ee}
.ai-map-control i{width:4px;height:4px;border-radius:50%;background:#90e5c6;box-shadow:0 0 0 3px #90e5c60d}
.pv-module-visual .hx-capture{width:100%;transform:perspective(1200px) rotateY(-2deg);transition:transform .35s,border-color .25s,box-shadow .25s}
.pv-module-visual .hx-capture:hover{transform:perspective(1200px) rotateY(0)}
.pv-module-visual .hx-capture-image{aspect-ratio:16/11}
@keyframes ai-context-flow{to{stroke-dashoffset:-168}}
@keyframes ai-context-breathe{0%,100%{box-shadow:0 0 0 5px #9dedcf0e,0 0 25px #7eedce25}50%{box-shadow:0 0 0 9px #9dedcf06,0 0 35px #7eedce40}}
@container(max-width:380px){.ai-map-actions small{display:none}.ai-map-inputs{width:100%;gap:8px}.ai-map-inputs>div{font-size:7.5px;padding-inline:4px}.ai-map-inputs svg{width:11px;height:11px}.ai-map-actions>div{border-radius:6px}.ai-map-hub{width:76%}}
@media(max-width:940px){.pv-module-visual .hx-capture{transform:none}.pv-module-visual .hx-capture:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.ai-map-flow,.ai-map-ai{animation:none!important}.pv-module-visual .hx-capture{transform:none;transition:none}}
