.gaming-portal{--portal-color:#67dfba;--portal-secondary:#62ccff;--portal-x:0deg;--portal-y:0deg;isolation:isolate;text-align:left;width:100%;max-width:1120px;margin-top:80px;scroll-margin-top:100px;position:relative}.portal-topline{color:var(--muted-foreground);letter-spacing:.15em;justify-content:space-between;align-items:center;gap:12px;padding:0 4%;font-size:10px;font-weight:700;display:flex}.portal-topline>span{align-items:center;gap:8px;display:inline-flex}.portal-topline>span i{background:var(--portal-color);border-radius:50%;width:5px;height:5px}.portal-topline button{border:1px solid var(--border);background:var(--surface);color:var(--muted-foreground);letter-spacing:0;cursor:pointer;border-radius:20px;align-items:center;gap:5px;padding:7px 10px;font-size:10px;display:inline-flex}.portal-stage{aspect-ratio:1.9;perspective:1200px;position:relative}.portal-aura{background:radial-gradient(ellipse, color-mix(in srgb, var(--portal-color) 13%, transparent), color-mix(in srgb, var(--portal-secondary) 7%, transparent) 42%, transparent 70%);transition:background .6s;position:absolute;inset:0 8%}.portal-grid-floor{background-image:linear-gradient(color-mix(in srgb, var(--portal-color) 10%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--portal-color) 10%, transparent) 1px, transparent 1px);background-size:48px 48px;width:76%;height:40%;position:absolute;bottom:0;left:12%;transform:rotateX(65deg);-webkit-mask-image:radial-gradient(#000 20%,#0000 70%);mask-image:radial-gradient(#000 20%,#0000 70%)}.portal-perspective{transform:rotateX(var(--portal-y)) rotateY(var(--portal-x));transform-style:preserve-3d;transition:transform .3s ease-out;position:absolute;inset:0}.portal-gateway{aspect-ratio:1;width:48%;position:absolute;top:1%;left:26%;transform:translateZ(10px)}.portal-frame{z-index:3;pointer-events:none;position:absolute;inset:0}.portal-frame img{width:100%;height:100%}.portal-opening{background:var(--surface-2);z-index:1;border-radius:50%;position:absolute;inset:14%;overflow:hidden}.portal-world-image{animation:.65s ease-out both portal-arrive;position:absolute;inset:0}.portal-world-image img{object-fit:cover;width:100%;height:100%;animation:18s ease-in-out infinite alternate portal-world-pan}.portal-world-shade{background:linear-gradient(#0000 45%,#04121c66),radial-gradient(#0000 58%,#08101b77);position:absolute;inset:0}.portal-weather{pointer-events:none;position:absolute;inset:0;overflow:hidden}.portal-weather-drift{background:linear-gradient(130deg,#0000 35%,#fff2 48%,#0000 60%);animation:12s ease-in-out infinite alternate portal-cloud-drift;position:absolute;inset:-20%}.portal-energy{z-index:4;border:1px solid color-mix(in srgb, var(--portal-color) 45%, transparent);pointer-events:none;border-radius:50%;position:absolute;inset:8%}.portal-energy i{border:2px solid #0000;border-top-color:var(--portal-color);border-right-color:color-mix(in srgb, var(--portal-color) 30%, transparent);opacity:.75;border-radius:50%;animation:11s linear infinite portal-spin;position:absolute;inset:0}.portal-energy i:nth-child(2){border-width:1px;border-top-color:var(--portal-secondary);animation-duration:17s;animation-direction:reverse;inset:7%}.portal-energy i:nth-child(3){border-width:1px;border-top-color:var(--portal-secondary);opacity:.25;animation-duration:21s;inset:-10%}.portal-orbit{border:1px solid color-mix(in srgb, var(--portal-secondary) 40%, transparent);pointer-events:none;border-radius:50%;width:70%;height:32%;position:absolute;top:28%;left:15%;transform:rotate(-17deg)}.portal-orbit--back{z-index:-1;opacity:.5;transform:rotate(18deg)}.portal-orbit--front{z-index:5;border-top-color:#0000;border-right-color:#0000;-webkit-mask-image:linear-gradient(#0000 25%,#000 60%);mask-image:linear-gradient(#0000 25%,#000 60%)}.portal-orbit i{border:2px solid #0000;border-left-color:var(--portal-color);border-radius:50%;animation:9s linear infinite portal-spin;position:absolute;inset:-1px}.portal-orbit i:nth-child(2){border-left-color:var(--portal-secondary);animation-delay:-4.5s}.portal-effects-world{z-index:6;pointer-events:none;position:absolute;inset:0;transform:translateZ(35px)}.portal-effects-enter{animation:.6s ease-out both portal-arrive;position:absolute;inset:0}.portal-island{width:46%;position:absolute;top:40%;left:27%}.portal-actors-3d{aspect-ratio:3/2;z-index:8;pointer-events:none;width:46%;position:absolute;top:40%;left:27%;transform:translateZ(35px)}.portal-actors-3d canvas{width:100%;height:100%;display:block}.portal-actors-3d[data-available=false] canvas{visibility:hidden}.portal-island img{width:100%;height:auto}.portal-water-glint{clip-path:polygon(15% 0,90% 0,100% 94%,30% 100%);opacity:.65;background:repeating-linear-gradient(#0000 0 8px,#d2ffff66 9px,#0000 13px);width:5%;height:14%;animation:1.8s linear infinite portal-water;position:absolute;top:67%;left:58.3%}.portal-stardust{pointer-events:none;position:absolute;inset:0}.portal-stardust i{background:var(--portal-color);width:3px;height:3px;box-shadow:0 0 6px var(--portal-color);animation:6s ease-in-out infinite portal-mote;animation-delay:calc(var(--i) * -.7s);border-radius:50%;position:absolute}.portal-world-caption{text-align:left;pointer-events:none;width:20%;animation:.6s ease-out both portal-caption;position:absolute;top:12%;left:4%}.portal-world-caption>span{color:var(--muted-foreground);letter-spacing:.2em;font-size:9px;font-weight:700}.portal-world-caption strong{font:800 clamp(18px, 2.8vw, 30px) var(--font-display);color:var(--foreground);margin-top:9px;line-height:1.1;display:block}.portal-world-caption p{color:var(--muted-foreground);margin-top:8px;font-size:12px;line-height:1.6}.portal-controls{z-index:10;max-width:960px;margin:8px auto 0;position:relative}.portal-selector-label{letter-spacing:.18em;color:var(--muted-foreground);justify-content:space-between;align-items:center;margin:0 2px 12px;font-size:9px;font-weight:700;display:flex}.portal-selector-label span:last-child{letter-spacing:0;font-weight:400}.portal-game-selector{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.portal-game-selector button{background:var(--surface);border:1px solid var(--border);min-height:51px;color:var(--muted-foreground);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:9px 6px;font-size:12px;font-weight:600;transition:background .2s,border-color .2s,transform .2s;display:flex}.portal-game-selector img{object-fit:contain;width:23px;height:23px}.portal-game-selector button:hover{color:var(--foreground);border-color:var(--primary);transform:translateY(-3px)}.portal-game-selector button[aria-pressed=true]{color:var(--foreground);background:color-mix(in srgb, var(--primary) 13%, var(--card));border-color:var(--primary);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 40%, transparent), 0 6px 24px -16px var(--primary)}.gaming-portal button:focus-visible,.portal-cta:focus-visible{outline:3px solid var(--ring);outline-offset:4px}.portal-actions{justify-content:center;align-items:center;gap:22px;margin-top:24px;display:flex}.portal-cta{background:var(--gradient-brand);min-height:50px;color:var(--primary-foreground);box-shadow:var(--glow-soft);border-radius:14px;justify-content:center;align-items:center;gap:12px;padding:14px 24px;font-size:13px;font-weight:800;transition:transform .2s;display:inline-flex}.portal-cta:hover{transform:translateY(-2px)}.portal-auto{color:var(--muted-foreground);cursor:pointer;align-items:center;gap:6px;padding:10px 0;font-size:10px;display:inline-flex}.gaming-portal[data-running=false] *,.gaming-portal[data-running=false] :before,.gaming-portal[data-running=false] :after{animation-play-state:paused!important}.gaming-portal[data-running=false] .portal-world-image,.gaming-portal[data-running=false] .portal-effects-enter,.gaming-portal[data-running=false] .portal-world-caption{animation:none}.portal-embers i{width:3px;height:5px;animation:4s linear infinite portal-ember;animation-delay:calc(var(--i) * -.5s);background:#ffbf6b;border-radius:50%;position:absolute;top:73%;box-shadow:0 0 5px #fa8e45}.portal-smoke{background:radial-gradient(at 30% 65%,#abc1be30,#0000 50%),radial-gradient(at 70% 45%,#9eb2b630,#0000 55%);width:56%;height:25%;animation:8s ease-in-out infinite alternate portal-cloud-drift;position:absolute;top:61%;left:21%}.portal-smoke--industrial{background:radial-gradient(#b7afaa33,#0000 65%);top:40%}.portal-leaves i{width:9px;height:5px;animation:8s linear infinite portal-leaf;animation-delay:calc(var(--i) * -1.3s);background:#86c784;border-radius:80% 0;position:absolute;top:37%;left:26%}.portal-cloud{background:radial-gradient(#fff9,#fff0 70%);border-radius:50%;width:15%;height:7%;animation:10s ease-in-out infinite alternate portal-cloud-drift;position:absolute;top:26%}.portal-cloud--one{left:20%}.portal-cloud--two{animation-delay:-5s;top:46%;right:20%}.portal-grasses i{clip-path:polygon(48% 100%,0 15%,40% 60%,45% 0,62% 60%,100% 15%,68% 100%);transform-origin:bottom;width:21px;height:45px;animation:3s ease-in-out infinite alternate portal-grass;animation-delay:calc(var(--i) * -.7s);background:linear-gradient(#acd27e,#477541);position:absolute;top:73%}.portal-crystal-anchor{width:30px;height:67px;animation:5s ease-in-out infinite portal-island-float;animation-delay:calc(var(--i) * -1.2s);position:absolute;top:68%}.portal-crystal{clip-path:polygon(50% 0,100% 35%,90% 75%,50% 100%,8% 75%,0 35%);background:linear-gradient(105deg,#d5cbff 0 30%,#8d70c9 31% 62%,#604196 63%);width:100%;height:100%}.portal-crystal span{background:linear-gradient(40deg,#0000 25%,#fff7 50%,#0000 70%);width:100%;height:100%;animation:4s ease-in-out infinite portal-crystal-glint;display:block}.portal-torch{background:#806644;width:7px;height:34px;position:absolute;top:66%}.portal-torch--left{left:35%}.portal-torch--right{right:35%}.portal-torch i,.portal-fire i{clip-path:polygon(50% 0,85% 40%,100% 85%,50% 100%,0 85%,15% 40%);transform-origin:bottom;background:linear-gradient(#0000,#ff7845 35%,#ffba45);width:23px;height:33px;animation:.9s ease-in-out infinite alternate portal-flame;position:absolute;bottom:90%;left:-8px}.portal-pixel-motes i{width:4px;height:4px;top:50%;left:calc(25% + var(--i) * 9%);animation:5s linear infinite portal-ember;animation-delay:calc(var(--i) * -.7s);background:#c7b4ff;position:absolute}.portal-rain{background:repeating-linear-gradient(110deg,#0000 0 19px,#d8e9f52b 20px 21px,#0000 22px 38px);animation:.9s linear infinite portal-rain-fall;position:absolute;inset:-25%}.portal-emergency-light{transform-origin:100%;clip-path:polygon(100% 50%,0 0,0 100%);background:linear-gradient(90deg,#0000,#ed97502b);width:30%;height:30%;animation:7s ease-in-out infinite alternate portal-searchlight;position:absolute;top:43%;right:24%}.portal-lamp{background:#586669;width:3px;height:120px;position:absolute;top:52%;right:26%}.portal-lamp i{background:#f2c390;width:17px;height:5px;position:absolute;top:0;right:0;box-shadow:0 0 9px #ed9750}.portal-runes{justify-content:space-around;width:36%;display:flex;position:absolute;top:74%;left:32%}.portal-runes span{color:#f3d29c;text-shadow:0 0 8px #eeba70;animation:4s ease-in-out infinite portal-rune;animation-delay:calc(var(--i) * -1s);font-size:28px}.portal-fire{background:#554533;width:25px;height:8px;position:absolute;top:78%;left:50%}.portal-fire i:nth-child(2){background:linear-gradient(#ffbb64,#ffe8a7);width:13px;height:25px;animation-delay:-.4s;left:5px}.portal-magic-stream{border:1px dashed #ada6e9;border-radius:50%;width:40%;height:13%;animation:5s ease-in-out infinite portal-magic;position:absolute;top:67%;left:30%}.portal-local-fx{pointer-events:none;position:absolute;inset:0}.portal-local-fx svg{width:100%;height:100%}.portal-local-flecks{position:absolute;top:52%;left:38%}.portal-local-flecks i{color:#68ded9;width:4px;height:4px;animation:3.2s ease-out infinite portal-local-scatter;animation-delay:calc(var(--i) * -.61s);background:#b5ffff;position:absolute;box-shadow:0 0 6px}.portal-ripple{width:19%;height:6%;position:absolute;top:42%;left:55%}.portal-ripple i{border:1px solid #b9f5ff;border-radius:50%;animation:3.6s ease-out infinite portal-local-ripple;position:absolute;inset:0}.portal-ripple i:nth-child(2){animation-delay:-1.8s}.portal-water-spray{width:8%;height:16%;position:absolute;top:63%;left:68%}.portal-water-spray i{background:#c5faff;border-radius:50%;width:3px;height:6px;animation:2.4s ease-out infinite portal-water-drop;position:absolute;left:30%}.portal-water-spray i:nth-child(2){animation-delay:-.8s;left:60%}.portal-water-spray i:nth-child(3){animation-delay:-1.6s;left:85%}.portal-local-flecks--weld{top:49%;left:44%}.portal-local-flecks--weld i{color:#ffa760;background:#ffdc92;animation-duration:1.8s}.portal-steam{width:12%;height:26%;position:absolute;top:18%;left:61%}.portal-steam i{background:radial-gradient(#d7dfe655,#0000 70%);animation:5s ease-out infinite portal-steam-rise;position:absolute;inset:15%}.portal-steam i:nth-child(2){animation-delay:-2.5s}.portal-butterfly{width:7%;height:6%;animation:8s ease-in-out infinite portal-butterfly-flight;position:absolute;top:24%;left:26%}.portal-butterfly--two{width:5%;animation-direction:reverse;animation-delay:-4s;top:40%;left:68%}.portal-butterfly i{transform-origin:100%;background:linear-gradient(120deg,#fff1b1,#f2b15f 60%,#775380);border-radius:70% 30% 50% 35%;width:48%;height:100%;animation:.7s ease-in-out infinite alternate portal-wing;position:absolute;top:0;left:0}.portal-butterfly i:nth-child(2){transform-origin:0;border-radius:30% 70% 35% 50%;left:50%}.portal-local-flecks--pollen{top:40%;left:48%}.portal-local-flecks--pollen i{color:#dbcc79;background:#ffe7a0;border-radius:50%;animation-duration:5s}.portal-ripple--spring{width:16%;top:47%;left:44%}.portal-crystal-beam{clip-path:polygon(40% 100%,0 0,100% 0,60% 100%);transform-origin:bottom;background:linear-gradient(#0000,#c09bff88);width:10%;height:42%;animation:5s ease-in-out infinite portal-beam-breathe;position:absolute;top:17%;left:59%}.portal-cave-glow{background:radial-gradient(#bb83ff55,#0000 70%);width:60%;height:42%;animation:6s ease-in-out infinite portal-glow-breathe;position:absolute;top:23%;left:18%}.portal-cave-orbs{width:50%;height:20%;position:absolute;top:40%;left:25%}.portal-cave-orbs i{color:#a1f9ff;background:currentColor;border-radius:50%;width:5px;height:5px;animation:6s ease-in-out infinite portal-cave-orbit;position:absolute;box-shadow:0 0 9px}.portal-cave-orbs i:nth-child(2){color:#d9aeff;animation-delay:-2s;left:45%}.portal-cave-orbs i:nth-child(3){animation-delay:-4s;left:80%}.portal-ripple--crystal{top:60%;left:38%}.portal-ripple--crystal i{border-style:dashed;border-color:#b692ed}.portal-warning-beacon{width:14%;height:12%;position:absolute;top:35%;left:55%}.portal-warning-beacon i{background:radial-gradient(#ff7f5fcc,#0000 70%);animation:3s ease-in-out infinite portal-warning;position:absolute;inset:0 40% 0 0}.portal-warning-beacon i:nth-child(2){background:radial-gradient(#82caffaa,#0000 70%);animation-delay:-1.5s;inset:0 0 0 40%}.portal-headlight{clip-path:polygon(100% 43%,0 0,0 100%,100% 57%);transform-origin:100%;background:linear-gradient(90deg,#0000,#f6dea966);width:35%;height:18%;animation:7s ease-in-out infinite alternate portal-headlight-sweep;position:absolute;top:40%;left:31%}.portal-ripple--puddle{width:17%;top:62%;left:28%}.portal-ripple--puddle i{border-color:#bdc9cf99}.portal-road-mist{width:68%;height:23%;position:absolute;top:50%;left:15%}.portal-road-mist i{background:radial-gradient(#b5c4bf44,#0000 65%);animation:9s ease-in-out infinite alternate portal-cloud-drift;position:absolute;inset:0}.portal-road-mist i:nth-child(2){animation-delay:-4.5s;inset:15% 20%}.portal-aurora{width:65%;height:51%;position:absolute;top:-26%;left:17%}.portal-aurora i{clip-path:polygon(0 15%,30% 30%,65% 10%,100% 25%,100% 90%,70% 70%,40% 90%,0 60%);background:linear-gradient(100deg,#0000 15%,#7cf7c038,#80bdff38 55%,#0000 80%);animation:10s ease-in-out infinite alternate portal-aurora-drift;position:absolute;inset:0}.portal-aurora i:nth-child(2){opacity:.5;animation-delay:-5s;inset:5% 10%}.portal-local-flecks--snow{top:5%;left:52%}.portal-local-flecks--snow i{color:#deeff3;background:#e5f7ff;border-radius:50%;width:3px;height:3px;animation-name:portal-snow-drift;animation-duration:6s}.portal-ripple--fjord{width:31%;top:54%;left:40%}.portal-rune-stone-glow{background:radial-gradient(#e0c59355,#0000 70%);width:16%;height:25%;animation:4s ease-in-out infinite portal-glow-breathe;position:absolute;top:23%;left:43%}.portal-spell-sigil{width:29%;height:12%;position:absolute;top:50%;left:36%}.portal-spell-sigil i{border:1px dashed #b1b5ff;border-radius:50%;animation:8s linear infinite portal-sigil;position:absolute;inset:0}.portal-spell-sigil i:nth-child(2){border-color:#8feaff;animation-direction:reverse;inset:20%}.portal-local-flecks--magic{top:49%;left:51%}.portal-local-flecks--magic i{color:#b5afff;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);background:#b5dfff;width:5px;height:7px;animation-duration:4.5s}.portal-magic-wisps{width:59%;height:20%;position:absolute;top:31%;left:21%}.portal-magic-wisps i{background:#b0eaff;border-radius:50%;width:8px;height:5px;animation:7s ease-in-out infinite portal-wisp;position:absolute;box-shadow:0 0 8px #a3b6ff}.portal-magic-wisps i:nth-child(2){background:#d6b6ff;animation-delay:-3.5s}@keyframes portal-local-scatter{0%,15%{opacity:0;transform:translate(0)scale(.5)}35%{opacity:.9}to{opacity:0;transform:translate(var(--drift-x), var(--drift-y)) scale(.3)}}@keyframes portal-mine{0%,55%,to{transform:rotate(-20deg)translateY(-3px)}65%,76%{transform:rotate(36deg)translateY(7px)}}@keyframes portal-local-ripple{0%{opacity:.65;transform:scale(.3)}to{opacity:0;transform:scale(1.25)}}@keyframes portal-water-drop{0%{opacity:0;transform:translateY(0)}25%{opacity:.85}to{opacity:0;transform:translateY(24px)}}@keyframes portal-welder{50%{transform:rotate(-12deg)translate(-4px)}}@keyframes portal-weld-light{0%,20%,80%,to{opacity:.15;transform:scale(.6)}40%,60%{opacity:.95;transform:scale(1)}}@keyframes portal-steam-rise{0%{opacity:0;transform:translateY(16px)scale(.6)}30%{opacity:.65}to{opacity:0;transform:translate(-9px,-20px)scale(1.1)}}@keyframes portal-butterfly-flight{0%,to{transform:translate(0)rotate(-9deg)}35%{transform:translate(20px,-15px)rotate(12deg)}70%{transform:translate(-8px,-22px)rotate(-16deg)}}@keyframes portal-wing{to{transform:scaleX(.3)}}@keyframes portal-beam-breathe{50%{opacity:.3;transform:scaleX(1.15)rotate(7deg)}}@keyframes portal-glow-breathe{50%{opacity:.3;transform:scale(.9)}}@keyframes portal-cave-orbit{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translate(12px,-18px)}}@keyframes portal-warning{0%,to{opacity:.12}50%{opacity:.8}}@keyframes portal-headlight-sweep{to{opacity:.35;transform:rotate(-12deg)}}@keyframes portal-aurora-drift{to{opacity:.35;transform:translate(14px)skew(-9deg)}}@keyframes portal-snow-drift{0%{opacity:0;transform:translate(var(--drift-x), -10px)}25%{opacity:.8}to{opacity:0;transform:translate(calc(var(--drift-x) * -1), 90px)}}@keyframes portal-sigil{50%{opacity:.35;transform:rotate(180deg)scale(1.15)}to{transform:rotate(360deg)}}@keyframes portal-wisp{0%,to{opacity:.2;transform:translateY(10px)}50%{opacity:.9;transform:translate(48px,-8px)}}@media (width<=600px){.portal-turret:nth-child(2),.portal-longboat:nth-child(2),.portal-local-flecks i:nth-child(n+4),.portal-steam i:nth-child(2),.portal-butterfly--two,.portal-cave-orbs i:nth-child(3),.portal-road-mist i:nth-child(2),.portal-aurora i:nth-child(2),.portal-magic-wisps i:nth-child(2),.portal-water-spray i:nth-child(3){display:none}}.light .portal-orbit{border-color:color-mix(in srgb, var(--primary) 28%, transparent)}.light .portal-stardust i{background:var(--primary);box-shadow:none}.light .portal-aura{opacity:.65}@keyframes portal-spin{to{transform:rotate(360deg)}}@keyframes portal-world-pan{0%{transform:scale(1.07)translate(-1%)}to{transform:scale(1.16)translate(1%)}}@keyframes portal-arrive{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes portal-caption{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes portal-island-float{50%{transform:translateY(-7px)}}@keyframes portal-water{to{transform:translateY(13px)}}@keyframes portal-block-assemble{0%,to{opacity:.6;transform:translateY(9px)rotate(-8deg)}45%,65%{transform:translate3d(var(--join-x), var(--join-y), 15px) rotate(0deg);opacity:1}}@keyframes portal-mote{0%,to{opacity:.15;transform:translateY(8px)}50%{opacity:.85;transform:translateY(-12px)}}@keyframes portal-ember{0%{opacity:0;transform:translateY(0)}20%{opacity:.9}to{opacity:0;transform:translate(25px,-120px)}}@keyframes portal-cloud-drift{0%{opacity:.3;transform:translate(-12px)}to{opacity:.65;transform:translate(22px)}}@keyframes portal-leaf{0%{opacity:0;transform:translate(0)rotate(0)}15%,75%{opacity:1}to{opacity:0;transform:translate(230px,100px)rotate(240deg)}}@keyframes portal-grass{0%{transform:rotate(-8deg)}to{transform:rotate(8deg)}}@keyframes portal-crystal-glint{50%{opacity:.25;transform:translateY(8px)}}@keyframes portal-flame{0%{transform:scale(.8,.85)rotate(-5deg)}to{transform:scale(1.05,1.08)rotate(5deg)}}@keyframes portal-rain-fall{to{transform:translate(-12px,38px)}}@keyframes portal-searchlight{0%{opacity:.25;transform:rotate(-15deg)}to{opacity:.8;transform:rotate(20deg)}}@keyframes portal-rune{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-5px)}}@keyframes portal-magic{50%{opacity:.3;transform:rotate(-8deg)scale(1.12)}}@media (width<=800px){.portal-game-selector{gap:5px}.portal-game-selector button{flex-direction:column;gap:6px;font-size:10px}.portal-world-caption{top:8%}.portal-world-caption p{font-size:10px}}@media (width<=600px){.gaming-portal{margin-top:48px}.portal-topline{letter-spacing:.08em;padding:0;font-size:8px}.portal-topline button{flex-shrink:0;padding:7px;font-size:9px}.portal-stage{aspect-ratio:.96}.portal-gateway{width:86%;top:4%;left:7%}.portal-island,.portal-actors-3d{width:72%;top:42%;left:14%}.portal-world-caption{text-align:center;width:100%;top:auto;bottom:0;left:0}.portal-world-caption>span{font-size:8px}.portal-world-caption strong{margin-left:10px;font-size:19px;display:inline}.portal-world-caption p{margin-top:5px;font-size:11px}.portal-orbit{width:95%;height:26%;top:35%;left:2.5%}.portal-controls{margin-top:22px}.portal-game-selector{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.portal-game-selector button{flex-direction:row;gap:4px;min-height:44px;font-size:9px}.portal-game-selector img{width:17px;height:17px}.portal-actions{flex-direction:column;gap:4px;margin-top:18px}.portal-cta{width:100%;font-size:12px}.portal-water-glint{width:6%;height:13%;top:68%;left:64%}.portal-stardust i:nth-child(n+6),.portal-embers i:nth-child(n+5){display:none}.portal-crystal-anchor{width:20px;height:45px}.portal-lamp{height:80px}.portal-runes{top:70%}.portal-runes span{font-size:21px}.portal-fire{top:72%}}.home-services{background-image:radial-gradient(at 0 60%,#06b6d410,#0000 55%),radial-gradient(at 100% 60%,#8b5cf612,#0000 55%)}.home-service{--service-color:#0e7490;isolation:isolate;border:1px solid var(--border);background:var(--card);border-radius:28px;transition:transform .25s,border-color .25s,box-shadow .25s;position:relative;overflow:hidden}.home-service--violet{--service-color:#7c3aed}.dark .home-service{--service-color:#67e8f9}.dark .home-service--violet{--service-color:#c4b5fd}.home-service:before{content:"";pointer-events:none;background:radial-gradient(400px circle at var(--spot-x,50%) var(--spot-y,25%),color-mix(in srgb,var(--service-color) 14%,transparent),transparent 75%);opacity:.45;transition:opacity .25s;position:absolute;inset:0}.home-service-content{padding:clamp(22px,3vw,38px);position:relative}.service-accent{color:var(--service-color)}.service-icon{background:color-mix(in srgb,var(--service-color) 10%,transparent);width:52px;height:52px;color:var(--service-color);border:1px solid color-mix(in srgb,var(--service-color) 30%,transparent);border-radius:16px;place-items:center;display:grid}.service-scene{border:1px solid var(--border);background:linear-gradient(135deg,color-mix(in srgb,var(--service-color) 8%,transparent),transparent);border-radius:20px;place-items:center;height:220px;display:grid;position:relative;overflow:hidden}.service-orbit{border:1px dashed color-mix(in srgb,var(--service-color) 30%,transparent);border-radius:50%;width:270px;height:270px;position:absolute}.service-rack,.service-browser{width:75%;max-width:300px;position:relative}.service-node{border:1px solid color-mix(in srgb,var(--service-color) 30%,transparent);background:var(--card);color:var(--service-color);border-radius:10px;align-items:center;gap:12px;margin:8px 0;padding:12px;display:flex;box-shadow:0 6px 18px #0000000a}.service-led{background:var(--service-color);width:5px;height:5px;box-shadow:0 0 8px var(--service-color);border-radius:50%}.service-browser{border:1px solid var(--border);background:var(--card);border-radius:12px;overflow:hidden;box-shadow:0 14px 25px #00000012}.service-browser i{background:var(--service-color);opacity:.5;border-radius:50%;width:6px;height:6px}.service-preview-title{background:var(--service-color);border-radius:4px;width:50%;height:10px}.service-preview-tile{height:48px;color:var(--service-color);background:color-mix(in srgb,var(--service-color) 12%,transparent);border-radius:8px;place-items:center;display:grid}.service-scene-label{letter-spacing:.15em;color:var(--muted-foreground);font-size:8px;position:absolute;bottom:8px}.service-use{border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-size:12px;transition:background .2s,border-color .2s}.service-use[aria-pressed=true]{border-color:var(--service-color);background:color-mix(in srgb,var(--service-color) 12%,transparent);color:var(--service-color)}.service-cta{background:var(--service-color);color:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;font-size:14px;font-weight:800;display:flex}.dark .service-cta{color:#0f172a}.service-cta svg{transition:transform .2s}.home-services :is(a,button):focus-visible{outline:3px solid var(--service-color);outline-offset:4px}@media (hover:hover){.home-service:hover{border-color:var(--service-color);box-shadow:0 20px 55px -30px color-mix(in srgb,var(--service-color) 50%,transparent)}.home-service:hover:before{opacity:1}.service-use:hover{border-color:var(--service-color)}}.service-orbit{animation:35s linear infinite service-orbit}.service-rack,.service-browser{animation:6s ease-in-out infinite service-float}.home-service--violet .service-browser{animation-delay:-3s}@media (hover:hover){.home-service:hover{transform:translateY(-5px)}.service-cta:hover svg{transform:translate(3px,-3px)}}@keyframes service-float{50%{transform:translateY(-7px)}}@keyframes service-orbit{to{transform:rotate(360deg)}}.service-cinema{background:#081021;height:320px;position:relative;overflow:hidden}.service-cinema img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .6s}.home-service--violet .service-cinema img{object-position:75% center}.service-cinema:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#020617aa);position:absolute;inset:0}.service-cinema-glow{filter:blur(45px);opacity:.5;pointer-events:none;background:#22d3ee;width:70%;height:80%;position:absolute;bottom:-55%;left:15%}.home-service--violet .service-cinema-glow{background:#a855f7}.service-image-badge{z-index:2;color:#fff;letter-spacing:.12em;background:#020617d9;border:1px solid #ffffff60;border-radius:12px;align-items:center;gap:10px;padding:12px 16px;font-size:11px;font-weight:800;display:flex;position:absolute;bottom:24px;left:24px}.service-image-note{z-index:2;color:#fff;background:#020617b3;border-radius:6px;padding:4px 8px;font-size:9px;position:absolute;top:15px;right:15px}.service-light-trail{pointer-events:none;background:linear-gradient(110deg,#0000 44%,#67e8f91a 48%,#ffffff45 50%,#0000 54%);position:absolute;inset:-50%;transform:translate(-75%)}.home-service{box-shadow:0 18px 65px -35px #0891b270}.home-service--violet{box-shadow:0 18px 65px -35px #8b5cf680}.home-service:before{z-index:1}.home-service-content{z-index:2}.service-cinema-glow{animation:4s ease-in-out infinite alternate service-breathe}.service-light-trail{animation:9s ease-in-out infinite service-sweep}.home-service--violet .service-light-trail{animation-delay:3s}@media (hover:hover){.home-service:hover .service-cinema img{filter:brightness(1.2);transform:scale(1.1)rotate(-1deg)}}@media (width<=640px){.service-cinema{height:240px}.service-image-badge{font-size:9px;bottom:16px;left:16px}}@keyframes service-breathe{to{opacity:.85;transform:translateY(-30px)scale(1.2)}}@keyframes service-sweep{0%,30%{transform:translate(-75%)}65%,to{transform:translate(75%)}}.service-tech-scene{--tech-ink:#0e7490;--tech-fill:#e0f2fe;background:radial-gradient(ellipse at center,#22d3ee26,transparent 75%),var(--card);padding:30px 0 22px;position:relative;overflow:hidden}.home-service--violet .service-tech-scene{--tech-ink:#7c3aed;--tech-fill:#ede9fe}.dark .service-tech-scene{--tech-ink:#67e8f9;--tech-fill:#123047}.dark .home-service--violet .service-tech-scene{--tech-ink:#c4b5fd;--tech-fill:#261d48}.service-tech-scene svg{width:100%;height:auto;display:block}.tech-grid{stroke:var(--tech-ink);stroke-width:.5px;opacity:.12}.tech-traces{fill:none;stroke:var(--tech-ink);stroke-width:2px;opacity:.35}.tech-packets{fill:none;stroke:var(--tech-ink);stroke-width:3px;stroke-dasharray:12 90;filter:drop-shadow(0 0 5px var(--tech-ink))}.tech-chip{fill:var(--tech-fill);stroke:var(--tech-ink);stroke-width:1.5px}.tech-chip text,.tech-label,.tech-caption{fill:var(--tech-ink);stroke:none;text-anchor:middle;font:700 22px ui-monospace,monospace}.tech-chip .tech-small,.tech-label{font-size:11px}.tech-caption{letter-spacing:1px;font-size:10px}.tech-globe{fill:var(--tech-fill);stroke:var(--tech-ink);stroke-width:1px}.tech-globe ellipse,.tech-globe path{fill:none;opacity:.4}.tech-globe .tech-land{fill:var(--tech-ink);opacity:.35}.tech-node{fill:var(--tech-ink)}.tech-node-halo{fill:none;stroke:var(--tech-ink);opacity:.4}.tech-pause{color:var(--foreground);background:var(--card);border:1px solid var(--border);border-radius:8px;padding:5px 9px;font-size:10px;position:absolute;top:10px;right:14px}.tech-disclaimer{text-align:center;color:var(--muted-foreground);font-size:9px;display:block}.tech-node-halo{animation:3s ease-in-out infinite tech-pulse}.is-paused *{animation-play-state:paused!important}.tech-moving-data{fill:#fff;stroke:var(--tech-ink);stroke-width:2px;filter:drop-shadow(0 0 4px var(--tech-ink)) drop-shadow(0 0 8px var(--tech-ink))}@keyframes tech-flow{to{stroke-dashoffset:-204px}}@keyframes tech-pulse{50%{opacity:.9;stroke-width:3px}}.service-tech-scene{box-shadow:inset 0 0 65px color-mix(in srgb,var(--tech-ink) 12%,transparent)}.tech-energy-rings{fill:none;stroke:var(--tech-ink);stroke-width:1.5px;opacity:.35}.tech-energy-rings circle{transform-box:fill-box;transform-origin:50%}.tech-sparks{fill:var(--tech-ink);filter:drop-shadow(0 0 5px var(--tech-ink))}.tech-packets{stroke-width:4px;stroke-dasharray:22 65 5 65;stroke-linecap:round;filter:drop-shadow(0 0 4px var(--tech-ink)) drop-shadow(0 0 10px var(--tech-ink))}.tech-chip{filter:drop-shadow(0 0 4px color-mix(in srgb,var(--tech-ink) 45%,transparent))}.tech-node{filter:drop-shadow(0 0 7px var(--tech-ink))}.tech-packets{animation:none}.tech-packets path{animation:2.8s linear infinite tech-data-rush}.tech-packets path:nth-child(2){animation-delay:-1.4s}.tech-packets path:nth-child(3){animation-delay:-.7s}.tech-energy-rings circle{animation:4s ease-out infinite tech-energy-wave}.tech-energy-rings circle:nth-child(2){animation-delay:-2s}.tech-chip{animation:4s ease-in-out infinite tech-component-energy}.tech-chip:nth-of-type(2n){animation-delay:-2s}.tech-sparks circle{animation:5s ease-in-out infinite tech-spark-drift}.tech-world .tech-globe{transform-origin:300px 150px;animation:9s ease-in-out infinite alternate tech-globe-drift}.service-tech-scene.is-paused *,.service-tech-scene.is-paused:before{animation-play-state:paused!important}@keyframes tech-data-rush{to{stroke-dashoffset:-314px}}@keyframes tech-energy-wave{0%{opacity:.65;transform:scale(.8)}to{opacity:0;transform:scale(1.5)}}@keyframes tech-component-energy{50%{filter:drop-shadow(0 0 12px color-mix(in srgb,var(--tech-ink) 70%,transparent))}}@keyframes tech-spark-drift{0%,to{opacity:.15;transform:translateY(10px)}50%{opacity:.85;transform:translateY(-14px)}}@keyframes tech-globe-drift{0%{transform:rotate(-5deg)}to{transform:rotate(5deg)}}.home-technology{border-block:1px solid var(--border);background:color-mix(in srgb, var(--surface) 32%, var(--background));padding-block:clamp(72px,8vw,112px);scroll-margin-top:108px;position:relative}.technology-heading{border-bottom:1px solid var(--border);align-items:end;gap:28px;padding-bottom:32px;display:grid}.technology-summary{flex-direction:column;align-items:flex-start;gap:16px;display:flex}.technology-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%;display:grid}.technology-stats>div{text-align:center;border:1px solid var(--border);background:var(--card);border-radius:16px;flex-direction:column-reverse;gap:4px;min-width:96px;padding:14px 12px;display:flex}.technology-stats dt{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.04em;font-size:9px;font-weight:700}.technology-stats dd{color:var(--foreground);font-size:22px;font-weight:900;line-height:1.2}.technology-motion-control{color:var(--muted-foreground);background:var(--card);border:1px solid var(--border);cursor:pointer;border-radius:99px;align-items:center;gap:7px;padding:7px 11px;font-size:11px;font-weight:600;transition:color .2s,border-color .2s;display:inline-flex}.technology-motion-control:hover{color:var(--foreground);border-color:var(--primary)}.technology-motion-control:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.technology-grid{gap:20px;margin-top:30px;display:grid}.technology-card{--tech-accent:#7350c6;border:1px solid var(--border);background:var(--card);min-width:0;color:var(--foreground);box-shadow:0 12px 32px -26px color-mix(in srgb, var(--tech-accent) 50%, transparent);border-radius:22px;flex-direction:column;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.technology-card[data-kind=cpu],.technology-card[data-kind=storage]{--tech-accent:#087c9f}.technology-card[data-kind=network]{--tech-accent:#286cd5}.technology-card[data-kind=deployment]{--tech-accent:#177958}.technology-card[data-kind=support]{--tech-accent:#8e47b5}.dark .technology-card{--tech-accent:#af87ff}.dark .technology-card[data-kind=cpu],.dark .technology-card[data-kind=storage]{--tech-accent:#57dff3}.dark .technology-card[data-kind=network]{--tech-accent:#79adff}.dark .technology-card[data-kind=deployment]{--tech-accent:#68e4b0}.dark .technology-card[data-kind=support]{--tech-accent:#d2a0fa}.technology-image{aspect-ratio:4/3;isolation:isolate;background:var(--surface-2);position:relative;overflow:hidden}.technology-image img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.technology-image-shade{background:linear-gradient(#0000 58%,#0000008c);position:absolute;inset:0}.technology-image-icon,.technology-image-label{color:#fff;background:#050c17b8;border:1px solid #ffffff42;justify-content:center;align-items:center;display:inline-flex;position:absolute}.technology-image-icon{border-radius:12px;width:37px;height:37px;top:14px;left:14px}.technology-image-label{text-transform:uppercase;letter-spacing:.11em;border-radius:99px;gap:7px;padding:6px 10px;font-size:9px;font-weight:800;bottom:14px;right:14px}.technology-image-label i{background:var(--fx-color);width:5px;height:5px;box-shadow:0 0 6px var(--fx-color);border-radius:50%}.technology-image{--fx-color:#ad87ff}[data-kind=cpu] .technology-image,[data-kind=storage] .technology-image{--fx-color:#62e1fb}[data-kind=network] .technology-image{--fx-color:#79b8ff}[data-kind=deployment] .technology-image{--fx-color:#6ce6b4}[data-kind=support] .technology-image{--fx-color:#d7abff}.technology-content{flex-direction:column;flex:1;padding:22px;display:flex}.technology-content h3{letter-spacing:-.025em;font-size:20px;font-weight:850;line-height:1.3}.technology-description{color:var(--muted-foreground);margin-top:9px;font-size:13px;line-height:1.7}.technology-outcome{border-left:2px solid color-mix(in srgb, var(--tech-accent) 65%, transparent);margin-block:20px;padding-left:12px}.technology-outcome-label{color:var(--tech-accent);text-transform:uppercase;letter-spacing:.14em;margin-bottom:5px;font-size:9px;font-weight:800}.technology-outcome p:not(.technology-outcome-label){color:var(--foreground);font-size:13px;line-height:1.65}.technology-features{border-top:1px solid var(--border);gap:7px;margin-top:auto;padding-top:15px;display:grid}.technology-features li{color:var(--muted-foreground);align-items:flex-start;gap:7px;font-size:11px;line-height:1.5;display:flex}.technology-features svg{color:var(--tech-accent);flex-shrink:0;margin-top:2px}.technology-caption{color:var(--muted-foreground);text-align:center;margin-top:22px;font-size:11px;line-height:1.6}.technology-effect{pointer-events:none;fill:none;width:100%;height:100%;stroke:var(--fx-color);stroke-linecap:round;stroke-linejoin:round;position:absolute;inset:0}.technology-trace{opacity:.22;stroke-width:1px}.technology-packet{stroke-width:3px;stroke-dasharray:2 48;animation:5s linear infinite technology-flow;animation-delay:var(--flow-delay);filter:drop-shadow(0 0 3px var(--fx-color))}.technology-packet--incoming{stroke:#ffae7f;stroke-dasharray:1 49;opacity:.78;filter:none}.technology-core{stroke-width:1.5px;animation:4.5s ease-in-out infinite technology-breathe}.technology-shield-wave{stroke-width:3px;animation:4s ease-in-out infinite technology-breathe}.technology-hub{stroke-width:1.5px;animation:4s ease-in-out infinite technology-breathe}.technology-hub circle:last-child{fill:var(--fx-color);stroke:none}.technology-stage-light{fill:var(--fx-color);stroke:none;animation:4.5s ease-in-out infinite technology-stage;animation-delay:var(--stage-delay)}.technology-screen-lights{fill:var(--fx-color);stroke:none;animation:5s ease-in-out infinite technology-breathe}.technology-effect--support .technology-packet{stroke-dasharray:1 99;stroke-width:2px}.technology-card:not([data-visible=true]) .technology-effect *,.home-technology[data-paused=true] .technology-effect *,.home-technology[data-page-visible=false] .technology-effect *{animation-play-state:paused}.home-technology[data-observed=true] .technology-card:not([data-revealed=true]){opacity:0;transform:translateY(12px)}.technology-card[data-revealed=true]{animation:.55s backwards technology-enter;animation-delay:var(--reveal-delay)}@keyframes technology-flow{to{stroke-dashoffset:-100px}}@keyframes technology-breathe{0%,to{opacity:.25}50%{opacity:.85}}@keyframes technology-stage{0%,20%,to{opacity:.2}35%,65%{opacity:1}}@keyframes technology-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width>=640px){.technology-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=639px){.technology-motion-control{min-height:44px;padding-inline:14px}}@media (width>=1100px){.technology-heading{grid-template-columns:minmax(0,1fr) auto;gap:36px}.technology-summary{align-items:flex-end}.technology-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (hover:hover) and (pointer:fine){.technology-card:hover{border-color:color-mix(in srgb, var(--tech-accent) 60%, var(--border));box-shadow:0 18px 38px -22px color-mix(in srgb, var(--tech-accent) 26%, transparent);transform:translateY(-5px)}.technology-card:hover .technology-image img{transform:scale(1.035)}}@media (hover:none){.technology-card:active{border-color:var(--tech-accent)}.technology-effect .technology-packet{filter:none}}@media (prefers-reduced-motion:reduce){.technology-card,.technology-image img{transition:none}.technology-card[data-revealed=true]{animation:none}.technology-effect .technology-packet{animation-duration:15s}.technology-core,.technology-shield-wave,.technology-hub,.technology-stage-light,.technology-screen-lights{animation-duration:12s}.technology-card:hover,.technology-card:hover .technology-image img{transform:none}}
