:root{color:#151420;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:geometricPrecision}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 20% 14%,rgba(85,210,255,.16),transparent 28%),radial-gradient(circle at 80% 80%,rgba(141,56,255,.18),transparent 32%),linear-gradient(135deg,#fbfaf4,#f9fbfe 42%,#f3f0ff)}button{border:0;font:inherit}.fusion-shell{display:grid;grid-template-columns:minmax(0,1fr) 370px;min-height:100vh;overflow:hidden}.fusion-stage{position:relative;display:grid;min-height:100vh;place-items:center;padding:28px;isolation:isolate}.stage-grid{position:absolute;inset:0;z-index:-3;background-image:linear-gradient(rgba(80,76,120,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(80,76,120,.05) 1px,transparent 1px);background-size:52px 52px;-webkit-mask-image:radial-gradient(circle,black 0%,transparent 68%);mask-image:radial-gradient(circle,black 0%,transparent 68%)}.stage-aura{position:absolute;width:min(58vw,720px);aspect-ratio:1;border-radius:50%;filter:blur(54px);opacity:.38;z-index:-2}.stage-aura--violet{background:#9e4dff;transform:translate(-22%,10%)}.stage-aura--cyan{background:#48d9ff;transform:translate(28%,-20%)}.fusion-array{position:relative;width:min(86vmin,760px);aspect-ratio:1;display:grid;place-items:center}.orbit,.axis,.ring-tick,.fusion-core,.input-slot,.burst-disc,.white-flash,.result-card,.particle-field{position:absolute}.orbit{border:1px solid rgba(119,81,202,.25);border-radius:50%;box-shadow:0 0 34px #8e3cff2e}.orbit--outer{width:58%;aspect-ratio:1}.orbit--middle{width:43%;aspect-ratio:1}.orbit--inner{width:27%;aspect-ratio:1;border-color:#7747ff7a}.axis{width:54%;height:2px;background:linear-gradient(90deg,transparent,rgba(134,82,255,.55),transparent);box-shadow:0 0 18px #8d44ff59}.axis--y{rotate:90deg}.ring-tick{width:4px;height:12px;border-radius:999px;background:#8048ff6b;transform:rotate(var(--tick-angle)) translateY(-182px);transform-origin:center 182px;opacity:.55}.fusion-core{display:grid;width:clamp(112px,18vmin,156px);aspect-ratio:1;place-items:center;color:#6f35ff;border:2px solid rgba(122,70,255,.42);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.95) 0 34%,rgba(244,239,255,.88) 47%,rgba(143,78,255,.18) 72%,transparent 74%),conic-gradient(from 0deg,#9249ff1a,#944eff8f,#51d2ff2e,#9249ff1a);box-shadow:0 0 22px #8d3fff5c,0 0 80px #9640ff2e;z-index:4}.fusion-core__halo{position:absolute;inset:-18px;border:2px solid rgba(135,77,255,.32);border-radius:50%;animation:halo-idle 2.8s linear infinite}.gem-mark{width:26px;margin-bottom:-8px}.fusion-core span{font-size:11px;font-weight:800;letter-spacing:0;text-transform:uppercase}.fusion-core small{margin-top:-16px;font-size:8px;font-weight:700;letter-spacing:0;color:#9181b8}.input-slot{width:clamp(92px,13.6vmin,126px);z-index:5;transform-origin:50% 50%}.input-slot--0{transform:translateY(-205%) rotate(-1deg)}.input-slot--1{transform:translate(205%) rotate(2deg)}.input-slot--2{transform:translateY(205%) rotate(1deg)}.input-slot--3{transform:translate(-205%) rotate(-2deg)}.nft-card{position:relative;display:grid;aspect-ratio:.72;padding:8%;border-radius:7px;overflow:hidden;box-shadow:0 14px 30px #2e254e24,inset 0 0 0 1px #fffc;transform:translateZ(0)}.nft-card--compact{width:100%}.nft-card--hero{width:clamp(180px,26vmin,248px);border-radius:10px}.nft-card--light{color:#181625;background:radial-gradient(circle at 54% 40%,var(--aura),transparent 54%),linear-gradient(180deg,#fff,#f9f8ff);border:1px solid rgba(125,96,186,.28)}.nft-card--dark{color:#fff;background:radial-gradient(circle at 55% 44%,rgba(144,52,255,.46),transparent 46%),linear-gradient(145deg,#07060a,#112 54%,#170521);border:1px solid rgba(166,88,255,.72)}.nft-card__header,.nft-card__footer{position:relative;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.nft-card__header strong{display:block;font-size:clamp(7px,1.25vmin,12px);line-height:1}.nft-card--hero .nft-card__header strong{font-size:clamp(13px,2.2vmin,18px)}.nft-card__header span,.nft-card__footer{font-size:clamp(5px,.9vmin,8px);font-weight:750;letter-spacing:0;opacity:.72;text-transform:uppercase}.nft-card--hero .nft-card__header span,.nft-card--hero .nft-card__footer{font-size:clamp(8px,1.3vmin,11px)}.nft-card__art{position:relative;display:grid;min-height:0;place-items:center}.nft-card__orb{position:absolute;width:80%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--accent),transparent 68%);filter:blur(16px);opacity:.32}.robot-art,.gem-art{position:relative;width:82%;aspect-ratio:.72}.robot-art__head{position:absolute;top:15%;left:24%;width:58%;height:20%;border-radius:999px;background:linear-gradient(90deg,#3b1e11,#a85c24 46%,#2c1209),var(--accent);box-shadow:0 0 0 2px #ffffff47,0 8px 20px #00000047;rotate:-8deg}.robot-art__head:after{content:"";position:absolute;right:16%;top:35%;width:10%;aspect-ratio:1;border-radius:50%;background:#fff;box-shadow:0 0 0 3px #0a0610}.robot-art__cigar{position:absolute;top:9%;left:7%;width:86%;height:8%;border-radius:999px;border:2px solid rgba(255,255,255,.85);border-left-color:transparent;opacity:.78;rotate:-12deg}.robot-art__body{position:absolute;top:38%;left:29%;width:42%;height:46%;border-radius:22% 22% 12% 12%;background:linear-gradient(110deg,transparent 0 36%,var(--accent) 37% 46%,transparent 48%),linear-gradient(160deg,#111,#2a2732 42%,#08080b);box-shadow:inset 0 0 0 2px #ffffff3d,0 14px 26px #0000004d}.robot-art__arm{position:absolute;top:43%;width:16%;height:42%;border-radius:999px;background:linear-gradient(180deg,#0e0e14,#383343)}.robot-art__arm--left{left:12%;rotate:20deg}.robot-art__arm--right{right:10%;rotate:-18deg}.robot-art__crown{position:absolute;top:11%;left:42%;color:var(--accent);rotate:14deg;filter:drop-shadow(0 0 8px var(--accent))}.gem-art{display:grid;place-items:center}.gem-art__core{width:68%;aspect-ratio:.72;clip-path:polygon(50% 0%,95% 35%,76% 100%,24% 100%,5% 35%);background:linear-gradient(135deg,#00d9ff 0 22%,#304cff 23% 45%,#ff36de 46% 63%,#ffe64a 64% 78%,#00ffbc 79% 100%);box-shadow:inset 0 0 24px #ffffffd1,0 0 32px var(--accent)}.nft-card__spark{position:absolute;z-index:2;color:var(--accent)}.nft-card__spark--a{left:9%;top:22%}.nft-card__spark--b{bottom:14%;right:13%}.nft-card__footer{align-items:flex-end;align-self:end}.burst-disc{width:24%;aspect-ratio:1;border-radius:50%;opacity:0;z-index:7;background:radial-gradient(circle,rgba(255,255,255,.98) 0 22%,rgba(247,190,255,.86) 24% 43%,transparent 65%),repeating-conic-gradient(from 18deg,rgba(136,34,255,.78) 0 8deg,transparent 8deg 18deg),conic-gradient(from 40deg,transparent,rgba(133,34,255,.78),transparent,rgba(255,255,255,.9),transparent);filter:blur(1px)}.white-flash{inset:0;opacity:0;z-index:8;background:radial-gradient(circle,rgba(255,255,255,1) 0 24%,rgba(255,255,255,.76) 38%,transparent 62%);pointer-events:none}.result-card{z-index:9;opacity:0;transform:scale(.28) rotateY(76deg);transform-style:preserve-3d}.particle-field{inset:0;z-index:6;pointer-events:none}.particle{position:absolute;top:50%;left:50%;width:var(--particle-size);aspect-ratio:1;border-radius:50%;background:linear-gradient(135deg,#11cfff,#8746ff);opacity:0;box-shadow:0 0 10px #37d9ff;transform:rotate(var(--particle-angle)) translate(0) rotate(calc(var(--particle-angle) * -1))}.fusion-caption{position:absolute;bottom:clamp(22px,4vh,48px);left:50%;display:grid;grid-template-columns:auto minmax(220px,340px);align-items:end;gap:22px;color:#685c84;font-size:12px;transform:translate(-50%);width:min(520px,calc(100% - 48px))}.fusion-caption strong{color:#5d36ff;font-size:18px;letter-spacing:0}.control-dock{display:flex;flex-direction:column;gap:18px;padding:28px;background:#ffffffb8;border-left:1px solid rgba(118,98,160,.14);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);box-shadow:-20px 0 60px #3b2f6214}.status-panel{padding-top:10px}.status-panel__eyebrow{color:#6e39ff;font-size:12px;font-weight:800;letter-spacing:0}.status-panel h1{margin:6px 0 8px;font-size:clamp(34px,5vw,54px);line-height:.95;letter-spacing:0}.status-panel p{margin:0;color:#596073;font-size:14px;line-height:1.55}.card-tray{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.segmented-control{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border:1px solid rgba(120,101,166,.16);border-radius:8px;background:#f5f3fb}.segmented-control button{min-height:38px;color:#696078;border-radius:6px;background:transparent;cursor:pointer;font-size:13px;font-weight:760;text-transform:capitalize}.segmented-control button.is-selected{color:#fff;background:#6f38ff;box-shadow:0 10px 20px #6f38ff47}.action-row{display:grid;grid-template-columns:1fr 46px;gap:10px}.primary-action,.icon-action{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:10px;border-radius:8px;cursor:pointer;font-weight:820}.primary-action{color:#fff;background:linear-gradient(135deg,#652dff,#9f37ff 62%,#11bff7);box-shadow:0 18px 34px #6f38ff52}.primary-action:disabled{cursor:wait;opacity:.68}.icon-action{color:#4e4566;background:#ece8f6}.result-readout{display:flex;align-items:center;gap:12px;min-height:54px;padding:12px 14px;color:#4c455e;border:1px solid rgba(120,101,166,.15);border-radius:8px;background:#ffffffb3;font-size:13px;line-height:1.45}.result-readout svg{flex:0 0 auto;color:#763cff}.fusion-shell--charging .fusion-array{animation:array-breathe 5.04s cubic-bezier(.2,0,0,1) both}.fusion-shell--charging .fusion-core{animation:core-charge 5.04s cubic-bezier(.2,0,0,1) both}.fusion-shell--charging .fusion-core__halo{animation:halo-charge .9s linear infinite}.fusion-shell--charging .orbit{animation:orbit-charge 5.04s linear both}.fusion-shell--charging .ring-tick{animation:tick-charge 5.04s ease both;animation-delay:var(--tick-delay)}.fusion-shell--charging .axis{animation:axis-charge 5.04s ease both}.fusion-shell--charging .input-slot--0{animation:slot-top 5.04s cubic-bezier(.22,.9,.22,1) both}.fusion-shell--charging .input-slot--1{animation:slot-right 5.04s cubic-bezier(.22,.9,.22,1) both}.fusion-shell--charging .input-slot--2{animation:slot-bottom 5.04s cubic-bezier(.22,.9,.22,1) both}.fusion-shell--charging .input-slot--3{animation:slot-left 5.04s cubic-bezier(.22,.9,.22,1) both}.fusion-shell--charging .burst-disc{animation:burst-disc 5.04s ease-out both}.fusion-shell--charging .white-flash{animation:white-flash 5.04s ease-out both}.fusion-shell--charging .result-card{animation:result-reveal 5.04s cubic-bezier(.18,1,.24,1) both}.fusion-shell--success .result-card,.fusion-shell--failure .result-card{opacity:1;transform:scale(1) rotateY(0)}.fusion-shell--success .input-slot,.fusion-shell--failure .input-slot,.fusion-shell--success .fusion-core,.fusion-shell--failure .fusion-core,.fusion-shell--success .axis,.fusion-shell--failure .axis{opacity:0}.fusion-shell--charging .particle,.fusion-shell--success .particle,.fusion-shell--failure .particle{animation:particle-burst 1.72s ease-out both;animation-delay:calc(3.2s + var(--particle-delay))}.fusion-shell--success .particle,.fusion-shell--failure .particle{opacity:.34;transform:rotate(var(--particle-angle)) translate(var(--particle-distance)) rotate(calc(var(--particle-angle) * -1))}@keyframes halo-idle{0%{rotate:0deg;scale:1}to{rotate:360deg;scale:1.05}}@keyframes array-breathe{0%,18%{scale:1}48%{scale:.9}68%{scale:1.04}to{scale:1}}@keyframes core-charge{0%{scale:1;filter:saturate(1)}34%{scale:1.08;filter:saturate(1.2)}52%{scale:.82;filter:saturate(1.8) brightness(1.18)}66%{scale:2.4;opacity:.95;filter:saturate(2) brightness(1.34)}72%,to{scale:.5;opacity:0}}@keyframes halo-charge{0%{rotate:0deg;scale:1}to{rotate:360deg;scale:1.16}}@keyframes orbit-charge{0%{opacity:1;rotate:0deg}55%{opacity:1;rotate:130deg;scale:.75}72%{opacity:.34;rotate:260deg;scale:1.12}to{opacity:0;rotate:360deg;scale:1.28}}@keyframes tick-charge{0%,22%{opacity:.52}50%{opacity:1;background:#8b42ff}70%,to{opacity:0}}@keyframes axis-charge{0%,44%{opacity:1;scale:1}58%{opacity:.85;scale:.42 1}74%,to{opacity:0}}@keyframes slot-top{0%,18%{opacity:1;transform:translateY(-205%) rotate(-1deg)}44%{transform:translateY(-116%) rotate(2deg) scale(1.05)}55%{opacity:1;transform:translateY(-28%) rotate(7deg) scale(.9)}67%,to{opacity:0;transform:translateY(0) rotate(24deg) scale(.22)}}@keyframes slot-right{0%,18%{opacity:1;transform:translate(205%) rotate(2deg)}44%{transform:translate(116%) rotate(-3deg) scale(1.05)}55%{opacity:1;transform:translate(28%) rotate(-8deg) scale(.9)}67%,to{opacity:0;transform:translate(0) rotate(-22deg) scale(.22)}}@keyframes slot-bottom{0%,18%{opacity:1;transform:translateY(205%) rotate(1deg)}44%{transform:translateY(116%) rotate(-1deg) scale(1.05)}55%{opacity:1;transform:translateY(28%) rotate(-7deg) scale(.9)}67%,to{opacity:0;transform:translateY(0) rotate(-20deg) scale(.22)}}@keyframes slot-left{0%,18%{opacity:1;transform:translate(-205%) rotate(-2deg)}44%{transform:translate(-116%) rotate(2deg) scale(1.05)}55%{opacity:1;transform:translate(-28%) rotate(8deg) scale(.9)}67%,to{opacity:0;transform:translate(0) rotate(21deg) scale(.22)}}@keyframes burst-disc{0%,48%{opacity:0;scale:.2}55%{opacity:1;scale:.78}63%{opacity:1;scale:2.72}82%,to{opacity:0;scale:3.1}}@keyframes white-flash{0%,55%{opacity:0}62%{opacity:.96}72%{opacity:.38}86%,to{opacity:0}}@keyframes result-reveal{0%,64%{opacity:0;transform:scale(.2) rotateY(82deg) rotate(4deg)}70%{opacity:.4;transform:scale(.52) rotateY(52deg) rotate(-2deg)}80%{opacity:1;transform:scale(1.1) rotateY(0) rotate(0)}to{opacity:1;transform:scale(1) rotateY(0) rotate(0)}}@keyframes particle-burst{0%{opacity:0;transform:rotate(var(--particle-angle)) translate(0) rotate(calc(var(--particle-angle) * -1))}18%{opacity:1}46%{opacity:.82}to{opacity:0;transform:rotate(var(--particle-angle)) translate(var(--particle-distance)) rotate(calc(var(--particle-angle) * -1))}}@media(max-width:1040px){.fusion-shell{grid-template-columns:1fr}.fusion-stage{min-height:68vh;padding-bottom:72px}.control-dock{border-left:0;border-top:1px solid rgba(118,98,160,.14)}}@media(max-width:640px){.fusion-stage{min-height:58vh;padding:14px 10px 22px}.fusion-array{width:min(96vw,520px)}.input-slot{width:clamp(70px,17vmin,92px)}.input-slot--0{transform:translateY(-165%) rotate(-1deg)}.input-slot--1{transform:translate(165%) rotate(2deg)}.input-slot--2{transform:translateY(165%) rotate(1deg)}.input-slot--3{transform:translate(-165%) rotate(-2deg)}.fusion-caption{position:static;width:calc(100% - 32px);margin:12px auto 0;flex-direction:column;gap:2px;grid-template-columns:1fr;text-align:center;transform:none}.control-dock{padding:20px}.card-tray{grid-template-columns:repeat(4,minmax(54px,1fr))}}
