:root{--ui-gutter: 16px;--ui-radius: 12px;--ui-surface: rgba(20, 20, 24, .9);--ui-border: rgba(255, 255, 255, .1);--info-panel-width: 248px;--header-height: 52px;--action-bar-height: 44px;--action-bar-reserve: 124px;--fps-bar-height: 32px;--view-bar-height: 0px}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden;background:#1a1a1a;color:#f2f2f2;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}#app{width:100%;height:100%}.ui-root{position:fixed;inset:0;pointer-events:none;z-index:10}.app-header{position:absolute;top:max(var(--ui-gutter),env(safe-area-inset-top));left:0;right:0;pointer-events:none}.app-title{position:absolute;top:0;left:50%;transform:translate(-50%);margin:0;padding:10px 18px;border-radius:var(--ui-radius);background:var(--ui-surface);border:1px solid var(--ui-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;font-size:clamp(.95rem,2.5vw,1.2rem);font-weight:600;letter-spacing:-.02em;line-height:1.2;text-align:center;white-space:nowrap;max-width:calc(100% - 120px);overflow:hidden;text-overflow:ellipsis;pointer-events:none}.action-bar{position:absolute;top:max(var(--ui-gutter),env(safe-area-inset-top));right:max(var(--ui-gutter),env(safe-area-inset-right));z-index:12;display:flex;align-items:center;gap:6px;pointer-events:auto}.info-panel[hidden]{display:none!important}.info-panel{position:absolute;top:calc(max(var(--ui-gutter),env(safe-area-inset-top)) + var(--action-bar-height) + 8px);right:max(var(--ui-gutter),env(safe-area-inset-right));bottom:max(var(--ui-gutter),env(safe-area-inset-bottom));width:var(--info-panel-width);padding:16px 18px 18px;border-radius:14px;background:#141418e0;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:2;pointer-events:auto}.info-panel__heading{margin:0 0 12px;font-size:.95rem;font-weight:600;color:#fff}.info-panel p{margin:0 0 12px;font-size:.875rem;line-height:1.55;color:#ffffffc7}.info-panel code{font-size:.8rem;padding:.1em .35em;border-radius:4px;background:#ffffff14}.info-panel__hide{display:block;width:min(100%,220px);margin:20px auto 4px;padding:14px 24px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:#ffffff14;color:#f2f2f2;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.info-panel__hide:hover{background:#ffffff24;border-color:#ffffff40}.info-panel__links{margin:16px 0 0;padding-left:18px}.info-panel__links li{margin-bottom:8px;font-size:.875rem;line-height:1.4}.info-panel a{color:#8eb7ff;text-decoration:none}.info-panel a:hover{color:#b3ceff;text-decoration:underline}.view-bar{position:absolute;left:50%;bottom:max(var(--ui-gutter),env(safe-area-inset-bottom));transform:translate(-50%);display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:min(calc(100% - 32px),720px);padding:8px;border-radius:999px;background:#141418d1;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;box-sizing:border-box}.color-scale{position:absolute;z-index:1;left:50%;transform:translate(-50%);height:auto;max-width:calc(100% - 24px);pointer-events:none}.color-scale[hidden]{display:none!important}.view-button,.icon-button{border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:#f2f2f2;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease}.view-button{min-width:72px;padding:10px 14px;border-radius:999px;font-size:14px;font-weight:500;flex:0 1 auto}.view-button.cycle-toggle{min-width:44px;padding:10px 12px;font-size:18px;line-height:1}.view-bar__divider{align-self:stretch;width:1px;margin:4px 0;background:#ffffff1f}.action-bar .icon-button{width:36px;height:36px;padding:0;border-radius:8px;font-size:15px;font-weight:600;font-style:italic;line-height:1;pointer-events:auto;border:1px solid rgba(0,0,0,.15);background:#fff;color:#111;box-shadow:0 2px 8px #00000026}.action-bar .icon-button:not(:first-child){font-style:normal;font-weight:400;font-size:16px}.action-bar .icon-button:hover{background:#f3f3f3;border-color:#00000040}.view-button:hover,.icon-button:hover{background:#ffffff1f;border-color:#fff3}.view-button.active,.action-bar .icon-button.active{background:#4c8dff;border-color:#4c8dff;color:#fff}.view-button:disabled{opacity:.45;cursor:wait}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0a0a0c8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:auto;z-index:20}.loading-overlay[hidden]{display:none!important}.loading-overlay__content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px 32px;border-radius:var(--ui-radius);background:var(--ui-surface);border:1px solid var(--ui-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.15);border-top-color:#4c8dff;border-radius:50%;animation:loading-spin .8s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}.loading-overlay__label{font-size:14px;color:#ffffffd9}.fps-counter{position:absolute;left:max(var(--ui-gutter),env(safe-area-inset-left));bottom:max(var(--ui-gutter),env(safe-area-inset-bottom));padding:6px 10px;border-radius:8px;background:#141418d1;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#ffffffb8;font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.02em;pointer-events:none}@media(min-width:768px)and (max-width:1023px){:root{--info-panel-width: 220px}.view-button{min-width:64px;padding:8px 12px;font-size:13px}}@media(max-width:767px){:root{--ui-gutter: 12px}.app-title{left:max(var(--ui-gutter),env(safe-area-inset-left));right:calc(max(var(--ui-gutter),env(safe-area-inset-right)) + var(--action-bar-reserve));transform:none;padding:8px 14px;max-width:none;text-align:left}.info-panel{top:calc(max(var(--ui-gutter),env(safe-area-inset-top)) + var(--header-height));left:max(var(--ui-gutter),env(safe-area-inset-left));right:max(var(--ui-gutter),env(safe-area-inset-right));bottom:calc(max(var(--ui-gutter),env(safe-area-inset-bottom)) + var(--fps-bar-height) + var(--view-bar-height) + 8px);width:auto;max-height:none;padding:14px}.info-panel p,.info-panel__links li{font-size:.8125rem}.view-bar{left:max(var(--ui-gutter),env(safe-area-inset-left));right:max(var(--ui-gutter),env(safe-area-inset-right));transform:none;width:auto;max-width:none;border-radius:16px;gap:6px;padding:8px;bottom:calc(max(var(--ui-gutter),env(safe-area-inset-bottom)) + var(--fps-bar-height))}.view-button{min-width:0;flex:1 1 calc(50% - 6px);max-width:calc(50% - 3px);padding:8px 10px;font-size:12px;line-height:1.25;text-align:center}}@media(max-width:380px){.view-button{flex-basis:100%;max-width:100%}}
