.ns{color:#e8e0cc;font-family:var(--font);-webkit-user-select:none;user-select:none;background:#0c0a12;position:fixed;inset:0;overflow:hidden}.ns.menu{background:radial-gradient(circle at 50% 30%,#2a2030,#0c0a12 70%);justify-content:center;align-items:center;padding:16px;display:flex;overflow-y:auto}.ns-canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.ns-card{text-align:center;background:#16121e;border:3px solid #3a3046;border-radius:16px;width:min(560px,100%);max-height:100%;padding:18px;position:relative;overflow-y:auto;box-shadow:0 10px 40px #0009}.ns-back{color:#a89cb8;font-size:14px;font-weight:700;text-decoration:none;position:absolute;top:12px;left:14px}.ns-kicker{font:16px "Luckiest Guy", var(--font);letter-spacing:.3em;color:#c8302a;margin:10px 0 0}.ns-card h1{font:40px "Luckiest Guy", var(--font);letter-spacing:.04em;color:#f3e9c9;text-shadow:0 3px #000;margin:0}.ns-sub{color:#c8bcd8;margin:6px 0 12px}.ns-sub.small{opacity:.8;font-size:13px}.ns-nights{justify-content:center;gap:8px;margin-bottom:12px;display:flex}.ns-nights button{color:#e8e0cc;cursor:pointer;background:#221c2c;border:3px solid #3a3046;border-radius:12px;flex-direction:column;align-items:center;width:58px;padding:6px 0;display:flex}.ns-nights b{font:24px "Luckiest Guy", var(--font)}.ns-nights span{opacity:.8;font-size:11px}.ns-nights button.on{background:#3a2e18;border-color:#ffd34d}.ns-nights button.done span{color:#9aff7a}.ns-nights button:disabled{opacity:.4;cursor:default}.ns-roster{text-align:left;flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.ns-fig{background:#1e1828;border:2px solid #3a3046;border-radius:10px;align-items:center;gap:10px;padding:6px 10px;display:flex}.ns-fig img{object-fit:contain;width:54px;height:40px}.ns-fig b{font:15px "Luckiest Guy", var(--font);color:#f3e9c9;display:block}.ns-fig span{color:#b8acc8;font-size:12px}.ns-fig.asleep{opacity:.45}.ns-go{width:100%;font:26px "Luckiest Guy", var(--font);letter-spacing:.05em;color:#fff;cursor:pointer;background:#c8302a;border:3px solid #000;border-radius:12px;padding:12px;box-shadow:0 5px #000}.ns-go:active{transform:translateY(3px);box-shadow:0 2px #000}.ns-sec{width:100%;font:16px "Luckiest Guy", var(--font);color:#c8bcd8;cursor:pointer;background:0 0;border:2px solid #3a3046;border-radius:10px;margin-top:8px;padding:8px}.ns-keys{color:#7a6e8a;margin:10px 0 0;font-size:12px}.ns-call{text-align:left;background:#0e0c14;border:2px solid #3a3046;border-radius:12px;margin:10px 0 14px;padding:12px 14px}.ns-phone{color:#9aff7a;margin-bottom:6px;font-size:13px;font-weight:700;display:block}.ns-call p{color:#e8e0cc;margin:0;font-style:italic;line-height:1.5}.ns-hud{z-index:3;pointer-events:none;align-items:center;gap:12px;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.ns-hud>*{pointer-events:auto}.ns-time{color:#c8bcd8;text-shadow:0 1px 3px #000;font-size:14px}.ns-time b{font:30px "Luckiest Guy", var(--font);color:#f3e9c9;display:block}.ns-power{text-align:right;text-shadow:0 1px 3px #000;margin-left:auto;font-size:13px}.ns-power b{font:20px "Luckiest Guy", var(--font);color:#9aff7a}.ns-power.low b{color:#ff5a4a}.ns-power i{justify-content:flex-end;gap:3px;margin-top:2px;display:flex}.ns-power em{background:#ffffff26;border-radius:2px;width:10px;height:12px}.ns-power em.on{background:#9aff7a}.ns-power em.on:nth-child(n+4){background:#ffb84a}.ns-power em.on:nth-child(5){background:#ff5a4a}.ns-round{color:#e8e0cc;cursor:pointer;background:#14101ccc;border:2px solid #3a3046;border-radius:50%;width:40px;height:40px;font-size:16px}.ns-warn{z-index:3;white-space:nowrap;background:#781414d9;border:2px solid #ff5a4a;border-radius:10px;margin:0;padding:6px 12px;font-weight:700;animation:.6s infinite alternate nsblink;position:absolute;top:70px;left:50%;transform:translate(-50%)}@keyframes nsblink{to{opacity:.5}}.ns-controls{z-index:3;pointer-events:none;justify-content:space-between;align-items:flex-end;padding:0 12px;display:flex;position:absolute;bottom:78px;left:0;right:0}.ns-side{pointer-events:auto;flex-direction:column;gap:8px;display:flex}.ns-side.mid{flex-direction:row}.ns-door,.ns-light{min-width:84px;font:16px "Luckiest Guy", var(--font);letter-spacing:.05em;cursor:pointer;touch-action:none;border:3px solid #000;border-radius:12px;padding:12px 10px;box-shadow:0 4px #000}.ns-door{color:#fff;background:#8a2a24}.ns-door.shut{background:#ff5a4a;box-shadow:0 0 18px #ff5a4ab3,0 4px #000}.ns-light{color:#fff;background:#4a4a3a}.ns-light.on{color:#1b1b1b;background:#ffe680;box-shadow:0 0 18px #ffe680cc,0 4px #000}.ns-cambar{z-index:4;left:50%;bottom:max(14px, env(safe-area-inset-bottom));width:min(420px,70vw);font:18px "Luckiest Guy", var(--font);letter-spacing:.05em;color:#e8e0cc;cursor:pointer;background:#282234eb;border:3px solid #5a4a6a;border-radius:12px;padding:12px;position:absolute;transform:translate(-50%)}.ns-cambar.open{background:#3c1414eb;border-color:#8a3a3a}.ns-camlabel{z-index:3;font:18px "Luckiest Guy", var(--font);color:#e8f0e0;text-shadow:0 1px 3px #000;letter-spacing:.04em;position:absolute;top:76px;left:14px}.ns-rec{color:#ff3a3a;animation:.8s infinite alternate nsblink}.ns-map{z-index:3;aspect-ratio:1.3;background:#0a140ebf;border:2px solid #a0dcaa80;border-radius:10px;width:min(300px,62vw);position:absolute;bottom:80px;right:14px}.ns-office{font:12px "Luckiest Guy", var(--font);color:#0c0a12;background:#9aff7a;border-radius:6px;padding:2px 8px;position:absolute;bottom:4%;left:50%;transform:translate(-50%)}.ns-cam{width:40px;height:30px;font:16px "Luckiest Guy", var(--font);color:#d8f0d8;cursor:pointer;background:#1e3224f2;border:2px solid #a0dcaab3;border-radius:6px;position:absolute;transform:translate(-50%,-50%)}.ns-cam.on{color:#0c0a12;background:#9aff7a}.ns-flash{z-index:3;font:16px "Luckiest Guy", var(--font);color:#1b1b1b;cursor:pointer;background:#f4f0e0;border:3px solid #000;border-radius:12px;padding:10px 14px;position:absolute;bottom:80px;left:14px}.ns-flash:disabled{opacity:.4}.ns-over{z-index:6;background:#000000bf;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.ns-over.won{background:radial-gradient(circle at 50% 40%,#ffd68c80,#000000d9)}.ns-six{color:#ffd34d!important;font-size:70px!important}.ns-earn{font:22px "Luckiest Guy", var(--font);color:#ffd34d;margin:6px 0 12px}.ns-unlock{background:#2a2418;border:2px solid #ffd34d;border-radius:10px;justify-content:center;align-items:center;gap:10px;margin-bottom:10px;padding:6px 10px;font-weight:700;display:flex}.ns-unlock img{object-fit:contain;width:60px;height:44px}@media (max-width:600px){.ns-door,.ns-light{min-width:70px;padding:10px 6px;font-size:14px}.ns-controls,.ns-map{bottom:74px}.ns-camlabel{font-size:15px;top:120px}.ns-flash{top:152px;bottom:auto}.ns-warn{font-size:13px}}.ns-ph{flex:none;width:54px;height:40px}.ns-backdrop{z-index:0;filter:saturate(.9);width:100%;height:100%;display:block;position:fixed;inset:0}.ns-shade{z-index:0;pointer-events:none;background:radial-gradient(#08060e8c 0%,#08060e59 45%,#000000d9 100%);animation:6s ease-in-out infinite nsbreath;position:fixed;inset:0}@keyframes nsbreath{0%,to{opacity:.9}50%{opacity:1}}.ns.menu>.ns-card{z-index:1}.ns-card{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(#1a1422f0,#0e0b14f5);border-color:#4a3c58;animation:.6s cubic-bezier(.2,1.4,.4,1) both nspop;box-shadow:0 10px #000,0 24px 60px #000000b3,inset 0 1px #ffffff0d}@keyframes nspop{0%{opacity:0;transform:scale(.92)translateY(16px)}}.ns-kicker{animation:3.2s ease-in-out infinite nskick}@keyframes nskick{0%,to{text-shadow:0 0 6px #c8302a80}50%{text-shadow:0 0 16px #ff3c32e6}}.ns-card h1{color:#f6eccd;text-shadow:0 3px #000,0 0 22px #ffd68c59}.ns-flk{animation:4.7s step-end infinite nsflk}.ns-flk.b{animation-duration:6.3s;animation-delay:2.1s}@keyframes nsflk{0%,70%,73%,76%,to{opacity:1}71%,74.5%{opacity:.15}}.ns-nights button{transition:transform .15s,border-color .15s,background .15s}.ns-nights button:not(:disabled):hover{transform:translateY(-2px)}.ns-nights button.on{box-shadow:0 0 16px #ffd34d59}.ns-fig{transition:transform .15s,background .15s}.ns-fig:hover{background:#251e30;transform:translate(3px)}.ns-thumb{filter:drop-shadow(0 0 6px #ffecc82e);background:radial-gradient(circle at 50% 40%,#ffe6be1f,#0000 70%);border-radius:8px;flex:none;width:56px;height:64px;margin:-6px 0}.ns-fig.asleep .ns-thumb{filter:grayscale()brightness(.6)}.ns-go{background:linear-gradient(#d83a32,#a8231e);transition:transform .12s,box-shadow .12s,filter .12s}.ns-go:hover{filter:brightness(1.06);transform:translateY(-2px);box-shadow:0 7px #000,0 0 26px #ff503c73}.ns-phone{align-items:center;gap:10px;display:flex}.ns-wave{align-items:center;gap:2px;height:16px;display:inline-flex}.ns-wave em{transform-origin:50%;background:#9aff7a;border-radius:2px;width:3px;height:100%;animation:.9s ease-in-out infinite nswave}@keyframes nswave{0%,to{transform:scaleY(.25)}50%{transform:scaleY(1)}}.ns-call{box-shadow:inset 0 0 30px #9aff7a0f}.ns-door,.ns-light{transition:transform 80ms,box-shadow .15s,background .15s}.ns-door:active,.ns-light:active{transform:translateY(3px);box-shadow:0 1px #000}.ns-door{background:linear-gradient(#9a332c,#6e1f1a)}.ns-door.shut{background:linear-gradient(#ff6a5a,#d8392c)}.ns-light{background:linear-gradient(#55553f,#3a3a2c)}.ns-light.on{background:linear-gradient(#fff2a8,#ffd34d)}.ns-cambar{transition:transform .12s,background .15s;box-shadow:0 4px #000,0 0 20px #7864a040}.ns-cambar:hover{transform:translate(-50%)translateY(-2px)}.ns-map{background:linear-gradient(#9aff7a0d 1px,#0000 1px) 0 0/100% 12px,#06100ad1;border-radius:12px;box-shadow:0 0 24px #78ff961f,inset 0 0 30px #0009}.ns-cam{transition:transform .12s,background .15s}.ns-cam:hover{transform:translate(-50%,-50%)scale(1.08)}.ns-cam.on{animation:1.2s ease-in-out infinite nscam;box-shadow:0 0 14px #9aff7acc}@keyframes nscam{50%{box-shadow:0 0 4px #9aff7a66}}.ns-power{background:#00000059;border-radius:10px;padding:4px 8px}.ns-power.low b{animation:.5s infinite alternate nsblink}.ns-time b{text-shadow:0 2px #000,0 0 14px #ffd68c4d}.ns-over{animation:.5s both nsfade}@keyframes nsfade{0%{opacity:0}}.ns-over.lost{background:radial-gradient(circle at 50% 45%,#5a0a0a99,#000000eb)}.ns-over.lost h1{color:#ff8a7a;animation:.5s cubic-bezier(.3,1.6,.5,1) both nsshake}@keyframes nsshake{0%{opacity:0;transform:scale(1.6)}60%{opacity:1;transform:scale(.95)}}.ns-over.won{background:#0c0a12;overflow:hidden}.ns-dawn{background:linear-gradient(#0c0a12 0%,#2a2048 28%,#8a4a7a 52%,#f08a5a 78%,#ffcf7a 100%);animation:2.4s ease-out both nsdawn;position:absolute;inset:0}@keyframes nsdawn{0%{opacity:0;transform:translateY(30%)}}.ns-dawn i{background:repeating-conic-gradient(#fff0c838 0deg 6deg,#fff0c800 6deg 18deg);border-radius:50%;width:140vmax;height:140vmax;margin-left:-70vmax;animation:50s linear infinite nsspin;position:absolute;bottom:-60vmax;left:50%;-webkit-mask:radial-gradient(circle,#000 10%,#0000 60%);mask:radial-gradient(circle,#000 10%,#0000 60%)}.ns-dawn:after{content:"";background:radial-gradient(circle,#fff6d0 0%,#ffd77a 45%,#ffc86e00 70%);border-radius:50%;width:34vmax;height:34vmax;margin-left:-17vmax;animation:3s cubic-bezier(.2,.9,.3,1) both nssun;position:absolute;bottom:-14vmax;left:50%}@keyframes nssun{0%{transform:translateY(20vmax)}}@keyframes nsspin{to{transform:rotate(360deg)}}.ns-over.won .ns-card{animation:.7s cubic-bezier(.2,1.5,.4,1) .3s both nspop;position:relative;box-shadow:0 10px #000,0 0 80px #ffc87873}.ns-clock{justify-content:center;align-items:flex-end;gap:8px;margin:4px 0 6px;display:flex}.ns-clock small{font:34px "Luckiest Guy", var(--font);color:#ffd34d;padding-bottom:8px}.ns-flip{height:78px;display:inline-grid;position:relative;overflow:hidden}.ns-flip b{font:76px/78px "Luckiest Guy", var(--font);font-variant-numeric:tabular-nums;grid-area:1/1;display:block}.ns-flip .old{color:#c8bcd8;animation:.5s cubic-bezier(.5,0,.7,.4) .9s both nsold}.ns-flip .new{color:#ffd34d;text-shadow:0 0 24px #ffd34db3;animation:.6s cubic-bezier(.2,1.6,.4,1) 1.35s both nsnew;transform:translateY(100%)}@keyframes nsold{to{opacity:0;transform:translateY(-100%)}}@keyframes nsnew{0%{transform:translateY(100%)}to{transform:translateY(0)}}.ns-earn{animation:.6s cubic-bezier(.2,1.6,.4,1) 1.8s both nspop}@media (max-width:600px){.ns-flip{height:62px}.ns-flip b{font-size:60px;line-height:62px}}@media (prefers-reduced-motion:reduce){.ns-shade,.ns-flk,.ns-kicker,.ns-wave em,.ns-dawn i,.ns-cam.on{animation:none!important}.ns-flip .old{display:none}.ns-flip .new{animation:none;transform:none}}
