*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#292c29;background:#f1f0eb}#viewer{position:fixed;inset:0;touch-action:none}canvas{display:block;width:100%;height:100%;touch-action:none}.heading{position:absolute;top:max(30px,env(safe-area-inset-top));left:max(36px,env(safe-area-inset-left));pointer-events:none}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:700;color:#898b7f;display:flex;align-items:center;gap:9px}.eyebrow span{width:7px;height:7px;border-radius:50%;background:#a6a988}h1{font-size:clamp(27px,4vw,42px);font-weight:500;letter-spacing:-.04em;margin:11px 0 4px}h1 em{font-family:Georgia,serif;font-weight:400;font-style:italic;color:#838875}.heading p{font-size:13px;color:#888a81;margin:0}.controls{position:absolute;right:max(32px,env(safe-area-inset-right));top:max(30px,env(safe-area-inset-top));display:flex;align-items:center;gap:4px;padding:6px;background:rgba(255,255,255,.88);border:1px solid rgba(116,119,104,.12);border-radius:13px;box-shadow:0 7px 24px #4b4c3912;backdrop-filter:blur(12px)}button{font:inherit;border:0;background:transparent;color:#484b43;cursor:pointer;border-radius:8px;min-height:38px;padding:0 10px;display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600}button:hover,button:focus-visible{background:#eeefe9;outline:none}button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.square{font-size:20px;font-weight:400;width:36px;justify-content:center;padding:0}.divider{height:22px;width:1px;background:#e3e4dd;margin:0 2px}.hint{position:absolute;bottom:max(26px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);background:rgba(255,255,255,.87);border:1px solid rgba(116,119,104,.12);border-radius:99px;padding:11px 18px;color:#777a70;font-size:11px;white-space:nowrap;box-shadow:0 7px 24px #4b4c3910;pointer-events:none}.touch-hint{display:none}#error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);max-width:90%;background:white;padding:20px;border-radius:12px}@media (pointer:coarse){.desktop-hint{display:none}.touch-hint{display:inline}}@media(max-width:600px){.heading{top:max(22px,env(safe-area-inset-top));left:20px}.heading h1{margin-top:7px}.heading p{font-size:12px}.eyebrow{font-size:9px}.controls{top:auto;bottom:max(75px,calc(env(safe-area-inset-bottom) + 66px));right:50%;transform:translateX(50%);white-space:nowrap}.hint{bottom:max(22px,env(safe-area-inset-bottom));font-size:10px;padding:10px 13px}}
