@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#070707;--fg:#f4f2ec;--muted:#777;--acid:#b4ff2c;--line:#252525}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0}body{overflow:hidden;background:var(--bg);color:var(--fg);font-family:"Space Grotesk",sans-serif;transition:background .6s,color .6s}button{font:inherit}
.grain{position:fixed;inset:-50%;pointer-events:none;z-index:50;opacity:.065;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:noise .15s steps(2) infinite}@keyframes noise{0%{transform:translate(0)}25%{transform:translate(2%,-1%)}50%{transform:translate(-1%,2%)}75%{transform:translate(1%,1%)}100%{transform:translate(-2%,-2%)}}
.scanlines{position:fixed;inset:0;pointer-events:none;z-index:45;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.012) 4px);mix-blend-mode:screen}.cursor-glow{position:fixed;width:520px;height:520px;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(180,255,44,.11),transparent 65%);z-index:0}
header{position:fixed;left:32px;right:32px;top:27px;display:flex;justify-content:space-between;align-items:center;z-index:20}.logo{background:none;border:0;color:#fff;font-size:24px;font-weight:700;letter-spacing:-2px;cursor:pointer;padding:0}.logo span{opacity:.4}.header-actions{display:flex;gap:8px}.tiny{border:1px solid #252525;background:#0c0c0c;color:#777;border-radius:999px;padding:8px 11px;cursor:pointer;font:10px "DM Mono",monospace;letter-spacing:1px;transition:.2s}.tiny:hover{color:#fff;border-color:#555}
main{height:100%;position:relative}.experiment{position:absolute;left:32px;top:50%;transform:rotate(-90deg) translateX(-50%);transform-origin:left top;font:11px "DM Mono",monospace;letter-spacing:3px;color:#555}.counter{position:absolute;right:6%;top:11%;font-size:clamp(100px,18vw,260px);font-weight:700;line-height:.8;color:#111;letter-spacing:-.09em;user-select:none}.visit{position:absolute;right:32px;bottom:27px;font:9px "DM Mono",monospace;letter-spacing:2px;color:#333}
.scene{position:absolute;left:50%;top:50%;width:min(1000px,90vw);text-align:center;transform:translate(-50%,-47%);transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .4s}.kicker{font:500 11px "DM Mono",monospace;letter-spacing:4px;color:#777;margin-bottom:22px}h1{font-size:clamp(70px,11vw,155px);line-height:.82;letter-spacing:-.075em;margin:0;font-weight:700}h1 strong{color:var(--acid)}p{font-size:18px;color:#999;margin:28px auto 32px;max-width:620px;line-height:1.5}.action-row{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.action{position:relative;border:1px solid #393939;background:#111;color:#fff;border-radius:999px;padding:17px 23px 17px 27px;cursor:pointer;font:500 12px "DM Mono",monospace;letter-spacing:2px;transition:.25s}.action:hover:not(:disabled){border-color:var(--acid);box-shadow:0 0 35px rgba(180,255,44,.13);transform:translateY(-2px)}.action:disabled{opacity:.55;cursor:wait}.action i{font-style:normal;font-size:16px;margin-left:22px}.action.holding{border-color:var(--acid);box-shadow:0 0 45px rgba(180,255,44,.2);transform:scale(1.04)}.timer{margin-top:34px;font:10px "DM Mono",monospace;letter-spacing:2px;color:#3e3e3e}.achievement{height:17px;margin-top:12px;font:9px "DM Mono",monospace;letter-spacing:2px;color:var(--acid);opacity:0;transform:translateY(4px);transition:.25s}.achievement.show{opacity:1;transform:translateY(0)}
.edge{position:absolute;bottom:70px;font:10px "DM Mono",monospace;letter-spacing:2px;color:#444}.edge-left{left:32px}.edge-right{right:32px}.progress{position:absolute;left:32px;right:32px;bottom:27px;height:1px;background:#1e1e1e}.progress span{display:block;height:100%;width:0;background:var(--acid);transition:width .7s}
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(10px);display:none;align-items:center;justify-content:center;z-index:40}.overlay.show{display:flex}.overlay-box{width:min(520px,88vw);border:1px solid #303030;background:#0b0b0b;padding:40px;text-align:center}.overlay-box small{font:10px "DM Mono",monospace;letter-spacing:3px;color:#666}.overlay-box h2{font-size:42px;letter-spacing:-.05em;margin:18px 0 8px}.overlay-box p{margin:0 0 25px;font-size:15px}.overlay-box button{border:1px solid #444;background:#f2f0ea;color:#080808;padding:12px 25px;border-radius:999px;cursor:pointer;font:600 11px "DM Mono",monospace;letter-spacing:2px}.toast{position:fixed;left:50%;bottom:75px;transform:translate(-50%,15px);opacity:0;background:#f2f0ea;color:#080808;padding:10px 16px;border-radius:5px;font:10px "DM Mono",monospace;z-index:60;transition:.3s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}
.glitch{animation:glitch .22s steps(2) 3}@keyframes glitch{0%{transform:translate(-50%,-47%)}30%{transform:translate(calc(-50% + 12px),-47%);filter:hue-rotate(40deg)}60%{transform:translate(calc(-50% - 8px),-47%)}100%{transform:translate(-50%,-47%)}}
body.secret{background:var(--acid);color:#050505}body.secret .logo,body.secret .experiment,body.secret .edge,body.secret .timer,body.secret .visit,body.secret .tiny{color:#050505}body.secret .tiny{border-color:rgba(0,0,0,.25);background:transparent}body.secret .counter{color:rgba(0,0,0,.08)}body.secret .kicker{color:#111}body.secret h1 strong{color:#050505}body.secret p{color:#222}body.secret .progress{background:rgba(0,0,0,.2)}body.secret .progress span{background:#050505}body.secret .action{background:#050505;color:#fff;border-color:#050505}.secret .achievement{color:#050505}
body.ending h1 strong{color:#fff}.still .cursor-glow{opacity:0}.still .action{border-color:#777}
@media(max-width:650px){header{left:20px;right:20px;top:20px}.tiny{padding:7px 8px;font-size:8px}.experiment{left:20px}.counter{right:3%;top:17%}.visit{right:20px;bottom:20px}h1{font-size:clamp(62px,18vw,108px)}p{font-size:16px}.edge-left{left:20px}.edge-right{right:20px}.progress{left:20px;right:20px}.header-actions{gap:5px}.action{padding:14px 18px 14px 21px}}
