:root{font-family:Trebuchet MS,sans-serif;color:#fff9e8;background:#87b440;font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}@media(orientation:portrait)and (pointer:coarse)and (max-width:599px){body{position:fixed;top:env(safe-area-inset-top);left:0;width:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));height:100dvw;transform:rotate(90deg) translateY(-100%);transform-origin:top left}}[hidden]{display:none!important}.stage{position:fixed;inset:0;touch-action:none;user-select:none;-webkit-user-select:none}.stage canvas{display:block;width:100%;height:100%;cursor:grab}.stage canvas:active{cursor:grabbing}.text-entry{position:fixed;top:0;left:0;width:1px;height:1px;margin:0;padding:0;border:0;outline:none;opacity:0;pointer-events:none;background:transparent;color:transparent;caret-color:transparent;font-size:16px}.perf{position:fixed;top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));width:230px;padding:11px 13px 10px;border:1px solid #fff6d822;border-radius:9px;background:#2c2318e8;box-shadow:0 6px 24px #161b1e33;font-size:13px;line-height:1.3}.perf header{display:flex;gap:9px;align-items:baseline;color:#c8bda7;font-variant-numeric:tabular-nums}.perf header strong{color:#fff9e8;font-size:15px}.perf-backend{color:#ecd69d}.perf-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:9px 0 10px}.perf-stats dd{margin:0;font-size:23px;font-weight:700;font-variant-numeric:tabular-nums}.perf-stats dt{color:#b5aa93;font-size:12px}.perf-links{display:flex;justify-content:space-between;padding-top:8px;border-top:1px solid #ffffff18;font-size:12px}.perf-links a{color:#ecd69d}.perf-account{display:flex;gap:10px;justify-content:space-between;margin:8px 0 0;padding-top:8px;border-top:1px solid #ffffff18;color:#c8bda7;font-size:12px}.perf-account span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.perf-account button{flex:none;padding:0;border:0;background:none;color:#ecd69d;font:inherit;text-decoration:underline;white-space:nowrap;cursor:pointer}.hint{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translate(-50%);margin:0;padding:9px 15px;border-radius:8px;background:#2c2318d0;color:#f4ead2;font-size:14px;white-space:nowrap;pointer-events:none;transition:opacity .4s}.hint.gone{opacity:0}.loading{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;gap:12px;align-items:center;padding:16px 20px;border-radius:8px;background:#342b21ed;font-size:16px;font-variant-numeric:tabular-nums;white-space:nowrap}.loading-ring{width:18px;height:18px;border:2px solid #bbae88;border-right-color:transparent;border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-panel{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(90vw,460px);padding:24px;border-radius:10px;background:#342b21}.error-panel h1{margin:0 0 16px;font-size:20px}.error-actions{display:flex;gap:10px}.error-panel button{padding:9px 15px;border:1px solid #e8cf97;border-radius:5px;background:#e8cf97;color:#312619;font:inherit;cursor:pointer}.error-panel button.secondary{background:none;color:#e8cf97}.error-panel details{margin-top:18px;font-size:13px}.error-panel pre{max-height:220px;overflow:auto;white-space:pre-wrap}@media(min-width:600px)and (min-height:500px){.hint{top:max(18px,env(safe-area-inset-top));bottom:auto}}@media(max-width:600px){.perf{width:200px;padding:9px 11px 8px}.perf-stats dd{font-size:20px}.hint{font-size:13px}}@media(prefers-reduced-motion:reduce){.loading-ring{animation:none}}
