.composer { position: relative; }
.segment2-command-menu {
  position: relative;
  z-index: 80;
  width: min(760px, calc(100% - 32px));
  max-height: min(52vh, 430px);
  overflow: auto;
  margin: 0 auto 10px;
  padding: 8px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  background: rgba(11,16,20,.98);
  box-shadow: 0 22px 60px rgba(0,0,0,.42);
  backdrop-filter: blur(14px);
}
.segment2-command-menu.hidden { display: none !important; }
.segment2-command-item {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 12px;
  border: 1px solid transparent;
  border-radius: 11px;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}
.segment2-command-item:hover,
.segment2-command-item.active {
  border-color: rgba(104,230,151,.24);
  background: rgba(104,230,151,.08);
}
.segment2-command-item.locked { opacity: .48; }
.segment2-command-item > span { min-width: 0; display: grid; gap: 2px; }
.segment2-command-item strong { font-size: .9rem; }
.segment2-command-item small { opacity: .68; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.segment2-command-item em { flex: 0 0 auto; font-size: .72rem; font-style: normal; opacity: .55; }
.segment2-command-empty { margin: 8px; opacity: .62; }
.segment2-command-error {
  width: min(760px, calc(100% - 32px));
  margin: 0 auto 8px;
  padding: 8px 11px;
  border: 1px solid rgba(248,113,113,.28);
  border-radius: 10px;
  background: rgba(127,29,29,.18);
  color: #fecaca;
  font-size: .82rem;
}
.segment2-generation-card {
  position: relative;
  display: grid !important;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 12px;
  overflow: hidden;
  min-height: 68px;
  isolation: isolate;
}
.segment2-generation-orb {
  position: relative;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(126,255,168,.22);
  background: radial-gradient(circle at 35% 30%, rgba(126,255,168,.24), rgba(126,255,168,.035) 60%, transparent 72%);
  box-shadow: inset 0 0 16px rgba(126,255,168,.08), 0 0 18px rgba(126,255,168,.05);
}
.segment2-generation-orb i {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  animation: segment2Orbit 1.2s linear infinite;
  transform-origin: 0 0;
}
.segment2-generation-orb i:nth-child(2) { animation-delay: -.4s; opacity: .68; }
.segment2-generation-orb i:nth-child(3) { animation-delay: -.8s; opacity: .38; }
.segment2-generation-copy { display: grid; gap: 3px; min-width: 0; }
.segment2-generation-copy strong { font-size: .9rem; font-weight: 650; }
.segment2-generation-copy small { opacity: .66; font-size: .78rem; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.segment2-generation-shimmer {
  position: absolute;
  z-index: -1;
  inset: 0;
  transform: translateX(-120%);
  background: linear-gradient(105deg, transparent 20%, rgba(255,255,255,.035) 46%, rgba(126,255,168,.06) 52%, transparent 76%);
  animation: segment2Shimmer 2.1s ease-in-out infinite;
  pointer-events: none;
}
.segment2-stop-generation {
  position: absolute;
  right: 60px;
  bottom: 10px;
  z-index: 35;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 10px;
  background: rgba(22,28,33,.96);
  color: inherit;
  font: inherit;
  font-size: .76rem;
  cursor: pointer;
}
.segment2-stop-generation:hover { background: rgba(42,49,55,.98); }
.segment2-stop-generation:disabled { opacity: .56; cursor: wait; }
.segment2-stop-generation.hidden { display: none !important; }
.composer.segment2-generating .send-button,
.composer.segment2-generating .tool-button { opacity: .44; cursor: not-allowed; }
.composer.segment2-generating textarea { padding-right: 150px; }
.segment2-response-enter { animation: segment2ResponseIn .32s ease-out both; }
.segment2-toast-region {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 200;
  width: min(360px, calc(100vw - 36px));
  display: grid;
  gap: 8px;
  pointer-events: none;
}
.segment2-toast {
  pointer-events: auto;
  display: grid;
  gap: 9px;
  padding: 11px 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 13px;
  background: rgba(16,21,26,.98);
  box-shadow: 0 16px 42px rgba(0,0,0,.38);
  font-size: .82rem;
}
.segment2-toast.error { border-color: rgba(248,113,113,.3); }
.segment2-toast-actions { display: flex; gap: 7px; }
.segment2-toast-actions button {
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 8px;
  padding: 6px 9px;
  background: rgba(255,255,255,.06);
  color: inherit;
  cursor: pointer;
}
.segment2-toast-actions button:first-child { border-color: rgba(126,255,168,.28); background: rgba(126,255,168,.1); }
@keyframes segment2Orbit {
  from { transform: rotate(0deg) translateX(10px) rotate(0deg); }
  to { transform: rotate(360deg) translateX(10px) rotate(-360deg); }
}
@keyframes segment2Shimmer {
  0%, 18% { transform: translateX(-120%); }
  72%, 100% { transform: translateX(120%); }
}
@keyframes segment2ResponseIn {
  from { opacity: 0; transform: translateY(5px); filter: blur(2px); }
  to { opacity: 1; transform: translateY(0); filter: blur(0); }
}
@media (max-width: 720px) {
  .segment2-command-menu,
  .segment2-command-error { width: calc(100% - 18px); }
  .segment2-command-item em { display: none; }
  .segment2-stop-generation { right: 54px; padding-inline: 8px; }
  .segment2-stop-generation span:last-child { display: none; }
  .composer.segment2-generating textarea { padding-right: 84px; }
}
@media (prefers-reduced-motion: reduce) {
  .segment2-generation-orb i,
  .segment2-generation-shimmer,
  .segment2-response-enter { animation: none !important; }
}


/* Segment 2 follow-up: the send control itself becomes Stop for both AIs. */
.composer.segment2-generating .send-button.segment2-stop-send {
  opacity: 1;
  cursor: pointer;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 8px;
  background: rgba(27,34,40,.98);
  color: #f5f5f5;
  font-size: 1rem;
}
.composer.segment2-generating .send-button.segment2-stop-send:hover { background: rgba(44,53,61,.98); }
.composer.segment2-generating .send-button.segment2-stop-send:disabled { opacity: .55; cursor: wait; }
.composer.segment2-generating textarea { padding-right: 14px; }

.segment2-plugins-page { gap: 18px; align-content: start; }
.segment2-plugins-header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.segment2-plugins-header-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.segment2-plugins-header-actions .ghost-button { white-space:nowrap; }
.segment2-plugin-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.segment2-plugin-card { display:grid; gap:14px; min-height:190px; padding:16px; border:1px solid var(--border); border-radius:14px; background:var(--panel); transition:border-color .18s ease, background .18s ease, transform .18s ease; }
.segment2-plugin-card.installed { border-color:rgba(126,255,168,.3); background:color-mix(in srgb, var(--panel) 92%, rgba(126,255,168,.14)); }
.segment2-plugin-card > div { display:grid; gap:5px; }
.segment2-plugin-card strong { font-size:1.05rem; }
.segment2-plugin-card span,.segment2-plugin-card small,.segment2-plugin-note { color:var(--muted); line-height:1.45; }
.segment2-plugin-status { min-height:2.9em; }
.segment2-plugin-toggle { margin-top:auto; min-height:40px; border:1px solid rgba(126,255,168,.28); border-radius:9px; background:rgba(126,255,168,.08); color:var(--text); cursor:pointer; font-weight:650; }
.segment2-plugin-toggle:hover { background:rgba(126,255,168,.14); }
.segment2-plugin-card.installed .segment2-plugin-toggle { border-color:rgba(248,113,113,.3); background:rgba(248,113,113,.08); color:#fecaca; }
.segment2-plugin-card.installed .segment2-plugin-toggle:hover { background:rgba(248,113,113,.14); }
.segment2-plugin-note { margin:0; padding:12px 14px; border:1px dashed var(--border); border-radius:12px; }
@media (max-width: 820px) { .segment2-plugin-grid { grid-template-columns:1fr; } .segment2-plugins-header { flex-direction:column; } .segment2-plugins-header-actions { justify-content:flex-start; } }
