/* Motion hierarchy: one ambient architecture, brief entrances, direct feedback. */
.architecture-network{background:var(--bg);border-radius:15px}
.network-toolbar{padding:20px 28px}.network-toolbar>span{font-size:12px;letter-spacing:.055em;text-transform:uppercase}
#network-play{padding:10px 17px;border:1px solid var(--line);border-radius:28px;background:transparent;color:var(--muted);text-decoration:none;min-height:44px}
#network-play:hover{border-color:var(--accent);color:var(--text)}
.network-canvas{min-height:420px;background-image:radial-gradient(circle,color-mix(in srgb,var(--muted) 10%,transparent) .7px,transparent .9px);background-size:22px 22px}
.network-core:before{content:'';position:absolute;width:430px;height:430px;max-width:110%;border-radius:50%;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--action) 9%,transparent),transparent 70%);z-index:-2}
.network-orbit{position:absolute;left:50%;top:50%;width:350px;height:350px;max-width:95%;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--action) 28%,transparent);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:-1;animation:authority-orbit 54s linear infinite;animation-play-state:paused}
.network-orbit:before{content:'';position:absolute;inset:23px;border:1px dotted color-mix(in srgb,var(--action) 25%,transparent);border-radius:50%}
.network-orbit i{position:absolute;left:50%;top:0;width:6px;height:6px;border-radius:50%;background:var(--red);transform:translate(-50%,-50%)}
.network-running .network-orbit{animation-play-state:running}
.network-core-face{position:relative;z-index:1;width:280px;padding:32px 24px;border-color:color-mix(in srgb,var(--action) 75%,var(--line));box-shadow:none!important}
.network-core-face>span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-top:18px}
.network-core-face>strong{font-size:24px;font-weight:600;min-height:32px;margin:24px 0 22px}
.network-core-lights{display:flex;justify-content:center;gap:8px}
.network-core-lights i{height:6px;width:6px;background:var(--line);border-radius:50%}
[data-network-phase="0"] .network-core-lights i:nth-child(1),[data-network-phase="1"] .network-core-lights i:nth-child(2),[data-network-phase="2"] .network-core-lights i:nth-child(3){background:var(--red)}
.network-architecture .architecture-network .network-node{border-color:var(--line)}
.network-running .network-packets{opacity:0;stroke:var(--red);stroke-width:2;stroke-dasharray:1.2 98.8}
.network-running .network-packets path{animation:network-packet 5.2s linear infinite;animation-direction:normal}
.network-running .network-packets path:nth-child(2){animation-delay:-1.7s}
.network-running .network-packets path:nth-child(3){animation-delay:-3.4s}
.network-running[data-network-phase="0"] .network-inbound{opacity:.45}
.network-running[data-network-phase="1"] .network-packets,.network-running[data-network-phase="2"] .network-packets{opacity:.85}
.network-running[data-network-phase="0"] .network-outbound{opacity:0}
.network-running[data-network-phase="2"] .network-packets path{animation-direction:reverse}
.network-return{padding:11px 18px;opacity:.65;margin-bottom:25px}
[data-network-phase="2"] .network-return{opacity:1;border-color:var(--accent);background:var(--surface)}
[data-network-phase="2"] .network-return>span:first-child{color:var(--red)}
.network-bottom{display:grid;grid-template-columns:350px 1fr;align-items:center;gap:45px;border-top:1px solid var(--line);padding:26px 28px}
.network-stages{border:0;grid-template-columns:repeat(3,1fr);gap:8px}
.network-stages button{border:1px solid var(--line);border-radius:6px;padding:15px 12px;min-height:55px;font-size:14px;gap:8px}
.network-stages button:last-child{border-right:1px solid var(--line)}
.network-stages button[aria-current]{border-color:var(--action);background:color-mix(in srgb,var(--action) 7%,var(--bg));box-shadow:none}
.network-caption{padding:0;border:0;min-height:0;font-size:15px;line-height:1.65;max-width:650px}
@keyframes authority-orbit{to{transform:translate(-50%,-50%) rotate(360deg)}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .button,.textlink,.connected-problems>button,.industry-preview>a,.inventory-agents button{transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease,transform 180ms ease}
 .connected-problems>button:hover,.industry-preview>a:hover{transform:translateY(-2px)}
 .inventory-agents button:not(:disabled):hover{transform:translateX(2px)}
 .button>span{transition:transform 180ms ease}.button:hover>span{transform:translate(2px,-2px)}
 .textlink:hover{transform:translateX(2px)}
}
@media(max-width:1000px){.network-canvas{min-height:380px}.network-orbit{width:305px;height:305px;max-width:none}.network-core-face{padding:28px 20px}.network-core-face>strong{font-size:22px}.network-bottom{grid-template-columns:300px 1fr;gap:25px;padding:24px}.network-stages button{font-size:13px;padding:12px 9px}.network-caption{font-size:14px}}
@media(max-width:700px){
 .network-toolbar{padding:15px 18px;gap:12px}.network-toolbar>span{font-size:10px;max-width:200px}.network-canvas{padding-top:45px;min-height:0;background-size:22px 22px;gap:5px}.network-core{padding:18px 0 32px;gap:17px;min-height:310px}.network-core:before{width:300px;height:300px;max-width:none}.network-orbit{width:280px;height:280px;max-width:none;top:calc(50% - 7px)}.network-core-face{width:250px;padding:26px 22px}.network-core-face>span{margin-top:14px}.network-core-face>strong{margin:20px 0;font-size:22px}.network-mobile-link{position:relative;z-index:2}.network-running .network-mobile-link{animation:none!important}
 [data-network-phase="1"] .network-mobile-link{color:var(--red)}[data-network-phase="2"] .network-mobile-link{color:var(--red);transform:rotate(180deg)}
 .network-return{margin-top:10px;padding:13px;opacity:.65}.network-bottom{grid-template-columns:1fr;padding:20px;gap:20px}.network-stages{grid-template-columns:repeat(3,1fr);gap:7px}.network-stages button,.network-stages button:nth-child(-n+2){border:1px solid var(--line);font-size:13px;padding:12px 8px;min-height:48px}.network-stages button[aria-current]{border-color:var(--action);box-shadow:none}.network-caption{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.network-orbit,.network-packets path{animation:none!important}.network-orbit i{display:none}.network-packets{opacity:0!important}*,*:before,*:after{scroll-behavior:auto!important}}
