*{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:#050505;height:100%}html,body{overscroll-behavior:none}body{letter-spacing:.14em;color:#6d6a64;-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;font:11px/1 ui-monospace,SF Mono,Menlo,monospace;overflow:hidden}.stage{position:fixed;inset:0}.stage canvas{touch-action:none}.stage:has(.tut) .about{display:none}.about-toggle{z-index:20;top:max(16px, env(safe-area-inset-top,0px));right:max(16px, env(safe-area-inset-right,0px));color:#aaa59c;font:inherit;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;touch-action:manipulation;-webkit-backdrop-filter:blur(10px);background:#090908ad;border:1px solid #cfc9be47;border-radius:7px;padding:8px 12px;font-size:9px;transition:color .16s,border-color .16s,background .16s;position:fixed}.about-toggle:hover,.about-toggle:focus-visible{color:#e2ddd3;background:#100f0ddb;border-color:#cfc9be94}.about-toggle:focus-visible,.about-card button:focus-visible,.about-card a:focus-visible{outline-offset:3px;outline:1px solid #cfc9be}.about-backdrop{z-index:21;-webkit-backdrop-filter:blur(5px);background:#0303038f;animation:.18s ease-out both about-fade;position:fixed;inset:0}.about-card{z-index:22;top:max(58px, calc(env(safe-area-inset-top,0px) + 58px));right:max(16px, env(safe-area-inset-right,0px));background:linear-gradient(145deg,#1b1916f7,#0a0a09fa);border:1px solid #34312c;border-radius:11px;width:min(360px,100vw - 32px);padding:17px;animation:.22s cubic-bezier(.22,1,.36,1) both about-in;position:fixed;box-shadow:0 24px 70px #0000008f}.about-heading{color:#6f6a63;text-transform:uppercase;border-bottom:1px solid #292722;justify-content:space-between;align-items:center;padding-bottom:13px;font-size:9px;display:flex}.about-close{color:#777168;font:inherit;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:3px 0;font-size:9px}.about-close:hover{color:#d8d2c7}.about-title{color:#d1ccc2;letter-spacing:.08em;max-width:285px;padding:23px 0 21px;font-size:clamp(15px,4vw,18px);line-height:1.55}.about-links{gap:9px;display:flex}.about-links a{color:#cfc9be;text-align:center;text-transform:uppercase;touch-action:manipulation;border:1px solid #35322c;border-radius:6px;flex:1;padding:12px 11px;font-size:10px;text-decoration:none;transition:color .16s,border-color .16s,background .16s}.about-links a:hover{color:#e2ddd3;background:#ffffff06;border-color:#5b564e}.about-replay{color:#6f6a63;width:100%;font:inherit;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;touch-action:manipulation;background:0 0;border:0;margin-top:11px;padding:4px 0;font-size:8px;transition:color .16s;display:block}.about-replay:hover{color:#cfc9be}@keyframes about-fade{0%{opacity:0}to{opacity:1}}@keyframes about-in{0%{opacity:0;transform:translateY(-7px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.about-backdrop,.about-card{animation:none}.about-toggle,.about-links a,.about-replay{transition:none}}.fx{left:50%;bottom:calc(-8.8svh + env(safe-area-inset-bottom,0px));transform:translateX(-50%) scale(var(--fx-s,1));transform-origin:50% 100%;pointer-events:none;transition:bottom .42s cubic-bezier(.22,1,.36,1);animation:.7s ease-out 1.4s both fx-arrival;position:fixed}@keyframes fx-arrival{0%{opacity:0;transform:translate(-50%, 9px) scale(var(--fx-s,1))}to{opacity:1;transform:translateX(-50%) scale(var(--fx-s,1))}}.fx-canvas{pointer-events:none;z-index:1;display:block;position:absolute;inset:0}.fx-toggle{pointer-events:auto;cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:50%;padding:0;transition:width .42s cubic-bezier(.22,1,.36,1),height .42s cubic-bezier(.22,1,.36,1),top .42s cubic-bezier(.22,1,.36,1),transform .42s cubic-bezier(.22,1,.36,1);position:absolute;top:50%;left:50%}.fx-toggle:focus-visible{outline:1px solid var(--accent);outline-offset:3px}.fx-toggle:after{content:"";border:1px solid var(--accent);opacity:.5;pointer-events:none;border-radius:50%;transition:opacity .2s ease-out,transform .2s ease-out,inset .42s cubic-bezier(.22,1,.36,1);position:absolute;inset:-6px}.fx-toggle[aria-expanded=true]{top:calc(50% + 11px)}.fx-toggle[aria-expanded=true]:after{inset:20px}.fx-toggle:hover:after{opacity:.9;transform:scale(1.04)}.fx-toggle:active:after{transform:scale(.96)}.fx-rows{pointer-events:none;position:absolute;inset:0}.fx-row{opacity:0;height:26px;transition:opacity .26s,transform .3s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--i) * 45ms);position:absolute;transform:translateY(calc(9px - 50%))}.fx[data-open] .fx-row{opacity:1;pointer-events:auto;transform:translateY(-50%)}.fx-label,.fx-value{text-transform:uppercase;letter-spacing:.16em;white-space:nowrap;font-size:10px;position:absolute;top:50%;transform:translateY(-50%)}.fx-label{color:#6f6a63;width:84px;left:0}.fx-value{text-align:right;width:62px;color:var(--accent);font-variant-numeric:tabular-nums;transition:color .42s;right:0}.fx-row input{opacity:0;appearance:none;cursor:grab;background:0 0;height:26px;margin:0;position:absolute;top:50%;transform:translateY(-50%)}.fx-row input:active{cursor:grabbing}.fx-row input::-webkit-slider-thumb{-webkit-appearance:none;width:2px;height:26px}.fx-row input::-moz-range-thumb{border:0;border-radius:0;width:2px;height:26px}@media (prefers-reduced-motion:reduce){.fx{transition:none;animation:none}.fx-row,.fx-toggle{transition:none}}.tut{z-index:10;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .5s;position:fixed;inset:0}.tut-on{opacity:1;visibility:visible}.tut-hole{box-shadow:0 0 26px 3px color-mix(in srgb, var(--accent,#cfc9be) 38%, transparent), 0 0 52px 200vmax #030303a3;border-radius:16px;position:absolute;top:0;left:0}.tut-hole:before{content:"";--b:linear-gradient(var(--accent,#cfc9be), var(--accent,#cfc9be));background:var(--b) left 0 top 0 / 15px 2px, var(--b) left 0 top 0 / 2px 15px, var(--b) right 0 top 0 / 15px 2px, var(--b) right 0 top 0 / 2px 15px, var(--b) left 0 bottom 0 / 15px 2px, var(--b) left 0 bottom 0 / 2px 15px, var(--b) right 0 bottom 0 / 15px 2px, var(--b) right 0 bottom 0 / 2px 15px;filter:drop-shadow(0 0 6px var(--accent,#cfc9be));background-repeat:no-repeat;animation:2.6s ease-in-out infinite tut-breathe;position:absolute;inset:-4px}@keyframes tut-breathe{0%,to{opacity:.95;transform:scale(1)}50%{opacity:.45;transform:scale(1.018)}}@media (prefers-reduced-motion:reduce){.tut-hole:before{animation:none}}.tut-card{left:50%;top:max(16px, env(safe-area-inset-top,0px));pointer-events:auto;touch-action:manipulation;background:#0b0b0af0;border:1px solid #2b2925;border-radius:10px;width:min(360px,100vw - 28px);padding:13px 15px;position:absolute;transform:translate(-50%)}.tut-count{color:#57534c;margin-bottom:7px;font-size:9px}.tut-text{color:#b9b4ab;letter-spacing:.09em;line-height:1.6}.tut-actions{justify-content:flex-end;gap:8px;margin-top:11px;display:flex}.tut-actions button{font:inherit;letter-spacing:.14em;text-transform:uppercase;color:#8a857c;cursor:pointer;background:0 0;border:1px solid #35322c;border-radius:6px;padding:6px 12px}.tut-next{color:#cfc9be;background:#1c1b18}.tut-actions button:hover{color:#ddd7cb;border-color:#57534c}
