:root{color-scheme:dark;font-family:Segoe UI,Arial,sans-serif;background:radial-gradient(circle at top,rgba(38,88,140,.35),transparent 45%),linear-gradient(180deg,#0f1824,#070b12);color:#edf3fb}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden}body{background:#070b12}.viewer-shell{position:relative;width:100%;height:100%}.viewer-canvas{display:block;width:100%;height:100%;touch-action:none}.hud-toggle{position:absolute;top:20px;left:392px;z-index:20;min-width:72px;height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#070b12c7;color:#edf3fb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 32px #00000047;cursor:pointer;font-weight:700}.hud{position:absolute;top:20px;left:20px;z-index:15;width:min(360px,calc(100vw - 40px));max-height:calc(100vh - 40px);overflow:auto;padding:16px 18px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#070b12cc;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 16px 48px #00000052;transition:transform .18s ease,opacity .18s ease}.viewer-shell.hud-collapsed .hud{opacity:0;pointer-events:none;transform:translate(calc(-100% - 32px))}.viewer-shell.hud-collapsed .hud-toggle{left:20px}.asset-dock{position:absolute;top:20px;right:20px;z-index:14;width:min(300px,calc(100vw - 40px));max-height:calc(100vh - 40px);overflow:hidden;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#070b12c7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 16px 48px #00000052}.asset-dock h2{margin:0 0 10px;font-size:14px;letter-spacing:.04em;color:#edf3fbe0}.hud h1{margin:0 0 10px;font-size:20px;letter-spacing:.04em}.hud p,.hud li,.status{margin:0;color:#edf3fbcc;font-size:14px;line-height:1.45}.hud ul{margin:12px 0 0;padding-left:18px}.toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.toolbar button{cursor:pointer;padding:10px 14px;border:0;border-radius:999px;background:linear-gradient(135deg,#8dc8ff,#4d8fe4);color:#04101d;font-weight:700}.toolbar button.secondary{background:#ffffff1a;color:#edf3fb}.shortcut{display:inline-flex;align-items:center;justify-content:center;min-width:22px;min-height:18px;margin-left:6px;padding:1px 6px;border-radius:6px;background:#04101d29;color:inherit;font-size:11px;line-height:1;font-weight:800}.toolbar button.secondary .shortcut{background:#ffffff1f}.status,.splat-height-panel,.camera-start-panel,.parts-panel{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.12)}.splat-height-panel h2,.camera-start-panel h2,.parts-panel h2{margin:0 0 10px;font-size:14px;letter-spacing:.04em;color:#edf3fbe0}.splat-height-row,.camera-start-row{display:grid;gap:8px}.splat-height-row{grid-template-columns:auto 36px minmax(0,1fr) 36px auto}.camera-start-row{grid-template-columns:auto minmax(0,1fr) auto}.splat-height-row button,.splat-height-row input,.camera-start-row button{min-height:38px;border:0;border-radius:10px;font:inherit;font-weight:700}.splat-height-row button,.camera-start-row button{cursor:pointer;padding:0 12px;background:linear-gradient(135deg,#8dc8ff,#4d8fe4);color:#04101d}.splat-height-row button.secondary,.camera-start-row button.secondary{background:#ffffff1a;color:#edf3fb}.splat-height-row button:disabled,.splat-height-row input:disabled,.camera-start-row button:disabled{cursor:default;opacity:.45}.splat-height-row input{width:100%;min-width:0;padding:0 8px;background:#ffffff1a;color:#edf3fb}.camera-start-status{margin-top:8px;color:#edf3fba8;font-size:12px;line-height:1.35}.asset-list{display:grid;gap:8px;max-height:calc(100vh - 96px);overflow:auto;padding-right:4px}.asset-card{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff0d;color:#edf3fb;text-align:left;cursor:pointer}.asset-card:hover,.asset-card:focus-visible{border-color:#8dc8ffd9;background:#4d8fe438;outline:none}.asset-card:disabled{cursor:wait;opacity:.58}.asset-thumb{display:flex;align-items:center;justify-content:center;width:58px;height:44px;overflow:hidden;border-radius:8px;background:#04101d61;color:#edf3fbb8;font-size:12px;font-weight:900}.asset-thumb img{width:100%;height:100%;object-fit:cover}.asset-meta{display:flex;flex-direction:column;gap:4px;min-width:0}.asset-label{overflow:hidden;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.asset-file{overflow:hidden;color:#edf3fb99;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.asset-empty{padding:10px 12px;border-radius:10px;background:#ffffff0d;color:#edf3fba8;font-size:13px}.parts-list{display:grid;gap:8px;max-height:240px;overflow:auto;padding-right:4px}.part-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff0d;color:#edf3fb;text-align:left;cursor:pointer}.part-item.active{border-color:#8dc8ffd9;background:#4d8fe43d}.part-meta{display:flex;flex-direction:column;gap:4px;min-width:0}.part-label{font-size:14px;font-weight:700}.part-id{font-size:12px;color:#edf3fba8}.part-chip{flex:0 0 auto;min-width:10px;height:10px;border-radius:999px;box-shadow:0 0 0 3px #ffffff0f}.part-item[data-loaded=false]{opacity:.54}.loading-badge{position:absolute;right:20px;top:20px;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#070b12c7;color:#edf3fbe6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:13px;line-height:1.45;box-shadow:0 16px 48px #00000047}.loading-badge.error{display:block;border-color:#ff6b6b80;background:#380d12db;color:#ffd7d7;max-width:min(520px,calc(100vw - 40px));white-space:pre-wrap}@media (max-width: 720px){.hud{top:12px;left:12px;width:min(340px,calc(100vw - 24px));max-height:calc(100vh - 84px);padding:14px}.hud-toggle{top:12px;left:12px;z-index:25;min-width:68px;height:42px}.viewer-shell:not(.hud-collapsed) .hud-toggle{left:auto;right:12px}.viewer-shell.hud-collapsed .hud-toggle{left:12px}.loading-badge{top:auto;right:12px;bottom:12px;max-width:calc(100vw - 104px);padding:10px 12px}.asset-dock{top:auto;right:12px;bottom:12px;left:12px;width:auto;max-height:32vh}.parts-list,.asset-list{max-height:32vh}}
