/* Response indicator */
.msg.ai:has(.response-loader) {
  margin: 8px 0;
  min-height: 13px;
}

.msg.ai:has(.response-loader) > .m-av,
.msg.ai:has(.response-loader) .m-meta {
  display: none;
}

.msg.ai:has(.response-loader) .m-wrap,
.msg.ai:has(.response-loader) .m-body {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.response-loader { min-width: 0; padding: 0; }
.response-loader-mark {
  width: 13px;
  height: 13px;
  border: 0;
  background: #e573a8;
  box-shadow: 0 0 0 1px rgba(211, 74, 139, .15);
  animation: omino-response-dot 1.05s cubic-bezier(.4, 0, .2, 1) infinite;
  will-change: transform, opacity;
}
.response-loader-text,
.response-loader-line { display: none; }

@keyframes omino-response-dot {
  0%, 100% { transform: scale(.7); opacity: .48; }
  50% { transform: scale(1.2); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .response-loader-mark { animation: none; }
}

#zupa-answer-controls { display: none !important; }

/* ZUPA controls */
.zupa-answer-controls {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 8px auto 0;
}
.zupa-answer-controls.show { display: flex; }
.zupa-speed-note { color: var(--ink-3); font-size: 12px; font-weight: 600; }
.zupa-speed-note::before { content: '⚡'; margin-right: 5px; }
.zupa-long-toggle {
  appearance: none;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--panel, #fff);
  padding: 5px 9px;
  color: var(--ink-2);
  font: 600 11px/1 inherit;
  cursor: pointer;
}
.zupa-long-toggle[aria-pressed="true"] {
  border-color: #e573a8;
  color: #c94f8c;
  background: #fff4f9;
}

.qx-limit-card{position:relative;margin:16px 0;padding:22px;border:1px solid rgba(255,255,255,.11);border-radius:18px;background:#292a27;color:#f6f5f1;box-shadow:0 16px 34px rgba(0,0,0,.18)}
.qx-limit-card h2{margin:0 38px 10px 0;color:inherit;font:700 23px/1.15 Georgia,'Times New Roman',serif}.qx-limit-card p{margin:0;color:#c9c8c2;font-size:14px;line-height:1.5}.qx-limit-close{position:absolute;top:14px;right:14px;width:30px;height:30px;border:1px solid #3984bc;border-radius:9px;background:#1d2428;color:#dcecf8;font-size:20px;line-height:1;cursor:pointer}.qx-limit-info{margin:16px 0;padding:13px 14px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(0,0,0,.16)}.qx-limit-info b{display:block;margin-bottom:3px;font-size:14px}.qx-limit-actions{display:flex;justify-content:flex-end;gap:9px}.qx-limit-continue{border:0;border-radius:9px;padding:10px 14px;background:#fff;color:#252525;font:700 13px/1 inherit;cursor:pointer}.qx-limit-continue:hover{background:#efefef}@media(max-width:560px){.qx-limit-card{padding:18px;border-radius:15px}.qx-limit-card h2{font-size:20px}}

#qx-limit-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(244,246,249,.58);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.qx-limit-card{position:fixed;z-index:1001;top:50%;left:50%;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;transform:translate(-50%,-50%);margin:0;padding:28px;border:1px solid #e3e6eb;border-radius:22px;background:#fff;color:#17191e;box-shadow:0 24px 80px rgba(19,26,39,.22);font-family:var(--font,Inter,Arial,sans-serif)}
.qx-limit-card h2{color:#17191e;font-family:var(--font,Inter,Arial,sans-serif);font-size:25px;font-weight:750}.qx-limit-card p{color:#626975}.qx-limit-card .qx-limit-info{border-color:#e7eaf0;background:#f7f8fa}.qx-limit-card .qx-limit-info b{color:#17191e}.qx-limit-card .qx-limit-close{background:#f4f6f8;border-color:#dce2ea;color:#343942}.qx-limit-card .qx-limit-continue{background:#17191e;color:#fff}.qx-limit-card .qx-limit-continue:hover{background:#313641}
