:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{width:100%;height:100dvh}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.viewer-page{background:radial-gradient(circle at 10% 15%,#f8fbff 0%,#dbe6ee 42%,#b8c8d5 100%);width:100vw;height:100dvh;position:relative;overflow:hidden}.viewer-canvas{width:100%;height:100%}.perf-monitor{color:#f3f6f9;pointer-events:none;background:#10161cd6;border:1px solid #ffffff40;border-radius:10px;width:min(285px,100vw - 28px);padding:10px 12px;font-family:IBM Plex Mono,Courier New,monospace;position:absolute;top:14px;left:14px}.perf-monitor h2{letter-spacing:.05em;text-transform:uppercase;color:#d7e4ef;margin:0 0 8px;font-size:.8rem}.perf-monitor dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;margin:0;display:grid}.perf-monitor dl div{border-bottom:1px solid #ffffff1a;margin:0;padding-bottom:4px}.perf-monitor dt{opacity:.72;margin:0;font-size:.65rem}.perf-monitor dd{color:#fff;margin:2px 0 0;font-size:.82rem}.viewer-controls{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffc2;border:1px solid #1f34422e;border-radius:10px;flex-direction:column;gap:6px;width:min(220px,100vw - 28px);padding:12px 14px;display:flex;position:absolute;top:14px;right:14px;box-shadow:0 8px 24px #14253129}.controls-title{color:#10212b;letter-spacing:-.02em;margin:0 0 4px;font-size:1rem;font-weight:600}.controls-status{color:#4a7088;margin:0;font-family:IBM Plex Mono,Courier New,monospace;font-size:.8rem}.controls-error{color:#8c2626;word-break:break-all;margin:0;font-size:.78rem}.controls-stat{color:#243845;align-items:center;gap:7px;margin:0;font-family:IBM Plex Mono,Courier New,monospace;font-size:.78rem;display:flex}.dot{border-radius:50%;flex-shrink:0;width:9px;height:9px;display:inline-block}.dot--mesh{background:#2d8}.dot--pivot{background:#89a}.asset-mode{border-top:1px solid #1425311a;justify-content:space-between;align-items:center;padding-top:8px;display:flex}.asset-mode-label{color:#4a7088;font-family:IBM Plex Mono,Courier New,monospace;font-size:.72rem}.asset-toggle{cursor:pointer;color:#243845;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-family:IBM Plex Mono,Courier New,monospace;font-size:.72rem;display:flex}.asset-toggle-label{text-align:left;width:9ch;display:inline-block}.asset-toggle-track{background:#1425312e;border-radius:99px;flex-shrink:0;align-items:center;width:28px;height:15px;padding:2px;transition:background .2s;display:flex}.asset-toggle--on .asset-toggle-track{background:#4a7088}.asset-toggle-thumb{background:#fff;border-radius:50%;width:11px;height:11px;transition:transform .2s;box-shadow:0 1px 3px #00000040}.asset-toggle--on .asset-toggle-thumb{transform:translate(13px)}.json-section{border-top:1px solid #1425311a;flex-direction:column;gap:6px;margin-top:4px;padding-top:8px;display:flex}.json-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.json-label{color:#4a7088;align-items:center;gap:6px;font-family:IBM Plex Mono,Courier New,monospace;font-size:.72rem;display:flex}.json-badge{color:#fff;background:#d4580a;border-radius:3px;padding:1px 5px;font-family:IBM Plex Mono,Courier New,monospace;font-size:.6rem;line-height:1.4}.json-reset{color:#243845;cursor:pointer;background:0 0;border:1px solid #14253140;border-radius:4px;padding:2px 6px;font-family:IBM Plex Mono,Courier New,monospace;font-size:.65rem}.json-reset:hover{background:#14253112}.json-dropzone{border:1.5px dashed #4a708859;border-radius:6px;transition:border-color .15s,background .15s}.json-dropzone--over{background:#4a708814;border-color:#4a7088}.json-textarea{resize:vertical;color:#10212b;box-sizing:border-box;background:0 0;border:none;outline:none;width:100%;height:80px;padding:6px 8px;font-family:IBM Plex Mono,Courier New,monospace;font-size:.68rem}.json-textarea::placeholder{color:#8aabbf}.json-textarea::-webkit-scrollbar{width:5px}.json-textarea::-webkit-scrollbar-track{background:0 0}.json-textarea::-webkit-scrollbar-thumb{background:#4a708859;border-radius:99px}.json-textarea::-webkit-scrollbar-thumb:hover{background:#4a7088a6}.json-apply{color:#fff;cursor:pointer;background:#4a7088;border:none;border-radius:5px;align-self:flex-start;padding:4px 10px;font-family:IBM Plex Mono,Courier New,monospace;font-size:.72rem}.json-apply:hover{background:#3a5f75}.json-error{color:#8c2626;margin:0;font-family:IBM Plex Mono,Courier New,monospace;font-size:.68rem}@media (width<=640px){.viewer-controls{width:auto;left:14px;right:14px}}
