*{box-sizing:border-box}body,html{height:100%;margin:0;overflow:hidden;padding:0;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root{height:100vh;margin:0;padding:0;width:100vw}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.debug-umap-container{background:#000;background:var(--bg-color,#000);color:#fff;color:var(--text-color,#fff);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh;left:0;overflow:hidden;position:fixed;top:0;width:100vw}.map-container{height:100vh;position:relative;width:100vw}.debug-umap-svg{shape-rendering:geometricPrecision;-webkit-touch-callout:none;background:#000;background:var(--bg-color,#000);cursor:grab;height:100%;image-rendering:crisp-edges;text-rendering:geometricPrecision;touch-action:none;-webkit-user-select:none;user-select:none;width:100%}.debug-umap-svg:active{cursor:grabbing}.viewport-group{shape-rendering:geometricPrecision;image-rendering:crisp-edges;text-rendering:geometricPrecision;transform-origin:0 0;will-change:transform}.config-display,.tweakpane-container{left:20px;position:fixed;top:20px;z-index:1000}.config-display{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#000000d9;background:var(--config-bg,#000000d9);border:1px solid #333;border:1px solid var(--config-border,#333);border-radius:12px;box-shadow:0 8px 32px #0000004d;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-height:80vh;max-width:350px;min-width:280px;overflow-y:auto;padding:16px 20px;transition:all .2s ease}.config-display:hover{box-shadow:0 12px 40px #0006;transform:translateY(-2px)}.config-header{align-items:center;border-bottom:1px solid #333;border-bottom:1px solid var(--config-border,#333);display:flex;margin-bottom:12px;padding-bottom:8px}.config-icon{font-size:16px;margin-right:8px;opacity:.8}.config-title{color:#667eea;color:var(--config-title,#667eea);font-size:14px;font-weight:600;letter-spacing:.5px}.config-grid{display:flex;flex-direction:column;gap:8px}.config-item{align-items:center;display:flex;justify-content:space-between;padding:6px 0}.config-label{color:#ccc;color:var(--config-text,#ccc);font-size:12px;font-weight:500;letter-spacing:.5px;opacity:.8;text-transform:uppercase}.config-value{background:#667eea1a;background:var(--config-value-bg,#667eea1a);border:1px solid #667eea33;border:1px solid var(--config-value-border,#667eea33);border-radius:6px;color:#fff;color:var(--config-value,#fff);font-family:Monaco,Menlo,monospace;font-size:13px;font-weight:600;padding:2px 8px}.config-section{margin-bottom:16px}.config-section:last-child{margin-bottom:0}.config-section h4{border-bottom:1px solid #333;border-bottom:1px solid var(--config-border,#333);color:#888;color:var(--config-accent,#888);font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;padding-bottom:4px;text-transform:uppercase}.error,.loading{align-items:center;display:flex;flex-direction:column;height:100vh;justify-content:center;padding:40px;text-align:center}.loading{color:#667eea;color:var(--accent-color,#667eea);font-size:18px}.error{background:#000000e6;background:var(--error-bg,#000000e6);color:#e74c3c;color:var(--error-text,#e74c3c)}.error h2{color:#e74c3c;color:var(--error-title,#e74c3c);margin-bottom:20px}.error p{color:#ccc;color:var(--text-secondary,#ccc);margin-bottom:15px}.error code{background:#333;background:var(--code-bg,#333);border-radius:4px;color:#667eea;color:var(--code-text,#667eea);padding:4px 8px}.error pre{background:#1a1a1a;background:var(--pre-bg,#1a1a1a);border:1px solid #333;border:1px solid var(--pre-border,#333);border-radius:8px;color:#ccc;color:var(--pre-text,#ccc);font-family:Monaco,Menlo,monospace;font-size:14px;line-height:1.5;margin-top:10px;padding:15px}.debug-umap-container:not(.dark-mode){--bg-color:#fff;--text-color:#000;--text-secondary:#666;--accent-color:#667eea;--error-bg:#ffffffe6;--error-text:#000;--error-title:#e74c3c;--code-bg:#f5f5f5;--code-text:#667eea;--pre-bg:#f5f5f5;--pre-border:#ddd;--pre-text:#333;--config-bg:#fffffff2;--config-border:#ddd;--config-title:#667eea;--config-text:#666;--config-value:#333;--config-value-bg:#667eea1a;--config-value-border:#667eea4d}.debug-umap-container.dark-mode{--bg-color:#1a1a1a;--text-color:#fff;--text-secondary:#ccc;--accent-color:#667eea;--error-bg:#1a1a1ae6;--error-text:#fff;--error-title:#e74c3c;--code-bg:#2a2a2a;--code-text:#667eea;--pre-bg:#2a2a2a;--pre-border:#444;--pre-text:#ccc;--config-bg:#000000d9;--config-border:#333;--config-title:#667eea;--config-text:#ccc;--config-value:#fff;--config-value-bg:#667eea1a;--config-value-border:#667eea33}.config-display.dark-mode{background:#fff!important;color:#000!important}.config-display.dark-mode .config-label{color:#666!important}.config-display.dark-mode .config-value{background:#667eea1a!important;border:1px solid #667eea4d!important;color:#000!important}.config-display:not(.dark-mode){background:#333!important;color:#fff!important}.config-display:not(.dark-mode) .config-label{color:#ccc!important}.config-display:not(.dark-mode) .config-value{background:#667eea1a!important;border:1px solid #667eea33!important;color:#fff!important}.App{background:#fff;box-sizing:border-box;display:flex;flex-direction:column;height:100vh;margin:0;overflow:hidden;padding:0;position:relative;width:100vw}.app-header{align-items:center;display:flex;justify-content:flex-end;padding:20px;pointer-events:none;position:absolute;right:0;top:0;z-index:100}.app-header>*{pointer-events:auto}.app-header .dark-mode-toggle{flex-shrink:0}.app-header .toggle-btn{background:#fff;border:1px solid #e0e0e0;border-radius:6px;color:#000;cursor:pointer;font-size:10px;font-weight:500;min-width:32px;outline:none;padding:8px;text-align:center;transition:all .2s ease;-webkit-user-select:none;user-select:none}.app-header .toggle-btn:hover{background:#f8f9fa;border-color:#d1d5db}.app-header .toggle-btn:active{transform:translateY(0)}.App.dark-mode{background:#000}.App.dark-mode .app-header .toggle-btn{background:#1a1a1a;border-color:#404040;color:#fff}.App.dark-mode .app-header .toggle-btn:hover{background:#333;border-color:#555}@media (max-width:768px){.app-header{padding:15px}.app-header .toggle-btn{padding:10px}}@media (max-width:480px){.app-header{padding:10px}.app-header .toggle-btn{padding:8px}}
/*# sourceMappingURL=main.303744c4.css.map*/