
.confirm-dialog-input {
  width: 100%;
  margin: 12px 0 4px;
  padding: 9px 12px;
  border: 1px solid var(--border-primary);
  border-radius: 8px;
  background: var(--surface-raised);
  color: var(--text-primary);
  font-size: var(--font-size-sm);
  outline: none;
}
.confirm-dialog-input:focus {
  border-color: var(--accent-primary);
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.12);
}
.confirm-dialog-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  /* V21.772 — ABOVE every other overlay in the app, deliberately.
     This dialog is the app's last-resort question: whatever opened it is
     already on screen, so it has to sit on top of that thing or the question
     cannot be answered. It sat at 10000, the same value the ERP batch modal
     uses, and a z-index TIE is broken by DOM order — this teleports from
     App.vue and mounts early, so it lost to anything opened later and rendered
     BEHIND it. Reported on Discard in the batch modal: the button worked, the
     confirmation was simply unreachable.
     The app's highest z-index elsewhere is 100011. */
  z-index: 200000;
}
.confirm-dialog-card {
  background: #fff;
  border-radius: 12px;
  max-width: 400px;
  width: 100%;
  padding: 24px 24px 20px;
}
.confirm-dialog-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
}
.confirm-dialog-icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.confirm-dialog-icon.error { color: var(--color-error, #ef4444);
}
.confirm-dialog-icon.warning { color: var(--color-warning, #f59e0b);
}
.confirm-dialog-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--text-primary, #3f3f46);
}
.confirm-dialog-message {
  font-size: 14px;
  color: var(--text-secondary, #52525b);
  margin-bottom: 24px;
  line-height: 1.5;
}
.confirm-dialog-actions {
  display: flex;
  gap: 12px;
}
.confirm-dialog-actions .btn {
  flex: 1;
  justify-content: center;
  padding: 10px 16px;
}

/* 3-button (recurring delete) layout — stack for readable long labels, primary on top. */
.confirm-dialog-actions.has-secondary {
  flex-direction: column-reverse;
}
.confirm-dialog-actions.has-secondary .btn {
  flex: none;
  width: 100%;
}

.tp-wrapper[data-v-d4d07ad6] {
  position: relative;
  display: inline-block;
}
.tp-input[data-v-d4d07ad6] {
  width: 92px;
  padding: 6px 10px;
  border: 1px solid var(--border-primary, #e8e8ec);
  border-radius: 6px;
  background: var(--bg-primary, #fff);
  color: var(--text-primary, #3f3f46);
  font-size: 13px;
  font-family: inherit;
  font-weight: 500;
  text-align: center;
  cursor: text;
  transition: border-color 0.12s ease, box-shadow 0.12s ease;
}
.tp-input[data-v-d4d07ad6]:hover { border-color: #818cf8;
}
.tp-input[data-v-d4d07ad6]:focus {
  outline: none;
  border-color: #6366f1;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.12);
}
.tp-dropdown[data-v-d4d07ad6] {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  width: 130px;
  max-height: 200px;
  overflow-y: auto;
  background: var(--surface-overlay, #fff);
  border: 1px solid var(--border-primary, #e8e8ec);
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  z-index: 9999;
  padding: 4px;
}
.tp-option[data-v-d4d07ad6] {
  padding: 6px 10px;
  font-size: 13px;
  color: var(--text-secondary, #52525b);
  border-radius: 5px;
  cursor: pointer;
  transition: background 0.08s ease;
}
.tp-option[data-v-d4d07ad6]:hover {
  background: var(--bg-hover, #f4f4f5);
  color: var(--text-primary, #3f3f46);
}
.tp-option.active[data-v-d4d07ad6] {
  background: rgba(99, 102, 241, 0.1);
  color: #6366f1;
  font-weight: 600;
}
.tp-empty[data-v-d4d07ad6] {
  padding: 8px 10px;
  font-size: 12px;
  color: var(--text-tertiary, #a1a1aa);
}
.tp-fade-enter-active[data-v-d4d07ad6] { transition: opacity 0.1s ease, transform 0.1s ease;
}
.tp-fade-leave-active[data-v-d4d07ad6] { transition: opacity 0.08s ease;
}
.tp-fade-enter-from[data-v-d4d07ad6] { opacity: 0; transform: translateY(4px);
}
.tp-fade-leave-to[data-v-d4d07ad6] { opacity: 0;
}

.attachment-card[data-v-0b466184] {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-2) var(--space-3);
  background: transparent;
  border: 1px solid var(--border-primary);
  border-radius: var(--radius-md);
  transition: var(--transition-card);
  /* V21.95 — plain arrow at rest. The hand shows ONLY while dragging
     (`:active` / `.is-dragging` below), never on simple hover. */
  cursor: default;
  position: relative;
  overflow: hidden;
  width: fit-content;
  max-width: 280px;
}
.attachment-card[data-v-0b466184]:hover {
  background: var(--bg-hover);
  transform: translateY(-1px);
}
.attachment-card.attachment-card-compose[data-v-0b466184] {
  cursor: default;
  background: var(--bg-hover) !important;
  border: none !important;
  box-shadow: none !important;
  padding: 4px 8px !important;
  gap: 8px !important;
  max-width: 220px;
  border-radius: 8px !important;
}
.attachment-card.attachment-card-compose[data-v-0b466184]:hover {
  background: var(--bg-hover) !important;
  transform: none !important;
  box-shadow: none !important;
}
.attachment-card-compose .file-badge[data-v-0b466184] {
  width: 22px;
  height: 22px;
}
.attachment-card-compose .attachment-name[data-v-0b466184] {
  font-size: 12px;
  margin-bottom: 0;
}
.attachment-card-compose .attachment-size[data-v-0b466184] {
  font-size: 10px;
}
.attachment-card-compose .attachment-action[data-v-0b466184] {
  width: 24px;
  height: 24px;
}
.attachment-card-compose .attachment-action svg[data-v-0b466184] {
  width: 14px;
  height: 14px;
}
/* V21.94 — the compose download button only materializes on hover/focus so the
   chip stays clean; the remove X keeps its existing always-visible behaviour. */
.attachment-download-compose[data-v-0b466184] {
  opacity: 0;
  width: 0;
  margin: 0;
  pointer-events: none;
  transition: opacity 0.12s ease, width 0.12s ease;
}
.attachment-card-compose:hover .attachment-download-compose[data-v-0b466184],
.attachment-download-compose[data-v-0b466184]:focus-visible {
  opacity: 0.6;
  width: 24px;
  pointer-events: auto;
}
.attachment-card-compose:hover .attachment-download-compose[data-v-0b466184]:hover {
  opacity: 1;
}

/* V21.124 — `chip` mode: compact read-only card for comment/note attachments.
   Keeps the badge + ext pill of the email attachment card (that's the whole
   point — same icon per file type) but sized for a note bubble. */
.attachment-card.attachment-card-chip[data-v-0b466184] {
  cursor: pointer;
  padding: 4px 8px;
  gap: 8px;
  max-width: 260px;
  border-radius: 8px;
  background: var(--surface-raised);
}
.attachment-card-chip .file-badge[data-v-0b466184] {
  width: 24px;
  height: 24px;
}
.attachment-card-chip .attachment-name[data-v-0b466184] {
  font-size: 12px;
  margin-bottom: 0;
}
.attachment-card-chip .attachment-size[data-v-0b466184] {
  font-size: 10px;
}
.attachment-card-chip .attachment-action[data-v-0b466184] {
  width: 24px;
  height: 24px;
}
.attachment-card-chip .attachment-action svg[data-v-0b466184] {
  width: 14px;
  height: 14px;
}

/* --- ESTADO DE DRAG --- */
.attachment-card.is-dragging[data-v-0b466184] {
  opacity: 0.5;
  cursor: grabbing !important;
  transform: scale(0.98);
}

/* V21.95 — a draggable card no longer advertises `grab` at rest (that open
   hand on plain hover read as "this is a button"). Only the actual drag
   gesture (mouse held down) switches to `grabbing`. */
.attachment-card.can-drag[data-v-0b466184] {
  user-select: none;
}
.attachment-card.can-drag[data-v-0b466184]:active {
  cursor: grabbing;
}

/* Drag en modo view */
.attachment-card[draggable="true"][data-v-0b466184] {
  user-select: none;
}
.attachment-card[draggable="true"][data-v-0b466184]:active {
  cursor: grabbing;
}

/* Sprint U7b multi-select — Cmd/Ctrl-clicked chips highlight with the
   accent color so the user can confirm what's in the selection set.
   Drag any of the selected chips to upload them as a group. */
.attachment-card.is-selected[data-v-0b466184] {
  outline: 2px solid var(--accent-primary, #4f46e5);
  outline-offset: -2px;
  background: var(--bg-selected, rgba(79, 70, 229, 0.08));
}
.attachment-card.is-selected[data-v-0b466184]::before {
  content: '✓';
  position: absolute;
  top: -6px;
  right: -6px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--accent-primary, #4f46e5);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
  box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}
.attachment-card[data-v-0b466184] { position: relative;
}

/* ── File badge: Lucide icon + corner ext pill (matches ERP Docs) ── */
.file-badge[data-v-0b466184] {
  position: relative;
  flex-shrink: 0;
  width: 28px; height: 28px;
  display: flex; align-items: center; justify-content: center;
}
.fb-icon[data-v-0b466184] {
}
.fb-red[data-v-0b466184]    { color: #dc2626;
}
.fb-blue[data-v-0b466184]   { color: #2563eb;
}
.fb-green[data-v-0b466184]  { color: #16a34a;
}
.fb-amber[data-v-0b466184]  { color: #d97706;
}
.fb-purple[data-v-0b466184] { color: #7c3aed;
}
.fb-slate[data-v-0b466184]  { color: #a1a1aa;
}
.fb-ext[data-v-0b466184] {
  position: absolute; bottom: -3px; right: -6px;
  font-size: 6px; font-weight: 800; letter-spacing: 0.3px;
  padding: 1px 3px; border-radius: 2px; line-height: 1;
  border: 1px solid var(--surface-raised, #fff);
  color: #fff;
}
.fb-pill-red[data-v-0b466184]    { background: #ef4444;
}
.fb-pill-blue[data-v-0b466184]   { background: #3b82f6;
}
.fb-pill-green[data-v-0b466184]  { background: #22c55e;
}
.fb-pill-amber[data-v-0b466184]  { background: #f59e0b;
}
.fb-pill-purple[data-v-0b466184] { background: #a78bfa;
}
.fb-pill-slate[data-v-0b466184]  { background: #94a3b8;
}


/* --- INFO TEXT --- */
.attachment-info[data-v-0b466184] {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}
.attachment-name[data-v-0b466184] {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--text-primary);
  margin-bottom: var(--space-0-5);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.attachment-size[data-v-0b466184] {
  font-size: var(--font-size-xs);
  color: var(--text-quaternary);
  font-weight: var(--font-weight-normal);
}

/* --- MALWARE BLOCK (Defender) --- */
.attachment-card.is-malware[data-v-0b466184] {
  border-color: #f6cccc;
  background: #fdecec;
  cursor: not-allowed;
}
.attachment-card.is-malware .file-badge[data-v-0b466184] { opacity: 0.55;
}
.attachment-card.is-malware .attachment-name[data-v-0b466184] { color: #b42318;
}
.attachment-malware[data-v-0b466184] {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: var(--font-size-xs);
  font-weight: 600;
  color: #dc2626;
}
.attachment-download.is-blocked[data-v-0b466184] {
  color: #dc2626;
  cursor: not-allowed;
  opacity: 0.7;
}

/* --- ACTION BUTTONS --- */
.attachment-action[data-v-0b466184] {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: var(--radius-base);
  cursor: pointer;
  transition: var(--transition-all);
  background: transparent;
  opacity: 0.6;
  color: var(--text-secondary);
  position: relative;
  z-index: 10;
  pointer-events: auto;
}
.attachment-action svg[data-v-0b466184] {
  width: 18px;
  height: 18px;
  pointer-events: none;
}
.attachment-action svg[data-v-0b466184] * {
  pointer-events: none;
}
.attachment-action[data-v-0b466184]:hover {
  opacity: 1;
  background: var(--bg-hover);
  color: var(--text-primary);
}
.attachment-download[data-v-0b466184]:hover {
  color: var(--color-success);
  background: var(--color-success-bg);
}
.attachment-remove[data-v-0b466184]:hover {
  color: var(--color-error);
  background: var(--color-error-bg);
}

/* Animación de entrada */
@keyframes slideIn-0b466184 {
from {
    opacity: 0;
    transform: translateX(-10px);
}
to {
    opacity: 1;
    transform: translateX(0);
}
}
.attachment-card[data-v-0b466184] {
  animation: slideIn-0b466184 var(--duration-normal) var(--ease-out);
}

.ian-overlay[data-v-670dc468] {
  position: fixed;
  inset: 0;
  z-index: 3200;
  background: rgba(15, 16, 22, 0.66);
  backdrop-filter: blur(3px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
}
.ian-panel[data-v-670dc468] {
  display: flex;
  flex-direction: column;
  width: min(92vw, 1400px);
  max-height: 88vh;
  background: var(--surface-raised, #fff);
  border: 1px solid var(--border-primary, #e8e8ec);
  border-radius: 12px;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.35);
  overflow: hidden;
}
.ian-bar[data-v-670dc468] {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border-bottom: 1px solid var(--border-secondary, #eeeef2);
  background: var(--bg-primary, #fafafc);
  flex: 0 0 auto;
}
.ian-spacer[data-v-670dc468] {
  flex: 1 1 auto;
}
.ian-sep[data-v-670dc468] {
  width: 1px;
  height: 18px;
  background: var(--border-primary, #e8e8ec);
  margin: 0 4px;
}
.ian-dims[data-v-670dc468] {
  font-size: 12px;
  color: var(--text-tertiary, #71717a);
  font-variant-numeric: tabular-nums;
  margin-right: 6px;
}
.ian-btn[data-v-670dc468] {
  background: var(--surface-raised, #fff);
  color: var(--text-secondary, #52525b);
  border: 1px solid var(--border-primary, #e8e8ec);
  border-radius: 7px;
  padding: 5px 10px;
  font-size: 12px;
  cursor: pointer;
}
.ian-btn[data-v-670dc468]:hover {
  background: var(--bg-hover, #f0f1f3);
}
.ian-btn[data-v-670dc468]:disabled {
  opacity: 0.4;
  cursor: default;
}
.ian-btn.is-on[data-v-670dc468] {
  background: var(--bg-selected, rgba(79, 70, 229, 0.08));
  border-color: var(--accent-primary, #4f46e5);
  color: var(--accent-primary, #4f46e5);
}
.ian-btn.is-primary[data-v-670dc468] {
  background: var(--accent-primary, #4f46e5);
  border-color: var(--accent-primary, #4f46e5);
  color: #fff;
}
/* Centred with margin:auto, never justify-content — V21.627: that centres an
   overflowing child by pushing it outside the scrollable area. */
.ian-stage[data-v-670dc468] {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  display: flex;
  background: var(--bg-secondary, #f0f1f3);
}
.ian-canvas[data-v-670dc468] {
  display: block;
  margin: auto;
  cursor: crosshair;
  background: #fff;
}
.ian-hint[data-v-670dc468] {
  flex: 0 0 auto;
  margin: 0;
  padding: 7px 12px;
  font-size: 11px;
  color: var(--text-tertiary, #71717a);
  border-top: 1px solid var(--border-secondary, #eeeef2);
  background: var(--bg-primary, #fafafc);
}

.snooze-overlay[data-v-8427486e] {
  position: fixed;
  inset: 0;
  z-index: 999;
}
.snooze-dropdown[data-v-8427486e] {
  position: fixed;
  background: var(--surface-raised, white);
  border: 1px solid var(--border-primary, #e8e8ec);
  border-radius: 14px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1), 0 2px 8px rgba(0, 0, 0, 0.05);
  width: 280px;
  padding: 6px;
  z-index: 1000;
}
.snooze-header[data-v-8427486e] {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px 6px;
  font-size: 11px;
  font-weight: 600;
  color: var(--text-quaternary, #a1a1aa);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.snooze-back[data-v-8427486e] {
  width: 22px; height: 22px; border-radius: 6px; border: none;
  background: var(--bg-hover, #f4f4f5); color: var(--text-secondary, #52525b); cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all 0.12s ease;
}
.snooze-back[data-v-8427486e]:hover { background: var(--bg-active, #e4e4e7);
}
.snooze-options[data-v-8427486e] { display: flex; flex-direction: column; gap: 2px;
}
.snooze-option[data-v-8427486e] {
  display: flex; align-items: center; gap: 10px;
  width: 100%; padding: 9px 10px;
  background: transparent; border: none; border-radius: 10px;
  cursor: pointer; transition: all 0.12s ease;
  text-align: left; color: var(--text-primary, #3f3f46);
}
.snooze-option[data-v-8427486e]:hover { background: var(--bg-hover, #f4f4f5);
}
.snooze-option[data-v-8427486e]:active { background: var(--bg-active, #e4e4e7); transform: scale(0.99);
}
.snooze-option-icon[data-v-8427486e] {
  width: 32px; height: 32px; border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  background: color-mix(in srgb, currentColor 8%, transparent);
}
.snooze-option-content[data-v-8427486e] { flex: 1; display: flex; flex-direction: column; gap: 1px; min-width: 0;
}
.snooze-option-label[data-v-8427486e] { font-size: 13px; font-weight: 500; color: var(--text-primary, #3f3f46);
}
.snooze-option-time[data-v-8427486e] { font-size: 11.5px; color: var(--text-quaternary, #a1a1aa);
}
.snooze-option-custom[data-v-8427486e]:hover { background: var(--bg-selected);
}
.snooze-divider[data-v-8427486e] { height: 1px; background: var(--bg-hover, #f4f4f5); margin: 4px 8px;
}

/* ── Mini calendar ── */
.cal[data-v-8427486e] { padding: 2px 6px;
}
.cal-nav[data-v-8427486e] {
  display: flex; align-items: center; justify-content: space-between;
  padding: 2px 0 6px;
}
.cal-month-label[data-v-8427486e] { font-size: 12.5px; font-weight: 600; color: var(--text-primary, #3f3f46);
}
.cal-nav-btn[data-v-8427486e] {
  width: 24px; height: 24px; border-radius: 6px; border: none;
  background: transparent; color: var(--text-quaternary, #a1a1aa); cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all 0.12s;
}
.cal-nav-btn[data-v-8427486e]:hover { background: var(--bg-hover, #f4f4f5); color: var(--text-primary, #3f3f46);
}
.cal-grid[data-v-8427486e] {
  display: grid; grid-template-columns: repeat(7, 1fr); gap: 1px;
}
.cal-wk[data-v-8427486e] {
  text-align: center; font-size: 10px; font-weight: 500;
  color: var(--text-quaternary, #a1a1aa); padding: 2px 0 4px;
}
.cal-day[data-v-8427486e] {
  aspect-ratio: 1; border: none; border-radius: 50%;
  background: transparent; color: var(--text-primary, #3f3f46); font-size: 11.5px; font-weight: 400;
  cursor: pointer; transition: all 0.1s ease;
  display: flex; align-items: center; justify-content: center;
}
.cal-day[data-v-8427486e]:hover:not(:disabled):not(.selected) { background: var(--bg-hover, #f4f4f5);
}
.cal-day.other[data-v-8427486e] { color: #d4d4d8;
}
.cal-day.today[data-v-8427486e]:not(.selected) { color: #6366f1; font-weight: 600; position: relative;
}
.cal-day.today[data-v-8427486e]:not(.selected)::after {
  content: ''; position: absolute; bottom: 2px; left: 50%; transform: translateX(-50%);
  width: 3px; height: 3px; border-radius: 50%; background: #6366f1;
}
.cal-day.selected[data-v-8427486e] { background: #6366f1; color: white; font-weight: 500;
}
.cal-day.selected[data-v-8427486e]:hover { background: #4f46e5;
}
.cal-day.past[data-v-8427486e] { color: #e4e4e7; cursor: default;
}

/* ── Time chips ── */
.time-section[data-v-8427486e] { padding: 0 6px 4px;
}
.time-chips[data-v-8427486e] {
  display: flex; gap: 3px;
}
.time-chip[data-v-8427486e] {
  flex: 1; padding: 5px 0; border-radius: 6px; border: 1px solid var(--border-primary, #e8e8ec);
  background: var(--surface-raised, white); color: var(--text-secondary, #52525b); font-size: 11px; cursor: pointer;
  transition: all 0.12s; font-family: inherit; font-variant-numeric: tabular-nums;
  text-align: center;
}
.time-chip[data-v-8427486e]:hover { background: var(--bg-hover, #f4f4f5); border-color: var(--border-hover, #d4d4d8);
}
.time-chip.active[data-v-8427486e] { background: #6366f1; border-color: #6366f1; color: white; font-weight: 500;
}

/* ── Confirm bar ── */
.confirm-bar[data-v-8427486e] {
  display: flex; align-items: center; justify-content: space-between;
  padding: 8px 8px 6px; border-top: 1px solid #f4f4f5; margin-top: 4px;
}
.confirm-preview[data-v-8427486e] {
  display: flex; align-items: center; gap: 5px;
  font-size: 11.5px; color: var(--text-tertiary, #71717a);
}
.confirm-btn[data-v-8427486e] {
  padding: 6px 16px; border-radius: 8px; border: none;
  background: #6366f1; color: white; font-size: 12px; font-weight: 500;
  cursor: pointer; transition: all 0.15s;
}
.confirm-btn[data-v-8427486e]:hover { background: #4f46e5;
}
.confirm-btn[data-v-8427486e]:disabled { opacity: 0.35; cursor: not-allowed;
}

/* Transitions */
.snooze-fade-enter-active[data-v-8427486e] { animation: snoozeFadeIn-8427486e 0.15s ease-out;
}
.snooze-fade-leave-active[data-v-8427486e] { animation: snoozeFadeOut-8427486e 0.1s ease-in;
}
@keyframes snoozeFadeIn-8427486e {
from { opacity: 0; transform: translateY(-4px) scale(0.98);
}
to { opacity: 1; transform: translateY(0) scale(1);
}
}
@keyframes snoozeFadeOut-8427486e {
from { opacity: 1;
}
to { opacity: 0;
}
}

.draftai[data-v-596c8ff5] {
  width: 100%;
  max-width: 560px;
  max-height: 420px;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--accent-color, #c4b5fd);
  border-radius: 10px;
  background: var(--bg-elevated, #fff);
  box-shadow: 0 6px 24px rgba(109, 40, 217, 0.16);
  overflow: hidden;
  font-size: 13px;
}
.draftai-resultwrap[data-v-596c8ff5],
.draftai-promptwrap[data-v-596c8ff5] { overflow-y: auto;
}
.draftai-head[data-v-596c8ff5] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 10px;
  border-bottom: 1px solid var(--border-color, #eceef1);
}
.draftai-title[data-v-596c8ff5] {
  display: flex;
  align-items: center;
  gap: 7px;
  font-weight: 600;
  color: var(--accent-color, #6d28d9);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.draftai-x[data-v-596c8ff5] {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--text-secondary, #6b7280);
  display: flex;
  padding: 2px;
  border-radius: 4px;
}
.draftai-x[data-v-596c8ff5]:hover { background: var(--bg-hover, #f3f4f6);
}
.draftai-promptwrap[data-v-596c8ff5] { padding: 10px;
}
.draftai-input[data-v-596c8ff5],
.draftai-refine[data-v-596c8ff5] {
  width: 100%;
  border: 1px solid var(--border-color, #d1d5db);
  border-radius: 6px;
  padding: 8px 10px;
  font: inherit;
  color: var(--text-primary, #111827);
  background: var(--bg-input, #fff);
  resize: vertical;
  box-sizing: border-box;
}
.draftai-input[data-v-596c8ff5]:focus,
.draftai-refine[data-v-596c8ff5]:focus {
  outline: none;
  border-color: var(--accent-color, #6d28d9);
}
.draftai-actions[data-v-596c8ff5] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 8px;
}
.draftai-hint[data-v-596c8ff5] {
  font-size: 12px;
  color: var(--text-secondary, #9ca3af);
  display: flex;
  align-items: center;
  gap: 5px;
}
.draftai-resultwrap[data-v-596c8ff5] { padding: 10px;
}
.draftai-draft[data-v-596c8ff5] {
  max-height: 260px;
  overflow-y: auto;
  border: 1px solid var(--border-color, #e5e7eb);
  border-radius: 6px;
  padding: 10px 12px;
  background: var(--bg-input, #fff);
  color: var(--text-primary, #1f2937);
  line-height: 1.5;
}
.draftai-draft[data-v-596c8ff5] p { margin: 0 0 10px;
}
.draftai-draft[data-v-596c8ff5] p:last-child { margin-bottom: 0;
}
.draftai-refine[data-v-596c8ff5] { margin-top: 8px;
}
.draftai-buttons[data-v-596c8ff5] {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
  align-items: center;
}
.draftai-btn[data-v-596c8ff5] {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: 1px solid var(--border-color, #d1d5db);
  background: var(--bg-elevated, #fff);
  color: var(--text-primary, #374151);
  border-radius: 6px;
  padding: 6px 10px;
  font: inherit;
  font-weight: 500;
  cursor: pointer;
}
.draftai-btn[data-v-596c8ff5]:hover:not(:disabled) { background: var(--bg-hover, #f3f4f6);
}
.draftai-btn[data-v-596c8ff5]:disabled { opacity: 0.5; cursor: default;
}
.draftai-btn.primary[data-v-596c8ff5] {
  background: var(--accent-color, #6d28d9);
  border-color: var(--accent-color, #6d28d9);
  color: #fff;
}
/* Explicit background here so the generic `.draftai-btn:hover` (grey) can't win
   on specificity and leave white text on a white fill. */
.draftai-btn.primary[data-v-596c8ff5]:hover:not(:disabled) {
  background: var(--accent-color, #6d28d9);
  color: #fff;
  filter: brightness(1.1);
}
.draftai-adjust[data-v-596c8ff5] { position: relative;
}
.draftai-adjust-menu[data-v-596c8ff5] {
  position: absolute;
  bottom: calc(100% + 4px);
  left: 0;
  background: var(--bg-elevated, #fff);
  border: 1px solid var(--border-color, #d1d5db);
  border-radius: 6px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
  min-width: 190px;
  z-index: 20;
  overflow: hidden;
}
.draftai-adjust-item[data-v-596c8ff5] { padding: 8px 12px; cursor: pointer; white-space: nowrap;
}
.draftai-adjust-item[data-v-596c8ff5]:hover { background: var(--bg-hover, #f3f4f6);
}
.draftai-busy[data-v-596c8ff5] {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  font-size: 12px;
  color: var(--text-secondary, #6b7280);
}
.draftai-disclaimer[data-v-596c8ff5] {
  margin-top: 8px;
  font-size: 11px;
  color: var(--text-secondary, #9ca3af);
}
.spin[data-v-596c8ff5] { animation: draftai-spin-596c8ff5 0.9s linear infinite;
}
@keyframes draftai-spin-596c8ff5 {
to { transform: rotate(360deg);
}
}
