/* Chat Generation Mode (admin only): replaces the steps view while active. */
#view-studio .gc-mode-toggle{background:#ea580c;border-color:#c2410c;color:#fff}
#view-studio .gc-mode-toggle:hover{background:#c2410c;border-color:#9a3412}
#view-studio .gc-mode-toggle[aria-pressed="true"]{background:#9a3412;border-color:#7c2d12;box-shadow:inset 0 0 0 2px #fb923c}
#view-studio .gc-mode-toggle:focus-visible{outline:3px solid #fb923c;outline-offset:3px}
.generation-studio .gc-chat{display:none}
.generation-studio.gc-active .gs-layout{display:none!important}
.generation-studio.gc-active .gc-chat{display:flex;flex-direction:column;flex:1;min-height:0;gap:10px;border:1px solid var(--gs-line);border-radius:12px;background:var(--gs-card);padding:14px}
.gc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--gs-line);padding-bottom:10px}
.generation-studio .gc-head h3{margin:0;font-size:17px}.gc-head small{color:var(--gs-muted);font-size:12px}
.gc-head-tools{display:flex;gap:8px;align-items:center}.gc-head-tools select{min-height:38px;max-width:240px;background:var(--gs-field);color:var(--gs-text);border:1px solid var(--gs-line);border-radius:8px;padding:6px 8px}
.gc-log{flex:1;min-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:4px 2px;overscroll-behavior:contain}
.gc-msg{max-width:min(760px,92%);padding:10px 14px;border-radius:12px;line-height:1.55;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}
.gc-user{align-self:flex-end;background:var(--accent-dim);border:1px solid var(--gs-accent)}
.gc-assistant{align-self:flex-start;background:var(--gs-field);border:1px solid var(--gs-line)}
.gc-proposal{align-self:stretch;max-width:none;background:var(--gs-field);border:1px solid var(--gs-accent);white-space:normal}
.gc-proposal ol{margin:8px 0 12px;padding-left:20px;display:grid;gap:12px}
.gc-item-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.gc-item-head span{color:var(--gs-muted);font-size:13px}
.gc-item pre{white-space:pre-wrap;font-size:12px;max-height:260px;overflow:auto;background:var(--gs-card);padding:10px;border-radius:8px}
.gc-video{display:block;width:min(320px,100%);max-height:520px;margin-top:8px;border-radius:10px;background:#000}
.gc-download{display:inline-block;margin-top:6px;font-size:12px;color:var(--gs-accent)}
.gc-run{margin:6px 0 0;font-size:13px;color:var(--gs-muted);display:flex;align-items:center;gap:8px}
.gc-step{align-self:flex-start;font-size:12px;color:var(--gs-muted);padding:0 6px}.gc-step>span{color:var(--gs-accent)}.gc-step small{display:block;color:var(--gs-dim);margin-left:18px}
.gc-thought{font-size:12px;color:var(--gs-muted);margin-bottom:6px}.gc-thought summary{cursor:pointer}
.gc-bad{color:var(--gs-error)}
.gc-thinking{align-self:flex-start;display:flex;align-items:center;gap:10px;padding:8px 12px;font-size:13px}
.gc-dots{display:inline-flex;gap:4px}.gc-dots i{width:7px;height:7px;border-radius:50%;background:var(--gs-accent);animation:gc-bounce 1.2s infinite ease-in-out}
.gc-dots i:nth-child(2){animation-delay:.15s}.gc-dots i:nth-child(3){animation-delay:.3s}
@keyframes gc-bounce{0%,80%,100%{transform:scale(.5);opacity:.4}40%{transform:scale(1);opacity:1}}
.gc-shimmer{background:linear-gradient(90deg,var(--gs-muted) 25%,var(--gs-text) 50%,var(--gs-muted) 75%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gc-shimmer 1.8s linear infinite}
@keyframes gc-shimmer{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.gc-dots i,.gc-shimmer{animation:none}.gc-shimmer{color:var(--gs-muted)}}
.gc-compose{border-top:1px solid var(--gs-line);padding-top:10px;display:grid;gap:8px}
.gc-compose textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:70px;background:var(--gs-field);color:var(--gs-text);border:1px solid var(--gs-line);border-radius:8px;padding:10px;font:inherit}
.gc-compose-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.gc-skip{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--gs-muted);margin:0}
@media(max-width:900px){.generation-studio.gc-active .gc-chat{padding:10px}.gc-msg{max-width:100%}}
