@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--bg:#080b09;--panel:#0e130f;--green:#a0f65b;--text:#f4f6f1;--muted:#929b90;--line:#253025;color-scheme:dark;font-family:Manrope,Arial,sans-serif;background:var(--bg);color:var(--text)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--green);outline-offset:6px}button{border:0}::selection{background:var(--green);color:var(--bg)}.skip{position:fixed;left:20px;top:-80px;z-index:100;background:var(--green);color:#080b09;padding:16px}.skip:focus{top:12px}.reading-progress{position:fixed;left:0;top:0;width:100%;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;z-index:100}.header{height:92px;position:fixed;top:0;left:0;width:100%;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);border-bottom:1px solid #a0f65b13;background:#080b09e8;backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;font-size:25px;font-weight:800;letter-spacing:-1px}.brand>span:not(.brand-icon){color:var(--green)}.brand-icon{background:var(--green);color:#0b1008;font:900 25px monospace;width:34px;height:34px;display:grid;place-items:center;margin-right:13px;clip-path:polygon(0 0,80% 0,80% 20%,100% 20%,100% 80%,80% 80%,80% 100%,0 100%)}nav{display:flex;gap:34px}nav a{font-size:14px;color:#a6afa3;transition:color .2s}nav a:hover{color:var(--green)}.nav-cta{padding:13px 19px;border:1px solid #677c52;border-radius:5px;font-weight:700;font-size:14px;display:flex;gap:28px;transition:.2s}.nav-cta:hover{background:var(--green);color:#080b09}.scroll-stage{height:160svh;min-height:1120px}.hero{position:sticky;top:92px;height:calc(100svh - 92px);min-height:630px;max-height:1050px;display:grid;grid-template-columns:1.03fr 1fr;align-items:center;padding:30px 5vw 100px;overflow:hidden}.hero-grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#97c88105 1px,transparent 1px),linear-gradient(90deg,#97c88105 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,transparent,#000)}.hero-copy{position:relative;z-index:2;pointer-events:none}.hero-copy a,.hero-copy button{pointer-events:auto}.eyebrow{font-family:monospace;font-size:13px;font-weight:500;letter-spacing:1.5px;color:var(--green);display:flex;align-items:center;gap:10px}.tiny-square{height:6px;width:6px;background:var(--green)}.sep{color:#57604e;padding:0 3px}h1{font-weight:800;font-size:clamp(65px,7.7vw,126px);letter-spacing:-.075em;line-height:1.1;margin:22px 0 22px;white-space:nowrap}h1>span{color:var(--green)}h1 .title-dot{color:var(--text)}.hero h2{font-size:clamp(28px,3vw,44px);line-height:1.23;letter-spacing:-1.5px;font-weight:650;margin:0}.lead{font-size:16px;line-height:1.8;color:var(--muted);margin:25px 0 30px}.hero-actions{display:flex;gap:14px;align-items:stretch}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;font-weight:750;font-size:14px;min-height:56px;padding:17px 23px;border-radius:5px;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px);background:#b9ff81}.primary{background:var(--green);color:#0c1408}.button>span{font-size:22px}.ip-button{display:flex;align-items:center;justify-content:space-between;gap:23px;background:transparent;border:1px solid var(--line);border-radius:5px;padding:10px 18px;text-align:left;transition:border .2s}.ip-button:hover{border-color:var(--green)}.ip-button small{font:10px monospace;letter-spacing:1px;color:var(--muted);display:block;margin-bottom:5px}.ip-button strong{font:14px monospace}.ip-button svg{color:var(--muted)}.hero-meta{display:flex;gap:19px;font-size:12px;color:#a0aa97;margin-top:27px}.hero-meta span+span{border-left:1px solid #384332;padding-left:19px}.world{height:min(590px,65vw);position:relative;align-self:center;min-width:0}.world canvas{position:relative;width:100%;height:100%;z-index:1;display:block}.world-glow{position:absolute;width:80%;height:80%;left:15%;top:10%;background:radial-gradient(ellipse,#5c942020,transparent 65%);border-radius:50%}.world-fallback{position:absolute;inset:0;place-items:center}.world-fallback:not([hidden]){display:grid}.world-fallback img{width:100%}.scene-label{position:absolute;top:12%;left:9%;display:flex;align-items:center;gap:10px;font:11px monospace;letter-spacing:2px;color:#94a48a}.label-square{height:5px;width:5px;background:var(--green)}.label-line{height:1px;width:45px;background:#405133}.coordinates{position:absolute;bottom:11%;left:9%;font:11px monospace;color:#7a886f}.motion-control{position:absolute;right:8%;bottom:9%;z-index:2;background:#11180f;border:1px solid #35432b;border-radius:50%;width:36px;height:36px;font-size:15px;color:#a5b59b}.hero-bottom{position:absolute;bottom:32px;left:5vw;right:5vw;display:flex;justify-content:space-between;align-items:center}.scroll-hint{font:10px monospace;letter-spacing:1.3px;color:#9ba592;display:flex;align-items:center;gap:13px}.mouse{width:15px;height:23px;border:1px solid #738266;border-radius:8px;position:relative}.mouse:after{content:'';position:absolute;left:6px;top:4px;width:1px;height:5px;background:var(--green);animation:mouse 1.6s infinite}.world-count{font:12px monospace;color:#a6b39b}.world-count span{color:#495440;padding:0 12px}.ticker{overflow:hidden;border-block:1px solid #2d3c21;background:#10190c;padding:22px 0;position:relative;z-index:3}.ticker>div{display:flex;align-items:center;gap:52px;width:max-content;animation:ticker 38s linear infinite}.ticker span{font-weight:650;font-size:13px;letter-spacing:2.5px}.ticker b{color:var(--green);font-size:18px}.section{max-width:1440px;margin:auto;padding:110px 5vw;scroll-margin-top:0}.section-top{display:flex;justify-content:space-between;align-items:center}.section-note{font:10px monospace;letter-spacing:1.2px;color:#737f6a}.section-intro{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin:30px 0 55px}h2{font-size:clamp(35px,4.7vw,65px);letter-spacing:-2.5px;line-height:1.13;font-weight:650;margin:0}em{font-style:normal;color:var(--green)}.section-intro>p{max-width:385px;font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 4px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature{background:linear-gradient(145deg,#111810,#0d110e);border:1px solid #253021;border-radius:8px;padding:30px;min-height:320px;display:flex;flex-direction:column;transition:transform .3s,border-color .3s;position:relative;overflow:hidden}.feature:hover{transform:translateY(-7px);border-color:#6e9f46}.feature-top{display:flex;align-items:center;justify-content:space-between;color:var(--green);margin-bottom:38px}.feature-top>span:last-child{font:12px monospace;color:#6d7a61}.feature-symbol{font-size:42px;line-height:1}h3{font-size:22px;letter-spacing:-.6px;font-weight:650;margin:0 0 15px}.feature p{color:var(--muted);line-height:1.8;font-size:16px;margin:0 0 24px}.feature-tag{margin-top:auto;font:10px monospace;letter-spacing:1.6px;color:#8f9c84}.join{display:grid;grid-template-columns:1fr 1fr;gap:100px;border-top:1px solid #222b1f}.join h2{margin-top:29px}.join-heading>p,.community p{font-size:16px;line-height:1.8;color:var(--muted);margin:27px 0 30px}.join-version{font:10px monospace;color:#7f8d73;letter-spacing:1.5px;margin-top:20px}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:27px;padding:28px 0;border-bottom:1px solid #273221}.steps li:first-child{padding-top:0}.step-number{width:43px;height:43px;flex-shrink:0;display:grid;place-items:center;font:14px monospace;color:var(--green);border:1px solid #385026;background:#172210;border-radius:5px}.steps h3{font-size:21px;margin:4px 0 10px}.steps p{color:var(--muted);font-size:16px;line-height:1.8;margin:0}.server-copy{margin-top:17px;background:none;padding:0;color:var(--green);font:16px monospace;display:flex;gap:40px;align-items:center;min-height:34px}.server-copy:hover{color:#d0ffa9}.community{padding-top:30px;padding-bottom:95px}.community-inner{padding:58px;border:1px solid #334528;border-radius:9px;background:radial-gradient(ellipse at 0 0,#28441860,transparent 70%),#0f160c;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:55px;overflow:hidden}.community h2{font-size:clamp(35px,4vw,55px);margin-top:24px}.community p{font-size:15px;margin-bottom:0}.social-links{display:grid;gap:15px}.social-links>a{display:flex;align-items:center;justify-content:space-between;background:#a0f65b05;border:1px solid #3e5030;border-radius:5px;padding:24px 25px;font-size:26px;font-weight:650;transition:background .2s,transform .2s}.social-links>a:hover{background:#a0f65b15;transform:translateX(4px)}.social-links small{display:block;font:10px monospace;color:#96a688;letter-spacing:1px;margin-bottom:10px}.social-links>a>span:last-child{color:var(--green);font-size:30px}footer{margin:0 5vw;padding:32px 0 38px;border-top:1px solid #263020;display:flex;align-items:center;justify-content:space-between;gap:30px}footer p{font-size:12px;line-height:1.8;color:#9ca692;margin:0}footer p>span{color:#78846f}.footer-dot{margin-left:2px}.back-top{font-size:13px;color:#a8b39f}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);background:#172410;border:1px solid #7bb847;color:#daf6c6;padding:15px 23px;border-radius:6px;z-index:50;opacity:0;transition:.2s;pointer-events:none;font-size:14px;text-align:center;max-width:90vw}.toast.visible{opacity:1;transform:translate(-50%,0)}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(26px);transition:opacity .65s,transform .65s}.js-motion .reveal.visible{opacity:1;transform:translateY(0)}body.motion-paused *{animation-play-state:paused!important}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes mouse{to{transform:translateY(7px);opacity:0}}@media(min-width:1500px){.hero{padding-inline:max(5vw,calc((100vw - 1440px)/2))}.hero-bottom{left:max(5vw,calc((100vw - 1440px)/2));right:max(5vw,calc((100vw - 1440px)/2))}}@media(max-width:1100px){nav{gap:20px}.hero-actions{flex-wrap:wrap}.hero h2{font-size:34px}.hero{grid-template-columns:1.1fr 1fr}h1{font-size:8vw}.hero-meta{gap:10px}.hero-meta span+span{padding-left:10px}.join{gap:50px}.community-inner{padding:38px;gap:30px}.feature{padding:24px}}@media(max-width:760px){.header{height:72px;padding-inline:20px}.header .brand{font-size:22px}.brand-icon{width:29px;height:29px;font-size:22px;margin-right:8px}nav{display:none}.nav-cta{font-size:12px;padding:11px 12px;gap:10px}.scroll-stage{height:1490px;min-height:0}.hero{top:72px;height:auto;min-height:0;max-height:none;grid-template-columns:1fr;padding:50px 24px 62px}.hero-copy{z-index:2}.hero .eyebrow{font-size:11px;letter-spacing:1px}h1{font-size:clamp(57px,12.2vw,91px);margin:19px 0}.hero h2{font-size:30px;letter-spacing:-1px}.lead{font-size:16px;line-height:1.8;margin:20px 0 23px}.hero-actions{gap:10px;flex-wrap:nowrap}.button{font-size:12px;padding:14px 16px;gap:10px;min-height:55px}.ip-button{padding:9px 12px;gap:12px}.ip-button strong{font-size:12px}.ip-button small{font-size:9px}.ip-button svg{width:15px}.hero-meta{font-size:10px;margin-top:22px}.world{height:355px;margin:-5px -10px 0}.scene-label{top:12%;left:5%;font-size:9px}.coordinates{left:5%;bottom:8%;font-size:9px}.motion-control{bottom:5%;right:5%}.hero-bottom{bottom:22px;left:24px;right:24px}.scroll-hint{font-size:8px;letter-spacing:.4px;gap:8px}.world-count{font-size:10px}.world-count span{padding:0 7px}.ticker{padding-block:18px}.ticker span{font-size:11px}.ticker>div{gap:30px}.section{padding:75px 24px}.section-note{display:none}.section-intro{display:block;margin:24px 0 32px}.section-intro h2{font-size:40px;letter-spacing:-1.7px}.section-intro p{margin-top:25px;font-size:15px}.features{grid-template-columns:1fr;gap:14px}.feature{min-height:265px;padding:26px}.feature-top{margin-bottom:25px}.feature p{font-size:15px}.join{grid-template-columns:1fr;gap:42px}.join h2{font-size:42px;letter-spacing:-1.8px}.join .button{font-size:14px;padding-inline:20px}.steps li{gap:19px}.community{padding-top:0;padding-bottom:65px}.community-inner{grid-template-columns:1fr;padding:30px 24px;gap:30px}.community .eyebrow{font-size:10px;letter-spacing:.9px}.community h2{font-size:38px;letter-spacing:-1.8px}.social-links>a{padding:20px;font-size:24px}.social-links small{font-size:9px}footer{margin-inline:24px;flex-wrap:wrap;gap:25px}footer .brand{font-size:23px}footer p{order:3;width:100%;font-size:11px}footer .back-top{margin-left:auto}.js-motion .reveal{transform:translateY(18px)}}@media(max-width:370px){.hero-actions{flex-direction:column}.ip-button{justify-content:center}.hero-meta{gap:6px}.hero-meta span+span{padding-left:6px}.hero{padding-inline:19px}.hero h2{font-size:28px}.scroll-stage{height:1590px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}

/* The world is a viewport layer, outside every clipping or transformed hero. */
body{isolation:isolate;background:#050805}
.ambient-background{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
#world-canvas{position:fixed;inset:0;display:block;width:100%;height:100%;z-index:1;pointer-events:none}
#world-canvas[hidden]{display:none}
main,footer{position:relative;z-index:2}
.hero{overflow:visible}
.hero-grid{display:none}
.ambient-grid{position:absolute;inset:-80px;background-image:linear-gradient(#a0f65b07 1px,transparent 1px),linear-gradient(90deg,#a0f65b07 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(ellipse at 72% 42%,#000,transparent 76%);animation:grid-drift 70s linear infinite}
.ambient-glow{position:absolute;width:80vw;height:80vw;max-width:1100px;max-height:1100px;pointer-events:none;opacity:.65;will-change:transform;background:radial-gradient(ellipse,#74b92611,transparent 65%)}
.ambient-glow-one{top:-30%;right:-15%;animation:ambient-drift 28s ease-in-out infinite alternate}
.ambient-glow-two{bottom:-55%;left:-35%;background:radial-gradient(ellipse,#37a85510,transparent 64%);animation:ambient-drift 35s ease-in-out infinite alternate-reverse}
.world-glow{background:radial-gradient(ellipse,#70a7220d,transparent 65%);animation:world-breathe 9s ease-in-out infinite alternate}
.hero-copy{background:radial-gradient(ellipse at 35% 45%,#050805ed 0%,#050805a0 48%,#05080500 76%);text-shadow:0 2px 18px #000b}
.hero-copy .button{text-shadow:none}
.section-intro,.join-heading,.steps,.section-top{position:relative;text-shadow:0 2px 14px #000}
.section-intro:before,.join-heading:before,.steps:before{content:'';position:absolute;inset:-22px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse,#050805d9,#05080500 78%)}
.feature{background:linear-gradient(145deg,#10160ff5,#0a0e0bf5)}
.ticker{background:#0e170bf2}
.community-inner{background:radial-gradient(ellipse at 95% 0,#47772410,transparent 65%),#020402;gap:45px}
.community-connect{min-width:0;display:flex;flex-direction:column;gap:24px}
.community-logo{display:grid;place-items:center;position:relative;padding:3px 15px 8px}
.community-logo img{display:block;max-width:330px;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 15px 24px #78d42712);animation:logo-float 10s ease-in-out infinite}
.social-links>a{background:#080e06}
.motion-control{position:fixed;right:24px;bottom:24px;z-index:35;width:40px;height:40px;background:#0a110aeb;border-color:#4d653b;backdrop-filter:blur(8px)}
body.motion-paused .reveal{opacity:1;transform:none}
footer{background:linear-gradient(#05080500,#050805b3)}
@keyframes grid-drift{to{transform:translate3d(80px,80px,0)}}
@keyframes ambient-drift{to{transform:translate3d(-9vw,10vh,0) scale(1.1)}}
@keyframes world-breathe{to{opacity:.5;transform:scale(1.08)}}
@keyframes logo-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media(max-width:760px){
  .scroll-stage{height:auto;min-height:0}
  .hero{position:relative;top:0;padding-top:112px;padding-bottom:70px}
  .hero-copy{background:radial-gradient(ellipse,#050805eb,transparent 75%)}
  .world{height:350px;margin-top:0}
  .community-inner{gap:24px}
  .community-logo img{max-width:275px}
  .community-logo{padding:0 8px 14px}
  .community-connect{gap:16px}
  .motion-control{right:15px;bottom:15px;width:38px;height:38px}
  .ambient-grid{background-size:60px 60px}
}
@media(prefers-reduced-motion:reduce){.ambient-grid,.ambient-glow,.world-glow,.community-logo img{animation:none!important}.reveal{opacity:1!important;transform:none!important}}

/* Wheel interaction belongs to the cube; the document scrolls normally. */
.scroll-stage{height:auto;min-height:0}
.hero{position:relative;top:0;height:100svh;min-height:750px;max-height:1050px;padding-top:122px}
.world.block-hover{cursor:ns-resize}
.world-controls{position:absolute;left:6%;right:5%;bottom:3%;z-index:4;cursor:auto}
.world-controls p{margin:0 0 13px;font-size:12px;color:#9eae92;line-height:1.5}
.burst-controls{display:flex;align-items:center;gap:12px;font-size:12px;color:#9eae92}
.burst-controls input{width:125px;max-width:32vw;cursor:ew-resize;accent-color:var(--green);height:20px;margin:0}
.burst-controls output{min-width:32px;font:12px monospace;color:#c2d3b5}
#reset-block{background:#0d160a;border:1px solid #34482a;border-radius:4px;padding:7px 11px;font-size:12px;transition:background .2s;color:#b5ca9f}
#reset-block:hover:not(:disabled){background:#23371a;border-color:#699b43}
#reset-block:disabled{opacity:.38;cursor:default}
.world.block-hover #world-instructions{color:#c5efaa}
@media(max-width:760px){.hero{height:auto;min-height:0;max-height:none;padding-top:112px}.world{height:385px}.world-controls{left:5%;right:5%;bottom:1%}.world-controls p{font-size:11px}.burst-controls{gap:10px;font-size:12px}.scene-label{top:7%}}

/* Familiar PixelPush text motion: split wordmark, a travelling letter glow and hover accents. */
.hero-copy h1,.hero-copy h2{pointer-events:auto}
.animated-wordmark>span{display:inline-block;transition:transform .45s cubic-bezier(.2,.8,.2,1),text-shadow .45s,color .45s}
.animated-wordmark .wordmark-pixel{color:var(--text)}
.animated-wordmark .wordmark-push{color:var(--green)}
.animated-wordmark{animation:wordmark-arrive .9s cubic-bezier(.2,.8,.2,1) both}
.wave-word{display:inline-block;white-space:nowrap}
.wave-letter{display:inline-block;animation:letter-read 7s ease-in-out infinite;animation-delay:calc(var(--letter-index) * .065s)}
.hero-letter-wave{cursor:default}
.interactive-title{position:relative;width:fit-content;transition:color .25s,text-shadow .25s;cursor:default}
.interactive-title:after{content:'';position:absolute;bottom:-14px;left:0;width:100%;height:1px;background:linear-gradient(90deg,var(--green),#a0f65b00);transform:scaleX(0);transform-origin:left;opacity:0;transition:transform .45s,opacity .3s}
.header nav a{position:relative}
.header nav a:after{content:'';position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.header nav a:hover:after,.header nav a:focus-visible:after{transform:scaleX(1)}
.brand>span,.feature h3,.social-links a>span:first-child{transition:transform .3s,color .3s,text-shadow .3s}
@media(hover:hover) and (pointer:fine){
  .animated-wordmark:hover .wordmark-pixel{transform:translateY(-5px);text-shadow:0 0 22px #fff2}
  .animated-wordmark:hover .wordmark-push{transform:translateY(5px);color:#baff85;text-shadow:0 0 22px #9eff564d,0 0 48px #88df391c}
  .animated-wordmark:hover .title-dot{transform:translateY(-2px);color:#c1ff9c}
  .interactive-title:hover{animation:title-signal .8s ease-in-out 1;text-shadow:0 0 24px #96f45120}
  .interactive-title:hover:after{transform:scaleX(1);opacity:.75}
  .feature:hover h3{color:#caffaa;transform:translateY(-2px)}
  .brand:hover>span{transform:translateY(-2px);text-shadow:0 0 16px #a0f65b55}
  .social-links a:hover>span:first-child{transform:translateX(3px);color:#caffaa}
  .button:hover,.nav-cta:hover{animation:button-signal .6s ease-in-out 1}
}
@keyframes wordmark-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes letter-read{0%,26%,100%{color:var(--text);text-shadow:none;transform:translateY(0)}7%,14%{color:#baff87;text-shadow:0 0 11px #a0f65b44,0 0 25px #a0f65b1a;transform:translateY(-1px)}20%{color:var(--text);transform:translateY(0)}}
@keyframes title-signal{0%,100%{transform:translateX(0);filter:brightness(1)}25%{transform:translateX(1px);filter:brightness(1.10)}40%{transform:translateX(-1px);text-shadow:2px 0 #92f45136,-1px 0 #e8ffd722}65%{transform:translateX(.5px)}85%{transform:translateX(0)}}
@keyframes button-signal{0%,100%{filter:brightness(1)}35%{filter:brightness(1.08)}70%{filter:brightness(1.02)}}
body.motion-paused .wave-letter{color:var(--text);text-shadow:none;transform:none}
body.motion-paused .animated-wordmark{opacity:1;transform:none;animation:none}
@media(prefers-reduced-motion:reduce){.animated-wordmark,.wave-letter,.interactive-title,.button,.nav-cta{animation:none!important;transform:none!important}.wave-letter{color:var(--text);text-shadow:none}.animated-wordmark{opacity:1}.interactive-title:after{transition:none}}

/* Invisible document-anchored floor; keyboard focus lights the cube itself. */
.block-playground{position:relative;height:300px;max-width:1440px;margin:0 auto 18px;isolation:isolate}
.playground-heading{position:absolute;top:12px;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:5}
.playground-heading p{margin:0;max-width:520px;font-size:14px;line-height:1.5;color:#99ab91}
#restore-blocks{flex-shrink:0;padding:9px 13px;border:1px solid #34482a;border-radius:5px;background:#0a110a;color:#b5ca9f;font-size:13px;transition:background .2s,border-color .2s}
#restore-blocks:hover{background:#172612;border-color:#6c964b}
#restore-blocks span{margin-left:9px;color:var(--green)}
.playground-note{position:absolute;left:0;right:0;bottom:0;margin:0;text-align:center;font-size:12px;line-height:1.5;color:#77866d;pointer-events:none}
.playground-targets{position:absolute;inset:0;pointer-events:none;z-index:4}
.block-handle{position:absolute;left:0;top:0;min-width:44px;min-height:44px;padding:0;border:0;background:transparent;border-radius:8px;pointer-events:auto;touch-action:none;cursor:grab;transform:translate(-50%,-50%)}
.block-handle[hidden]{display:none}
.block-handle:focus,.block-handle:focus-visible{outline:0;box-shadow:none;background:transparent}
body.block-hovering,body.block-hovering .world{cursor:grab}
body.block-dragging,body.block-dragging *{cursor:grabbing!important;user-select:none!important;-webkit-user-select:none!important}
body.block-dragging #world-canvas{z-index:3}
@media(max-width:760px){.block-playground{height:280px;margin-bottom:12px}.playground-heading{left:24px;right:24px;gap:12px;align-items:flex-start}.playground-heading p{font-size:13px;max-width:205px}#restore-blocks{font-size:12px;padding:8px 10px}#restore-blocks span{display:none}.playground-note{font-size:12px}}
