.workspace-host { height: 100%; overflow: hidden; scrollbar-gutter: auto; }
.workspace-shell { height: 100%; overflow: hidden; }
#workspace-content { display: block; width: 100%; height: 100svh; border: 0; background: var(--surface); opacity: 0; transition: opacity 180ms var(--ease-out); }
#workspace-content.is-ready { opacity: 1; }
.workspace-loading { position: fixed; top: 8px; left: 50%; z-index: 200; transform: translateX(-50%); display: flex; align-items: center; gap: 14px; padding: 6px 14px; border: 1px solid var(--line); border-radius: 99px; background: var(--surface); color: var(--text-muted); box-shadow: 0 4px 18px #00000008; font-size: .72rem; }
.workspace-loading[hidden], .workspace-loading button[hidden] { display: none; }
.workspace-loading button { border: 0; padding: 0 6px; min-height: 32px; background: transparent; color: var(--text); font-weight: 650; text-decoration: underline; text-underline-offset: 4px; }
.workspace-loading.is-error { border-radius: 12px; max-width: calc(100% - 32px); }
.workspace-nojs { margin: 48px auto; padding: 24px; }
.model-preparation { position: absolute; bottom: 1px; right: var(--page-gutter); display: flex; align-items: center; gap: 5px; height: 19px; max-width: 230px; color: var(--text-muted); font-size: .63rem; font-weight: 500; line-height: 1; letter-spacing: -.01em; }
.model-preparation[hidden] { display: none; }
.model-preparation-mark { flex-shrink: 0; width: 8px; height: 8px; border: 1px solid currentColor; border-top-color: transparent; border-radius: 50%; animation: model-preparation-turn 1.1s linear infinite; }
.model-preparation[data-stage="ready"] .model-preparation-mark { width: 8px; height: 5px; border: 0; border-left: 1.4px solid currentColor; border-bottom: 1.4px solid currentColor; border-radius: 0; transform: translateY(-1px) rotate(-45deg); animation: none; }
.model-preparation[data-stage="error"] .model-preparation-mark { border: 1px solid currentColor; animation: none; }
.model-preparation[data-paused="true"] .model-preparation-mark { animation-play-state: paused; }
.model-preparation-text { white-space: nowrap; font-variant-numeric: tabular-nums; }
.model-preparation-retry { min-height: 19px; padding: 1px 4px; border: 0; border-radius: 3px; background: transparent; font-size: inherit; font-weight: 650; text-decoration: underline; text-underline-offset: 2px; }
.model-preparation-retry[hidden] { display: none; }
@keyframes model-preparation-turn { to { transform: rotate(360deg); } }
@media (max-width: 600px) { .model-preparation { bottom: 15px; max-width: 160px; font-size: .59rem; } }
@media (max-width: 380px) { .model-preparation-text { max-width: 110px; overflow: hidden; text-overflow: ellipsis; } }
@media (max-width: 360px) { .model-preparation-text { max-width: 75px; } .model-preparation { gap: 3px; } }
@media (prefers-reduced-motion: reduce) { #workspace-content { transition: none; } .model-preparation-mark { animation: none; } }
@media print { .workspace-loading, .model-preparation { display: none; } .workspace-host, .workspace-shell { height: auto; overflow: visible; } #workspace-content { height: auto; } }
