/* [project]/src/components/alvo-design-system/standard-dashboard.css [app-client] (css) */
.alvo-standard[data-alvo-design][data-alvo-version] :is(.ds-dashboard, .ds-dashboard-body) {
  gap: var(--alvo-space-6);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-dashboard-toolbar {
  justify-content: flex-end;
  align-items: center;
  gap: var(--alvo-space-2);
  flex-wrap: wrap;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-dashboard-tray {
  gap: var(--alvo-space-2);
  flex-wrap: wrap;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-dashboard-card-loading {
  gap: var(--alvo-space-3);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

/* [project]/src/components/alvo-design-system/assistant-chat.css [app-client] (css) */
.alvo-standard[data-alvo-design][data-alvo-version] .ds-card.ds-assistant-chat {
  flex-direction: column;
  height: 100%;
  min-height: 360px;
  padding: 0;
  display: flex;
  overflow: hidden;
  container: ds-assistant-chat / inline-size;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-chat-header {
  justify-content: space-between;
  align-items: center;
  gap: var(--alvo-space-3);
  padding: var(--alvo-space-3) var(--alvo-space-4);
  border-bottom: 1px solid var(--alvo-border);
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-conversation {
  min-width: 0;
  color: var(--alvo-muted-foreground);
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: 0;
  font-size: 13px;
  overflow: hidden;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-transcript {
  min-height: 0;
  padding: var(--alvo-space-4);
  flex: 1;
  overflow: hidden auto;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-transcript:focus-visible {
  outline: 2px solid var(--alvo-ring);
  outline-offset: -2px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-transcript-content {
  flex-direction: column;
  min-height: 100%;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-welcome {
  justify-content: center;
  align-items: center;
  gap: var(--alvo-space-2);
  flex-direction: column;
  flex: 1;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-suggestions {
  justify-content: center;
  gap: var(--alvo-space-2);
  max-width: 640px;
  padding: 0 0 var(--alvo-space-4);
  flex-wrap: wrap;
  margin: 0;
  list-style: none;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-suggestions li {
  max-width: 100%;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-messages {
  gap: var(--alvo-space-6);
  flex-direction: column;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-message article {
  gap: var(--alvo-space-2);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-message[data-role="user"] article {
  align-items: flex-end;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-message-header {
  align-items: center;
  gap: var(--alvo-space-2);
  min-width: 0;
  min-height: 36px;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-message[data-role="user"] .ds-assistant-message-header {
  min-height: 0;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-avatar {
  display: inline-flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-author {
  font-size: 13px;
  font-weight: 600;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-message[data-role="user"] .ds-assistant-author {
  color: var(--alvo-muted-foreground);
  font-size: 12px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-message-actions {
  margin-inline-start: auto;
  display: inline-flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-message-body {
  gap: var(--alvo-space-3);
  flex-direction: column;
  min-width: 0;
  max-width: 100%;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-message[data-role="user"] .ds-assistant-message-body {
  align-items: flex-end;
  max-width: min(85%, 640px);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-user-text {
  border: 1px solid var(--alvo-border);
  border-radius: var(--alvo-radius-card);
  background: var(--alvo-accent);
  color: var(--alvo-accent-foreground);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 0;
  padding: 10px 14px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-files {
  justify-content: flex-end;
  gap: var(--alvo-space-2);
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-files li {
  border: 1px solid var(--alvo-border);
  border-radius: var(--alvo-radius-control);
  background: var(--alvo-card);
  overflow-wrap: anywhere;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  padding: 4px 10px;
  font-size: 12px;
  display: inline-flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-thinking {
  align-items: center;
  gap: var(--alvo-space-2);
  margin-top: var(--alvo-space-4);
  color: var(--alvo-muted-foreground);
  font-size: 13px;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-caret {
  background: var(--alvo-primary);
  border-radius: 2px;
  width: 8px;
  height: 16px;
  animation: 1s steps(2, jump-none) infinite ds-assistant-caret;
  display: block;
}

@keyframes ds-assistant-caret {
  50% {
    opacity: 0;
  }
}

@container ds-assistant-chat (min-width: 640px) {
  .alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-transcript {
    padding: var(--alvo-space-6);
  }

  .alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-message[data-role="assistant"] .ds-assistant-message-body, .alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-thinking {
    padding-inline-start: 44px;
  }
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown {
  overflow-wrap: anywhere;
  min-width: 0;
  max-width: 100%;
  font-size: 14px;
  line-height: 1.6;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown :is(p, ul, ol, pre, blockquote, table) {
  margin: 0 0 var(--alvo-space-2);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown > div > :last-child {
  margin-bottom: 0;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown :is(ul, ol) {
  padding-inline-start: 20px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown ul {
  list-style: outside;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown ol {
  list-style: decimal;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown li {
  margin: 2px 0;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown :is(h1, h2, h3) {
  margin: var(--alvo-space-3) 0 6px;
  letter-spacing: .025em;
  line-height: 1.15;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown h1 {
  font-size: 24px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown h2 {
  font-size: 20px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown h3 {
  font-size: 18px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown :is(h4, h5, h6) {
  margin: var(--alvo-space-3) 0 4px;
  font-size: 14px;
  font-weight: 600;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown a {
  color: var(--alvo-primary);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown strong {
  font-weight: 600;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown code {
  border: 1px solid var(--alvo-border);
  background: var(--alvo-muted);
  font-family: var(--alvo-font-mono);
  border-radius: 4px;
  padding: 1px 4px;
  font-size: 12.5px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown pre {
  padding: var(--alvo-space-3);
  border: 1px solid var(--alvo-border);
  border-radius: var(--alvo-radius-control);
  background: var(--alvo-muted);
  overflow-x: auto;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown pre code {
  background: none;
  border: 0;
  padding: 0;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown blockquote {
  border-inline-start: 3px solid var(--alvo-border);
  color: var(--alvo-muted-foreground);
  padding-inline-start: var(--alvo-space-3);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown hr {
  margin: var(--alvo-space-3) 0;
  border: 0;
  border-top: 1px solid var(--alvo-border);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown table {
  border-collapse: collapse;
  overflow-wrap: normal;
  max-width: 100%;
  font-size: 13px;
  display: block;
  overflow-x: auto;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown :is(th, td) {
  border: 1px solid var(--alvo-border);
  text-align: start;
  vertical-align: top;
  padding: 6px 10px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-markdown th {
  background: var(--alvo-muted);
  font-weight: 600;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tools {
  border: 1px solid var(--alvo-border);
  border-radius: var(--alvo-radius-control);
  background: var(--alvo-muted);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tools-title {
  justify-content: space-between;
  gap: var(--alvo-space-2);
  padding: var(--alvo-space-2) var(--alvo-space-3);
  border-bottom: 1px solid var(--alvo-border);
  color: var(--alvo-muted-foreground);
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tools ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool + .ds-assistant-tool {
  border-top: 1px solid var(--alvo-border);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool-row {
  align-items: center;
  gap: var(--alvo-space-2);
  min-height: 44px;
  padding: 2px var(--alvo-space-2) 2px var(--alvo-space-3);
  grid-template-columns: 16px minmax(0, 1fr) auto auto;
  display: grid;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool-row:not(:has( > button)) {
  grid-template-columns: 16px minmax(0, 1fr) auto;
  padding-inline-end: var(--alvo-space-3);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool-icon {
  color: var(--alvo-muted-foreground);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool[data-state="complete"] .ds-assistant-tool-icon {
  color: var(--alvo-success);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool[data-state="error"] .ds-assistant-tool-icon {
  color: var(--alvo-destructive);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool-label {
  overflow-wrap: anywhere;
  font-size: 13px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool-error {
  padding: 0 var(--alvo-space-3) var(--alvo-space-3) 36px;
  color: var(--alvo-destructive);
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 13px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool-details {
  padding: 0 var(--alvo-space-3) var(--alvo-space-3) 36px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool-details > p {
  margin: var(--alvo-space-2) 0 var(--alvo-space-1);
  color: var(--alvo-muted-foreground);
  font-size: 12px;
  font-weight: 600;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool-details > p.ds-assistant-tool-name {
  font-family: var(--alvo-font-mono);
  overflow-wrap: anywhere;
  margin-top: 0;
  font-weight: 400;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-tool-details pre {
  max-height: 200px;
  padding: var(--alvo-space-2);
  border: 1px solid var(--alvo-border);
  border-radius: var(--alvo-radius-control);
  background: var(--alvo-card);
  font-family: var(--alvo-font-mono);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 12px;
  overflow: auto;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-reasoning > p {
  padding: var(--alvo-space-1) 0 var(--alvo-space-1) var(--alvo-space-3);
  border-inline-start: 2px solid var(--alvo-border);
  color: var(--alvo-muted-foreground);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 13px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-error-code {
  margin-top: var(--alvo-space-1);
  display: block;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-error-code code {
  font-family: var(--alvo-font-mono);
  font-size: 12px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-alert {
  padding: 0 var(--alvo-space-4) var(--alvo-space-3);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-alert--footer {
  padding: var(--alvo-space-3) var(--alvo-space-4) var(--alvo-space-4);
  border-top: 1px solid var(--alvo-border);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-composer {
  gap: var(--alvo-space-2);
  padding: var(--alvo-space-3) var(--alvo-space-4) var(--alvo-space-4);
  border-top: 1px solid var(--alvo-border);
  display: grid;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-attachments {
  gap: var(--alvo-space-2);
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-attachments li {
  max-width: 100%;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-attachment-name {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  max-width: 200px;
  overflow: hidden;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-attachment-state {
  color: var(--alvo-muted-foreground);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-attachments li[data-state="error"] .ds-assistant-attachment-state {
  color: var(--alvo-destructive);
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-composer-bar {
  justify-content: space-between;
  align-items: center;
  gap: var(--alvo-space-2);
  flex-wrap: wrap;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-composer-tools {
  align-items: center;
  gap: var(--alvo-space-2);
  flex: auto;
  min-width: 0;
  display: flex;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-model {
  flex: 0 240px;
  min-width: 0;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-hint {
  min-width: 0;
  color: var(--alvo-muted-foreground);
  margin: 0;
  font-size: 12px;
}

.alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-composer-actions {
  align-items: center;
  gap: var(--alvo-space-2);
  margin-inline-start: auto;
  display: flex;
}

@container ds-assistant-chat (max-width: 560px) {
  .alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-hint {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .alvo-standard[data-alvo-design][data-alvo-version] .ds-assistant-caret {
    animation: none;
  }
}

