/* REL 6.17.39 — unique functional hero instruments across the system family */

/* Keep long product names inside the paper card at desktop widths. */
@media (min-width:1081px){
  body.system-operator .hero h1{font-size:clamp(4.5rem,5.15vw,6.45rem);line-height:.8;letter-spacing:-.045em;max-width:100%}
  body.system-distribution-radar .hero h1{font-size:clamp(3.9rem,4.45vw,5.4rem);line-height:.79;letter-spacing:-.045em;max-width:100%}
  body.system-search-radar .hero h1{font-size:clamp(4.15rem,5vw,6.15rem)}
  body.system-search-systems .hero h1{font-size:clamp(4.15rem,5vw,6.15rem)}
  body.system-client-portals .hero h1{font-size:clamp(4rem,4.8vw,5.9rem)}
  body.system-page .copy{overflow:hidden}
}

/* Once a purpose-built control exists, retire the generic decorative instrument underneath it. */
body.system-search-radar .instrument>.glyph,
body.system-search-radar .instrument>.hero-motion--scan,
body.system-search-radar .instrument>.hero-nodes,
body.system-search-radar .instrument>.hero-readout,
body.system-search-radar .instrument>.orbit-label,
body.system-distribution-radar .instrument>.glyph,
body.system-distribution-radar .instrument>.hero-motion--rings,
body.system-distribution-radar .instrument>.hero-nodes,
body.system-distribution-radar .instrument>.hero-readout,
body.system-distribution-radar .instrument>.orbit-label,
body.system-search-systems .instrument>.glyph,
body.system-search-systems .instrument>.hero-motion--trace,
body.system-search-systems .instrument>.hero-nodes,
body.system-search-systems .instrument>.hero-readout,
body.system-search-systems .instrument>.orbit-label,
body.system-client-portals .instrument>.glyph,
body.system-client-portals .instrument>.hero-motion--chamber,
body.system-client-portals .instrument>.hero-nodes,
body.system-client-portals .instrument>.hero-readout,
body.system-client-portals .instrument>.orbit-label{display:none!important}

.system-control{position:relative;z-index:9;width:min(650px,43vw);aspect-ratio:1;isolation:isolate;user-select:none;filter:drop-shadow(0 30px 60px rgba(0,0,0,.58));--control-accent:#c9a34b;--control-soft:rgba(201,163,75,.16)}
.system-control button{font-family:var(--mono);cursor:pointer}
.system-control button:focus-visible{outline:1px solid var(--control-accent);outline-offset:5px}
.control-status{position:absolute;z-index:10;left:50%;bottom:-2%;transform:translateX(-50%);width:72%;display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;padding:10px 14px;border:1px solid color-mix(in srgb,var(--control-accent) 48%,rgba(241,238,229,.12) 52%);background:rgba(2,3,4,.9);box-shadow:0 18px 32px rgba(0,0,0,.32);font:900 .43rem/1.45 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:#777166}
.control-status span:last-child{text-align:right}.control-status b{color:#f1e7c8;font-size:.47rem}
.control-detail{position:absolute;z-index:8;left:50%;transform:translateX(-50%);font:900 .42rem/1.45 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#8b8374;text-align:center;max-width:64%}

/* 01 SEARCH RADAR — steer a scan across evidence families. */
body.system-search-radar .instrument::before{border-color:rgba(127,211,226,.2);box-shadow:0 0 0 34px rgba(127,211,226,.01),0 0 0 70px rgba(201,163,75,.008),0 0 120px rgba(93,180,196,.13)}
.search-radar-control{--control-accent:#7fd3e2;--control-soft:rgba(127,211,226,.14);border-radius:50%}
.search-radar-control::before,.search-radar-control::after{content:"";position:absolute;border-radius:50%;pointer-events:none}.search-radar-control::before{inset:4%;border:1px solid rgba(241,238,229,.26);box-shadow:inset 0 0 0 30px rgba(127,211,226,.01),0 0 0 1px rgba(127,211,226,.07)}.search-radar-control::after{inset:16%;border:1px dashed rgba(127,211,226,.3);animation:radarCalibrate 36s linear infinite}
.radar-map{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.radar-map .ring{fill:none;stroke:rgba(241,238,229,.15);stroke-width:1}.radar-map .ring.accent{stroke:rgba(127,211,226,.3);stroke-dasharray:3 9}.radar-map .axis{stroke:rgba(241,238,229,.13);stroke-width:1}.radar-map .sweep{transform-origin:320px 320px;transform:rotate(var(--control-angle));transition:transform .65s cubic-bezier(.2,.75,.2,1);stroke:url(#radarSweepGradient);stroke-width:2}.radar-map .sweep-dot{fill:#eefcff;filter:drop-shadow(0 0 8px rgba(127,211,226,.9));transform-origin:320px 320px;transform:rotate(var(--control-angle));transition:transform .65s cubic-bezier(.2,.75,.2,1)}
.radar-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:27%;aspect-ratio:1;border:1px solid rgba(241,238,229,.38);border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,rgba(127,211,226,.12),rgba(3,8,11,.95) 55%,#020405);box-shadow:0 0 0 14px rgba(127,211,226,.02),0 0 42px rgba(127,211,226,.09)}.radar-core::before{content:"";position:absolute;width:38%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#f7ffff 0 8%,#9de6f0 24%,#36798a 58%,#102f36 100%);border:1px solid #d5f7fb;box-shadow:0 0 15px rgba(127,211,226,.55),0 0 34px rgba(127,211,226,.16);animation:radarCorePulse 4.5s ease-in-out infinite}.radar-core span,.radar-core b{position:absolute;font:900 .43rem var(--mono);letter-spacing:.16em;text-transform:uppercase}.radar-core span{top:14%;color:#7c8990}.radar-core b{bottom:13%;color:#ccecf0}
.radar-point{--x:50%;--y:8%;position:absolute;z-index:6;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:88px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(241,238,229,.22);background:rgba(3,7,9,.9);color:#9aa4a5;display:grid;place-items:center;padding:0;box-shadow:0 10px 26px rgba(0,0,0,.28);transition:.2s ease}.radar-point span{font:900 .49rem/1.1 var(--mono);letter-spacing:.11em;text-transform:uppercase;text-align:center}.radar-point.query{--x:50%;--y:8%}.radar-point.page{--x:88%;--y:50%}.radar-point.test{--x:50%;--y:88%}.radar-point.wait{--x:12%;--y:50%}.radar-point.is-active{border-color:#7fd3e2;color:#e5fbff;background:radial-gradient(circle,rgba(127,211,226,.12),rgba(3,7,9,.94) 67%);box-shadow:0 0 0 7px rgba(127,211,226,.025),0 0 25px rgba(127,211,226,.16)}.radar-point:hover{transform:translate(-50%,-50%) scale(1.05);color:#e8f9fb}.search-radar-control .control-detail{bottom:9%}

/* 02 DISTRIBUTION RADAR — route one remembered result through the next channel decision. */
body.system-distribution-radar .instrument::before{border-color:rgba(210,168,79,.22);box-shadow:0 0 0 34px rgba(210,168,79,.012),0 0 0 70px rgba(241,238,229,.008),0 0 125px rgba(210,168,79,.13)}
.distribution-control{--control-accent:#d2a84f;--control-soft:rgba(210,168,79,.14);border-radius:50%}.distribution-control::before{content:"";position:absolute;inset:5%;border:1px solid rgba(241,238,229,.25);border-radius:50%;box-shadow:inset 0 0 0 32px rgba(210,168,79,.012),0 0 0 1px rgba(210,168,79,.08)}.distribution-map{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.distribution-map .ring{fill:none;stroke:rgba(241,238,229,.14);stroke-width:1}.distribution-map .memory{fill:none;stroke:rgba(210,168,79,.32);stroke-width:1;stroke-dasharray:3 9;animation:distributionMemory 34s linear infinite;transform-origin:320px 320px}.distribution-map .route{stroke:rgba(241,238,229,.14);stroke-width:1.2;stroke-dasharray:5 9;transition:stroke .25s ease,stroke-width .25s ease}.distribution-map .route.is-active{stroke:#d2a84f;stroke-width:2;animation:routeFlow 4.6s linear infinite}.distribution-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:25%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(241,238,229,.38);display:grid;place-items:center;background:radial-gradient(circle,rgba(210,168,79,.14),rgba(8,7,4,.95) 58%,#020201);box-shadow:0 0 0 14px rgba(210,168,79,.02),0 0 40px rgba(210,168,79,.1)}.distribution-hub::before{content:"";position:absolute;width:34%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#fff9dc 0 8%,#e7bd5b 24%,#9d681b 58%,#38240a 100%);border:1px solid #efd17c;box-shadow:0 0 14px rgba(210,168,79,.6),0 0 34px rgba(210,168,79,.18);animation:distributionHubPulse 5s ease-in-out infinite}.distribution-hub span,.distribution-hub b{position:absolute;font:900 .42rem var(--mono);letter-spacing:.16em;text-transform:uppercase}.distribution-hub span{top:14%;color:#8f856c}.distribution-hub b{bottom:13%;color:#e7d49d}.distribution-node{--x:50%;--y:8%;position:absolute;z-index:6;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:84px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(241,238,229,.22);background:rgba(7,6,3,.91);color:#9b927f;padding:0;display:grid;place-items:center;transition:.2s ease}.distribution-node span{font:900 .47rem/1.08 var(--mono);letter-spacing:.1em;text-transform:uppercase;text-align:center;max-width:66px}.distribution-node.page{--x:50%;--y:8%}.distribution-node.creative{--x:87%;--y:39%}.distribution-node.channel{--x:73%;--y:82%}.distribution-node.result{--x:27%;--y:82%}.distribution-node.memory{--x:13%;--y:39%}.distribution-node.is-active{border-color:#d2a84f;color:#fff0c2;background:radial-gradient(circle,rgba(210,168,79,.13),rgba(7,6,3,.95) 68%);box-shadow:0 0 0 7px rgba(210,168,79,.024),0 0 25px rgba(210,168,79,.16)}.distribution-node:hover{transform:translate(-50%,-50%) scale(1.05);color:#fff1c4}.distribution-control .control-detail{bottom:9%}

/* 04 SEARCH SYSTEMS — a crawl/structure/render/measure architecture map, intentionally not circular. */
body.system-search-systems .instrument::before{border-radius:0;transform:rotate(45deg) scale(.72);border-color:rgba(143,181,146,.2);box-shadow:0 0 0 32px rgba(143,181,146,.01),0 0 100px rgba(130,168,132,.1)}body.system-search-systems .instrument::after{border-radius:0;transform:rotate(45deg) scale(.72);border-color:rgba(201,163,75,.18);animation-duration:84s}
.architecture-control{--control-accent:#8fb592;--control-soft:rgba(143,181,146,.14);width:min(680px,45vw);aspect-ratio:1.08/.86}.architecture-control::before{content:"";position:absolute;inset:4% 2%;border:1px solid rgba(143,181,146,.2);background:linear-gradient(rgba(143,181,146,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(143,181,146,.04) 1px,transparent 1px);background-size:42px 42px;clip-path:polygon(5% 0,95% 0,100% 7%,100% 93%,95% 100%,5% 100%,0 93%,0 7%)}.architecture-map{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.architecture-map .path{fill:none;stroke:rgba(241,238,229,.16);stroke-width:1.4;stroke-dasharray:5 10}.architecture-map .path.is-active{stroke:#8fb592;stroke-width:2;animation:architectureFlow 5s linear infinite}.architecture-map .measure{fill:none;stroke:rgba(201,163,75,.24);stroke-width:1;stroke-dasharray:2 7}.architecture-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:28%;height:22%;border:1px solid rgba(241,238,229,.32);display:grid;place-items:center;background:rgba(4,8,5,.94);box-shadow:0 0 0 10px rgba(143,181,146,.015),0 0 38px rgba(143,181,146,.08)}.architecture-center::before{content:"";position:absolute;left:50%;top:50%;width:17px;height:17px;transform:translate(-50%,-50%) rotate(45deg);background:#b6d4b8;box-shadow:0 0 18px rgba(143,181,146,.45)}.architecture-center span,.architecture-center b{position:absolute;font:900 .42rem var(--mono);letter-spacing:.16em;text-transform:uppercase}.architecture-center span{top:12%;color:#7f8e80}.architecture-center b{bottom:12%;color:#cddfce}.arch-stage{--x:50%;--y:10%;position:absolute;z-index:6;left:var(--x);top:var(--y);transform:translate(-50%,-50%);min-width:116px;height:64px;border:1px solid rgba(241,238,229,.2);background:rgba(4,8,5,.92);color:#99a49a;padding:0 12px;display:grid;place-items:center;transition:.2s ease}.arch-stage span{font:900 .49rem var(--mono);letter-spacing:.12em;text-transform:uppercase}.arch-stage.crawl{--x:50%;--y:10%}.arch-stage.structure{--x:88%;--y:50%}.arch-stage.render{--x:50%;--y:90%}.arch-stage.measure{--x:12%;--y:50%}.arch-stage.is-active{border-color:#8fb592;color:#e4f0e5;background:linear-gradient(145deg,rgba(143,181,146,.11),rgba(4,8,5,.96));box-shadow:0 0 0 5px rgba(143,181,146,.022),0 0 24px rgba(143,181,146,.13)}.arch-stage:hover{transform:translate(-50%,-50%) translateY(-2px);color:#ecf6ed}.architecture-control .control-detail{bottom:4%}.architecture-control .control-status{bottom:-7%;width:76%}

/* 05 CLIENT PORTALS — a private chamber where one module is in focus at a time. */
body.system-client-portals .instrument::before{border-radius:0;transform:rotate(45deg) scale(.72);border-color:rgba(185,154,187,.2);box-shadow:0 0 0 32px rgba(185,154,187,.012),0 0 110px rgba(166,132,166,.11)}body.system-client-portals .instrument::after{border-radius:0;transform:rotate(45deg) scale(.72);border-color:rgba(201,163,75,.18);animation-duration:92s}
.portal-control{--control-accent:#b99abb;--control-soft:rgba(185,154,187,.14);width:min(650px,43vw);aspect-ratio:1}.portal-control::before,.portal-control::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(45deg);pointer-events:none}.portal-control::before{width:72%;aspect-ratio:1;border:1px solid rgba(241,238,229,.24);box-shadow:inset 0 0 0 26px rgba(185,154,187,.01),0 0 0 1px rgba(185,154,187,.07)}.portal-control::after{width:52%;aspect-ratio:1;border:1px dashed rgba(185,154,187,.3);animation:portalFramePulse 8s ease-in-out infinite}.portal-core{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%);width:30%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(241,238,229,.36);display:grid;place-items:center;background:radial-gradient(circle,rgba(185,154,187,.12),rgba(8,5,9,.95) 58%,#030203);box-shadow:0 0 0 13px rgba(185,154,187,.018),0 0 40px rgba(185,154,187,.1)}.portal-core::before{content:"";position:absolute;width:7px;height:46%;background:linear-gradient(transparent,#e2cde4 38%,#e2cde4 62%,transparent);box-shadow:0 0 12px rgba(185,154,187,.3)}.portal-core::after{content:"";position:absolute;width:44%;height:1px;background:#d8c2da;box-shadow:0 0 9px rgba(185,154,187,.28)}.portal-core span,.portal-core b{position:absolute;font:900 .42rem var(--mono);letter-spacing:.16em;text-transform:uppercase}.portal-core span{top:14%;color:#8c7e8d}.portal-core b{bottom:13%;color:#e2d4e3}.portal-module{--x:50%;--y:9%;position:absolute;z-index:7;left:var(--x);top:var(--y);transform:translate(-50%,-50%);min-width:112px;height:68px;border:1px solid rgba(241,238,229,.2);background:rgba(7,4,8,.92);color:#9c909d;padding:0 11px;display:grid;place-items:center;transition:.2s ease}.portal-module span{font:900 .47rem/1.1 var(--mono);letter-spacing:.11em;text-transform:uppercase;text-align:center}.portal-module.context{--x:50%;--y:9%}.portal-module.priorities{--x:91%;--y:50%}.portal-module.progress{--x:50%;--y:91%}.portal-module.decisions{--x:9%;--y:50%}.portal-module.is-active{border-color:#b99abb;color:#f3e7f4;background:linear-gradient(145deg,rgba(185,154,187,.11),rgba(7,4,8,.96));box-shadow:0 0 0 6px rgba(185,154,187,.022),0 0 25px rgba(185,154,187,.14)}.portal-module:hover{transform:translate(-50%,-50%) scale(1.045);color:#f2e7f3}.portal-control .control-detail{bottom:7%}.portal-control .control-status{bottom:-4%}

@media(max-width:1080px){.system-control,.portal-control{width:min(640px,88vw)}.architecture-control{width:min(670px,90vw)}body.system-search-radar .instrument::before,body.system-distribution-radar .instrument::before,body.system-client-portals .instrument::before{width:min(660px,88vw)}}
@media(max-width:680px){
  .system-control,.portal-control{width:min(420px,94vw);margin-top:8px}.architecture-control{width:min(430px,96vw)}
  .radar-point,.distribution-node{width:62px}.radar-point span,.distribution-node span{font-size:.36rem;letter-spacing:.07em;max-width:48px}
  .arch-stage,.portal-module{min-width:82px;height:52px;padding:0 7px}.arch-stage span,.portal-module span{font-size:.35rem;letter-spacing:.07em}
  .control-status{width:82%;padding:7px 9px;font-size:.34rem;gap:5px 9px}.control-status b{font-size:.36rem}.control-detail{font-size:.33rem;max-width:70%}
  .radar-core span,.radar-core b,.distribution-hub span,.distribution-hub b,.architecture-center span,.architecture-center b,.portal-core span,.portal-core b{font-size:.32rem}
  .architecture-control .control-status{bottom:-8%}.portal-control .control-status{bottom:-5%}
}
@media(max-width:420px){.radar-point,.distribution-node{width:56px}.arch-stage,.portal-module{min-width:74px}.control-status{width:85%}}

@keyframes radarCalibrate{to{transform:rotate(360deg)}}@keyframes radarCorePulse{0%,100%{transform:scale(.92);filter:brightness(.92)}50%{transform:scale(1.06);filter:brightness(1.16)}}
@keyframes distributionMemory{to{transform:rotate(-360deg)}}@keyframes routeFlow{to{stroke-dashoffset:-56}}@keyframes distributionHubPulse{0%,100%{transform:scale(.92)}50%{transform:scale(1.06)}}
@keyframes architectureFlow{to{stroke-dashoffset:-60}}@keyframes portalFramePulse{0%,100%{opacity:.42;transform:translate(-50%,-50%) rotate(45deg) scale(.98)}50%{opacity:.9;transform:translate(-50%,-50%) rotate(45deg) scale(1.02)}}
@media(prefers-reduced-motion:reduce){.search-radar-control::after,.radar-core::before,.distribution-map .memory,.distribution-map .route.is-active,.distribution-hub::before,.architecture-map .path.is-active,.portal-control::after{animation:none!important}.radar-map .sweep,.radar-map .sweep-dot{transition:none!important}}
