/* NexyCell analysis-stage polish: CSS-only, offline-safe, export-safe. */
:root{--viz-glow:rgba(52,226,196,.16);--viz-blue:rgba(91,140,255,.14)}
.topbar{background:rgba(7,13,24,.92);backdrop-filter:blur(18px) saturate(1.25);border-bottom:1px solid rgba(255,255,255,.07);box-shadow:0 10px 36px rgba(0,0,0,.2)}
.wrap{max-width:1440px}.view>.section-head{padding:4px 2px}.card{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;background:linear-gradient(155deg,rgba(255,255,255,.018),transparent 48%),var(--panel)}.card:hover{border-color:var(--line2);box-shadow:0 12px 34px rgba(0,0,0,.16)}
#view-cell .grid{gap:20px}.cell-section-card,.tech-network-card,.ternary-card,.crystal-card{position:relative;isolation:isolate;overflow:hidden;border-color:rgba(122,157,198,.22);background:radial-gradient(circle at 18% 8%,var(--viz-glow),transparent 34%),radial-gradient(circle at 88% 88%,var(--viz-blue),transparent 36%),linear-gradient(155deg,var(--panel2),var(--panel) 56%)}.cell-section-card::before,.tech-network-card::before,.ternary-card::before,.crystal-card::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.65),transparent 88%)}
.cell-viz-head{min-height:40px}.cell-viz-head h4{font-size:14px}.cell-viz-toggle{width:auto;min-width:230px;background:rgba(5,13,24,.52);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}.cell-viz-toggle button{position:relative;padding:8px 13px}.cell-viz-toggle button.active{box-shadow:0 5px 18px rgba(52,226,196,.22)}
#cell-xray,#mfg-sankey,#tech-network,#crystal-particle{min-height:350px;display:flex;align-items:center;justify-content:center;padding:10px 6px;perspective:1100px;overflow:hidden;border-radius:14px}
#cell-xray[data-viz-mode="3d"]{min-height:430px}.cell-section-svg{max-height:410px}.cell-exploded-svg{max-height:500px;filter:drop-shadow(0 24px 22px rgba(0,0,0,.34));transform:rotateX(var(--viz-rx,0deg)) rotateY(var(--viz-ry,0deg)) scale(.98);transform-origin:center;transition:transform .28s ease}.cell-exploded-svg .cell-layer{transition:filter .2s ease,opacity .2s ease}.cell-exploded-svg .cell-layer:nth-of-type(1){animation:vizLayerIn .4s .02s both}.cell-exploded-svg .cell-layer:nth-of-type(2){animation:vizLayerIn .4s .07s both}.cell-exploded-svg .cell-layer:nth-of-type(3){animation:vizLayerIn .4s .12s both}.cell-exploded-svg .cell-layer:nth-of-type(4){animation:vizLayerIn .4s .17s both}.cell-exploded-svg .cell-layer:nth-of-type(5){animation:vizLayerIn .4s .22s both}@keyframes vizLayerIn{from{opacity:0;transform:translate(-16px,-8px)}to{opacity:1;transform:none}}
.cell-section-svg{filter:drop-shadow(0 16px 22px rgba(0,0,0,.22));animation:vizFade .28s ease both}@keyframes vizFade{from{opacity:.2;transform:scale(.985)}to{opacity:1;transform:none}}
.cell-layer:focus-visible,.process-node:focus-visible,.tech-node:focus-visible{outline:none}.cell-layer:focus-visible rect,.cell-layer:focus-visible polygon,.process-node:focus-visible rect,.tech-node:focus-visible circle{stroke:var(--acc)!important;stroke-width:5!important}
.viz-detail{min-height:46px;margin-top:4px!important;padding:11px 14px!important;border:1px solid rgba(122,157,198,.18);border-left:3px solid var(--acc);border-radius:10px;background:rgba(5,13,24,.42);color:var(--txt2)!important;font-size:12px!important;display:flex;align-items:center}
.viz-toolbar{display:flex;align-items:center;gap:6px;margin-left:auto}.viz-tool{border:1px solid var(--line2);background:rgba(8,17,30,.68);color:var(--txt2);border-radius:8px;padding:7px 10px;font:700 11px var(--mono);cursor:pointer;white-space:nowrap}.viz-tool:hover,.viz-tool:focus-visible{color:var(--acc);border-color:var(--acc)}.viz-mode-badge{display:inline-flex;align-items:center;gap:6px;color:var(--txt3);font:700 10px var(--mono);letter-spacing:.05em;text-transform:uppercase}.viz-mode-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--acc);box-shadow:0 0 12px var(--acc)}
.viz-focus{position:fixed!important;inset:18px!important;z-index:1000!important;margin:0!important;padding:24px!important;overflow:auto!important;background:radial-gradient(circle at 20% 5%,rgba(52,226,196,.18),transparent 32%),#07101d!important;border-color:rgba(52,226,196,.5)!important;box-shadow:0 30px 100px rgba(0,0,0,.72)!important}.viz-focus #cell-xray,.viz-focus #mfg-sankey,.viz-focus #tech-network,.viz-focus #crystal-particle{min-height:calc(100vh - 190px)}.viz-focus svg{max-height:calc(100vh - 180px)!important}.viz-backdrop{position:fixed;inset:0;z-index:999;background:rgba(0,0,0,.72);backdrop-filter:blur(8px)}body.viz-lock{overflow:hidden}
.process-sankey-svg{max-height:450px;filter:drop-shadow(0 14px 18px rgba(0,0,0,.18))}.tech-network-svg{max-height:520px;filter:drop-shadow(0 14px 22px rgba(0,0,0,.2))}.tech-edge{transition:opacity .2s,stroke-width .2s}.tech-node circle,.process-node rect{transition:filter .2s,stroke-width .2s}.chart{border-radius:10px}
@media(max-width:760px){.wrap{padding-left:12px;padding-right:12px}.card{padding:15px}.cell-section-card{overflow:hidden}.cell-viz-head{align-items:stretch}.cell-viz-toggle{width:100%;min-width:0}.viz-toolbar{margin-left:0}.viz-tool{flex:1}#cell-xray,#mfg-sankey,#tech-network,#crystal-particle{min-height:280px;padding:4px}.cell-exploded-svg{max-height:390px}.viz-focus{inset:6px!important;padding:14px!important}.viz-focus #cell-xray,.viz-focus #mfg-sankey,.viz-focus #tech-network,.viz-focus #crystal-particle{min-height:calc(100vh - 180px)}}@media(prefers-reduced-motion:reduce){.cell-exploded-svg .cell-layer,.cell-section-svg{animation:none!important}.cell-exploded-svg,.card{transition:none!important}}
