@font-face{font-family:DM Sans;font-style:normal;font-weight:400 600;font-display:swap;src:url(/env/sand-table/fonts/dm-sans.ttf)}@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url(/env/sand-table/fonts/manrope.ttf)}:root{color:#443b2c;font-synthesis:none;--ink:#443b2c;--glass:#fbf7eddb;--line:#4e3b1e2b;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{background:#dfc699;margin:0;overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit;cursor:pointer}button:disabled{opacity:.27;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,#tilt-pad:focus-visible{outline-offset:4px;outline:2px solid #74552d}button{border:0}#experience{width:100%;height:100svh;position:relative;overflow:hidden}#sand{touch-action:none;cursor:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.edge{pointer-events:none;z-index:1;position:absolute;inset:0;box-shadow:inset 0 0 45px #57412135,inset 0 0 3px #3d2a2366}header{left:44px;right:38px;top:max(30px,env(safe-area-inset-top));pointer-events:none;z-index:3;justify-content:space-between;align-items:center;display:flex;position:absolute}.brand{letter-spacing:-3px;color:inherit;pointer-events:auto;font-family:Manrope,sans-serif;font-size:43px;font-weight:600;line-height:1;text-decoration:none}.brand-dot{color:#95754d}.brand-caption{letter-spacing:2.1px;margin-top:12px;margin-left:3px;font-family:DM Sans,sans-serif;font-size:8px;font-weight:500;display:block}nav{pointer-events:auto;align-items:center;gap:13px;display:flex}.pill{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#faf4e55c;border:1px solid #71552c35;border-radius:30px;align-items:center;gap:8px;padding:11px 17px;font-size:11px;display:flex}.pill.active{background:#f7f0dfb8}.motion-icon{font-size:21px;line-height:13px}.icon-button{background:0 0;border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;padding:8px;display:inline-flex}.icon-button:hover,.small-button:hover{background:#735c3514}svg{fill:none;stroke:currentColor;stroke-width:1.35px;stroke-linejoin:round;stroke-linecap:round;width:20px;height:20px}.sound-waves{display:none}.sound-on .sound-waves{display:block}.sound-on .sound-mute{display:none}.invitation{pointer-events:none;opacity:.9;transition:opacity 1.6s,transform 1.6s;position:absolute;top:27%;left:7.5%}.invitation.dismissed{opacity:0;transform:translateY(-10px)}.eyebrow{letter-spacing:2.1px;font-size:9px;font-weight:500}h1{letter-spacing:-2px;margin:20px 0 15px;font-family:Manrope,sans-serif;font-size:clamp(30px,3.5vw,54px);font-weight:400;line-height:1.24}p{font-size:12px;line-height:1.8}.invitation p{opacity:.75}footer{bottom:max(30px,calc(env(safe-area-inset-bottom) + 15px));z-index:3;pointer-events:none;justify-content:space-between;align-items:center;gap:20px;display:flex;position:absolute;left:44px;right:38px}.sand-caption{letter-spacing:1.7px;flex-wrap:wrap;align-items:center;gap:9px;width:210px;font-size:8px;display:flex}.tiny-line{background:currentColor;width:21px;height:1px}.caption-sub{letter-spacing:0;opacity:.65;width:100%;margin-left:30px;font-size:10px;display:block}.toolbar{background:var(--glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);pointer-events:auto;border:1px solid #fff7e68c;border-radius:18px;align-items:center;gap:3px;padding:7px 9px;display:flex;box-shadow:0 6px 35px #65461b12,0 1px 3px #65461b12}.tool{background:0 0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:65px;height:60px;font-size:9px;display:flex}.tool svg{width:21px;height:21px}.tool.selected{background:#d6c5a55c}.tool:hover{background:#d6c5a540}.toolbar .icon-button{margin:0 3px}.divider{background:var(--line);width:1px;height:28px;margin:0 6px}.footer-actions{pointer-events:auto;justify-content:flex-end;align-items:center;gap:12px;width:210px;font-size:10px;display:flex}.text-button{background:0 0;padding:8px 0;font-size:10px}.text-button:hover{text-decoration:underline}.settings{-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);z-index:5;background:#fbf7edf2;border:1px solid #fff8;border-radius:18px;width:300px;padding:23px;position:absolute;bottom:126px;left:50%;transform:translate(-12%);box-shadow:0 10px 50px #44321b20}.hidden{display:none}.panel-title{justify-content:space-between;align-items:center;margin-bottom:25px;font-size:13px;display:flex}.small-button{background:0 0;border-radius:50%;width:26px;height:26px;font-size:23px;line-height:1}.setting-label{letter-spacing:1.6px;justify-content:space-between;margin:19px 0 12px;font-size:8px;display:flex}.setting-label span{letter-spacing:0;opacity:.7;font-size:10px}.materials{gap:12px;display:flex}.material{background:0 0;flex-direction:column;align-items:center;gap:7px;width:70px;font-size:10px;display:flex}.sample{border:3px solid #faf5e9;border-radius:9px;width:45px;height:35px;display:block;box-shadow:0 0 0 1px #0000}.sample.dune{background:radial-gradient(at 30% 20%,#efdbb8,#b4976b)}.sample.rose{background:radial-gradient(at 30% 20%,#dfb6a1,#9d6e61)}.sample.volcanic{background:radial-gradient(at 30% 20%,#727276,#303035)}.selected .sample{box-shadow:0 0 0 1px #796449}input[type=range]{accent-color:#8c7452;width:100%;height:12px}.gravity-row{align-items:center;gap:17px;display:flex}.gravity-row p{opacity:.8;font-size:10px;line-height:1.7}#level{text-underline-offset:3px;background:0 0;padding:5px 0;font-size:10px;text-decoration:underline}#tilt-pad{touch-action:none;cursor:crosshair;background:#e7dfcf;border:1px solid #a894732e;border-radius:50%;flex-shrink:0;width:70px;height:70px;position:relative}.crosshair:before,.crosshair:after{content:"";background:#8c745233;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.crosshair:before{width:1px;height:50px}.crosshair:after{width:50px;height:1px}#tilt-dot{background:#826847;border-radius:50%;width:10px;height:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 1px 4px #563d2940}.presets{gap:7px;display:flex}.presets button{border:1px solid var(--line);background:#e9dfcd70;border-radius:7px;padding:8px 10px;font-size:10px}#cursor{pointer-events:none;z-index:2;background:#fff1;border:1px solid #fff9;border-radius:50%;width:56px;height:56px;display:none;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}#status{background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;pointer-events:none;text-align:center;z-index:9;border-radius:20px;max-width:85%;padding:12px 20px;font-size:11px;transition:opacity .25s,transform .25s;position:absolute;top:110px;left:50%;transform:translate(-50%)translateY(-5px)}#status.visible{opacity:1;transform:translate(-50%)translateY(0)}dialog{color:var(--ink);background:#f8f1e3;border:1px solid #fff8;border-radius:22px;width:440px;max-width:calc(100% - 32px);padding:42px;box-shadow:0 20px 120px #35291b33}dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#37281235}dialog .small-button{position:absolute;top:14px;right:16px}h2{letter-spacing:-1.4px;margin:22px 0;font-family:Manrope,sans-serif;font-size:35px;font-weight:400;line-height:1.2}.help-note{opacity:.6;font-size:10px}.primary-button{color:#fff7e9;background:#65513b;border-radius:9px;justify-content:space-between;width:100%;margin-top:24px;padding:15px 20px;font-size:12px;display:flex}#failure{text-align:center;z-index:20;background:#ead8b7;place-content:center;position:absolute;inset:0}#failure:not([hidden]){display:grid}body.dark-sand{--ink:#f3e7d2;color:var(--ink)}body.dark-sand .toolbar,body.dark-sand .settings,body.dark-sand #status,body.dark-sand dialog{color:#443b2c}@media (width<=800px){header{left:25px;right:22px;top:max(25px,env(safe-area-inset-top))}footer{left:25px;right:25px;bottom:max(23px,calc(env(safe-area-inset-bottom) + 12px));flex-wrap:wrap;justify-content:center;gap:18px}.toolbar{order:-1}.sand-caption{flex:1;width:auto}.footer-actions{width:auto}.caption-sub{display:none}.invitation{top:27%;left:8%}h1{font-size:40px}.settings{bottom:145px;left:auto;right:22px;transform:none}.brand{font-size:37px}.brand-caption{letter-spacing:1.5px;font-size:7px}nav{gap:5px}.pill{padding:9px 12px}.toolbar{padding:6px 8px}.tool{width:57px;height:57px}.toolbar .icon-button{margin:0}nav #fullscreen{display:none}.invitation .eyebrow{letter-spacing:1.6px;font-size:8px}}@media (width<=420px){header{left:20px;right:14px}.brand-caption{max-width:130px;margin-top:7px;line-height:1.8}.brand{font-size:35px}nav{gap:1px}.icon-button{width:32px;height:32px;padding:7px}.pill{padding:9px 11px;font-size:10px}.tool{width:49px;height:55px}.toolbar{border-radius:16px;gap:2px}.divider{margin:0 3px}footer{gap:17px;left:18px;right:18px}.sand-caption{letter-spacing:1px;gap:6px;font-size:7px}.tiny-line{width:15px}.footer-actions{gap:8px}.footer-actions .text-button{font-size:9px}.invitation h1{letter-spacing:-1.4px;font-size:34px}.invitation p{font-size:11px}.settings{max-height:calc(100svh - 230px);padding:20px;bottom:140px;overflow:auto}.setting-label{margin-top:16px}#status{top:120px}}@media (height<=530px){.invitation{top:28%;left:8%}.invitation h1{margin:12px 0;font-size:28px}.invitation .eyebrow{font-size:7px}.brand-caption{display:none}header{top:18px}footer{flex-wrap:nowrap;bottom:14px}.sand-caption,.footer-actions{display:none}.settings{max-height:calc(100svh - 150px);bottom:93px;overflow:auto}.toolbar .tool{height:47px}.toolbar{padding:5px}.invitation p{font-size:10px}#status{top:65px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media (width<=800px) and (height>=531px){footer{grid-template-columns:1fr 1fr;gap:18px 12px;display:grid}.toolbar{grid-column:1/-1;justify-self:center}.sand-caption{white-space:nowrap;flex-wrap:nowrap;width:auto}.footer-actions{justify-self:end;width:auto}.invitation{right:7%}.invitation h1{font-size:clamp(30px,7.8vw,40px)}}.settings{scrollbar-width:thin;max-height:calc(100svh - 235px);overflow:auto}.quality-options{gap:6px;display:flex}.quality-options button{background:#e9dfcd70;border:1px solid #0000;border-radius:7px;flex:1;padding:8px 5px;font-size:10px}.quality-options button.selected{background:#e3d6bf;border-color:#9b8560}body.dark-sand{color:#443b2c;--ink:#443b2c}body.dark-sand .pill{background:#faf4e580;border-color:#71552c35}.edge{box-shadow:inset 0 0 40px #57412115,inset 0 0 2px #3d2a232b}@media (height<=530px){.settings{max-height:calc(100svh - 150px)}}.invitation{max-width:520px;top:17%}.invitation h1{font-size:clamp(30px,3vw,44px)}@media (width<=800px) and (height>=531px){.invitation{top:16%}.invitation h1{font-size:clamp(28px,7.4vw,38px)}}
