.viewer-shell[data-v-1aca8deb]{width:100%;min-height:100%;background:linear-gradient(180deg,#ffffff8c,#fff0),#e9eef4}.stage[data-v-1aca8deb]{position:relative;width:100vw;height:100vh;overflow:hidden}.stage[data-v-1aca8deb] canvas{display:block;width:100%;height:100%}.topbar[data-v-1aca8deb]{position:absolute;z-index:2;top:20px;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:none}.title[data-v-1aca8deb],.actions[data-v-1aca8deb]{display:inline-flex;align-items:center;min-height:44px;border:1px solid rgba(108,125,143,.28);border-radius:8px;background:#f8fafcd1;box-shadow:0 12px 30px #2533421f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto}.title[data-v-1aca8deb]{gap:10px;max-width:min(420px,58vw);padding:0 16px;color:#18232f;font-size:15px;font-weight:700}.title span[data-v-1aca8deb]:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-dot[data-v-1aca8deb]{width:9px;height:9px;flex:0 0 auto;border-radius:999px;background:#d18a25;box-shadow:0 0 0 4px #d18a2529}.status-dot.ready[data-v-1aca8deb]{background:#1f9d6a;box-shadow:0 0 0 4px #1f9d6a29}.actions[data-v-1aca8deb]{padding:4px;gap:4px}.actions button[data-v-1aca8deb],.environment-picker select[data-v-1aca8deb],.settings-head button[data-v-1aca8deb]{display:grid;min-width:52px;height:36px;padding:0 12px;place-items:center;border:0;border-radius:6px;color:#263442;background:transparent;cursor:pointer;font-size:14px;font-weight:700;line-height:1;white-space:nowrap}.environment-picker[data-v-1aca8deb]{display:inline-flex;align-items:center;gap:6px;height:36px;padding-left:10px;border-radius:6px;color:#526273;font-size:13px;font-weight:700;white-space:nowrap}.environment-picker select[data-v-1aca8deb]{min-width:92px;max-width:118px;padding:0 26px 0 8px;outline:none;appearance:auto}.actions button[data-v-1aca8deb]:hover,.actions button.active[data-v-1aca8deb]{color:#fff;background:#315c74}.environment-picker[data-v-1aca8deb]:hover,.environment-picker[data-v-1aca8deb]:focus-within{background:#315c741f}.settings-panel[data-v-1aca8deb]{position:absolute;z-index:2;top:76px;right:20px;width:min(360px,calc(100vw - 40px));max-height:calc(100vh - 110px);overflow:auto;border:1px solid rgba(108,125,143,.28);border-radius:8px;background:#f8fafce6;box-shadow:0 16px 34px #25334224;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.color-switcher[data-v-1aca8deb]{position:absolute;z-index:2;top:50%;left:20px;display:grid;gap:14px;transform:translateY(-50%)}.color-switcher button[data-v-1aca8deb]{display:grid;width:42px;height:42px;place-items:center;border:2px solid rgba(255,255,255,.94);border-radius:999px;background:#fff3;box-shadow:0 8px 18px #2533422e,inset 0 0 0 1px #315c741f;cursor:pointer}.color-switcher button[data-v-1aca8deb]:hover,.color-switcher button.active[data-v-1aca8deb]{border-color:#fff;box-shadow:0 10px 22px #2533423d,0 0 0 3px #315c7433}.color-switcher span[data-v-1aca8deb]{width:24px;height:24px;border-radius:999px;box-shadow:inset 0 1px 3px #ffffff52}.settings-head[data-v-1aca8deb]{position:sticky;z-index:1;top:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid rgba(108,125,143,.18);background:#f8fafceb}.settings-head strong[data-v-1aca8deb]{color:#18232f;font-size:14px}.settings-head button[data-v-1aca8deb]{min-width:76px;height:32px;padding:0 10px;color:#fff;background:#315c74;font-size:13px}.settings-group[data-v-1aca8deb]{display:grid;gap:8px;padding:12px;border-bottom:1px solid rgba(108,125,143,.14)}.settings-group[data-v-1aca8deb]:last-child{border-bottom:0}.settings-group>span[data-v-1aca8deb]{color:#526273;font-size:12px;font-weight:800}.setting-row[data-v-1aca8deb]{display:grid;grid-template-columns:44px minmax(110px,1fr) 42px;align-items:center;gap:10px}.setting-row em[data-v-1aca8deb]{color:#263442;font-size:12px;font-style:normal;font-weight:700}.setting-row input[data-v-1aca8deb]{width:100%;accent-color:#315c74}.setting-row output[data-v-1aca8deb]{color:#526273;font-size:12px;font-variant-numeric:tabular-nums;text-align:right}.loader[data-v-1aca8deb],.error-panel[data-v-1aca8deb]{position:absolute;z-index:2;left:50%;bottom:42px;width:min(360px,calc(100vw - 40px));transform:translate(-50%);border:1px solid rgba(108,125,143,.28);border-radius:8px;background:#f8fafce0;box-shadow:0 12px 30px #2533421f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.loader[data-v-1aca8deb]{padding:14px 16px}.meter[data-v-1aca8deb]{height:7px;overflow:hidden;border-radius:999px;background:#6c7d8f38}.meter span[data-v-1aca8deb]{display:block;height:100%;border-radius:inherit;background:#315c74;transition:width .16s ease}.loader p[data-v-1aca8deb]{margin:8px 0 0;color:#526273;font-size:13px}.error-panel[data-v-1aca8deb]{display:grid;gap:6px;padding:16px;color:#7c2d12}.error-panel span[data-v-1aca8deb]{color:#9a3412;font-size:13px;word-break:break-word}@media(max-width:640px){.topbar[data-v-1aca8deb]{top:12px;left:12px;right:12px}.title[data-v-1aca8deb]{max-width:calc(100vw - 228px);padding:0 12px;font-size:14px}.actions button[data-v-1aca8deb],.environment-picker select[data-v-1aca8deb],.settings-head button[data-v-1aca8deb]{min-width:42px;height:34px;padding:0 8px}.environment-picker[data-v-1aca8deb]{height:34px;gap:0;padding-left:0;font-size:12px}.environment-picker span[data-v-1aca8deb]{display:none}.environment-picker select[data-v-1aca8deb]{min-width:72px;max-width:72px;padding:0 20px 0 6px}.settings-panel[data-v-1aca8deb]{top:68px;right:12px;width:calc(100vw - 24px);max-height:min(560px,calc(100vh - 88px))}.color-switcher[data-v-1aca8deb]{left:12px;gap:10px}.color-switcher button[data-v-1aca8deb]{width:38px;height:38px}.color-switcher span[data-v-1aca8deb]{width:22px;height:22px}.setting-row[data-v-1aca8deb]{grid-template-columns:42px minmax(90px,1fr) 40px;gap:8px}}:root{color:#17202a;background:#e9eef4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}button,input{font:inherit}
