.info-cube{--s: min(340px, 78vw);--h: calc(var(--s) / 2);--turn: .8s cubic-bezier(.4, .1, .2, 1);display:flex;flex-direction:column;align-items:center;gap:2rem}.cube-stage{width:var(--s);height:var(--s);perspective:calc(var(--s) * 3);touch-action:none;cursor:grab;border-radius:4px;outline-offset:12px}.cube-stage:active{cursor:grabbing}.cube-tilt{width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(-7deg) rotateY(-9deg);animation:peek 1.6s .6s cubic-bezier(.4,.1,.2,1) both}@keyframes peek{0%,to{transform:rotateX(-7deg) rotateY(-9deg)}45%{transform:rotateX(-12deg) rotateY(-38deg)}}.cube{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:translateZ(calc(-1 * var(--h))) rotateX(var(--pitch)) rotateY(var(--yaw));transition:transform var(--turn)}.face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--face-bg);border:1px solid var(--face-edge);backface-visibility:hidden;transition:transform var(--turn);-webkit-user-select:none;user-select:none}.face-inner{max-height:100%;overflow:hidden;text-align:center}.face,.face *{touch-action:none}.face h1,.face h2{margin:0 0 .5rem}.face-front{transform:translateZ(var(--h))}.face-right{transform:rotateY(90deg) translateZ(var(--h))}.face-back{transform:rotateY(180deg) translateZ(var(--h))}.face-left{transform:rotateY(-90deg) translateZ(var(--h))}.face-top{transform:rotateX(90deg) translateZ(var(--h)) rotate(var(--yaw))}.face-bottom{transform:rotateX(-90deg) translateZ(var(--h)) rotate(calc(-1 * var(--yaw)))}.cube-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem .5rem}.cube-tabs button{font:inherit;font-size:.85rem;color:var(--muted);background:none;border:none;border-bottom:1px solid transparent;padding:.25rem .4rem;cursor:pointer}.cube-tabs button:hover,.cube-tabs button:focus-visible{color:var(--fg)}.cube-tabs button.active{color:var(--fg);border-bottom-color:var(--accent)}.spin-stage{--s: calc(min(340px, 78vw)*.34) ;--h: calc(var(--s) / 2);width:var(--s);height:var(--s);perspective:calc(var(--s) * 4)}.spin-cube{position:relative;width:100%;height:100%;transform-style:preserve-3d;animation:spin 24s linear infinite}.spin-cube.reverse{animation-direction:reverse;animation-duration:31s}.spin-face{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--face-edge);background:var(--spin-bg)}.spin-cube .face-front{transform:translateZ(var(--h))}.spin-cube .face-right{transform:rotateY(90deg) translateZ(var(--h))}.spin-cube .face-back{transform:rotateY(180deg) translateZ(var(--h))}.spin-cube .face-left{transform:rotateY(-90deg) translateZ(var(--h))}.spin-cube .face-top{transform:rotateX(90deg) translateZ(var(--h))}.spin-cube .face-bottom{transform:rotateX(-90deg) translateZ(var(--h))}.spin-face.has-img{overflow:hidden;display:grid;place-items:center}.spin-face img{width:100%;height:100%;object-fit:contain;-webkit-user-drag:none}.spin-face img.crop-head{width:88%;height:88%}.spin-face img.pad{width:78%;height:78%}@keyframes spin{0%{transform:translateZ(calc(-1 * var(--h))) rotateX(-20deg) rotateY(0) rotate(10deg)}to{transform:translateZ(calc(-1 * var(--h))) rotateX(-20deg) rotateY(360deg) rotate(10deg)}}@media(prefers-reduced-motion:reduce){.info-cube{--turn: 0s}.cube-tilt{animation:none}.spin-cube{animation:none;transform:translateZ(calc(-1 * var(--h))) rotateX(-20deg) rotateY(35deg)}}.funhouse{min-height:100vh;padding:2rem;background:#000 repeating-linear-gradient(45deg,#000 0,#000 20px,#1a0033 20px,#1a0033 40px);color:#0f0;font-family:Comic Sans MS,Comic Neue,cursive;text-align:center}.funhouse a{color:#ff0}.blink{animation:blink 1s steps(2,start) infinite}@keyframes blink{to{visibility:hidden}}@media(prefers-reduced-motion:reduce){.blink{animation:none}}:root{--bg: #fafaf8;--fg: #1b1b1b;--muted: #666;--accent: #2a5d4f;--face-bg: rgba(255, 255, 255, .92);--face-edge: rgba(0, 0, 0, .18);--spin-bg: rgba(42, 93, 79, .08);font-family:Georgia,Times New Roman,serif;color:var(--fg);background:var(--bg)}@media(prefers-color-scheme:dark){:root{--bg: #121212;--fg: #ececec;--muted: #9a9a9a;--accent: #7fc4b0;--face-bg: rgba(28, 28, 28, .94);--face-edge: rgba(255, 255, 255, .2);--spin-bg: rgba(127, 196, 176, .08)}}*{box-sizing:border-box}html,body{overscroll-behavior:none}body{margin:0;background:var(--bg)}.home{max-width:40rem;margin:0 auto;padding:4rem 1rem;line-height:1.6}.home h1{margin-bottom:.25rem}.tagline{color:var(--muted);margin-top:0}.home a{color:var(--accent)}.links{list-style:none;padding:0;display:flex;gap:1rem;flex-wrap:wrap}.funhouse-door{display:inline-block;margin-top:3rem;font-size:.9rem}.cube-home{min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;overflow:hidden}.cube-row{display:flex;align-items:center;justify-content:center;gap:clamp(2.5rem,8vw,7rem)}@media(max-width:720px){.cube-home{padding:.75rem 1rem}.cube-row{flex-direction:column;gap:clamp(.75rem,3svh,2rem)}.info-cube{--s: min(300px, 78vw, 46svh);gap:1rem}.spin-stage{--s: min(96px, 12svh)}}.cube-home a{color:var(--accent)}.face .tagline{margin:0}.face ul{list-style:none;padding:0;margin:0;line-height:1.9}.face-funhouse{background:#000 repeating-linear-gradient(45deg,#000 0,#000 14px,#1a0033 14px,#1a0033 28px);color:#0f0;font-family:Comic Sans MS,Comic Neue,cursive}.cube-home .face-funhouse a{color:#ff0}.avatar{display:block;width:116px;height:116px;margin:0 auto 1rem;padding:6px 6px 0;border-radius:50%;background:var(--spin-bg);border:1px solid var(--face-edge);object-fit:contain;object-position:bottom;-webkit-user-drag:none}
