:root{--footer-bg: transparent;--footer-border: rgba(0, 0, 0, .08);--footer-text: rgba(123, 143, 186, .75)}html,body{height:100%;margin:0;overflow:hidden;background:#fff}#loadingOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#fff;z-index:9999;opacity:1;transition:opacity .8s ease-out;pointer-events:none}#loadingOverlay.hidden{opacity:0}#wrap{pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#fff;z-index:1}video{pointer-events:none;width:14vw;height:14vh;object-fit:contain;background:transparent}@media (max-width: 768px),(pointer: coarse){video{pointer-events:none;width:30vw;height:30vh}}#scene3d{position:fixed;left:0;top:0;width:100%;height:100%;transform:none;pointer-events:none;z-index:2}#hud{position:fixed;left:12px;top:12px;padding:12px;font:12px/1.4 ui-monospace,monospace;color:#000000d9;background:#ffffffeb;border:1px solid rgba(0,0,0,.15);border-radius:12px;white-space:pre;pointer-events:auto;z-index:1000;box-shadow:0 4px 12px #0000001a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.hud-section{margin-top:10px;padding-top:10px;border-top:1px solid rgba(0,0,0,.08)}.hud-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.hud-btn{padding:2px 8px;border:1px solid rgba(0,0,0,.1);background:#fff;border-radius:4px;cursor:pointer;font:inherit;font-weight:700}.hud-btn:hover{background:#f0f0f0}.hud-copy{width:100%;margin-top:8px;padding:6px;background:#24aae3;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.hud-copy:hover{background:#1e8ebf}#centerHint{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);padding:10px 14px;border-radius:999px;background:#ffffffbf;border:1px solid rgba(0,0,0,.08);color:#0000008c;font:14px/1.2 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);-webkit-user-select:none;user-select:none;pointer-events:none;opacity:0;transition:opacity .22s ease;white-space:nowrap}#centerHint.show{opacity:1}#motionBtn{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);padding:14px 18px;border-radius:999px;border:1px solid rgba(0,0,0,.15);background:#fff;font:15px/1 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;box-shadow:0 10px 30px #0000001f;display:none}#footer{position:fixed;left:0;right:0;bottom:0;height:44px;display:grid;place-items:center;background:transparent;font:13px/1 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--footer-text);-webkit-user-select:none;user-select:none;pointer-events:none;z-index:30}#footer .inner{display:inline-flex;align-items:baseline;gap:6px;letter-spacing:.2px}#changelogBtn{position:fixed;left:50%;top:12px;transform:translate(-50%);width:20px;height:20px;border:none;background:transparent;cursor:pointer;opacity:0;padding:0;pointer-events:auto;z-index:40}#changelogPopup{padding:20px;border-radius:12px;border:1px solid rgba(0,0,0,.1);background:#fffffff2;box-shadow:0 10px 40px #0003;max-width:400px;width:90%;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#333}#changelogPopup::backdrop{background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}#changelogPopup h3{margin-top:0;margin-bottom:15px;font-size:18px;font-weight:600}#changelogPopup ul{padding-left:20px;margin-bottom:20px}#changelogPopup li{margin-bottom:8px;line-height:1.4}#changelogPopup .close-btn{display:block;width:100%;padding:10px;border:none;border-radius:8px;background:#f0f0f0;cursor:pointer;font-weight:500;transition:background .2s}#changelogPopup .close-btn:hover{background:#e0e0e0}#footer a{pointer-events:auto;cursor:pointer;color:var(--footer-text);text-decoration:none;transition:color .2s ease}#footer a:hover,#footer a:focus{color:#24aae3}#year{position:relative;display:inline-block;font-variant-numeric:tabular-nums;letter-spacing:.6px;min-width:3.5ch;text-align:center}#year .digits{opacity:1}#year.animating .digits{opacity:0}#year .digits span{display:inline-block;width:.9ch;text-align:center}.falling{position:absolute;top:0;left:0;transform:translateZ(0);opacity:0;will-change:transform,opacity,color,filter;pointer-events:none}
