/* /pregunta/ (assistant/templates/assistant/page.html, static/js/asistente.js) */
.asst { max-width: 760px; padding-top: 1rem; padding-bottom: 7rem; display: flex; flex-direction: column; gap: 1rem; }
.asst-head { display: flex; flex-direction: column; gap: .35rem; }
.asst-badge { font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: .25rem .45rem;
  border-radius: .3rem; background: #e8f0fb; color: #1f5fbf; }
.asst-badge-admin { background: #fdf0d9; color: #8a5200; }
.asst-group { font-size: .72rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: var(--bs-secondary-color); margin: .6rem 0 .35rem; }
.asst-chips { display: flex; flex-wrap: wrap; gap: .45rem; }
.asst-chip { border: 1px solid #c9d8ee; background: var(--bs-body-bg); color: #1f5fbf; border-radius: 999px; padding: .4rem .8rem;
  font-size: .9rem; text-align: left; }
.asst-chip:hover, .asst-chip:focus-visible { border-color: #1f5fbf; outline: none; }
.asst-log { display: flex; flex-direction: column; gap: .8rem; }
.asst-q { align-self: flex-end; max-width: 85%; background: var(--bs-primary); color: #fff; border-radius: 1rem 1rem .25rem 1rem;
  padding: .55rem .85rem; white-space: pre-wrap; overflow-wrap: anywhere; }
.asst-a { background: var(--bs-body-bg); border: 1px solid var(--ap-line, #dbe2ea); border-radius: 1rem 1rem 1rem .25rem;
  padding: .75rem .9rem; display: flex; flex-direction: column; gap: .6rem; overflow-wrap: anywhere; }
.asst-a p { margin: 0; }
.asst-a ul, .asst-a ol { margin: 0; padding-left: 1.2rem; }
.asst-status { font-size: .85rem; color: var(--bs-secondary-color); display: flex; align-items: center; gap: .4rem; }
.asst-status::before { content: ""; width: .6rem; height: .6rem; border-radius: 50%; background: var(--bs-primary);
  animation: asst-pulse 1s ease-in-out infinite; }
@keyframes asst-pulse { 50% { opacity: .3; } }
@media (prefers-reduced-motion: reduce) { .asst-status::before { animation: none; } }
.asst-wait { display: flex; justify-content: space-between; align-items: center; gap: .6rem; text-decoration: none; color: inherit;
  border: 1px solid var(--ap-line, #dbe2ea); border-radius: .6rem; padding: .45rem .65rem; }
.asst-wait small { display: block; color: var(--bs-secondary-color); font-size: .78rem; }
.asst-pill { font-weight: 700; font-size: .85rem; padding: .25rem .6rem; border-radius: 999px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.asst-pill.good { background: #e3f4e9; color: #17663a; }
.asst-pill.warn { background: #fdf0d9; color: #7a4a00; }
.asst-pill.bad { background: #fbe6e4; color: #a32118; }
.asst-pill.closed, .asst-pill.unknown { background: #eef1f4; color: #4b5866; }
.asst-sources { display: flex; flex-wrap: wrap; gap: .35rem; }
.asst-sources a { font-size: .8rem; text-decoration: none; background: #e8f0fb; color: #1f5fbf; border-radius: .35rem; padding: .2rem .5rem; }
.asst-feedback { display: flex; align-items: center; gap: .5rem; font-size: .85rem; color: var(--bs-secondary-color); }
.asst-feedback button { border: 1px solid var(--ap-line, #dbe2ea); background: none; border-radius: .4rem; padding: .1rem .5rem; }
.asst-feedback button[aria-pressed="true"] { border-color: var(--bs-primary); background: #e8f0fb; }
.asst-error { color: #a32118; font-size: .9rem; display: flex; gap: .6rem; align-items: center; flex-wrap: wrap; }
.asst-composer { position: fixed; left: 0; right: 0; bottom: var(--ap-anchor-offset, 0px); z-index: 1020;
  display: flex; gap: .5rem; align-items: flex-end; background: var(--bs-body-bg); border-top: 1px solid var(--ap-line, #dbe2ea);
  padding: .6rem max(1rem, env(safe-area-inset-right, 0px)) calc(.6rem + env(safe-area-inset-bottom, 0px)) max(1rem, env(safe-area-inset-left, 0px)); }
.asst-composer textarea { flex: 1; max-width: 712px; margin-left: auto; resize: none; border: 1px solid var(--ap-line, #dbe2ea);
  border-radius: 1.2rem; padding: .55rem .9rem; font-size: 1rem; max-height: 9rem; }
.asst-composer .asst-send { margin-right: auto; border-radius: 50%; width: 2.6rem; height: 2.6rem; padding: 0; }
.asst-composer textarea:focus-visible { outline: 2px solid var(--bs-primary); outline-offset: 1px; }
