/* Shared OS1 symbol: idle, thinking, activity, completed and error. */
.os1-orb { --orb:#db7c62; position:relative; flex:0 0 auto; width:36px; height:36px; display:inline-grid; place-items:center; border-radius:50%; background:linear-gradient(145deg,var(--os1-decorative, #fff7e8),var(--os1-decorative, #f7d3bf)); isolation:isolate; }
.os1-orb::before,.os1-orb::after { content:''; position:absolute; border-radius:50%; pointer-events:none; }
.os1-orb::before { inset:1px; border:1px solid var(--os1-border, #d8896d60); }
.os1-orb::after { inset:-3px; border:1px solid var(--os1-border, #edb39445); opacity:.6; }
.os1-orb i { position:absolute; inset:1px; border:1.5px solid transparent; border-top-color:var(--orb); border-right-color:var(--os1-border, #eaba9b88); border-radius:50%; opacity:0; }
.os1-orb img { width:75%; height:75%; object-fit:contain; }
[data-activity-state="idle"] .os1-orb img { animation:os1-orb-idle 6s ease-in-out infinite; }
[data-activity-state="thinking"] .os1-orb i { opacity:.8; animation:os1-orb-turn 3.6s linear infinite; }
[data-activity-state="thinking"] .os1-orb img { animation:os1-orb-breathe 2.8s ease-in-out infinite; }
[data-activity-state="activity"] .os1-orb i { opacity:1; animation:os1-orb-turn 2.4s linear infinite; }
[data-activity-state="completed"] .os1-orb { background:linear-gradient(145deg,var(--os1-success-soft, #fff7e8),var(--os1-success-soft, #e5e9d4)); }
[data-activity-state="completed"] .os1-orb::before { border-color:var(--os1-success, #69836688); }
[data-activity-state="error"] .os1-orb { background:var(--os1-error-soft, #fae2d6); }
[data-activity-state="error"] .os1-orb::before { border-color:var(--os1-error, #af523f); }
[data-activity-state="error"] .os1-orb::after { border-color:var(--os1-error, #b9624355); opacity:1; }
@keyframes os1-orb-turn { to { transform:rotate(360deg); } }
@keyframes os1-orb-breathe { 0%,100% { transform:scale(.95);opacity:.7; } 50% { transform:scale(1.02);opacity:1; } }
@keyframes os1-orb-idle { 0%,100% { transform:translateY(0);opacity:.8; } 50% { transform:translateY(-2px);opacity:1; } }
.os1-mode #chat .mensaje.asistente.os1-has-activity { padding:8px 14px; border-top:1px solid var(--os1-border, #f3dcca); border-radius:16px; min-width:0; }
.os1-mode #chat .mensaje.asistente.os1-has-activity::before,.os1-mode #chat .mensaje.asistente.os1-has-activity::after { display:none; }
.os1-mode #chat .os1-activity { padding:0; margin:0; background:transparent; border:0; color:var(--os1-text, #634d42); border-radius:12px; }
.os1-mode .os1-activity-toggle { display:flex; align-items:center; gap:12px; width:100%; padding:4px 0; border:0; border-radius:10px; text-align:left; font:inherit; color:var(--os1-text, #594438); background:transparent; cursor:pointer; }
.os1-mode .os1-activity-copy { display:grid; gap:2px; min-width:0; }
.os1-mode .os1-activity-copy small { font-size:8px; letter-spacing:1.6px; text-transform:uppercase; color:var(--os1-muted, #78594b); }
.os1-mode .os1-activity-caption { font-size:12px; font-weight:450; line-height:1.4; }
.os1-mode .os1-activity-chevron { margin-left:auto; padding:4px 7px; color:var(--os1-text, #78594b); font-size:17px; transition:transform .2s ease; }
.os1-mode .os1-activity.is-expanded .os1-activity-chevron { transform:rotate(180deg); }
.os1-mode .os1-activity-panel { display:grid; grid-template-rows:0fr; opacity:0; visibility:hidden; transition:grid-template-rows .24s ease,opacity .2s ease,visibility .24s; }
.os1-mode .os1-activity.is-expanded .os1-activity-panel { grid-template-rows:1fr; opacity:1; visibility:visible; }
.os1-mode .os1-activity-body { min-height:0; overflow:hidden; }
.os1-mode .os1-activity.is-expanded .os1-activity-body { overflow-y:auto; max-height:320px; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:var(--os1-control-border, #dcb7a1) transparent; }
.os1-mode .os1-activity-note { color:var(--os1-muted, #745548); font-size:9px; text-transform:uppercase; letter-spacing:1.3px; margin:12px 0 8px!important; }
.os1-mode .os1-activity-meta { display:grid; gap:3px; padding:0 0 10px; font-size:10px; color:var(--os1-muted, #765c4d); }
.os1-mode .os1-activity-meta span:empty { display:none; }
.os1-mode .os1-activity .reasoning-trace-steps { margin:2px 0 10px 8px; padding-left:18px; border-color:var(--os1-border, #dcb9a5); color:var(--os1-text, #634f44); font-size:11px; }
.os1-mode .os1-activity .reasoning-trace-steps li { padding:4px 0 6px; }
.os1-mode .os1-activity .reasoning-trace-steps li::before { left:-22px; background:var(--os1-surface, #d78a69); width:6px; height:6px; }
.os1-mode .os1-activity .reasoning-trace-steps li[data-state="done"]::before { background:var(--os1-success-soft, #78916c); }
.os1-mode .os1-activity .reasoning-trace-steps li[data-state="error"]::before { background:var(--os1-error-soft, #b05b43); }
.os1-mode .os1-activity .reasoning-tool-results { margin:10px 0; padding-left:12px; border-color:var(--os1-border, #dcb9a5); gap:8px; }
.os1-mode .os1-activity-result { padding:8px 10px; border:1px solid var(--os1-border, #ead1bd); border-radius:9px; background:var(--os1-surface, #fff5e980); font-size:11px; }
.os1-mode .os1-activity-result strong { font-size:11px; font-weight:550; }
.os1-mode #chat .os1-activity-result p { margin:4px 0 0; color:var(--os1-text, #6d5445); font-size:10px; }
.os1-mode #chat .os1-has-activity .stream-answer:not([hidden]) { padding:12px 5px 6px; border-top:1px solid var(--os1-border, #ead3c0); margin-top:6px; }
.os1-mode .os1-activity-toggle:focus-visible { outline:2px solid var(--os1-focus, #ae654c); outline-offset:3px; }
.os1-mode .os1-activity[data-activity-state="error"] .os1-activity-caption { color:var(--os1-error, #963f30); }
@media (max-width:640px) {
  .os1-mode #chat .mensaje.asistente.os1-has-activity { padding:7px 11px; }
  .os1-mode .os1-activity-toggle { gap:10px; }
  .os1-mode .os1-orb { width:32px; height:32px; }
  .os1-mode .os1-activity.is-expanded .os1-activity-body { max-height:240px; }
  .os1-mode .os1-activity-caption { font-size:11px; }
}
@media (prefers-reduced-motion:reduce) { .os1-orb img,.os1-orb i { animation:none!important; }.os1-mode .os1-activity-panel,.os1-mode .os1-activity-chevron { transition:none!important; } }
