:root{--bg:#070d1a;--panel:#0f172a;--panel-2:#152238;--border:#1e293b;--line:#1e293b;--chip-bg:#070d1aeb;--text:#e2e8f0;--muted:#8a96ab;--accent:#4f8cff;--accent-2:#22d3ee;--accent-3:#a78bfa;--green:#34d399;--yellow:#fbbf24;--blue:#60a5fa;--danger:#ff5d73;--red:#ff5d73;--gutter:clamp(18px, 4vw, 48px);--suite-nav-h:44px;--radius-sm:8px;--radius:12px;--radius-lg:18px;--chip-radius:999px;--font-sans:"Segoe UI", system-ui, -apple-system, sans-serif;--font-mono:ui-monospace, Consolas, monospace;--font-size-chip:11px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-sans)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body{margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}.suite-nav{z-index:70;height:var(--suite-nav-h);padding:0 var(--gutter);padding-left:max(var(--gutter), env(safe-area-inset-left));padding-right:max(var(--gutter), env(safe-area-inset-right));background:var(--chip-bg);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:10px;display:flex;position:fixed;top:0;left:0;right:0}.suite-brand{color:var(--text);letter-spacing:.2px;white-space:nowrap;align-items:center;gap:9px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.suite-brand:hover .suite-brand-name{color:var(--accent-2)}.suite-logo{width:26px;height:26px;box-shadow:0 0 0 1px var(--border);border-radius:7px;flex:none}.suite-current{border-left:1px solid var(--border);color:var(--muted);letter-spacing:.2px;white-space:nowrap;align-items:center;gap:7px;margin-left:6px;padding-left:12px;font-size:12px;font-weight:600;display:inline-flex;overflow:hidden}.suite-current-icon{border-radius:5px;flex:none;width:18px;height:18px}.suite-current-name{text-overflow:ellipsis;overflow:hidden}.suite-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.suite-menu{position:relative}.suite-menu summary{cursor:pointer;-webkit-user-select:none;user-select:none;letter-spacing:.3px;color:var(--muted);border:1px solid var(--border);border-radius:var(--chip-radius);background:var(--chip-bg);align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;list-style:none;transition:color .16s,border-color .16s;display:inline-flex}.suite-menu summary::-webkit-details-marker{display:none}.suite-menu summary:hover,.suite-menu[open] summary{color:var(--text);border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.suite-menu-list{background:var(--panel);border:1px solid var(--border);z-index:71;border-radius:12px;min-width:224px;max-height:min(72vh,520px);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 20px 50px #00000080}.suite-menu-list a{color:var(--text);white-space:nowrap;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:500;text-decoration:none;display:flex}.suite-menu-list a:hover{background:color-mix(in srgb, var(--accent) 14%, transparent)}.suite-menu-list img{border-radius:5px;flex:none;width:18px;height:18px}.suite-menu-list li[data-current="1"] a{color:var(--accent-2);font-weight:700}.version-chip{top:calc(var(--suite-nav-h) + 12px);z-index:45;background:var(--chip-bg);border:1px solid var(--border);color:var(--muted);letter-spacing:.4px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);-webkit-user-select:none;user-select:none;cursor:default;border-radius:10px;flex-direction:column;padding:5px 10px;font-size:11px;font-weight:600;line-height:1.35;display:flex;position:fixed;left:12px}.version-chip-line{display:block}.version-chip-date{letter-spacing:.3px;opacity:.85;font-size:10px;font-weight:500}.hit-chip{top:calc(var(--suite-nav-h) + 58px);z-index:45;background:var(--chip-bg);border:1px solid var(--border);color:var(--muted);letter-spacing:.4px;border-radius:var(--chip-radius);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);-webkit-user-select:none;user-select:none;white-space:nowrap;padding:4px 10px;font-size:11px;font-weight:600;text-decoration:none;position:fixed;left:12px}.hit-chip:hover{border-color:var(--accent);color:var(--text)}.feedback-chip{top:calc(var(--suite-nav-h) + 80px);z-index:45;background:var(--chip-bg);border:1px solid var(--border);color:var(--muted);letter-spacing:.4px;border-radius:var(--chip-radius);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);white-space:nowrap;padding:4px 10px;font-size:11px;font-weight:600;text-decoration:none;position:fixed;left:12px}.feedback-chip:hover{border-color:var(--accent);color:var(--text)}.lang-select{top:calc(var(--suite-nav-h) + 114px);z-index:45;background:var(--chip-bg);border:1px solid var(--border);color:var(--muted);letter-spacing:.4px;border-radius:var(--chip-radius);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;outline:none;padding:3px 6px;font-size:11px;font-weight:600;position:fixed;left:12px}.lang-select:hover,.lang-select:focus{border-color:var(--accent);color:var(--text)}.lang-select option{background:var(--panel);color:var(--text)}.donate-btn{z-index:60;background:#fff;border-radius:14px;padding:8px;line-height:0;transition:transform .12s,box-shadow .12s;display:inline-block;position:fixed;bottom:18px;left:18px;box-shadow:0 6px 20px #00000059}.donate-btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px #00000073}.donate-img{width:auto;height:47px;display:block}.app-footer{bottom:max(14px, env(safe-area-inset-bottom));z-index:40;max-width:calc(100vw - 2 * var(--gutter));background:var(--chip-bg);border:1px solid var(--border);border-radius:var(--chip-radius);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:5px 14px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.app-footer a,.app-footer span{color:var(--muted);letter-spacing:.4px;font-size:11px;font-weight:600;text-decoration:none}.app-footer a:hover,.app-footer a:focus-visible{color:var(--text);outline:none}.footer-sep{color:var(--border);font-size:11px}.app-footer-privacy,.privacy-indicator{letter-spacing:.4px;white-space:nowrap;align-items:center;gap:6px;font-size:11px;font-weight:600;display:inline-flex}.app-footer-privacy .dot,.privacy-indicator .dot{background:currentColor;border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 6px}.app-footer-privacy.privacy-green,.privacy-indicator.privacy-green{color:var(--green)}.app-footer-privacy.privacy-yellow,.privacy-indicator.privacy-yellow{color:var(--yellow)}.app-footer-privacy.privacy-blue,.privacy-indicator.privacy-blue{color:var(--blue)}@media (width<=640px){.suite-brand-name{display:none}.suite-current-name{max-width:34vw}}@media (prefers-reduced-motion:reduce){.donate-btn{transition:none}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{overflow:hidden}.app{height:100vh;padding-top:var(--suite-nav-h);display:flex}.scene-wrap{background:radial-gradient(1200px 800px at 50% 40%, #0b1930 0%, var(--bg) 70%);scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex:1;min-width:0;position:relative;overflow-y:auto}.scene-wrap::-webkit-scrollbar{width:8px}.scene-wrap::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.scene-inner{flex-direction:column;gap:16px;max-width:980px;margin:0 auto;padding:20px 24px 84px;display:flex}.hero{text-align:center;border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#070d1a8c;border-radius:14px;padding:26px 20px 22px}.hero-addr{letter-spacing:-.5px;color:#fff;font-variant-numeric:tabular-nums;font-family:ui-monospace,Consolas,monospace;font-size:clamp(20px,4.5vw,32px);font-weight:700}.hero-addr .target-part{color:#fff}.hero-addr .accent-part{color:var(--accent)}.hero-addr .cyan-part{color:var(--accent-2)}.hero-sub{color:var(--muted);letter-spacing:.3px;margin-top:8px;font-size:13px}.hero-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:14px;display:inline-flex}.card{border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#070d1a8c;border-radius:12px;padding:14px 16px}.card h3{text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);margin:0 0 10px;font-size:12px}.key-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.key-item{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;min-width:0;padding:10px 12px}.key-label{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;align-items:center;gap:6px;font-size:11px;display:flex}.key-value{color:var(--text);overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin-top:4px;font-family:ui-monospace,Consolas,monospace;font-size:14px;font-weight:600}.key-value.cyan{color:var(--accent-2)}.key-value.green{color:#4ade80}.key-value.amber{color:#fbbf24}.key-value.red{color:var(--danger)}.key-note{color:var(--muted);text-transform:none;letter-spacing:0;margin-top:2px;font-family:Segoe UI,system-ui,sans-serif;font-size:10.5px;font-weight:400}.tbl{border-collapse:collapse;width:100%;font-family:ui-monospace,Consolas,monospace;font-size:11.5px}.tbl th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 10px;font-size:11px;font-weight:600}.tbl td{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #1e293b80;max-width:300px;padding:6px 10px;overflow:hidden}.tbl tr:hover td{background:#4f8cff0f}.tbl .label{color:var(--muted);font-family:Segoe UI,system-ui,sans-serif;font-size:12px}.tbl .num{text-align:right}.tbl .type{color:var(--accent-2);font-weight:600}.tbl .data{overflow-wrap:anywhere;white-space:pre-wrap}.tbl .ok{color:#4ade80}.tbl .warn{color:#fbbf24}.tbl .err{color:var(--danger)}.tbl-wrap{overflow-x:auto}.raw{border:1px solid var(--border);color:#cbd5e1;white-space:pre-wrap;overflow-wrap:anywhere;background:#070d1a;border-radius:8px;max-height:320px;margin:0;padding:10px 12px;font-family:ui-monospace,Consolas,monospace;font-size:11.5px;line-height:1.6;overflow-y:auto}details.raw-details{margin-top:2px}details.raw-details summary{cursor:pointer;color:var(--muted);text-transform:uppercase;letter-spacing:1px;-webkit-user-select:none;user-select:none;margin-bottom:8px;font-size:12px;font-weight:600}details.raw-details summary:hover{color:var(--text)}.controls-panel{background:var(--panel);border-left:1px solid var(--border);z-index:50;scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex-direction:column;flex:none;gap:20px;width:350px;padding:18px;display:flex;overflow-y:auto}.controls-panel::-webkit-scrollbar{width:8px}.controls-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.controls-panel h1{letter-spacing:-.2px;margin:0;font-size:22px}.panel-header{align-items:center;gap:10px;display:flex}.app-icon{border-radius:8px;flex:none;width:36px;height:36px;box-shadow:0 4px 14px #00000059}.controls-panel h2{text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);margin:0;font-size:12px}.panel-section{border-top:1px solid var(--border);padding-top:16px}.section-head{width:100%;color:inherit;font:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;margin:0 0 4px;padding:6px 2px;display:flex}.section-head:hover{background:#94a3b814}.section-head:hover h2{color:var(--text)}.section-head .caret{width:24px;height:24px;color:var(--muted);background:var(--panel-2);border:1px solid var(--border);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;line-height:1;transition:transform .15s,border-color .12s,color .12s;display:inline-flex}.section-head:hover .caret{color:var(--text);border-color:var(--accent)}.section-head.collapsed .caret{transform:rotate(-90deg)}.section-head.collapsed{margin-bottom:0}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:11px}.tool-tabs{flex-direction:column;gap:6px;display:flex}.tool-tab{border:1px solid var(--border);background:var(--panel-2);width:100%;color:var(--muted);cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;gap:10px;padding:9px 12px;font-size:13px;font-weight:600;transition:all .12s;display:flex}.tool-tab:hover{border-color:var(--accent);color:var(--text)}.tool-tab.active{color:#fff;background:#4f8cff24;border-color:#4f8cff8c}.tool-tab .t-icon{width:22px;height:22px;color:var(--accent-2);flex:none;display:inline-flex}.tool-tab.active .t-icon{color:var(--accent-2)}.tool-tab .t-tag{color:var(--muted);letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;margin-left:auto;font-size:10px;font-weight:500}.tool-tab.active .t-tag{color:var(--accent-2)}.seg{background:var(--panel-2);border:1px solid var(--border);border-radius:9px;gap:4px;padding:3px;display:flex}.seg button{color:var(--muted);letter-spacing:.4px;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:5px 10px;font-size:12px;font-weight:600;transition:all .12s}.seg button.active{color:#fff;background:#4f8cff2e}.seg button:hover:not(.active){color:var(--text)}.text-input{background:var(--panel-2);border:1px solid var(--border);width:100%;color:var(--text);font-variant-numeric:tabular-nums;border-radius:8px;outline:none;padding:8px 10px;font-size:13px}.text-input:focus{border-color:var(--accent)}select.text-input{cursor:pointer}select.text-input option{background:var(--panel)}.mono-input{letter-spacing:.2px;font-family:ui-monospace,Consolas,monospace}.input-err{border-color:#ff5d7399}.input-err:focus{border-color:var(--danger)}.hint{color:var(--muted);min-height:14px;margin:4px 2px 0;font-size:11px}.hint.err{color:var(--danger)}.field-label{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin:12px 0 6px;font-size:11px}.range-row{align-items:center;gap:10px;display:flex}.range-row input[type=range]{min-width:0;accent-color:var(--accent);cursor:pointer;flex:1}.range-value{text-align:right;min-width:40px;color:var(--text);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.range-row .range-num{text-align:center;width:52px}.chip{background:var(--panel-2);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:3px 10px;font-size:11px}.chip-live{color:var(--accent-2);border-color:var(--accent-2);align-items:center;gap:6px;display:inline-flex}.chip-live .dot{background:currentColor;border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite live-pulse}@keyframes live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}.stats{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.btn{border:1px solid var(--border);background:var(--panel-2);color:var(--text);cursor:pointer;border-radius:8px;padding:7px 12px;font-size:13px;font-weight:600;transition:all .12s}.btn:hover{border-color:var(--accent);color:#fff}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:#3f7cff}.btn.ghost{background:0 0}.btn.toggle{text-align:left;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.btn.toggle .toggle-ind{color:var(--muted);font-size:11px}.btn.toggle.on{border-color:#22d3ee80}.btn.toggle.on .toggle-ind{color:var(--accent-2)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.block{width:100%}.btn.busy{color:#fff;cursor:progress;background:#4f8cff40;border-color:#4f8cff99}.row-btns{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.warn{color:#fbbf24;margin:0;font-size:13px}.err{color:var(--danger)}.note{color:var(--muted);margin:6px 2px 0;font-size:11.5px;line-height:1.5}.badge{color:var(--accent-2);border:1px solid #22d3ee66;border-radius:4px;padding:0 5px;font-size:10px;font-style:normal}.badge.amber{color:#fbbf24;border-color:#f59e0b66}.json-pre{border:1px solid var(--border);color:#94a3b8;white-space:pre-wrap;overflow-wrap:anywhere;background:#070d1a;border-radius:8px;max-height:320px;margin:0;padding:10px 12px;font-family:ui-monospace,Consolas,monospace;font-size:10.5px;line-height:1.5;overflow-y:auto}.panel-source{color:var(--muted);text-align:left;margin:auto 2px 0;font-size:10.5px;line-height:1.6}.chip-btn{color:var(--accent-2);cursor:pointer;letter-spacing:.4px;text-transform:uppercase;background:#22d3ee1a;border:1px solid #22d3ee66;border-radius:999px;padding:4px 12px;font-family:Segoe UI,system-ui,sans-serif;font-size:11px;font-weight:600;transition:all .12s}.chip-btn:hover{border-color:var(--accent-2);color:#fff;background:#22d3ee33}.ping-btn{background:var(--panel-2);border:1px solid var(--border);color:var(--accent-2);letter-spacing:.3px;text-transform:uppercase;cursor:pointer;white-space:nowrap;border-radius:6px;padding:3px 10px;font-size:10.5px;font-weight:600;transition:all .12s}.ping-btn:hover{border-color:var(--accent-2);color:#fff;background:#22d3ee1f}.tbl .action-col{text-align:right;width:70px}.tbl .action{text-align:right}.overlay-backdrop{z-index:70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#070d1a9e;justify-content:center;align-items:center;padding:20px;animation:.14s overlay-in;display:flex;position:fixed;inset:0}@keyframes overlay-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.overlay-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:14px;width:100%;max-width:560px;max-height:88vh;padding:18px 20px 20px;display:flex;overflow-y:auto;box-shadow:0 30px 80px #0009}.overlay-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.overlay-title{text-transform:uppercase;letter-spacing:1.1px;color:var(--muted);align-items:center;gap:9px;font-size:12px;font-weight:700;display:inline-flex}.overlay-title .mono{color:var(--accent-2);text-transform:none;letter-spacing:0;font-weight:600}.overlay-actions{align-items:center;gap:8px;display:inline-flex}.overlay-close{background:var(--panel-2);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:8px;width:30px;height:30px;font-size:13px;line-height:1;transition:all .12s}.overlay-close:hover{color:#fff;border-color:var(--danger)}.tiny-btn{padding:4px 10px;font-size:11px}.busy-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:60px 20px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.scene-wrap,.controls-panel{scrollbar-width:thin;scrollbar-color:var(--border) transparent}@media (width<=840px){.app{height:100dvh;padding-top:var(--suite-nav-h);flex-direction:column}.scene-wrap{flex:55%;min-height:0}.controls-panel{border-left:none;border-top:1px solid var(--border);flex:45%;width:100%;min-height:0;padding:14px 14px 22px}.version-chip{top:calc(var(--suite-nav-h) + 8px);left:8px}.hit-chip{top:calc(var(--suite-nav-h) + 42px);left:8px}.feedback-chip{top:calc(var(--suite-nav-h) + 76px);left:8px}.lang-select{top:calc(var(--suite-nav-h) + 110px);left:8px}.donate-btn{padding:6px;inset:calc(50% - 52px) auto auto 12px}.donate-img{height:28px}input,select,.text-input{font-size:16px}.scene-inner{padding:14px 14px 70px}}@media (width<=400px){.donate-btn{top:calc(50% - 52px);left:8px}.app-footer span,.app-footer a{font-size:10px}.key-grid{grid-template-columns:1fr 1fr}}
