:root{--ink:#0d0c0b;--ink-2:#161412;--bone:#efe8dc;--bone-dim:#efe8dcb8;--bone-faint:#efe8dc6b;--line:#efe8dc2e;--brass:#c9a778;--serif:"Instrument Serif", "Times New Roman", serif;--sans:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--ease-out:cubic-bezier(.16, .84, .24, 1);--gutter:clamp(20px, 4vw, 56px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--ink);color:var(--bone);font:400 15px/1.5 var(--sans);-webkit-font-smoothing:antialiased;overscroll-behavior:none;overflow:hidden}button{font:inherit;color:inherit}:focus-visible{outline:1px solid var(--brass);outline-offset:3px}.app{position:fixed;inset:0}.scene-canvas{touch-action:none;inset:0;position:absolute!important}.wordmark{font:500 12px/1 var(--sans);letter-spacing:.32em;text-transform:uppercase}.eyebrow{font:500 11px/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--bone-faint);margin:0}.display{font:400 clamp(40px, 5.6vw, 76px)/1.02 var(--serif);letter-spacing:-.01em;margin:0}.lede{color:var(--bone-dim);max-width:34ch;margin:0;font-size:15px}.muted{color:var(--bone-faint);margin:0;font-size:13px}.veil{background:var(--ink);z-index:3;pointer-events:none;transition:opacity 2.2s var(--ease-out) .2s;position:fixed;inset:0}.veil--lifted{opacity:0}.landing{z-index:4;padding:calc(var(--gutter) * .7) var(--gutter) calc(var(--gutter) * .6);transition:opacity .9s var(--ease-out);background:linear-gradient(90deg,#0d0c0bc7 0%,#0d0c0b59 42%,#0d0c0b00 70%),linear-gradient(#0d0c0b00 62%,#0d0c0bb3 100%);grid-template-rows:auto 1fr auto;display:grid;position:fixed;inset:0}.landing--leaving{opacity:0;pointer-events:none}.landing__top{justify-content:space-between;align-items:center;display:flex}.landing__meta{font:500 11px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--bone-faint)}.landing__body{align-self:end;gap:22px;max-width:640px;padding-bottom:clamp(24px,6vh,72px);display:grid}.landing__foot{letter-spacing:.06em;color:var(--bone-faint);font-size:11px}.reveal{opacity:0;transform:translateY(10px)}.landing--ready .reveal{animation:reveal 1.1s var(--ease-out) forwards;animation-delay:calc(.9s + var(--d,0s))}@keyframes reveal{to{opacity:1;transform:none}}.enter{align-items:center;gap:18px;margin-top:10px;display:flex}.btn-enter{appearance:none;cursor:pointer;text-align:left;min-width:220px;font:500 13px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;background:0 0;border:0;gap:10px;padding:14px 0;display:grid}.btn-enter__rule{background:var(--line);height:1px;display:block;overflow:hidden}.btn-enter__rule span{background:var(--bone);transform-origin:0;height:100%;transition:transform .5s var(--ease-out);display:block}.btn-enter:disabled{cursor:default;color:var(--bone-faint)}.btn-enter:not(:disabled):hover .btn-enter__rule span{background:var(--brass)}.btn-enter:not(:disabled) span:first-child:after{content:"";vertical-align:middle;width:18px;height:1px;transition:width .4s var(--ease-out);background:currentColor;margin-left:14px;display:inline-block}.btn-enter:not(:disabled):hover span:first-child:after{width:30px}.load-status{font:500 11px/1 var(--sans);letter-spacing:.12em;color:var(--bone-faint);font-variant-numeric:tabular-nums}.load-error p{color:var(--bone-dim);max-width:42ch;margin:0 0 12px}.hud{pointer-events:none;z-index:2;animation:fade-in 1.2s var(--ease-out) both;position:fixed;inset:0}.hud>*{pointer-events:auto}.hud__top{padding:calc(var(--gutter) * .55) var(--gutter);pointer-events:none;background:linear-gradient(#0d0c0b73,#0d0c0b00);justify-content:space-between;align-items:center;display:flex;position:absolute;top:0;left:0;right:0}.hud__top>*{pointer-events:auto}.hud__bottom{left:50%;bottom:max(20px, env(safe-area-inset-bottom));width:min(360px,100vw - 40px);position:absolute;transform:translate(-50%)}@keyframes fade-in{0%{opacity:0}}.seg{gap:4px;display:flex}.seg__btn{appearance:none;cursor:pointer;font:500 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--bone-faint);background:0 0;border:0;min-height:40px;padding:10px;position:relative}.seg__btn:after{content:"";background:var(--bone);height:1px;transition:transform .45s var(--ease-out);position:absolute;bottom:4px;left:10px;right:10px;transform:scaleX(0)}.seg__btn.is-on{color:var(--bone)}.seg__btn.is-on:after{transform:scaleX(1)}.seg__btn:hover{color:var(--bone)}.time{-webkit-backdrop-filter:blur(10px);background:#100f0e9e;border:1px solid #efe8dc14;border-radius:14px;padding:14px 18px 10px}.time__range{appearance:none;cursor:pointer;background:0 0;width:100%;height:22px;margin:0}.time__range::-webkit-slider-runnable-track{background:linear-gradient(90deg,#e9e2d3,#d69a64 50%,#3b4254);height:1px}.time__range::-moz-range-track{background:linear-gradient(90deg,#e9e2d3,#d69a64 50%,#3b4254);height:1px}.time__range::-webkit-slider-thumb{appearance:none;background:var(--bone);border-radius:50%;width:13px;height:13px;margin-top:-6px;box-shadow:0 0 0 4px #efe8dc1f}.time__range::-moz-range-thumb{background:var(--bone);border:0;border-radius:50%;width:13px;height:13px}.time__labels{justify-content:space-between;margin-top:2px;display:flex}.time__labels button{appearance:none;cursor:pointer;min-height:36px;font:500 10.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--bone-faint);background:0 0;border:0;padding:8px 2px;transition:color .3s}.time__labels button.is-on,.time__labels button:hover{color:var(--bone)}.hint{left:50%;bottom:calc(max(20px, env(safe-area-inset-bottom)) + 104px);letter-spacing:.04em;color:var(--bone-dim);white-space:nowrap;text-shadow:0 1px 12px #0009;transition:opacity 1.2s var(--ease-out);pointer-events:none;margin:0;font-size:12.5px;position:absolute;transform:translate(-50%)}.hint--gone{opacity:0}.panel{z-index:5;top:50%;right:var(--gutter);width:340px;max-height:calc(100vh - 140px);animation:panel-in .52s var(--ease-out);background:#12110ff0;border:1px solid #efe8dc17;border-radius:16px;padding:28px 26px 26px;position:fixed;overflow:auto;transform:translateY(-50%);box-shadow:0 30px 80px #00000073}@keyframes panel-in{0%{opacity:0;transform:translateY(calc(12px - 50%))}}.panel h2{font:400 32px/1.1 var(--serif);outline:none;margin:10px 0 18px}.panel__close{width:40px;height:40px;color:var(--bone-dim);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid;position:absolute;top:14px;right:14px}.panel__close:hover{color:var(--bone);background:#efe8dc0f}.facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:0;margin:0 0 22px;display:grid}.facts div{padding:12px 0}.facts dt{font:500 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--bone-faint);margin-bottom:7px}.facts dd{margin:0;font-size:14px}.btn-solid{cursor:pointer;background:var(--bone);width:100%;min-height:48px;color:var(--ink);font:500 12px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;border:0;border-radius:10px;transition:background .25s,opacity .25s}.btn-solid:hover:not(:disabled){background:#fff}.btn-solid:disabled{opacity:.4;cursor:default}.btn-line{appearance:none;border:1px solid var(--line);cursor:pointer;min-height:44px;font:500 11.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;background:0 0;border-radius:10px;padding:0 18px}.btn-line:hover{border-color:var(--bone-dim)}.resv{gap:18px;display:grid}.field{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.field>span,.field legend{font:500 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--bone-faint);margin-bottom:8px;padding:0}.field input,.field select{border:1px solid var(--line);min-height:44px;color:var(--bone);font:400 14px var(--sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#efe8dc08;border-radius:10px;padding:0 12px}.slots{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.slots button{border:1px solid var(--line);cursor:pointer;min-height:40px;font:500 12.5px/1 var(--sans);font-variant-numeric:tabular-nums;background:0 0;border-radius:8px}.slots button:disabled{opacity:.28;cursor:default;text-decoration:line-through}.slots button.is-on{background:var(--bone);color:var(--ink);border-color:var(--bone)}.slots button:hover:not(:disabled):not(.is-on){border-color:var(--bone-dim)}.error{color:#f0a58a;margin:0;font-size:13px}.confirm{gap:10px;display:grid}.confirm p{margin:0}.confirm__title{font:400 24px/1.1 var(--serif)}.confirm .btn-line{justify-self:start;margin-top:8px}.debug{z-index:6;color:#b8f5cf;pointer-events:none;background:#000000b8;border-radius:8px;margin:0;padding:10px 12px;font:11px/1.5 ui-monospace,Menlo,monospace;position:fixed;top:64px;left:12px}.debug-tag{color:#ffd400;background:#000000b3;border-radius:4px;padding:2px 5px;font:10px ui-monospace,Menlo,monospace}.fallback{min-height:100%;padding:var(--gutter);align-content:center;gap:20px;max-width:720px;display:grid}@media (width<=720px){.landing__body{gap:16px}.landing{background:linear-gradient(#0d0c0b1a 0%,#0d0c0b66 45%,#0d0c0bdb 100%)}.hud__top{padding-top:max(14px, env(safe-area-inset-top));flex-direction:column;align-items:flex-start;gap:6px}.seg{margin-left:-10px}.hint{white-space:normal;text-align:center;width:calc(100vw - 48px)}.panel{width:auto;max-height:78vh;padding-bottom:max(24px, env(safe-area-inset-bottom));animation:sheet-in .48s var(--ease-out);border-radius:18px 18px 0 0;inset:auto 0 0;transform:none}@keyframes sheet-in{0%{opacity:0;transform:translateY(40px)}}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}}
