/*! Don't Look Down — © 2026 brainrotlabs. All rights reserved.
 *  Not licensed for mirroring, rehosting, or redistribution.
 *  https://brainrotlabs.in/play/dont-look-down/ · hello@brainrotlabs.com */:root{--ink: #15120e;--cream: #fbf8f0;--lime: #c6f432;--pink: #ffa3dc;--red: #ff4d4d;--sky: #4f8fe0}*{margin:0;padding:0;box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--cream);font-family:Space Grotesk,ui-sans-serif,system-ui,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}#stage{position:relative;height:100vh;height:100svh;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;background:#cfe4fb}#gl{display:block;width:100%;height:100%}#back,#howto{position:absolute;top:14px;z-index:6;padding:6px 12px;border-radius:999px;background:#15120eb8;border:2px solid rgba(251,248,240,.35);color:var(--cream);font-size:13px;letter-spacing:.04em;text-decoration:none;opacity:.55;transition:opacity .15s ease}#back{left:16px}#howto{right:16px}#back:hover,#back:focus-visible,#howto:hover,#howto:focus-visible{opacity:1}#vignette,#flash{position:absolute;inset:0;pointer-events:none;z-index:3}#vignette{opacity:0;background:radial-gradient(ellipse at center,transparent 45%,rgba(255,60,60,.55) 100%)}#flash{opacity:0;background:radial-gradient(ellipse at center,#fff3 20%,#ffffffbf)}#ui{position:absolute;inset:0;z-index:5;display:grid;place-items:center;padding:16px;pointer-events:none}#ui>.panel{pointer-events:auto}.panel{width:min(440px,100%);max-height:calc(100svh - 32px);overflow-y:auto;background:var(--ink);border:4px solid var(--cream);box-shadow:8px 8px #15120e59;border-radius:18px;padding:26px 24px;text-align:center}.panel-wide{width:min(520px,100%)}.title{font-family:Archivo Black,ui-sans-serif,system-ui,sans-serif;font-size:clamp(34px,8vw,50px);line-height:.95;letter-spacing:-.02em;text-transform:lowercase}.title em{color:var(--lime);font-style:normal;display:inline-block;transform:translateY(.12em) rotate(4deg)}.panel h2{font-family:Archivo Black,ui-sans-serif,system-ui,sans-serif;font-size:clamp(20px,5vw,28px);line-height:1.15;text-transform:lowercase}.tagline{color:var(--pink);margin-top:10px;font-size:15px}.best{color:#fbf8f0a6;font-size:14px;margin-top:10px}.score{font-family:Archivo Black,ui-sans-serif,system-ui,sans-serif;font-size:clamp(38px,10vw,56px);color:var(--lime);margin-top:12px;font-variant-numeric:tabular-nums}.step{color:var(--lime);font-size:12px;letter-spacing:.14em;text-transform:uppercase}.hint{color:#fbf8f099;font-size:13px;margin-top:12px;line-height:1.5}.priv{margin-top:16px;font-size:11.5px;line-height:1.5;color:#fbf8f080}.sticker{display:inline-block;margin-top:10px;padding:4px 12px;background:var(--pink);color:var(--ink);font-weight:700;border-radius:999px;transform:rotate(-3deg)}.btns{display:flex;flex-direction:column;gap:10px;margin-top:18px}.btns.row{flex-direction:row;justify-content:center;flex-wrap:wrap}.btn{display:block;width:100%;cursor:pointer;font:inherit;font-weight:700;text-transform:lowercase;color:var(--cream);background:transparent;border:3px solid var(--cream);border-radius:999px;padding:12px 18px;transition:transform .12s ease,box-shadow .12s ease}.btns.row .btn{width:auto}.btn small{display:block;font-weight:400;font-size:11.5px;opacity:.65;margin-top:3px;text-transform:lowercase}.btn-primary{background:var(--lime);color:var(--ink);border-color:var(--ink);box-shadow:0 0 0 3px var(--lime)}.btn:hover,.btn:focus-visible{transform:translate(-2px,-2px);box-shadow:4px 4px #00000080}.btn-primary:hover,.btn-primary:focus-visible{box-shadow:0 0 0 3px var(--lime),4px 4px #00000080}.link-btn{background:none;border:0;color:#fbf8f0b3;font:inherit;font-size:13px;text-decoration:underline;cursor:pointer;padding:6px}.row{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center;align-items:center;margin-top:14px}.row .link-btn{white-space:nowrap}.spinner{width:34px;height:34px;margin:0 auto 14px;border:4px solid rgba(251,248,240,.2);border-top-color:var(--lime);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#setup-text.bad{color:var(--pink)}.check-row{display:flex;gap:14px;align-items:center;margin-top:14px;text-align:left}.preview{flex:0 0 auto;border:3px solid rgba(251,248,240,.35);border-radius:12px;overflow:hidden;background:#000;line-height:0}.preview canvas{width:200px;height:150px}.check-list{list-style:none;font-size:12.5px;line-height:1.5;color:#fbf8f0b3}.check-list li{margin-bottom:8px;padding-left:16px;position:relative}.check-list li:before{content:"\b7";position:absolute;left:4px;color:var(--lime);font-weight:700}.check-list strong{color:var(--lime);font-weight:700}.level{position:relative;height:22px;margin:14px auto 0;width:min(260px,80%);border-radius:999px;border:2px solid rgba(251,248,240,.4);background:linear-gradient(90deg,rgba(255,77,77,.25),transparent 30%,transparent 70%,rgba(255,77,77,.25))}.level:after{content:"";position:absolute;left:50%;top:2px;bottom:2px;width:2px;background:#fbf8f066}.level i{position:absolute;top:3px;left:50%;width:22px;height:12px;margin-left:-11px;border-radius:999px;background:var(--lime);transition:transform .06s linear}.bar{height:8px;margin-top:12px;border-radius:999px;background:#fbf8f024;overflow:hidden}.bar i{display:block;height:100%;width:0;background:var(--lime);transition:width .1s linear}.claim{margin-top:16px;padding:14px 14px 10px;border:2px dashed rgba(198,244,50,.55);border-radius:14px;background:#c6f4320f}.claim-head{font-weight:700;color:var(--lime);font-size:14px}.claim-head span{color:#fbf8f0a6;font-weight:400}.claim-row{display:flex;gap:8px;margin-top:10px}.claim-row .btn{width:auto;flex:0 0 auto;padding:10px 18px}.name-input{flex:1 1 auto;min-width:0;font:inherit;font-weight:700;color:var(--cream);background:#00000059;border:3px solid var(--cream);border-radius:999px;padding:10px 16px;user-select:text;-webkit-user-select:text;touch-action:auto}.name-input::placeholder{color:#fbf8f059;font-weight:400}.name-input:focus-visible{outline:none;border-color:var(--lime)}.claim-msg{min-height:16px;margin-top:8px;font-size:12.5px;color:#fbf8f099}.rank-line{margin-top:12px;font-weight:700;font-size:15px;color:var(--lime)}.board{list-style:none;margin-top:14px;max-height:min(46svh,380px);overflow-y:auto;text-align:left;border-top:2px solid rgba(251,248,240,.12)}.board li{display:flex;align-items:baseline;gap:10px;padding:7px 8px;border-bottom:1px solid rgba(251,248,240,.08);font-size:14px}.board .rk{flex:0 0 34px;text-align:right;font-weight:700;color:#fbf8f073;font-variant-numeric:tabular-nums}.board .nm{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board .sc{flex:0 0 auto;font-weight:700;color:var(--lime);font-variant-numeric:tabular-nums}.board li:nth-child(1) .rk{color:var(--lime)}.board li:nth-child(2) .rk,.board li:nth-child(3) .rk{color:var(--pink)}.board li.me{background:#ffa3dc24;border-radius:8px}.board li.me .nm{color:var(--pink);font-weight:700}#hud{position:absolute;inset:0;z-index:4;pointer-events:none;font-variant-numeric:tabular-nums}.hud-tl{position:absolute;top:54px;left:16px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}#hud-score{font-family:Archivo Black,ui-sans-serif,system-ui,sans-serif;font-size:clamp(28px,6vw,44px);line-height:1;color:var(--cream);text-shadow:0 3px 0 var(--ink),2px 0 0 var(--ink),-2px 0 0 var(--ink),0 -2px 0 var(--ink)}#hud-metres,#hud-mult{font-size:13px;font-weight:700;padding:3px 9px;border-radius:999px;background:#15120ebf;color:var(--cream)}#hud-mult{color:#fbf8f08c;transition:color .2s ease,background .2s ease}#hud-mult[data-on="1"]{color:var(--ink);background:var(--lime)}#hud-mult[data-on="2"]{color:var(--ink);background:#fff;box-shadow:0 0 12px var(--lime)}.hud-top{position:absolute;top:14px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:6px 14px;border-radius:999px;background:#15120ec7;font-size:12.5px;font-weight:700;white-space:nowrap}#span-label{color:var(--lime);text-transform:uppercase;letter-spacing:.08em}#span-text{color:#fbf8f0bf;min-width:72px;text-align:right}#span-bar{position:relative;width:clamp(110px,22vw,240px);height:10px}#span-bar .roof{position:absolute;top:-5px;width:8px;height:20px;border-radius:2px;background:var(--cream)}#span-bar .roof-a{left:-4px}#span-bar .roof-b{right:-4px}#span-bar:before{content:"";position:absolute;left:0;right:0;top:4px;height:2px;background:#fbf8f059}#span-fill{position:absolute;left:0;top:3px;height:4px;width:0;border-radius:2px;background:var(--lime)}#span-dot{position:absolute;top:-1px;left:0;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 2px var(--ink)}.hud-tr{position:absolute;top:54px;right:16px;display:flex;flex-direction:column;align-items:flex-end;gap:10px}#cam-chip{background:#15120ec7;border:2px solid rgba(251,248,240,.3);border-radius:12px;padding:5px;text-align:center}.cam-wrap{position:relative;width:128px;height:96px;border-radius:8px;overflow:hidden;background:#000}.cam-wrap video{display:none}.cam-wrap canvas{width:100%;height:100%;display:block}.cam-status{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:4px;font-size:10.5px;color:#fbf8f0bf}#cam-dot{width:7px;height:7px;border-radius:50%;background:var(--pink)}#cam-dot[data-state=ok]{background:var(--lime)}.icon-btn{position:absolute;right:16px;bottom:16px;pointer-events:auto;width:44px;height:44px;border-radius:50%;border:2px solid rgba(251,248,240,.45);background:#15120ec7;color:var(--cream);font-size:13px;cursor:pointer}#gauge-wrap{position:absolute;left:50%;bottom:10px;transform:translate(-50%);width:min(290px,62vw)}#gauge{display:block;width:100%;height:auto}.birds{position:absolute;bottom:14px;display:flex;gap:2px;font-size:20px;filter:drop-shadow(0 2px 0 var(--ink))}#birds-L{left:-18px}#birds-R{right:-18px}.birds.pop{animation:pop .3s cubic-bezier(.2,1.6,.4,1)}#shake-hint{position:absolute;left:50%;bottom:calc(100% + 4px);transform:translate(-50%);white-space:nowrap;font-size:13px;padding:5px 12px;border-radius:999px;background:var(--ink);border:2px solid var(--pink);color:var(--cream)}#shake-hint b{color:var(--pink)}#shake-hint:not([hidden]){animation:nudge .6s ease-in-out infinite}@keyframes nudge{0%,to{transform:translate(-50%) rotate(-2deg)}50%{transform:translate(-50%) rotate(2deg)}}.gust{position:absolute;top:38%;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 12px 12px;border-radius:16px;background:#15120ed1;border:3px solid var(--cream);color:var(--cream);transform:translateY(-50%)}.gust[data-side=L]{left:16px}.gust[data-side=R]{right:16px}.gust-arrow{font-family:Archivo Black,ui-sans-serif,system-ui,sans-serif;font-size:clamp(34px,7vw,54px);line-height:1;color:var(--lime)}.gust-txt{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.gust-bar{display:block;width:56px;height:5px;border-radius:3px;background:#fbf8f033;overflow:hidden}.gust-bar b{display:block;height:100%;width:0;background:var(--pink)}.gust.blowing{border-color:var(--pink)}.gust.blowing .gust-arrow{color:var(--pink);animation:gusting .25s ease-in-out infinite}.gust[data-side=L].blowing .gust-arrow{animation-name:gustingL}@keyframes gusting{0%,to{transform:translate(0)}50%{transform:translate(-6px)}}@keyframes gustingL{0%,to{transform:translate(0)}50%{transform:translate(6px)}}#grade{position:absolute;left:50%;top:30%;transform:translate(-50%,-50%);font-family:Archivo Black,ui-sans-serif,system-ui,sans-serif;font-size:clamp(28px,7vw,54px);letter-spacing:-.02em;color:var(--lime);white-space:nowrap;text-shadow:0 4px 0 var(--ink),3px 0 0 var(--ink),-3px 0 0 var(--ink),0 -3px 0 var(--ink)}#grade[data-kind=perfect]{color:#fff}#grade[data-kind=pink]{color:var(--pink)}#grade[data-kind=bad]{color:var(--red)}#grade.pop{animation:grade 1.1s ease-out forwards}@keyframes grade{0%{transform:translate(-50%,-50%) scale(.6) rotate(-4deg);opacity:0}14%{transform:translate(-50%,-50%) scale(1.12) rotate(2deg);opacity:1}72%{transform:translate(-50%,-55%) scale(1) rotate(0);opacity:1}to{transform:translate(-50%,-75%) scale(.95);opacity:0}}@keyframes pop{0%{transform:scale(.8)}to{transform:scale(1)}}#countdown{position:absolute;inset:0;z-index:5;display:grid;place-items:center;font-family:Archivo Black,ui-sans-serif,system-ui,sans-serif;font-size:clamp(56px,18vw,140px);color:var(--cream);text-shadow:0 6px 0 var(--ink),4px 0 0 var(--ink),-4px 0 0 var(--ink),0 -4px 0 var(--ink);pointer-events:none}#countdown.pop{animation:count .5s ease-out}@keyframes count{0%{transform:scale(1.5);opacity:.2}to{transform:scale(1);opacity:1}}#toast{position:absolute;left:50%;top:72px;transform:translate(-50%);z-index:5;background:#15120ee6;border:2px solid var(--pink);border-radius:999px;padding:8px 18px;font-size:13px;text-align:center;max-width:80vw}#btn-shoo{position:absolute;left:16px;bottom:16px;pointer-events:auto;font:inherit;font-weight:700;font-size:15px;padding:12px 18px;border-radius:999px;border:3px solid var(--ink);background:var(--pink);color:var(--ink);touch-action:none}#touch-hint{position:absolute;left:50%;bottom:150px;transform:translate(-50%);font-size:12px;padding:5px 12px;border-radius:999px;background:#15120ebf;color:#fbf8f0d9;text-align:center;max-width:86vw}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(max-width:560px){.hud-top{top:52px;padding:5px 10px;gap:7px;font-size:11px}#span-text{min-width:0}.hud-tl,.hud-tr{top:96px}.cam-wrap{width:96px;height:72px}#gauge-wrap{width:min(300px,64vw);bottom:70px}.gust{top:46%;padding:8px 9px 10px}.check-row{flex-direction:column}.preview canvas{width:240px;height:180px}}#info{max-width:760px;margin:0 auto;padding:56px 20px 80px;font-size:15px;line-height:1.65;color:#fbf8f0d1}#info h1{font-size:22px;line-height:1.35;color:var(--lime);margin-bottom:18px}#info h2{font-size:17px;color:var(--pink);margin:32px 0 10px}#info p{margin-bottom:12px}#info .lede{font-size:16.5px;color:var(--cream)}#info ul{margin:0 0 12px 20px}#info li{margin-bottom:8px}#info a{color:var(--lime)}#info table{width:100%;border-collapse:collapse;margin:8px 0 12px;font-size:14px}#info th,#info td{border-bottom:1px solid rgba(251,248,240,.14);padding:8px 10px;text-align:left;vertical-align:top}#info th{color:var(--lime);font-weight:700}#info kbd{display:inline-block;padding:1px 6px;border:1px solid rgba(251,248,240,.35);border-bottom-width:2px;border-radius:5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;background:#fbf8f00f}
