.workspace-tabs-shell[data-v-9d9554bb]{border-bottom:1px solid color-mix(in srgb, var(--line) 72%, transparent);scrollbar-width:thin;gap:.35rem;padding:.5rem 1.25rem;display:flex;overflow-x:auto}.workspace-tabs-shell__tab[data-v-9d9554bb]{border:1px solid var(--line);background:var(--panel);min-width:7.5rem;max-width:13rem;color:var(--text);text-align:left;font:inherit;cursor:pointer;border-radius:.65rem;flex:1 0 auto;align-items:center;gap:.45rem;padding:.55rem .7rem;transition:border-color .14s,transform .14s,background .14s;display:flex}.workspace-tabs-shell__tab[data-v-9d9554bb]:hover{border-color:color-mix(in srgb, var(--accent) 34%, var(--line));transform:translateY(-1px)}.workspace-tabs-shell__tab.is-active[data-v-9d9554bb]{border-color:color-mix(in srgb, var(--accent) 48%, var(--line));background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 16%, var(--panel)), var(--panel));box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 10%, transparent)}.workspace-tabs-shell__tab span[data-v-9d9554bb]{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.7rem}.workspace-tabs-shell__tab strong[data-v-9d9554bb]{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:.82rem;line-height:1.1;overflow:hidden}.workspace-tabs-shell__tab small[data-v-9d9554bb]{display:none}@media (width<=820px){.workspace-tabs-shell[data-v-9d9554bb]{padding-inline:.75rem}.workspace-tabs-shell__tab[data-v-9d9554bb]{min-width:6.75rem}}.workspace-topbar[data-v-eeeb3d95]{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--panel) 82%, var(--bg) 18%);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:20;justify-content:space-between;align-items:center;gap:1rem;min-height:3.75rem;padding:.65rem 1.25rem;display:flex;position:sticky;top:0}.workspace-topbar__brand[data-v-eeeb3d95]{align-items:baseline;gap:.75rem;min-width:0;display:flex}.workspace-topbar__brand h1[data-v-eeeb3d95]{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:clamp(1.05rem,1.35vw,1.35rem);line-height:1.1;overflow:hidden}.workspace-topbar__eyebrow[data-v-eeeb3d95]{color:var(--muted);text-transform:uppercase;letter-spacing:.14em;white-space:nowrap;margin:0;font-size:.66rem;font-weight:700}.workspace-topbar__actions[data-v-eeeb3d95]{justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.workspace-topbar__button[data-v-eeeb3d95]{border:1px solid var(--line);background:var(--panel);min-width:0;color:var(--text);font:inherit;cursor:pointer;text-align:left;border-radius:.65rem;align-items:baseline;gap:.4rem;padding:.45rem .65rem;display:inline-flex;box-shadow:inset 0 1px #ffffff6b}.workspace-topbar__button span[data-v-eeeb3d95]{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.66rem}.workspace-topbar__button strong[data-v-eeeb3d95]{font-size:.82rem;line-height:1.15}@media (width<=820px){.workspace-topbar__brand[data-v-eeeb3d95]{gap:.1rem;display:grid}.workspace-topbar__eyebrow[data-v-eeeb3d95]{display:none}.workspace-topbar__button[data-v-eeeb3d95]{justify-content:center;min-width:2.5rem}.workspace-topbar__button strong[data-v-eeeb3d95]{display:none}}.app-shell[data-v-61e70c0d]{background:radial-gradient(circle at top, color-mix(in srgb, var(--accent) 18%, transparent), transparent 32%), linear-gradient(180deg, color-mix(in srgb, var(--bg) 74%, black 26%) 0%, color-mix(in srgb, var(--bg) 86%, black 14%) 18%, var(--bg) 100%);min-height:100vh;color:var(--text)}.app-shell__content[data-v-61e70c0d]{min-height:calc(100vh - 88px)}.ai-job-context-modal[data-v-95165a86]{z-index:1000;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.ai-job-context-modal__backdrop[data-v-95165a86]{background:#00000094;position:absolute;inset:0}.ai-job-context-modal__panel[data-v-95165a86]{z-index:1;border:1px solid var(--line);background:var(--panel);width:min(980px,100%);max-height:calc(100dvh - 2rem);box-shadow:var(--shadow);border-radius:1rem;gap:1rem;padding:1rem;display:grid;position:relative;overflow:auto}.ai-job-context-modal__header[data-v-95165a86]{justify-content:space-between;align-items:start;gap:1rem;display:flex}.ai-job-context-modal__header h3[data-v-95165a86],.ai-job-context-modal__section h4[data-v-95165a86]{margin:0}.ai-job-context-modal__header small[data-v-95165a86]{color:var(--muted)}.ai-job-context-modal__header button[data-v-95165a86]{border:1px solid var(--line);background:var(--panel-strong);min-height:2.25rem;color:var(--text);cursor:pointer;border-radius:999px;padding:0 .9rem}.ai-job-context-modal__body[data-v-95165a86],.ai-job-context-modal__section[data-v-95165a86],.ai-job-context-modal__context-list[data-v-95165a86]{gap:.75rem;display:grid}.ai-job-context-modal__facts[data-v-95165a86]{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem;display:grid}.ai-job-context-modal__facts div[data-v-95165a86]{border:1px solid var(--line);background:var(--panel-strong);border-radius:.8rem;gap:.2rem;padding:.75rem;display:grid}.ai-job-context-modal__facts span[data-v-95165a86],.ai-job-context-modal__section ul[data-v-95165a86],.ai-job-context-modal__section pre[data-v-95165a86],.ai-job-context-modal__empty[data-v-95165a86]{color:var(--muted)}.ai-job-context-modal__facts span[data-v-95165a86]{text-transform:uppercase;font-size:.76rem;font-weight:780}.ai-job-context-modal__section ul[data-v-95165a86]{margin:0;padding-left:1.2rem}.ai-job-context-modal__section pre[data-v-95165a86]{border:1px solid var(--line);background:var(--panel-strong);white-space:pre-wrap;word-break:break-word;border-radius:.8rem;margin:0;padding:.9rem;font:.78rem/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.ai-control-panel[data-v-07acef76]{padding:.85rem 1.25rem 1rem}.ai-control-panel__panel[data-v-07acef76]{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel), color-mix(in srgb, var(--panel) 86%, var(--panel-strong)));box-shadow:var(--shadow);border-radius:1.4rem;gap:1rem;padding:1rem;display:grid}.ai-control-panel__layout[data-v-07acef76]{grid-template-columns:minmax(0,.96fr) minmax(22rem,.84fr);align-items:start;gap:1rem;display:grid}.ai-control-panel__variants-head[data-v-07acef76],.ai-control-panel__preset-head[data-v-07acef76]{justify-content:space-between;gap:.75rem;display:flex}.ai-control-panel__variants-head[data-v-07acef76]{align-items:start}.ai-control-panel__stage-head[data-v-07acef76]{justify-content:flex-start;align-items:start;gap:.7rem;display:flex}.ai-control-panel__stage-head>div[data-v-07acef76]{gap:.15rem;min-width:0;display:grid}.ai-control-panel__status-head[data-v-07acef76],.ai-control-panel__progress-copy[data-v-07acef76]{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.ai-control-panel__status-head>div[data-v-07acef76]{gap:.15rem;display:grid}.ai-control-panel__status-action[data-v-07acef76]{border:1px solid color-mix(in srgb, var(--accent) 44%, var(--line));background:color-mix(in srgb, var(--accent) 9%, var(--panel));min-height:2rem;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:0 .85rem;font-size:.82rem;font-weight:720}.ai-control-panel__status-box.is-processing[data-v-07acef76]{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 24%, var(--line)), 0 0 0 1px color-mix(in srgb, var(--accent) 10%, transparent);position:relative;overflow:hidden}.ai-control-panel__status-box.is-processing[data-v-07acef76]:before{content:"";background:radial-gradient(circle at 14% 18%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 32%), linear-gradient(180deg, color-mix(in srgb, var(--accent) 8%, transparent), transparent 62%);opacity:.95;pointer-events:none;animation:2.2s ease-in-out infinite aiStatusGlow-07acef76;position:absolute;inset:0}.ai-control-panel__status-box.is-processing[data-v-07acef76]:after{content:"";background:linear-gradient(105deg, transparent 0 30%, color-mix(in srgb, var(--accent) 20%, #ffffff3d) 50%, transparent 70%);pointer-events:none;animation:2.4s linear infinite aiStatusSweep-07acef76;position:absolute;inset:0;transform:translate(-120%)}.ai-control-panel__progress-copy span[data-v-07acef76],.ai-control-panel__switch-hint[data-v-07acef76]{color:var(--muted);font-size:.82rem}.ai-control-panel__progress-copy strong[data-v-07acef76]{color:var(--text);font-size:.9rem}.ai-control-panel__progress-bar[data-v-07acef76]{background:var(--panel-strong);border-radius:999px;height:.55rem;overflow:hidden}.ai-control-panel__progress-bar i[data-v-07acef76]{border-radius:inherit;background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 80%, white), var(--accent));height:100%;transition:width .24s;display:block}.ai-control-panel__progress-bar.is-processing i[data-v-07acef76]{position:relative;overflow:hidden}.ai-control-panel__progress-bar.is-processing i[data-v-07acef76]:after{content:"";background:repeating-linear-gradient(120deg,#ffffff1f 0 12px,#0000 12px 24px);animation:1.1s linear infinite aiStatusStripes-07acef76;position:absolute;inset:0}.ai-control-panel__alive[data-v-07acef76]{align-items:center;gap:.35rem;display:inline-flex}.ai-control-panel__alive span[data-v-07acef76]{background:color-mix(in srgb, var(--accent) 80%, white);border-radius:999px;width:.42rem;height:.42rem;animation:1.1s ease-in-out infinite aiStatusPulse-07acef76}.ai-control-panel__alive span[data-v-07acef76]:nth-child(2){animation-delay:.18s}.ai-control-panel__alive span[data-v-07acef76]:nth-child(3){animation-delay:.36s}@keyframes aiStatusPulse-07acef76{0%,to{opacity:.35;transform:translateY(0)scale(.8)}50%{opacity:1;transform:translateY(-2px)scale(1)}}@keyframes aiStatusGlow-07acef76{0%,to{opacity:.72}50%{opacity:1}}@keyframes aiStatusStripes-07acef76{0%{transform:translate(0)}to{transform:translate(24px)}}@keyframes aiStatusSweep-07acef76{0%{transform:translate(-120%)}to{transform:translate(120%)}}.ai-control-panel__stage[data-v-07acef76]{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 92%, var(--panel-strong));border-radius:1rem;gap:.8rem;padding:.95rem;display:grid}.ai-control-panel__stage-index[data-v-07acef76]{background:color-mix(in srgb, var(--accent) 14%, var(--panel-strong));width:1.7rem;height:1.7rem;color:var(--accent);border-radius:999px;flex:none;place-items:center;font-size:.82rem;font-weight:800;display:inline-grid}.ai-control-panel__source span[data-v-07acef76],.ai-control-panel__source small[data-v-07acef76],.ai-control-panel__status-box small[data-v-07acef76],.ai-control-panel__job-meta span[data-v-07acef76],.ai-control-panel__preset span[data-v-07acef76],.ai-control-panel__preset p[data-v-07acef76],.ai-control-panel__preset small[data-v-07acef76],.ai-control-panel__empty[data-v-07acef76],.ai-control-panel__stage-head small[data-v-07acef76],.ai-control-panel__variants-head small[data-v-07acef76]{color:var(--muted)}.ai-control-panel__source strong[data-v-07acef76],.ai-control-panel__source small[data-v-07acef76],.ai-control-panel__preset strong[data-v-07acef76],.ai-control-panel__preset p[data-v-07acef76],.ai-control-panel__preset small[data-v-07acef76]{margin:0}.ai-control-panel__source[data-v-07acef76],.ai-control-panel__status-box[data-v-07acef76]{border:1px solid var(--line);background:var(--panel-strong);border-radius:1rem;gap:.8rem;padding:.9rem;display:grid}.ai-control-panel__job-meta[data-v-07acef76]{flex-wrap:wrap;gap:.35rem .75rem;display:flex}.ai-control-panel__source[data-v-07acef76]{grid-template-columns:8.25rem minmax(0,1fr);align-items:center}.ai-control-panel__source-preview[data-v-07acef76]{border:1px solid color-mix(in srgb, var(--accent) 16%, var(--line));background:var(--panel);border-radius:.95rem;min-height:7rem;overflow:hidden}.ai-control-panel__source-preview img[data-v-07acef76],.ai-control-panel__source-placeholder[data-v-07acef76]{width:100%;height:100%;min-height:7rem}.ai-control-panel__source-preview img[data-v-07acef76]{object-fit:cover;display:block}.ai-control-panel__source-placeholder[data-v-07acef76]{background:radial-gradient(circle at top, color-mix(in srgb, var(--accent) 16%, transparent), transparent 48%), linear-gradient(180deg, color-mix(in srgb, var(--panel-strong) 86%, white), var(--panel));align-content:center;place-items:center;gap:.35rem;padding:.8rem;display:grid}.ai-control-panel__source-placeholder strong[data-v-07acef76]{color:var(--accent);margin:0;font-size:1.45rem}.ai-control-panel__source-copy[data-v-07acef76]{gap:.2rem;display:grid}.ai-control-panel__source-copy strong[data-v-07acef76]{font-size:1.02rem}.ai-control-panel__settings[data-v-07acef76]{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.ai-control-panel__settings label[data-v-07acef76]{gap:.35rem;display:grid}.ai-control-panel__settings select[data-v-07acef76]{border:1px solid var(--line);background:var(--panel);color:var(--text);font:inherit;border-radius:.85rem;padding:.65rem .8rem}.ai-control-panel__actions[data-v-07acef76]{flex-wrap:wrap;gap:.55rem;display:flex}.ai-control-panel__primary[data-v-07acef76],.ai-control-panel__secondary[data-v-07acef76]{font:inherit;cursor:pointer;border-radius:.85rem;padding:.72rem .9rem;font-weight:650}.ai-control-panel__primary[data-v-07acef76]{color:#fff;background:linear-gradient(135deg,#0ca18f,#0a7369);border:0;font-weight:700}.ai-control-panel__secondary[data-v-07acef76]{border:1px solid var(--line);background:var(--panel);color:var(--text)}.ai-control-panel__primary[data-v-07acef76]:disabled,.ai-control-panel__secondary[data-v-07acef76]:disabled{opacity:.65;cursor:not-allowed}.ai-control-panel__warning[data-v-07acef76]{color:#ffd9c0;background:#74311147;border:1px solid #ffac6257;border-radius:.95rem;margin:0;padding:.85rem .95rem}.ai-control-panel__presets[data-v-07acef76]{gap:.55rem;max-height:32rem;padding-right:.2rem;display:grid;overflow:auto}.ai-control-panel__preset[data-v-07acef76]{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 92%, var(--panel-strong));color:var(--text);text-align:left;font:inherit;cursor:pointer;border-radius:1rem;gap:.16rem;padding:.8rem .9rem;transition:border-color .18s,background .18s,transform .18s;display:grid}.ai-control-panel__preset[data-v-07acef76]:hover{border-color:color-mix(in srgb, var(--accent) 30%, var(--line));transform:translateY(-1px)}.ai-control-panel__preset.is-selected[data-v-07acef76]{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 10%, var(--panel-strong)), color-mix(in srgb, var(--accent) 5%, var(--panel)))}.ai-control-panel__preset p[data-v-07acef76],.ai-control-panel__preset small[data-v-07acef76]{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ai-control-panel__summary-grid[data-v-07acef76]{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.ai-control-panel__summary-grid div[data-v-07acef76]{border:1px solid var(--line);background:var(--panel-strong);border-radius:.95rem;gap:.2rem;padding:.72rem .8rem;display:grid}.ai-control-panel__summary-grid span[data-v-07acef76],.ai-control-panel__variant-chip span[data-v-07acef76]{color:var(--muted)}.ai-control-panel__variants[data-v-07acef76]{gap:.6rem;display:grid}.ai-control-panel__variant-list[data-v-07acef76]{flex-wrap:wrap;gap:.55rem;display:flex}.ai-control-panel__variant-chip[data-v-07acef76]{border:1px solid var(--line);background:var(--panel);min-width:12rem;color:var(--text);text-align:left;font:inherit;cursor:pointer;border-radius:.9rem;gap:.15rem;padding:.72rem .8rem;display:grid}.ai-control-panel__variant-chip.is-active[data-v-07acef76]{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));background:color-mix(in srgb, var(--accent) 10%, var(--panel))}@media (width<=980px){.ai-control-panel__source[data-v-07acef76]{grid-template-columns:1fr}}@media (width<=1120px){.ai-control-panel__layout[data-v-07acef76]{grid-template-columns:1fr}}@media (width<=820px){.ai-control-panel[data-v-07acef76]{padding:0 .75rem .75rem}.ai-control-panel__settings[data-v-07acef76],.ai-control-panel__summary-grid[data-v-07acef76]{grid-template-columns:1fr}.ai-control-panel__stage-head[data-v-07acef76],.ai-control-panel__variants-head[data-v-07acef76]{flex-direction:column}}.ai-compare-viewer[data-v-740949b7]{gap:.75rem;display:grid}.ai-compare-viewer__toolbar[data-v-740949b7]{justify-content:flex-end;display:flex}.ai-compare-viewer__link[data-v-740949b7]{border:1px solid var(--line);background:var(--panel);min-height:2rem;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:0 .8rem;font-size:.82rem;font-weight:700}.compare-fullscreen-bar button[data-v-740949b7]{width:2.4rem;min-width:2.4rem;padding:0;font-size:1.25rem;line-height:1}.ai-review-panel[data-v-5b124846]{padding:.25rem 1.25rem 1rem}.ai-review-panel__layout[data-v-5b124846]{grid-template-columns:1fr;gap:1rem;display:grid}@media (width<=820px){.ai-review-panel[data-v-5b124846]{padding:0 .75rem .75rem}}.ai-review-panel__history-head[data-v-5b124846]{justify-content:space-between;gap:.75rem;display:flex}.ai-review-panel__history-head small[data-v-5b124846]{color:var(--muted)}.ai-review-panel__image-preview[data-v-5b124846]{place-items:center;padding:1rem;display:grid}.ai-review-panel__image-preview img[data-v-5b124846]{border-radius:1rem;max-width:min(100%,1400px);max-height:calc(100dvh - 7rem);box-shadow:0 24px 80px #00000057}.compare-panel[data-v-5b124846]{align-content:start;gap:1rem;display:grid}.compare-result-card[data-v-5b124846]{margin-top:.1rem}.compare-notes[data-v-5b124846]{margin-top:-.15rem}.variant-list.variant-list--review[data-v-5b124846]{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));grid-auto-flow:row;gap:.85rem;padding-top:1rem;padding-bottom:0;overflow:visible}.variant-list.variant-list--review .variant-card[data-v-5b124846]{grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:.85rem;min-height:0;padding:.85rem}.variant-list.variant-list--review .variant-card-actions[data-v-5b124846]{justify-content:end;align-self:stretch;gap:.55rem;min-width:168px}.variant-card-preview[data-v-5b124846]{border:1px solid var(--line);background:var(--panel);border-radius:.9rem;width:88px;height:88px;overflow:hidden}.variant-card-preview img[data-v-5b124846]{object-fit:cover;width:100%;height:100%;display:block}.variant-card-meta[data-v-5b124846]{gap:.28rem;min-width:0;display:grid}.variant-card--review strong[data-v-5b124846]{font-size:.94rem;line-height:1.2}.variant-card--review span[data-v-5b124846]{font-size:.8rem}.variant-card-badges[data-v-5b124846]{flex-wrap:wrap;gap:.45rem;margin-top:.1rem;display:flex}.variant-card-badges small[data-v-5b124846]{border:1px solid var(--line);background:color-mix(in srgb, var(--accent-soft) 36%, var(--panel));color:var(--muted);border-radius:999px;padding:.22rem .55rem;font-size:.72rem;font-weight:760}.variant-card--review .variant-card-actions button[data-v-5b124846]{flex:1 1 0;min-height:32px;padding-inline:.78rem;font-size:.78rem}.variant-card--review .variant-card-actions[data-v-5b124846]{flex-direction:row}@media (width<=880px){.variant-list.variant-list--review[data-v-5b124846]{grid-template-columns:1fr}.variant-list.variant-list--review .variant-card[data-v-5b124846]{grid-template-columns:72px minmax(0,1fr)}.variant-list.variant-list--review .variant-card-actions[data-v-5b124846]{grid-column:1/-1;min-width:0}.variant-card-preview[data-v-5b124846]{width:72px;height:72px}}.asset-browser-panel[data-v-e20849d6]{padding:1.2rem 1.25rem 1rem}.asset-browser-panel__panel[data-v-e20849d6]{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel), color-mix(in srgb, var(--panel) 86%, var(--panel-strong)));box-shadow:var(--shadow);border-radius:1.4rem;gap:1rem;padding:1.2rem;display:grid}.asset-browser-panel__group-head[data-v-e20849d6]{justify-content:space-between;align-items:end;gap:1rem;display:flex}.asset-browser-panel__toolbar p[data-v-e20849d6],.asset-browser-panel__copy span[data-v-e20849d6],.asset-browser-panel__copy small[data-v-e20849d6],.asset-browser-panel__empty[data-v-e20849d6]{color:var(--muted)}.asset-browser-panel__toolbar p[data-v-e20849d6],.asset-browser-panel__group-head strong[data-v-e20849d6],.asset-browser-panel__group-head span[data-v-e20849d6],.asset-browser-panel__copy strong[data-v-e20849d6],.asset-browser-panel__copy span[data-v-e20849d6],.asset-browser-panel__copy small[data-v-e20849d6]{margin:0}.asset-browser-panel__toolbar[data-v-e20849d6]{justify-content:space-between;align-items:center;gap:1rem;display:flex}.asset-browser-panel__upload[data-v-e20849d6]{border:1px solid var(--line);background:var(--panel-strong);color:var(--text);cursor:pointer;border-radius:1rem;gap:.15rem;padding:.9rem 1rem;display:grid}.asset-browser-panel__upload input[data-v-e20849d6]{display:none}.asset-browser-panel__groups[data-v-e20849d6]{gap:1rem;display:grid}.asset-browser-panel__group[data-v-e20849d6]{gap:.75rem;display:grid}.asset-browser-panel__grid[data-v-e20849d6]{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));align-items:stretch;gap:.75rem;display:grid}.asset-browser-panel__grid--documents[data-v-e20849d6]{grid-template-columns:1fr}.asset-browser-panel__card[data-v-e20849d6]{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 92%, var(--panel-strong));min-width:0;height:100%;color:var(--text);text-align:left;font:inherit;cursor:pointer;border-radius:1rem;grid-template-rows:auto minmax(0,1fr);gap:.75rem;padding:.8rem;transition:border-color .18s,background .18s,transform .18s,box-shadow .18s;display:grid}.asset-browser-panel__card[data-v-e20849d6]:hover{border-color:color-mix(in srgb, var(--accent) 34%, var(--line));box-shadow:0 12px 28px color-mix(in srgb, var(--accent) 8%, transparent);transform:translateY(-1px)}.asset-browser-panel__card.is-selected[data-v-e20849d6]{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 10%, var(--panel-strong)), color-mix(in srgb, var(--accent) 5%, var(--panel)));box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 18%, transparent)}.asset-browser-panel__card--document[data-v-e20849d6]{grid-template-rows:none;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.9rem;min-height:0}.asset-browser-panel__preview[data-v-e20849d6]{aspect-ratio:4/3;border:1px solid color-mix(in srgb, var(--accent) 12%, var(--line));background:var(--panel-strong);border-radius:.85rem;place-items:center;width:100%;min-height:9rem;display:grid;overflow:hidden}.asset-browser-panel__document-icon[data-v-e20849d6]{border:1px solid color-mix(in srgb, var(--accent) 12%, var(--line));background:radial-gradient(circle at top, color-mix(in srgb, var(--accent) 10%, transparent), transparent 48%), linear-gradient(180deg, color-mix(in srgb, var(--panel-strong) 84%, white), var(--panel));border-radius:.85rem;flex:none;place-items:center;width:4.25rem;height:4.25rem;display:grid}.asset-browser-panel__document-icon strong[data-v-e20849d6]{letter-spacing:.04em;color:color-mix(in srgb, #b85b00 82%, var(--text));margin:0;font-size:1.25rem;line-height:1}.asset-browser-panel__preview img[data-v-e20849d6]{object-fit:cover;width:100%;height:100%}.asset-browser-panel__placeholder[data-v-e20849d6]{text-align:center;width:100%;min-height:9rem;color:var(--text);background:radial-gradient(circle at top, color-mix(in srgb, var(--accent) 14%, transparent), transparent 48%), linear-gradient(180deg, color-mix(in srgb, var(--panel-strong) 84%, white), var(--panel));align-content:center;place-items:center;gap:.4rem;padding:1rem;display:grid}.asset-browser-panel__placeholder strong[data-v-e20849d6]{letter-spacing:.04em;margin:0;font-size:1.55rem;line-height:1}.asset-browser-panel__placeholder span[data-v-e20849d6]{color:var(--muted);font-size:.88rem;font-weight:600}.asset-browser-panel__placeholder.is-panorama strong[data-v-e20849d6]{color:var(--accent)}.asset-browser-panel__placeholder.is-document strong[data-v-e20849d6]{color:color-mix(in srgb, #b85b00 82%, var(--text))}.asset-browser-panel__copy[data-v-e20849d6]{align-content:start;gap:.15rem;min-width:0;display:grid}.asset-browser-panel__copy strong[data-v-e20849d6]{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;display:block;overflow:hidden}.asset-browser-panel__copy span[data-v-e20849d6],.asset-browser-panel__copy small[data-v-e20849d6]{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;display:block;overflow:hidden}.asset-browser-panel__success[data-v-e20849d6],.asset-browser-panel__warning[data-v-e20849d6]{border-radius:.95rem;margin:0;padding:.85rem .95rem}.asset-browser-panel__success[data-v-e20849d6]{color:#c7f2db;background:#104d354d;border:1px solid #29bf8547}.asset-browser-panel__warning[data-v-e20849d6]{color:#ffd9c0;background:#74311147;border:1px solid #ffac6257}@media (width<=820px){.asset-browser-panel[data-v-e20849d6]{padding:.75rem}.asset-browser-panel__toolbar[data-v-e20849d6]{flex-direction:column;align-items:stretch}}.viewer-panel[data-v-a7a535c8]{padding:.85rem 1.25rem 1rem}@media (width<=820px){.viewer-panel[data-v-a7a535c8]{padding:0 .75rem .75rem}}.model-generated-material-modal[data-v-a5b8781e],.model-texture-diagnostics-modal[data-v-a5b8781e]{z-index:1200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080c0ab8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.model-generated-material-panel[data-v-a5b8781e],.model-texture-diagnostics-panel[data-v-a5b8781e]{background:#202622;border:1px solid #98cbbb2e;border-radius:1.25rem;width:min(68rem,100vw - 2rem);max-height:calc(100dvh - 2rem);overflow:auto;box-shadow:0 1.25rem 4rem #00000061}.model-generated-material-panel[data-v-a5b8781e]{grid-template-rows:auto auto;gap:.75rem;width:min(94rem,100vw - 1.5rem);max-height:calc(100dvh - 1.5rem);padding:.85rem 1rem 1rem;display:grid;overflow:auto}.model-generated-material-title[data-v-a5b8781e],.model-texture-diagnostics-title[data-v-a5b8781e]{z-index:2;background:linear-gradient(#202622 78%,#20262200);justify-content:space-between;align-items:center;gap:.8rem;padding-bottom:.25rem;display:flex;position:sticky;top:0}.model-generated-material-title-actions[data-v-a5b8781e]{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:.5rem;display:flex}.model-generated-material-layout[data-v-a5b8781e]{grid-template-columns:minmax(0,1fr);grid-template-areas:"editor""variants";align-items:start;gap:.8rem;display:grid}.model-generated-material-main[data-v-a5b8781e],.model-generated-material-sidebar[data-v-a5b8781e]{min-width:0;min-height:auto}.model-generated-material-main[data-v-a5b8781e]{grid-area:variants}.model-generated-material-sidebar[data-v-a5b8781e]{background:#ffffff06;border:1px solid #98cbbb24;border-radius:.95rem;grid-area:editor;grid-template-columns:minmax(12rem,16rem) minmax(0,1fr);align-content:start;align-items:start;gap:.65rem .8rem;padding:.75rem;display:grid}.model-generated-material-sidebar[data-v-a5b8781e]>:not(.model-generated-material-preview){grid-column:1/-1}.model-generated-material-sidebar>.model-generated-material-field[data-v-a5b8781e]:first-child{grid-column:1;align-self:start}.model-generated-material-sidebar>.model-generated-material-preview[data-v-a5b8781e]{grid-column:2;align-self:start}.model-generated-material-heading[data-v-a5b8781e],.model-generated-material-preview-copy[data-v-a5b8781e],.model-generated-material-field[data-v-a5b8781e],.model-generated-material-variants[data-v-a5b8781e],.model-generated-material-progress[data-v-a5b8781e]{gap:.3rem;display:grid}.model-generated-material-field[data-v-a5b8781e]{align-content:start;min-width:0}.model-generated-material-heading span[data-v-a5b8781e],.model-generated-material-field span[data-v-a5b8781e],.model-generated-material-variants>span[data-v-a5b8781e]{color:#e5ece7c7;letter-spacing:.03em;text-transform:uppercase;font-size:.74rem;font-weight:800}.model-generated-material-heading strong[data-v-a5b8781e]{font-size:clamp(1.05rem,1.5vw,1.55rem);line-height:1.08}.model-generated-material-heading small[data-v-a5b8781e],.model-generated-material-preview-copy small[data-v-a5b8781e]{color:#e5ece7c7;font-size:.92rem;line-height:1.32}.model-generated-material-targets[data-v-a5b8781e]{gap:.35rem;margin-top:.2rem;display:grid}.model-generated-material-targets>div[data-v-a5b8781e]{flex-wrap:wrap;gap:.3rem;display:flex}.model-generated-material-targets button[data-v-a5b8781e]{min-height:1.8rem;color:inherit;font:inherit;background:#78d6c614;border:1px solid #78d6c638;border-radius:999px;padding:.25rem .5rem;font-size:.72rem}.model-generated-material-field select[data-v-a5b8781e],.model-generated-material-field input[data-v-a5b8781e],.model-generated-material-field textarea[data-v-a5b8781e]{width:100%;color:inherit;font:inherit;background:#ffffff0d;border:1px solid #98cbbb2e;border-radius:.9rem}.model-generated-material-field select[data-v-a5b8781e],.model-generated-material-field input[data-v-a5b8781e]{min-height:2.65rem;padding:.55rem .8rem}.model-generated-material-field textarea[data-v-a5b8781e]{resize:vertical;min-height:7rem;padding:.75rem .85rem;font-size:.94rem;line-height:1.35}.model-generated-material-properties[data-v-a5b8781e]{background:#ffffff06;border:1px solid #98cbbb24;border-radius:.95rem;gap:.65rem;padding:.65rem .75rem;display:grid}.model-generated-material-properties-title[data-v-a5b8781e]{flex-wrap:wrap;align-items:baseline;gap:.5rem .8rem;display:flex}.model-generated-material-properties-title strong[data-v-a5b8781e]{font-size:.9rem}.model-generated-material-properties-title small[data-v-a5b8781e]{color:#e5ece7a8;font-size:.78rem}.model-generated-material-properties-grid[data-v-a5b8781e]{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.65rem;display:grid}.model-generated-material-property[data-v-a5b8781e]{gap:.35rem;min-width:0;display:grid}.model-generated-material-property>span[data-v-a5b8781e]{color:#e5ece7c2;font-size:.72rem;font-weight:750}.model-generated-material-property select[data-v-a5b8781e],.model-generated-material-property input[type=text][data-v-a5b8781e]{width:100%;min-height:2.35rem;color:inherit;font:inherit;background:#ffffff0d;border:1px solid #98cbbb2e;border-radius:.7rem;padding:.45rem .65rem}.model-generated-material-color-control[data-v-a5b8781e]{grid-template-columns:2.75rem minmax(0,1fr);gap:.4rem;display:grid}.model-generated-material-color-control input[type=color][data-v-a5b8781e]{cursor:pointer;background:#ffffff0d;border:1px solid #98cbbb33;border-radius:.7rem;width:2.75rem;height:2.35rem;padding:.15rem}.model-generated-material-property.is-range>span[data-v-a5b8781e]{justify-content:space-between;display:flex}.model-generated-material-property output[data-v-a5b8781e]{color:#78d6c6;font-variant-numeric:tabular-nums}.model-generated-material-property input[type=range][data-v-a5b8781e]{accent-color:#67d7c1;width:100%;min-height:2.35rem}.model-generated-material-surface-preview[data-v-a5b8781e]{border-top:1px solid #98cbbb1f;grid-template-columns:minmax(10rem,.28fr) minmax(24rem,1fr);align-items:center;gap:.75rem;padding-top:.65rem;display:grid}.model-generated-material-surface-preview>div[data-v-a5b8781e]:first-child{gap:.2rem;display:grid}.model-generated-material-surface-preview strong[data-v-a5b8781e]{font-size:.82rem}.model-generated-material-surface-preview small[data-v-a5b8781e]{color:#e5ece7a8;font-size:.72rem}.model-generated-material-surface-preview-stage[data-v-a5b8781e]{background:#ffffff0a;border:1px solid #98cbbb2e;border-radius:.75rem;height:9.5rem;position:relative;overflow:hidden;container-type:size}.model-generated-material-surface-preview-stage.is-roof[data-v-a5b8781e]{clip-path:polygon(17% 5%,83% 5%,100% 95%,0 95%);border-radius:0;height:12.5rem}.model-generated-material-roof-preview-label[data-v-a5b8781e]{color:#e5ece7db;background:#101b17d1;border-radius:999px;padding:.25rem .45rem;font-size:.66rem;font-weight:750;position:absolute;bottom:.65rem;right:.65rem}.model-generated-material-preview[data-v-a5b8781e]{grid-template-columns:6.25rem minmax(0,1fr);align-items:start;gap:.8rem;min-width:0;display:grid}.model-generated-material-swatch[data-v-a5b8781e]{aspect-ratio:1;background:#ffffff0a;border:1px solid #98cbbb2e;border-radius:.9rem;width:100%;max-width:6.25rem;overflow:hidden}.model-generated-material-swatch img[data-v-a5b8781e]{object-fit:cover;width:100%;height:100%;display:block}.model-generated-material-preview-copy strong[data-v-a5b8781e]{font-size:1rem;line-height:1.2}.model-generated-material-preview-copy[data-v-a5b8781e]{align-content:start;min-width:0}.model-generated-material-preview-copy strong[data-v-a5b8781e],.model-generated-material-preview-copy small[data-v-a5b8781e],.model-generated-material-variant-copy strong[data-v-a5b8781e],.model-generated-material-variant-copy small[data-v-a5b8781e]{overflow-wrap:anywhere}.model-generated-material-preview-heading[data-v-a5b8781e],.model-generated-material-preview-meta[data-v-a5b8781e]{flex-wrap:wrap;align-items:center;gap:.35rem .65rem;display:flex}.model-generated-material-preview-heading[data-v-a5b8781e]{justify-content:space-between}.model-generated-material-preview-meta small[data-v-a5b8781e]{color:#e5ece7b8}.model-generated-material-preview-meta small+small[data-v-a5b8781e]:before{color:#e5ece752;content:"•";margin-right:.65rem}.model-generated-material-preview-summary[data-v-a5b8781e]{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.model-generated-material-source-status[data-v-a5b8781e]{color:#e5ece7db;border:1px solid #98cbbb29;border-radius:999px;flex:none;align-items:center;gap:.4rem;min-height:1.6rem;padding:.16rem .55rem;font-size:.76rem;font-weight:800;line-height:1;display:inline-flex}.model-generated-material-source-status i[data-v-a5b8781e]{background:#a4aea8;border-radius:50%;width:.55rem;height:.55rem;box-shadow:0 0 0 .18rem #a4aea81f}.model-generated-material-source-status.is-loaded i[data-v-a5b8781e]{background:#4fd08b;box-shadow:0 0 0 .18rem #4fd08b1f}.model-generated-material-source-status.is-missing i[data-v-a5b8781e]{background:#ef6b6b;box-shadow:0 0 0 .18rem #ef6b6b1f}.model-generated-material-source-status.is-failed i[data-v-a5b8781e]{background:#f1a64a;box-shadow:0 0 0 .18rem #f1a64a1f}.model-generated-material-source-status.is-pending i[data-v-a5b8781e]{background:#78d6c6;box-shadow:0 0 0 .18rem #78d6c61f}.model-generated-material-source-details[data-v-a5b8781e]{margin-top:.1rem}.model-generated-material-source-details summary[data-v-a5b8781e]{cursor:pointer;color:#98cbbbf2;width:fit-content;font-size:.78rem;font-weight:750}.model-generated-material-source-details>div[data-v-a5b8781e]{border-left:2px solid #98cbbb2e;gap:.18rem;margin-top:.35rem;padding:.5rem .6rem;display:grid}.model-generated-material-variants[data-v-a5b8781e]{background:#ffffff08;border:1px solid #98cbbb24;border-radius:.95rem;gap:.7rem;padding:.75rem;display:grid}.model-generated-material-progress[data-v-a5b8781e]{background:#67d7c112;border:1px solid #67d7c133;border-radius:.95rem;padding:.75rem .85rem}.model-generated-material-progress-copy strong[data-v-a5b8781e]{font-size:.98rem;line-height:1.2}.model-generated-material-progress-head[data-v-a5b8781e]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.model-generated-material-progress-head span[data-v-a5b8781e]{color:#dbf7f2f5;white-space:nowrap;background:#67d7c11f;border:1px solid #67d7c147;border-radius:999px;justify-content:center;align-items:center;min-height:1.65rem;padding:.15rem .6rem;font-size:.82rem;font-weight:800;line-height:1;display:inline-flex}.model-generated-material-progress-variant[data-v-a5b8781e]{font-size:.94rem;line-height:1.3}.model-generated-material-progress-copy small[data-v-a5b8781e]{color:#e5ece7d1;font-size:.9rem;line-height:1.3}.model-generated-material-progress-bar[data-v-a5b8781e]{background:#ffffff1a;border-radius:999px;height:.5rem;position:relative;overflow:hidden}.model-generated-material-progress-bar span[data-v-a5b8781e]{border-radius:inherit;background:linear-gradient(90deg,#62d5c0 0%,#98cbbb 100%);height:100%;transition:width .18s;display:block}.model-generated-material-compare[data-v-a5b8781e]{gap:.75rem;padding:.15rem 0 .1rem;display:grid}.model-generated-material-compare-head[data-v-a5b8781e],.model-generated-material-compare-heading[data-v-a5b8781e]{gap:.16rem;display:grid}.model-generated-material-compare-heading strong[data-v-a5b8781e]{font-size:.95rem;line-height:1.2}.model-generated-material-compare-heading small[data-v-a5b8781e]{color:#e5ece7c2;line-height:1.35}.model-generated-material-compare-grid[data-v-a5b8781e]{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.75rem;display:grid}.model-generated-material-compare-controls[data-v-a5b8781e]{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.model-generated-material-compare-controls label[data-v-a5b8781e]{gap:.3rem;min-width:0;display:grid}.model-generated-material-compare-controls span[data-v-a5b8781e]{color:#e5ece7c2;letter-spacing:.03em;text-transform:uppercase;font-size:.72rem;font-weight:800}.model-generated-material-compare-controls select[data-v-a5b8781e]{width:100%;min-width:0;min-height:2.2rem;color:inherit;font:inherit;background:#ffffff0d;border:1px solid #98cbbb29;border-radius:.65rem;padding:.35rem .6rem;font-size:.88rem;font-weight:700}.model-generated-material-compare-stage[data-v-a5b8781e]{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.model-generated-material-compare-stage-panel[data-v-a5b8781e]{background:#ffffff08;border:1px solid #98cbbb1f;border-radius:1rem;grid-template-rows:auto auto auto;align-content:start;gap:.55rem;padding:.85rem;display:grid}.model-generated-material-compare-stage-meta[data-v-a5b8781e]{gap:.18rem;display:grid}.model-generated-material-compare-stage-meta span[data-v-a5b8781e]{color:#e5ece7b8;letter-spacing:.03em;text-transform:uppercase;font-size:.72rem;font-weight:800}.model-generated-material-compare-stage-preview[data-v-a5b8781e]{background:#ffffff0a;border:1px solid #98cbbb2e;border-radius:.95rem;width:100%;height:clamp(13rem,32vh,21rem);min-height:0;padding:0;position:relative;overflow:hidden}.model-generated-material-tile-preview[data-v-a5b8781e]{transform-origin:50%;background-position:50%;background-repeat:repeat;display:block;position:absolute;inset:-18%}.model-generated-material-preview-grid[data-v-a5b8781e]{pointer-events:none;background-image:linear-gradient(90deg,#ffffff14 1px,#0000 1px),linear-gradient(#ffffff14 1px,#0000 1px);background-size:25% 25%;position:absolute;inset:0}.model-generated-material-compare-card[data-v-a5b8781e]{background:#ffffff08;border:1px solid #98cbbb1f;border-radius:1rem;gap:.7rem;padding:.8rem;display:grid}.model-generated-material-compare-thumb[data-v-a5b8781e]{aspect-ratio:1;background:#ffffff0a;border:1px solid #98cbbb2e;border-radius:.9rem;width:100%;min-height:0;padding:0;overflow:hidden}.model-generated-material-compare-thumb img[data-v-a5b8781e]{object-fit:cover;width:100%;height:100%;display:block}.model-generated-material-compare-copy[data-v-a5b8781e]{gap:.22rem;display:grid}.model-generated-material-compare-labels[data-v-a5b8781e]{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.model-generated-material-compare-badge[data-v-a5b8781e]{color:#dbf7f2f5;background:#67d7c11f;border:1px solid #67d7c140;border-radius:999px;align-items:center;min-height:1.35rem;padding:.08rem .48rem;font-size:.75rem;font-weight:800;line-height:1;display:inline-flex}@media (width<=960px){.model-generated-material-compare-controls[data-v-a5b8781e],.model-generated-material-compare-stage[data-v-a5b8781e]{grid-template-columns:minmax(0,1fr)}.model-generated-material-variant-grid[data-v-a5b8781e]{grid-template-columns:1fr}}.model-generated-material-variant-empty[data-v-a5b8781e]{background:#ffffff05;border:1px dashed #98cbbb29;border-radius:.95rem;grid-column:1/-1;place-items:center;min-height:10rem;padding:1rem;display:grid}.model-generated-material-variant-grid[data-v-a5b8781e]{grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:.65rem;display:grid}.model-generated-material-variant-card[data-v-a5b8781e]{background:#ffffff06;border:1px solid #98cbbb1a;border-radius:1rem;align-content:start;gap:.75rem;padding:.8rem;display:grid}.model-generated-material-variant-card.is-local-proposal[data-v-a5b8781e]{background:#ffffff09;border-color:#98cbbb2e}.model-generated-material-variant-preview[data-v-a5b8781e]{grid-template-columns:1fr;align-items:start;gap:.7rem;display:grid}.model-generated-material-variant-copy[data-v-a5b8781e]{gap:.18rem;min-width:0;display:grid}.model-generated-material-variant-copy strong[data-v-a5b8781e],.model-generated-material-variant-copy small[data-v-a5b8781e]{min-width:0;display:block}.model-generated-material-variant-thumb[data-v-a5b8781e]{aspect-ratio:16/10;background:#ffffff0a;border:1px solid #98cbbb2e;border-radius:.8rem;width:100%;height:auto;padding:0;overflow:hidden}.model-generated-material-variant-thumb img[data-v-a5b8781e]{object-fit:cover;width:100%;height:100%;display:block}.model-generated-material-variant-actions[data-v-a5b8781e]{flex-wrap:wrap;gap:.4rem;display:flex}.model-generated-material-prompt-details[data-v-a5b8781e]{gap:.2rem;margin-top:.25rem;display:grid}.model-generated-material-prompt-details summary[data-v-a5b8781e]{cursor:pointer;color:#98cbbbf2;font-size:.86rem;font-weight:700}.model-generated-material-prompt-details pre[data-v-a5b8781e]{color:#e5ece7e0;font:inherit;white-space:pre-wrap;background:#00000024;border:1px solid #98cbbb24;border-radius:.75rem;margin:.45rem 0 0;padding:.65rem .75rem;font-size:.84rem;line-height:1.4;overflow:auto}.model-generated-material-lightbox[data-v-a5b8781e]{background:#202622;border:1px solid #98cbbb2e;border-radius:1.1rem;gap:.8rem;width:min(64rem,100vw - 2rem);max-height:calc(100dvh - 2rem);padding:1rem;display:grid;overflow:auto;box-shadow:0 1.25rem 4rem #00000061}.model-generated-material-lightbox-title[data-v-a5b8781e]{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.model-generated-material-lightbox img[data-v-a5b8781e]{object-fit:contain;background:#ffffff0a;border-radius:.9rem;width:100%;height:auto;max-height:calc(100dvh - 8rem)}.model-generated-material-actions[data-v-a5b8781e]{flex-wrap:wrap;justify-content:flex-start;gap:.55rem;padding-top:.15rem;display:flex}.model-generated-material-prompt-editor[data-v-a5b8781e]{background:#ffffff06;border:1px solid #98cbbb24;border-radius:.95rem;gap:.45rem;padding:.7rem .85rem;display:grid}.model-generated-material-prompt-editor summary[data-v-a5b8781e]{cursor:pointer;color:#e5ece7c7;letter-spacing:.03em;text-transform:uppercase;font-size:.74rem;font-weight:800}.model-generated-material-prompt-editor textarea[data-v-a5b8781e]{width:100%;min-height:7rem;color:inherit;font:inherit;resize:vertical;background:#ffffff0d;border:1px solid #98cbbb2e;border-radius:.9rem;margin-top:.15rem;padding:.75rem .85rem;font-size:.94rem;line-height:1.35}.model-generated-material-actions button[data-v-a5b8781e],.model-generated-material-title button[data-v-a5b8781e],.model-generated-material-variant-actions button[data-v-a5b8781e],.model-texture-diagnostics-title-actions button[data-v-a5b8781e],.model-texture-diagnostics-row-actions button[data-v-a5b8781e]{min-height:2.35rem;color:inherit;font:inherit;background:#ffffff0d;border:1px solid #98cbbb2e;border-radius:.9rem;padding:.45rem .8rem;font-size:.94rem;font-weight:700}.model-generated-material-actions button[data-v-a5b8781e]{flex:0 auto;max-width:100%}.model-generated-material-actions button.is-primary[data-v-a5b8781e],.model-generated-material-title-actions button.is-primary[data-v-a5b8781e]{color:#10211d;background:linear-gradient(135deg,#69caba,#7bd9ca);border-color:#7bd9ca73}.model-generated-material-variant-thumb[data-v-a5b8781e]{min-height:0;padding:0}.model-texture-diagnostics[data-v-a5b8781e]{gap:.8rem;display:grid}.model-texture-diagnostics-summary[data-v-a5b8781e]{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.65rem;display:grid}.model-texture-diagnostics-summary article[data-v-a5b8781e]{background:#ffffff08;border:1px solid #98cbbb24;border-radius:1rem;gap:.18rem;min-width:0;padding:.8rem .9rem;display:grid}.model-texture-diagnostics-summary article span[data-v-a5b8781e],.model-texture-diagnostics-heading span[data-v-a5b8781e],.model-texture-diagnostics-tools label span[data-v-a5b8781e]{color:#e5ece7c7;letter-spacing:.03em;text-transform:uppercase;font-size:.74rem;font-weight:800}.model-texture-diagnostics-summary article strong[data-v-a5b8781e]{font-size:clamp(1rem,1.5vw,1.45rem);line-height:1.08}.model-texture-diagnostics-summary article strong[data-v-a5b8781e],.model-texture-diagnostics-summary article small[data-v-a5b8781e],.model-texture-diagnostics-heading strong[data-v-a5b8781e],.model-texture-diagnostics-heading small[data-v-a5b8781e]{text-overflow:ellipsis;overflow:hidden}.model-texture-diagnostics-summary article small[data-v-a5b8781e],.model-texture-diagnostics-heading small[data-v-a5b8781e],.model-texture-diagnostics-table small[data-v-a5b8781e]{color:#e5ece7c7}.model-texture-diagnostics-actions[data-v-a5b8781e]{flex-wrap:wrap;align-items:center;gap:.6rem .8rem;display:flex}.model-texture-diagnostics-actions[data-v-a5b8781e]>*{min-width:0}.model-texture-diagnostics-actions button[data-v-a5b8781e],.model-texture-diagnostics-filters button[data-v-a5b8781e]{min-height:2.35rem;color:inherit;font:inherit;background:#ffffff0d;border:1px solid #98cbbb2e;border-radius:999px;padding:.45rem .8rem;font-size:.92rem;font-weight:700}.model-texture-diagnostics-actions small[data-v-a5b8781e]{color:#e5ece7c7;font-size:.92rem;line-height:1.35}.model-texture-diagnostics-heading[data-v-a5b8781e],.model-texture-diagnostics-heading-main[data-v-a5b8781e]{gap:.08rem;min-width:0;display:grid}.model-texture-diagnostics-heading strong[data-v-a5b8781e]{font-size:clamp(.95rem,1.15vw,1.15rem);line-height:1.05}.model-texture-diagnostics-tools[data-v-a5b8781e]{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.5rem .75rem;display:grid}.model-texture-diagnostics-tools label[data-v-a5b8781e]{gap:.35rem;min-width:0;display:grid}.model-texture-diagnostics-tools input[data-v-a5b8781e]{width:100%;min-width:0;min-height:2.8rem;color:inherit;font:inherit;background:#ffffff0d;border:1px solid #98cbbb2e;border-radius:1rem;padding:.6rem .85rem}.model-texture-diagnostics-tools>small[data-v-a5b8781e],.model-texture-diagnostics-count[data-v-a5b8781e]{color:#e5ece7c7;white-space:nowrap;place-self:center end;font-size:.84rem}.model-texture-diagnostics-filters[data-v-a5b8781e]{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-start;gap:.45rem;min-width:0;display:flex}.model-texture-diagnostics-filters button[data-v-a5b8781e]{align-items:center;gap:.35rem;min-height:2.1rem;padding:.35rem .7rem;font-size:.86rem;display:inline-flex}.model-texture-diagnostics-filters button.is-active[data-v-a5b8781e]{color:#7bd9ca;background:#69caba24;border-color:#69caba73}.model-texture-diagnostics-table[data-v-a5b8781e]{border:1px solid #98cbbb24;border-radius:1.15rem;min-width:0;overflow:auto}.model-texture-diagnostics-table>div[data-v-a5b8781e]{grid-template-columns:minmax(8rem,.65fr) minmax(12rem,1.2fr) minmax(11rem,1fr) minmax(13rem,1.25fr) minmax(8.5rem,.7fr);align-items:start;gap:.85rem;min-width:62rem;padding:.9rem 1rem;display:grid}.model-texture-diagnostics-table>div+div[data-v-a5b8781e]{border-top:1px solid #98cbbb1a}.model-texture-diagnostics-table>div[data-v-a5b8781e]:first-child{z-index:1;background:#2a302b;position:sticky;top:0}.model-texture-diagnostics-table>div:first-child span[data-v-a5b8781e]{color:#e5ece7c7;letter-spacing:.03em;text-transform:uppercase;font-size:.76rem;font-weight:800}.model-texture-diagnostics-sort[data-v-a5b8781e]{min-width:0;color:inherit;font:inherit;text-align:left;opacity:.78;background:0 0;border:0;align-items:center;gap:.35rem;padding:0;font-weight:800;display:inline-flex}.model-texture-diagnostics-sort.is-active[data-v-a5b8781e]{opacity:1;color:#7bd9ca}.model-texture-diagnostics-table strong[data-v-a5b8781e],.model-texture-diagnostics-table span[data-v-a5b8781e],.model-texture-diagnostics-table small[data-v-a5b8781e],.model-texture-diagnostics-row-actions[data-v-a5b8781e]{min-width:0}.model-texture-diagnostics-table div>div[data-v-a5b8781e],.model-texture-diagnostics-row-actions[data-v-a5b8781e]{gap:.22rem;display:grid}.model-texture-diagnostics-table span[data-v-a5b8781e],.model-texture-diagnostics-table strong[data-v-a5b8781e],.model-texture-diagnostics-table small[data-v-a5b8781e]{overflow-wrap:anywhere}.model-texture-diagnostics-row-actions[data-v-a5b8781e]{align-content:start;justify-items:start}.model-texture-diagnostics-row-actions button[data-v-a5b8781e]{min-height:2.2rem;padding:.35rem .75rem;font-size:.88rem}.model-texture-diagnostics-row-actions button.is-danger[data-v-a5b8781e]{color:#ffc4c4f0;border-color:#ff91912e}@media (width<=1100px){.model-generated-material-sidebar[data-v-a5b8781e]{grid-template-columns:minmax(0,1fr)}.model-generated-material-sidebar>.model-generated-material-field[data-v-a5b8781e]:first-child,.model-generated-material-sidebar>.model-generated-material-preview[data-v-a5b8781e]{grid-column:1}.model-generated-material-properties-grid[data-v-a5b8781e]{grid-template-columns:repeat(2,minmax(0,1fr))}}.model-texture-diagnostics-warning[data-v-a5b8781e]{color:#ffbdbd;margin:0}.model-layer-list button.is-empty[data-v-a5b8781e]{opacity:.45}@media (width<=900px){.model-generated-material-panel[data-v-a5b8781e],.model-texture-diagnostics-panel[data-v-a5b8781e]{width:calc(100vw - 1rem);max-height:calc(100dvh - 1rem)}.model-generated-material-panel[data-v-a5b8781e]{gap:.75rem;padding:.75rem;overflow:auto}.model-generated-material-layout[data-v-a5b8781e]{grid-template-columns:1fr}.model-generated-material-preview[data-v-a5b8781e]{grid-template-columns:5rem minmax(0,1fr)}.model-generated-material-properties-grid[data-v-a5b8781e]{grid-template-columns:repeat(2,minmax(0,1fr))}.model-generated-material-swatch[data-v-a5b8781e]{max-width:5rem}.model-generated-material-variant-grid[data-v-a5b8781e]{grid-template-columns:1fr}.model-generated-material-main[data-v-a5b8781e],.model-generated-material-sidebar[data-v-a5b8781e]{padding:0;overflow:visible}.model-generated-material-actions[data-v-a5b8781e]{justify-content:stretch}.model-generated-material-actions button[data-v-a5b8781e]{flex:100%}.model-generated-material-title[data-v-a5b8781e]{flex-direction:column;align-items:stretch}.model-generated-material-title-actions[data-v-a5b8781e]{justify-content:flex-start}.model-texture-diagnostics-title[data-v-a5b8781e]{flex-direction:column;align-items:stretch}.model-texture-diagnostics-title-actions[data-v-a5b8781e]{justify-content:flex-start;display:flex}.model-texture-diagnostics-tools[data-v-a5b8781e]{grid-template-columns:1fr;align-items:stretch}.model-texture-diagnostics-tools>small[data-v-a5b8781e]{white-space:normal}.model-texture-diagnostics-filters[data-v-a5b8781e]{justify-content:flex-start}.model-texture-diagnostics-actions[data-v-a5b8781e]{grid-template-columns:1fr 1fr;align-items:start;display:grid}.model-texture-diagnostics-actions button[data-v-a5b8781e]{width:auto}.model-texture-diagnostics-summary[data-v-a5b8781e]{grid-template-columns:1fr 1fr}}@media (width<=640px){.model-generated-material-properties-grid[data-v-a5b8781e],.model-generated-material-surface-preview[data-v-a5b8781e],.model-texture-diagnostics-summary[data-v-a5b8781e],.model-texture-diagnostics-actions[data-v-a5b8781e]{grid-template-columns:1fr}}.viewer-panel[data-v-0864d0b8]{padding:.65rem 1.25rem 1rem}@media (width<=820px){.viewer-panel[data-v-0864d0b8]{padding:0 .75rem .75rem}}.viewer-panel[data-v-9565b1c7]{padding:.65rem 1.25rem 1rem}@media (width<=820px){.viewer-panel[data-v-9565b1c7]{padding:0 .75rem .75rem}}.presentation-workspace[data-v-a72f8eac]{padding:0 1.25rem 1rem}@media (width<=820px){.presentation-workspace[data-v-a72f8eac]{padding:0 .75rem .75rem}}.project-analysis-panel[data-v-1241af0f]{padding:0 1.25rem 1rem}.project-analysis-panel__layout[data-v-1241af0f]{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1rem;display:grid}.project-analysis-panel__panel[data-v-1241af0f]{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel), color-mix(in srgb, var(--panel) 86%, var(--panel-strong)));box-shadow:var(--shadow);border-radius:1.4rem;gap:1rem;padding:1.2rem;display:grid}.project-analysis-panel__panel-head p[data-v-1241af0f],.project-analysis-panel__source-copy span[data-v-1241af0f],.project-analysis-panel__source-copy p[data-v-1241af0f],.project-analysis-panel__empty[data-v-1241af0f]{color:var(--muted)}.project-analysis-panel__panel h2[data-v-1241af0f],.project-analysis-panel__panel>p[data-v-1241af0f],.project-analysis-panel__panel-head p[data-v-1241af0f],.project-analysis-panel__panel-head strong[data-v-1241af0f],.project-analysis-panel__source-copy strong[data-v-1241af0f],.project-analysis-panel__source-copy span[data-v-1241af0f],.project-analysis-panel__source-copy p[data-v-1241af0f]{margin:0}.project-analysis-panel__metrics[data-v-1241af0f]{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.project-analysis-panel__metric[data-v-1241af0f]{border:1px solid var(--line);background:var(--panel);border-radius:1rem;gap:.2rem;padding:.9rem .95rem;display:grid}.project-analysis-panel__metric strong[data-v-1241af0f]{font-size:1.2rem}.project-analysis-panel__sources[data-v-1241af0f]{gap:.8rem;display:grid}.project-analysis-panel__source[data-v-1241af0f]{border:1px solid var(--line);background:var(--panel);border-radius:1rem;grid-template-columns:minmax(0,1fr) auto;gap:.85rem;padding:.95rem;display:grid}.project-analysis-panel__source-copy[data-v-1241af0f]{gap:.2rem;display:grid}.project-analysis-panel__source-status[data-v-1241af0f]{border:1px solid var(--line);color:var(--muted);border-radius:999px;align-self:start;padding:.28rem .6rem;font-size:.8rem}.project-analysis-panel__source-status.is-ready[data-v-1241af0f]{color:#baf2d5;border-color:#29bf8557}.project-analysis-panel__empty[data-v-1241af0f]{padding-top:.25rem}@media (width<=1120px){.project-analysis-panel__layout[data-v-1241af0f]{grid-template-columns:1fr}}@media (width<=820px){.project-analysis-panel[data-v-1241af0f]{padding:0 .75rem .75rem}.project-analysis-panel__metrics[data-v-1241af0f]{grid-template-columns:repeat(2,minmax(0,1fr))}.project-analysis-panel__source[data-v-1241af0f]{grid-template-columns:1fr}}.project-upload-panel[data-v-26b5dff1]{min-width:0}.project-upload-panel__panel[data-v-26b5dff1]{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel), color-mix(in srgb, var(--panel) 86%, var(--panel-strong)));box-shadow:var(--shadow);border-radius:.8rem;grid-template-columns:minmax(10rem,.55fr) minmax(14rem,1fr) minmax(18rem,1.15fr);align-items:center;gap:.65rem;padding:.6rem .7rem;display:grid}.project-upload-panel__intro[data-v-26b5dff1]{min-width:0}.project-upload-panel__intro h2[data-v-26b5dff1],.project-upload-panel__intro p[data-v-26b5dff1]{margin:0}.project-upload-panel__status span[data-v-26b5dff1],.project-upload-panel__status small[data-v-26b5dff1]{color:var(--muted)}.project-upload-panel__intro h2[data-v-26b5dff1]{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;line-height:1.2;overflow:hidden}.project-upload-panel__status[data-v-26b5dff1]{border:1px solid var(--line);background:var(--panel-strong);border-radius:.65rem;flex-wrap:wrap;align-items:baseline;gap:.35rem;padding:.5rem .65rem;display:flex}.project-upload-panel__status span[data-v-26b5dff1],.project-upload-panel__status strong[data-v-26b5dff1],.project-upload-panel__status small[data-v-26b5dff1]{font-size:.78rem}.project-upload-panel__status small[data-v-26b5dff1]{width:100%}.project-upload-panel__status.is-ready[data-v-26b5dff1]{border-color:#29bf8557}.project-upload-panel__status.is-error[data-v-26b5dff1]{border-color:#ff838347}.project-upload-panel__actions[data-v-26b5dff1]{grid-template-columns:1fr;gap:.5rem;display:grid}.project-upload-panel__dropzone[data-v-26b5dff1]{font:inherit;border:1px dashed color-mix(in srgb, var(--muted) 42%, var(--line));background:var(--panel);cursor:pointer;border-radius:.65rem;align-items:baseline;gap:.5rem;padding:.5rem .65rem;display:flex}.project-upload-panel__dropzone strong[data-v-26b5dff1]{flex:none;font-size:.82rem}.project-upload-panel__dropzone span[data-v-26b5dff1]{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.project-upload-panel__dropzone input[data-v-26b5dff1]{display:none}.project-upload-panel__dropzone.is-busy[data-v-26b5dff1]{cursor:wait;opacity:.72}.project-upload-panel__project-actions[data-v-26b5dff1]{align-content:start;justify-items:end}.project-upload-panel__chip[data-v-26b5dff1]{color:#e2ebe6d1;border:1px solid #ffffff1a;border-radius:999px;padding:.28rem .6rem;font-size:.8rem}.project-upload-panel__empty[data-v-26b5dff1]{color:var(--muted);margin:0}@media (width<=820px){.project-upload-panel__panel[data-v-26b5dff1],.project-upload-panel__actions[data-v-26b5dff1]{grid-template-columns:1fr}}.project-overview[data-v-74c54d0c]{gap:.7rem;padding:.7rem 1.25rem 0;display:grid}.project-overview__list-shell[data-v-74c54d0c],.project-overview__card[data-v-74c54d0c]{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel), color-mix(in srgb, var(--panel) 86%, var(--panel-strong)));box-shadow:var(--shadow)}.project-overview__cards[data-v-74c54d0c]{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.project-overview__card[data-v-74c54d0c]{border-radius:.8rem;grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:.55rem;padding:.55rem .75rem;display:grid}.project-overview__card span[data-v-74c54d0c],.project-overview__card small[data-v-74c54d0c],.project-overview__project p[data-v-74c54d0c],.project-overview__project small[data-v-74c54d0c],.project-overview__project-meta span[data-v-74c54d0c],.project-overview__list-head p[data-v-74c54d0c],.project-overview__meta span[data-v-74c54d0c]{color:var(--muted)}.project-overview__card strong[data-v-74c54d0c]{font-size:1.05rem}.project-overview__card small[data-v-74c54d0c]{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.project-overview__warning[data-v-74c54d0c]{color:#ffd9c0;background:#74311147;border:1px solid #ffac6257;border-radius:1rem;margin:0;padding:.9rem 1rem}.project-overview__list-shell[data-v-74c54d0c]{border-radius:1rem;gap:.65rem;padding:.75rem;display:grid}.project-overview__list-head[data-v-74c54d0c]{justify-content:space-between;align-items:center;gap:1rem;display:flex}.project-overview__list-head p[data-v-74c54d0c],.project-overview__list-head strong[data-v-74c54d0c]{margin:0}.project-overview__list-actions[data-v-74c54d0c]{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.55rem;display:flex}.project-overview__meta[data-v-74c54d0c]{text-align:right;align-items:baseline;gap:.4rem;display:flex}.project-overview__refresh[data-v-74c54d0c],.project-overview__icon-button[data-v-74c54d0c],.project-overview__head-button[data-v-74c54d0c]{color:inherit;font:inherit;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:.95rem}.project-overview__refresh[data-v-74c54d0c]{border-radius:.65rem;padding:.5rem .75rem;font-size:.82rem;font-weight:700}.project-overview__refresh[data-v-74c54d0c]:disabled,.project-overview__icon-button[data-v-74c54d0c]:disabled{opacity:.68;cursor:wait}.project-overview__body[data-v-74c54d0c]{grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem;display:grid}.project-overview__table[data-v-74c54d0c]{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 94%, var(--panel-strong));border-radius:1.3rem;display:grid;overflow:hidden}.project-overview__table-head[data-v-74c54d0c],.project-overview__row[data-v-74c54d0c]{grid-template-columns:minmax(13rem,1.25fr) minmax(11rem,1fr) minmax(9rem,.82fr) minmax(9rem,.82fr) minmax(7rem,.6fr) minmax(11rem,.95fr) minmax(9rem,.75fr);align-items:center;gap:0;display:grid}.project-overview__table-head[data-v-74c54d0c]{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--panel-strong) 50%, transparent)}.project-overview__row[data-v-74c54d0c]{border-bottom:1px solid color-mix(in srgb, var(--line) 74%, transparent);min-width:0}.project-overview__row[data-v-74c54d0c]:last-child{border-bottom:0}.project-overview__head-cell[data-v-74c54d0c],.project-overview__head-button[data-v-74c54d0c],.project-overview__cell[data-v-74c54d0c]{min-width:0;padding:.9rem 1rem}.project-overview__head-cell[data-v-74c54d0c],.project-overview__head-button[data-v-74c54d0c]{color:var(--muted);letter-spacing:.02em;font-size:.82rem;font-weight:700}.project-overview__head-button[data-v-74c54d0c]{background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:.5rem;width:100%;display:inline-flex}.project-overview__cell[data-v-74c54d0c],.project-overview__cell strong[data-v-74c54d0c],.project-overview__cell small[data-v-74c54d0c]{margin:0}.project-overview__cell[data-v-74c54d0c]{gap:.2rem;display:grid}.project-overview__cell strong[data-v-74c54d0c],.project-overview__cell small[data-v-74c54d0c]{text-overflow:ellipsis;overflow:hidden}.project-overview__cell small[data-v-74c54d0c]{color:var(--muted)}.project-overview__cell.is-status[data-v-74c54d0c],.project-overview__cell.is-actions[data-v-74c54d0c]{align-items:center}.project-overview__cell.is-project strong[data-v-74c54d0c],.project-overview__cell.is-details strong[data-v-74c54d0c],.project-overview__cell.is-ids strong[data-v-74c54d0c]{font-size:.98rem;line-height:1.25}.project-overview__project-main[data-v-74c54d0c]{grid-template-columns:4rem minmax(0,1fr);align-items:center;gap:.8rem;display:grid}.project-overview__preview[data-v-74c54d0c]{border:1px solid var(--line);background:color-mix(in srgb, var(--panel-strong) 72%, transparent);width:4rem;height:4rem;color:var(--muted);border-radius:.9rem;place-items:center;display:grid;overflow:hidden}.project-overview__preview img[data-v-74c54d0c]{object-fit:cover;width:100%;height:100%}.project-overview__preview.is-empty[data-v-74c54d0c]{background:linear-gradient(135deg, #ffffff0d, #ffffff05), color-mix(in srgb, var(--panel-strong) 72%, transparent)}.project-overview__project-copy[data-v-74c54d0c]{gap:.25rem;min-width:0;display:grid}.project-overview__project-link[data-v-74c54d0c]{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800;line-height:1.25}.project-overview__project-link[data-v-74c54d0c]:hover{color:var(--accent-soft)}.project-overview__project-link[data-v-74c54d0c]:disabled{opacity:.68;cursor:wait}.project-overview__status[data-v-74c54d0c]{border:1px solid var(--line);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:.26rem .62rem;font-size:.72rem;font-weight:700;display:inline-flex}.project-overview__status.is-ready[data-v-74c54d0c],.project-overview__status.is-analysis_ready[data-v-74c54d0c]{color:#9be7d0;border-color:#2eb5903d}.project-overview__status.is-running[data-v-74c54d0c],.project-overview__status.is-analysis_running[data-v-74c54d0c],.project-overview__status.is-queued[data-v-74c54d0c],.project-overview__status.is-analysis_queued[data-v-74c54d0c],.project-overview__status.is-uploading[data-v-74c54d0c],.project-overview__status.is-analyzing[data-v-74c54d0c]{color:#f0d68e;border-color:#d8b85d3d}.project-overview__status.is-failed[data-v-74c54d0c],.project-overview__status.is-analysis_failed[data-v-74c54d0c],.project-overview__status.is-error[data-v-74c54d0c]{color:#ffb7b7;border-color:#de6f6f47}.project-overview__icon-actions[data-v-74c54d0c]{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:.45rem;display:inline-flex}.project-overview__icon-button[data-v-74c54d0c]{place-items:center;width:2.35rem;height:2.35rem;padding:0;display:inline-grid}.project-overview__icon-button.is-primary[data-v-74c54d0c]{background:linear-gradient(135deg, var(--accent), var(--accent-strong));border-color:color-mix(in srgb, var(--accent) 42%, var(--line));color:#fff}.project-overview__empty[data-v-74c54d0c]{color:#e2ebe6b3;margin:0}@media (width<=1080px){.project-overview__body[data-v-74c54d0c]{grid-template-columns:1fr}}@media (width<=1400px){.project-overview__table-head[data-v-74c54d0c],.project-overview__row[data-v-74c54d0c]{grid-template-columns:minmax(12rem,1.3fr) minmax(10rem,1fr) minmax(8.5rem,.8fr) minmax(8.5rem,.8fr) minmax(7rem,.65fr) minmax(8.5rem,auto)}.project-overview__head-cell.is-ids[data-v-74c54d0c],.project-overview__cell.is-ids[data-v-74c54d0c]{display:none}}@media (width<=1180px){.project-overview__table-head[data-v-74c54d0c],.project-overview__row[data-v-74c54d0c]{grid-template-columns:minmax(12rem,1.3fr) minmax(10rem,1fr) minmax(8.5rem,.8fr) minmax(7rem,.65fr) minmax(8.5rem,auto)}.project-overview__head-button.is-created[data-v-74c54d0c],.project-overview__cell.is-created[data-v-74c54d0c]{display:none}}@media (width<=980px){.project-overview__table-head[data-v-74c54d0c]{display:none}.project-overview__row[data-v-74c54d0c]{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:.25rem 1rem;padding:.7rem}.project-overview__cell[data-v-74c54d0c]{align-content:start;padding:.35rem .45rem}.project-overview__project-main[data-v-74c54d0c]{grid-template-columns:3.4rem minmax(0,1fr);gap:.7rem}.project-overview__preview[data-v-74c54d0c]{width:3.4rem;height:3.4rem}.project-overview__cell[data-v-74c54d0c]:before{content:attr(data-label);color:var(--muted);letter-spacing:.02em;font-size:.76rem;font-weight:700}.project-overview__cell.is-actions[data-v-74c54d0c]:before{display:none}.project-overview__cell.is-actions[data-v-74c54d0c]{border-top:1px solid color-mix(in srgb, var(--line) 68%, transparent);grid-column:1/-1;padding-top:.55rem}.project-overview__icon-actions[data-v-74c54d0c]{justify-content:flex-start}}@media (width<=620px){.project-overview__cards[data-v-74c54d0c]{grid-template-columns:1fr}.project-overview__card[data-v-74c54d0c]{grid-template-columns:minmax(5rem,auto) auto minmax(0,1fr)}.project-overview__list-head[data-v-74c54d0c],.project-overview__list-actions[data-v-74c54d0c]{flex-direction:column;align-items:stretch}.project-overview__meta[data-v-74c54d0c]{text-align:left}.project-overview__row[data-v-74c54d0c]{grid-template-columns:1fr}.project-overview__project-main[data-v-74c54d0c]{grid-template-columns:3.1rem minmax(0,1fr)}.project-overview__preview[data-v-74c54d0c]{width:3.1rem;height:3.1rem}.project-overview__cell.is-actions[data-v-74c54d0c]{grid-column:auto}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1d2522;--bg:#f7f4ef;--panel:#fffdf9;--panel-strong:#f0ece3;--text:#1d2522;--muted:#69746e;--line:#ddd6cb;--accent:#0e7a6d;--accent-strong:#09594f;--success-soft:#dff1ec;--warning-soft:#f6e3d1;--gold:#b68129;--blue:#315f8d;--shadow:0 18px 50px #241e141a;background:#f7f4ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f4f0e8;--bg:#151817;--panel:#202522;--panel-strong:#2b312d;--text:#f4f0e8;--muted:#aab5ae;--line:#3d4640;--accent:#6bc5b4;--accent-strong:#9ddfd4;--success-soft:#183d38;--warning-soft:#4b2e1f;--gold:#d7ae65;--blue:#8ab5da;--shadow:0 18px 60px #00000052;background:#151817}*{box-sizing:border-box}body{background:linear-gradient(180deg, #ffffff5c, transparent 320px), var(--bg);min-width:320px;color:var(--text);margin:0}button,input,a{font:inherit}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit;text-decoration:none}.app-shell{width:100%;margin:0;padding:0 0 32px}.viewer-shell{background:var(--bg);height:100%;min-height:0;color:var(--text);grid-template-rows:minmax(0,1fr) auto;display:grid;overflow:hidden}.viewer-topbar{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:24px;min-height:0;padding:12px clamp(16px,3vw,36px);display:grid}.viewer-project{text-align:center;justify-self:center;gap:3px;min-width:0;display:grid}.viewer-project span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:780}.viewer-project strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.viewer-status{color:var(--muted);justify-items:end;gap:2px;display:grid}.viewer-status span{color:var(--text);font-size:1.1rem;font-weight:850;line-height:1}.viewer-status small{text-transform:uppercase;font-size:.74rem;font-weight:780}.viewer-stage{min-height:0;padding:clamp(12px,2vw,24px);display:grid;overflow:hidden}.viewer-media{border:1px solid var(--line);height:100%;min-height:0;box-shadow:var(--shadow);background:#101412;border-radius:10px;position:relative;overflow:hidden}.viewer-media-content{object-fit:contain;border:0;width:100%;height:100%;min-height:0;display:block}.viewer-media-content.media-placeholder{color:var(--muted);background:var(--panel-strong);align-content:center;place-items:center;gap:12px;display:grid}.panorama-viewer{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:#101412;position:relative;overflow:hidden}.panorama-viewer:active{cursor:grabbing}.panorama-viewer img{width:100%;height:100%;min-height:inherit;object-fit:cover;pointer-events:none;display:block}.panorama-hud{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121816b8;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:8px;padding:7px 10px;font-size:.82rem;display:inline-flex;position:absolute;top:14px;left:14px}.panorama-hud span{color:#ffffffb8}.panorama-controls{gap:8px;display:flex;position:absolute;bottom:14px;right:14px}.panorama-controls button{color:#fff;width:38px;height:38px;font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121816b8;border:1px solid #ffffff2e;border-radius:999px;font-size:1.35rem}.panorama-controls button:hover{background:#121816e0}.panorama-cube-stage{background:radial-gradient(circle,#ffffff14,#0000 42%),#101412;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.panorama-canvas,.panorama-fallback{width:100%;height:100%;min-height:0;display:block;position:absolute;inset:0}.panorama-canvas{opacity:0;background:#101412}.panorama-canvas.is-ready{opacity:1}.panorama-fallback{object-fit:cover;filter:brightness(.92)}.viewer-caption{color:#fff;background:linear-gradient(90deg,#000000b8,#0000002e);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:4px;max-width:min(820px,100% - 36px);padding:14px 16px;display:grid;position:absolute;bottom:18px;left:18px;right:18px}.viewer-caption div{gap:4px;min-width:0;display:grid}.viewer-caption span{text-transform:uppercase;opacity:.82;font-size:.78rem;font-weight:780}.viewer-caption strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.viewer-caption em{color:#ffffffd6;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;align-self:center;padding:7px 10px;font-size:.78rem;font-style:normal;font-weight:780}.viewer-rail{border-top:1px solid var(--line);background:color-mix(in srgb, var(--panel) 82%, transparent);grid-auto-columns:minmax(260px,340px);grid-auto-flow:column;gap:10px;min-height:0;padding:12px clamp(16px,3vw,36px);display:grid;overflow-x:auto}.viewer-thumb{border:1px solid var(--line);background:var(--panel-strong);height:92px;min-height:0;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:58px minmax(0,1fr) 38px;grid-template-areas:"preview title index""preview group index";align-items:center;gap:3px 10px;padding:10px;display:grid}.viewer-thumb.is-active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 24%, transparent)}.viewer-thumb.is-approved{border-color:color-mix(in srgb, var(--accent) 36%, var(--line));background:color-mix(in srgb, var(--accent) 7%, var(--panel))}.viewer-thumb.is-approved .viewer-thumb-index{background:var(--accent);color:#fff}.viewer-thumb-preview{border:1px solid var(--line);background:var(--panel);width:58px;height:58px;color:var(--muted);border-radius:7px;grid-area:preview;place-items:center;display:grid;overflow:hidden}.viewer-thumb-preview img{object-fit:cover;width:100%;height:100%;display:block}.viewer-thumb-index{background:var(--panel);width:34px;height:34px;color:var(--muted);border-radius:999px;grid-area:index;place-items:center;font-size:.82rem;display:grid}.viewer-thumb strong{text-overflow:ellipsis;white-space:nowrap;grid-area:title;min-width:0;overflow:hidden}.viewer-thumb small{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);grid-area:group;overflow:hidden}.topbar{z-index:30;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:auto 1fr auto;align-items:center;gap:24px;min-height:54px;display:grid;position:sticky;top:0}.brand,.section-kicker,.eyebrow,.toolbar,.primary-action,.secondary-action,.danger-action{align-items:center;gap:9px;display:inline-flex}.brand{letter-spacing:0;font-weight:760}.topbar nav{color:var(--muted);justify-self:center;gap:8px;font-size:.94rem;display:flex}.topbar nav button{min-height:34px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 10px}.topbar nav button:hover,.topbar nav button.is-active{background:color-mix(in srgb, var(--accent) 9%, transparent);color:var(--text)}.toolbar button,.primary-action,.secondary-action,.danger-action{border:1px solid var(--line);background:var(--panel);min-height:40px;color:var(--text);cursor:pointer;border-radius:8px;padding:0 13px}.primary-action{background:var(--accent);color:#fff;border-color:#0000;font-weight:700}:root[data-theme=dark] .primary-action{color:#10211f}.secondary-action{color:var(--muted)}.danger-action{border-color:color-mix(in srgb, #b42318 35%, var(--line));color:#fff;background:#b42318;font-weight:750}.primary-action:disabled,.danger-action:disabled,.secondary-action:disabled{cursor:wait;opacity:.68}.hero{grid-template-columns:minmax(0,.8fr) minmax(360px,1fr);align-items:center;gap:clamp(32px,6vw,92px);min-height:clamp(360px,46vh,560px);padding:24px 0 18px;display:grid}.hero.is-compact{grid-template-columns:minmax(0,.95fr) minmax(320px,.7fr);min-height:auto;padding:18px 0 12px}.hero.is-compact .hero-copy h1{max-width:820px;font-size:clamp(2rem,2.7vw,3.3rem)}.hero.is-compact .hero-copy p{max-width:760px}.hero.is-compact .hero-visual,.hero.is-compact .hero-visual img,.hero.is-compact .model-preview{min-height:220px}#upload,#analysis,#ifc,#model-studio,#visualize,#present,#presentation-queue,.asset-workbench{scroll-margin-top:126px}.hero-copy{min-width:0;max-width:100%;overflow:hidden}.hero-copy h1{letter-spacing:0;text-wrap:balance;overflow-wrap:anywhere;max-width:min(100%,720px);margin:18px 0;font-size:clamp(2.35rem,3.7vw,4.55rem);line-height:1.02}.hero-copy p{max-width:640px;color:var(--muted);font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.6}.eyebrow,.section-kicker{color:var(--accent-strong);text-transform:uppercase;margin:0 0 12px;font-size:.83rem;font-weight:780}.hero-visual{background:linear-gradient(140deg, #0e7a6d2e, transparent 54%), linear-gradient(320deg, #315f8d2e, transparent 52%), var(--panel-strong);min-width:0;min-height:390px;box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.hero-visual img{object-fit:cover;width:100%;height:100%;min-height:390px;display:block}.model-preview{height:100%;min-height:390px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:18px;padding:24px;display:grid}.workflow-grid,.analysis-layout,.model-insights,.visual-grid,.presentation-grid,.asset-workbench{gap:18px;margin-top:18px;display:grid}.workflow-grid{grid-template-columns:repeat(3,1fr)}.workflow-grid.is-compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.workflow-grid.is-compact article{padding:14px 16px}.workflow-grid.is-compact svg{width:18px;height:18px}.workflow-grid.is-compact h2{margin-bottom:4px;font-size:1.05rem}.workflow-grid.is-compact p{margin:0;font-size:.88rem;line-height:1.35}.demo-flow{z-index:29;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 calc(-1*clamp(14px,2.2vw,30px));padding:8px clamp(14px,2.2vw,30px);display:grid;position:sticky;top:54px}.demo-step{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"number label""number detail";align-items:center;gap:2px 10px;min-width:0;min-height:48px;padding:8px 10px;display:grid}.demo-step span{width:30px;height:30px;color:var(--muted);background:var(--panel);border-radius:999px;grid-area:number;place-items:center;font-size:.8rem;font-weight:820;display:grid}.demo-step small{font-size:.8rem}.demo-step strong{text-overflow:ellipsis;white-space:nowrap;grid-area:label;min-width:0;overflow:hidden}.demo-step small{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-area:detail;overflow:hidden}.demo-step.is-active{border-color:color-mix(in srgb, var(--accent) 46%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.demo-step.is-active span,.demo-step.is-done span{background:var(--accent);color:#fff}.demo-step.is-done{border-color:color-mix(in srgb, var(--accent) 28%, var(--line))}.workspace-tabs{z-index:29;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:0 calc(-1*clamp(14px,2.2vw,30px));padding:8px clamp(14px,2.2vw,30px);display:grid;position:sticky;top:54px}.workspace-tabs button{border:1px solid var(--line);background:var(--panel-strong);min-width:0;min-height:56px;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"number label""number detail";align-items:center;gap:2px 10px;padding:8px 10px;display:grid}.workspace-tabs button span{width:30px;height:30px;color:var(--muted);background:var(--panel);border-radius:999px;grid-area:number;place-items:center;font-size:.78rem;font-weight:850;display:grid}.workspace-tabs button strong,.workspace-tabs button small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.workspace-tabs button strong{grid-area:label;font-size:.95rem}.workspace-tabs button small{color:var(--muted);grid-area:detail;font-size:.78rem;font-weight:650}.workspace-tabs button:hover,.workspace-tabs button.is-active{border-color:color-mix(in srgb, var(--accent) 45%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.workspace-tabs button.is-active span{background:var(--accent);color:#fff}.workspace-panel[hidden]{display:none!important}.labs-panel{gap:18px;display:grid}.labs-panel-hero{gap:8px;max-width:860px;display:grid}.labs-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.labs-card{border:1px solid var(--line);background:linear-gradient(180deg, color-mix(in srgb, var(--panel-strong) 88%, white) 0%, var(--panel) 100%);box-shadow:0 18px 48px color-mix(in srgb, var(--ink) 8%, transparent);border-radius:18px;gap:10px;padding:18px;display:grid}.labs-card>span{background:color-mix(in srgb, var(--accent) 10%, var(--panel-strong));color:var(--accent);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;justify-self:start;padding:5px 9px;font-size:.72rem;font-weight:850}.labs-card strong{color:var(--ink);font-size:1.1rem}.labs-card p,.labs-card li,.labs-card-note span{color:var(--muted);line-height:1.5}.labs-card.is-live{border-color:color-mix(in srgb, var(--accent) 20%, var(--line))}.labs-card.is-experimental{border-color:color-mix(in srgb, #b85b00 28%, var(--line))}.labs-checklist{gap:7px;margin:0;padding-left:18px;display:grid}.labs-card-note{align-items:start;gap:8px;margin-top:auto;padding-top:6px;display:flex}.labs-card .secondary-action{justify-self:start}.labs-preset-bar{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.labs-preset-bar button{border:1px solid var(--line);background:var(--panel-strong);min-width:0;color:var(--text);text-align:left;cursor:pointer;border-radius:14px;justify-items:start;gap:4px;padding:12px 14px;transition:border-color .14s,background .14s,transform .14s;display:grid}.labs-preset-bar button:hover,.labs-preset-bar button.is-active{border-color:color-mix(in srgb, var(--accent) 42%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel));transform:translateY(-1px)}.labs-preset-bar button strong,.labs-preset-bar button small{min-width:0}.labs-preset-bar button strong{color:var(--ink);font-size:.94rem}.labs-preset-bar button small{color:var(--muted);font-size:.74rem;line-height:1.3}.labs-preset-description{color:var(--muted);margin:0;line-height:1.55}.labs-tuning-row{flex-wrap:wrap;gap:12px;display:flex}.labs-tuning-control{border:1px solid var(--line);background:color-mix(in srgb, var(--panel-strong) 72%, white);border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-width:min(320px,100%);padding:12px 14px;display:grid}.labs-tuning-control span{font-size:.86rem;font-weight:700}.labs-tuning-control strong{text-align:right;min-width:52px;color:var(--muted);font-size:.84rem}.labs-tuning-control input[type=range]{width:100%}.studio-navigation{z-index:28;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:10px calc(-1*clamp(14px,2.2vw,30px)) 0;padding:8px clamp(14px,2.2vw,30px);display:grid;position:sticky;top:126px}.studio-navigation a{border:1px solid color-mix(in srgb, var(--accent) 16%, var(--line));background:color-mix(in srgb, var(--panel) 90%, transparent);min-width:0;min-height:58px;color:var(--text);border-radius:8px;grid-template-columns:34px minmax(0,1fr);grid-template-areas:"step title""step detail";align-items:center;column-gap:10px;padding:8px 10px;text-decoration:none;display:grid}.studio-navigation a:hover{border-color:color-mix(in srgb, var(--accent) 52%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.studio-navigation span{aspect-ratio:1;background:var(--accent);color:#fff;border-radius:999px;grid-area:step;place-items:center;width:32px;font-size:.76rem;font-weight:860;display:grid}.studio-navigation strong,.studio-navigation small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.studio-navigation strong{grid-area:title;font-size:.92rem}.studio-navigation small{color:var(--muted);grid-area:detail;font-size:.76rem;font-weight:650}.analysis-layout,.model-insights,.visual-grid,.presentation-grid,.asset-workbench{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}.technical-details{margin-top:18px}.studio-aux-details>.ifc-guardrail-studio{margin-top:14px}.technical-details summary{border:1px solid var(--line);background:var(--panel-strong);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;min-height:54px;padding:12px 16px;list-style:none;display:flex}.technical-details summary::-webkit-details-marker{display:none}.technical-details summary span{align-items:center;gap:8px;font-weight:820;display:inline-flex}.technical-details summary small{color:var(--muted);text-align:right}.technical-details[open] summary{border-color:color-mix(in srgb, var(--accent) 26%, var(--line))}.technical-details .analysis-layout,.technical-details .model-insights{margin-top:14px}.asset-workbench{grid-template-columns:1fr;align-items:start}.visual-grid{grid-template-columns:minmax(0,1fr)}.panel,.workflow-grid article{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 92%, transparent);border-radius:8px;padding:clamp(20px,2.4vw,30px);box-shadow:inset 0 1px #fff3}.panel h2,.workflow-grid h2{margin:0 0 10px;font-size:clamp(1.2rem,2vw,1.72rem)}.panel p,.workflow-grid p{color:var(--muted);line-height:1.58}.upload-panel{grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;gap:24px;margin-top:22px;display:grid}.upload-panel.is-compact{grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:12px;margin-top:10px;padding-block:10px}.upload-panel.is-compact h2,.upload-panel.is-compact p{margin-bottom:4px}.upload-panel.is-compact h2{font-size:1.95rem}.upload-panel.is-compact .section-kicker{margin-bottom:4px}.upload-panel.is-compact .backend-upload-status{margin-top:8px;padding:8px 10px}.upload-panel.is-compact .dropzone{grid-template-columns:auto minmax(0,auto);gap:6px;min-height:68px;padding:14px 12px}.upload-panel.is-compact .dropzone svg{width:20px;height:20px}.upload-panel.is-compact .sample-action{min-height:36px}.upload-panel.is-compact .upload-actions{gap:8px}.upload-panel.is-compact .server-projects{gap:8px;margin-top:10px}.upload-panel.is-compact .server-projects-heading{font-size:.78rem}.upload-panel.is-compact .server-projects-heading button,.upload-panel.is-compact .server-project button{border-radius:7px;min-height:28px}.upload-panel.is-compact .server-projects-heading button{padding:0 8px}.upload-panel.is-compact .server-project-list{gap:6px}.upload-panel.is-compact .server-project{gap:8px;padding:8px}.upload-panel.is-compact .server-project strong{margin-bottom:1px;font-size:1rem}.upload-panel.is-compact .server-project span,.upload-panel.is-compact .server-project small,.upload-panel.is-compact .server-project-empty{font-size:.79rem;line-height:1.28}.upload-panel.is-compact .server-project button{width:30px}.upload-panel.is-compact .server-project-actions{gap:6px}.upload-panel.is-compact .server-project-actions button:first-child{padding:0 10px}.upload-actions{gap:12px;display:grid}.backend-upload-status{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;gap:4px;margin-top:18px;padding:12px 14px;display:grid}.backend-upload-status span,.backend-upload-status small{color:var(--muted);font-size:.82rem}.backend-upload-status strong{overflow-wrap:anywhere}.backend-upload-status.is-creating,.backend-upload-status.is-uploading,.backend-upload-status.is-analyzing{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel-strong))}.backend-upload-status.is-ready{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));background:color-mix(in srgb, var(--accent) 9%, var(--panel-strong))}.backend-upload-status.is-error{border-color:color-mix(in srgb, var(--gold) 55%, var(--line));background:color-mix(in srgb, var(--gold) 10%, var(--panel-strong))}.server-projects{gap:10px;margin-top:14px;display:grid}.server-projects-heading{color:var(--muted);text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font-size:.82rem;font-weight:700;display:flex}.server-projects-heading button,.server-project button{border:1px solid var(--line);background:var(--panel);min-height:32px;color:var(--muted);cursor:pointer;border-radius:8px}.server-projects-heading button{text-transform:none;padding:0 10px;font-weight:650}.server-project-list{gap:8px;display:grid}.server-project{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.server-project.is-ready,.server-project.is-analysis_ready{border-color:color-mix(in srgb, var(--accent) 42%, var(--line));background:color-mix(in srgb, var(--accent) 7%, var(--panel-strong))}.server-project.is-failed,.server-project.is-analysis_failed{border-color:color-mix(in srgb, var(--gold) 50%, var(--line))}.server-project strong,.server-project span,.server-project small{overflow-wrap:anywhere;display:block}.server-project strong{margin-bottom:2px}.server-project span,.server-project small,.server-project-empty{color:var(--muted);font-size:.84rem}.server-project button{place-items:center;width:34px;padding:0;display:grid}.server-project-actions{align-items:center;gap:8px;display:flex}.server-project-actions button:first-child{width:auto;color:var(--text);padding:0 12px;font-weight:760}.confirm-backdrop{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1118167a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:16px;width:min(460px,100%);padding:22px;display:grid;box-shadow:0 24px 70px #0000003d}.confirm-icon{color:#b42318;background:color-mix(in srgb, #b42318 10%, var(--panel-strong));border-radius:8px;place-items:center;width:46px;height:46px;display:grid}.confirm-dialog h2{overflow-wrap:anywhere;margin:0 0 8px;font-size:1.32rem}.confirm-dialog p{margin:0}.confirm-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.dropzone{border:1px dashed var(--accent);min-height:174px;color:var(--accent-strong);background:color-mix(in srgb, var(--accent) 8%, transparent);cursor:pointer;border-radius:8px;align-content:center;place-items:center;gap:10px;display:grid}.dropzone input{opacity:0;pointer-events:none;position:absolute}.dropzone.is-busy{opacity:.72;cursor:progress}.sample-action{justify-content:center}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px;display:grid}.metric-card{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;min-height:88px;padding:14px}.metric-card span{color:var(--muted);font-size:.82rem}.metric-card strong{margin-top:10px;font-size:1.9rem;display:block}.file-list{gap:12px;display:grid}.file-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(220px,.75fr) 32px;align-items:start;gap:16px;padding-top:12px;display:grid}.file-row>div,.file-row p{min-width:0}.file-row strong,.file-row span{overflow-wrap:anywhere}.file-row span{color:var(--muted);margin-top:4px;font-size:.84rem;display:block}.file-row p{overflow-wrap:anywhere;margin:0;font-size:.92rem;line-height:1.38}.file-row svg,.guardrail-list svg{color:var(--accent);flex:none}.model-summary,.model-details{align-content:start;gap:16px;display:grid}.model-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.model-status-grid article{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;align-content:center;gap:7px;min-height:112px;padding:14px;display:grid}.model-status-grid article svg{color:var(--muted)}.model-status-grid article.is-ready{border-color:color-mix(in srgb, var(--accent) 42%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.model-status-grid article.is-ready svg{color:var(--accent)}.model-status-grid span,.ifc-grid span,.mesh-facts span{color:var(--muted);text-transform:uppercase;font-size:.8rem;font-weight:760}.ifc-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.ifc-grid div,.mesh-facts div{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;align-content:center;gap:8px;min-height:78px;padding:12px;display:grid}.ifc-grid strong,.mesh-facts strong{font-size:1.45rem}.mesh-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.model-studio{gap:12px;display:grid}.model-studio-body{display:block;position:relative}.model-canvas-shell{aspect-ratio:16/10;overscroll-behavior:contain;border:1px solid var(--line);background:radial-gradient(circle at 28% 18%,#ffffffb8,#0000 28%),linear-gradient(135deg,#d8d9d3,#eef0ec 58%,#cbd2d4);border-radius:8px;min-width:0;position:relative;overflow:hidden}.viewer-capture-action{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:color-mix(in srgb, var(--accent) 92%, #111);border:1px solid color-mix(in srgb, var(--accent) 64%, white);color:#fff;cursor:pointer;z-index:5;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-size:.84rem;font-weight:900;line-height:1;display:inline-flex;position:absolute;top:14px;right:14px;box-shadow:0 16px 34px #0000002e}.model-canvas-shell .viewer-capture-action,.thatopen-ifc-stage-shell .viewer-capture-action{right:118px}.viewer-material-select-action{z-index:6;border:1px solid color-mix(in srgb, var(--accent) 32%, var(--line));background:color-mix(in srgb, var(--panel-strong) 92%, transparent);min-height:36px;color:var(--text);font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:8px;align-items:center;gap:7px;padding:0 11px;font-size:.78rem;font-weight:800;display:inline-flex;position:absolute;top:14px;left:14px;box-shadow:0 12px 28px #00000024}.viewer-material-select-action:hover,.viewer-material-select-action.is-active{border-color:color-mix(in srgb, var(--accent) 62%, var(--line));background:color-mix(in srgb, var(--accent) 18%, var(--panel-strong));color:var(--accent-strong)}.viewer-panel-toggle{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:color-mix(in srgb, var(--panel-strong) 94%, transparent);border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));color:var(--accent-strong);cursor:pointer;z-index:6;border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;padding:0;display:inline-flex;position:absolute;top:14px;right:14px;box-shadow:0 14px 30px #00000024}.viewer-panel-toggle:hover,.viewer-panel-toggle[aria-expanded=true]{background:color-mix(in srgb, var(--accent) 12%, var(--panel-strong));border-color:color-mix(in srgb, var(--accent) 54%, var(--line));color:var(--accent-strong)}.viewer-fullscreen-action{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:color-mix(in srgb, var(--panel-strong) 94%, transparent);border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));color:var(--accent-strong);cursor:pointer;z-index:6;border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;padding:0;display:inline-flex;position:absolute;top:14px;right:66px;box-shadow:0 14px 30px #00000024}.viewer-fullscreen-action:hover{background:color-mix(in srgb, var(--accent) 12%, var(--panel-strong));border-color:color-mix(in srgb, var(--accent) 54%, var(--line))}.model-studio.is-viewer-fullscreen,.thatopen-ifc.is-viewer-fullscreen{background:var(--panel);border:0;border-radius:0;width:100%;max-width:none;height:100%;margin:0;padding:0;overflow:hidden}.model-studio.is-viewer-focus-mode,.thatopen-ifc.is-viewer-focus-mode{z-index:2000;position:fixed;inset:0}.model-studio.is-viewer-fullscreen{display:block}.model-studio.is-viewer-fullscreen .model-studio-body,.model-studio.is-viewer-fullscreen .model-canvas-shell{width:100%;height:100%;min-height:0}.model-studio.is-viewer-fullscreen .model-canvas-shell{aspect-ratio:auto;border:0;border-radius:0}.thatopen-ifc.is-viewer-fullscreen{grid-template-rows:minmax(0,1fr);display:grid}.thatopen-ifc.is-viewer-fullscreen .thatopen-ifc-header,.thatopen-ifc.is-viewer-fullscreen .thatopen-ifc-error-detail,.thatopen-ifc.is-viewer-fullscreen .thatopen-ifc-inspector,.thatopen-ifc.is-viewer-fullscreen .thatopen-ifc-footer{display:none}.thatopen-ifc.is-viewer-fullscreen .thatopen-ifc-stage-shell,.thatopen-ifc.is-viewer-fullscreen .thatopen-ifc-stage{width:100%;height:100%;min-height:0}.thatopen-ifc.is-viewer-fullscreen .thatopen-ifc-stage{border:0;border-radius:0}.viewer-capture-action:disabled{background:color-mix(in srgb, var(--panel) 84%, transparent);border-color:color-mix(in srgb, var(--line) 76%, transparent);color:var(--muted);cursor:not-allowed}.viewer-capture-action:not(:disabled):hover{background:var(--accent-strong)}@media (width<=700px){.model-canvas-shell .viewer-capture-action,.thatopen-ifc-stage-shell .viewer-capture-action{justify-content:center;width:42px;padding:0}.viewer-capture-label{display:none}}.model-canvas{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.model-canvas:active{cursor:grabbing}.model-canvas-shell.is-inspecting-layer .model-canvas,.model-canvas-shell.is-inspecting-material .model-canvas{cursor:crosshair}.model-canvas-help{border:1px solid color-mix(in srgb, var(--panel) 52%, transparent);background:color-mix(in srgb, var(--ink) 72%, transparent);color:#fff;pointer-events:none;border-radius:999px;max-width:calc(100% - 24px);padding:7px 10px;font-size:.75rem;font-weight:720;position:absolute;bottom:12px;left:12px}.model-material-selection-card{z-index:7;border:1px solid color-mix(in srgb, #63e6cf 58%, var(--line));background:color-mix(in srgb, var(--panel) 92%, transparent);width:min(460px,100% - 24px);color:var(--text);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:9px;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;padding:10px 12px;display:grid;position:absolute;top:58px;left:12px;box-shadow:0 18px 42px #00000038}.model-material-selection-heading{gap:2px;min-width:0;display:grid}.model-material-selection-heading span{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:850}.model-material-selection-heading strong,.model-material-selection-heading small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.model-material-selection-heading strong{font-size:.95rem}.model-material-selection-heading small,.model-material-selection-meta{color:var(--muted);font-size:.72rem}.model-material-selection-meta{flex-wrap:wrap;grid-column:1/-1;gap:4px 10px;display:flex}.model-material-selection-meta span:first-child{text-transform:uppercase;font-weight:800}.model-material-selection-meta .is-loaded{color:#2fa579}.model-material-selection-meta .is-failed,.model-material-selection-meta .is-missing{color:#d67b35}.model-material-selection-actions{align-items:start;gap:6px;display:flex}.model-material-selection-actions button{border:1px solid var(--line);background:var(--panel-strong);min-height:32px;color:inherit;font:inherit;cursor:pointer;border-radius:7px;padding:0 10px;font-size:.74rem;font-weight:800}.model-material-selection-actions button:disabled{cursor:not-allowed}.model-layer-hover-card{z-index:3;border:1px solid color-mix(in srgb, var(--accent) 54%, var(--line));background:color-mix(in srgb, var(--panel) 94%, white);width:min(280px,100% - 24px);color:var(--ink);pointer-events:none;border-radius:8px;gap:3px;padding:10px 12px;display:grid;position:absolute;box-shadow:0 18px 42px #00000029}.model-layer-hover-card span{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:820}.model-layer-hover-card strong{color:var(--accent);font-size:1rem}.model-layer-hover-card em,.model-layer-hover-card small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;font-style:normal;font-weight:720;overflow:hidden}.model-layer-hover-card b{margin-top:3px;font-size:.78rem}.model-layer-selection-card{z-index:4;border:1px solid color-mix(in srgb, var(--accent) 54%, var(--line));background:color-mix(in srgb, var(--panel) 96%, white);border-radius:8px;gap:8px;width:min(320px,100% - 24px);padding:12px;display:grid;position:absolute;bottom:12px;right:12px;box-shadow:0 18px 42px #0000002e}.model-layer-selection-card span{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:820}.model-layer-selection-card strong{color:var(--ink);font-size:.95rem}.model-layer-selection-card select{border:1px solid var(--line);background:var(--panel-strong);width:100%;color:var(--ink);font:inherit;border-radius:8px;padding:8px 10px;font-size:.8rem;font-weight:760}.model-layer-selection-card div{gap:8px;display:flex}.model-layer-selection-card button{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--line));background:var(--panel);min-height:34px;color:var(--accent);font:inherit;cursor:pointer;border-radius:8px;padding:0 12px;font-size:.78rem;font-weight:820}.model-canvas-overlay{color:var(--muted);background:color-mix(in srgb, var(--panel) 42%, transparent);text-align:center;pointer-events:none;align-content:center;place-items:center;gap:10px;display:grid;position:absolute;inset:0}.viewer-controls,.model-controls{align-content:start;gap:12px;display:grid}.model-controls{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:color-mix(in srgb, var(--panel) 92%, transparent);border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));box-shadow:var(--shadow-soft);color:var(--text);z-index:6;border-radius:8px;width:min(360px,100% - 28px);max-height:calc(100% - 82px);padding:12px;position:absolute;top:68px;right:14px;overflow:auto}.model-controls.is-collapsed{display:none}.viewer-control-section,.model-control-section{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));background:color-mix(in srgb, var(--panel-strong) 86%, transparent);border-radius:8px;overflow:hidden}.viewer-control-section>summary,.model-control-section>summary{min-height:42px;color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:.82rem;font-weight:860;list-style:none;display:flex}.viewer-control-section>summary::-webkit-details-marker{display:none}.model-control-section>summary::-webkit-details-marker{display:none}.viewer-control-section>summary:after,.model-control-section>summary:after{content:"+";aspect-ratio:1;border:1px solid var(--line);width:24px;color:var(--muted);border-radius:999px;flex:none;place-items:center;font-weight:900;display:grid}.viewer-control-section[open]>summary:after,.model-control-section[open]>summary:after{content:"-"}.viewer-control-section>:not(summary),.model-control-section>:not(summary),.viewer-control-section>label,.model-control-section>label{margin:0 10px 10px}.viewer-controls label,.model-controls label{color:var(--muted);gap:7px;font-size:.84rem;font-weight:720;display:grid}.viewer-controls input[type=range],.model-controls input[type=range]{width:100%;accent-color:var(--accent)}.model-render-style-control{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--line));background:color-mix(in srgb, var(--panel-strong) 86%, var(--accent-soft));border-radius:8px;gap:8px;padding:10px;display:grid}.model-render-style-control>span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.model-render-style-control>div{gap:7px;display:grid}.model-render-style-control button{border:1px solid var(--line);background:var(--panel);min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:8px;gap:3px;padding:9px 10px;display:grid}.model-render-style-control button.is-active{border-color:color-mix(in srgb, var(--accent) 70%, var(--line));background:color-mix(in srgb, var(--accent-soft) 68%, var(--panel))}.model-inline-range{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--line));background:color-mix(in srgb, var(--panel-strong) 86%, var(--accent-soft));border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 10px 10px;padding:10px;display:grid}.model-inline-range span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.model-inline-range strong{min-width:46px;color:var(--muted);text-align:right;font-size:.78rem}.model-inline-toggle{cursor:pointer;background:#ffffff06;border:1px solid #68d9c629;border-radius:.75rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .7rem;display:flex}.model-inline-toggle span{gap:.08rem;display:grid}.model-inline-toggle strong{font-size:.8rem}.model-inline-toggle small{color:var(--muted);font-size:.7rem}.model-inline-toggle input{appearance:none;cursor:pointer;background:#0c110f85;border:1px solid #aabcb447;border-radius:999px;width:2.25rem;height:1.25rem;margin:0;transition:background .15s,border-color .15s}.model-inline-toggle input:before{content:"";background:#e1e7e3b8;border-radius:50%;width:.85rem;height:.85rem;margin:.15rem;transition:transform .15s,background .15s;display:block}.model-inline-toggle input:checked{background:#248e7cb8;border-color:#68d9c6b8}.model-inline-toggle input:checked:before{background:#f6fbf8;transform:translate(.95rem)}.model-render-style-control strong{text-overflow:ellipsis;color:var(--ink);white-space:nowrap;font-size:.86rem;font-weight:840;overflow:hidden}.model-render-style-control small{color:var(--muted);font-size:.72rem;font-weight:680;line-height:1.28}.model-nudge-controls{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;grid-template-columns:repeat(3,42px);grid-template-areas:".up.""left reset right"".down.";justify-content:center;gap:8px;padding:8px;display:grid}.model-nudge-controls button{aspect-ratio:1;border:1px solid var(--line);background:var(--panel);width:42px;color:var(--ink);cursor:pointer;border-radius:8px;place-items:center;display:grid}.model-nudge-controls button:hover{border-color:var(--accent);color:var(--accent)}.model-nudge-controls button:first-child{grid-area:up}.model-nudge-controls button:nth-child(2){grid-area:left}.model-nudge-controls button:nth-child(3){grid-area:reset}.model-nudge-controls button:nth-child(4){grid-area:right}.model-nudge-controls button:nth-child(5){grid-area:down}.model-setup-control{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--line));background:color-mix(in srgb, var(--panel-strong) 90%, var(--accent-soft));border-radius:8px;gap:10px;padding:10px;display:grid}.model-setup-control span,.model-setup-control small{color:var(--muted);font-size:.72rem;font-weight:760;display:block}.model-setup-control span{text-transform:uppercase}.model-setup-control strong{color:var(--ink);margin-top:3px;font-size:.92rem;display:block}.model-setup-control small{margin-top:4px;line-height:1.35}.model-setup-save{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--line));background:var(--panel);min-height:38px;color:var(--accent);font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-size:.82rem;font-weight:820;display:inline-flex}.model-setup-save:hover{background:color-mix(in srgb, var(--accent) 12%, var(--panel));color:var(--ink)}.model-storey-presets{gap:7px;display:grid}.model-storey-presets>span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.model-storey-presets select{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--line));background:var(--panel);width:100%;min-height:36px;color:var(--accent);font:inherit;cursor:pointer;border-radius:8px;padding:0 34px 0 10px;font-size:.86rem;font-weight:820}.model-storey-presets select:hover,.model-storey-presets select:focus{background:color-mix(in srgb, var(--accent) 12%, var(--panel));color:var(--ink)}.model-setup-list{gap:6px;display:grid}.model-setup-list article{grid-template-columns:minmax(0,1fr) 34px;gap:6px;display:grid}.model-setup-list button{border:1px solid var(--line);background:var(--panel);min-width:0;color:var(--ink);cursor:pointer;border-radius:8px}.model-setup-list article>button:first-child{text-align:left;padding:8px 10px}.model-setup-list article>button:last-child{color:var(--muted);place-items:center;display:grid}.model-setup-list button:hover{border-color:var(--accent);color:var(--accent)}.model-setup-list strong,.model-setup-list span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.model-setup-list span{text-transform:none;margin-top:2px;font-size:.72rem}.model-panorama-list{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:10px;display:grid}.model-panorama-list article{display:block}.model-panorama-list button{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));background:linear-gradient(180deg, color-mix(in srgb, var(--panel-strong) 86%, white) 0%, var(--panel) 100%);width:100%;min-height:94px;color:var(--ink);text-align:left;box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 8%, transparent);cursor:pointer;border-radius:16px;justify-items:start;gap:4px;padding:12px 14px;transition:transform .14s,border-color .14s,box-shadow .14s,background .14s;display:grid}.model-panorama-list button:hover,.model-panorama-list button:focus-visible{border-color:color-mix(in srgb, var(--accent) 52%, var(--line));background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 10%, var(--panel-strong)) 0%, color-mix(in srgb, var(--accent) 6%, var(--panel)) 100%);box-shadow:0 12px 28px color-mix(in srgb, var(--accent) 14%, transparent);outline:none;transform:translateY(-1px)}.model-panorama-list small{background:color-mix(in srgb, var(--accent) 10%, var(--panel-strong));min-width:36px;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;place-items:center;padding:4px 8px;font-size:.68rem;font-weight:860;display:inline-grid}.model-panorama-list strong{color:var(--ink);text-wrap:balance;font-size:1rem;font-weight:860;line-height:1.08}.model-panorama-list span{color:var(--muted);font-size:.72rem;font-weight:720;line-height:1.25}.model-section-control{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--line));background:color-mix(in srgb, var(--accent) 5%, var(--panel-strong));border-radius:8px;gap:10px;padding:10px;display:grid}.model-section-control span,.model-section-control small{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:760;display:block}.model-section-control strong{color:var(--ink);margin-top:3px;font-size:.94rem;display:block}.model-section-control small{text-transform:none;margin-top:4px;font-weight:620;line-height:1.35}.model-section-control button{border:1px solid color-mix(in srgb, var(--accent) 42%, var(--line));background:var(--panel);width:100%;color:var(--accent);font:inherit;text-align:left;cursor:pointer;border-radius:8px;padding:10px 12px;font-size:.82rem;font-weight:820}.model-section-control button:hover,.model-section-control button.is-active{background:color-mix(in srgb, var(--accent) 13%, var(--panel));color:var(--ink)}.model-section-control label{gap:7px;display:grid}.model-section-control input{width:100%;accent-color:var(--accent)}.model-section-fine-row{grid-template-columns:54px minmax(0,1fr) 54px;gap:7px;display:grid}.model-section-fine-row button,.model-section-fine-row input{border:1px solid var(--line);background:var(--panel);min-height:34px;color:var(--ink);font:inherit;border-radius:8px;font-size:.78rem;font-weight:760}.model-section-fine-row button{text-align:center;padding:0 8px}.model-section-fine-row input{padding:0 9px}.model-section-snaps{gap:7px;display:grid}.model-section-snaps>span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.model-section-snaps>div{flex-wrap:wrap;gap:6px;display:flex}.model-section-snaps button{border-radius:999px;align-items:center;gap:6px;width:auto;padding:6px 9px;font-size:.74rem;display:inline-flex}.model-section-snaps button small{color:inherit;margin:0;font-size:.7rem}.model-layer-control{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--line));background:color-mix(in srgb, var(--panel-strong) 86%, var(--accent-soft));border-radius:8px;gap:10px;padding:10px;display:grid}.model-layer-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.model-layer-head span,.model-layer-control small{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:760;display:block}.model-layer-head strong{color:var(--ink);margin-top:3px;font-size:.94rem;display:block}.model-layer-head>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.model-layer-head button{border:1px solid var(--line);background:var(--panel);color:var(--accent);font:inherit;cursor:pointer;border-radius:999px;padding:6px 9px;font-size:.72rem;font-weight:820}.model-layer-head button.is-active{border-color:color-mix(in srgb, var(--accent) 58%, var(--line));background:color-mix(in srgb, var(--accent) 10%, var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 26%, transparent)}.model-layer-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.model-layer-list button{border:1px solid var(--line);background:var(--panel);min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:8px;gap:2px;padding:8px;display:grid}.model-layer-list button.is-active{border-color:color-mix(in srgb, var(--accent) 52%, var(--line));background:color-mix(in srgb, var(--accent) 9%, var(--panel))}.model-layer-list button:not(.is-active){opacity:.54}.model-layer-list button.is-empty{opacity:.42;cursor:not-allowed}.model-layer-list span{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:840;overflow:hidden}.model-layer-list strong{color:var(--accent);font-size:.72rem}.model-layer-list small{text-transform:none;text-overflow:ellipsis;white-space:nowrap;font-weight:620;line-height:1.25;overflow:hidden}.model-layer-control p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.35}.model-group-diagnostics{gap:8px;min-width:0;display:grid}.model-group-diagnostics>button{border:1px solid var(--line);background:var(--panel);color:var(--accent);font:inherit;cursor:pointer;border-radius:999px;justify-self:start;padding:7px 10px;font-size:.76rem;font-weight:820}.model-group-diagnostics-modal{z-index:80;background:color-mix(in srgb, var(--ink) 24%, transparent);place-items:center;padding:28px;display:grid;position:fixed;inset:0}.model-group-diagnostics-panel{border:1px solid var(--line);background:var(--panel);width:min(1500px,100vw - 56px);max-height:calc(100vh - 56px);box-shadow:0 24px 80px color-mix(in srgb, var(--ink) 22%, transparent);border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);gap:14px;padding:18px;display:grid}.model-group-diagnostics-title{justify-content:space-between;align-items:start;gap:16px;display:flex}.model-group-diagnostics-heading{gap:4px;display:grid}.model-group-diagnostics-title span{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;font-size:.78rem;font-weight:850}.model-group-diagnostics-title small{color:var(--muted);font-size:.78rem;font-weight:650}.model-group-diagnostics-title strong{color:var(--ink);font-size:1.3rem}.model-group-diagnostics-actions{flex:none;justify-content:end;align-items:center;gap:8px;display:flex}.model-group-diagnostics-actions button{border:1px solid var(--line);background:var(--panel-strong);width:34px;height:34px;color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;font-size:1.15rem;font-weight:700}.model-group-diagnostics-actions button:first-child{width:auto;color:var(--accent);padding:0 12px;font-size:.78rem;font-weight:820}.model-group-diagnostics-actions button:disabled{opacity:.45;cursor:default}.model-group-diagnostics-tools{grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:12px;display:grid}.model-group-diagnostics-tools label{gap:6px;display:grid}.model-group-diagnostics-tools label span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:850}.model-group-diagnostics-tools input,.model-group-bulk-assign select{border:1px solid var(--line);background:var(--panel-strong);width:100%;color:var(--ink);font:inherit;border-radius:8px;padding:10px 12px;font-size:.84rem;font-weight:720}.model-group-diagnostics-tools>small{color:var(--muted);white-space:nowrap;font-size:.78rem;font-weight:800}.model-group-bulk-assign{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--line));background:color-mix(in srgb, var(--accent-soft) 58%, var(--panel));border-radius:8px;grid-column:1/-1;grid-template-columns:auto minmax(220px,320px) auto auto;align-items:center;gap:8px;padding:10px;display:grid}.model-layer-control .model-group-bulk-assign{grid-template-columns:1fr;gap:10px}.model-layer-control .model-group-bulk-assign button{width:100%}.model-group-bulk-assign strong{color:var(--ink);font-size:.82rem}.model-group-bulk-assign button{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--line));background:var(--panel);min-height:38px;color:var(--accent);font:inherit;cursor:pointer;border-radius:8px;padding:0 12px;font-size:.78rem;font-weight:820}.model-group-diagnostics-table{border:1px solid var(--line);background:var(--panel);border-radius:8px;max-height:min(72vh,900px);display:grid;overflow:auto}.model-group-diagnostics-table>div{border-bottom:1px solid var(--line);min-width:1460px;color:var(--muted);grid-template-columns:minmax(230px,1.1fr) minmax(150px,.6fr) minmax(190px,.8fr) minmax(560px,2.2fr) 110px 150px;align-items:center;gap:14px;padding:10px 12px;font-size:.82rem;display:grid}.model-group-diagnostics-table>div:first-child{z-index:1;background:var(--panel-strong);color:var(--muted);text-transform:uppercase;font-weight:840;position:sticky;top:0}.model-group-diagnostics-table>div:last-child{border-bottom:0}.model-group-diagnostics-table>div.is-hidden{opacity:.46}.model-group-diagnostics-table>div.is-selected{background:color-mix(in srgb, var(--accent-soft) 70%, var(--panel));outline:2px solid color-mix(in srgb, var(--accent) 44%, transparent);outline-offset:-2px}.model-group-diagnostics-table strong,.model-group-diagnostics-table small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.model-group-diagnostics-table strong{color:var(--ink);font-size:.86rem}.model-group-diagnostics-table em{color:var(--accent);gap:2px;font-style:normal;font-weight:780;display:grid}.model-group-diagnostics-table em small{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:780}.model-group-diagnostics-table select{border:1px solid var(--line);background:var(--panel-strong);width:100%;min-width:0;color:var(--ink);font:inherit;border-radius:8px;padding:8px 10px;font-size:.78rem;font-weight:760}.model-texture-diagnostics{gap:10px;min-width:0;display:grid}.model-texture-diagnostics-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.model-texture-diagnostics-summary article{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:4px;min-width:0;padding:10px;display:grid}.model-texture-diagnostics-summary span,.model-texture-diagnostics-summary small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:780;overflow:hidden}.model-texture-diagnostics-summary span{text-transform:uppercase}.model-texture-diagnostics-summary strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.model-texture-diagnostics-warning{border:1px solid color-mix(in srgb, #b85b00 48%, var(--line));background:color-mix(in srgb, #b85b00 10%, var(--panel));color:var(--ink);border-radius:8px;margin:0;padding:9px 10px;font-size:.78rem;font-weight:720;line-height:1.35}.model-texture-diagnostics-actions{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.model-texture-diagnostics-actions>button{border:1px solid var(--line);background:var(--panel);color:var(--accent);font:inherit;cursor:pointer;border-radius:999px;justify-self:start;padding:7px 10px;font-size:.76rem;font-weight:820}.model-texture-diagnostics-actions>small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:740;overflow:hidden}.model-texture-diagnostics-modal{z-index:82;background:color-mix(in srgb, var(--ink) 24%, transparent);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.model-texture-diagnostics-panel{border:1px solid var(--line);background:var(--panel);width:min(1760px,100vw - 32px);height:min(960px,100dvh - 32px);max-height:calc(100dvh - 32px);box-shadow:0 24px 80px color-mix(in srgb, var(--ink) 22%, transparent);border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);gap:16px;padding:22px;display:grid}.model-texture-diagnostics-title{justify-content:space-between;align-items:start;gap:16px;min-width:0;display:flex}.model-texture-diagnostics-heading{gap:4px;min-width:0;display:grid}.model-texture-diagnostics-title span{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;font-size:.78rem;font-weight:850}.model-texture-diagnostics-title strong{color:var(--ink);font-size:1.45rem}.model-texture-diagnostics-title small{color:var(--muted);overflow-wrap:anywhere;font-size:.84rem;font-weight:650;line-height:1.4}.model-texture-diagnostics-title-actions{flex:none;justify-content:end;align-items:center;gap:8px;display:flex}.model-texture-diagnostics-title-actions button{border:1px solid var(--line);background:var(--panel-strong);width:34px;height:34px;color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;font-size:1.15rem;font-weight:700}.model-texture-diagnostics-title-actions button:first-child{width:auto;color:var(--accent);padding:0 12px;font-size:.78rem;font-weight:820}.model-texture-diagnostics-tools{grid-template-columns:minmax(320px,1fr) auto minmax(280px,auto);align-items:end;gap:14px;display:grid}.model-texture-diagnostics-tools label{gap:6px;display:grid}.model-texture-diagnostics-tools label span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:850}.model-texture-diagnostics-tools input{border:1px solid var(--line);background:var(--panel-strong);width:100%;color:var(--ink);font:inherit;border-radius:8px;padding:11px 13px;font-size:.9rem;font-weight:720}.model-texture-diagnostics-tools>small{color:var(--muted);white-space:nowrap;font-size:.84rem;font-weight:800}.model-texture-diagnostics-filters{flex-wrap:wrap;justify-content:end;gap:6px;display:flex}.model-texture-diagnostics-filters button{border:1px solid var(--line);background:var(--panel-strong);min-height:40px;color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:.82rem;font-weight:800;display:inline-flex}.model-texture-diagnostics-filters button.is-active{border-color:color-mix(in srgb, var(--accent) 58%, var(--line));background:color-mix(in srgb, var(--accent-soft) 72%, var(--panel));color:var(--accent)}.model-texture-diagnostics-filters small{color:inherit;font-size:.68rem;font-weight:850}.model-texture-diagnostics-table{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-height:0;display:grid;overflow:auto}.model-texture-diagnostics-table>div{border-bottom:1px solid var(--line);min-width:1180px;color:var(--muted);grid-template-columns:132px minmax(240px,.85fr) minmax(260px,1fr) minmax(320px,1.15fr) 150px;align-items:start;gap:16px;padding:14px 16px;font-size:.9rem;display:grid}.model-texture-diagnostics-table>div:first-child{z-index:1;background:var(--panel-strong);color:var(--muted);text-transform:uppercase;font-weight:840;position:sticky;top:0}.model-texture-diagnostics-table>div:last-child{border-bottom:0}.model-texture-diagnostics-table>div>div{gap:4px;min-width:0;display:grid}.model-texture-diagnostics-table strong,.model-texture-diagnostics-table span,.model-texture-diagnostics-table small{text-overflow:ellipsis;overflow:hidden}.model-texture-diagnostics-table strong{text-transform:uppercase;font-size:.84rem}.model-texture-diagnostics-table .is-loaded strong{color:#2f7d52}.model-texture-diagnostics-table .is-pending strong{color:var(--accent)}.model-texture-diagnostics-table .is-missing strong,.model-texture-diagnostics-table .is-failed strong{color:#b85b00}.model-texture-diagnostics-table>div:first-child span{white-space:nowrap}.model-texture-diagnostics-table>div:not(:first-child) span,.model-texture-diagnostics-table>div:not(:first-child) small{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;overflow:visible}.model-texture-diagnostics-row-actions{align-content:start;gap:8px;display:grid}.model-texture-diagnostics-row-actions button{border:1px solid color-mix(in srgb, var(--accent) 40%, var(--line));background:color-mix(in srgb, var(--accent-soft) 72%, var(--panel));min-height:36px;color:var(--accent-strong);font:inherit;cursor:pointer;border-radius:8px;padding:0 10px;font-size:.76rem;font-weight:820}.model-texture-diagnostics-row-actions small{color:var(--muted);text-transform:uppercase;font-size:.74rem}.model-texture-diagnostics>p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.35}.model-generated-material-modal{z-index:84;background:color-mix(in srgb, var(--ink) 38%, transparent);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.model-generated-material-panel{border:1px solid var(--line);background:var(--panel);width:min(620px,100vw - 32px);box-shadow:0 24px 80px color-mix(in srgb, var(--ink) 28%, transparent);border-radius:12px;gap:16px;padding:20px;display:grid}.model-generated-material-title{justify-content:space-between;align-items:start;gap:16px;display:flex}.model-generated-material-title button,.model-generated-material-actions button,.model-generated-material-field select,.model-generated-material-field textarea{border:1px solid var(--line);background:var(--panel-strong);color:var(--ink);font:inherit;border-radius:8px}.model-generated-material-title button,.model-generated-material-actions button{cursor:pointer;min-height:38px;padding:0 12px}.model-generated-material-heading{gap:4px;min-width:0;display:grid}.model-generated-material-heading span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:850}.model-generated-material-heading strong{color:var(--ink);font-size:1.2rem}.model-generated-material-heading small{color:var(--muted);line-height:1.4}.model-generated-material-field{gap:6px;display:grid}.model-generated-material-field span{color:var(--muted);text-transform:uppercase;font-size:.74rem;font-weight:820}.model-generated-material-field select{min-height:42px;padding:0 12px}.model-generated-material-field textarea{resize:vertical;width:100%;min-height:140px;padding:12px;line-height:1.45}.model-generated-material-preview{grid-template-columns:160px minmax(0,1fr);align-items:center;gap:16px;display:grid}.model-generated-material-swatch{aspect-ratio:1;border:1px solid var(--line);background:var(--panel-strong);border-radius:10px;overflow:hidden}.model-generated-material-swatch img{object-fit:cover;width:100%;height:100%;display:block}.model-generated-material-preview-copy{gap:6px;display:grid}.model-generated-material-preview-copy strong{color:var(--ink);font-size:1rem}.model-generated-material-preview-copy small{color:var(--muted);line-height:1.4}.model-generated-material-actions{justify-content:end;gap:10px;display:flex}.model-generated-material-actions .is-primary{border-color:color-mix(in srgb, var(--accent) 40%, var(--line));background:color-mix(in srgb, var(--accent) 82%, white);color:#fff}@media (width<=1180px){.model-texture-diagnostics-modal{padding:10px}.model-texture-diagnostics-panel{width:calc(100vw - 20px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);padding:16px}.model-texture-diagnostics-title{flex-direction:column;align-items:stretch}.model-texture-diagnostics-title-actions{justify-content:start}.model-texture-diagnostics-tools{grid-template-columns:1fr;align-items:stretch}.model-texture-diagnostics-tools>small{white-space:normal}.model-texture-diagnostics-filters{justify-content:start}.model-texture-diagnostics-table>div{grid-template-columns:112px minmax(220px,.9fr) minmax(240px,1fr) minmax(260px,1fr) 140px;gap:12px;min-width:1080px;padding:12px}}@media (width<=720px){.model-texture-diagnostics-panel{gap:12px;padding:12px}.model-texture-diagnostics-title strong{font-size:1.2rem}.model-texture-diagnostics-title-actions button:first-child{width:100%;min-height:38px}.model-generated-material-panel{width:calc(100vw - 20px);padding:14px}.model-generated-material-title,.model-generated-material-preview,.model-generated-material-actions{flex-direction:column;grid-template-columns:1fr;align-items:stretch}}.model-material-control{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:10px;padding:10px;display:grid}.model-material-control span,.model-material-control small{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:760;display:block}.model-material-control strong{color:var(--ink);margin-top:3px;font-size:.94rem;display:block}.model-material-control small{text-transform:none;margin-top:4px;font-weight:620}.model-material-control input[type=color]{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:8px;width:44px;height:44px;padding:3px}.model-material-swatches{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.model-material-swatches button{border:1px solid var(--line);background:var(--panel);color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 8px;font-size:.74rem;font-weight:720;display:inline-flex}.model-material-swatches button.is-selected{border-color:var(--accent);color:var(--ink)}.model-material-swatches button span{border:1px solid color-mix(in srgb, var(--ink) 18%, transparent);border-radius:999px;width:13px;height:13px}.model-material-detail{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-top:2px;display:grid}.model-material-detail span{color:var(--muted);text-transform:none;font-size:.74rem;font-weight:760}.model-material-detail input{width:100%;accent-color:var(--accent);grid-column:1/-1}.model-material-detail strong{color:var(--ink);font-size:.74rem;font-weight:820}.model-detail-actions{gap:8px;display:grid}.model-detail-actions button{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--line));background:var(--panel);width:100%;color:var(--accent);font:inherit;text-align:left;cursor:pointer;border-radius:8px;padding:10px 12px;font-size:.82rem;font-weight:820}.model-detail-actions button:hover,.model-detail-actions button.is-active{background:color-mix(in srgb, var(--accent) 12%, var(--panel));color:var(--ink)}.model-render-facts{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;flex-wrap:wrap;gap:8px;padding:10px;display:flex}.model-render-facts span{background:var(--panel);min-width:0;color:var(--muted);overflow-wrap:anywhere;border-radius:999px;padding:6px 8px;font-size:.78rem}.material-index{gap:10px;display:grid}.material-index h3{margin:0;font-size:1rem}.material-index>div{flex-wrap:wrap;gap:8px;display:flex}.material-index span{border:1px solid var(--line);background:var(--panel-strong);min-height:34px;color:var(--muted);border-radius:999px;align-items:center;gap:9px;padding:0 11px;font-size:.86rem;display:inline-flex}.material-index strong{color:var(--text)}.ifc-visualizer{gap:16px;display:grid}.ifc-visualizer-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;display:grid}.ifc-visualizer-header p{max-width:74ch}.ifc-visualizer-actions{justify-content:flex-end;align-items:end;gap:10px;display:flex}.ifc-visualizer-actions label{min-width:220px;color:var(--muted);text-transform:uppercase;gap:6px;font-size:.78rem;font-weight:800;display:grid}.ifc-visualizer-actions select,.ifc-search-box input{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--text);font:inherit;border-radius:8px;padding:11px 12px}.ifc-visualizer-shell{grid-template-columns:minmax(0,1fr) minmax(310px,.28fr);align-items:stretch;gap:14px;display:grid}.ifc-viewer-stage{border:1px solid var(--line);background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--panel) 96%, #fff) 0 34%, transparent 62%), linear-gradient(180deg, color-mix(in srgb, var(--panel) 94%, #f8fbff), color-mix(in srgb, var(--panel-strong) 88%, #e3ebe9));border-radius:8px;min-height:620px;position:relative;overflow:hidden}.ifc-viewer-stage svg{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;min-height:620px;display:block}.ifc-viewer-stage svg:active{cursor:grabbing}.ifc-viewer-ground{fill:color-mix(in srgb, var(--panel) 86%, #efe6d6);stroke:color-mix(in srgb, var(--muted) 28%, transparent);stroke-width:.1px;opacity:.34}.ifc-viewer-grid{fill:none;stroke:color-mix(in srgb, var(--muted) 16%, transparent);stroke-width:.08px;vector-effect:non-scaling-stroke}.ifc-viewer-element{cursor:pointer;transition:opacity .14s,stroke-width .14s}.ifc-viewer-prism-face{stroke-width:.28px;vector-effect:non-scaling-stroke;filter:url(#ifcElementShadow)}.ifc-viewer-mesh-face{cursor:pointer;stroke-width:.16px;vector-effect:non-scaling-stroke;filter:url(#ifcElementShadow);transition:opacity .14s,stroke-width .14s}.ifc-viewer-mesh-face.is-ifcslab{filter:none;stroke-width:.12px}.ifc-viewer-mesh-face.is-ifcwindow{fill-opacity:.7}.ifc-viewer-mesh-face:hover,.ifc-viewer-mesh-face.is-selected{stroke:var(--accent);stroke-width:.55px;opacity:1}.ifc-viewer-prism-side{opacity:.9}.ifc-viewer-prism-front{opacity:.96}.ifc-viewer-prism-top,.ifc-viewer-element.is-ifcwall{opacity:1}.ifc-viewer-element.is-ifcwall .ifc-viewer-prism-face{stroke-width:.34px}.ifc-viewer-element.is-ifcslab{opacity:.76}.ifc-viewer-element.is-ifcslab .ifc-viewer-prism-face{filter:none;stroke-width:.18px}.ifc-viewer-element.is-ifcslab .ifc-viewer-prism-side{opacity:.62}.ifc-viewer-element.is-ifcslab .ifc-viewer-prism-front{opacity:.74}.ifc-viewer-element.is-ifcslab .ifc-viewer-prism-top{opacity:.86}.ifc-viewer-element.is-ifcwindow,.ifc-viewer-element.is-ifcdoor{opacity:1}.ifc-viewer-element.is-ifcwindow .ifc-viewer-prism-face,.ifc-viewer-element.is-ifcdoor .ifc-viewer-prism-face{stroke-width:.4px}.ifc-viewer-element:hover,.ifc-viewer-element.is-selected{opacity:1}.ifc-viewer-element:hover .ifc-viewer-prism-face,.ifc-viewer-element.is-selected .ifc-viewer-prism-face{stroke:var(--accent);stroke-width:.72px}.ifc-viewer-zone{fill:#0000;stroke-width:.36px;stroke-dasharray:1.2 .8;opacity:.72;vector-effect:non-scaling-stroke;pointer-events:visibleStroke}.ifc-viewer-zone.is-ifcwindow{stroke:#1d82aa}.ifc-viewer-zone.is-ifcdoor{stroke:#9f6428}.ifc-viewer-overlay{flex-wrap:wrap;gap:8px;max-width:calc(100% - 32px);display:flex;position:absolute;bottom:14px;left:16px}.ifc-viewer-overlay span{border:1px solid color-mix(in srgb, var(--panel) 56%, transparent);background:color-mix(in srgb, var(--ink) 72%, transparent);color:#fff;border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:800}.ifc-viewer-controls{border:1px solid color-mix(in srgb, var(--panel) 56%, transparent);background:color-mix(in srgb, var(--ink) 68%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;align-items:center;gap:6px;padding:6px;display:flex;position:absolute;bottom:14px;right:16px}.ifc-viewer-controls button{color:#fff;min-width:32px;height:32px;font:inherit;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff3d;border-radius:999px;font-size:.78rem;font-weight:850}.ifc-viewer-controls button:hover{background:#ffffff38}.ifc-viewer-empty{min-height:620px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:10px;display:grid}.ifc-viewer-side{align-content:start;gap:12px;min-width:0;display:grid}.ifc-viewer-card{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;gap:12px;padding:12px;display:grid}.ifc-viewer-card>strong,.ifc-viewer-card-head strong{font-size:1rem}.ifc-viewer-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.ifc-viewer-card-head button{border:1px solid var(--line);background:var(--panel);color:var(--accent);cursor:pointer;border-radius:999px;padding:7px 10px;font-weight:800}.ifc-render-mode-toggle{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ifc-render-mode-toggle button{border:1px solid var(--line);background:var(--panel);min-width:0;color:var(--muted);text-align:left;font:inherit;cursor:pointer;border-radius:8px;gap:3px;padding:10px;font-weight:850;display:grid}.ifc-render-mode-toggle button.is-active{border-color:color-mix(in srgb, var(--accent) 46%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel));color:var(--text)}.ifc-render-mode-toggle button:disabled{cursor:not-allowed;opacity:.5}.ifc-render-mode-toggle small{color:var(--muted);font-size:.76rem;font-weight:780}.ifc-card-hint{color:var(--muted);margin:0;font-size:.82rem;line-height:1.35}.ifc-layer-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ifc-layer-list button{border:1px solid var(--line);background:var(--panel);min-width:0;color:var(--muted);text-align:left;cursor:pointer;opacity:.58;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;display:grid}.ifc-layer-list button.is-active{border-color:color-mix(in srgb, var(--accent) 42%, var(--line));color:var(--text);opacity:1}.ifc-layer-list i{border:2px solid;border-radius:50%;width:12px;height:12px}.ifc-layer-list span,.ifc-layer-list small{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;font-weight:820;overflow:hidden}.ifc-zone-toggle{color:var(--muted);align-items:center;gap:8px;font-size:.86rem;font-weight:760;display:flex}.ifc-search-box{color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.ifc-search-box input{min-width:0}.ifc-element-results{gap:7px;max-height:290px;display:grid;overflow:auto}.ifc-element-results button{border:1px solid var(--line);background:var(--panel);min-width:0;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:9px;display:grid}.ifc-element-results button.is-selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.ifc-element-results span,.ifc-selection-card span,.ifc-selection-card dt{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.ifc-element-results strong,.ifc-element-results small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ifc-element-results strong{grid-column:1/-1}.ifc-element-results small{color:var(--muted);font-weight:800}.ifc-selection-card{gap:8px;display:grid}.ifc-selection-card h3,.ifc-selection-card p,.ifc-selection-card dl{margin:0}.ifc-selection-card p{color:var(--muted);overflow-wrap:anywhere}.ifc-selection-card dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.ifc-selection-card div{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:8px}.ifc-selection-card dd{margin:2px 0 0;font-weight:850}.ifc-studio{gap:16px;display:grid}.ifc-studio-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;display:grid}.ifc-studio-header p{max-width:78ch}.ifc-summary-pills,.ifc-opening-rail{flex-wrap:wrap;gap:8px;display:flex}.ifc-summary-pills{justify-content:flex-end}.ifc-summary-pills span,.ifc-opening-rail span{border:1px solid var(--line);background:var(--panel-strong);color:var(--muted);border-radius:999px;padding:7px 10px;font-size:.82rem;font-weight:720}.ifc-studio-grid{grid-template-columns:minmax(190px,.55fr) minmax(0,1.55fr) minmax(250px,.75fr);align-items:stretch;gap:14px;display:grid}.ifc-storey-browser,.ifc-semantic-map,.ifc-context-card{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;align-content:start;gap:12px;min-width:0;padding:14px;display:grid}.ifc-storey-browser h3,.ifc-context-card h3{margin:0;font-size:1rem}.ifc-storey-list{gap:8px;display:grid}.ifc-storey-list button{border:1px solid var(--line);background:var(--panel);color:var(--ink);text-align:left;cursor:pointer;border-radius:8px;gap:5px;padding:12px;display:grid}.ifc-storey-list button.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 9%, var(--panel))}.ifc-storey-list span,.ifc-map-head span,.ifc-class-card span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:760}.ifc-map-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.ifc-map-head div{gap:4px;display:grid}.ifc-map-head small{color:var(--muted);text-align:right}.ifc-class-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.ifc-class-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-content:center;gap:5px;min-height:92px;padding:12px;display:grid}.ifc-class-card.is-ready{border-color:color-mix(in srgb, var(--accent) 36%, var(--line))}.ifc-class-card strong{font-size:1.45rem}.ifc-class-card small,.ifc-opening-rail em,.ifc-context-card li,.ifc-context-warning,.ifc-audit-head small,.ifc-opening-table small,.ifc-opening-table em{color:var(--muted)}.ifc-opening-rail{max-height:132px;padding-top:2px;overflow:auto}.ifc-opening-rail span{overflow-wrap:anywhere;border-radius:8px}.ifc-opening-rail span strong{color:var(--ink);margin-right:6px}.ifc-opening-rail .is-window{background:color-mix(in srgb, #8db6d8 16%, var(--panel))}.ifc-opening-rail .is-door{background:color-mix(in srgb, #c69a65 16%, var(--panel))}.ifc-context-card ul{gap:8px;margin:0;padding-left:18px;display:grid}.ifc-context-warning{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--line));background:color-mix(in srgb, var(--accent) 7%, var(--panel));border-radius:8px;gap:8px;padding:10px;display:flex}.ifc-context-warning svg{color:var(--accent);flex:none}.ifc-geometry-next{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--line));background:color-mix(in srgb, var(--accent-soft) 72%, var(--panel));border-radius:8px;grid-template-columns:auto 1fr;align-items:start;gap:12px;padding:14px;display:grid}.ifc-geometry-next svg{color:var(--accent)}.ifc-geometry-next strong{margin-bottom:6px;display:block}.ifc-geometry-next p{color:var(--muted);margin:0;line-height:1.45}.ifc-geometry-next ul{color:var(--muted);gap:5px;margin:10px 0 0;padding-left:18px;font-size:.86rem;display:grid}.ifc-pbr-preview{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line));background:radial-gradient(circle at 35% 20%, color-mix(in srgb, var(--accent-soft) 76%, transparent), transparent 34%), linear-gradient(145deg, color-mix(in srgb, var(--panel) 76%, #fff), color-mix(in srgb, var(--panel-strong) 92%, #dfe7e4));border-radius:8px;gap:12px;padding:14px;display:grid}.ifc-pbr-stage{border:1px solid var(--line);background:linear-gradient(180deg, color-mix(in srgb, var(--panel) 84%, #f7fbff), color-mix(in srgb, var(--panel-strong) 86%, #d7dedb));border-radius:8px;min-height:360px;position:relative;overflow:hidden}.ifc-pbr-stage svg{width:100%;height:360px;display:block}.ifc-pbr-stage em{color:var(--muted);place-items:center;display:grid;position:absolute;inset:0}.ifc-pbr-ground{fill:#ece8df;opacity:.9}.ifc-pbr-shape{filter:url(#ifcPbrShadow);stroke-linejoin:round;stroke-width:.14px;vector-effect:non-scaling-stroke}.ifc-pbr-shape.is-slab{fill:#d8d1c3;stroke:#928a7c}.ifc-pbr-shape.is-wall{fill:#f5f1ea;stroke:#81796d}.ifc-pbr-shape.is-window{fill:#9ec8dc;stroke:#3d7f98;opacity:.82}.ifc-pbr-shape.is-door{fill:#ba8a55;stroke:#6c4a28}.ifc-pbr-shape.is-stair{fill:#bdb7aa;stroke:#777064}.ifc-pbr-shape.is-other{fill:#dfe8e4;stroke:#aab8b2}.ifc-pbr-zone{fill:#0000;stroke-width:.45px;stroke-dasharray:1.2 .8;vector-effect:non-scaling-stroke;pointer-events:none}.ifc-pbr-zone.is-window{stroke:#2485a8}.ifc-pbr-zone.is-door{stroke:#a6662b}.ifc-pbr-notes{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));background:color-mix(in srgb, var(--panel) 72%, var(--accent-soft));border-radius:8px;gap:4px;padding:10px;display:grid}.ifc-pbr-notes span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.ifc-pbr-notes p{color:var(--muted);margin:0;line-height:1.4}.ifc-quality-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.ifc-quality-grid article{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 78%, var(--panel-strong));border-radius:8px;gap:4px;padding:10px;display:grid}.ifc-quality-grid span,.ifc-audit-head span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.ifc-quality-grid strong{font-size:1.25rem}.ifc-quality-grid small{color:var(--muted);font-size:.76rem}.ifc-plan-preview{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:10px;padding:12px;display:grid}.ifc-footprint-preview{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));background:color-mix(in srgb, var(--accent-soft) 46%, var(--panel));border-radius:8px;gap:10px;padding:12px;display:grid}.ifc-diagnostic-details summary{color:var(--ink);cursor:pointer;justify-content:space-between;gap:12px;font-weight:820;list-style:none;display:flex}.ifc-diagnostic-details summary::-webkit-details-marker{display:none}.ifc-diagnostic-details summary:before{content:"+";aspect-ratio:1;border:1px solid var(--line);width:22px;color:var(--accent);border-radius:999px;flex:none;place-items:center;display:inline-grid}.ifc-diagnostic-details[open] summary:before{content:"-"}.ifc-diagnostic-details summary span{flex:1}.ifc-diagnostic-details summary small{color:var(--muted);font-size:.78rem;font-weight:720}.ifc-plan-warning{border:1px solid color-mix(in srgb, var(--accent) 42%, var(--line));background:color-mix(in srgb, var(--accent-soft) 72%, transparent);color:var(--text);border-radius:8px;grid-template-columns:auto 1fr;align-items:start;gap:10px;padding:10px;font-size:.86rem;line-height:1.35;display:grid}.ifc-plan-warning svg{color:var(--accent)}.ifc-spatial-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.ifc-spatial-head>div{gap:3px;display:grid}.ifc-spatial-head span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.ifc-spatial-head small{color:var(--muted);text-align:right}.ifc-plan-canvas{border:1px solid var(--line);background:linear-gradient(color-mix(in srgb, var(--muted) 12%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--muted) 12%, transparent) 1px, transparent 1px), color-mix(in srgb, var(--panel-strong) 72%, var(--panel));background-size:32px 32px;border-radius:8px;min-height:clamp(300px,42vw,520px);position:relative;overflow:hidden}.ifc-plan-canvas.is-shape-preview{background:radial-gradient(circle at 16% 18%, color-mix(in srgb, var(--accent) 8%, transparent), transparent 28%), linear-gradient(color-mix(in srgb, var(--muted) 9%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--muted) 9%, transparent) 1px, transparent 1px), color-mix(in srgb, var(--panel-strong) 78%, var(--panel));background-size:auto,32px 32px,32px 32px,auto;min-height:clamp(360px,48vw,620px)}.ifc-plan-frame{border:2px solid color-mix(in srgb, var(--muted) 24%, transparent);background:color-mix(in srgb, var(--panel) 64%, transparent);border-radius:4px;position:absolute;inset:6%}.ifc-plan-canvas em{color:var(--muted);text-align:center;place-items:center;font-style:normal;display:grid;position:absolute;inset:0}.ifc-plan-element{border:1px solid color-mix(in srgb, var(--panel) 80%, #000);border-radius:999px;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 2px #0000002e}.ifc-shape-element{opacity:.78;pointer-events:auto;mix-blend-mode:multiply;filter:drop-shadow(0 1px 1px #0000002e);display:block;position:absolute;inset:0}.ifc-shape-element.is-slab{z-index:1;background:color-mix(in srgb, #cfd3cf 56%, var(--panel));opacity:.5}.ifc-shape-element.is-wall{z-index:3;opacity:.72;background:#556161}.ifc-shape-element.is-window{z-index:5;opacity:.88;background:#3f8fcb}.ifc-shape-element.is-door{z-index:6;opacity:.88;background:#b17a36}.ifc-shape-element.is-window.is-hosted,.ifc-shape-element.is-door.is-hosted{filter:drop-shadow(0 0 0 color-mix(in srgb, var(--panel) 90%, transparent)) drop-shadow(0 2px 2px #0000003d)}.ifc-protected-zone{z-index:10;border:2px solid color-mix(in srgb, var(--accent) 72%, #fff);background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--accent) 16%, transparent) 0 5px, transparent 5px 10px);min-width:7px;min-height:7px;box-shadow:0 0 0 2px color-mix(in srgb, var(--panel) 72%, transparent);pointer-events:auto;border-radius:4px;display:block;position:absolute}.ifc-protected-zone.is-door{background:repeating-linear-gradient(135deg,#b17a362e 0 5px,#0000 5px 10px);border-color:#c49a66}.ifc-shape-element.is-stair{z-index:4;background:color-mix(in srgb, var(--accent) 74%, #fff);opacity:.78}.ifc-plan-element.is-origin{z-index:8;background:color-mix(in srgb, var(--ink) 68%, var(--panel));opacity:.7;width:6px;height:6px;box-shadow:0 0 0 2px color-mix(in srgb, var(--panel) 82%, transparent);border-width:0}.ifc-plan-element.is-wall{border-radius:999px;width:12px;height:12px}.ifc-plan-element.is-slab{opacity:.38;border-radius:999px;width:14px;height:14px}.ifc-plan-element.is-window,.ifc-plan-element.is-door{z-index:2;border-radius:999px;width:12px;height:12px}.ifc-plan-element.is-stair{background:var(--accent);border-radius:4px;width:14px;height:14px}.ifc-plan-element.is-wall,.ifc-spatial-legend .is-wall:before{background:#606a6a}.ifc-plan-element.is-window,.ifc-spatial-legend .is-window:before{background:#3f8fcb}.ifc-plan-element.is-door,.ifc-spatial-legend .is-door:before{background:#b07b39}.ifc-plan-element.is-slab,.ifc-plan-element.is-other,.ifc-spatial-legend .is-other:before,.ifc-spatial-legend .is-slab:before{background:var(--accent)}.ifc-spatial-legend .is-stair:before{background:color-mix(in srgb, var(--accent) 72%, #fff)}.ifc-spatial-legend .is-protected:before{border:1px solid var(--accent);background:repeating-linear-gradient(135deg, var(--accent) 0 2px, transparent 2px 4px)}.ifc-spatial-legend{color:var(--muted);flex-wrap:wrap;gap:8px;font-size:.78rem;font-weight:760;display:flex}.ifc-spatial-legend span{align-items:center;gap:6px;display:inline-flex}.ifc-spatial-legend span:before{content:"";border-radius:999px;width:8px;height:8px}.ifc-audit-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;display:grid}.ifc-audit-card{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;gap:12px;min-width:0;padding:14px;display:grid}.ifc-audit-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.ifc-audit-head>div:first-child{gap:4px;display:grid}.ifc-audit-head strong{font-size:1.05rem}.ifc-audit-head small{text-align:right;max-width:250px}.ifc-matrix,.ifc-opening-table{gap:7px;display:grid}.ifc-matrix-row{border:1px solid var(--line);background:var(--panel);color:var(--ink);text-align:left;border-radius:8px;grid-template-columns:minmax(120px,1.35fr) repeat(5,minmax(52px,.55fr));align-items:center;gap:8px;padding:9px 10px;display:grid}button.ifc-matrix-row{cursor:pointer}.ifc-matrix-row.is-head{color:var(--muted);text-transform:uppercase;background:0 0;border-color:#0000;font-size:.72rem;font-weight:820}.ifc-matrix-row.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.ifc-filter-tabs{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.ifc-filter-tabs button{border:1px solid var(--line);background:var(--panel);min-height:30px;color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;padding:0 10px;font-size:.78rem;font-weight:760}.ifc-filter-tabs button.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--panel));color:var(--text)}.ifc-opening-table{max-height:320px;overflow:auto}.ifc-opening-table article{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:minmax(68px,.4fr) minmax(130px,1fr) minmax(90px,.55fr) minmax(90px,.5fr) minmax(150px,.9fr);align-items:center;gap:8px;padding:9px 10px;display:grid}.ifc-opening-table article.is-hosted{border-color:color-mix(in srgb, var(--accent) 30%, var(--line));background:color-mix(in srgb, var(--accent-soft) 32%, var(--panel))}.ifc-opening-table article.is-orphan{border-style:dashed}.ifc-opening-table span{color:var(--text);text-align:center;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:820}.ifc-opening-table .is-window{background:color-mix(in srgb, #8db6d8 22%, var(--panel))}.ifc-opening-table .is-door{background:color-mix(in srgb, #c69a65 24%, var(--panel))}.ifc-opening-table strong,.ifc-opening-table small,.ifc-opening-table em,.ifc-opening-table b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ifc-opening-table em{font-style:normal}.ifc-opening-table b{color:var(--accent);font-size:.76rem}.ifc-host-check{gap:10px;margin-top:4px;display:grid}.ifc-host-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ifc-host-summary article,.ifc-host-list article{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:0;padding:10px}.ifc-host-summary article.is-ready{border-color:color-mix(in srgb, var(--accent) 34%, var(--line));background:color-mix(in srgb, var(--accent-soft) 44%, var(--panel))}.ifc-host-summary article.is-warning{border-color:color-mix(in srgb, #c69a65 46%, var(--line));background:color-mix(in srgb, #c69a65 10%, var(--panel))}.ifc-host-summary span,.ifc-host-list span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.ifc-host-summary strong{margin-top:3px;font-size:1.35rem;display:block}.ifc-host-list{gap:7px;max-height:210px;display:grid;overflow:auto}.ifc-host-list article{grid-template-columns:minmax(76px,.45fr) minmax(140px,1fr) minmax(120px,.7fr);align-items:center;gap:8px;display:grid}.ifc-host-list strong,.ifc-host-list small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ifc-host-list small,.ifc-host-list p{color:var(--muted)}.ifc-protection-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ifc-protection-summary article{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:0;padding:10px}.ifc-protection-summary article.is-ready{border-color:color-mix(in srgb, var(--accent) 34%, var(--line));background:color-mix(in srgb, var(--accent-soft) 44%, var(--panel))}.ifc-protection-summary article.is-warning{border-color:color-mix(in srgb, #c69a65 40%, var(--line));background:color-mix(in srgb, #c69a65 9%, var(--panel))}.ifc-protection-summary span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.ifc-protection-summary strong{margin-top:3px;font-size:1.3rem;display:block}.ifc-protection-summary small{color:var(--muted);line-height:1.35}.ifc-mask-contract{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 86%, var(--accent-soft));border-radius:8px}.ifc-mask-contract summary{cursor:pointer;min-width:0;color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-weight:820;display:flex}.ifc-mask-contract summary span,.ifc-mask-contract summary small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ifc-mask-contract summary small{color:var(--muted);font-size:.8rem;font-weight:740}.ifc-mask-zone-list{gap:6px;padding:0 12px 12px;display:grid}.ifc-mask-zone-list article{border:1px solid color-mix(in srgb, var(--line) 72%, transparent);background:var(--panel);border-radius:7px;min-width:0;padding:8px 10px}.ifc-mask-zone-list span,.ifc-mask-zone-list small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.ifc-mask-zone-list span{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:840}.ifc-mask-zone-list strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-top:2px;display:block;overflow:hidden}.ifc-mask-zone-list small{color:var(--muted);margin-top:2px;font-size:.78rem}.ifc-render-readiness{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));background:color-mix(in srgb, var(--accent) 5%, var(--panel));border-radius:8px;grid-template-columns:minmax(220px,.7fr) minmax(0,1fr) minmax(260px,1fr);gap:14px;padding:14px;display:grid}.ifc-render-score,.ifc-render-metrics article,.ifc-render-plan,.ifc-render-modes{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;gap:6px;min-width:0;padding:12px;display:grid}.ifc-render-score span,.ifc-render-metrics span,.ifc-render-plan span,.ifc-render-modes span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.ifc-render-score strong{color:var(--accent);font-size:2rem}.ifc-render-metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.ifc-render-metrics strong{font-size:1.25rem}.ifc-render-score small,.ifc-render-metrics small,.ifc-render-plan li{color:var(--muted);line-height:1.35}.ifc-render-plan ol{gap:5px;margin:0;padding-left:18px;display:grid}.ifc-render-modes{grid-column:1/-1}.ifc-render-modes>div:first-child{gap:4px;display:grid}.ifc-render-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.ifc-render-mode-grid article{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));background:color-mix(in srgb, var(--accent-soft) 42%, var(--panel));border-radius:8px;gap:6px;padding:12px;display:grid}.ifc-render-mode-grid small{color:var(--accent);text-transform:uppercase;font-size:.72rem;font-weight:820}.ifc-render-mode-grid p{color:var(--muted);margin:0;line-height:1.4}.ifc-render-mode-grid em{color:var(--text);font-size:.78rem;font-style:normal;font-weight:780}.guardrail-list,.preset-list,.chapter-list,.asset-strip,.guardrail-checks{gap:10px;display:grid}.guardrail-check{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px;min-height:74px;padding:12px;display:grid}.guardrail-check svg{color:var(--muted);margin-top:2px}.guardrail-check.is-ready{border-color:color-mix(in srgb, var(--accent) 42%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.guardrail-check.is-ready svg{color:var(--accent)}.guardrail-check.is-warning{border-color:color-mix(in srgb, var(--gold) 48%, var(--line));background:color-mix(in srgb, var(--gold) 10%, var(--panel))}.guardrail-check.is-warning svg{color:var(--gold)}.guardrail-check strong,.guardrail-check span{overflow-wrap:anywhere;display:block}.guardrail-check span{color:var(--muted);margin-top:4px;font-size:.9rem;line-height:1.35}.asset-browser{align-content:start;gap:14px;max-height:min(430px,46dvh);display:grid;position:static;overflow:auto}.asset-browser-expanded{max-height:none}.asset-review-backdrop{z-index:90;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1118168f;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.asset-review-dialog{border:1px solid var(--line);background:var(--bg);border-radius:12px;gap:16px;width:min(1480px,100%);max-height:calc(100dvh - 40px);padding:20px;display:grid;overflow:auto;box-shadow:0 30px 90px #00000047}.asset-review-head{justify-content:space-between;align-items:start;gap:14px;display:flex}.asset-review-head h2,.asset-review-head small{margin:0}.asset-review-head small{color:var(--muted)}.asset-review-head-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.asset-review-close{justify-content:center;align-items:center;min-width:42px;padding-inline:0;display:inline-flex}.asset-review-body{grid-template-columns:minmax(0,1.2fr) minmax(320px,420px);align-items:start;gap:18px;display:grid}.asset-review-preview-action{color:#fff;min-height:38px;font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#111816bd;border:1px solid #ffffff47;border-radius:999px;padding:0 14px;font-weight:780;position:absolute;bottom:14px;right:14px}.asset-review-preview-action:hover{background:#111816e0}.asset-review-fullscreen-stage{place-items:center;padding:16px;display:grid}.asset-review-fullscreen-stage img{border-radius:12px;max-width:min(100%,1500px);max-height:calc(100dvh - 96px);box-shadow:0 24px 80px #0000005c}.asset-review-context{grid-area:auto}.asset-browser-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.asset-browser-toolbar small{color:var(--muted)}.asset-upload-action{position:relative;overflow:hidden}.asset-upload-action input{opacity:0;cursor:pointer;position:absolute;inset:0}.asset-browser-heading{justify-content:space-between;align-items:end;gap:14px;display:flex}.asset-browser-heading h2{margin-bottom:0}.asset-browser-heading>span{border:1px solid var(--line);min-height:34px;color:var(--muted);background:var(--panel-strong);border-radius:999px;align-items:center;padding:0 12px;font-weight:760;display:inline-flex}.asset-group{gap:10px;display:grid}.asset-group-heading{color:var(--muted);justify-content:space-between;align-items:center;font-size:.92rem;display:flex}.asset-group-heading span{background:var(--panel-strong);border-radius:999px;place-items:center;min-width:30px;min-height:28px;display:inline-grid}.asset-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-workbench .asset-strip{scroll-snap-type:x proximity;grid-template-columns:none;grid-auto-columns:minmax(250px,310px);grid-auto-flow:column;padding:2px 2px 10px;display:grid;overflow-x:auto}.asset-manager-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;grid-auto-columns:auto!important;grid-auto-flow:row!important;padding-bottom:0!important;overflow:visible!important}.asset-card{border:1px solid var(--line);background:var(--panel-strong);min-width:0;min-height:88px;color:var(--text);text-align:left;cursor:pointer;scroll-snap-align:start;border-radius:8px;grid-template-columns:22px 78px minmax(0,1fr);align-items:stretch;gap:10px;padding:8px;transition:transform .14s,box-shadow .14s,border-color .14s,background .14s;display:grid;position:relative}.asset-card.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 24%, transparent)}.asset-card.is-highlighted{border-color:color-mix(in srgb, var(--accent) 58%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.asset-card.is-dragging{opacity:.55;transform:scale(.985)}.asset-card.is-drop-target{border-color:color-mix(in srgb, var(--accent) 72%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);background:color-mix(in srgb, var(--accent) 10%, var(--panel-strong))}.asset-card-grip{color:var(--muted);cursor:grab;place-items:center;display:grid}.asset-card:active .asset-card-grip{cursor:grabbing}.asset-thumb{background:linear-gradient(135deg, color-mix(in srgb, var(--blue) 20%, transparent), transparent), var(--panel);min-height:70px;color:var(--muted);border-radius:6px;place-items:center;display:grid;overflow:hidden}.asset-thumb img{object-fit:cover;width:100%;height:100%;display:block}.asset-meta{align-content:center;gap:6px;min-width:0;display:grid}.asset-meta strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.asset-meta small{color:var(--muted);line-height:1.35}.asset-meta em{color:color-mix(in srgb, var(--muted) 86%, var(--accent));font-size:.76rem;font-style:normal}.asset-stage{align-content:start;gap:14px;display:grid}.studio-main{grid-template-columns:minmax(0,1fr) minmax(340px,420px);align-items:start;gap:18px;min-width:0;display:grid}.studio-ai{grid-area:2/1/auto/-1;gap:14px;display:grid}.studio-context{grid-area:1/2;align-content:start;gap:14px;display:grid}.asset-stage{grid-area:1/1}.guided-next{border:1px solid color-mix(in srgb, var(--accent) 42%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel));border-radius:8px;gap:10px;padding:14px;display:grid}.guided-next h2,.guided-next p{margin:0}.guided-next p{color:var(--muted);line-height:1.45}.ai-command-center{gap:14px}.ai-command-copy{gap:7px;display:grid}.ai-source-block{margin-bottom:6px}.ai-start-panel{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--line));background:color-mix(in srgb, var(--accent) 6%, var(--panel));border-radius:8px;gap:12px;padding:14px;display:grid}.ai-start-copy{gap:5px;display:grid}.ai-start-copy small{color:var(--muted);line-height:1.45}.ai-flow-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.ai-flow-steps article{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 8px;min-width:0;padding:10px;display:grid}.ai-flow-steps article.is-ready{border-color:color-mix(in srgb, var(--accent) 42%, var(--line));background:color-mix(in srgb, var(--accent) 7%, var(--panel))}.ai-flow-steps article.is-active{border-color:color-mix(in srgb, var(--accent) 58%, var(--line));box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 13%, transparent)}.ai-flow-steps article.is-blocked{border-color:color-mix(in srgb, var(--gold) 58%, var(--line));background:color-mix(in srgb, var(--gold) 8%, var(--panel))}.ai-flow-steps span{background:var(--panel);width:30px;height:30px;color:var(--muted);border-radius:999px;grid-row:span 2;place-items:center;font-size:.76rem;font-weight:820;display:grid}.ai-flow-steps article.is-ready span,.ai-flow-steps article.is-active span{background:var(--accent);color:#fff}.ai-flow-steps article.is-blocked span{background:var(--gold);color:#fff}.ai-flow-steps strong,.ai-flow-steps small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ai-flow-steps small{color:var(--muted);font-size:.8rem}.guided-actions{gap:8px;display:grid}.guided-actions.ai-primary-actions{flex-wrap:wrap;display:flex}.guided-actions .primary-action,.guided-actions .secondary-action{justify-content:center;width:auto}.context-block{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;gap:5px;padding:12px;display:grid}.context-block span,.context-block small,.context-status-grid span{color:var(--muted);font-size:.8rem}.context-block span,.context-status-grid span{text-transform:uppercase;font-weight:780}.context-block strong{overflow-wrap:anywhere}.context-status-grid{grid-template-columns:repeat(3,minmax(94px,1fr));gap:8px;display:grid}.context-status-grid div{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;gap:6px;padding:10px;display:grid}.context-status-grid strong{overflow-wrap:anywhere;font-size:1.05rem}.stage-frame{aspect-ratio:16/9;border:1px solid var(--line);background:linear-gradient(135deg, #0000000a, transparent 52%), var(--panel-strong);border-radius:8px;place-items:center;min-height:0;max-height:min(62vh,620px);display:grid;overflow:hidden}.stage-frame img,.stage-frame iframe{border:0;width:100%;height:100%;min-height:0;display:block}.stage-frame img{object-fit:contain}.stage-media-content{border:0;width:100%;height:100%;min-height:0;display:block}.stage-media-content.media-placeholder{color:var(--muted);align-content:center;place-items:center;gap:12px;display:grid}.stage-frame .panorama-viewer img,.presentation-media .panorama-viewer img,.viewer-media .panorama-viewer img{object-fit:cover}.stage-placeholder{min-height:300px;color:var(--muted);align-content:center;place-items:center;gap:14px;display:grid}.asset-facts{flex-wrap:wrap;gap:8px;display:flex}.asset-facts span{border:1px solid var(--line);min-height:32px;color:var(--muted);background:var(--panel-strong);border-radius:999px;align-items:center;padding:0 12px;font-size:.86rem;display:inline-flex}.asset-actions{flex-wrap:wrap;gap:10px;display:flex}.guardrail-list span,.chapter-list span{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;align-items:center;gap:10px;min-height:42px;padding:10px 12px;display:flex}.guardrail-list.compact span{overflow-wrap:anywhere;align-items:flex-start;min-height:auto;font-size:.9rem}.warning{gap:8px;display:flex;color:var(--gold)!important}.success-note{color:var(--accent);margin:0;font-weight:720}.active-preset{border:1px solid color-mix(in srgb, var(--accent) 48%, var(--line));background:color-mix(in srgb, var(--accent) 10%, var(--panel));border-radius:8px;padding:14px}.active-preset span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:780}.active-preset strong{overflow-wrap:anywhere;margin-top:6px;display:block}.active-preset p{overflow-wrap:anywhere;margin:6px 0 0}.preset-list{scroll-snap-type:x proximity;grid-template-columns:none;grid-auto-columns:minmax(260px,31%);grid-auto-flow:column;padding:2px 2px 10px;overflow-x:auto}.preset-option{border:1px solid var(--line);background:var(--panel-strong);min-width:0;color:var(--text);text-align:left;cursor:pointer;scroll-snap-align:start;border-radius:8px;padding:13px}.preset-option.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 24%, transparent)}.preset-list span,.preset-list small{color:var(--muted);font-size:.78rem}.preset-list strong{margin:6px 0;display:block}.preset-list p{margin:0 0 12px;font-size:.9rem;line-height:1.42}.preset-list strong,.preset-list small{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.preset-list strong{-webkit-line-clamp:2}.preset-list small,.preset-list p{-webkit-line-clamp:3}.variant-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.ai-adapter-status{border:1px solid var(--line);background:var(--panel-strong);min-height:32px;color:var(--muted);border-radius:999px;align-items:center;padding:0 11px;font-size:.82rem;font-weight:720;display:inline-flex}.ai-render-settings{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));background:color-mix(in srgb, var(--accent) 5%, var(--panel));border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(130px,170px) minmax(150px,190px);align-items:end;gap:10px;padding:12px;display:grid}.ai-render-settings>div,.ai-render-settings label{gap:4px;display:grid}.ai-render-settings span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.ai-render-settings strong{color:var(--text);font-size:.95rem}.ai-render-settings small{color:var(--muted);line-height:1.35}.ai-render-settings select{border:1px solid var(--line);background:var(--panel);width:100%;min-height:38px;color:var(--text);font:inherit;border-radius:8px;padding:0 10px;font-weight:700}.ai-context-drawer{border:1px solid color-mix(in srgb, var(--accent) 26%, var(--line));background:color-mix(in srgb, var(--accent) 4%, var(--panel));border-radius:8px;min-width:0}.ai-context-drawer>summary{min-height:42px;color:var(--text);cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:0 12px;font-weight:780;display:flex}.ai-context-drawer>summary small{color:var(--muted);white-space:nowrap;font-weight:700}.ai-context-drawer>div{border-top:1px solid var(--line);gap:10px;padding:10px;display:grid}.source-context-panel{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));background:color-mix(in srgb, var(--accent) 5%, var(--panel));border-radius:8px;gap:10px;padding:12px;display:grid}.source-context-panel-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.source-context-panel-head>div{gap:3px;display:grid}.source-context-panel-head span{color:var(--muted);text-transform:uppercase;align-items:center;gap:6px;font-size:.78rem;font-weight:820;display:inline-flex}.source-context-panel-head strong{color:var(--text);font-size:1rem}.source-context-panel-head small{max-width:340px;color:var(--muted);text-align:right;font-size:.78rem;line-height:1.35}.source-context-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.source-context-card,.source-context-more article{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;gap:5px;min-width:0;padding:10px;display:grid}.source-context-card span,.source-context-more strong{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.source-context-card strong{color:var(--text);font-size:.9rem}.source-context-card p,.source-context-card small,.source-context-more span,.source-context-more small{color:var(--muted);margin:0;font-size:.76rem;line-height:1.35}.source-context-card small,.source-context-more small{color:color-mix(in srgb, var(--accent) 72%, var(--muted))}.source-context-more{border-top:1px solid var(--line);padding-top:8px}.source-context-more summary{cursor:pointer;color:var(--text);font-size:.82rem;font-weight:760}.source-context-more>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.prompt-preview{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;min-width:0}.prompt-preview summary{min-height:38px;color:var(--text);cursor:pointer;justify-content:space-between;align-items:center;padding:0 12px;font-size:.86rem;font-weight:760;display:flex}.prompt-preview pre{border-top:1px solid var(--line);max-height:260px;color:var(--muted);white-space:pre-wrap;word-break:break-word;margin:0;padding:12px;font:.78rem/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;overflow:auto}.prompt-preview.is-nested{background:var(--panel);margin-top:8px}.prompt-preview.is-nested summary{min-height:32px;padding:0 10px;font-size:.78rem}.prompt-preview.is-nested pre{max-height:210px;font-size:.74rem}.ai-job-list{border-top:1px solid var(--line);gap:8px;padding-top:12px;display:grid}.ai-job-list h3,.variant-list h3{margin:0;font-size:1rem}.ai-job-card{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(84px,116px) auto;align-items:center;gap:10px;padding:10px;display:grid}.ai-job-card.is-generating{border-color:color-mix(in srgb, var(--accent) 38%, var(--line))}.ai-job-card.is-validated{border-color:color-mix(in srgb, var(--accent) 52%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.ai-job-card.is-blocked{border-color:color-mix(in srgb, var(--gold) 52%, var(--line))}.ai-job-summary{min-width:0}.ai-job-card span,.ai-job-card small,.ai-job-status em{color:var(--muted);font-size:.82rem;font-style:normal}.ai-job-card small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.ai-job-card strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:2px 0;display:block;overflow:hidden}.ai-job-progress{background:var(--panel);border-radius:999px;height:7px;overflow:hidden}.ai-job-progress i{border-radius:inherit;background:var(--accent);height:100%;transition:width .26s;display:block}.ai-job-status{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ai-job-status em{border:1px solid var(--line);white-space:nowrap;background:var(--panel);border-radius:999px;justify-self:end;padding:6px 9px}.ai-job-status button{border:1px solid color-mix(in srgb, var(--accent) 44%, var(--line));background:color-mix(in srgb, var(--accent) 9%, var(--panel));min-height:32px;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:0 10px;font-size:.84rem;font-weight:720}.ai-job-status button:hover{background:color-mix(in srgb, var(--accent) 15%, var(--panel))}.ai-job-details{grid-column:1/-1;min-width:0}.ai-job-details summary{width:fit-content;color:var(--muted);cursor:pointer;font-size:.8rem;font-weight:720}.ai-job-details small{color:var(--muted);margin-top:4px;font-size:.76rem}.ai-inline-review{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--line));background:color-mix(in srgb, var(--accent) 5%, var(--panel));border-radius:8px;gap:12px;padding:12px;display:grid}.ai-inline-review-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.ai-inline-review-head h3{margin:2px 0 0;font-size:1.15rem}.ai-inline-review-head small{color:var(--muted);margin-top:4px;display:block}.ai-inline-review-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ai-inline-review .compare-box{aspect-ratio:16/9;min-height:280px;max-height:min(52vh,560px)}.variant-list{border-top:1px solid var(--line);gap:10px;padding-top:14px;display:grid}.variant-list>h3,.variant-list>p{grid-column:1/-1}.variant-list:has(.variant-card){scroll-snap-type:x proximity;grid-template-columns:none;grid-auto-columns:minmax(280px,30%);grid-auto-flow:column;padding-bottom:10px;overflow-x:auto}.variant-card{border:1px solid var(--line);background:var(--panel-strong);cursor:pointer;scroll-snap-align:start;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:54px;padding:10px;transition:border-color .16s,box-shadow .16s,background .16s;display:grid}.variant-card.is-approved{border-color:color-mix(in srgb, var(--accent) 42%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.variant-card.is-active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 18%, transparent)}.variant-card:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 28%, transparent);outline-offset:2px}.variant-card strong,.variant-card span{display:block}.variant-card span,.variant-card small{color:var(--muted);font-size:.86rem}.variant-card small{border:1px solid var(--line);border-radius:999px;padding:5px 9px}.variant-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.variant-card-actions span{color:var(--muted);font-size:.82rem}.variant-card-actions button{border:1px solid color-mix(in srgb, var(--accent) 44%, var(--line));background:color-mix(in srgb, var(--accent) 9%, var(--panel));min-height:32px;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:0 10px;font-size:.84rem;font-weight:720}.variant-card-actions button:hover{background:color-mix(in srgb, var(--accent) 15%, var(--panel))}.variant-card-actions button:disabled{cursor:not-allowed;opacity:.55}.compare-box{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;min-height:300px;position:relative;overflow:hidden}.compare-result-card{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel));border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.compare-result-card>div{gap:3px;min-width:0;display:grid}.compare-result-card strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.compare-result-card button,.download-action{border:1px solid color-mix(in srgb, var(--accent) 46%, var(--line));background:var(--accent);color:#fff;min-height:38px;font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:780;text-decoration:none;display:inline-flex}.download-action{background:var(--panel-strong);color:var(--text)}.compare-result-card button:disabled{cursor:not-allowed;opacity:.55}.compare-result-card span,.compare-result-card small{color:var(--muted);font-size:.82rem}.compare-result-card span{text-transform:uppercase;font-weight:780}.compare-empty{grid-template-columns:1fr 1fr;display:grid}.compare-original,.compare-enhanced{color:#fff;place-items:center;font-weight:800;display:grid;position:relative;overflow:hidden}.compare-original{background:linear-gradient(45deg,#1b2c37b8,#1b2c3761),repeating-linear-gradient(90deg,#3e4a4d 0 18px,#4b5558 18px 36px)}.compare-enhanced{background:linear-gradient(45deg,#0e7a6dbd,#b781296b),repeating-linear-gradient(90deg,#61766f 0 18px,#6e8177 18px 36px)}.before-after{--compare-position:50%;--asset-aspect:16 / 9;--asset-aspect-number:1.7778;aspect-ratio:var(--asset-aspect);isolation:isolate;cursor:ew-resize;touch-action:none;-webkit-user-select:none;user-select:none;min-height:0;max-height:72vh}.before-after:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 58%, transparent);outline-offset:3px}.compare-layer,.compare-layer img{width:100%;height:100%;position:absolute;inset:0}.compare-layer{background:var(--panel-strong);overflow:hidden}.compare-layer img{object-fit:contain;pointer-events:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;display:block}.compare-box.is-fullscreen.has-ai-variant .compare-layer img{object-fit:cover}.original-layer{z-index:1;filter:none}.preset-mask{z-index:2;clip-path:inset(0 calc(100% - var(--compare-position)) 0 0);background:var(--panel-strong)}.preset-sunny{filter:saturate(1.12)contrast(1.05)brightness(1.06)sepia(.04)}.preset-blue-hour{filter:saturate(.95)contrast(1.08)brightness(.9)sepia(.08)}.preset-natural-suburb{filter:saturate(1.06)contrast(1.03)brightness(1.03)}.preset-material-focus{filter:saturate(.92)contrast(1.15)brightness(1.02)}.preset-soft-overcast{filter:saturate(.86)contrast(.96)brightness(1.08)}.preset-blooming-garden{filter:saturate(1.2)contrast(1.06)brightness(1.05)sepia(.03)}.preset-urban-courtyard{filter:saturate(.98)contrast(1.1)brightness(1.01)sepia(.05)}.preset-premium-evening-landscape{filter:saturate(1.08)contrast(1.12)brightness(.92)sepia(.14)}.preset-minimal-new-build{filter:saturate(.9)contrast(1.08)brightness(1.08)}.preset-cutaway-photoreal{filter:saturate(1.08)contrast(1.08)brightness(1.04)sepia(.03)}.preset-cutaway-white{filter:grayscale(.9)contrast(1.12)brightness(1.13)}.preset-cutaway-premium{filter:saturate(1.1)contrast(1.1)brightness(1.03)sepia(.08)}.preset-warm-modern{filter:saturate(1.12)contrast(1.04)brightness(1.06)sepia(.08)}.preset-clean-plan{filter:grayscale(.72)contrast(1.22)brightness(1.05)}.preset-facade-clean{filter:grayscale(.36)contrast(1.16)brightness(1.04)}.preset-white-model{filter:grayscale()contrast(1.1)brightness(1.14)}.compare-label{z-index:4;color:#fff;background:#00000094;border-radius:999px;align-items:center;min-height:30px;padding:0 11px;font-size:.82rem;font-weight:800;display:inline-flex;position:absolute;top:14px}.compare-label-left{left:14px}.compare-label-right{right:14px}.compare-divider{z-index:5;top:0;bottom:0;left:var(--compare-position);pointer-events:none;place-items:center;width:52px;display:grid;position:absolute;transform:translate(-50%)}.compare-divider:before{content:"";background:#ffffffeb;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 0 18px #00000042}.compare-divider span{background:linear-gradient(90deg,#0000 0 14px,#fffffff2 14px 16px,#0000 16px 28px,#fffffff2 28px 30px,#0000 30px),#0000008a;border:2px solid #fffffff0;border-radius:999px;width:46px;height:46px;position:relative;box-shadow:0 8px 24px #00000047}.compare-divider span:before,.compare-divider span:after{content:"";border-top:2px solid #fff;border-left:2px solid #fff;width:7px;height:7px;position:absolute;top:50%}.compare-divider span:before{left:11px;transform:translateY(-50%)rotate(-45deg)}.compare-divider span:after{right:11px;transform:translateY(-50%)rotate(135deg)}.compare-fullscreen-action{z-index:6;aspect-ratio:1;color:#fff;cursor:pointer;background:#0000008f;border:1px solid #ffffff94;border-radius:999px;place-items:center;width:42px;display:grid;position:absolute;bottom:14px;right:14px}.compare-fullscreen-action:hover{background:#000000b8}.compare-fullscreen{z-index:1000;background:color-mix(in srgb, var(--bg) 94%, #000);grid-template-rows:auto minmax(0,1fr);gap:12px;padding:16px;display:grid;position:fixed;inset:0}.compare-fullscreen-bar{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 88%, transparent);border-radius:8px;grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;align-items:center;gap:12px;min-height:52px;padding:8px 10px 8px 14px;display:grid}.compare-fullscreen-bar strong,.compare-fullscreen-bar span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.compare-fullscreen-bar span{color:var(--muted)}.compare-fullscreen-bar button{aspect-ratio:1;border:1px solid var(--line);background:var(--panel);width:40px;color:var(--ink);cursor:pointer;border-radius:8px;place-items:center;display:grid}.compare-box.is-fullscreen{width:min(100%, calc((100dvh - 96px) * var(--asset-aspect-number)));height:auto;max-height:calc(100dvh - 96px);aspect-ratio:var(--asset-aspect);box-shadow:none;background:0 0;border:0;border-radius:8px;place-self:center}.compare-box.is-fullscreen .compare-fullscreen-action{display:none}.compare-notes{gap:8px;margin-top:12px;display:grid}.compare-notes span{color:var(--muted);align-items:center;gap:8px;font-size:.9rem;display:flex}.show-panel{align-content:start;gap:16px;display:grid}.show-panel,.presentation-grid>.show-panel{grid-column:1/-1}.presentation-layout{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start;gap:18px;display:grid}.presentation-main,.presentation-side{min-width:0}.presentation-stage{gap:12px;display:grid}.presentation-media{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;min-height:280px;position:relative;overflow:hidden}.presentation-media-content{object-fit:cover;border:0;width:100%;height:100%;min-height:280px;display:block}.presentation-media-content.media-placeholder{color:var(--muted);align-content:center;place-items:center;gap:12px;display:grid}.presentation-overlay{color:#fff;background:linear-gradient(90deg,#000000ad,#0000003d);border-radius:8px;gap:3px;padding:12px;display:grid;position:absolute;bottom:14px;left:14px;right:14px}.presentation-overlay span{text-transform:uppercase;opacity:.82;font-size:.78rem;font-weight:780}.presentation-overlay strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.presentation-meta{grid-template-columns:1fr .55fr .65fr;gap:8px;display:grid}.presentation-meta div,.presentation-chips span{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px}.presentation-meta div{align-content:center;gap:4px;min-width:0;min-height:58px;padding:10px;display:grid}.presentation-meta span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:760}.presentation-meta strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.presentation-chips{flex-wrap:wrap;gap:8px;display:flex}.presentation-chips span{min-height:30px;color:var(--muted);align-items:center;padding:0 10px;font-size:.84rem;display:inline-flex}.presentation-queue{gap:10px;display:grid}.presentation-side{align-content:start;gap:14px;display:grid}.queue-item{border:1px solid var(--line);background:var(--panel-strong);min-height:58px;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:42px minmax(0,1fr) minmax(120px,auto);align-items:center;gap:12px;padding:10px;display:grid}.queue-item.is-active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 22%, transparent)}.queue-item.is-approved{border-color:color-mix(in srgb, var(--accent) 38%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--panel))}.queue-item.is-approved span{background:var(--accent);color:#fff}.queue-item span{background:var(--panel);width:34px;height:34px;color:var(--muted);border-radius:999px;place-items:center;font-size:.82rem;display:grid}.queue-item strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.queue-item small{color:var(--muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.thatopen-ifc{gap:18px;display:grid}.thatopen-ifc-header{display:block}.thatopen-ifc-status{background:var(--surface-muted);border:1px solid var(--border);color:var(--muted);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;padding:10px 12px;display:grid}.thatopen-ifc-status span{min-width:0}.thatopen-ifc-status.is-ready{background:var(--success-soft);border-color:var(--success);color:var(--text)}.thatopen-ifc-status.is-fallback{background:color-mix(in srgb, var(--success-soft) 70%, var(--warning-soft));border-color:var(--success);color:var(--text)}.thatopen-ifc-status.is-error{background:var(--warning-soft);border-color:var(--warning);color:var(--text)}.thatopen-ifc-error-detail{background:var(--surface-muted);border:1px solid var(--border);color:var(--muted);white-space:pre-wrap;border-radius:8px;max-height:140px;margin:0;padding:10px 12px;font-size:.78rem;overflow:auto}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.thatopen-ifc-stage-shell{position:relative}.thatopen-ifc-stage{background:linear-gradient(180deg, #ffffffb8, #e8ece87a), var(--surface-muted);border:1px solid var(--border);border-radius:8px;min-height:clamp(520px,68vh,860px);overflow:hidden}.thatopen-ifc-controls{pointer-events:auto;z-index:2;flex-wrap:wrap;align-items:center;gap:8px;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.thatopen-ifc-controls span,.thatopen-ifc-controls button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;background:#1f2724b8;border:1px solid #ffffff38;border-radius:999px;padding:9px 12px;font-size:.8rem;font-weight:800;line-height:1}.thatopen-ifc-controls button{cursor:pointer}.thatopen-ifc-controls button:hover{background:#008070e6}.thatopen-ifc-filter-panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:color-mix(in srgb, var(--panel) 92%, transparent);border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));box-shadow:var(--shadow-soft);color:var(--text);pointer-events:auto;z-index:3;border-radius:8px;gap:10px;max-width:min(360px,100% - 28px);padding:12px;display:grid;position:absolute;top:68px;right:14px}.has-viewer-controls-collapsed .thatopen-ifc-filter-panel{display:none}.thatopen-ifc-control-section{background:color-mix(in srgb, var(--panel-strong) 90%, transparent)}.legacy-ifc-loader{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 0 4px;display:flex}.legacy-ifc-loader p{color:var(--muted);max-width:72ch;margin:0}.thatopen-ifc-filter-panel label,.thatopen-ifc-filter-panel>div{gap:6px;display:grid}.thatopen-ifc-filter-panel span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:900}.thatopen-ifc-filter-panel select{background:var(--panel);border:1px solid var(--line);color:var(--text);font:inherit;border-radius:8px;min-height:38px;padding:0 10px;font-weight:800}.thatopen-ifc-light-controls{gap:8px;display:grid}.thatopen-ifc-light-controls label{gap:5px}.thatopen-ifc-light-controls input[type=range]{accent-color:var(--accent);width:100%}.thatopen-ifc-shadow-toggle{flex-direction:row;justify-content:space-between;align-items:center;gap:8px!important;display:flex!important}.thatopen-ifc-shadow-toggle input{accent-color:var(--accent);width:18px;height:18px}.thatopen-ifc-shadow-toggle b,.thatopen-ifc-light-controls small b{color:var(--text)}.thatopen-ifc-class-buttons{flex-wrap:wrap;gap:6px;display:flex}.thatopen-ifc-class-buttons button{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:#ffffffc7;border-radius:999px;padding:7px 9px;font-size:.75rem;font-weight:900}.thatopen-ifc-class-buttons button.is-active{background:var(--success-soft);border-color:var(--success);color:var(--text)}.thatopen-ifc-filter-panel small{color:var(--muted);font-size:.72rem;line-height:1.35}.thatopen-ifc-stage canvas{cursor:grab;touch-action:none;display:block;width:100%!important;height:100%!important}.thatopen-ifc-stage canvas:active{cursor:grabbing}.thatopen-ifc-empty{background:var(--surface-muted);border:1px dashed var(--border-strong);color:var(--muted);border-radius:8px;align-items:center;gap:10px;min-height:180px;padding:20px;display:flex}.thatopen-ifc-inspector{border:1px solid var(--border);background:var(--panel);border-radius:8px;gap:14px;padding:16px;display:grid}.thatopen-ifc-inspector-header{justify-content:space-between;align-items:start;gap:16px;display:flex}.thatopen-ifc-inspector-header div{gap:4px;min-width:0;display:grid}.thatopen-ifc-inspector-header span{color:var(--muted);text-transform:uppercase;font-size:.74rem;font-weight:860}.thatopen-ifc-inspector-header strong{overflow-wrap:anywhere;font-size:1.18rem}.thatopen-ifc-inspector-header small{color:var(--muted);font-size:.84rem;line-height:1.45}.thatopen-ifc-inspector-body{gap:14px;display:grid}.thatopen-ifc-inspector-badges{flex-wrap:wrap;gap:8px;display:flex}.thatopen-ifc-inspector-badges span{border:1px solid var(--line);background:var(--panel-strong);min-height:30px;color:var(--muted);border-radius:999px;align-items:center;padding:0 10px;font-size:.82rem;font-weight:720;display:inline-flex}.thatopen-ifc-inspector-sections{gap:10px;display:grid}.thatopen-ifc-inspector-section{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;gap:10px;padding:12px;display:grid}.thatopen-ifc-inspector-section h3{margin:0;font-size:.9rem}.thatopen-ifc-inspector-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.thatopen-ifc-inspector-grid div{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:4px;min-width:0;padding:10px;display:grid}.thatopen-ifc-inspector-grid span{color:var(--muted);text-transform:uppercase;font-size:.73rem;font-weight:840}.thatopen-ifc-inspector-grid strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.thatopen-ifc-inspector-empty{border:1px dashed var(--border-strong);background:var(--surface-muted);color:var(--muted);border-radius:8px;gap:6px;padding:14px;display:grid}.thatopen-ifc-inspector-empty small{font-size:.82rem;line-height:1.45}.thatopen-ifc-footer{color:var(--muted);flex-wrap:wrap;gap:8px;display:flex}@media (width<=760px){.thatopen-ifc-filter-panel{max-width:none;left:14px;right:14px}}.thatopen-ifc-footer span{background:var(--surface-muted);border:1px solid var(--border);border-radius:999px;padding:7px 10px}@media (width<=1180px){.hero{grid-template-columns:1fr;min-height:auto}.hero-copy h1,.hero-copy p{max-width:860px}.ai-job-card{grid-template-columns:1fr}.ai-job-status{justify-content:flex-start}.source-context-cards,.thatopen-ifc-header,.source-context-more>div{grid-template-columns:1fr}}@media (width<=980px){.topbar,.demo-flow,.asset-browser,.studio-context{position:static}.asset-browser,.studio-context{max-height:none}.viewer-shell{grid-template-rows:minmax(0,1fr) auto}.viewer-topbar{grid-template-columns:1fr;gap:10px}.viewer-project{text-align:left;justify-self:start}.viewer-status{justify-items:start}.topbar,.workflow-grid,.demo-flow,.analysis-layout,.ifc-studio-header,.ifc-studio-grid,.ifc-audit-grid,.ifc-render-readiness,.model-insights,.visual-grid,.presentation-grid,.asset-workbench,.upload-panel{grid-template-columns:1fr}.topbar nav{justify-self:start;width:100%;padding-bottom:12px;overflow-x:auto}.toolbar{justify-self:start}.ifc-render-metrics,.ifc-render-mode-grid{grid-template-columns:1fr}.hero{min-height:auto}.source-context-panel-head,.ai-inline-review-head{display:grid}.ai-inline-review-actions{justify-content:flex-start}.ai-render-settings{grid-template-columns:1fr}.source-context-panel-head small{text-align:left;max-width:none}}@media (width<=1180px){.studio-main{grid-template-columns:1fr}.studio-context,.studio-ai,.asset-stage{grid-area:auto}}@media (width<=1080px){.presentation-layout{grid-template-columns:1fr}}@media (width<=680px){.app-shell{padding-inline:12px}.viewer-caption{grid-template-columns:1fr}.viewer-caption em{justify-self:start}.viewer-rail{grid-auto-columns:minmax(230px,78vw)}.metrics,.context-status-grid,.model-status-grid,.ifc-grid,.ifc-class-grid,.ifc-quality-grid,.mesh-facts,.preset-list,.asset-strip,.asset-card,.presentation-meta,.ai-job-card,.queue-item,.variant-card,.file-row{grid-template-columns:1fr}.queue-item small,.variant-card-actions{text-align:left;justify-content:flex-start}.compare-result-card{grid-template-columns:1fr}.ifc-audit-head{display:grid}.ifc-audit-head small{text-align:left;max-width:none}.ifc-matrix-row,.ifc-opening-table article{grid-template-columns:1fr}.ifc-filter-tabs{justify-content:flex-start}.compare-result-card button,.download-action{width:100%}}
