/* sfc-style:/rails/app/javascript/views/upload-workflow/FileUpload.vue?type=style&index=0 */
.upload-container[data-v-87cc5ee1] {
  height: 100px;
  padding: 24px;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition:
    background-color 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
  overflow: hidden;
  box-sizing: border-box;
}
.upload-container button.btn[data-v-87cc5ee1]:active {
  position: absolute !important;
  right: 1rem !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

/* sfc-style:/rails/app/javascript/views/upload-workflow/FunctionSelection.vue?type=style&index=0 */
.selection-container[data-v-7ffc3135] {
  border-radius: 10px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  transition: all 0.3s ease;
  overflow: hidden;
  box-sizing: border-box;
}
.column[data-v-7ffc3135] {
  flex: 1;
  padding: 24px;
}
.column[data-v-7ffc3135]:first-child {
  flex: 0 0 61.9%;
}
.column[data-v-7ffc3135]:last-child {
  flex: 0 0 38%;
}
.sortable-list[data-v-7ffc3135] {
  list-style: none;
  padding: 0;
}
.sortable-item[data-v-7ffc3135] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px;
  cursor: default;
  transition: background-color 0.3s ease;
  border-bottom: 1px solid #ddd;
}
.move-icon[data-v-7ffc3135],
.info-icon[data-v-7ffc3135],
.delete-icon[data-v-7ffc3135] {
  display: flex;
  align-items: center;
  cursor: pointer;
}
.move-icon[data-v-7ffc3135] {
  margin-right: 8px;
  cursor: grab;
}
.function-name[data-v-7ffc3135] {
  flex-grow: 1;
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: bold;
}
.function-name-neutral[data-v-7ffc3135] {
  flex-grow: 1;
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: normal;
}
.delete-icon[data-v-7ffc3135] {
  color: grey;
}
.delete-icon[data-v-7ffc3135]:hover {
  opacity: 0.7;
}
.sortable-item[data-v-7ffc3135]:last-child {
  border-bottom: none;
}
.sortable-ghost[data-v-7ffc3135] {
  opacity: 0.5;
}
.divider[data-v-7ffc3135] {
  width: 1px;
  background-color: #f3f4f6 !important;
  margin: 0 !important;
  align-self: stretch !important;
  height: auto !important;
}
.menu[data-v-7ffc3135] {
  display: flex;
  gap: 24px;
  padding-bottom: 8px;
}
.menu a[data-v-7ffc3135] {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  padding-bottom: 4px;
}
.menu a.selected[data-v-7ffc3135] {
  font-weight: bold;
}
.menu a.selected[data-v-7ffc3135]:hover {
  text-decoration: none;
}
.menu a[data-v-7ffc3135]:hover {
  text-decoration: underline;
}
.additional-functions-list[data-v-7ffc3135] {
  list-style: none;
  padding: 0;
  margin-top: 4px;
}
.additional-item[data-v-7ffc3135] {
  display: flex;
  align-items: center;
  gap: 0px;
  font-weight: normal;
  border-bottom: 1px solid #ddd;
  padding: 10px;
  cursor: default;
  transition: background-color 0.3s ease;
}
.additional-item[data-v-7ffc3135]:last-child {
  border-bottom: none;
}
.plus-icon[data-v-7ffc3135] {
  display: flex;
  align-items: center;
  cursor: pointer;
  margin-right: 8px;
}
.plus-icon[data-v-7ffc3135]:hover {
  opacity: 0.7;
}
.tooltip[data-v-7ffc3135]:before {
  font-weight: normal !important;
  font-size: 14px;
  max-width: 250px;
  white-space: normal;
}

/* sfc-style:/rails/app/javascript/views/upload-workflow/ColumnMapping.vue?type=style&index=0 */
.mapping-container[data-v-2f57aa15] {
  border-radius: 10px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  transition: all 0.3s ease;
  max-width: 100%;
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: visible;
  width: 100%;
}
.table-wrapper[data-v-2f57aa15] {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
}
.table-wrapper table[data-v-2f57aa15] {
  width: 100%;
  min-width: max-content;
  border-collapse: collapse;
  overflow: visible;
}
.table-wrapper table td[data-v-2f57aa15]:first-child,
.table-wrapper table th[data-v-2f57aa15]:first-child {
  position: sticky;
  left: 0;
  z-index: 10000;
  border-right: 1px solid white;
}
.table-wrapper table th[data-v-2f57aa15]:first-child {
  z-index: 10000;
}
.table-wrapper table td[data-v-2f57aa15] {
  max-width: 300px;
  word-wrap: break-word;
  text-overflow: ellipsis;
  white-space: normal;
  display: table-cell;
  line-height: 1.5;
  height: 4.5em;
  overflow: visible;
}
.table-wrapper table tbody[data-v-2f57aa15] {
  overflow: visible;
}
.table-wrapper table tr[data-v-2f57aa15] {
  overflow: visible;
}
.table-wrapper table td[data-v-2f57aa15]:has(.dropdown) {
  position: relative;
  z-index: 100;
  overflow: visible;
}
.dropdown .dropdown-content[data-v-2f57aa15] {
  position: absolute !important;
  z-index: 10001 !important;
}

/* sfc-style:/rails/app/javascript/views/upload-workflow/WorkflowApp.vue?type=style&index=0 */
.fade-slide-enter-active[data-v-eddfb38c] {
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}
.fade-slide-leave-active[data-v-eddfb38c] {
  transition: opacity 0.3s ease-in, transform 0.3s ease-in;
}
.fade-slide-enter-from[data-v-eddfb38c],
.fade-slide-leave-to[data-v-eddfb38c] {
  opacity: 0;
  transform: translateY(-10px);
}

/* sfc-style:/rails/app/javascript/components/actions/ExportData/PreviewWindow.vue?type=style&index=0 */
.slide-up-enter-active[data-v-7b4cfba4],
.slide-up-leave-active[data-v-7b4cfba4] {
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.slide-up-enter-from[data-v-7b4cfba4],
.slide-up-leave-to[data-v-7b4cfba4] {
  transform: translateY(100%);
  opacity: 0;
}
.slide-up-enter-to[data-v-7b4cfba4],
.slide-up-leave-from[data-v-7b4cfba4] {
  transform: translateY(0);
  opacity: 1;
}
.preview-expanded[data-v-7b4cfba4] {
  height: 300px;
}
table[data-v-7b4cfba4] {
  border-collapse: separate;
  border-spacing: 0;
}

/* sfc-style:/rails/app/javascript/components/actions/SendOffers/TemplateSelection.vue?type=style&index=0 */
.collapse-enter-active[data-v-a2e9b954],
.collapse-leave-active[data-v-a2e9b954] {
  transition: all 300ms ease;
}
.collapse-enter-from[data-v-a2e9b954],
.collapse-leave-to[data-v-a2e9b954] {
  opacity: 0;
  transform: translateY(-10px);
}
h3[data-v-a2e9b954] {
  letter-spacing: normal !important;
}
.animate-fade-in[data-v-a2e9b954] {
  animation: fadeIn-a2e9b954 0.3s ease-in-out forwards;
}
.animate-scale-in[data-v-a2e9b954] {
  animation: scaleIn-a2e9b954 0.3s ease-in-out forwards;
}
@keyframes fadeIn-a2e9b954 {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes scaleIn-a2e9b954 {
  from {
    transform: scale(0.75);
  }
  to {
    transform: scale(1);
  }
}

/* sfc-style:/rails/app/javascript/components/actions/SendOffers/OfferFormat.vue?type=style&index=0 */
.column[data-v-019bcb48] {
  flex: 1;
  padding: 24px;
}
.column[data-v-019bcb48]:first-child {
  flex: 0 0 38;
}
.column[data-v-019bcb48]:last-child {
  flex: 0 0 61.9%;
}
.divider[data-v-019bcb48] {
  width: 1px;
  background-color: #f3f4f6 !important;
  margin: 0 !important;
  align-self: stretch !important;
  height: auto !important;
}
.sortable-list[data-v-019bcb48] {
  list-style: none;
  padding: 0;
}
.sortable-item[data-v-019bcb48] {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 10px;
  cursor: default;
  border-bottom: 1px solid #ddd;
}
.move-icon[data-v-019bcb48],
.info-icon[data-v-019bcb48],
.delete-icon[data-v-019bcb48] {
  display: flex;
  align-items: center;
  cursor: pointer;
}
.move-icon[data-v-019bcb48] {
  margin-right: 8px;
  cursor: grab;
}
.function-name[data-v-019bcb48] {
  flex-grow: 1;
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: bold;
}
.function-name-neutral[data-v-019bcb48] {
  flex-grow: 1;
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: normal;
}
.delete-icon[data-v-019bcb48] {
  color: grey;
}
.delete-icon[data-v-019bcb48]:hover {
  opacity: 0.7;
}
.sortable-item[data-v-019bcb48]:last-child {
  border-bottom: none;
}
.item-controls[data-v-019bcb48] {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}
.popover[data-v-019bcb48] {
  display: flex;
  align-items: center;
  margin-top: 0.5rem;
  padding: 0.5rem;
  width: 100%;
}
.hidden[data-v-019bcb48] {
  display: none;
}
.popover-enter-active[data-v-019bcb48],
.popover-leave-active[data-v-019bcb48] {
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.popover-enter-from[data-v-019bcb48],
.popover-leave-to[data-v-019bcb48] {
  opacity: 0;
  transform: translateY(-10px);
}
.popover-enter-to[data-v-019bcb48],
.popover-leave-from[data-v-019bcb48] {
  opacity: 1;
  transform: translateY(0);
}
.fade-slide-enter-active[data-v-019bcb48],
.fade-slide-leave-active[data-v-019bcb48] {
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.fade-slide-enter-from[data-v-019bcb48],
.fade-slide-leave-to[data-v-019bcb48] {
  opacity: 0;
  transform: translateY(-10px);
}
.fade-slide-enter-to[data-v-019bcb48],
.fade-slide-leave-from[data-v-019bcb48] {
  opacity: 1;
  transform: translateY(0);
}
h3[data-v-019bcb48] {
  letter-spacing: normal !important;
}
select[data-v-019bcb48] {
  letter-spacing: normal !important;
}
select option[data-v-019bcb48] {
  letter-spacing: normal !important;
}

/* sfc-style:/rails/app/javascript/components/actions/SendOffers/RichTextBlock.vue?type=style&index=0 */
.btn[data-v-c3f309b6],
.btn[data-v-c3f309b6]:hover,
.btn[data-v-c3f309b6]:active,
.btn[data-v-c3f309b6]:focus {
  --btn-scale: 1 !important;
}
.prose h1[data-v-c3f309b6],
.prose h2[data-v-c3f309b6],
.prose h3[data-v-c3f309b6],
.prose h4[data-v-c3f309b6],
.prose h5[data-v-c3f309b6],
.prose h6[data-v-c3f309b6],
.prose p[data-v-c3f309b6],
.prose ol[data-v-c3f309b6],
.prose ul[data-v-c3f309b6] {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}
[data-v-c3f309b6] .prose h1,
[data-v-c3f309b6] .prose h2,
[data-v-c3f309b6] .prose h3,
[data-v-c3f309b6] .prose h4,
[data-v-c3f309b6] .prose h5,
[data-v-c3f309b6] .prose h6,
[data-v-c3f309b6] .prose p,
[data-v-c3f309b6] .prose ol,
[data-v-c3f309b6] .prose ul {
  margin-block-start: 0.5rem !important;
  margin-block-end: 0.5rem !important;
}
[data-v-c3f309b6] .prose {
  color: inherit !important;
}
li[data-v-c3f309b6] {
  margin-top: 8px !important;
  margin-bottom: 8px !important;
}
.btn[data-v-c3f309b6]:hover,
.btn[data-v-c3f309b6]:focus {
  @apply bg-gray-200 outline-none ring-0 shadow-none;
}

/* sfc-style:/rails/app/javascript/components/actions/SendOffers/EmailDesigner.vue?type=style&index=0 */
.fade-slide-enter-active[data-v-e3565966],
.fade-slide-leave-active[data-v-e3565966] {
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.fade-slide-enter-from[data-v-e3565966],
.fade-slide-leave-to[data-v-e3565966] {
  opacity: 0;
  transform: translateY(-10px);
}
.fade-slide-enter-to[data-v-e3565966],
.fade-slide-leave-from[data-v-e3565966] {
  opacity: 1;
  transform: translateY(0);
}
h3[data-v-e3565966] {
  letter-spacing: normal !important;
}
select[data-v-e3565966] {
  letter-spacing: normal !important;
}
select option[data-v-e3565966] {
  letter-spacing: normal !important;
}

/* sfc-style:/rails/app/javascript/components/actions/SendOffers/EmailPreview.vue?type=style&index=0 */
.fade-slide-enter-active[data-v-b4b6cf42],
.fade-slide-leave-active[data-v-b4b6cf42] {
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.fade-slide-enter-from[data-v-b4b6cf42],
.fade-slide-leave-to[data-v-b4b6cf42] {
  opacity: 0;
  transform: translateY(-10px);
}
.fade-slide-enter-to[data-v-b4b6cf42],
.fade-slide-leave-from[data-v-b4b6cf42] {
  opacity: 1;
  transform: translateY(0);
}
.prose h1[data-v-b4b6cf42],
.prose h2[data-v-b4b6cf42],
.prose h3[data-v-b4b6cf42],
.prose h4[data-v-b4b6cf42],
.prose h5[data-v-b4b6cf42],
.prose h6[data-v-b4b6cf42],
.prose p[data-v-b4b6cf42],
.prose ol[data-v-b4b6cf42],
.prose ul[data-v-b4b6cf42] {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}
[data-v-b4b6cf42] .prose h1,
[data-v-b4b6cf42] .prose h2,
[data-v-b4b6cf42] .prose h3,
[data-v-b4b6cf42] .prose h4,
[data-v-b4b6cf42] .prose h5,
[data-v-b4b6cf42] .prose h6,
[data-v-b4b6cf42] .prose p,
[data-v-b4b6cf42] .prose ol,
[data-v-b4b6cf42] .prose ul {
  margin-block-start: 0.5rem !important;
  margin-block-end: 0.5rem !important;
}
[data-v-b4b6cf42] .prose {
  color: inherit !important;
}

/* sfc-style:/rails/app/javascript/views/actions/SendOffers/Main.vue?type=style&index=0 */
[data-v-c7d4dc79] h3 {
  letter-spacing: normal !important;
}
[data-v-c7d4dc79] select,
[data-v-c7d4dc79] select option {
  letter-spacing: normal !important;
}

/* sfc-style:/rails/app/javascript/views/actions/SendOffers/Main.vue?type=style&index=1 */
.component-container {
  border-radius: 10px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  transition: all 0.3s ease;
  overflow: hidden;
  box-sizing: border-box;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  letter-spacing: normal !important;
}
select,
select option {
  letter-spacing: normal !important;
}
select:invalid,
select[data-placeholder]:not([data-placeholder=""]),
select:has(option[value=""]:checked) {
  letter-spacing: normal !important;
}

/* sfc-style:/rails/app/javascript/components/ConversionStatistics.vue?type=style&index=0 */
.conversion-statistics[data-v-d3ba4d9d] {
  @apply space-y-6;
}
.loading-container[data-v-d3ba4d9d] {
  @apply flex items-center justify-center py-8;
}
.statistics-content[data-v-d3ba4d9d] {
  @apply space-y-6;
}
.field-summary[data-v-d3ba4d9d] {
  @apply bg-base-100 rounded-lg p-6;
}
.no-statistics[data-v-d3ba4d9d] {
  @apply text-center py-8;
}
.radial-progress[data-v-d3ba4d9d] {
  @apply w-12 h-12;
}

/* sfc-style:/rails/app/javascript/views/uploads/Upload.vue?type=style&index=0 */
.fade-slide-enter-active[data-v-6121c070],
.fade-slide-leave-active[data-v-6121c070] {
  transition: all 0.3s ease;
}
.fade-slide-enter-from[data-v-6121c070] {
  opacity: 0;
  transform: translateY(-10px);
}
.fade-slide-leave-to[data-v-6121c070] {
  opacity: 0;
  transform: translateY(-10px);
}
@keyframes stripe-move-6121c070 {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -20px 0;
  }
}
.progress-striped[data-v-6121c070] {
  background-image:
    linear-gradient(
      45deg,
      rgba(255, 255, 255, .15) 25%,
      transparent 25%,
      transparent 50%,
      rgba(255, 255, 255, .15) 50%,
      rgba(255, 255, 255, .15) 75%,
      transparent 75%,
      transparent);
  background-size: 20px 20px;
}
.progress-animated[data-v-6121c070] {
  animation: stripe-move-6121c070 1s linear infinite;
}
.progress[data-v-6121c070] {
  background-color: #e5e7eb;
  border-radius: 0.375rem;
  overflow: hidden;
}
.progress-bar[data-v-6121c070] {
  height: 100%;
  border-radius: 0.375rem;
}

/* sfc-style:/rails/app/javascript/components/SimpleFileUpload.vue?type=style&index=0 */
.upload-zone[data-v-5ca072df] {
  cursor: pointer;
  user-select: none;
}
.upload-zone[data-v-5ca072df]:active {
  transform: scale(0.99);
}
.simple-file-upload[data-v-5ca072df] {
  animation: fadeIn-5ca072df 0.3s ease-in;
}
.upload-progress[data-v-5ca072df] {
  animation: fadeIn-5ca072df 0.3s ease-in;
}
.upload-success[data-v-5ca072df] {
  animation: successPop-5ca072df 0.4s ease-out;
}
@keyframes fadeIn-5ca072df {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes successPop-5ca072df {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  50% {
    transform: scale(1.02);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

/* sfc-style:/rails/app/javascript/components/upload_workflow/FileInfoHeader.vue?type=style&index=0 */
.file-info-header[data-v-720abfa3] {
  @apply w-full mb-6;
}
.file-icon[data-v-720abfa3] {
  @apply flex items-center justify-center;
}
.file-details[data-v-720abfa3] {
  @apply flex flex-col;
}
.file-actions[data-v-720abfa3] {
  @apply flex items-center;
}
.modal[data-v-720abfa3] {
  @apply z-50;
}
.modal-box[data-v-720abfa3] {
  @apply max-w-md;
}
@media (max-width: 640px) {
  .file-info-header .flex[data-v-720abfa3] {
    @apply flex-col items-start gap-3;
  }
  .file-actions[data-v-720abfa3] {
    @apply w-full;
  }
  .file-actions button[data-v-720abfa3] {
    @apply w-full;
  }
}

/* sfc-style:/rails/app/javascript/components/upload_workflow/StepNavigation.vue?type=style&index=0 */
.step-navigation[data-v-5273c304] {
  @apply w-full py-6;
}
.step[data-v-5273c304] {
  @apply transition-all duration-200;
}
.step[data-v-5273c304]::after {
  z-index: 10;
}
.step[data-v-5273c304]::before {
  z-index: 1;
}
.step[data-v-5273c304]:not(.step-disabled):hover {
  @apply opacity-80;
}
.step-disabled[data-v-5273c304] {
  @apply pointer-events-none;
}
.step-content[data-v-5273c304] {
  @apply flex flex-col items-center;
}
.step-label[data-v-5273c304] {
  @apply text-sm font-medium mt-2;
}
.step-validation[data-v-5273c304] {
  @apply flex flex-col items-center;
}
.step-success + .step[data-v-5273c304]::before,
.step-success + .step-success[data-v-5273c304]::before {
  @apply bg-success;
}
.step-primary[data-v-5273c304] {
  @apply text-primary;
}
.step-primary[data-v-5273c304]::before {
  @apply bg-primary;
}
.step-success + .step-primary[data-v-5273c304]::before {
  background-color: var(--step-bg) !important;
}
.step-success[data-v-5273c304] {
  @apply text-success;
}

/* sfc-style:/rails/app/javascript/components/upload_workflow/steps/StructureStep.vue?type=style&index=0 */
.structure-step[data-v-393670b6] {
  @apply w-full;
}
.table td[data-v-393670b6] {
  @apply whitespace-nowrap;
}
.bg-info\/10[data-v-393670b6] {
  background-color: rgba(59, 130, 246, 0.1);
}
.bg-success\/10[data-v-393670b6] {
  background-color: rgba(34, 197, 94, 0.1);
}
.overflow-x-auto[data-v-393670b6] {
  @apply -mx-4 sm:mx-0;
}
.form-control input[type=number][data-v-393670b6] {
  @apply font-mono;
}
.loading-spinner[data-v-393670b6] {
  @apply animate-spin;
}

/* sfc-style:/rails/app/javascript/components/shared/DataEnhancementConfigModal.vue?type=style&index=0 */
.marketplace-grid[data-v-0944aace] {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
}
.overflow-wrap-anywhere[data-v-0944aace] {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* sfc-style:/rails/app/javascript/components/upload_workflow/steps/DataEnhancementsStep.vue?type=style&index=0 */
.data-enhancements-step[data-v-583b1e6a] {
  @apply w-full;
}
.card[data-v-583b1e6a] {
  @apply transition-all duration-200;
}
.card[data-v-583b1e6a]:hover {
  @apply transform -translate-y-1;
}
.card.ring-2[data-v-583b1e6a] {
  @apply ring-offset-2;
}
.btn-outline[data-v-583b1e6a]:hover {
  @apply shadow-md;
}
.modal-box[data-v-583b1e6a] {
  @apply max-h-[90vh] overflow-y-auto;
}
.grid label[data-v-583b1e6a] {
  @apply bg-base-200/50 p-2 rounded hover:bg-base-200;
}
.marketplace-grid label[data-v-583b1e6a] {
  @apply bg-base-100 border-base-300;
}
.marketplace-grid label[data-v-583b1e6a]:hover {
  @apply border-primary/50 shadow-sm;
}
.marketplace-grid label.bg-primary\/10[data-v-583b1e6a] {
  @apply border-2 shadow-sm;
}
.loading-spinner[data-v-583b1e6a] {
  @apply animate-spin;
}
.alert[data-v-583b1e6a] {
  @apply rounded-lg;
}
.rotate-180[data-v-583b1e6a] {
  @apply transform transition-transform duration-200;
}
svg[data-v-583b1e6a]:not(.rotate-180) {
  @apply transition-transform duration-200;
}

/* sfc-style:/rails/app/javascript/components/upload_workflow/steps/FieldMappingStep.vue?type=style&index=0 */
.field-mapping-step[data-v-68b53b47] {
  @apply w-full;
}
.table[data-v-68b53b47] {
  @apply w-full;
}
.table th[data-v-68b53b47] {
  @apply bg-base-200 font-semibold;
}
.bg-success\/10[data-v-68b53b47] {
  background-color: rgba(34, 197, 94, 0.1);
}
.bg-error\/10[data-v-68b53b47] {
  background-color: rgba(239, 68, 68, 0.1);
}
.modal-box[data-v-68b53b47] {
  @apply max-h-[90vh] overflow-y-auto;
}
.loading-spinner[data-v-68b53b47] {
  @apply animate-spin;
}
.alert[data-v-68b53b47] {
  @apply rounded-lg;
}
.select[data-v-68b53b47] {
  @apply transition-all duration-200;
}
.select[data-v-68b53b47]:focus {
  @apply ring-2 ring-primary ring-offset-2;
}
.btn[data-v-68b53b47]:hover {
  @apply shadow-md;
}
.badge[data-v-68b53b47] {
  @apply font-mono text-xs;
}

/* sfc-style:/rails/app/javascript/components/upload_workflow/steps/ReviewStep.vue?type=style&index=0 */
.review-step[data-v-e1ce57b9] {
  @apply w-full max-w-5xl mx-auto;
}
.alert[data-v-e1ce57b9] {
  @apply border-l-4;
}
.alert-success[data-v-e1ce57b9] {
  @apply border-success;
}
.alert-warning[data-v-e1ce57b9] {
  @apply border-warning;
}
.alert-error[data-v-e1ce57b9] {
  @apply border-error;
}
.card[data-v-e1ce57b9] {
  @apply transition-shadow duration-200 border border-base-300;
}
.card[data-v-e1ce57b9]:hover {
  @apply shadow-xl border-base-content/10;
}
.card-body[data-v-e1ce57b9] {
  @apply p-6;
}
.card-body h3[data-v-e1ce57b9] {
  @apply text-base-content font-semibold;
}
.card-body .w-10.h-10[data-v-e1ce57b9] {
  @apply flex-shrink-0;
}
.bg-primary\/10[data-v-e1ce57b9] {
  @apply bg-primary/10;
}
.bg-secondary\/10[data-v-e1ce57b9] {
  @apply bg-secondary/10;
}
.bg-accent\/10[data-v-e1ce57b9] {
  @apply bg-accent/10;
}
.stat[data-v-e1ce57b9] {
  @apply min-h-0 p-0;
}
.stat-title[data-v-e1ce57b9] {
  @apply text-base-content/60 font-normal text-xs uppercase tracking-wide;
}
.stat-value[data-v-e1ce57b9] {
  @apply text-primary font-bold mt-1;
}
.table[data-v-e1ce57b9] {
  @apply w-full;
}
.table th[data-v-e1ce57b9] {
  @apply bg-base-200 font-semibold text-base-content/80 text-xs uppercase tracking-wider;
}
.table tbody tr[data-v-e1ce57b9] {
  @apply transition-colors duration-150;
}
.table tbody tr[data-v-e1ce57b9]:hover {
  @apply bg-base-200/50;
}
.table td[data-v-e1ce57b9] {
  @apply py-3 px-4;
}
.badge[data-v-e1ce57b9] {
  @apply gap-1 font-medium;
}
.badge-success[data-v-e1ce57b9] {
  @apply bg-success/10 text-success border-success/20;
}
.badge-error[data-v-e1ce57b9] {
  @apply bg-error/10 text-error border-error/20;
}
.badge-info[data-v-e1ce57b9] {
  @apply bg-info/10 text-info border-info/20;
}
.btn-ghost[data-v-e1ce57b9] {
  @apply hover:bg-base-200;
}
.btn-sm[data-v-e1ce57b9] {
  @apply text-xs;
}
.card-body .space-y-3 > div[data-v-e1ce57b9] {
  @apply transition-colors duration-150;
}
.card-body .space-y-3 > div[data-v-e1ce57b9]:hover {
  @apply bg-base-300;
}
.text-center.py-6[data-v-e1ce57b9] {
  @apply flex flex-col items-center;
}
.text-center.py-6 svg[data-v-e1ce57b9] {
  @apply text-base-content/30;
}
.text-center.py-6 p[data-v-e1ce57b9] {
  @apply text-sm;
}
.loading-spinner[data-v-e1ce57b9] {
  @apply animate-spin;
}
.space-y-6[data-v-e1ce57b9] > * + * {
  @apply mt-6;
}
.space-y-3[data-v-e1ce57b9] > * + * {
  @apply mt-3;
}
.grid-cols-2[data-v-e1ce57b9] {
  @apply gap-3;
}
@media (min-width: 768px) {
  .md\:grid-cols-4[data-v-e1ce57b9] {
    @apply gap-4;
  }
}
.card-body .text-xs.font-semibold[data-v-e1ce57b9] {
  @apply uppercase tracking-wide;
}
.mt-4.flex.items-center.justify-between[data-v-e1ce57b9] {
  @apply pt-4 border-t border-base-300;
}
.enhancement-setting[data-v-e1ce57b9] {
  @apply text-sm;
}
.enhancement-setting .badge[data-v-e1ce57b9] {
  @apply text-xs;
}
.rotate-180[data-v-e1ce57b9] {
  @apply transform rotate-180;
}
.transition-transform[data-v-e1ce57b9] {
  @apply transition-transform duration-200 ease-in-out;
}

/* sfc-style:/rails/app/javascript/components/upload_workflow/UploadWorkflow.vue?type=style&index=0 */
.upload-workflow-container[data-v-12bc4ccb] {
  min-height: 100vh;
  background-color: #f9fafb;
}
.upload-workflow-container .btn[data-v-12bc4ccb] {
  transition: all 0.2s ease;
}
.upload-workflow-container .btn[data-v-12bc4ccb]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.upload-workflow-container .alert[data-v-12bc4ccb] {
  border-radius: 0.5rem;
}
.upload-workflow-container .alert ul[data-v-12bc4ccb] {
  margin-top: 0.5rem;
}

/* sfc-style:/rails/app/javascript/components/FieldMappingInterface.vue?type=style&index=0 */
.field-mapping-interface[data-v-08a579f8] {
  max-width: 1400px;
  margin: 0 auto;
  padding: 2rem;
}
.mapping-header[data-v-08a579f8] {
  text-align: center;
  margin-bottom: 3rem;
}
.auto-mapping-section[data-v-08a579f8] {
  background: white;
  border-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
}
.section-header[data-v-08a579f8] {
  margin-bottom: 1.5rem;
}
.auto-mapping-stats[data-v-08a579f8] {
  display: flex;
  gap: 1rem;
  justify-content: center;
}
.stat-card[data-v-08a579f8] {
  padding: 1rem;
  border-radius: 0.75rem;
  text-align: center;
  min-width: 100px;
}
.stat-card.success[data-v-08a579f8] {
  background-color: #dcfce7;
  color: #166534;
}
.stat-card.warning[data-v-08a579f8] {
  background-color: #fef3c7;
  color: #92400e;
}
.stat-card.info[data-v-08a579f8] {
  background-color: #dbeafe;
  color: #1e40af;
}
.stat-number[data-v-08a579f8] {
  font-size: 1.5rem;
  font-weight: 700;
}
.stat-label[data-v-08a579f8] {
  font-size: 0.875rem;
  margin-top: 0.25rem;
}
.quick-actions[data-v-08a579f8] {
  display: flex;
  gap: 1rem;
  justify-content: center;
  margin-bottom: 3rem;
}
.mapping-interface[data-v-08a579f8] {
  background: white;
  border-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  margin-bottom: 2rem;
}
.columns-grid[data-v-08a579f8] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: 1.5rem;
}
.column-card[data-v-08a579f8] {
  border: 2px solid #e5e7eb;
  border-radius: 0.75rem;
  padding: 1.5rem;
  transition: all 0.3s ease;
}
.column-card-default[data-v-08a579f8] {
  background-color: #fafafa;
  border: 2px solid #e5e7eb;
}
.column-card-success[data-v-08a579f8] {
  background-color: #f0fdf4;
  border: 2px solid #22c55e;
  box-shadow: 0 1px 3px rgba(34, 197, 94, 0.1);
}
.column-card-warning[data-v-08a579f8] {
  background-color: #fffdf7;
  border: 2px solid #fbbf24;
  box-shadow: 0 1px 3px rgba(245, 158, 11, 0.1);
}
.column-card-warning.advisory[data-v-08a579f8] {
  border-left: 4px solid #f59e0b;
}
.column-header[data-v-08a579f8] {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 1rem;
}
.column-info[data-v-08a579f8] {
  flex: 1;
}
.column-name[data-v-08a579f8] {
  font-weight: 600;
  color: #111827;
  font-size: 1rem;
  margin-bottom: 0.5rem;
}
.column-meta[data-v-08a579f8] {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.data-type-badge[data-v-08a579f8],
.currency-badge[data-v-08a579f8] {
  padding: 0.25rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 500;
}
.badge-blue[data-v-08a579f8] {
  background-color: #dbeafe;
  color: #1e40af;
}
.badge-green[data-v-08a579f8] {
  background-color: #dcfce7;
  color: #166534;
}
.badge-yellow[data-v-08a579f8] {
  background-color: #fef3c7;
  color: #92400e;
}
.badge-purple[data-v-08a579f8] {
  background-color: #e9d5ff;
  color: #7c3aed;
}
.badge-pink[data-v-08a579f8] {
  background-color: #fce7f3;
  color: #be185d;
}
.badge-indigo[data-v-08a579f8] {
  background-color: #e0e7ff;
  color: #3730a3;
}
.badge-gray[data-v-08a579f8] {
  background-color: #f3f4f6;
  color: #374151;
}
.currency-badge[data-v-08a579f8] {
  background-color: #e9d5ff;
  color: #7c3aed;
}
.mapping-status[data-v-08a579f8] {
  margin-left: 1rem;
}
.status-icon[data-v-08a579f8] {
  font-size: 1rem;
  font-weight: bold;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.status-icon.success[data-v-08a579f8] {
  color: white;
  background-color: #22c55e;
}
.status-icon.warning[data-v-08a579f8] {
  color: #92400e;
  background-color: #fbbf24;
}
.status-icon.unmapped[data-v-08a579f8] {
  color: #6b7280;
  background-color: #f3f4f6;
  border: 1px dashed #d1d5db;
}
.sample-values[data-v-08a579f8] {
  margin-bottom: 1rem;
}
.sample-label[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #6b7280;
  font-weight: 500;
  margin-bottom: 0.5rem;
}
.sample-list[data-v-08a579f8] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.sample-value[data-v-08a579f8] {
  background-color: #f3f4f6;
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  color: #374151;
  max-width: 80px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.field-mapping[data-v-08a579f8] {
  margin-bottom: 1rem;
}
.mapped-field[data-v-08a579f8] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.75rem;
  background-color: #f0fdf4;
  border: 1px solid #22c55e;
  border-radius: 0.5rem;
}
.mapped-field-info[data-v-08a579f8] {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.field-name[data-v-08a579f8] {
  font-weight: 600;
  color: #166534;
}
.field-type[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #16a34a;
}
.mapping-actions[data-v-08a579f8] {
  display: flex;
  gap: 0.5rem;
}
.btn-unmap[data-v-08a579f8] {
  padding: 0.25rem;
  background-color: #fee2e2;
  color: #dc2626;
  border: none;
  border-radius: 0.25rem;
  cursor: pointer;
}
.btn-change[data-v-08a579f8] {
  padding: 0.25rem 0.5rem;
  background-color: #e0e7ff;
  color: #3730a3;
  border: none;
  border-radius: 0.25rem;
  cursor: pointer;
  font-size: 0.75rem;
}
.unmapped-field[data-v-08a579f8] {
  space-y: 1rem;
}
.suggestions[data-v-08a579f8] {
  margin-bottom: 1rem;
}
.suggestions-header[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}
.suggestions-label[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #6b7280;
  font-weight: 500;
}
.suggestions-list[data-v-08a579f8] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.suggestion-button[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  background-color: #eff6ff;
  border: 1px solid #3b82f6;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: all 0.2s;
}
.suggestion-button[data-v-08a579f8]:hover {
  background-color: #dbeafe;
}
.suggestion-name[data-v-08a579f8] {
  font-size: 0.875rem;
  font-weight: 500;
  color: #1e40af;
}
.suggestion-confidence[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #3b82f6;
}
.manual-mapping[data-v-08a579f8] {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.field-select[data-v-08a579f8] {
  flex: 1;
  padding: 0.5rem;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  background: white;
  font-size: 0.875rem;
}
.btn-create-field[data-v-08a579f8] {
  padding: 0.5rem 0.75rem;
  background-color: #10b981;
  color: white;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  font-size: 0.75rem;
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.compatibility-warning[data-v-08a579f8],
.currency-confirmation[data-v-08a579f8] {
  margin-top: 1rem;
  padding: 0.75rem;
  border-radius: 0.5rem;
}
.compatibility-warning[data-v-08a579f8] {
  background-color: #fffdf7;
  border: 2px solid #fbbf24;
  border-left: 4px solid #f59e0b;
}
.compatibility-warning.advisory[data-v-08a579f8] {
  box-shadow: 0 1px 3px rgba(245, 158, 11, 0.1);
}
.currency-confirmation[data-v-08a579f8] {
  background-color: #faf5ff;
  border: 1px solid #8b5cf6;
}
.warning-header[data-v-08a579f8],
.currency-header[data-v-08a579f8] {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}
.warning-header.advisory[data-v-08a579f8] {
  color: #d97706;
}
.warning-indicator[data-v-08a579f8] {
  font-size: 1rem;
  line-height: 1;
}
.warning-content[data-v-08a579f8] {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.warning-text[data-v-08a579f8],
.currency-label[data-v-08a579f8] {
  font-size: 0.875rem;
  font-weight: 600;
}
.warning-impact[data-v-08a579f8] {
  font-size: 0.75rem;
  font-weight: 400;
  color: #78350f;
  background-color: rgba(245, 158, 11, 0.1);
  padding: 0.125rem 0.375rem;
  border-radius: 0.25rem;
  border: 1px solid rgba(245, 158, 11, 0.2);
  align-self: flex-start;
}
.warning-description[data-v-08a579f8] {
  font-size: 0.8rem;
  color: #92400e;
  line-height: 1.4;
}
.default-value-config[data-v-08a579f8] {
  margin-top: 1rem;
  padding: 1rem;
  background-color: #fefcf7;
  border: 1px solid #f3e8a6;
  border-radius: 0.5rem;
  border-left: 3px solid #f59e0b;
}
.fallback-configuration[data-v-08a579f8] {
  margin-top: 1rem;
  padding: 1rem;
  background-color: #f0f9ff;
  border: 1px solid #bae6fd;
  border-radius: 0.5rem;
  border-left: 3px solid #0284c7;
}
.config-header[data-v-08a579f8] {
  margin-bottom: 0.75rem;
}
.config-title[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.25rem;
}
.config-title-text[data-v-08a579f8] {
  font-size: 0.875rem;
  font-weight: 600;
  color: #d97706;
}
.config-subtitle[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #92400e;
  margin-left: 1.5rem;
}
.config-form[data-v-08a579f8] {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.input-group[data-v-08a579f8] {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.input-label[data-v-08a579f8] {
  font-size: 0.75rem;
  font-weight: 500;
  color: #78350f;
}
.default-input[data-v-08a579f8] {
  padding: 0.5rem 0.75rem;
  border: 1px solid #d6b83a;
  border-radius: 0.375rem;
  font-size: 0.875rem;
  background-color: #ffffff;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.default-input[data-v-08a579f8]:focus {
  outline: none;
  border-color: #f59e0b;
  box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.1);
}
.default-input[data-v-08a579f8]:invalid {
  border-color: #dc2626;
}
.default-input[data-v-08a579f8]::placeholder {
  color: #9ca3af;
  font-style: italic;
}
.config-actions[data-v-08a579f8] {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.btn-save-default[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.75rem;
  background-color: #f59e0b;
  color: #ffffff;
  border: none;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.15s ease-in-out, opacity 0.15s ease-in-out;
}
.btn-save-default[data-v-08a579f8]:hover:not(:disabled) {
  background-color: #d97706;
}
.btn-save-default[data-v-08a579f8]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.btn-save-default.saving[data-v-08a579f8] {
  opacity: 0.75;
}
.btn-clear-default[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.75rem;
  background-color: #f3f4f6;
  color: #6b7280;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
.btn-clear-default[data-v-08a579f8]:hover {
  background-color: #e5e7eb;
  border-color: #9ca3af;
}
.preview-section[data-v-08a579f8] {
  padding: 0.5rem 0.75rem;
  background-color: rgba(243, 244, 246, 0.5);
  border: 1px solid #e5e7eb;
  border-radius: 0.375rem;
}
.preview-label[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #6b7280;
  margin-bottom: 0.25rem;
}
.preview-value[data-v-08a579f8] {
  font-family:
    ui-monospace,
    SFMono-Regular,
    Monaco,
    Consolas,
    "Liberation Mono",
    "Courier New",
    monospace;
}
.preview-value code[data-v-08a579f8] {
  color: #059669;
  font-weight: 600;
  background-color: rgba(16, 185, 129, 0.1);
  padding: 0.125rem 0.25rem;
  border-radius: 0.25rem;
}
.config-status[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.75rem;
  padding: 0.375rem 0.5rem;
  border-radius: 0.375rem;
}
.config-status.success[data-v-08a579f8] {
  color: #065f46;
  background-color: #d1fae5;
  border: 1px solid #a7f3d0;
}
.status-count[data-v-08a579f8] {
  color: #6b7280;
  font-style: italic;
}
@media (max-width: 768px) {
  .config-actions[data-v-08a579f8] {
    flex-direction: column;
    align-items: stretch;
  }
  .btn-save-default[data-v-08a579f8],
  .btn-clear-default[data-v-08a579f8] {
    justify-content: center;
  }
}
.currency-value[data-v-08a579f8] {
  font-weight: 600;
  color: #7c3aed;
}
.currency-value-missing[data-v-08a579f8] {
  font-weight: 600;
  color: #ef4444;
}
.currency-selection[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.selection-label[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #6b7280;
  white-space: nowrap;
}
.currency-alternatives[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.alternatives-label[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #6b7280;
}
.currency-select[data-v-08a579f8] {
  padding: 0.25rem 0.5rem;
  border: 1px solid #d1d5db;
  border-radius: 0.25rem;
  background: white;
  font-size: 0.75rem;
  min-width: 180px;
}
.currency-select.currency-required[data-v-08a579f8] {
  border-color: #ef4444;
  background-color: #fef2f2;
}
.mapping-actions[data-v-08a579f8] {
  display: flex;
  gap: 1rem;
  justify-content: center;
}
.btn[data-v-08a579f8] {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.btn-primary[data-v-08a579f8] {
  background-color: #3b82f6;
  color: white;
}
.btn-primary[data-v-08a579f8]:hover {
  background-color: #2563eb;
}
.btn-primary[data-v-08a579f8]:disabled {
  background-color: #9ca3af;
  cursor: not-allowed;
}
.btn-warning[data-v-08a579f8] {
  background-color: #f59e0b;
  color: white;
}
.btn-warning[data-v-08a579f8]:hover {
  background-color: #d97706;
}
.btn-warning-state[data-v-08a579f8] {
  position: relative;
  overflow: visible;
}
.btn-warning-state[data-v-08a579f8]::before {
  content: "\26a0\fe0f";
  position: absolute;
  top: -8px;
  right: -8px;
  font-size: 0.75rem;
  background-color: #fbbf24;
  color: #92400e;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid white;
}
.btn-outline[data-v-08a579f8] {
  background-color: transparent;
  color: #374151;
  border: 1px solid #d1d5db;
}
.btn-outline[data-v-08a579f8]:hover {
  background-color: #f9fafb;
}
.modal-overlay[data-v-08a579f8] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}
.modal-content[data-v-08a579f8] {
  background: white;
  border-radius: 0.75rem;
  max-width: 600px;
  width: 90%;
  max-height: 80vh;
  overflow-y: auto;
}
.modal-header[data-v-08a579f8] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem;
  border-bottom: 1px solid #e5e7eb;
}
.modal-close[data-v-08a579f8] {
  background: none;
  border: none;
  cursor: pointer;
  color: #6b7280;
}
.modal-body[data-v-08a579f8] {
  padding: 1.5rem;
}
.form-group[data-v-08a579f8] {
  margin-bottom: 1.5rem;
}
.form-label[data-v-08a579f8] {
  display: block;
  font-weight: 500;
  color: #374151;
  margin-bottom: 0.5rem;
}
.form-input[data-v-08a579f8],
.form-select[data-v-08a579f8] {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  background: white;
}
.form-error[data-v-08a579f8] {
  color: #dc2626;
  font-size: 0.875rem;
  margin-top: 0.25rem;
}
.form-help[data-v-08a579f8] {
  color: #6b7280;
  font-size: 0.875rem;
  margin-top: 0.25rem;
}
.phrases-input[data-v-08a579f8] {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.phrase-row[data-v-08a579f8] {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.btn-remove-phrase[data-v-08a579f8] {
  padding: 0.5rem;
  background-color: #fee2e2;
  color: #dc2626;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
}
.btn-add-phrase[data-v-08a579f8] {
  padding: 0.5rem 0.75rem;
  background-color: #f3f4f6;
  color: #374151;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  align-self: flex-start;
}
.modal-actions[data-v-08a579f8] {
  display: flex;
  gap: 1rem;
  justify-content: flex-end;
  margin-top: 2rem;
}
.sample-preview[data-v-08a579f8] {
  background-color: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 0.5rem;
  padding: 1rem;
}
.sample-conversion[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem;
  background-color: white;
  border-radius: 0.375rem;
  margin-bottom: 0.5rem;
  border: 1px solid #e5e7eb;
}
.sample-original[data-v-08a579f8] {
  font-family:
    "Monaco",
    "Menlo",
    "Ubuntu Mono",
    monospace;
  color: #374151;
  padding: 0.25rem 0.5rem;
  background-color: #f3f4f6;
  border-radius: 0.25rem;
}
.arrow[data-v-08a579f8] {
  color: #6b7280;
  font-weight: bold;
}
.sample-converted[data-v-08a579f8] {
  font-family:
    "Monaco",
    "Menlo",
    "Ubuntu Mono",
    monospace;
  color: #059669;
  padding: 0.25rem 0.5rem;
  background-color: #ecfdf5;
  border-radius: 0.25rem;
}
.legend-content p[data-v-08a579f8] {
  font-size: 0.875rem;
  color: #64748b;
  margin: 0;
  line-height: 1.4;
}
.warning-modal[data-v-08a579f8] {
  border: 2px solid #fbbf24;
  box-shadow: 0 10px 30px rgba(245, 158, 11, 0.3);
}
.modal-header.warning[data-v-08a579f8] {
  background-color: #fffdf7;
  border-bottom: 2px solid #fbbf24;
  color: #92400e;
}
.warning-modal-title[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.warning-icon-large[data-v-08a579f8] {
  font-size: 1.5rem;
  color: #f59e0b;
}
.warning-summary[data-v-08a579f8] {
  background-color: #fffdf7;
  border: 1px solid #fbbf24;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1.5rem;
}
.warning-message-main[data-v-08a579f8] {
  font-size: 1rem;
  color: #92400e;
  margin: 0;
  line-height: 1.5;
}
.conversion-statistics[data-v-08a579f8] {
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1.5rem;
}
.conversion-stats-title[data-v-08a579f8] {
  font-size: 0.875rem;
  font-weight: 600;
  color: #374151;
  margin: 0 0 0.75rem 0;
}
.conversion-summary-grid[data-v-08a579f8] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}
.stat-summary[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem;
  border-radius: 0.375rem;
  border: 1px solid transparent;
}
.stat-summary.success[data-v-08a579f8] {
  background-color: #f0fdf4;
  border-color: #bbf7d0;
}
.stat-summary.warning[data-v-08a579f8] {
  background-color: #fffdf7;
  border-color: #fbbf24;
}
.stat-summary.error[data-v-08a579f8] {
  background-color: #fef2f2;
  border-color: #fecaca;
}
.stat-icon[data-v-08a579f8] {
  font-size: 1rem;
  line-height: 1;
}
.stat-content[data-v-08a579f8] {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.stat-number[data-v-08a579f8] {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
}
.stat-summary.success .stat-number[data-v-08a579f8] {
  color: #166534;
}
.stat-summary.warning .stat-number[data-v-08a579f8] {
  color: #92400e;
}
.stat-summary.error .stat-number[data-v-08a579f8] {
  color: #991b1b;
}
.stat-description[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #6b7280;
  line-height: 1.2;
}
.conversion-percentage[data-v-08a579f8] {
  padding-top: 0.75rem;
  border-top: 1px solid #e2e8f0;
}
.conversion-rate-text[data-v-08a579f8] {
  font-size: 0.875rem;
  color: #374151;
  margin: 0;
  text-align: center;
}
.warnings-list[data-v-08a579f8] {
  margin-bottom: 1.5rem;
}
.warnings-title[data-v-08a579f8] {
  font-size: 0.95rem;
  font-weight: 600;
  color: #78350f;
  margin-bottom: 0.75rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.warnings-items[data-v-08a579f8] {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.warning-item[data-v-08a579f8] {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.5rem;
  background-color: #fef3c7;
  border-radius: 0.375rem;
  border: 1px solid #fbbf24;
}
.warning-bullet[data-v-08a579f8] {
  font-size: 0.875rem;
  margin-top: 0.125rem;
  flex-shrink: 0;
}
.warning-text[data-v-08a579f8] {
  font-size: 0.875rem;
  color: #92400e;
  line-height: 1.4;
  flex: 1;
}
.processing-explanation[data-v-08a579f8] {
  background-color: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1.5rem;
}
.explanation-section[data-v-08a579f8] {
  color: #166534;
}
.explanation-title[data-v-08a579f8] {
  font-size: 0.95rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
  color: #15803d;
}
.explanation-list[data-v-08a579f8] {
  margin: 0;
  padding-left: 0;
  list-style: none;
}
.explanation-list li[data-v-08a579f8] {
  font-size: 0.875rem;
  color: #166534;
  margin-bottom: 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  line-height: 1.4;
}
.explanation-list li[data-v-08a579f8]:last-child {
  margin-bottom: 0;
}
.btn-preview[data-v-08a579f8] {
  position: relative;
}
.btn-preview[data-v-08a579f8]:hover {
  background-color: #f3f4f6;
  border-color: #9ca3af;
}
.btn-preview[data-v-08a579f8]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.preview-modal[data-v-08a579f8] {
  max-width: 1200px;
  max-height: 90vh;
  border: 2px solid #3b82f6;
  box-shadow: 0 10px 30px rgba(59, 130, 246, 0.3);
}
.preview-modal-title[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.preview-icon[data-v-08a579f8] {
  display: flex;
  align-items: center;
  justify-content: center;
}
.preview-summary[data-v-08a579f8] {
  background:
    linear-gradient(
      135deg,
      #eff6ff 0%,
      #f0f9ff 100%);
  border: 2px solid #bfdbfe;
  border-radius: 0.75rem;
  padding: 1.5rem;
  margin-bottom: 2rem;
}
.summary-stats[data-v-08a579f8] {
  display: flex;
  gap: 1rem;
  justify-content: center;
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
}
.stat-item[data-v-08a579f8] {
  padding: 1rem;
  border-radius: 0.75rem;
  text-align: center;
  min-width: 100px;
  flex: 1;
  max-width: 150px;
}
.stat-item.success[data-v-08a579f8] {
  background-color: #dcfce7;
  color: #166534;
  border: 1px solid #bbf7d0;
}
.stat-item.warning[data-v-08a579f8] {
  background-color: #fef3c7;
  color: #92400e;
  border: 1px solid #fbbf24;
}
.stat-item.error[data-v-08a579f8] {
  background-color: #fee2e2;
  color: #991b1b;
  border: 1px solid #f87171;
}
.stat-item.info[data-v-08a579f8] {
  background-color: #dbeafe;
  color: #1e40af;
  border: 1px solid #93c5fd;
}
.stat-number[data-v-08a579f8] {
  font-size: 1.5rem;
  font-weight: 700;
}
.stat-label[data-v-08a579f8] {
  font-size: 0.875rem;
  margin-top: 0.25rem;
}
.compatibility-summary[data-v-08a579f8] {
  text-align: center;
}
.compatibility-title[data-v-08a579f8] {
  font-size: 1rem;
  font-weight: 600;
  color: #1f2937;
  margin-bottom: 0.5rem;
}
.compatibility-text[data-v-08a579f8] {
  font-size: 0.95rem;
  color: #4b5563;
  margin: 0;
}
.column-analysis[data-v-08a579f8] {
  margin-bottom: 2rem;
}
.analysis-title[data-v-08a579f8] {
  font-size: 1.125rem;
  font-weight: 600;
  color: #1f2937;
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.analysis-grid[data-v-08a579f8] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1rem;
}
.analysis-card[data-v-08a579f8] {
  border-radius: 0.5rem;
  padding: 1rem;
  border: 2px solid transparent;
  transition: all 0.3s ease;
}
.analysis-card.analysis-success[data-v-08a579f8] {
  background-color: #f0fdf4;
  border-color: #22c55e;
  box-shadow: 0 1px 3px rgba(34, 197, 94, 0.1);
}
.analysis-card.analysis-warning[data-v-08a579f8] {
  background-color: #fffdf7;
  border-color: #fbbf24;
  box-shadow: 0 1px 3px rgba(245, 158, 11, 0.1);
}
.analysis-card.analysis-error[data-v-08a579f8] {
  background-color: #fef2f2;
  border-color: #ef4444;
  box-shadow: 0 1px 3px rgba(239, 68, 68, 0.1);
}
.analysis-header[data-v-08a579f8] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.75rem;
}
.analysis-card .column-name[data-v-08a579f8] {
  font-size: 0.95rem;
  font-weight: 600;
  color: #1f2937;
  margin: 0;
}
.conversion-indicator[data-v-08a579f8] {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: bold;
}
.indicator-success[data-v-08a579f8] {
  background-color: #22c55e;
  color: white;
}
.indicator-warning[data-v-08a579f8] {
  background-color: #fbbf24;
  color: #92400e;
}
.indicator-error[data-v-08a579f8] {
  background-color: #ef4444;
  color: white;
}
.field-mapping-info[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}
.mapped-to[data-v-08a579f8] {
  font-size: 0.875rem;
  color: #6b7280;
}
.field-type[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #9ca3af;
}
.conversion-stats[data-v-08a579f8] {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-bottom: 0.75rem;
}
.stat-row[data-v-08a579f8] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.8rem;
}
.stat-label[data-v-08a579f8] {
  color: #6b7280;
}
.stat-value[data-v-08a579f8] {
  font-weight: 500;
  color: #1f2937;
}
.conversion-issues[data-v-08a579f8] {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  padding-top: 0.75rem;
}
.issues-header[data-v-08a579f8] {
  font-size: 0.8rem;
  font-weight: 500;
  color: #6b7280;
  margin-bottom: 0.5rem;
}
.issues-list[data-v-08a579f8] {
  margin: 0;
  padding-left: 0;
  list-style: none;
}
.issue-item[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #9ca3af;
  margin-bottom: 0.25rem;
  padding-left: 1rem;
  position: relative;
}
.issue-item[data-v-08a579f8]:before {
  content: "\2022";
  position: absolute;
  left: 0;
  color: #d1d5db;
}
.sample-preview[data-v-08a579f8] {
  margin-bottom: 2rem;
}
.sample-title[data-v-08a579f8] {
  font-size: 1.125rem;
  font-weight: 600;
  color: #1f2937;
  margin-bottom: 1rem;
}
.sample-table-container[data-v-08a579f8] {
  border: 1px solid #e5e7eb;
  border-radius: 0.5rem;
  overflow: hidden;
}
.sample-table[data-v-08a579f8] {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.875rem;
}
.sample-table th[data-v-08a579f8] {
  background-color: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
  padding: 0.75rem;
  text-align: left;
  font-weight: 600;
  color: #374151;
}
.sample-table td[data-v-08a579f8] {
  padding: 0.75rem;
  border-bottom: 1px solid #f3f4f6;
  vertical-align: top;
}
.sample-row:last-child td[data-v-08a579f8] {
  border-bottom: none;
}
.sample-row.row-success[data-v-08a579f8] {
  background-color: #f0fdf4;
}
.sample-row.row-warning[data-v-08a579f8] {
  background-color: #fffdf7;
}
.sample-row.row-error[data-v-08a579f8] {
  background-color: #fef2f2;
}
.column-cell[data-v-08a579f8] {
  font-weight: 500;
  color: #1f2937;
}
.original-value[data-v-08a579f8],
.converted-value[data-v-08a579f8] {
  font-family:
    "Monaco",
    "Menlo",
    "Ubuntu Mono",
    monospace;
  font-size: 0.8rem;
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  background-color: #f3f4f6;
  border: 1px solid #e5e7eb;
}
.converted-value.value-success[data-v-08a579f8] {
  background-color: #dcfce7;
  border-color: #bbf7d0;
  color: #166534;
}
.converted-value.value-warning[data-v-08a579f8] {
  background-color: #fef3c7;
  border-color: #fbbf24;
  color: #92400e;
}
.converted-value.value-error[data-v-08a579f8] {
  background-color: #fee2e2;
  border-color: #f87171;
  color: #991b1b;
}
.status-badge[data-v-08a579f8] {
  padding: 0.25rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 500;
}
.status-badge.badge-success[data-v-08a579f8] {
  background-color: #dcfce7;
  color: #166534;
}
.status-badge.badge-warning[data-v-08a579f8] {
  background-color: #fef3c7;
  color: #92400e;
}
.status-badge.badge-error[data-v-08a579f8] {
  background-color: #fee2e2;
  color: #991b1b;
}
.conversion-legend[data-v-08a579f8] {
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 0.5rem;
  padding: 1.5rem;
}
.conversion-legend .legend-title[data-v-08a579f8] {
  font-size: 1rem;
  font-weight: 600;
  color: #1e293b;
  margin-bottom: 1rem;
}
.conversion-legend .legend-items[data-v-08a579f8] {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.conversion-legend .legend-item[data-v-08a579f8] {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.conversion-legend .legend-icon[data-v-08a579f8] {
  font-size: 1rem;
  margin-top: 0.125rem;
}
.conversion-legend .legend-content[data-v-08a579f8] {
  flex: 1;
}
.conversion-legend .legend-content strong[data-v-08a579f8] {
  display: block;
  font-weight: 600;
  margin-bottom: 0.25rem;
}
.conversion-legend .legend-item.success .legend-content strong[data-v-08a579f8] {
  color: #166534;
}
.conversion-legend .legend-item.warning .legend-content strong[data-v-08a579f8] {
  color: #92400e;
}
.conversion-legend .legend-item.error .legend-content strong[data-v-08a579f8] {
  color: #991b1b;
}
.conversion-legend .legend-content p[data-v-08a579f8] {
  font-size: 0.875rem;
  color: #64748b;
  margin: 0;
  line-height: 1.4;
}
.loading-overlay[data-v-08a579f8] {
  position: relative;
}
.preview-loading[data-v-08a579f8] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.9);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 10;
  border-radius: 0.5rem;
}
.loading-spinner[data-v-08a579f8] {
  width: 2rem;
  height: 2rem;
  border: 3px solid #e5e7eb;
  border-top: 3px solid #3b82f6;
  border-radius: 50%;
  animation: spin-08a579f8 1s linear infinite;
  margin-bottom: 1rem;
}
@keyframes spin-08a579f8 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.loading-text[data-v-08a579f8] {
  font-size: 0.95rem;
  color: #6b7280;
  font-weight: 500;
}
.no-preview-data[data-v-08a579f8] {
  text-align: center;
  padding: 3rem 2rem;
  color: #6b7280;
}
.no-data-icon[data-v-08a579f8] {
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
}
.preview-error[data-v-08a579f8] {
  text-align: center;
  padding: 3rem 2rem;
  color: #dc2626;
}
.error-icon[data-v-08a579f8] {
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
}
.content-loading[data-v-08a579f8] {
  opacity: 0.6;
  transition: opacity 0.3s ease;
}
.required-fields-section[data-v-08a579f8] {
  background: #fffbeb;
  border: 1px solid #f59e0b;
  border-radius: 0.75rem;
  padding: 1.5rem;
  margin-bottom: 2rem;
}
.required-fields-grid[data-v-08a579f8] {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}
.required-field-card[data-v-08a579f8] {
  background: white;
  border-radius: 0.5rem;
  padding: 1rem;
  border: 2px solid transparent;
  transition: all 0.2s ease;
}
.required-field-card.unmapped[data-v-08a579f8] {
  border-color: #ef4444;
  background: #fef2f2;
}
.required-field-card.mapped[data-v-08a579f8] {
  border-color: #10b981;
  background: #f0fdf4;
}
.required-field-info[data-v-08a579f8] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.75rem;
}
.required-field-card .field-name[data-v-08a579f8] {
  font-weight: 600;
  color: #111827;
  font-size: 0.875rem;
}
.status-indicator[data-v-08a579f8] {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.75rem;
}
.status-indicator.unmapped[data-v-08a579f8] {
  color: #dc2626;
}
.status-indicator.mapped[data-v-08a579f8] {
  color: #059669;
}
.status-indicator svg[data-v-08a579f8] {
  flex-shrink: 0;
}
.status-text[data-v-08a579f8] {
  font-weight: 500;
}
.mapped-columns[data-v-08a579f8] {
  border-top: 1px solid #e5e7eb;
  padding-top: 0.5rem;
}
.mapped-column-list[data-v-08a579f8] {
  margin-top: 0.25rem;
}
.mapped-column-name[data-v-08a579f8] {
  font-size: 0.75rem;
  font-weight: 500;
  color: #059669;
  background: #dcfce7;
  padding: 0.125rem 0.375rem;
  border-radius: 0.25rem;
  margin-right: 0.25rem;
}
.error-display-section[data-v-08a579f8] {
  margin-bottom: 1rem;
}
.error-alert[data-v-08a579f8] {
  background-color: #fef2f2;
  border: 1px solid #fca5a5;
  border-radius: 0.5rem;
  padding: 1rem;
  position: relative;
}
.error-content[data-v-08a579f8] {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.error-icon[data-v-08a579f8] {
  color: #dc2626;
  font-size: 1.25rem;
  flex-shrink: 0;
  margin-top: 0.125rem;
}
.error-text[data-v-08a579f8] {
  flex: 1;
}
.error-title[data-v-08a579f8] {
  font-weight: 600;
  color: #dc2626;
  margin: 0 0 0.5rem 0;
}
.error-message[data-v-08a579f8] {
  color: #991b1b;
  margin-bottom: 0.5rem;
}
.error-details[data-v-08a579f8] {
  margin-top: 0.5rem;
}
.error-details-toggle[data-v-08a579f8] {
  background: none;
  border: none;
  color: #7c2d12;
  cursor: pointer;
  text-decoration: underline;
  padding: 0;
  font-size: 0.875rem;
}
.error-details-toggle[data-v-08a579f8]:hover {
  color: #92400e;
}
.error-details-content[data-v-08a579f8] {
  margin-top: 0.5rem;
  padding: 0.75rem;
  background-color: #f3f4f6;
  border-radius: 0.25rem;
  font-family: "Courier New", monospace;
  font-size: 0.875rem;
  white-space: pre-wrap;
  word-break: break-all;
  color: #374151;
}
.error-timestamp[data-v-08a579f8] {
  font-size: 0.75rem;
  color: #6b7280;
  margin-top: 0.5rem;
}
.error-dismiss[data-v-08a579f8] {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  background: none;
  border: none;
  color: #9ca3af;
  cursor: pointer;
  font-size: 1.25rem;
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.25rem;
}
.error-dismiss[data-v-08a579f8]:hover {
  color: #6b7280;
  background-color: #f9fafb;
}

/* sfc-style:/rails/app/javascript/components/FieldMappingApp.vue?type=style&index=0 */
.field-mapping-app[data-v-13dfaa32] {
  min-height: 400px;
}
.alert[data-v-13dfaa32] {
  padding: 1rem;
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}
.alert-error[data-v-13dfaa32] {
  background-color: #fef2f2;
  border: 1px solid #fecaca;
  color: #991b1b;
}
.btn[data-v-13dfaa32] {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.btn-primary[data-v-13dfaa32] {
  background-color: #3b82f6;
  color: white;
}
.btn-primary[data-v-13dfaa32]:hover {
  background-color: #2563eb;
}

/* sfc-style:/rails/app/javascript/components/ProductManagementInterface.vue?type=style&index=0 */
.product-management-interface[data-v-97b93804] {
  @apply space-y-6;
}
.interface-header[data-v-97b93804] {
  @apply bg-base-100 p-4 rounded-lg border;
}
.table tbody tr.border-l-4[data-v-97b93804] {
  position: relative;
}
.table tbody tr.bg-red-50\/30[data-v-97b93804] {
  background-color: rgb(254 242 242 / 0.3);
}
.table tbody tr.bg-yellow-50\/30[data-v-97b93804] {
  background-color: rgb(254 252 232 / 0.3);
}
.table tbody tr.bg-blue-50[data-v-97b93804] {
  background-color: rgb(239 246 255);
}
.badge-xs[data-v-97b93804] {
  font-size: 0.65rem;
  padding: 0.125rem 0.375rem;
}

/* sfc-style:/rails/app/javascript/components/Pagination.vue?type=style&index=0 */
.pagination-container[data-v-dab5e266] {
  @apply w-full;
}
.pagination-wrapper[data-v-dab5e266] {
  @apply shadow-sm;
}
.pagination-info[data-v-dab5e266] {
  @apply flex items-center;
}
.pagination-controls[data-v-dab5e266] {
  @apply flex items-center flex-wrap justify-center sm:justify-end;
}
.per-page-selector[data-v-dab5e266] {
  @apply flex items-center;
}
.btn-group[data-v-dab5e266] {
  @apply flex;
}
.btn-group .btn[data-v-dab5e266] {
  @apply border-r-0;
}
.btn-group .btn[data-v-dab5e266]:first-child {
  @apply rounded-r-none;
}
.btn-group .btn[data-v-dab5e266]:last-child {
  @apply rounded-l-none border-r;
}
.btn-group .btn[data-v-dab5e266]:not(:first-child):not(:last-child) {
  @apply rounded-none;
}
.btn-active[data-v-dab5e266] {
  @apply bg-primary text-primary-content border-primary;
}
.btn-active[data-v-dab5e266]:hover {
  @apply bg-primary-focus;
}
.btn-disabled[data-v-dab5e266] {
  @apply opacity-50 cursor-not-allowed;
}
.btn-disabled[data-v-dab5e266]:hover {
  @apply bg-base-200;
}
.mobile-pagination[data-v-dab5e266] {
  @apply bg-base-100 p-4 rounded-lg border border-base-200;
}
@media (max-width: 640px) {
  .pagination-controls[data-v-dab5e266] {
    @apply flex-col gap-2;
  }
  .btn-group[data-v-dab5e266] {
    @apply flex-wrap justify-center;
  }
  .per-page-selector[data-v-dab5e266] {
    @apply justify-center;
  }
}
.btn[data-v-dab5e266]:focus {
  @apply outline-none ring-2 ring-primary ring-offset-2;
}
.select[data-v-dab5e266]:focus {
  @apply outline-none ring-2 ring-primary ring-offset-2;
}
.btn[data-v-dab5e266] {
  @apply transition-all duration-200;
}
.select[data-v-dab5e266] {
  @apply transition-all duration-200;
}

/* sfc-style:/rails/app/javascript/components/ProductSelector.vue?type=style&index=0 */
.product-selector[data-v-9fe8386a] {
  @apply space-y-4;
}
.selector-header[data-v-9fe8386a] {
  background:
    linear-gradient(
      135deg,
      theme("colors.base.100") 0%,
      theme("colors.base.200") 100%);
}
.products-table .table tbody tr.ring-2[data-v-9fe8386a] {
  position: relative;
}
.products-table .table tbody tr[data-v-9fe8386a]:hover:not(.ring-2) {
  background-color: theme("colors.base.200");
}
.card[data-v-9fe8386a]:hover {
  transform: translateY(-1px);
}
.overflow-x-auto[data-v-9fe8386a]::-webkit-scrollbar {
  height: 8px;
}
.overflow-x-auto[data-v-9fe8386a]::-webkit-scrollbar-track {
  background: theme("colors.base.300");
  border-radius: 4px;
}
.overflow-x-auto[data-v-9fe8386a]::-webkit-scrollbar-thumb {
  background: theme("colors.base.content / 0.3");
  border-radius: 4px;
}
.overflow-x-auto[data-v-9fe8386a]::-webkit-scrollbar-thumb:hover {
  background: theme("colors.base.content / 0.5");
}
@keyframes pulse-9fe8386a {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.loading-spinner[data-v-9fe8386a] {
  animation: pulse-9fe8386a 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@media (max-width: 1024px) {
  .card[data-v-9fe8386a] {
    @apply cursor-pointer;
  }
  .checkbox[data-v-9fe8386a] {
    @apply scale-110;
  }
  .btn[data-v-9fe8386a] {
    @apply px-4 py-2 min-h-10;
  }
}
@media (prefers-contrast: high) {
  .badge[data-v-9fe8386a] {
    @apply border-2;
  }
  .ring-primary[data-v-9fe8386a] {
    @apply ring-4;
  }
}
@media (prefers-reduced-motion: reduce) {
  .card[data-v-9fe8386a],
  .products-table .table tbody tr[data-v-9fe8386a] {
    @apply transition-none;
  }
  .card[data-v-9fe8386a]:hover {
    @apply transform-none;
  }
}

/* sfc-style:/rails/app/javascript/components/CampaignStarter.vue?type=style&index=0 */
.template-card[data-v-54669be3] {
  transition: all 0.2s ease;
}
.template-card[data-v-54669be3]:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.prose[data-v-54669be3] {
  color: #374151;
  max-width: none;
}
.prose h1[data-v-54669be3],
.prose h2[data-v-54669be3],
.prose h3[data-v-54669be3],
.prose h4[data-v-54669be3],
.prose h5[data-v-54669be3],
.prose h6[data-v-54669be3] {
  color: #111827;
  font-weight: 600;
}
.prose p[data-v-54669be3] {
  margin-bottom: 1rem;
}
.prose ul[data-v-54669be3],
.prose ol[data-v-54669be3] {
  margin-bottom: 1rem;
  padding-left: 1.5rem;
}
.prose li[data-v-54669be3] {
  margin-bottom: 0.25rem;
}
.prose a[data-v-54669be3] {
  color: #2563eb;
  text-decoration: underline;
}
.prose strong[data-v-54669be3] {
  font-weight: 600;
  color: #111827;
}

/* sfc-style:/rails/app/javascript/components/MultiUploadCampaignModal.vue?type=style&index=0 */
.steps .step[data-v-d9965fef]:before {
  @apply border-base-300;
}
.steps .step-primary[data-v-d9965fef]:before {
  @apply bg-primary border-primary;
}
.tab[data-v-d9965fef] {
  @apply flex-nowrap;
}
.badge-sm[data-v-d9965fef] {
  @apply text-xs px-2;
}
.animate-pulse[data-v-d9965fef] {
  animation: pulse-d9965fef 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes pulse-d9965fef {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: .5;
  }
}

/* sfc-style:/rails/app/javascript/components/ExportModal.vue?type=style&index=0 */
.modal[data-v-3a931096] {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  max-width: 100vw !important;
  max-height: 100vh !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  z-index: 999 !important;
  background-color: rgba(0, 0, 0, 0.5) !important;
  padding: 1rem !important;
}
.modal[open][data-v-3a931096] {
  display: grid !important;
}
.modal-box[data-v-3a931096] {
  max-height: 90vh;
  overflow-y: auto;
  background-color: white;
  border-radius: 0.5rem;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  position: relative;
  z-index: 1000;
}
.modal-backdrop[data-v-3a931096] {
  position: absolute;
  inset: 0;
  z-index: -1;
}
.form-control[data-v-3a931096] {
  margin-bottom: 1rem;
}
.checkbox-grid[data-v-3a931096] {
  max-height: 300px;
  overflow-y: auto;
}
@keyframes pulse-3a931096 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: .5;
  }
}
.animate-pulse[data-v-3a931096] {
  animation: pulse-3a931096 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

/* sfc-style:/rails/app/javascript/components/ExportButton.vue?type=style&index=0 */
.export-button-container[data-v-0e934e79] {
  position: relative;
}
.dropdown-content[data-v-0e934e79] {
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
.menu-title[data-v-0e934e79] {
  opacity: 0.6;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.divider[data-v-0e934e79] {
  margin: 0.5rem 0;
}
@keyframes pulse-0e934e79 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: .5;
  }
}
.animate-pulse[data-v-0e934e79] {
  animation: pulse-0e934e79 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

/* sfc-style:/rails/app/javascript/components/LoadingSkeleton.vue?type=style&index=0 */
.loading-skeleton[data-v-df9dad2a] {
  width: 100%;
}
.skeleton-animated[data-v-df9dad2a] {
  animation: skeleton-pulse-df9dad2a 1.5s ease-in-out infinite;
}
@keyframes skeleton-pulse-df9dad2a {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
}
.skeleton-text-small[data-v-df9dad2a],
.skeleton-text-short[data-v-df9dad2a],
.skeleton-text-medium[data-v-df9dad2a],
.skeleton-text-long[data-v-df9dad2a],
.skeleton-checkbox[data-v-df9dad2a],
.skeleton-avatar[data-v-df9dad2a],
.skeleton-badge[data-v-df9dad2a],
.skeleton-tag[data-v-df9dad2a],
.skeleton-actions[data-v-df9dad2a] {
  background:
    linear-gradient(
      90deg,
      #f0f0f0 25%,
      #e0e0e0 50%,
      #f0f0f0 75%);
  background-size: 200% 100%;
  animation: skeleton-shimmer-df9dad2a 1.5s infinite;
  border-radius: 4px;
}
@keyframes skeleton-shimmer-df9dad2a {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
.skeleton-rounded .skeleton-text-small[data-v-df9dad2a],
.skeleton-rounded .skeleton-text-short[data-v-df9dad2a],
.skeleton-rounded .skeleton-text-medium[data-v-df9dad2a],
.skeleton-rounded .skeleton-text-long[data-v-df9dad2a],
.skeleton-rounded .skeleton-badge[data-v-df9dad2a],
.skeleton-rounded .skeleton-tag[data-v-df9dad2a] {
  border-radius: 6px;
}
.skeleton-text-small[data-v-df9dad2a] {
  height: 12px;
  width: 60%;
}
.skeleton-text-short[data-v-df9dad2a] {
  height: 16px;
  width: 80%;
}
.skeleton-text-medium[data-v-df9dad2a] {
  height: 16px;
  width: 120px;
}
.skeleton-text-long[data-v-df9dad2a] {
  height: 16px;
  width: 180px;
}
.skeleton-checkbox[data-v-df9dad2a] {
  height: 16px;
  width: 16px;
  border-radius: 3px;
}
.skeleton-avatar[data-v-df9dad2a] {
  height: 40px;
  width: 40px;
  border-radius: 50%;
}
.skeleton-badge[data-v-df9dad2a] {
  height: 20px;
  width: 60px;
  border-radius: 10px;
}
.skeleton-tag[data-v-df9dad2a] {
  height: 18px;
  width: 50px;
  border-radius: 9px;
}
.skeleton-actions[data-v-df9dad2a] {
  height: 16px;
  width: 80px;
}
.skeleton-button[data-v-df9dad2a] {
  height: 36px;
  width: 100px;
  border-radius: 6px;
}
.skeleton-button-outline[data-v-df9dad2a] {
  width: 80px;
}
.skeleton-input[data-v-df9dad2a] {
  height: 40px;
  width: 100%;
  border-radius: 4px;
}
.skeleton-textarea[data-v-df9dad2a] {
  height: 80px;
  width: 100%;
  border-radius: 4px;
}
.skeleton-upload-icon[data-v-df9dad2a] {
  height: 48px;
  width: 48px;
  border-radius: 50%;
  margin: 0 auto 1rem;
}
.skeleton-processing-icon[data-v-df9dad2a] {
  height: 24px;
  width: 24px;
  border-radius: 50%;
}
.skeleton-export-icon[data-v-df9dad2a] {
  height: 32px;
  width: 32px;
  border-radius: 4px;
}
.skeleton-progress-bar[data-v-df9dad2a] {
  height: 8px;
  width: 100%;
  background: #e5e7eb;
  border-radius: 4px;
  overflow: hidden;
}
.skeleton-progress-fill[data-v-df9dad2a] {
  height: 100%;
  background:
    linear-gradient(
      90deg,
      #3b82f6 25%,
      #2563eb 50%,
      #3b82f6 75%);
  background-size: 200% 100%;
  animation: skeleton-shimmer-df9dad2a 1.5s infinite;
  transition: width 0.3s ease;
}
.skeleton-table[data-v-df9dad2a] {
  width: 100%;
  border-collapse: collapse;
  background: white;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.skeleton-header[data-v-df9dad2a] {
  display: flex;
  gap: 1rem;
  padding: 1rem;
  background-color: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
}
.skeleton-row[data-v-df9dad2a] {
  display: flex;
  gap: 1rem;
  padding: 1rem;
  border-bottom: 1px solid #e5e7eb;
  animation: skeleton-fade-in-df9dad2a 0.5s ease-out forwards;
  opacity: 0;
}
@keyframes skeleton-fade-in-df9dad2a {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.skeleton-cell[data-v-df9dad2a] {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.skeleton-cell[data-v-df9dad2a]:first-child {
  flex: 0 0 50px;
  align-items: center;
}
.skeleton-cell[data-v-df9dad2a]:last-child {
  flex: 0 0 100px;
  align-items: center;
}
.skeleton-tags[data-v-df9dad2a] {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.skeleton-card[data-v-df9dad2a] {
  background: white;
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  margin-bottom: 1rem;
}
.skeleton-card-header[data-v-df9dad2a] {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}
.skeleton-card-info[data-v-df9dad2a] {
  flex: 1;
}
.skeleton-card-body[data-v-df9dad2a] > * {
  margin-bottom: 0.75rem;
}
.skeleton-card-body[data-v-df9dad2a] > *:last-child {
  margin-bottom: 0;
}
.skeleton-list[data-v-df9dad2a] {
  background: white;
  border-radius: 8px;
  padding: 1rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.skeleton-list-item[data-v-df9dad2a] {
  padding: 0.75rem 0;
  border-bottom: 1px solid #e5e7eb;
  animation: skeleton-fade-in-df9dad2a 0.3s ease-out forwards;
  opacity: 0;
}
.skeleton-list-item[data-v-df9dad2a]:last-child {
  border-bottom: none;
}
.skeleton-upload[data-v-df9dad2a] {
  background: white;
  border-radius: 12px;
  padding: 2rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.skeleton-upload-area[data-v-df9dad2a] {
  border: 2px dashed #e5e7eb;
  border-radius: 8px;
  padding: 2rem;
  text-align: center;
  margin-bottom: 1.5rem;
}
.skeleton-progress[data-v-df9dad2a] {
  margin-top: 1rem;
}
.skeleton-processing[data-v-df9dad2a] {
  background: white;
  border-radius: 12px;
  padding: 1.5rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.skeleton-processing-header[data-v-df9dad2a] {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.skeleton-processing-details[data-v-df9dad2a] {
  space-y: 1rem;
}
.skeleton-progress-item[data-v-df9dad2a] {
  margin-bottom: 1rem;
}
.skeleton-progress-header[data-v-df9dad2a] {
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.5rem;
}
.skeleton-processing-info[data-v-df9dad2a] {
  margin-top: 1rem;
}
.skeleton-export[data-v-df9dad2a] {
  space-y: 1rem;
}
.skeleton-export-item[data-v-df9dad2a] {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem;
  background: white;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  animation: skeleton-fade-in-df9dad2a 0.5s ease-out forwards;
  opacity: 0;
}
.skeleton-export-info[data-v-df9dad2a] {
  flex: 1;
}
.skeleton-search[data-v-df9dad2a] {
  space-y: 0.75rem;
}
.skeleton-search-item[data-v-df9dad2a] {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.75rem;
  border-bottom: 1px solid #e5e7eb;
  animation: skeleton-fade-in-df9dad2a 0.3s ease-out forwards;
  opacity: 0;
}
.skeleton-search-content[data-v-df9dad2a] {
  flex: 1;
}
.skeleton-search-meta[data-v-df9dad2a] {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.skeleton-form[data-v-df9dad2a] {
  background: white;
  border-radius: 8px;
  padding: 1.5rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.skeleton-form-group[data-v-df9dad2a] {
  margin-bottom: 1.5rem;
}
.skeleton-form-actions[data-v-df9dad2a] {
  display: flex;
  gap: 1rem;
  justify-content: flex-end;
  margin-top: 2rem;
}
@media (max-width: 767px) {
  .skeleton-header[data-v-df9dad2a],
  .skeleton-row[data-v-df9dad2a] {
    gap: 0.5rem;
    padding: 0.75rem;
  }
  .skeleton-text-long[data-v-df9dad2a] {
    width: 140px;
  }
  .skeleton-text-medium[data-v-df9dad2a] {
    width: 100px;
  }
  .skeleton-row .skeleton-cell[data-v-df9dad2a]:nth-child(4),
  .skeleton-row .skeleton-cell[data-v-df9dad2a]:nth-child(6),
  .skeleton-row .skeleton-cell[data-v-df9dad2a]:nth-child(8) {
    display: none;
  }
  .skeleton-header .skeleton-cell[data-v-df9dad2a]:nth-child(4),
  .skeleton-header .skeleton-cell[data-v-df9dad2a]:nth-child(6),
  .skeleton-header .skeleton-cell[data-v-df9dad2a]:nth-child(8) {
    display: none;
  }
}
@media (max-width: 480px) {
  .skeleton-row .skeleton-cell[data-v-df9dad2a]:nth-child(7) {
    display: none;
  }
  .skeleton-header .skeleton-cell[data-v-df9dad2a]:nth-child(7) {
    display: none;
  }
}
@media (prefers-color-scheme: dark) {
  .skeleton-text-small[data-v-df9dad2a],
  .skeleton-text-short[data-v-df9dad2a],
  .skeleton-text-medium[data-v-df9dad2a],
  .skeleton-text-long[data-v-df9dad2a],
  .skeleton-checkbox[data-v-df9dad2a],
  .skeleton-avatar[data-v-df9dad2a],
  .skeleton-badge[data-v-df9dad2a],
  .skeleton-tag[data-v-df9dad2a],
  .skeleton-actions[data-v-df9dad2a] {
    background:
      linear-gradient(
        90deg,
        #374151 25%,
        #4b5563 50%,
        #374151 75%);
    background-size: 200% 100%;
  }
  .skeleton-table[data-v-df9dad2a],
  .skeleton-card[data-v-df9dad2a],
  .skeleton-list[data-v-df9dad2a],
  .skeleton-upload[data-v-df9dad2a],
  .skeleton-processing[data-v-df9dad2a],
  .skeleton-export-item[data-v-df9dad2a],
  .skeleton-form[data-v-df9dad2a] {
    background: #1f2937;
    border-color: #374151;
  }
  .skeleton-header[data-v-df9dad2a] {
    background-color: #111827;
  }
  .skeleton-row[data-v-df9dad2a],
  .skeleton-list-item[data-v-df9dad2a] {
    border-color: #374151;
  }
}
@media (prefers-reduced-motion: reduce) {
  .skeleton-animated[data-v-df9dad2a],
  .skeleton-text-small[data-v-df9dad2a],
  .skeleton-text-short[data-v-df9dad2a],
  .skeleton-text-medium[data-v-df9dad2a],
  .skeleton-text-long[data-v-df9dad2a],
  .skeleton-checkbox[data-v-df9dad2a],
  .skeleton-avatar[data-v-df9dad2a],
  .skeleton-badge[data-v-df9dad2a],
  .skeleton-tag[data-v-df9dad2a],
  .skeleton-actions[data-v-df9dad2a],
  .skeleton-row[data-v-df9dad2a],
  .skeleton-button[data-v-df9dad2a],
  .skeleton-input[data-v-df9dad2a],
  .skeleton-textarea[data-v-df9dad2a],
  .skeleton-upload-icon[data-v-df9dad2a],
  .skeleton-processing-icon[data-v-df9dad2a],
  .skeleton-export-icon[data-v-df9dad2a],
  .skeleton-export-item[data-v-df9dad2a],
  .skeleton-search-item[data-v-df9dad2a] {
    animation: none !important;
  }
  .skeleton-text-small[data-v-df9dad2a],
  .skeleton-text-short[data-v-df9dad2a],
  .skeleton-text-medium[data-v-df9dad2a],
  .skeleton-text-long[data-v-df9dad2a],
  .skeleton-checkbox[data-v-df9dad2a],
  .skeleton-avatar[data-v-df9dad2a],
  .skeleton-badge[data-v-df9dad2a],
  .skeleton-tag[data-v-df9dad2a],
  .skeleton-actions[data-v-df9dad2a],
  .skeleton-button[data-v-df9dad2a],
  .skeleton-input[data-v-df9dad2a],
  .skeleton-textarea[data-v-df9dad2a],
  .skeleton-upload-icon[data-v-df9dad2a],
  .skeleton-processing-icon[data-v-df9dad2a],
  .skeleton-export-icon[data-v-df9dad2a] {
    background: #f0f0f0;
  }
  @media (prefers-color-scheme: dark) {
    .skeleton-text-small[data-v-df9dad2a],
    .skeleton-text-short[data-v-df9dad2a],
    .skeleton-text-medium[data-v-df9dad2a],
    .skeleton-text-long[data-v-df9dad2a],
    .skeleton-checkbox[data-v-df9dad2a],
    .skeleton-avatar[data-v-df9dad2a],
    .skeleton-badge[data-v-df9dad2a],
    .skeleton-tag[data-v-df9dad2a],
    .skeleton-actions[data-v-df9dad2a],
    .skeleton-button[data-v-df9dad2a],
    .skeleton-input[data-v-df9dad2a],
    .skeleton-textarea[data-v-df9dad2a],
    .skeleton-upload-icon[data-v-df9dad2a],
    .skeleton-processing-icon[data-v-df9dad2a],
    .skeleton-export-icon[data-v-df9dad2a] {
      background: #374151;
    }
  }
}

/* sfc-style:/rails/app/javascript/components/CustomerCreationModal.vue?type=style&index=0 */
.customer-creation-modal-overlay[data-v-880d1fad] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 1rem;
}
.customer-creation-modal[data-v-880d1fad] {
  background: white;
  border-radius: 1rem;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
  max-width: 600px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
}
.modal-header[data-v-880d1fad] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem;
  border-bottom: 1px solid #e5e7eb;
}
.modal-title[data-v-880d1fad] {
  font-size: 1.25rem;
  font-weight: 600;
  color: #111827;
}
.modal-close[data-v-880d1fad] {
  background: none;
  border: none;
  color: #6b7280;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: all 0.2s;
}
.modal-close[data-v-880d1fad]:hover {
  color: #374151;
  background-color: #f3f4f6;
}
.modal-body[data-v-880d1fad] {
  padding: 1.5rem;
}
.form-section[data-v-880d1fad] {
  margin-bottom: 2rem;
}
.section-title[data-v-880d1fad] {
  font-size: 1rem;
  font-weight: 600;
  color: #374151;
  margin-bottom: 1rem;
}
.form-row[data-v-880d1fad] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.form-group[data-v-880d1fad] {
  margin-bottom: 1rem;
}
.form-label[data-v-880d1fad] {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  color: #374151;
  margin-bottom: 0.5rem;
}
.form-label.required[data-v-880d1fad]::after {
  content: " *";
  color: #dc2626;
}
.form-input[data-v-880d1fad],
.form-textarea[data-v-880d1fad] {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  transition: border-color 0.2s;
}
.form-input[data-v-880d1fad]:focus,
.form-textarea[data-v-880d1fad]:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.form-input.error[data-v-880d1fad],
.form-textarea.error[data-v-880d1fad] {
  border-color: #dc2626;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}
.error-message[data-v-880d1fad] {
  font-size: 0.75rem;
  color: #dc2626;
  margin-top: 0.25rem;
  display: block;
}
.tags-selection[data-v-880d1fad] {
  space-y: 1rem;
}
.existing-tags[data-v-880d1fad] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 1rem;
}
.tag-checkbox[data-v-880d1fad] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 9999px;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 0.875rem;
}
.tag-checkbox[data-v-880d1fad]:hover {
  background-color: #f9fafb;
}
.tag-checkbox[data-v-880d1fad]:has(input:checked) {
  background-color: #dbeafe;
  border-color: #3b82f6;
  color: #1e40af;
}
.tag-checkbox input[data-v-880d1fad] {
  margin: 0;
}
.tag-name[data-v-880d1fad] {
  font-weight: 500;
}
.tag-count[data-v-880d1fad] {
  color: #6b7280;
  font-size: 0.75rem;
}
.input-with-button[data-v-880d1fad] {
  display: flex;
  gap: 0.5rem;
}
.input-with-button .form-input[data-v-880d1fad] {
  flex: 1;
}
.custom-fields[data-v-880d1fad] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.modal-actions[data-v-880d1fad] {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  padding-top: 1.5rem;
  border-top: 1px solid #e5e7eb;
}
.btn[data-v-880d1fad] {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
}
.btn-primary[data-v-880d1fad] {
  background-color: #3b82f6;
  color: white;
}
.btn-primary[data-v-880d1fad]:hover:not(:disabled) {
  background-color: #2563eb;
}
.btn-primary[data-v-880d1fad]:disabled {
  background-color: #9ca3af;
  cursor: not-allowed;
}
.btn-outline[data-v-880d1fad] {
  background-color: transparent;
  color: #374151;
  border: 1px solid #d1d5db;
}
.btn-outline[data-v-880d1fad]:hover {
  background-color: #f9fafb;
}
.btn-secondary[data-v-880d1fad] {
  background-color: #10b981;
  color: white;
}
.btn-secondary[data-v-880d1fad]:hover:not(:disabled) {
  background-color: #059669;
}
.btn-secondary[data-v-880d1fad]:disabled {
  background-color: #9ca3af;
  cursor: not-allowed;
}
.btn-sm[data-v-880d1fad] {
  padding: 0.5rem 1rem;
  font-size: 0.75rem;
}
@media (max-width: 640px) {
  .customer-creation-modal[data-v-880d1fad] {
    max-width: 100%;
    margin: 0.5rem;
    max-height: calc(100vh - 1rem);
  }
  .form-row[data-v-880d1fad],
  .custom-fields[data-v-880d1fad] {
    grid-template-columns: 1fr;
  }
  .modal-actions[data-v-880d1fad] {
    flex-direction: column-reverse;
  }
  .modal-actions .btn[data-v-880d1fad] {
    width: 100%;
  }
}

/* sfc-style:/rails/app/javascript/components/CustomerEditModal.vue?type=style&index=0 */
.customer-edit-modal-overlay[data-v-2dd9d429] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 1rem;
}
.customer-edit-modal[data-v-2dd9d429] {
  background: white;
  border-radius: 1rem;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
  max-width: 600px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
}
.modal-header[data-v-2dd9d429] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem;
  border-bottom: 1px solid #e5e7eb;
}
.modal-title[data-v-2dd9d429] {
  font-size: 1.25rem;
  font-weight: 600;
  color: #111827;
}
.modal-close[data-v-2dd9d429] {
  background: none;
  border: none;
  color: #6b7280;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: all 0.2s;
}
.modal-close[data-v-2dd9d429]:hover {
  color: #374151;
  background-color: #f3f4f6;
}
.modal-body[data-v-2dd9d429] {
  padding: 1.5rem;
}
.form-section[data-v-2dd9d429] {
  margin-bottom: 2rem;
}
.section-title[data-v-2dd9d429] {
  font-size: 1rem;
  font-weight: 600;
  color: #374151;
  margin-bottom: 1rem;
}
.form-row[data-v-2dd9d429] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.form-group[data-v-2dd9d429] {
  margin-bottom: 1rem;
}
.form-label[data-v-2dd9d429] {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  color: #374151;
  margin-bottom: 0.5rem;
}
.form-label.required[data-v-2dd9d429]::after {
  content: " *";
  color: #dc2626;
}
.form-input[data-v-2dd9d429],
.form-textarea[data-v-2dd9d429] {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  transition: border-color 0.2s;
}
.form-input[data-v-2dd9d429]:focus,
.form-textarea[data-v-2dd9d429]:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.form-input.error[data-v-2dd9d429],
.form-textarea.error[data-v-2dd9d429] {
  border-color: #dc2626;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}
.error-message[data-v-2dd9d429] {
  font-size: 0.75rem;
  color: #dc2626;
  margin-top: 0.25rem;
  display: block;
}
.tags-selection[data-v-2dd9d429] {
  space-y: 1rem;
}
.existing-tags[data-v-2dd9d429] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 1rem;
}
.tag-checkbox[data-v-2dd9d429] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 9999px;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 0.875rem;
}
.tag-checkbox[data-v-2dd9d429]:hover {
  background-color: #f9fafb;
}
.tag-checkbox[data-v-2dd9d429]:has(input:checked) {
  background-color: #dbeafe;
  border-color: #3b82f6;
  color: #1e40af;
}
.tag-checkbox input[data-v-2dd9d429] {
  margin: 0;
}
.tag-name[data-v-2dd9d429] {
  font-weight: 500;
}
.tag-count[data-v-2dd9d429] {
  color: #6b7280;
  font-size: 0.75rem;
}
.input-with-button[data-v-2dd9d429] {
  display: flex;
  gap: 0.5rem;
}
.input-with-button .form-input[data-v-2dd9d429] {
  flex: 1;
}
.custom-fields[data-v-2dd9d429] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.modal-actions[data-v-2dd9d429] {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  padding-top: 1.5rem;
  border-top: 1px solid #e5e7eb;
}
.btn[data-v-2dd9d429] {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
}
.btn-primary[data-v-2dd9d429] {
  background-color: #3b82f6;
  color: white;
}
.btn-primary[data-v-2dd9d429]:hover:not(:disabled) {
  background-color: #2563eb;
}
.btn-primary[data-v-2dd9d429]:disabled {
  background-color: #9ca3af;
  cursor: not-allowed;
}
.btn-outline[data-v-2dd9d429] {
  background-color: transparent;
  color: #374151;
  border: 1px solid #d1d5db;
}
.btn-outline[data-v-2dd9d429]:hover {
  background-color: #f9fafb;
}
.btn-secondary[data-v-2dd9d429] {
  background-color: #10b981;
  color: white;
}
.btn-secondary[data-v-2dd9d429]:hover:not(:disabled) {
  background-color: #059669;
}
.btn-secondary[data-v-2dd9d429]:disabled {
  background-color: #9ca3af;
  cursor: not-allowed;
}
.btn-sm[data-v-2dd9d429] {
  padding: 0.5rem 1rem;
  font-size: 0.75rem;
}
@media (max-width: 640px) {
  .customer-edit-modal[data-v-2dd9d429] {
    max-width: 100%;
    margin: 0.5rem;
    max-height: calc(100vh - 1rem);
  }
  .form-row[data-v-2dd9d429],
  .custom-fields[data-v-2dd9d429] {
    grid-template-columns: 1fr;
  }
  .modal-actions[data-v-2dd9d429] {
    flex-direction: column-reverse;
  }
  .modal-actions .btn[data-v-2dd9d429] {
    width: 100%;
  }
}

/* sfc-style:/rails/app/javascript/components/TagCreationModal.vue?type=style&index=0 */
.tag-creation-modal-overlay[data-v-47d376cf] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 1rem;
}
.tag-creation-modal[data-v-47d376cf] {
  background: white;
  border-radius: 1rem;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
  max-width: 500px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
}
.modal-header[data-v-47d376cf] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem;
  border-bottom: 1px solid #e5e7eb;
}
.modal-title[data-v-47d376cf] {
  font-size: 1.25rem;
  font-weight: 600;
  color: #111827;
}
.modal-close[data-v-47d376cf] {
  background: none;
  border: none;
  color: #6b7280;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: all 0.2s;
}
.modal-close[data-v-47d376cf]:hover {
  color: #374151;
  background-color: #f3f4f6;
}
.modal-body[data-v-47d376cf] {
  padding: 1.5rem;
}
.form-group[data-v-47d376cf] {
  margin-bottom: 1rem;
}
.form-label[data-v-47d376cf] {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  color: #374151;
  margin-bottom: 0.5rem;
}
.form-label.required[data-v-47d376cf]::after {
  content: " *";
  color: #dc2626;
}
.form-input[data-v-47d376cf],
.form-textarea[data-v-47d376cf] {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  transition: border-color 0.2s;
}
.form-input[data-v-47d376cf]:focus,
.form-textarea[data-v-47d376cf]:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.form-input.error[data-v-47d376cf],
.form-textarea.error[data-v-47d376cf] {
  border-color: #dc2626;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}
.error-message[data-v-47d376cf] {
  font-size: 0.75rem;
  color: #dc2626;
  margin-top: 0.25rem;
  display: block;
}
.color-picker-container[data-v-47d376cf] {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
.color-input[data-v-47d376cf] {
  width: 4rem;
  height: 3rem;
  border: 1px solid #d1d5db;
  border-radius: 0.5rem;
  cursor: pointer;
  padding: 0.25rem;
}
.color-text[data-v-47d376cf] {
  flex: 1;
  text-transform: uppercase;
}
.modal-actions[data-v-47d376cf] {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  padding-top: 1.5rem;
  border-top: 1px solid #e5e7eb;
}
.btn[data-v-47d376cf] {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
}
.btn-primary[data-v-47d376cf] {
  background-color: #3b82f6;
  color: white;
}
.btn-primary[data-v-47d376cf]:hover:not(:disabled) {
  background-color: #2563eb;
}
.btn-primary[data-v-47d376cf]:disabled {
  background-color: #9ca3af;
  cursor: not-allowed;
}
.btn-outline[data-v-47d376cf] {
  background-color: transparent;
  color: #374151;
  border: 1px solid #d1d5db;
}
.btn-outline[data-v-47d376cf]:hover {
  background-color: #f9fafb;
}
@media (max-width: 640px) {
  .tag-creation-modal[data-v-47d376cf] {
    max-width: 100%;
    margin: 0.5rem;
    max-height: calc(100vh - 1rem);
  }
  .modal-actions[data-v-47d376cf] {
    flex-direction: column-reverse;
  }
  .modal-actions .btn[data-v-47d376cf] {
    width: 100%;
  }
  .color-picker-container[data-v-47d376cf] {
    flex-direction: column;
    align-items: stretch;
  }
  .color-input[data-v-47d376cf] {
    width: 100%;
  }
}

/* sfc-style:/rails/app/javascript/components/BulkTagModal.vue?type=style&index=0 */
.bulk-tag-modal-overlay[data-v-7f99020f] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 1rem;
}
.bulk-tag-modal[data-v-7f99020f] {
  background: white;
  border-radius: 1rem;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
  max-width: 600px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
}
.modal-header[data-v-7f99020f] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem;
  border-bottom: 1px solid #e5e7eb;
}
.modal-title[data-v-7f99020f] {
  font-size: 1.25rem;
  font-weight: 600;
  color: #111827;
}
.modal-close[data-v-7f99020f] {
  background: none;
  border: none;
  color: #6b7280;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: all 0.2s;
}
.modal-close[data-v-7f99020f]:hover {
  color: #374151;
  background-color: #f3f4f6;
}
.modal-body[data-v-7f99020f] {
  padding: 1.5rem;
}
.selection-info[data-v-7f99020f] {
  margin-bottom: 1.5rem;
}
.form-group[data-v-7f99020f] {
  margin-bottom: 1.5rem;
}
.form-label[data-v-7f99020f] {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  color: #374151;
  margin-bottom: 0.75rem;
}
.radio-group[data-v-7f99020f] {
  space-y: 0.75rem;
}
.radio-option[data-v-7f99020f] {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem;
  border: 1px solid #e5e7eb;
  border-radius: 0.5rem;
  cursor: pointer;
  transition: all 0.2s;
}
.radio-option[data-v-7f99020f]:hover {
  background-color: #f9fafb;
}
.radio-option[data-v-7f99020f]:has(input:checked) {
  background-color: #f0f9ff;
  border-color: #0ea5e9;
}
.radio-input[data-v-7f99020f] {
  margin: 0;
}
.radio-label[data-v-7f99020f] {
  font-size: 0.875rem;
  color: #374151;
}
.tags-selection[data-v-7f99020f] {
  margin-bottom: 1rem;
}
.existing-tags[data-v-7f99020f] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.tag-checkbox[data-v-7f99020f] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 9999px;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 0.875rem;
}
.tag-checkbox[data-v-7f99020f]:hover:not(.disabled) {
  background-color: #f9fafb;
}
.tag-checkbox[data-v-7f99020f]:has(input:checked) {
  background-color: #dbeafe;
  border-color: #3b82f6;
  color: #1e40af;
}
.tag-checkbox.disabled[data-v-7f99020f] {
  opacity: 0.5;
  cursor: not-allowed;
}
.tag-checkbox input[data-v-7f99020f] {
  margin: 0;
}
.tag-name[data-v-7f99020f] {
  font-weight: 500;
}
.tag-count[data-v-7f99020f] {
  color: #6b7280;
  font-size: 0.75rem;
}
.help-text[data-v-7f99020f] {
  font-size: 0.75rem;
  color: #6b7280;
  margin-top: 0.5rem;
  font-style: italic;
}
.preview-section[data-v-7f99020f] {
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1.5rem;
}
.preview-title[data-v-7f99020f] {
  font-size: 0.875rem;
  font-weight: 600;
  color: #374151;
  margin-bottom: 0.75rem;
}
.preview-content[data-v-7f99020f] {
  space-y: 0.75rem;
}
.preview-text[data-v-7f99020f] {
  font-size: 0.875rem;
  color: #475569;
}
.selected-tags[data-v-7f99020f] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.tag-badge[data-v-7f99020f] {
  padding: 0.25rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 500;
  color: #374151;
}
.modal-actions[data-v-7f99020f] {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  padding-top: 1.5rem;
  border-top: 1px solid #e5e7eb;
}
.btn[data-v-7f99020f] {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
}
.btn-primary[data-v-7f99020f] {
  background-color: #3b82f6;
  color: white;
}
.btn-primary[data-v-7f99020f]:hover:not(:disabled) {
  background-color: #2563eb;
}
.btn-primary[data-v-7f99020f]:disabled {
  background-color: #9ca3af;
  cursor: not-allowed;
}
.btn-outline[data-v-7f99020f] {
  background-color: transparent;
  color: #374151;
  border: 1px solid #d1d5db;
}
.btn-outline[data-v-7f99020f]:hover {
  background-color: #f9fafb;
}
@media (max-width: 640px) {
  .bulk-tag-modal[data-v-7f99020f] {
    max-width: 100%;
    margin: 0.5rem;
    max-height: calc(100vh - 1rem);
  }
  .modal-actions[data-v-7f99020f] {
    flex-direction: column-reverse;
  }
  .modal-actions .btn[data-v-7f99020f] {
    width: 100%;
  }
  .radio-group[data-v-7f99020f] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }
}

/* sfc-style:/rails/app/javascript/components/CustomerDeleteConfirmationModal.vue?type=style&index=0 */
.delete-confirmation-modal-overlay[data-v-7ca2fb30] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 1rem;
}
.delete-confirmation-modal[data-v-7ca2fb30] {
  background: white;
  border-radius: 1rem;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
  max-width: 500px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
}
.modal-header[data-v-7ca2fb30] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem;
  border-bottom: 1px solid #e5e7eb;
}
.modal-title[data-v-7ca2fb30] {
  font-size: 1.25rem;
  font-weight: 600;
  color: #111827;
}
.modal-close[data-v-7ca2fb30] {
  background: none;
  border: none;
  color: #6b7280;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: 0.5rem;
  transition: all 0.2s;
}
.modal-close[data-v-7ca2fb30]:hover {
  color: #374151;
  background-color: #f3f4f6;
}
.modal-body[data-v-7ca2fb30] {
  padding: 1.5rem;
}
.customer-info[data-v-7ca2fb30] {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin-bottom: 2rem;
}
.warning-icon[data-v-7ca2fb30] {
  margin-bottom: 1rem;
}
.warning-content[data-v-7ca2fb30] {
  margin-bottom: 1.5rem;
}
.warning-text[data-v-7ca2fb30] {
  font-size: 1.125rem;
  color: #111827;
  margin-bottom: 0.5rem;
}
.warning-subtext[data-v-7ca2fb30] {
  font-size: 0.875rem;
  color: #6b7280;
}
.customer-details[data-v-7ca2fb30] {
  background-color: #f9fafb;
  border-radius: 0.75rem;
  padding: 1rem;
  width: 100%;
  text-align: left;
}
.detail-item[data-v-7ca2fb30] {
  display: flex;
  align-items: center;
  margin-bottom: 0.5rem;
  gap: 0.5rem;
}
.detail-item[data-v-7ca2fb30]:last-child {
  margin-bottom: 0;
}
.detail-label[data-v-7ca2fb30] {
  font-weight: 500;
  color: #374151;
  min-width: 60px;
}
.detail-value[data-v-7ca2fb30] {
  color: #111827;
  word-break: break-word;
}
.tags-display[data-v-7ca2fb30] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  align-items: center;
}
.tag-badge[data-v-7ca2fb30] {
  padding: 0.125rem 0.375rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 500;
  color: #374151;
}
.tag-more[data-v-7ca2fb30] {
  font-size: 0.75rem;
  color: #6b7280;
  font-style: italic;
}
.impact-warning[data-v-7ca2fb30] {
  background-color: #fffbeb;
  border: 1px solid #fbbf24;
  border-radius: 0.75rem;
  padding: 1rem;
  margin-bottom: 1.5rem;
}
.impact-title[data-v-7ca2fb30] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  font-weight: 600;
  color: #92400e;
  margin-bottom: 0.75rem;
}
.impact-content[data-v-7ca2fb30] {
  space-y: 0.75rem;
}
.impact-item[data-v-7ca2fb30] {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
}
.impact-icon[data-v-7ca2fb30] {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.125rem;
}
.impact-icon.warning[data-v-7ca2fb30] {
  background-color: #fef3c7;
  color: #d97706;
}
.impact-icon.info[data-v-7ca2fb30] {
  background-color: #dbeafe;
  color: #2563eb;
}
.impact-text[data-v-7ca2fb30] {
  flex: 1;
  font-size: 0.875rem;
  color: #111827;
  line-height: 1.5;
}
.campaigns-list[data-v-7ca2fb30] {
  margin-top: 0.5rem;
  space-y: 0.25rem;
}
.campaign-item[data-v-7ca2fb30] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #f3f4f6;
  padding: 0.5rem;
  border-radius: 0.375rem;
}
.campaign-name[data-v-7ca2fb30] {
  font-weight: 500;
  color: #111827;
}
.campaign-date[data-v-7ca2fb30] {
  font-size: 0.75rem;
  color: #6b7280;
}
.campaign-more[data-v-7ca2fb30] {
  font-size: 0.75rem;
  color: #6b7280;
  font-style: italic;
  margin-top: 0.25rem;
}
.loading-impact[data-v-7ca2fb30] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  text-align: center;
}
.loading-spinner[data-v-7ca2fb30] {
  width: 2rem;
  height: 2rem;
  border: 3px solid #e5e7eb;
  border-top: 3px solid #3b82f6;
  border-radius: 50%;
  animation: spin-7ca2fb30 1s linear infinite;
  margin-bottom: 1rem;
}
@keyframes spin-7ca2fb30 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.loading-text[data-v-7ca2fb30] {
  color: #6b7280;
  font-size: 0.875rem;
}
.confirmation-section[data-v-7ca2fb30] {
  margin-bottom: 1rem;
}
.confirmation-label[data-v-7ca2fb30] {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  color: #374151;
  margin-bottom: 0.5rem;
}
.confirmation-input[data-v-7ca2fb30] {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  transition: border-color 0.2s;
}
.confirmation-input[data-v-7ca2fb30]:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.confirmation-input.error[data-v-7ca2fb30] {
  border-color: #dc2626;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}
.error-message[data-v-7ca2fb30] {
  font-size: 0.75rem;
  color: #dc2626;
  margin-top: 0.25rem;
  display: block;
}
.modal-actions[data-v-7ca2fb30] {
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
  padding: 1.5rem;
  border-top: 1px solid #e5e7eb;
}
.btn[data-v-7ca2fb30] {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
}
.btn[data-v-7ca2fb30]:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}
.btn-outline[data-v-7ca2fb30] {
  background-color: transparent;
  color: #374151;
  border: 1px solid #d1d5db;
}
.btn-outline[data-v-7ca2fb30]:hover:not(:disabled) {
  background-color: #f9fafb;
}
.btn-danger[data-v-7ca2fb30] {
  background-color: #dc2626;
  color: white;
}
.btn-danger[data-v-7ca2fb30]:hover:not(:disabled) {
  background-color: #b91c1c;
}
.btn-danger[data-v-7ca2fb30]:disabled {
  background-color: #f3f4f6;
  color: #9ca3af;
}
@media (max-width: 640px) {
  .delete-confirmation-modal[data-v-7ca2fb30] {
    max-width: 100%;
    margin: 0.5rem;
    max-height: calc(100vh - 1rem);
  }
  .modal-actions[data-v-7ca2fb30] {
    flex-direction: column-reverse;
  }
  .modal-actions .btn[data-v-7ca2fb30] {
    width: 100%;
  }
  .customer-details[data-v-7ca2fb30] {
    text-align: center;
  }
  .detail-item[data-v-7ca2fb30] {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.25rem;
  }
  .detail-label[data-v-7ca2fb30] {
    min-width: auto;
  }
  .campaign-item[data-v-7ca2fb30] {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.25rem;
  }
}

/* sfc-style:/rails/app/javascript/components/ErrorBoundary.vue?type=style&index=0 */
.error-boundary[data-v-8fe7c79c] {
  min-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}
.error-container[data-v-8fe7c79c] {
  max-width: 500px;
  text-align: center;
  background: white;
  border-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  border: 1px solid #e5e7eb;
}
.error-icon[data-v-8fe7c79c] {
  margin-bottom: 1rem;
  display: flex;
  justify-content: center;
}
.error-content[data-v-8fe7c79c] {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.error-title[data-v-8fe7c79c] {
  font-size: 1.5rem;
  font-weight: 700;
  color: #111827;
  margin: 0;
}
.error-message[data-v-8fe7c79c] {
  color: #6b7280;
  line-height: 1.5;
  margin: 0;
}
.error-actions[data-v-8fe7c79c] {
  display: flex;
  gap: 0.75rem;
  justify-content: center;
  flex-wrap: wrap;
}
.error-details[data-v-8fe7c79c] {
  margin-top: 1rem;
  text-align: left;
  border: 1px solid #e5e7eb;
  border-radius: 0.5rem;
  overflow: hidden;
}
.error-details-toggle[data-v-8fe7c79c] {
  background: #f9fafb;
  padding: 0.75rem;
  cursor: pointer;
  user-select: none;
  font-weight: 500;
  border: none;
  width: 100%;
  display: block;
}
.error-details-toggle[data-v-8fe7c79c]:hover {
  background: #f3f4f6;
}
.error-details-content[data-v-8fe7c79c] {
  padding: 1rem;
  background: white;
  font-size: 0.875rem;
  line-height: 1.4;
}
.error-details-content p[data-v-8fe7c79c] {
  margin: 0 0 0.5rem 0;
}
.error-details-content strong[data-v-8fe7c79c] {
  color: #374151;
  font-weight: 600;
}
.error-stack[data-v-8fe7c79c],
.error-additional[data-v-8fe7c79c] {
  background: #f3f4f6;
  padding: 0.75rem;
  border-radius: 0.375rem;
  font-family:
    "Monaco",
    "Menlo",
    "Ubuntu Mono",
    monospace;
  font-size: 0.75rem;
  line-height: 1.2;
  overflow-x: auto;
  white-space: pre-wrap;
  word-break: break-all;
  margin: 0.5rem 0;
  max-height: 200px;
  overflow-y: auto;
}
.btn[data-v-8fe7c79c] {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
}
.btn-primary[data-v-8fe7c79c] {
  background-color: #3b82f6;
  color: white;
}
.btn-primary[data-v-8fe7c79c]:hover:not(:disabled) {
  background-color: #2563eb;
}
.btn-primary[data-v-8fe7c79c]:disabled {
  background-color: #9ca3af;
  cursor: not-allowed;
}
.btn-outline[data-v-8fe7c79c] {
  background-color: transparent;
  color: #374151;
  border: 1px solid #d1d5db;
}
.btn-outline[data-v-8fe7c79c]:hover {
  background-color: #f9fafb;
}
@media (max-width: 640px) {
  .error-boundary[data-v-8fe7c79c] {
    padding: 1rem;
    min-height: 300px;
  }
  .error-container[data-v-8fe7c79c] {
    padding: 1.5rem;
  }
  .error-title[data-v-8fe7c79c] {
    font-size: 1.25rem;
  }
  .error-actions[data-v-8fe7c79c] {
    flex-direction: column;
  }
  .btn[data-v-8fe7c79c] {
    width: 100%;
  }
}
@media (prefers-contrast: high) {
  .error-container[data-v-8fe7c79c] {
    border: 2px solid #000;
  }
  .error-details[data-v-8fe7c79c] {
    border: 2px solid #000;
  }
}
@media (prefers-color-scheme: dark) {
  .error-container[data-v-8fe7c79c] {
    background: #1f2937;
    border-color: #374151;
  }
  .error-title[data-v-8fe7c79c] {
    color: #f9fafb;
  }
  .error-message[data-v-8fe7c79c] {
    color: #d1d5db;
  }
  .error-details-toggle[data-v-8fe7c79c] {
    background: #374151;
    color: #f9fafb;
  }
  .error-details-toggle[data-v-8fe7c79c]:hover {
    background: #4b5563;
  }
  .error-details-content[data-v-8fe7c79c] {
    background: #1f2937;
    color: #d1d5db;
  }
  .error-stack[data-v-8fe7c79c],
  .error-additional[data-v-8fe7c79c] {
    background: #374151;
    color: #d1d5db;
  }
}

/* sfc-style:/rails/app/javascript/components/CustomerManagementInterface.vue?type=style&index=0 */
.sr-only[data-v-abac4b4f] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.sr-only.focus[data-v-abac4b4f]:not(.sr-only):focus {
  position: static;
  width: auto;
  height: auto;
  padding: 0.5rem 1rem;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
}
.tag-item[data-v-abac4b4f]:focus,
.tag-edit[data-v-abac4b4f]:focus,
.search-input[data-v-abac4b4f]:focus,
.filter-select[data-v-abac4b4f]:focus {
  outline: 2px solid #3B82F6;
  outline-offset: 2px;
  border-radius: 4px;
}
@media (prefers-contrast: high) {
  .tag-item.active[data-v-abac4b4f] {
    border: 2px solid currentColor;
  }
  .btn[data-v-abac4b4f]:focus {
    outline: 3px solid currentColor;
    outline-offset: 2px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .tag-item[data-v-abac4b4f],
  .btn[data-v-abac4b4f],
  .notification[data-v-abac4b4f] {
    transition: none !important;
  }
  .loading-spinner-xs[data-v-abac4b4f],
  .animate-spin[data-v-abac4b4f] {
    animation: none !important;
  }
}
.customer-management-interface[data-v-abac4b4f] {
  max-width: 1400px;
  margin: 0 auto;
  padding: 1rem;
}
@media (min-width: 768px) {
  .customer-management-interface[data-v-abac4b4f] {
    padding: 2rem;
  }
}
.interface-actions[data-v-abac4b4f] {
  background: white;
  border-radius: 0.75rem;
  padding: 1rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  border: 1px solid #e5e7eb;
}
@media (min-width: 768px) {
  .interface-actions[data-v-abac4b4f] {
    padding: 1.5rem;
  }
}
@media (max-width: 767px) {
  .interface-actions .flex[data-v-abac4b4f] {
    flex-direction: column;
    gap: 1rem;
  }
  .interface-actions .flex.justify-between[data-v-abac4b4f] {
    align-items: flex-start;
  }
  .interface-actions .flex.gap-3[data-v-abac4b4f] {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.75rem;
  }
  .interface-actions .btn[data-v-abac4b4f] {
    flex: 1;
    min-width: 0;
    font-size: 0.875rem;
    padding: 0.625rem 1rem;
  }
}
.tag-management[data-v-abac4b4f] {
  background: white;
  border-radius: 1rem;
  padding: 1rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .tag-management[data-v-abac4b4f] {
    padding: 1.5rem;
    margin-bottom: 2rem;
  }
}
.tag-controls[data-v-abac4b4f] {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
}
@media (max-width: 767px) {
  .tag-controls[data-v-abac4b4f] {
    flex-direction: column;
    gap: 1rem;
  }
  .tag-actions[data-v-abac4b4f] {
    width: 100%;
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .tag-controls[data-v-abac4b4f] {
    gap: 2rem;
  }
}
.existing-tags[data-v-abac4b4f] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  flex: 1;
}
.tag-item[data-v-abac4b4f] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  background-color: #f3f4f6;
  border: 1px solid #d1d5db;
  border-radius: 9999px;
  cursor: pointer;
  transition: all 0.2s;
}
.tag-item[data-v-abac4b4f]:hover {
  background-color: #e5e7eb;
}
.tag-item.active[data-v-abac4b4f] {
  background-color: #dbeafe;
  border-color: #3b82f6;
  color: #1e40af;
}
.tag-name[data-v-abac4b4f] {
  font-weight: 500;
  font-size: 0.875rem;
}
.tag-count[data-v-abac4b4f] {
  font-size: 0.75rem;
  color: #6b7280;
}
.tag-edit[data-v-abac4b4f] {
  background: none;
  border: none;
  cursor: pointer;
  color: #6b7280;
  padding: 0.125rem;
  border-radius: 0.25rem;
  transition: all 0.2s;
}
.tag-edit[data-v-abac4b4f]:hover {
  color: #374151;
  background-color: rgba(0, 0, 0, 0.05);
}
.tag-actions[data-v-abac4b4f] {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
.btn-create-tag[data-v-abac4b4f],
.btn-clear-tags[data-v-abac4b4f] {
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  display: flex;
  align-items: center;
  font-size: 0.875rem;
}
.btn-create-tag[data-v-abac4b4f] {
  background-color: #10b981;
  color: white;
}
.btn-create-tag[data-v-abac4b4f]:hover {
  background-color: #059669;
}
.btn-clear-tags[data-v-abac4b4f] {
  background-color: transparent;
  color: #6b7280;
  border: 1px solid #d1d5db;
}
.btn-clear-tags[data-v-abac4b4f]:hover {
  background-color: #f9fafb;
}
.search-filters[data-v-abac4b4f] {
  display: flex;
  gap: 1rem;
  align-items: center;
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .search-filters[data-v-abac4b4f] {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
  }
  .filter-controls[data-v-abac4b4f] {
    flex-direction: column;
    gap: 0.5rem;
  }
  .filter-select[data-v-abac4b4f] {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .search-filters[data-v-abac4b4f] {
    margin-bottom: 2rem;
  }
}
.search-box[data-v-abac4b4f] {
  position: relative;
  flex: 1;
  min-width: 200px;
}
@media (min-width: 768px) {
  .search-box[data-v-abac4b4f] {
    min-width: 300px;
  }
}
.search-icon[data-v-abac4b4f] {
  position: absolute;
  left: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  color: #6b7280;
}
.search-input[data-v-abac4b4f] {
  width: 100%;
  padding: 0.75rem 0.75rem 0.75rem 2.5rem;
  border: 1px solid #d1d5db;
  border-radius: 0.5rem;
  background: white;
  font-size: 0.875rem;
}
.search-input[data-v-abac4b4f]:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.clear-search[data-v-abac4b4f] {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  color: #6b7280;
  padding: 0.25rem;
  border-radius: 0.25rem;
}
.clear-search[data-v-abac4b4f]:hover {
  color: #374151;
  background-color: #f3f4f6;
}
.filter-controls[data-v-abac4b4f] {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
.filter-select[data-v-abac4b4f] {
  padding: 0.5rem 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  background: white;
  font-size: 0.875rem;
  min-width: 150px;
}
.btn-reset-filters[data-v-abac4b4f] {
  padding: 0.5rem 0.75rem;
  background-color: transparent;
  color: #6b7280;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  cursor: pointer;
  font-size: 0.875rem;
  display: flex;
  align-items: center;
}
.btn-reset-filters[data-v-abac4b4f]:hover {
  background-color: #f9fafb;
}
.bulk-actions-bar[data-v-abac4b4f] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #f0f9ff;
  border: 1px solid #0ea5e9;
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  margin-bottom: 1.5rem;
}
@media (max-width: 767px) {
  .bulk-actions-bar[data-v-abac4b4f] {
    flex-direction: column;
    gap: 1rem;
    padding: 1rem;
  }
  .bulk-actions[data-v-abac4b4f] {
    width: 100%;
    justify-content: center;
  }
  .bulk-actions .btn-sm[data-v-abac4b4f] {
    flex: 1;
    min-width: 0;
  }
}
@media (min-width: 768px) {
  .bulk-actions-bar[data-v-abac4b4f] {
    padding: 1rem 1.5rem;
    margin-bottom: 2rem;
  }
}
.selection-info[data-v-abac4b4f] {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.selected-count[data-v-abac4b4f] {
  font-weight: 600;
  color: #0c4a6e;
}
.btn-clear-selection[data-v-abac4b4f] {
  color: #0ea5e9;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 0.875rem;
  text-decoration: underline;
}
.bulk-progress[data-v-abac4b4f] {
  display: flex;
  align-items: center;
  margin: 0 1rem;
}
.progress-info[data-v-abac4b4f] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.progress-text[data-v-abac4b4f] {
  font-size: 0.875rem;
  color: #0c4a6e;
  font-weight: 500;
}
.progress-spinner[data-v-abac4b4f] {
  display: flex;
  align-items: center;
  color: #0ea5e9;
}
.bulk-actions[data-v-abac4b4f] {
  display: flex;
  gap: 0.75rem;
}
.customers-table-container[data-v-abac4b4f] {
  background: white;
  border-radius: 1rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .customers-table-container[data-v-abac4b4f] {
    margin-bottom: 2rem;
  }
}
.loading-state[data-v-abac4b4f],
.empty-state[data-v-abac4b4f] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 4rem 2rem;
  text-align: center;
}
.loading-spinner[data-v-abac4b4f] {
  width: 2rem;
  height: 2rem;
  border: 3px solid #e5e7eb;
  border-top: 3px solid #3b82f6;
  border-radius: 50%;
  animation: spin-abac4b4f 1s linear infinite;
  margin-bottom: 1rem;
}
@keyframes spin-abac4b4f {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.loading-spinner-small[data-v-abac4b4f] {
  width: 1.5rem;
  height: 1.5rem;
  border: 2px solid #e5e7eb;
  border-top: 2px solid #3b82f6;
  border-radius: 50%;
  animation: spin-abac4b4f 1s linear infinite;
}
.loading-spinner-xs[data-v-abac4b4f] {
  width: 1rem;
  height: 1rem;
  border: 2px solid #e5e7eb;
  border-top: 2px solid #3b82f6;
  border-radius: 50%;
  animation: spin-abac4b4f 1s linear infinite;
}
.search-loading-state[data-v-abac4b4f] {
  position: relative;
}
.loading-overlay[data-v-abac4b4f] {
  position: absolute;
  top: 1rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 20;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background: rgba(255, 255, 255, 0.95);
  padding: 0.75rem 1.5rem;
  border-radius: 0.75rem;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(4px);
}
.loading-text[data-v-abac4b4f] {
  font-size: 0.875rem;
  font-weight: 500;
  color: #374151;
}
.table-with-overlay[data-v-abac4b4f] {
  position: relative;
  pointer-events: none;
}
.pagination-loading[data-v-abac4b4f] {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  margin-bottom: 1rem;
}
.loading-overlay-pagination[data-v-abac4b4f] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: rgba(255, 255, 255, 0.9);
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.search-input.loading[data-v-abac4b4f] {
  background-color: #f9fafb;
  color: #6b7280;
}
.table-row.loading[data-v-abac4b4f] {
  opacity: 0.7;
  pointer-events: none;
}
.pagination.loading[data-v-abac4b4f] {
  opacity: 0.8;
}
.page-btn.loading[data-v-abac4b4f] {
  background-color: #f3f4f6;
  pointer-events: none;
}
.table-wrapper[data-v-abac4b4f] {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  transform: translateZ(0);
  will-change: scroll-position;
  contain: layout style paint;
}
@media (max-width: 767px) {
  .table-wrapper[data-v-abac4b4f] {
    overflow-x: auto;
    overflow-y: hidden;
  }
  .customers-table[data-v-abac4b4f] {
    min-width: 800px;
  }
  .customers-table th[data-v-abac4b4f]:nth-child(4),
  .customers-table td[data-v-abac4b4f]:nth-child(4),
  .customers-table th[data-v-abac4b4f]:nth-child(6),
  .customers-table td[data-v-abac4b4f]:nth-child(6),
  .customers-table th[data-v-abac4b4f]:nth-child(8),
  .customers-table td[data-v-abac4b4f]:nth-child(8) {
    display: none;
  }
}
@media (max-width: 480px) {
  .customers-table[data-v-abac4b4f] {
    min-width: 600px;
  }
  .customers-table th[data-v-abac4b4f]:nth-child(7),
  .customers-table td[data-v-abac4b4f]:nth-child(7) {
    display: none;
  }
}
.customers-table[data-v-abac4b4f] {
  width: 100%;
  border-collapse: collapse;
}
.select-column[data-v-abac4b4f] {
  width: 50px;
  padding: 0.75rem;
  background-color: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
}
@media (min-width: 768px) {
  .select-column[data-v-abac4b4f] {
    padding: 1rem;
  }
}
.table-header[data-v-abac4b4f] {
  padding: 0.75rem;
  background-color: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
  font-weight: 600;
  text-align: left;
  color: #374151;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .table-header[data-v-abac4b4f] {
    padding: 1rem;
  }
}
.table-header.sortable[data-v-abac4b4f] {
  cursor: pointer;
  user-select: none;
}
.table-header.sortable[data-v-abac4b4f]:hover {
  background-color: #f3f4f6;
}
.header-content[data-v-abac4b4f] {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.sort-indicator[data-v-abac4b4f] {
  margin-left: 0.5rem;
}
.actions-column[data-v-abac4b4f] {
  width: 100px;
  padding: 0.75rem;
  background-color: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
  text-align: center;
}
@media (min-width: 768px) {
  .actions-column[data-v-abac4b4f] {
    width: 120px;
    padding: 1rem;
  }
}
.table-row[data-v-abac4b4f] {
  transition: background-color 0.2s;
}
.table-row[data-v-abac4b4f]:hover {
  background-color: #f9fafb;
}
.table-row.selected[data-v-abac4b4f] {
  background-color: #eff6ff;
}
.select-cell[data-v-abac4b4f],
.table-cell[data-v-abac4b4f],
.actions-cell[data-v-abac4b4f] {
  padding: 0.75rem;
  border-bottom: 1px solid #e5e7eb;
  vertical-align: top;
}
@media (min-width: 768px) {
  .select-cell[data-v-abac4b4f],
  .table-cell[data-v-abac4b4f],
  .actions-cell[data-v-abac4b4f] {
    padding: 1rem;
  }
}
.checkbox[data-v-abac4b4f] {
  width: 1rem;
  height: 1rem;
  border-radius: 0.25rem;
  border: 1px solid #d1d5db;
  cursor: pointer;
}
.customer-name[data-v-abac4b4f] {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.name-primary[data-v-abac4b4f] {
  font-weight: 500;
  color: #111827;
}
.name-secondary[data-v-abac4b4f] {
  font-size: 0.875rem;
  color: #6b7280;
}
.customer-email[data-v-abac4b4f] {
  display: flex;
  flex-direction: column;
}
.email-link[data-v-abac4b4f] {
  color: #3b82f6;
  text-decoration: none;
}
.email-link[data-v-abac4b4f]:hover {
  text-decoration: underline;
}
.customer-company[data-v-abac4b4f] {
  color: #374151;
}
.customer-tags[data-v-abac4b4f] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}
.tag-badge[data-v-abac4b4f] {
  padding: 0.25rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 500;
  color: #374151;
}
.tag-more[data-v-abac4b4f] {
  font-size: 0.75rem;
  color: #6b7280;
  font-style: italic;
}
.campaign-stats[data-v-abac4b4f] {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.stat-item[data-v-abac4b4f] {
  display: flex;
  align-items: baseline;
  gap: 0.25rem;
}
.stat-number[data-v-abac4b4f] {
  font-weight: 600;
  color: #111827;
}
.stat-label[data-v-abac4b4f] {
  font-size: 0.75rem;
  color: #6b7280;
}
.engagement-indicator[data-v-abac4b4f] {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.engagement-badge[data-v-abac4b4f] {
  padding: 0.25rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 500;
  text-align: center;
}
.engagement-high[data-v-abac4b4f] {
  background-color: #dcfce7;
  color: #166534;
}
.engagement-medium[data-v-abac4b4f] {
  background-color: #fef3c7;
  color: #92400e;
}
.engagement-low[data-v-abac4b4f] {
  background-color: #fee2e2;
  color: #991b1b;
}
.engagement-none[data-v-abac4b4f],
.engagement-unknown[data-v-abac4b4f] {
  background-color: #f3f4f6;
  color: #6b7280;
}
.engagement-stats[data-v-abac4b4f] {
  display: flex;
  flex-direction: column;
}
.engagement-stat[data-v-abac4b4f] {
  font-size: 0.75rem;
  color: #6b7280;
}
.date-cell[data-v-abac4b4f] {
  color: #6b7280;
  font-size: 0.875rem;
}
.action-buttons[data-v-abac4b4f] {
  display: flex;
  gap: 0.25rem;
  justify-content: center;
}
@media (min-width: 768px) {
  .action-buttons[data-v-abac4b4f] {
    gap: 0.5rem;
  }
}
.action-btn[data-v-abac4b4f] {
  padding: 0.375rem;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  min-height: 32px;
}
@media (min-width: 768px) {
  .action-btn[data-v-abac4b4f] {
    padding: 0.5rem;
    min-width: 36px;
    min-height: 36px;
  }
}
.action-btn.view[data-v-abac4b4f] {
  background-color: #dbeafe;
  color: #1e40af;
}
.action-btn.view[data-v-abac4b4f]:hover {
  background-color: #bfdbfe;
}
.action-btn.edit[data-v-abac4b4f] {
  background-color: #fef3c7;
  color: #92400e;
}
.action-btn.edit[data-v-abac4b4f]:hover {
  background-color: #fde68a;
}
.action-btn.delete[data-v-abac4b4f] {
  background-color: #fee2e2;
  color: #991b1b;
}
.action-btn.delete[data-v-abac4b4f]:hover {
  background-color: #fecaca;
}
.pagination[data-v-abac4b4f] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 0;
  flex-wrap: wrap;
  gap: 1rem;
}
@media (max-width: 767px) {
  .pagination[data-v-abac4b4f] {
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
  }
  .pagination-info[data-v-abac4b4f] {
    order: 1;
  }
  .pagination-controls[data-v-abac4b4f] {
    order: 0;
  }
}
.pagination-info[data-v-abac4b4f] {
  color: #6b7280;
  font-size: 0.875rem;
}
.pagination-controls[data-v-abac4b4f] {
  display: flex;
  gap: 0.25rem;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}
@media (min-width: 768px) {
  .pagination-controls[data-v-abac4b4f] {
    gap: 0.5rem;
  }
}
.pagination-btn[data-v-abac4b4f] {
  padding: 0.375rem 0.5rem;
  background-color: white;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  cursor: pointer;
  font-size: 0.75rem;
  display: flex;
  align-items: center;
  gap: 0.125rem;
  min-height: 32px;
}
@media (min-width: 768px) {
  .pagination-btn[data-v-abac4b4f] {
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    gap: 0.25rem;
    min-height: auto;
  }
}
.pagination-btn[data-v-abac4b4f]:hover:not(:disabled) {
  background-color: #f9fafb;
}
.pagination-btn[data-v-abac4b4f]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.page-numbers[data-v-abac4b4f] {
  display: flex;
  gap: 0.125rem;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .page-numbers[data-v-abac4b4f] {
    gap: 0.25rem;
  }
}
.page-btn[data-v-abac4b4f] {
  padding: 0.375rem 0.5rem;
  background-color: white;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  cursor: pointer;
  font-size: 0.75rem;
  min-width: 2rem;
  text-align: center;
  min-height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .page-btn[data-v-abac4b4f] {
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    min-width: 2.5rem;
    min-height: auto;
  }
}
.page-btn[data-v-abac4b4f]:hover {
  background-color: #f9fafb;
}
.page-btn.active[data-v-abac4b4f] {
  background-color: #3b82f6;
  color: white;
  border-color: #3b82f6;
}
.btn[data-v-abac4b4f] {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.btn-primary[data-v-abac4b4f] {
  background-color: #3b82f6;
  color: white;
}
.btn-primary[data-v-abac4b4f]:hover {
  background-color: #2563eb;
}
.btn-primary[data-v-abac4b4f]:disabled {
  background-color: #9ca3af;
  cursor: not-allowed;
}
.btn-outline[data-v-abac4b4f] {
  background-color: transparent;
  color: #374151;
  border: 1px solid #d1d5db;
}
.btn-outline[data-v-abac4b4f]:hover {
  background-color: #f9fafb;
}
.btn-outline.btn-danger[data-v-abac4b4f] {
  color: #dc2626;
  border-color: #dc2626;
}
.btn-outline.btn-danger[data-v-abac4b4f]:hover {
  background-color: #fee2e2;
}
.btn-sm[data-v-abac4b4f] {
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
}
@media (max-width: 767px) {
  .btn[data-v-abac4b4f],
  .btn-sm[data-v-abac4b4f] {
    min-height: 44px;
    touch-action: manipulation;
  }
  .checkbox[data-v-abac4b4f] {
    width: 1.25rem;
    height: 1.25rem;
    min-height: 44px;
    min-width: 44px;
    position: relative;
  }
  .checkbox[data-v-abac4b4f]::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 44px;
    height: 44px;
    transform: translate(-50%, -50%);
  }
  .action-btn[data-v-abac4b4f] {
    min-width: 44px;
    min-height: 44px;
  }
  .tag-item[data-v-abac4b4f] {
    min-height: 44px;
    padding: 0.75rem 1rem;
  }
}
@media (max-width: 767px) {
  .customer-management-interface[data-v-abac4b4f] {
    padding: 0.75rem;
  }
  .tag-management[data-v-abac4b4f] {
    margin-bottom: 1rem;
  }
  .search-filters[data-v-abac4b4f] {
    margin-bottom: 1rem;
  }
  .search-input[data-v-abac4b4f] {
    font-size: 16px;
    padding: 0.875rem 2.5rem 0.875rem 2.5rem;
  }
  .customer-name .name-primary[data-v-abac4b4f] {
    font-size: 0.875rem;
    font-weight: 600;
  }
  .customer-name .name-secondary[data-v-abac4b4f] {
    font-size: 0.75rem;
  }
  .customer-email .email-link[data-v-abac4b4f] {
    font-size: 0.875rem;
  }
  .tag-badge[data-v-abac4b4f] {
    font-size: 0.6875rem;
    padding: 0.1875rem 0.375rem;
  }
  .engagement-badge[data-v-abac4b4f] {
    font-size: 0.6875rem;
    padding: 0.1875rem 0.375rem;
  }
  .engagement-stat[data-v-abac4b4f] {
    font-size: 0.6875rem;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .customer-management-interface[data-v-abac4b4f] {
    padding: 1.5rem;
  }
  .customers-table[data-v-abac4b4f] {
    font-size: 0.875rem;
  }
  .customers-table th[data-v-abac4b4f]:nth-child(4),
  .customers-table td[data-v-abac4b4f]:nth-child(4) {
    display: table-cell;
  }
}
@media (max-width: 767px) {
  .loading-state[data-v-abac4b4f],
  .empty-state[data-v-abac4b4f] {
    padding: 2rem 1rem;
  }
  .empty-state h3[data-v-abac4b4f] {
    font-size: 1.125rem;
  }
  .empty-state p[data-v-abac4b4f] {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .table-wrapper[data-v-abac4b4f] {
    padding-right: 1rem;
    margin-right: -1rem;
  }
  .table-wrapper[data-v-abac4b4f]::after {
    content: "Swipe to see more \2192";
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    opacity: 0.8;
    pointer-events: none;
    z-index: 10;
  }
  .table-wrapper.scrolled[data-v-abac4b4f]::after {
    display: none;
  }
}
.btn[data-v-abac4b4f]:focus,
.action-btn[data-v-abac4b4f]:focus,
.pagination-btn[data-v-abac4b4f]:focus,
.page-btn[data-v-abac4b4f]:focus,
.search-input[data-v-abac4b4f]:focus,
.filter-select[data-v-abac4b4f]:focus {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}
@media (prefers-contrast: high) {
  .customers-table[data-v-abac4b4f] {
    border: 2px solid #000;
  }
  .table-header[data-v-abac4b4f],
  .select-column[data-v-abac4b4f],
  .actions-column[data-v-abac4b4f] {
    border-bottom: 2px solid #000;
  }
  .table-cell[data-v-abac4b4f],
  .select-cell[data-v-abac4b4f],
  .actions-cell[data-v-abac4b4f] {
    border-bottom: 1px solid #000;
  }
}
.table-row[data-v-abac4b4f] {
  transform: translateZ(0);
  backface-visibility: hidden;
  perspective: 1000px;
}
.loading-spinner[data-v-abac4b4f],
.loading-spinner-small[data-v-abac4b4f],
.loading-spinner-xs[data-v-abac4b4f] {
  transform: translateZ(0);
  will-change: transform;
}
.action-btn[data-v-abac4b4f],
.pagination-btn[data-v-abac4b4f],
.page-btn[data-v-abac4b4f] {
  backface-visibility: hidden;
  perspective: 1000px;
}
.customers-table[data-v-abac4b4f] {
  contain: layout style paint;
}
.table-cell[data-v-abac4b4f],
.select-cell[data-v-abac4b4f],
.actions-cell[data-v-abac4b4f] {
  contain: layout paint;
}
.tag-badge[data-v-abac4b4f] {
  contain: layout style paint;
  transform: translateZ(0);
}
@media (prefers-reduced-motion: reduce) {
  [data-v-abac4b4f],
  [data-v-abac4b4f]::before,
  [data-v-abac4b4f]::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  .loading-spinner[data-v-abac4b4f],
  .loading-spinner-small[data-v-abac4b4f],
  .loading-spinner-xs[data-v-abac4b4f] {
    animation-duration: 1s !important;
  }
}
@media (prefers-color-scheme: dark) {
  .customer-management-interface[data-v-abac4b4f] {
    color: #f9fafb;
  }
  .interface-actions[data-v-abac4b4f],
  .tag-management[data-v-abac4b4f],
  .customers-table-container[data-v-abac4b4f] {
    background: #1f2937;
    border-color: #374151;
  }
  .table-header[data-v-abac4b4f],
  .select-column[data-v-abac4b4f],
  .actions-column[data-v-abac4b4f] {
    background-color: #111827;
  }
  .table-row[data-v-abac4b4f]:hover {
    background-color: #374151;
  }
}

/* sfc-style:/rails/app/javascript/components/CustomerCampaignHistory.vue?type=style&index=0 */
.customer-campaign-history[data-v-23b2e08c] {
  font-family:
    system-ui,
    -apple-system,
    sans-serif;
}
.stat[data-v-23b2e08c] {
  padding: 1rem;
}
.badge[data-v-23b2e08c] {
  font-size: 0.75rem;
  padding: 0.25rem 0.5rem;
}
.loading[data-v-23b2e08c] {
  border-color: transparent;
}

/* sfc-style:/rails/app/javascript/components/TipTapEditor.vue?type=style&index=0 */
.tiptap-editor-container[data-v-1ff803df] {
  border: 1px solid #e5e7eb;
  border-radius: 0.5rem;
  overflow: hidden;
}
.editor-toolbar[data-v-1ff803df] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0.75rem;
  background-color: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
}
.toolbar-group[data-v-1ff803df] {
  display: flex;
  gap: 0.25rem;
}
.toolbar-button[data-v-1ff803df] {
  padding: 0.5rem 0.75rem;
  border: 1px solid #d1d5db;
  background-color: white;
  border-radius: 0.375rem;
  cursor: pointer;
  font-size: 0.875rem;
  transition: all 0.2s;
}
.toolbar-button[data-v-1ff803df]:hover {
  background-color: #f3f4f6;
}
.toolbar-button.is-active[data-v-1ff803df] {
  background-color: #3b82f6;
  color: white;
  border-color: #3b82f6;
}
.toolbar-button[data-v-1ff803df]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.variable-button[data-v-1ff803df] {
  background-color: #10b981;
  color: white;
  border-color: #10b981;
}
.formula-button[data-v-1ff803df] {
  background-color: #8b5cf6;
  color: white;
  border-color: #8b5cf6;
}
.validate-button[data-v-1ff803df] {
  background-color: #f59e0b;
  color: white;
  border-color: #f59e0b;
}
.preview-button[data-v-1ff803df] {
  background-color: #6366f1;
  color: white;
  border-color: #6366f1;
}
.editor-wrapper[data-v-1ff803df] {
  min-height: 200px;
}
.editor-content[data-v-1ff803df] {
  padding: 1rem;
}
.validation-results[data-v-1ff803df] {
  padding: 0.75rem;
  border-top: 1px solid #e5e7eb;
  background-color: #f9fafb;
}
.validation-success[data-v-1ff803df] {
  color: #059669;
  font-weight: 500;
}
.validation-errors[data-v-1ff803df] {
  color: #dc2626;
}
.validation-warnings[data-v-1ff803df] {
  color: #d97706;
  margin-top: 0.5rem;
}
.error-header[data-v-1ff803df],
.warning-header[data-v-1ff803df] {
  font-weight: 600;
  margin-bottom: 0.25rem;
}
.error-item[data-v-1ff803df],
.warning-item[data-v-1ff803df] {
  margin-left: 1rem;
  font-size: 0.875rem;
}
.modal-overlay[data-v-1ff803df] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}
.modal-content[data-v-1ff803df] {
  background: white;
  border-radius: 0.5rem;
  max-width: 600px;
  width: 90%;
  max-height: 80vh;
  overflow-y: auto;
}
.formula-modal[data-v-1ff803df] {
  max-width: 800px;
}
.preview-modal[data-v-1ff803df] {
  max-width: 900px;
}
.modal-header[data-v-1ff803df] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
  border-bottom: 1px solid #e5e7eb;
}
.modal-header h3[data-v-1ff803df] {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
}
.modal-close[data-v-1ff803df] {
  background: none;
  border: none;
  font-size: 1.5rem;
  cursor: pointer;
  color: #6b7280;
}
.modal-body[data-v-1ff803df] {
  padding: 1rem;
}
.variable-search[data-v-1ff803df] {
  margin-bottom: 1rem;
}
.search-input[data-v-1ff803df] {
  width: 100%;
  padding: 0.5rem;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
}
.variable-category[data-v-1ff803df] {
  margin-bottom: 1.5rem;
}
.variable-category h4[data-v-1ff803df] {
  margin: 0 0 0.5rem 0;
  font-weight: 600;
  color: #374151;
}
.variable-list[data-v-1ff803df] {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.variable-item[data-v-1ff803df] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0.5rem;
  border: 1px solid #e5e7eb;
  border-radius: 0.375rem;
  background: white;
  cursor: pointer;
  text-align: left;
  transition: all 0.2s;
}
.variable-item[data-v-1ff803df]:hover {
  background-color: #f3f4f6;
  border-color: #3b82f6;
}
.variable-name[data-v-1ff803df] {
  font-family: monospace;
  font-weight: 600;
  color: #3b82f6;
}
.variable-description[data-v-1ff803df] {
  font-size: 0.875rem;
  color: #6b7280;
}
.formula-input-section[data-v-1ff803df] {
  margin-bottom: 1.5rem;
}
.formula-input-section label[data-v-1ff803df] {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
}
.formula-input[data-v-1ff803df] {
  width: 100%;
  padding: 0.5rem;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  font-family: monospace;
  resize: vertical;
}
.formula-functions[data-v-1ff803df] {
  margin-bottom: 1.5rem;
}
.formula-functions h4[data-v-1ff803df] {
  margin: 0 0 0.5rem 0;
  font-weight: 600;
}
.function-list[data-v-1ff803df] {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.function-item[data-v-1ff803df] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0.5rem;
  border: 1px solid #e5e7eb;
  border-radius: 0.375rem;
  background: white;
  cursor: pointer;
  text-align: left;
  transition: all 0.2s;
}
.function-item[data-v-1ff803df]:hover {
  background-color: #f3f4f6;
  border-color: #8b5cf6;
}
.function-name[data-v-1ff803df] {
  font-family: monospace;
  font-weight: 600;
  color: #8b5cf6;
}
.function-description[data-v-1ff803df] {
  font-size: 0.875rem;
  color: #6b7280;
}
.formula-preview[data-v-1ff803df] {
  margin-bottom: 1.5rem;
  padding: 1rem;
  background-color: #f9fafb;
  border-radius: 0.375rem;
}
.formula-preview h4[data-v-1ff803df] {
  margin: 0 0 0.5rem 0;
  font-weight: 600;
}
.test-button[data-v-1ff803df] {
  padding: 0.5rem 1rem;
  background-color: #3b82f6;
  color: white;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
  margin-bottom: 0.5rem;
}
.test-button[data-v-1ff803df]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.test-result[data-v-1ff803df] {
  margin-top: 0.5rem;
}
.test-success[data-v-1ff803df] {
  color: #059669;
  font-weight: 500;
}
.test-error[data-v-1ff803df] {
  color: #dc2626;
  font-weight: 500;
}
.test-output[data-v-1ff803df] {
  margin-top: 0.25rem;
  font-family: monospace;
  background-color: #f3f4f6;
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
}
.modal-actions[data-v-1ff803df] {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}
.insert-button[data-v-1ff803df] {
  padding: 0.5rem 1rem;
  background-color: #10b981;
  color: white;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
}
.insert-button[data-v-1ff803df]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cancel-button[data-v-1ff803df] {
  padding: 0.5rem 1rem;
  background-color: #6b7280;
  color: white;
  border: none;
  border-radius: 0.375rem;
  cursor: pointer;
}
.preview-content[data-v-1ff803df] {
  padding: 1rem;
  border: 1px solid #e5e7eb;
  border-radius: 0.375rem;
  background-color: white;
  min-height: 200px;
}

/* sfc-style:/rails/app/javascript/components/TemplateCompatibilityWarning.vue?type=style&index=0 */
.compatibility-warning-container[data-v-7cda3d62] {
  font-family:
    "Inter",
    -apple-system,
    BlinkMacSystemFont,
    sans-serif;
}
.compatibility-alert[data-v-7cda3d62] {
  transition: all 0.2s ease-in-out;
}
.missing-variables-details[data-v-7cda3d62] {
  animation: slideDown-7cda3d62 0.3s ease-out;
}
@keyframes slideDown-7cda3d62 {
  from {
    opacity: 0;
    max-height: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    max-height: 500px;
    transform: translateY(0);
  }
}
.warnings-list[data-v-7cda3d62],
.recommendations[data-v-7cda3d62] {
  animation: fadeIn-7cda3d62 0.3s ease-out;
}
@keyframes fadeIn-7cda3d62 {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* sfc-style:/rails/app/javascript/components/ExistingCampaignSelectorModal.vue?type=style&index=0 */

/* sfc-style:/rails/app/javascript/components/ProcessingStatusApp.vue?type=style&index=0 */
.processing-status-app[data-v-f5dbba16] {
  max-width: 1000px;
  margin: 0 auto;
  padding: 2rem;
}
@media (max-width: 768px) {
  .processing-status-app[data-v-f5dbba16] {
    padding: 1rem;
  }
}

/* sfc-style:/rails/app/javascript/components/ConversionReportApp.vue?type=style&index=0 */
.conversion-report-app[data-v-27b861cc] {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem;
}
.conversion-report-interface[data-v-27b861cc] {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.summary-section[data-v-27b861cc] {
  background: white;
  border-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.summary-stats-grid[data-v-27b861cc] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1.5rem;
}
.summary-card[data-v-27b861cc] {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.5rem;
  border-radius: 0.75rem;
  border: 1px solid transparent;
}
.summary-card.success[data-v-27b861cc] {
  background-color: #f0fdf4;
  border-color: #bbf7d0;
}
.summary-card.warning[data-v-27b861cc] {
  background-color: #fffdf7;
  border-color: #fde047;
}
.summary-card.error[data-v-27b861cc] {
  background-color: #fef2f2;
  border-color: #fecaca;
}
.summary-card.info[data-v-27b861cc] {
  background-color: #eff6ff;
  border-color: #bfdbfe;
}
.card-icon[data-v-27b861cc] {
  font-size: 2rem;
}
.card-number[data-v-27b861cc] {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}
.summary-card.success .card-number[data-v-27b861cc] {
  color: #166534;
}
.summary-card.warning .card-number[data-v-27b861cc] {
  color: #92400e;
}
.summary-card.error .card-number[data-v-27b861cc] {
  color: #991b1b;
}
.summary-card.info .card-number[data-v-27b861cc] {
  color: #1e40af;
}
.card-label[data-v-27b861cc] {
  font-size: 1rem;
  font-weight: 600;
  color: #374151;
  margin-top: 0.25rem;
}
.card-percentage[data-v-27b861cc] {
  font-size: 0.875rem;
  color: #6b7280;
  margin-top: 0.125rem;
}
.field-analysis-section[data-v-27b861cc] {
  background: white;
  border-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.field-cards-grid[data-v-27b861cc] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1.5rem;
}
.field-card[data-v-27b861cc] {
  border: 2px solid #e5e7eb;
  border-radius: 0.75rem;
  padding: 1.5rem;
  transition: all 0.3s ease;
}
.field-card-success[data-v-27b861cc] {
  border-color: #22c55e;
  background-color: #f0fdf4;
}
.field-card-warning[data-v-27b861cc] {
  border-color: #f59e0b;
  background-color: #fffdf7;
}
.field-card-error[data-v-27b861cc] {
  border-color: #ef4444;
  background-color: #fef2f2;
}
.field-header[data-v-27b861cc] {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 1rem;
}
.field-name[data-v-27b861cc] {
  font-size: 1.125rem;
  font-weight: 600;
  color: #374151;
  margin-bottom: 0.25rem;
}
.field-type[data-v-27b861cc] {
  font-size: 0.875rem;
  color: #6b7280;
  background-color: #f3f4f6;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
}
.field-success-rate[data-v-27b861cc] {
  font-size: 1.25rem;
  font-weight: 700;
}
.success-rate-good[data-v-27b861cc] {
  color: #166534;
}
.success-rate-fair[data-v-27b861cc] {
  color: #92400e;
}
.success-rate-poor[data-v-27b861cc] {
  color: #991b1b;
}
.field-stats[data-v-27b861cc] {
  display: flex;
  gap: 1rem;
  margin-bottom: 1rem;
}
.field-stat[data-v-27b861cc] {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
}
.stat-number[data-v-27b861cc] {
  font-size: 1.25rem;
  font-weight: 700;
}
.field-stat.success .stat-number[data-v-27b861cc] {
  color: #166534;
}
.field-stat.warning .stat-number[data-v-27b861cc] {
  color: #92400e;
}
.field-stat.error .stat-number[data-v-27b861cc] {
  color: #991b1b;
}
.stat-label[data-v-27b861cc] {
  font-size: 0.75rem;
  color: #6b7280;
}
.field-issues[data-v-27b861cc] {
  margin-bottom: 1rem;
}
.issues-title[data-v-27b861cc] {
  font-size: 0.875rem;
  font-weight: 600;
  color: #374151;
  margin-bottom: 0.5rem;
}
.issues-list[data-v-27b861cc] {
  list-style: none;
  padding: 0;
  margin: 0;
}
.issue-item[data-v-27b861cc] {
  font-size: 0.875rem;
  color: #6b7280;
  margin-bottom: 0.25rem;
  padding-left: 1rem;
  position: relative;
}
.issue-item[data-v-27b861cc]::before {
  content: "\2022";
  color: #ef4444;
  position: absolute;
  left: 0;
}
.field-default[data-v-27b861cc] {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.default-label[data-v-27b861cc] {
  font-size: 0.875rem;
  color: #6b7280;
}
.default-value[data-v-27b861cc] {
  font-size: 0.875rem;
  font-weight: 600;
  color: #374151;
  background-color: #f3f4f6;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
  font-family: "Courier New", monospace;
}
.sample-conversions-section[data-v-27b861cc] {
  background: white;
  border-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.sample-table-container[data-v-27b861cc] {
  overflow-x: auto;
  border-radius: 0.5rem;
  border: 1px solid #e5e7eb;
}
.sample-table[data-v-27b861cc] {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.875rem;
}
.sample-table th[data-v-27b861cc],
.sample-table td[data-v-27b861cc] {
  padding: 0.75rem;
  text-align: left;
  border-bottom: 1px solid #e5e7eb;
}
.sample-table th[data-v-27b861cc] {
  background-color: #f9fafb;
  font-weight: 600;
  color: #374151;
}
.row-number[data-v-27b861cc] {
  font-weight: 600;
  color: #6b7280;
  width: 60px;
}
.conversion-cell[data-v-27b861cc] {
  min-width: 150px;
}
.conversion-pair[data-v-27b861cc] {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.25rem;
}
.original-value[data-v-27b861cc],
.converted-value[data-v-27b861cc] {
  font-family: "Courier New", monospace;
  padding: 0.25rem 0.375rem;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  max-width: 80px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.original-value[data-v-27b861cc] {
  background-color: #f3f4f6;
  color: #374151;
}
.converted-value[data-v-27b861cc] {
  font-weight: 500;
}
.conversion-success[data-v-27b861cc] {
  background-color: #dcfce7;
  color: #166534;
}
.conversion-warning[data-v-27b861cc] {
  background-color: #fef3c7;
  color: #92400e;
}
.conversion-error[data-v-27b861cc] {
  background-color: #fee2e2;
  color: #991b1b;
}
.conversion-none[data-v-27b861cc] {
  background-color: #f3f4f6;
  color: #6b7280;
}
.conversion-arrow[data-v-27b861cc] {
  color: #6b7280;
  font-weight: bold;
}
.conversion-status[data-v-27b861cc] {
  font-size: 0.625rem;
  font-weight: 600;
  padding: 0.125rem 0.375rem;
  border-radius: 0.25rem;
  text-transform: uppercase;
  letter-spacing: 0.025em;
}
.status-success[data-v-27b861cc] {
  background-color: #dcfce7;
  color: #166534;
}
.status-warning[data-v-27b861cc] {
  background-color: #fef3c7;
  color: #92400e;
}
.status-error[data-v-27b861cc] {
  background-color: #fee2e2;
  color: #991b1b;
}
.table-note[data-v-27b861cc] {
  margin-top: 1rem;
  text-align: center;
}
.actions-section[data-v-27b861cc] {
  background: white;
  border-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.action-buttons[data-v-27b861cc] {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: 1.5rem;
}
.download-info[data-v-27b861cc] {
  background-color: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 0.5rem;
  padding: 1rem;
}
.btn[data-v-27b861cc] {
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 140px;
}
.btn[data-v-27b861cc]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.btn-primary[data-v-27b861cc] {
  background-color: #3b82f6;
  color: white;
}
.btn-primary[data-v-27b861cc]:hover:not(:disabled) {
  background-color: #2563eb;
}
.btn-outline[data-v-27b861cc] {
  background-color: white;
  color: #3b82f6;
  border: 2px solid #3b82f6;
}
.btn-outline[data-v-27b861cc]:hover {
  background-color: #3b82f6;
  color: white;
}
.alert[data-v-27b861cc] {
  padding: 1rem;
  border-radius: 0.5rem;
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.alert-error[data-v-27b861cc] {
  background-color: #fef2f2;
  border: 1px solid #fecaca;
  color: #991b1b;
}
.loading[data-v-27b861cc] {
  display: inline-block;
}
.loading-spinner[data-v-27b861cc] {
  width: 2rem;
  height: 2rem;
  border: 2px solid #e5e7eb;
  border-top: 2px solid #3b82f6;
  border-radius: 50%;
  animation: spin-27b861cc 1s linear infinite;
}
.loading-lg[data-v-27b861cc] {
  width: 3rem;
  height: 3rem;
}
@keyframes spin-27b861cc {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@media (max-width: 768px) {
  .conversion-report-app[data-v-27b861cc] {
    padding: 1rem;
  }
  .summary-stats-grid[data-v-27b861cc],
  .field-cards-grid[data-v-27b861cc] {
    grid-template-columns: 1fr;
  }
  .field-header[data-v-27b861cc] {
    flex-direction: column;
    gap: 0.5rem;
  }
  .action-buttons[data-v-27b861cc] {
    justify-content: center;
  }
  .conversion-pair[data-v-27b861cc] {
    flex-direction: column;
    gap: 0.25rem;
  }
  .original-value[data-v-27b861cc],
  .converted-value[data-v-27b861cc] {
    max-width: none;
    width: 100%;
  }
}

/* sfc-style:/rails/app/javascript/components/settings/DataEnhancementsSettings.vue?type=style&index=0 */
.data-enhancements-settings[data-v-68d21079] {
  @apply w-full;
}

/* sfc-style:/rails/app/javascript/components/settings/DataEnhancementDetail.vue?type=style&index=0 */
.data-enhancement-detail[data-v-db99ae6a] {
  @apply w-full;
}

/* sfc-style:/rails/app/javascript/components/settings/FormulaLibrary.vue?type=style&index=0 */
.formula-library[data-v-6598f9f0] {
  min-height: 400px;
}

/* sfc-style:/rails/app/javascript/components/campaigns/BaseModal.vue?type=style&index=0 */
.modal-box[data-v-d0aa0393] *:focus {
  @apply ring-2 ring-primary ring-opacity-50 outline-none;
}
.modal[data-v-d0aa0393] {
  transition: opacity 0.2s ease-in-out;
}
.modal-box[data-v-d0aa0393] {
  transition: transform 0.2s ease-in-out;
}
.modal[data-v-d0aa0393],
dialog.modal[data-v-d0aa0393] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: fixed !important;
  inset: 0 !important;
}
.modal.modal-middle[data-v-d0aa0393],
.modal[data-v-d0aa0393]:not(.modal-top):not(.modal-bottom),
dialog.modal.modal-middle[data-v-d0aa0393],
dialog.modal[data-v-d0aa0393]:not(.modal-top):not(.modal-bottom) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.modal .modal-box[data-v-d0aa0393],
dialog.modal .modal-box[data-v-d0aa0393] {
  margin: auto !important;
  position: relative !important;
}
.modal.modal-middle .modal-box[data-v-d0aa0393],
.modal:not(.modal-top):not(.modal-bottom) .modal-box[data-v-d0aa0393],
dialog.modal.modal-middle .modal-box[data-v-d0aa0393],
dialog.modal:not(.modal-top):not(.modal-bottom) .modal-box[data-v-d0aa0393] {
  margin-left: auto !important;
  margin-right: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
}
.modal-backdrop[data-v-d0aa0393] {
  position: fixed !important;
  inset: 0 !important;
  z-index: -1 !important;
}
.btn[loading][data-v-d0aa0393] {
  @apply opacity-75 cursor-not-allowed;
}
.modal-content[data-v-d0aa0393] {
  scrollbar-width: thin;
  scrollbar-color: theme("colors.primary") theme("colors.base-200");
}
.modal-content[data-v-d0aa0393]::-webkit-scrollbar {
  width: 6px;
}
.modal-content[data-v-d0aa0393]::-webkit-scrollbar-track {
  @apply bg-base-200 rounded;
}
.modal-content[data-v-d0aa0393]::-webkit-scrollbar-thumb {
  @apply bg-primary rounded;
}
.modal-content[data-v-d0aa0393]::-webkit-scrollbar-thumb:hover {
  @apply bg-primary-focus;
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignDuplicateModal.vue?type=style&index=0 */
.card[data-v-17385622] {
  @apply transition-all duration-200;
}
.form-control .label[data-v-17385622] {
  @apply mb-2;
}
.radio[data-v-17385622]:checked,
.checkbox[data-v-17385622]:checked {
  @apply bg-primary border-primary;
}
.badge[data-v-17385622] {
  @apply transition-all duration-200;
}
.modal-box[data-v-17385622] {
  max-height: 90vh;
  overflow-y: auto;
}
.bg-base-50[data-v-17385622] {
  background-color: oklch(var(--b2));
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignTagsModal.vue?type=style&index=0 */
.badge[data-v-1a1f9ae1] {
  @apply transition-all duration-200;
}
.badge[data-v-1a1f9ae1]:hover {
  @apply scale-105;
}
.modal-box[data-v-1a1f9ae1] {
  max-height: 90vh;
  overflow-y: auto;
}
.bg-base-50[data-v-1a1f9ae1] {
  background-color: oklch(var(--b2));
}
input[type=color][data-v-1a1f9ae1] {
  padding: 2px;
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignComparisonModal.vue?type=style&index=0 */
.table[data-v-6f343b92] {
  @apply text-sm;
}
.badge[data-v-6f343b92] {
  @apply transition-all duration-200;
}
.alert[data-v-6f343b92] {
  @apply transition-all duration-200;
}
.modal-box[data-v-6f343b92] {
  max-height: 90vh;
  overflow-y: auto;
}
.h-2 > div[data-v-6f343b92] {
  @apply transition-all duration-500 ease-out;
}
.bg-success\/10[data-v-6f343b92] {
  background-color: oklch(from oklch(var(--su)) l c h / 0.1);
}
.bg-warning\/10[data-v-6f343b92] {
  background-color: oklch(from oklch(var(--wa)) l c h / 0.1);
}
.bg-info\/10[data-v-6f343b92] {
  background-color: oklch(from oklch(var(--in)) l c h / 0.1);
}
.bg-error\/10[data-v-6f343b92] {
  background-color: oklch(from oklch(var(--er)) l c h / 0.1);
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignArchiveModal.vue?type=style&index=0 */
.modal-box[data-v-0e149a08] {
  max-height: 90vh;
  overflow-y: auto;
}
.stat[data-v-0e149a08] {
  @apply bg-base-100 rounded-lg p-4;
}
.stat-value[data-v-0e149a08] {
  @apply font-bold;
}
.stat-title[data-v-0e149a08] {
  @apply text-base-content/70 text-xs font-medium uppercase tracking-wide;
}
.stat-desc[data-v-0e149a08] {
  @apply text-base-content/60 text-xs;
}
.bg-base-50[data-v-0e149a08] {
  background-color: oklch(var(--b2));
}
.checkbox[data-v-0e149a08]:checked {
  @apply bg-primary border-primary;
}
.badge[data-v-0e149a08] {
  @apply transition-all duration-200;
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignSchedulingModal.vue?type=style&index=0 */
.modal-box[data-v-48d2c3a5] {
  max-height: 90vh;
  overflow-y: auto;
}
.radio[data-v-48d2c3a5]:checked {
  @apply bg-primary border-primary;
}
.checkbox[data-v-48d2c3a5]:checked {
  @apply bg-primary border-primary;
}
.card[data-v-48d2c3a5]:hover {
  @apply border-primary/50;
}
.badge[data-v-48d2c3a5] {
  @apply transition-all duration-200;
}
.alert[data-v-48d2c3a5] {
  @apply transition-all duration-200;
}

/* sfc-style:/rails/app/javascript/apps/CampaignListApp.vue?type=style&index=0 */
.campaign-list-app[data-v-16d39fd1] {
  @apply p-4 max-w-7xl mx-auto;
}
@media (min-width: 768px) {
  .campaign-list-app[data-v-16d39fd1] {
    @apply p-6;
  }
}
.campaign-header[data-v-16d39fd1] {
  @apply flex items-start justify-between mb-4 gap-4;
}
@media (min-width: 768px) {
  .campaign-header[data-v-16d39fd1] {
    @apply items-center mb-6;
  }
}
.campaign-title[data-v-16d39fd1] {
  @apply text-2xl font-bold text-base-content;
}
@media (min-width: 768px) {
  .campaign-title[data-v-16d39fd1] {
    @apply text-3xl;
  }
}
.campaign-subtitle[data-v-16d39fd1] {
  @apply text-base-content/70 mt-1 text-sm;
}
@media (min-width: 768px) {
  .campaign-subtitle[data-v-16d39fd1] {
    @apply text-base;
  }
}
.campaign-header-actions[data-v-16d39fd1] {
  @apply flex items-center gap-2 flex-wrap;
}
@media (min-width: 640px) {
  .campaign-header-actions[data-v-16d39fd1] {
    @apply gap-3;
  }
}
.bulk-actions-container[data-v-16d39fd1] {
  @apply flex items-center gap-1;
}
@media (min-width: 640px) {
  .bulk-actions-container[data-v-16d39fd1] {
    @apply gap-2;
  }
}
.bulk-selection-text[data-v-16d39fd1] {
  @apply text-xs text-base-content/70;
}
@media (min-width: 640px) {
  .bulk-selection-text[data-v-16d39fd1] {
    @apply text-sm;
  }
}
.new-campaign-btn[data-v-16d39fd1] {
  @apply btn-sm;
}
@media (min-width: 640px) {
  .new-campaign-btn[data-v-16d39fd1] {
    @apply btn-md;
  }
}
.filters-container[data-v-16d39fd1] {
  @apply bg-base-100 border border-base-200 rounded-lg mb-4 p-3;
}
@media (min-width: 768px) {
  .filters-container[data-v-16d39fd1] {
    @apply mb-6 p-4;
  }
}
.filters-header[data-v-16d39fd1] {
  @apply flex flex-col gap-3;
}
@media (min-width: 768px) {
  .filters-header[data-v-16d39fd1] {
    @apply flex-row items-center gap-4;
  }
}
.search-wrapper[data-v-16d39fd1] {
  @apply flex-1 max-w-md;
}
.filter-buttons[data-v-16d39fd1] {
  @apply flex flex-wrap items-center gap-1;
}
@media (min-width: 640px) {
  .filter-buttons[data-v-16d39fd1] {
    @apply gap-2;
  }
}
.active-filters[data-v-16d39fd1] {
  @apply flex flex-wrap items-center gap-2 mt-3 pt-3 border-t border-base-200;
}
.filter-tags[data-v-16d39fd1] {
  @apply flex flex-wrap gap-1;
}
.filter-tags .badge[data-v-16d39fd1] {
  @apply flex items-center;
}
.filter-tags .btn-circle[data-v-16d39fd1] {
  @apply ml-1 w-4 h-4 min-h-0;
}
.dropdown .badge-xs[data-v-16d39fd1] {
  @apply ml-1;
}
.dropdown-content[data-v-16d39fd1] {
  @apply mt-2;
}
.join[data-v-16d39fd1] {
  @apply w-full;
}
.join-item[data-v-16d39fd1] {
  @apply focus:z-10;
}
.sort-icon[data-v-16d39fd1] {
  @apply transition-transform duration-200;
}
.campaign-card[data-v-16d39fd1] {
  @apply bg-base-100 border border-base-200 rounded-lg p-4 transition-all duration-200 hover:shadow-md;
}
.campaign-card-header[data-v-16d39fd1] {
  @apply flex items-start gap-3 mb-3;
}
.campaign-card-checkbox[data-v-16d39fd1] {
  @apply flex-shrink-0 pt-1;
}
.campaign-card-title[data-v-16d39fd1] {
  @apply flex-1 min-w-0;
}
.campaign-card-actions[data-v-16d39fd1] {
  @apply flex-shrink-0;
}
.campaign-card-content[data-v-16d39fd1] {
  @apply space-y-2 text-sm;
}
.campaign-card-row[data-v-16d39fd1] {
  @apply flex items-start gap-2;
}
.campaign-card-label[data-v-16d39fd1] {
  @apply font-medium text-base-content/80 flex-shrink-0 w-20;
}
@media (min-width: 375px) {
  .campaign-card-label[data-v-16d39fd1] {
    @apply w-24;
  }
}
.btn[data-v-16d39fd1],
.input[data-v-16d39fd1],
.select[data-v-16d39fd1] {
  @apply transition-all duration-200;
}
.progress[data-v-16d39fd1] {
  @apply transition-all duration-300;
}
.checkbox[data-v-16d39fd1]:checked {
  @apply bg-primary border-primary;
}
.badge[data-v-16d39fd1] {
  @apply transition-all duration-200;
}
.dropdown-content[data-v-16d39fd1] {
  @apply transition-all duration-200 transform shadow-xl;
}
.dropdown:focus-within .dropdown-content[data-v-16d39fd1] {
  @apply scale-100 opacity-100;
}
.table tbody tr[data-v-16d39fd1] {
  @apply transition-colors duration-200;
}
.label-text-sm[data-v-16d39fd1] {
  @apply text-xs text-base-content/70;
}
@media (hover: none) and (pointer: coarse) {
  .btn[data-v-16d39fd1] {
    @apply min-h-[44px];
  }
  .checkbox[data-v-16d39fd1] {
    @apply min-w-[20px] min-h-[20px];
  }
  .dropdown-content[data-v-16d39fd1] {
    @apply text-base;
  }
  .campaign-card[data-v-16d39fd1] {
    @apply p-5;
  }
}
@media (prefers-reduced-motion: reduce) {
  .transition-all[data-v-16d39fd1],
  .transition-colors[data-v-16d39fd1],
  .transition-transform[data-v-16d39fd1] {
    @apply transition-none;
  }
  .sort-icon[data-v-16d39fd1] {
    @apply transition-none;
  }
}
@media (prefers-contrast: high) {
  .campaign-card[data-v-16d39fd1] {
    @apply border-2 border-base-content/20;
  }
  .badge[data-v-16d39fd1] {
    @apply border-2;
  }
}
.btn[data-v-16d39fd1]:focus-visible,
.input[data-v-16d39fd1]:focus-visible,
.select[data-v-16d39fd1]:focus-visible,
.checkbox[data-v-16d39fd1]:focus-visible {
  @apply ring-2 ring-primary ring-offset-2 ring-offset-base-100;
}
.btn[data-v-16d39fd1]:disabled {
  @apply opacity-50 cursor-not-allowed;
}
.mobile-hidden[data-v-16d39fd1] {
  @apply hidden;
}
@media (min-width: 768px) {
  .mobile-hidden[data-v-16d39fd1] {
    @apply block;
  }
}
.mobile-only[data-v-16d39fd1] {
  @apply block;
}
@media (min-width: 768px) {
  .mobile-only[data-v-16d39fd1] {
    @apply hidden;
  }
}

/* sfc-style:/rails/app/javascript/components/ErrorFeedback.vue?type=style&index=0 */
.error-feedback[data-v-25e83b7f] {
  width: 100%;
}
.error-field .alert[data-v-25e83b7f] {
  border-radius: 0.375rem;
  font-size: 0.875rem;
}
.error-banner[data-v-25e83b7f] {
  margin-bottom: 1rem;
}
.error-banner .alert[data-v-25e83b7f] {
  border-radius: 0.5rem;
  padding: 1rem;
}
.error-toast .toast[data-v-25e83b7f] {
  z-index: 1000;
}
.error-inline[data-v-25e83b7f] {
  margin: 0.5rem 0;
}
.modal-box[data-v-25e83b7f] {
  max-width: 32rem;
}
.collapse-content pre[data-v-25e83b7f] {
  background: #f3f4f6;
  padding: 0.75rem;
  border-radius: 0.375rem;
  border: 1px solid #e5e7eb;
  color: #374151;
  max-height: 200px;
  overflow-y: auto;
}
@media (prefers-color-scheme: dark) {
  .collapse-content pre[data-v-25e83b7f] {
    background: #374151;
    border-color: #4b5563;
    color: #d1d5db;
  }
}
@media (max-width: 640px) {
  .error-banner .alert[data-v-25e83b7f] {
    padding: 0.75rem;
  }
  .error-banner .alert .flex[data-v-25e83b7f] {
    flex-direction: column;
    align-items: flex-start;
  }
  .error-banner .alert .flex-shrink-0[data-v-25e83b7f] {
    margin-top: 1rem;
    margin-left: 0;
    width: 100%;
  }
  .modal-box[data-v-25e83b7f] {
    max-width: calc(100vw - 2rem);
  }
}
@keyframes slide-in-right-25e83b7f {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
.error-toast .alert[data-v-25e83b7f] {
  animation: slide-in-right-25e83b7f 0.3s ease-out;
}
.btn[data-v-25e83b7f]:focus {
  outline: 2px solid;
  outline-offset: 2px;
}
.link[data-v-25e83b7f]:focus {
  outline: 2px solid;
  outline-offset: 2px;
  outline-color: currentColor;
}

/* sfc-style:/rails/app/javascript/apps/CampaignAnalyticsApp.vue?type=style&index=0 */
.campaign-analytics-app[data-v-027dc33c] {
  @apply p-6 max-w-7xl mx-auto;
}
.stat[data-v-027dc33c] {
  @apply p-4;
}
.table th[data-v-027dc33c] {
  @apply bg-base-200;
}
.alert[data-v-027dc33c] {
  @apply mb-4;
}
.alert.alert-success[data-v-027dc33c] {
  @apply alert-success;
}
.alert.alert-warning[data-v-027dc33c] {
  @apply alert-warning;
}
.alert.alert-error[data-v-027dc33c] {
  @apply alert-error;
}
.modal-box[data-v-027dc33c] {
  @apply max-h-[90vh] overflow-y-auto;
}
.radial-progress[data-v-027dc33c] {
  @apply w-12 h-12;
}

/* sfc-style:/rails/app/javascript/components/campaigns/BasicInfoStep.vue?type=style&index=0 */
.basic-info-step[data-v-8a549c8c] {
  position: relative;
}
.basic-info-step .absolute[data-v-8a549c8c] {
  min-width: 100%;
  z-index: 50;
}
.label-text-alt[data-v-8a549c8c] {
  font-size: 0.75rem;
}
.form-control + .form-control[data-v-8a549c8c] {
  margin-top: 0;
}
.radio[data-v-8a549c8c] {
  flex-shrink: 0;
}
.alert ul[data-v-8a549c8c] {
  margin-top: 0.5rem;
}
.font-mono[data-v-8a549c8c] {
  font-family:
    "Monaco",
    "Menlo",
    "Ubuntu Mono",
    monospace;
}

/* sfc-style:/rails/app/javascript/components/campaigns/AddProductsToExistingCampaignModal.vue?type=style&index=0 */
.upload-option[data-v-7b24e894] {
  @apply border rounded-lg p-4 cursor-pointer transition-all;
}
.upload-option[data-v-7b24e894]:hover {
  @apply bg-base-50 border-primary/30;
}
.upload-option.selected[data-v-7b24e894] {
  @apply bg-primary/5 border-primary;
}
.product-item[data-v-7b24e894] {
  @apply cursor-pointer;
}
.product-item[data-v-7b24e894]:hover {
  @apply bg-base-100;
}
.product-list[data-v-7b24e894] {
  @apply bg-base-50;
}
.selected-products-preview[data-v-7b24e894] {
  @apply border-t pt-3;
}
.loading-spinner[data-v-7b24e894] {
  @apply animate-spin;
}
@media (max-width: 768px) {
  .modal-box[data-v-7b24e894] {
    @apply w-full max-w-none m-4;
  }
  .flex.items-center.justify-between[data-v-7b24e894] {
    @apply flex-col items-start gap-2;
  }
  .btn-group[data-v-7b24e894] {
    @apply flex-col w-full;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/ConfirmRemoveUploadModal.vue?type=style&index=0 */
.modal[data-v-1cb8dd17] {
  align-items: center;
  justify-content: center;
}
.modal-box[data-v-1cb8dd17] {
  position: relative;
  margin: auto;
}
.modal-action[data-v-1cb8dd17] {
  @apply justify-between;
}
.variable-impact-tags[data-v-1cb8dd17] {
  @apply flex flex-wrap gap-1;
}
.variable-tag[data-v-1cb8dd17] {
  @apply text-xs px-2 py-1 bg-info/20 text-info rounded;
}
@media (max-width: 768px) {
  .modal-box[data-v-1cb8dd17] {
    @apply w-11/12 max-w-none;
  }
  .alert[data-v-1cb8dd17] {
    @apply text-sm;
  }
  .modal-action[data-v-1cb8dd17] {
    @apply flex-col gap-2;
  }
  .btn[data-v-1cb8dd17] {
    @apply w-full;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/CompatibilityWarningModal.vue?type=style&index=0 */
.variable-list[data-v-208c5583] {
  @apply space-y-2;
}
.variable-item[data-v-208c5583] {
  @apply flex items-center justify-between p-2 bg-base-100 rounded border;
}
.variable-status[data-v-208c5583] {
  @apply flex items-center gap-2;
}
.preview-content[data-v-208c5583] {
  @apply whitespace-pre-wrap font-mono text-sm bg-base-100 p-3 rounded border;
}
.missing-highlight[data-v-208c5583] {
  @apply bg-warning/30 px-1 rounded;
}
.action-options[data-v-208c5583] {
  @apply space-y-3;
}
.action-option[data-v-208c5583] {
  @apply bg-base-100 border rounded-lg p-4 cursor-pointer;
}
.action-option[data-v-208c5583]:hover {
  @apply bg-base-50;
}
.action-option.selected[data-v-208c5583] {
  @apply border-primary bg-primary/5;
}
@media (max-width: 768px) {
  .modal-box[data-v-208c5583] {
    @apply w-full max-w-none m-2;
  }
  .grid[data-v-208c5583] {
    @apply grid-cols-1;
  }
  .flex.items-center.justify-between[data-v-208c5583] {
    @apply flex-col items-start gap-2;
  }
  .modal-action[data-v-208c5583] {
    @apply flex-col gap-2;
  }
  .btn[data-v-208c5583] {
    @apply w-full;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/ViewAllProductsModal.vue?type=style&index=0 */
.products-list[data-v-b60e3328] {
  scrollbar-width: thin;
  scrollbar-color: hsl(var(--bc) / 0.2) transparent;
}
.products-list[data-v-b60e3328]::-webkit-scrollbar {
  width: 8px;
}
.products-list[data-v-b60e3328]::-webkit-scrollbar-track {
  background: transparent;
}
.products-list[data-v-b60e3328]::-webkit-scrollbar-thumb {
  background-color: hsl(var(--bc) / 0.2);
  border-radius: 4px;
}
.products-list[data-v-b60e3328]::-webkit-scrollbar-thumb:hover {
  background-color: hsl(var(--bc) / 0.3);
}
.product-item[data-v-b60e3328] {
  transition: all 0.2s ease;
}
@media (max-width: 768px) {
  .modal-box[data-v-b60e3328] {
    max-width: 95vw;
  }
  .product-item[data-v-b60e3328] {
    @apply p-2;
  }
  .flex.items-center.justify-between[data-v-b60e3328] {
    @apply flex-col items-start gap-2;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/MultiUploadProductManagement.vue?type=style&index=0 */
.multi-upload-product-management[data-v-69147dfb] {
  @apply space-y-6;
}
.upload-group[data-v-69147dfb] {
  transition: all 0.2s ease;
}
.upload-group[data-v-69147dfb]:hover {
  @apply bg-base-300/50;
}
.compatibility-status[data-v-69147dfb] {
  @apply flex items-center gap-2;
}
.missing-variables[data-v-69147dfb] {
  @apply flex flex-wrap gap-1;
}
.missing-variable-tag[data-v-69147dfb] {
  @apply text-xs px-2 py-1 bg-warning/20 text-warning rounded;
}
.recent-additions[data-v-69147dfb] {
  @apply border-t pt-4 mt-4;
}
.loading-spinner[data-v-69147dfb] {
  @apply animate-spin;
}
@media (max-width: 768px) {
  .upload-group[data-v-69147dfb] {
    @apply p-3;
  }
  .flex.items-center.justify-between[data-v-69147dfb] {
    @apply flex-col items-start gap-2;
  }
  .dropdown[data-v-69147dfb] {
    @apply self-end;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/MultiUploadCompatibilityModal.vue?type=style&index=0 */
.uploads-analysis[data-v-24080dae] {
  @apply space-y-4;
}
.upload-analysis[data-v-24080dae] {
  @apply transition-colors;
}
.upload-analysis[data-v-24080dae]:hover {
  @apply bg-base-50;
}
.compatibility-details[data-v-24080dae] {
  @apply space-y-4;
}
.variable-list[data-v-24080dae] {
  @apply flex flex-wrap gap-1;
}
.variable-tag[data-v-24080dae] {
  @apply text-xs px-2 py-1 rounded font-mono;
}
.impact-analysis[data-v-24080dae] {
  @apply border border-base-300;
}
.recommendations[data-v-24080dae] {
  @apply border border-primary/20 rounded-lg;
}
.formula-examples[data-v-24080dae] {
  @apply border border-info/20 rounded-lg;
}
.example[data-v-24080dae] {
  @apply border-b border-base-300 pb-2 last:border-b-0 last:pb-0;
}
@media (max-width: 768px) {
  .modal-box[data-v-24080dae] {
    @apply w-full max-w-none m-2;
  }
  .stats-horizontal[data-v-24080dae] {
    @apply stats-vertical;
  }
  .upload-analysis[data-v-24080dae] {
    @apply p-4;
  }
  .flex.items-center.justify-between[data-v-24080dae] {
    @apply flex-col items-start gap-2;
  }
  .variable-list[data-v-24080dae] {
    @apply gap-0.5;
  }
  .variable-tag[data-v-24080dae] {
    @apply text-xs px-1.5 py-0.5;
  }
  .example code[data-v-24080dae] {
    @apply text-xs break-all;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/ProductManagementStep.vue?type=style&index=0 */
.product-management-step[data-v-761f1729] {
  @apply max-w-6xl mx-auto;
}
.step-header[data-v-761f1729] {
  @apply text-center;
}
.campaign-summary[data-v-761f1729] {
  @apply mb-8;
}
.compatibility-warning[data-v-761f1729] {
  @apply border border-warning/20 rounded-lg;
}
.step-completion[data-v-761f1729] {
  @apply transition-colors;
}
.empty-state[data-v-761f1729] {
  @apply border-2 border-dashed border-base-300 rounded-lg;
}
.validation-errors[data-v-761f1729] {
  @apply border border-error/20 rounded-lg;
}
@media (max-width: 768px) {
  .stats-horizontal[data-v-761f1729] {
    @apply stats-vertical;
  }
  .step-header h2[data-v-761f1729] {
    @apply text-xl;
  }
  .flex.items-center.justify-between[data-v-761f1729] {
    @apply flex-col items-start gap-3;
  }
  .empty-state[data-v-761f1729] {
    @apply p-6;
  }
  .empty-state svg[data-v-761f1729] {
    @apply w-12 h-12;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/AudienceSelectionStep.vue?type=style&index=0 */
.audience-selection-step[data-v-b3231482] {
  max-width: 5xl;
}
.tag-option[data-v-b3231482] {
  transition: all 0.2s ease;
  cursor: pointer;
}
.tag-option[data-v-b3231482]:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.customer-option[data-v-b3231482] {
  transition: all 0.2s ease;
}
.customer-option[data-v-b3231482]:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.tab[data-v-b3231482] {
  position: relative;
  overflow: visible;
}
.tab-active[data-v-b3231482] {
  font-weight: 600;
}
.empty-state svg[data-v-b3231482] {
  opacity: 0.3;
}
.stats[data-v-b3231482] {
  border: 1px solid oklch(var(--bc) / 0.2);
}
.badge-xs[data-v-b3231482] {
  font-size: 0.6rem;
  padding: 0.125rem 0.375rem;
}
.preview-list[data-v-b3231482] {
  border: 1px solid oklch(var(--bc) / 0.1);
  border-radius: 0.5rem;
  padding: 1rem;
  background: oklch(var(--b2));
}
@media (max-width: 768px) {
  .tabs[data-v-b3231482] {
    flex-direction: column;
  }
  .tab[data-v-b3231482] {
    width: 100%;
    justify-content: flex-start;
  }
  .stats-horizontal[data-v-b3231482] {
    flex-direction: column;
  }
  .grid-cols-2[data-v-b3231482] {
    grid-template-columns: 1fr;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/VariableSelectorModal.vue?type=style&index=0 */
.variable-selector-content[data-v-b63245e8] {
  @apply max-w-4xl;
}
.variable-item[data-v-b63245e8] {
  @apply p-4 border border-gray-200 rounded-lg hover:border-primary hover:bg-gray-50 cursor-pointer transition-colors duration-200;
}
.variable-item[data-v-b63245e8]:hover {
  @apply shadow-sm;
}
.variable-syntax[data-v-b63245e8] {
  @apply font-mono;
}
.tabs[data-v-b63245e8] {
  @apply justify-start overflow-x-auto;
}
.tab[data-v-b63245e8] {
  @apply flex-shrink-0;
}
.variable-list[data-v-b63245e8] {
  scrollbar-width: thin;
  scrollbar-color: #CBD5E0 #F7FAFC;
}
.variable-list[data-v-b63245e8]::-webkit-scrollbar {
  @apply w-2;
}
.variable-list[data-v-b63245e8]::-webkit-scrollbar-track {
  @apply bg-gray-100 rounded;
}
.variable-list[data-v-b63245e8]::-webkit-scrollbar-thumb {
  @apply bg-gray-300 rounded;
}
.variable-list[data-v-b63245e8]::-webkit-scrollbar-thumb:hover {
  @apply bg-gray-400;
}
@media (max-width: 768px) {
  .variable-item[data-v-b63245e8] {
    @apply p-3;
  }
  .variable-item .flex[data-v-b63245e8] {
    @apply flex-col gap-2;
  }
  .variable-item .btn[data-v-b63245e8] {
    @apply w-full;
  }
  .tabs[data-v-b63245e8] {
    @apply text-xs;
  }
  .tab[data-v-b63245e8] {
    @apply px-2 py-1;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/FormulaEditor.vue?type=style&index=0 */
.formula-editor[data-v-09630dad] {
  @apply relative w-full border border-gray-300 rounded-lg overflow-hidden;
  font-family:
    "Monaco",
    "Menlo",
    "Ubuntu Mono",
    monospace;
}
.formula-editor.focused[data-v-09630dad] {
  @apply border-primary ring-2 ring-primary ring-opacity-20;
}
.formula-editor.error[data-v-09630dad] {
  @apply border-error;
}
.formula-input-container[data-v-09630dad] {
  @apply relative;
}
.formula-input-wrapper[data-v-09630dad] {
  @apply relative;
}
.syntax-highlight-layer[data-v-09630dad] {
  @apply absolute inset-0 p-3 text-sm leading-relaxed pointer-events-none overflow-hidden;
  white-space: pre-wrap;
  word-wrap: break-word;
  color: transparent;
  background: transparent;
  z-index: 1;
}
.formula-input-field[data-v-09630dad] {
  @apply relative w-full p-3 text-sm leading-relaxed resize-none outline-none bg-transparent;
  min-height: 3rem;
  white-space: pre-wrap;
  word-wrap: break-word;
  color: #374151;
  z-index: 2;
}
.formula-input-field[data-v-09630dad]::placeholder {
  @apply text-gray-400;
}
[data-v-09630dad] .syntax-keyword {
  @apply text-purple-600 font-semibold;
}
[data-v-09630dad] .syntax-variable {
  @apply text-green-600 font-medium;
}
[data-v-09630dad] .syntax-string {
  @apply text-orange-600;
}
[data-v-09630dad] .syntax-number {
  @apply text-blue-600;
}
[data-v-09630dad] .syntax-operator {
  @apply text-gray-600 font-bold;
}
[data-v-09630dad] .syntax-parentheses {
  @apply text-gray-700 font-bold;
}
.autocomplete-dropdown[data-v-09630dad] {
  @apply absolute bg-white border border-gray-300 rounded-lg shadow-lg max-h-64 overflow-y-auto z-50;
}
.autocomplete-item[data-v-09630dad] {
  @apply px-3 py-2 cursor-pointer border-b border-gray-100 last:border-b-0 hover:bg-gray-50;
}
.autocomplete-item.selected[data-v-09630dad] {
  @apply bg-primary bg-opacity-10;
}
.autocomplete-item-content[data-v-09630dad] {
  @apply space-y-1;
}
.autocomplete-item-title[data-v-09630dad] {
  @apply flex items-center gap-2;
}
.autocomplete-item-type[data-v-09630dad] {
  @apply inline-block text-xs px-1.5 py-0.5 rounded text-white font-medium;
}
.autocomplete-item-type.function[data-v-09630dad] {
  @apply bg-purple-500;
}
.autocomplete-item-type.variable[data-v-09630dad] {
  @apply bg-green-500;
}
.autocomplete-item-name[data-v-09630dad] {
  @apply font-mono font-medium text-gray-900;
}
.autocomplete-item-description[data-v-09630dad] {
  @apply text-xs text-gray-600;
}
.autocomplete-item-example[data-v-09630dad] {
  @apply text-xs text-gray-500;
}
.example-label[data-v-09630dad] {
  @apply font-medium;
}
.autocomplete-item-example code[data-v-09630dad] {
  @apply bg-gray-100 px-1 py-0.5 rounded font-mono;
}
.formula-validation[data-v-09630dad] {
  @apply px-3 py-2 border-t border-gray-200 bg-gray-50;
}
.validation-success[data-v-09630dad] {
  @apply flex items-center gap-2 text-success text-sm;
}
.validation-error[data-v-09630dad] {
  @apply space-y-1 text-error text-sm;
}
.validation-error svg[data-v-09630dad] {
  @apply inline mr-1;
}
.validation-suggestion[data-v-09630dad] {
  @apply text-xs text-gray-600 italic mt-1;
}
.formula-test-results[data-v-09630dad] {
  @apply px-3 py-2 border-t border-gray-200 bg-blue-50;
}
.test-result-header[data-v-09630dad] {
  @apply flex items-center justify-between mb-2;
}
.test-result-label[data-v-09630dad] {
  @apply text-sm font-medium text-blue-900;
}
.test-result-content[data-v-09630dad] {
  @apply space-y-2;
}
.test-success[data-v-09630dad] {
  @apply space-y-2;
}
.test-result-value[data-v-09630dad] {
  @apply flex items-center gap-2;
}
.result-label[data-v-09630dad] {
  @apply text-xs text-blue-700 font-medium;
}
.result-code[data-v-09630dad] {
  @apply bg-white px-2 py-1 rounded border text-sm font-mono text-blue-900;
}
.test-context[data-v-09630dad] {
  @apply space-y-1;
}
.context-label[data-v-09630dad] {
  @apply text-xs text-blue-700 font-medium;
}
.context-variables[data-v-09630dad] {
  @apply flex flex-wrap gap-2;
}
.context-variable[data-v-09630dad] {
  @apply text-xs bg-white px-2 py-1 rounded border font-mono text-blue-800;
}
.test-error[data-v-09630dad] {
  @apply space-y-1;
}
.error-label[data-v-09630dad] {
  @apply text-xs text-red-700 font-medium;
}
.error-code[data-v-09630dad] {
  @apply bg-red-100 px-2 py-1 rounded border text-sm font-mono text-red-900;
}
.function-docs-panel[data-v-09630dad] {
  @apply px-3 py-2 border-t border-gray-200 bg-yellow-50;
}
.function-docs-header[data-v-09630dad] {
  @apply flex items-center gap-3 mb-2;
}
.function-name[data-v-09630dad] {
  @apply text-sm font-bold text-yellow-900;
}
.function-syntax[data-v-09630dad] {
  @apply text-sm font-mono text-yellow-700 bg-yellow-100 px-2 py-1 rounded;
}
.function-description[data-v-09630dad] {
  @apply text-sm text-yellow-800 mb-3;
}
.function-parameters[data-v-09630dad] {
  @apply space-y-1 mb-3;
}
.parameters-title[data-v-09630dad] {
  @apply text-xs font-semibold text-yellow-900;
}
.parameter-item[data-v-09630dad] {
  @apply text-xs text-yellow-800 ml-2;
}
.parameter-name[data-v-09630dad] {
  @apply font-mono font-medium;
}
.parameter-type[data-v-09630dad] {
  @apply text-yellow-600 italic;
}
.parameter-description[data-v-09630dad] {
  @apply ml-2;
}
.function-examples[data-v-09630dad] {
  @apply space-y-1;
}
.examples-title[data-v-09630dad] {
  @apply text-xs font-semibold text-yellow-900;
}
.example-item[data-v-09630dad] {
  @apply space-y-1 ml-2;
}
.example-code[data-v-09630dad] {
  @apply text-xs font-mono bg-yellow-100 px-2 py-1 rounded text-yellow-900;
}
.example-description[data-v-09630dad] {
  @apply text-xs text-yellow-700;
}
.formula-toolbar[data-v-09630dad] {
  @apply flex items-center gap-2 px-3 py-2 border-t border-gray-200 bg-gray-50;
}
@media (max-width: 768px) {
  .formula-input-field[data-v-09630dad] {
    @apply text-xs p-2;
    min-height: 2.5rem;
  }
  .syntax-highlight-layer[data-v-09630dad] {
    @apply text-xs p-2;
  }
  .autocomplete-dropdown[data-v-09630dad] {
    @apply max-h-48;
  }
  .autocomplete-item[data-v-09630dad] {
    @apply px-2 py-1.5;
  }
  .function-docs-panel[data-v-09630dad] {
    @apply px-2 py-1.5;
  }
  .formula-toolbar[data-v-09630dad] {
    @apply px-2 py-1.5;
  }
  .btn[data-v-09630dad] {
    @apply btn-sm;
  }
}
.formula-input-field[data-v-09630dad]:focus-visible {
  @apply outline-none;
}
.autocomplete-dropdown[data-v-09630dad] {
  scrollbar-width: thin;
  scrollbar-color: #CBD5E0 #F7FAFC;
}
.autocomplete-dropdown[data-v-09630dad]::-webkit-scrollbar {
  @apply w-2;
}
.autocomplete-dropdown[data-v-09630dad]::-webkit-scrollbar-track {
  @apply bg-gray-100;
}
.autocomplete-dropdown[data-v-09630dad]::-webkit-scrollbar-thumb {
  @apply bg-gray-300 rounded;
}
.autocomplete-dropdown[data-v-09630dad]::-webkit-scrollbar-thumb:hover {
  @apply bg-gray-400;
}

/* sfc-style:/rails/app/javascript/components/campaigns/EnhancedFormulaBuilderModal.vue?type=style&index=0 */
.enhanced-formula-builder[data-v-20123664] {
  @apply max-w-7xl;
}
.template-item[data-v-20123664] {
  @apply p-3 border border-gray-200 rounded-lg hover:border-blue-300 hover:bg-blue-50 cursor-pointer transition-all duration-200;
}
.template-header[data-v-20123664] {
  @apply flex items-center justify-between mb-2;
}
.template-name[data-v-20123664] {
  @apply font-medium text-gray-900;
}
.template-formula[data-v-20123664] {
  @apply text-xs font-mono text-gray-700 bg-gray-100 p-2 rounded mb-2 break-all;
}
.template-description[data-v-20123664] {
  @apply text-xs text-gray-600;
}
.function-item[data-v-20123664] {
  @apply p-3 border border-gray-200 rounded-lg hover:border-purple-300 hover:bg-purple-50 cursor-pointer transition-all duration-200;
}
.function-header[data-v-20123664] {
  @apply flex items-center justify-between mb-2;
}
.function-name[data-v-20123664] {
  @apply font-medium text-purple-700;
}
.function-category[data-v-20123664] {
  @apply text-xs px-2 py-1 bg-purple-100 text-purple-700 rounded-full;
}
.function-syntax[data-v-20123664] {
  @apply text-xs font-mono text-gray-700 bg-gray-100 p-2 rounded mb-2 break-all;
}
.function-description[data-v-20123664] {
  @apply text-xs text-gray-600 mb-2;
}
.function-example[data-v-20123664] {
  @apply text-xs text-gray-500;
}
.example-label[data-v-20123664] {
  @apply font-medium;
}
.example-code[data-v-20123664] {
  @apply font-mono bg-gray-100 px-1 py-0.5 rounded ml-1;
}
.formula-testing-panel[data-v-20123664] {
  @apply bg-green-50 rounded-lg p-4 border border-green-200;
}
.testing-panel-header[data-v-20123664] {
  @apply flex items-center justify-between mb-4;
}
.testing-panel-content[data-v-20123664] {
  @apply space-y-4;
}
.test-results-display[data-v-20123664] {
  @apply bg-white rounded-lg p-4 border;
}
.test-success[data-v-20123664],
.test-error[data-v-20123664] {
  @apply space-y-3;
}
.result-header[data-v-20123664],
.error-header[data-v-20123664] {
  @apply flex items-center gap-2 font-medium;
}
.result-content[data-v-20123664],
.error-content[data-v-20123664] {
  @apply space-y-3;
}
.result-value[data-v-20123664] {
  @apply space-y-2;
}
.value-label[data-v-20123664] {
  @apply text-sm font-medium text-gray-700;
}
.value-display[data-v-20123664] {
  @apply p-3 bg-gray-50 rounded border font-mono text-sm;
}
.result-context[data-v-20123664] {
  @apply space-y-2;
}
.context-label[data-v-20123664] {
  @apply text-sm font-medium text-gray-700;
}
.context-variables[data-v-20123664] {
  @apply grid grid-cols-1 sm:grid-cols-2 gap-2;
}
.context-item[data-v-20123664] {
  @apply flex items-center gap-2 p-2 bg-gray-50 rounded text-sm font-mono;
}
.context-key[data-v-20123664] {
  @apply font-medium text-gray-700;
}
.context-value[data-v-20123664] {
  @apply text-gray-600;
}
.error-message[data-v-20123664] {
  @apply text-red-700 font-mono text-sm bg-red-50 p-3 rounded border;
}
.error-suggestion[data-v-20123664] {
  @apply text-sm text-red-600;
}
.formula-tips[data-v-20123664] {
  background:
    linear-gradient(
      135deg,
      #f0f9ff 0%,
      #faf5ff 100%);
}
.tip-category[data-v-20123664] {
  @apply space-y-2;
}
.tip-category h5[data-v-20123664] {
  @apply border-b border-blue-200 pb-1;
}
.tip-category code[data-v-20123664] {
  @apply text-xs;
}
.formula-history[data-v-20123664] {
  @apply bg-gray-50 rounded-lg p-4;
}
.history-items[data-v-20123664] {
  @apply max-h-32 overflow-y-auto;
}
.history-item[data-v-20123664] {
  @apply p-2 bg-white rounded border hover:border-gray-300 cursor-pointer transition-colors duration-200;
}
.history-formula[data-v-20123664] {
  @apply text-sm font-mono text-gray-800 truncate;
}
.history-meta[data-v-20123664] {
  @apply flex items-center justify-between text-xs text-gray-500 mt-1;
}
@media (max-width: 1024px) {
  .enhanced-formula-builder[data-v-20123664] {
    @apply max-w-full;
  }
  .grid-cols-2[data-v-20123664] {
    @apply grid-cols-1;
  }
}
@media (max-width: 768px) {
  .template-item[data-v-20123664],
  .function-item[data-v-20123664] {
    @apply p-2;
  }
  .testing-panel-content[data-v-20123664] {
    @apply space-y-3;
  }
  .context-variables[data-v-20123664] {
    @apply grid-cols-1;
  }
  .btn[data-v-20123664] {
    @apply btn-sm;
  }
}
.overflow-y-auto[data-v-20123664] {
  scrollbar-width: thin;
  scrollbar-color: #CBD5E0 #F7FAFC;
}
.overflow-y-auto[data-v-20123664]::-webkit-scrollbar {
  @apply w-2;
}
.overflow-y-auto[data-v-20123664]::-webkit-scrollbar-track {
  @apply bg-gray-100 rounded;
}
.overflow-y-auto[data-v-20123664]::-webkit-scrollbar-thumb {
  @apply bg-gray-300 rounded;
}
.overflow-y-auto[data-v-20123664]::-webkit-scrollbar-thumb:hover {
  @apply bg-gray-400;
}

/* sfc-style:/rails/app/javascript/components/campaigns/EmailHeaderConfiguration.vue?type=style&index=0 */
.email-header-configuration[data-v-7ecb5981] {
  @apply space-y-4;
}
.email-client-preview[data-v-7ecb5981] {
  @apply transition-all duration-200;
}
.email-client-preview[data-v-7ecb5981]:hover {
  @apply scale-105;
}
.form-control[data-v-7ecb5981] {
  @apply mb-0;
}
.input-warning[data-v-7ecb5981] {
  @apply border-warning;
}
.input-error[data-v-7ecb5981] {
  @apply border-error;
}
.textarea-warning[data-v-7ecb5981] {
  @apply border-warning;
}
.textarea-error[data-v-7ecb5981] {
  @apply border-error;
}

/* sfc-style:/rails/app/javascript/components/campaigns/FormulaBuilderModal.vue?type=style&index=0 */
.formula-builder-content[data-v-1d4c08cc] {
  @apply max-w-6xl;
}
.function-item[data-v-1d4c08cc] {
  @apply p-3 border border-gray-200 rounded-lg hover:border-purple-300 hover:bg-purple-50 cursor-pointer transition-colors duration-200;
}
.variable-category[data-v-1d4c08cc] {
  @apply mb-4;
}
.variable-item[data-v-1d4c08cc] {
  @apply p-2 text-left border border-gray-200 rounded hover:border-green-300 hover:bg-green-50 cursor-pointer transition-colors duration-200 block w-full;
}
.example-item[data-v-1d4c08cc] {
  @apply p-3 border border-blue-200 rounded-lg hover:border-blue-300 hover:bg-blue-100 cursor-pointer transition-colors duration-200;
}
.textarea[data-v-1d4c08cc] {
  @apply resize-none;
}
.textarea-error[data-v-1d4c08cc] {
  @apply border-error;
}
.textarea-success[data-v-1d4c08cc] {
  @apply border-success;
}
.overflow-y-auto[data-v-1d4c08cc] {
  scrollbar-width: thin;
  scrollbar-color: #CBD5E0 #F7FAFC;
}
.overflow-y-auto[data-v-1d4c08cc]::-webkit-scrollbar {
  @apply w-2;
}
.overflow-y-auto[data-v-1d4c08cc]::-webkit-scrollbar-track {
  @apply bg-gray-100 rounded;
}
.overflow-y-auto[data-v-1d4c08cc]::-webkit-scrollbar-thumb {
  @apply bg-gray-300 rounded;
}
.overflow-y-auto[data-v-1d4c08cc]::-webkit-scrollbar-thumb:hover {
  @apply bg-gray-400;
}
@media (max-width: 1024px) {
  .grid-cols-2[data-v-1d4c08cc] {
    @apply grid-cols-1;
  }
  .formula-builder-content[data-v-1d4c08cc] {
    @apply max-w-full;
  }
}
@media (max-width: 768px) {
  .function-item[data-v-1d4c08cc],
  .variable-item[data-v-1d4c08cc],
  .example-item[data-v-1d4c08cc] {
    @apply p-2;
  }
  .btn[data-v-1d4c08cc] {
    @apply btn-sm;
  }
  .textarea[data-v-1d4c08cc] {
    @apply text-xs;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/ImageUploadModal.vue?type=style&index=0 */
.image-upload-content[data-v-e322eea8] {
  @apply max-w-2xl;
}
.upload-dropzone[data-v-e322eea8] {
  @apply border-2 border-dashed border-gray-300 rounded-lg p-8 text-center cursor-pointer transition-colors duration-200;
}
.upload-dropzone[data-v-e322eea8]:hover {
  @apply border-gray-400 bg-gray-50;
}
.upload-dropzone.dragover[data-v-e322eea8] {
  @apply border-primary bg-primary/5;
}
.upload-dropzone.uploading[data-v-e322eea8] {
  @apply pointer-events-none;
}
.upload-content[data-v-e322eea8] {
  @apply min-h-32 flex flex-col items-center justify-center;
}
.uploaded-preview[data-v-e322eea8] {
  @apply text-center;
}
.preview-image[data-v-e322eea8] {
  @apply max-w-48 max-h-48 object-contain rounded-lg shadow-sm mx-auto;
}
.progress-bar[data-v-e322eea8] {
  @apply w-48 h-2 bg-gray-200 rounded-full overflow-hidden mx-auto;
}
.progress-fill[data-v-e322eea8] {
  @apply h-full bg-primary transition-all duration-300;
}
.recent-image-item[data-v-e322eea8] {
  @apply cursor-pointer p-2 border border-gray-200 rounded-lg hover:border-primary hover:bg-gray-50 transition-colors duration-200;
}
.recent-image[data-v-e322eea8] {
  @apply w-full h-20 object-cover rounded;
}
.upload-dropzone[data-v-e322eea8] * {
  @apply pointer-events-none;
}
.upload-dropzone[data-v-e322eea8] {
  @apply pointer-events-auto;
}
.btn-active[data-v-e322eea8] {
  @apply bg-primary text-white border-primary;
}
@media (max-width: 768px) {
  .grid-cols-4[data-v-e322eea8] {
    @apply grid-cols-2;
  }
  .grid-cols-3[data-v-e322eea8] {
    @apply grid-cols-1;
  }
  .upload-dropzone[data-v-e322eea8] {
    @apply p-4;
  }
  .preview-image[data-v-e322eea8] {
    @apply max-w-32 max-h-32;
  }
  .progress-bar[data-v-e322eea8] {
    @apply w-32;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/tiptap-extensions/OfferBlockNodeView.vue?type=style&index=0 */
.offer-block-node[data-v-34e35801] {
  @apply relative;
  border: 2px solid #3b82f6;
  border-radius: 12px;
  transition: all 0.2s ease;
  background: #ffffff;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.offer-block-node--table[data-v-34e35801] {
  border-color: #3b82f6;
}
.offer-block-node--table[data-v-34e35801]:hover {
  border-color: #2563eb;
  box-shadow: 0 4px 6px -1px rgba(59, 130, 246, 0.1);
}
.offer-block-node--table[data-v-34e35801]:focus {
  outline: none;
  border-color: #1d4ed8;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.2);
}
.offer-block-node--table.offer-block-node--selected[data-v-34e35801] {
  border-color: #1d4ed8;
  background: #eff6ff;
}
.offer-block-node--rich-text[data-v-34e35801] {
  border-color: #8b5cf6;
}
.offer-block-node--rich-text[data-v-34e35801]:hover {
  border-color: #7c3aed;
  box-shadow: 0 4px 6px -1px rgba(139, 92, 246, 0.1);
}
.offer-block-node--rich-text[data-v-34e35801]:focus {
  outline: none;
  border-color: #6d28d9;
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.2);
}
.offer-block-node--rich-text.offer-block-node--selected[data-v-34e35801] {
  border-color: #6d28d9;
  background: #f5f3ff;
}
.offer-block-node__header[data-v-34e35801] {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  min-height: 48px;
}
.offer-block-node__type-badge[data-v-34e35801] {
  flex-shrink: 0;
  font-size: 0.75rem;
  font-weight: 600;
}
.offer-block-node--table .offer-block-node__type-badge[data-v-34e35801] {
  color: #3b82f6;
  border-color: #3b82f6;
}
.offer-block-node--rich-text .offer-block-node__type-badge[data-v-34e35801] {
  color: #8b5cf6;
  border-color: #8b5cf6;
}
.offer-block-node__title[data-v-34e35801] {
  flex: 1 1 auto;
  font-weight: 500;
  color: #111827;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.offer-block-node__delete-btn[data-v-34e35801] {
  flex-shrink: 0;
  color: #9ca3af;
}
.offer-block-node__delete-btn[data-v-34e35801]:hover {
  color: #dc2626;
  background-color: #fef2f2;
}
.sr-only[data-v-34e35801] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/* sfc-style:/rails/app/javascript/components/campaigns/OfferBlockPreview.vue?type=style&index=0 */
.offer-block-preview[data-v-4f288770] {
  @apply border border-base-300 rounded-lg bg-base-100;
}
.offer-block-preview--mini[data-v-4f288770] {
  @apply p-2;
}
.offer-block-preview--full[data-v-4f288770] {
  @apply p-4;
}
.mini-preview[data-v-4f288770] {
  @apply space-y-2;
}
.mini-preview-header[data-v-4f288770] {
  @apply flex items-center;
}
.mini-rich-text-preview[data-v-4f288770] {
  @apply bg-base-50 rounded p-2;
}
.mini-rich-text-lines[data-v-4f288770] {
  @apply space-y-1;
}
.mini-line[data-v-4f288770] {
  @apply h-2 bg-base-300 rounded;
  width: 100%;
}
.mini-line.short[data-v-4f288770] {
  width: 60%;
}
.preview-header[data-v-4f288770] {
  @apply mb-3 pb-2 border-b border-base-200;
}
.table-preview[data-v-4f288770] {
  @apply space-y-2;
}
.table-preview .table[data-v-4f288770] {
  @apply border border-base-200;
}
.table-preview .table th[data-v-4f288770] {
  @apply bg-base-50 border-b border-base-200;
}
.table-preview .table td[data-v-4f288770] {
  @apply border-b border-base-100;
}
.rich-text-preview[data-v-4f288770] {
  @apply max-h-32 overflow-hidden;
}
.rich-text-preview .prose[data-v-4f288770] {
  @apply text-sm;
}
.preview-placeholder[data-v-4f288770] {
  @apply text-center py-6;
}
@media (max-width: 640px) {
  .offer-block-preview--full[data-v-4f288770] {
    @apply p-3;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/OfferBlockSelectorModal.vue?type=style&index=0 */
.offer-block-card[data-v-62bfea2e] {
  position: relative;
  overflow: hidden;
}
.offer-block-card:hover .offer-block-overlay[data-v-62bfea2e] {
  opacity: 1;
}
.offer-block-card[data-v-62bfea2e]:focus {
  transform: translateY(-1px);
}
.offer-block-preview[data-v-62bfea2e] {
  pointer-events: none;
}
@media (max-width: 768px) {
  .grid[data-v-62bfea2e] {
    grid-template-columns: 1fr;
  }
}
.offer-block-card[data-v-62bfea2e]:focus-visible {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}
.offer-block-card[data-v-62bfea2e] {
  transition: all 0.2s ease-in-out;
}
.offer-block-card[data-v-62bfea2e]:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignTipTapEditor.vue?type=style&index=0 */
.campaign-tiptap-editor[data-v-de8605ee] {
  @apply border border-gray-200 rounded-lg overflow-hidden bg-white;
}
.campaign-tiptap-editor .editor-toolbar[data-v-de8605ee] {
  @apply flex flex-wrap items-center p-3 bg-gray-50 border-b border-gray-200;
  gap: 1.5rem !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}
.campaign-tiptap-editor .toolbar-group[data-v-de8605ee] {
  @apply flex items-center;
  gap: 0.25rem !important;
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: center !important;
}
.toolbar-button[data-v-de8605ee] {
  @apply flex items-center px-3 py-2 font-medium text-gray-700 bg-white border border-gray-200 rounded-md hover:bg-gray-50 hover:border-gray-300 focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-1 transition-colors duration-200;
  min-width: 2.5rem;
  min-height: 2.5rem;
}
.toolbar-button.is-active[data-v-de8605ee] {
  @apply bg-primary text-white border-primary;
}
.toolbar-button[data-v-de8605ee]:disabled {
  @apply opacity-50 cursor-not-allowed hover:bg-white hover:border-gray-200;
}
.variable-button[data-v-de8605ee] {
  @apply bg-green-600 text-white border-green-600 hover:bg-green-700 hover:border-green-700;
}
.formula-button[data-v-de8605ee] {
  @apply bg-purple-600 text-white border-purple-600 hover:bg-purple-700 hover:border-purple-700;
}
.validate-button[data-v-de8605ee] {
  @apply bg-orange-600 text-white border-orange-600 hover:bg-orange-700 hover:border-orange-700;
}
.editor-wrapper[data-v-de8605ee] {
  @apply relative;
}
.editor-content[data-v-de8605ee] {
  @apply min-h-64 max-h-96 overflow-y-auto;
}
.auto-save-indicator[data-v-de8605ee] {
  @apply absolute bottom-2 right-2 px-2 py-1 bg-gray-100 rounded text-xs z-10;
}
.success-indicator[data-v-de8605ee] {
  @apply absolute bottom-2 left-2 px-3 py-2 bg-green-100 border border-green-300 rounded-lg text-xs z-10;
  animation: slideInFromLeft-de8605ee 0.3s ease-out, fadeOut-de8605ee 0.5s ease-in 2.5s forwards;
}
@keyframes slideInFromLeft-de8605ee {
  from {
    transform: translateX(-100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fadeOut-de8605ee {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
[data-v-de8605ee] .ProseMirror {
  @apply outline-none;
}
[data-v-de8605ee] .ProseMirror p.is-editor-empty:first-child::before {
  content: attr(data-placeholder);
  @apply text-gray-400 pointer-events-none float-left h-0;
}
[data-v-de8605ee] .ProseMirror img {
  @apply max-w-full h-auto rounded-lg shadow-sm;
}
[data-v-de8605ee] .ProseMirror a {
  @apply text-primary hover:text-primary-focus underline;
}
[data-v-de8605ee] .ProseMirror h1 {
  @apply text-2xl font-bold mt-6 mb-4;
}
[data-v-de8605ee] .ProseMirror h2 {
  @apply text-xl font-bold mt-5 mb-3;
}
[data-v-de8605ee] .ProseMirror h3 {
  @apply text-lg font-bold mt-4 mb-2;
}
[data-v-de8605ee] .ProseMirror ul {
  @apply list-disc ml-6 mb-4;
}
[data-v-de8605ee] .ProseMirror ol {
  @apply list-decimal ml-6 mb-4;
}
[data-v-de8605ee] .ProseMirror li {
  @apply mb-1;
}
[data-v-de8605ee] .ProseMirror blockquote {
  @apply border-l-4 border-gray-300 pl-4 italic my-4;
}
.offer-block-button[data-v-de8605ee] {
  @apply bg-blue-600 text-white border-blue-600 hover:bg-blue-700 hover:border-blue-700;
  transition: all 0.2s ease-in-out;
  position: relative;
}
.offer-block-button[data-v-de8605ee]:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(59, 130, 246, 0.3);
}
.offer-block-button[data-v-de8605ee]:disabled {
  @apply bg-gray-400 text-white border-gray-400 cursor-not-allowed;
  transform: none;
  box-shadow: none;
}
.offer-block-button[data-v-de8605ee]:disabled:hover {
  @apply bg-gray-400 border-gray-400;
  transform: none;
  box-shadow: none;
}
.offer-block-button .loading[data-v-de8605ee] {
  @apply animate-spin;
}
[data-v-de8605ee] .offer-block-node {
  @apply relative border-2 border-dashed border-blue-300 bg-blue-50 rounded-lg p-4 my-4 mx-2;
  transition: all 0.2s ease-in-out;
  cursor: pointer;
  user-select: none;
}
[data-v-de8605ee] .offer-block-node:hover {
  @apply border-blue-500 bg-blue-100;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(59, 130, 246, 0.15);
}
[data-v-de8605ee] .offer-block-node.ProseMirror-selectednode {
  @apply border-blue-600 bg-blue-200;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.3);
}
[data-v-de8605ee] .offer-block-node .block-header {
  @apply flex items-center justify-between mb-3;
}
[data-v-de8605ee] .offer-block-node .block-type-badge {
  @apply inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium;
  transition: all 0.2s ease-in-out;
}
[data-v-de8605ee] .offer-block-node .block-type-badge.table {
  @apply bg-blue-100 text-blue-800;
}
[data-v-de8605ee] .offer-block-node .block-type-badge.rich_text {
  @apply bg-green-100 text-green-800;
}
[data-v-de8605ee] .offer-block-node .block-actions {
  @apply flex items-center space-x-2;
}
[data-v-de8605ee] .offer-block-node .block-action-btn {
  @apply p-1.5 rounded-md border-0 transition-all duration-200;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(8px);
}
[data-v-de8605ee] .offer-block-node .block-action-btn:hover {
  @apply bg-white;
  transform: scale(1.1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
[data-v-de8605ee] .offer-block-node .edit-btn {
  @apply text-blue-600 hover:text-blue-700;
}
[data-v-de8605ee] .offer-block-node .delete-btn {
  @apply text-red-600 hover:text-red-700;
}
[data-v-de8605ee] .offer-block-node .drag-handle {
  @apply absolute left-1 top-1/2 transform -translate-y-1/2 cursor-grab;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
[data-v-de8605ee] .offer-block-node:hover .drag-handle {
  opacity: 1;
}
[data-v-de8605ee] .offer-block-node .drag-handle:active {
  @apply cursor-grabbing;
}
[data-v-de8605ee] .offer-block-node .block-preview {
  @apply bg-white rounded border border-gray-200 p-3;
  transition: all 0.2s ease-in-out;
}
[data-v-de8605ee] .offer-block-node:hover .block-preview {
  @apply border-gray-300;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
[data-v-de8605ee] .offer-block-node .block-title {
  @apply font-medium text-gray-900 text-sm;
}
[data-v-de8605ee] .offer-block-node .block-description {
  @apply text-xs text-gray-500 mt-1;
}
.offer-block-loading[data-v-de8605ee] {
  @apply relative;
}
.offer-block-loading[data-v-de8605ee]::after {
  content: "";
  @apply absolute inset-0 bg-white bg-opacity-50 rounded-lg;
  background-image: url("data:image/svg+xml,%3csvg width='38' height='38' viewBox='0 0 38 38' xmlns='http://www.w3.org/2000/svg'%3e%3cdefs%3e%3clinearGradient x1='8.042%25' y1='0%25' x2='65.682%25' y2='23.865%25' id='a'%3e%3cstop stop-color='%234F46E5' stop-opacity='0' offset='0%25'/%3e%3cstop stop-color='%234F46E5' stop-opacity='.631' offset='63.146%25'/%3e%3cstop stop-color='%234F46E5' offset='100%25'/%3e%3c/linearGradient%3e%3c/defs%3e%3cg fill='none' fill-rule='evenodd'%3e%3cg transform='translate(1 1)'%3e%3cpath d='M36 18c0-9.94-8.06-18-18-18' id='Oval-2' stroke='url(/%23a)' stroke-width='2'%3e%3canimateTransform attributeName='transform' type='rotate' from='0 18 18' to='360 18 18' dur='0.9s' repeatCount='indefinite'/%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px 20px;
}
.toolbar-button[data-v-de8605ee] {
  position: relative;
  overflow: hidden;
}
.toolbar-button[data-v-de8605ee]::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: width 0.3s ease, height 0.3s ease;
}
.toolbar-button[data-v-de8605ee]:hover::before {
  width: 100%;
  height: 100%;
}
.toolbar-button[data-v-de8605ee]:active {
  transform: translateY(1px);
}
.toolbar-button[data-v-de8605ee]:focus-visible {
  @apply ring-2 ring-offset-2 ring-blue-400;
  outline: none;
}
.offer-block-button[data-v-de8605ee]:focus-visible {
  @apply ring-blue-500;
}
.variable-button[data-v-de8605ee]:focus-visible {
  @apply ring-green-500;
}
.formula-button[data-v-de8605ee]:focus-visible {
  @apply ring-purple-500;
}
.tooltip:focus-within [data-tip][data-v-de8605ee]:before,
.tooltip:focus-within [data-tip][data-v-de8605ee]:after {
  opacity: 1;
  visibility: visible;
}
.toolbar-button[data-v-de8605ee]:focus {
  z-index: 20;
}
@media (max-width: 1024px) {
  [data-v-de8605ee] .offer-block-node {
    @apply mx-1 p-3;
  }
  [data-v-de8605ee] .offer-block-node .block-actions {
    @apply space-x-1;
  }
  [data-v-de8605ee] .offer-block-node .block-action-btn {
    @apply p-1;
  }
}
@media (max-width: 768px) {
  .campaign-tiptap-editor .editor-toolbar[data-v-de8605ee] {
    @apply p-2;
    gap: 1rem !important;
  }
  .campaign-tiptap-editor .toolbar-group[data-v-de8605ee] {
    gap: 0.125rem !important;
  }
  .toolbar-button[data-v-de8605ee] {
    @apply px-2 py-1;
    min-width: 2rem;
    min-height: 2rem;
  }
  .toolbar-button span[data-v-de8605ee] {
    @apply hidden;
  }
  .editor-content[data-v-de8605ee] {
    @apply text-sm;
  }
  [data-v-de8605ee] .offer-block-node {
    @apply mx-0 p-2 my-2;
  }
  [data-v-de8605ee] .offer-block-node .block-header {
    @apply flex-col items-start space-y-2 mb-2;
  }
  [data-v-de8605ee] .offer-block-node .block-actions {
    @apply w-full justify-end;
  }
  [data-v-de8605ee] .offer-block-node .block-type-badge {
    @apply text-xs px-2 py-1;
  }
  [data-v-de8605ee] .offer-block-node .drag-handle {
    @apply hidden;
  }
}
@media (max-width: 640px) {
  .campaign-tiptap-editor .editor-toolbar[data-v-de8605ee] {
    @apply p-1;
    gap: 0.5rem !important;
  }
  .toolbar-button[data-v-de8605ee] {
    @apply px-1.5 py-1;
    min-width: 1.75rem;
    min-height: 1.75rem;
  }
  [data-v-de8605ee] .offer-block-node .block-preview {
    @apply p-2;
  }
  [data-v-de8605ee] .offer-block-node .block-title {
    @apply text-xs;
  }
  [data-v-de8605ee] .offer-block-node .block-description {
    @apply text-xs;
  }
}
@keyframes pulse-success-de8605ee {
  0% {
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
  }
  70% {
    box-shadow: 0 0 0 8px rgba(34, 197, 94, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0);
  }
}
.offer-block-success[data-v-de8605ee] {
  animation: pulse-success-de8605ee 0.6s ease-out;
}
@media (prefers-color-scheme: dark) {
  [data-v-de8605ee] .offer-block-node {
    @apply border-blue-600 bg-blue-900 bg-opacity-20;
  }
  [data-v-de8605ee] .offer-block-node:hover {
    @apply border-blue-500 bg-blue-800 bg-opacity-30;
  }
  [data-v-de8605ee] .offer-block-node .block-preview {
    @apply bg-gray-800 border-gray-600;
  }
  [data-v-de8605ee] .offer-block-node .block-title {
    @apply text-gray-100;
  }
  [data-v-de8605ee] .offer-block-node .block-description {
    @apply text-gray-400;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/ContentPreviewModal.vue?type=style&index=0 */
.content-preview-wrapper[data-v-e5f20819] {
  @apply max-w-full;
}
.email-content[data-v-e5f20819] h1 {
  @apply text-xl font-bold mb-4;
}
.email-content[data-v-e5f20819] h2 {
  @apply text-lg font-bold mb-3;
}
.email-content[data-v-e5f20819] h3 {
  @apply text-base font-bold mb-2;
}
.email-content[data-v-e5f20819] p {
  @apply mb-3;
}
.email-content[data-v-e5f20819] ul {
  @apply list-disc ml-6 mb-3;
}
.email-content[data-v-e5f20819] ol {
  @apply list-decimal ml-6 mb-3;
}
.email-content[data-v-e5f20819] li {
  @apply mb-1;
}
.email-content[data-v-e5f20819] a {
  @apply text-blue-600 underline hover:text-blue-800;
}
.email-content[data-v-e5f20819] img {
  @apply max-w-full h-auto rounded-lg shadow-sm mb-3;
}
.email-content[data-v-e5f20819] blockquote {
  @apply border-l-4 border-gray-300 pl-4 italic my-3;
}
.email-content[data-v-e5f20819] table {
  @apply w-full border-collapse border border-gray-300 mb-3;
}
.email-content[data-v-e5f20819] th {
  @apply border border-gray-300 px-3 py-2 bg-gray-100 font-medium;
}
.email-content[data-v-e5f20819] td {
  @apply border border-gray-300 px-3 py-2;
}

/* sfc-style:/rails/app/javascript/components/campaigns/ContentEditorStep.vue?type=style&index=0 */
.content-editor-step[data-v-48d3017b] {
  @apply space-y-6;
}
.step-header[data-v-48d3017b] {
  @apply text-center md:text-left;
}
.tiptap-editor-wrapper[data-v-48d3017b] {
  @apply min-h-96;
}
.alert[data-v-48d3017b] {
  @apply text-sm;
}
.alert .font-bold[data-v-48d3017b] {
  @apply text-base;
}
.badge[data-v-48d3017b] {
  @apply text-xs;
}
.input.input-warning[data-v-48d3017b] {
  @apply border-warning;
}
.input.input-error[data-v-48d3017b] {
  @apply border-error;
}
@media (max-width: 768px) {
  .card-body[data-v-48d3017b] {
    @apply px-4 py-4;
  }
  .btn[data-v-48d3017b] {
    @apply btn-sm;
  }
  .grid-cols-3[data-v-48d3017b] {
    @apply grid-cols-1;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/ColumnFormattingModal.vue?type=style&index=0 */
.column-formatting-content[data-v-e4571415] {
  @apply max-w-2xl;
}
.form-control input[data-v-e4571415]:focus,
.form-control select[data-v-e4571415]:focus {
  @apply ring-2 ring-primary ring-opacity-50;
}
.radio[data-v-e4571415]:checked {
  @apply bg-primary border-primary;
}
.checkbox[data-v-e4571415]:checked {
  @apply bg-primary border-primary;
}
.bg-white[data-v-e4571415] {
  @apply shadow-sm;
}
.sample-value[data-v-e4571415] {
  @apply transition-all duration-200;
}
.sample-value[data-v-e4571415]:hover {
  @apply bg-base-50;
}
.conditional-rule[data-v-e4571415] {
  @apply transition-all duration-200;
}
.conditional-rule[data-v-e4571415]:hover {
  @apply shadow-sm;
}
.badge[data-v-e4571415] {
  @apply transition-all duration-200;
}
@media (max-width: 768px) {
  .grid-cols-2[data-v-e4571415] {
    @apply grid-cols-1;
  }
  .flex.gap-2[data-v-e4571415] {
    @apply flex-col space-y-2;
  }
  .flex.gap-4[data-v-e4571415] {
    @apply flex-col space-y-2;
  }
}
.btn[data-v-e4571415]:hover {
  @apply transform scale-105;
}
a[data-v-e4571415] {
  @apply text-primary underline;
}
.sample-preview[data-v-e4571415] {
  @apply p-2 rounded border border-dashed border-base-300;
}

/* sfc-style:/rails/app/javascript/components/campaigns/TableBlockConfiguration.vue?type=style&index=0 */
.table-block-configuration[data-v-39abbb4a] {
  @apply max-w-4xl;
}
.column-drag-handle[data-v-39abbb4a]:hover {
  @apply text-primary;
}
.form-control input[data-v-39abbb4a]:focus,
.form-control select[data-v-39abbb4a]:focus {
  @apply ring-2 ring-primary ring-opacity-50;
}
.available-field-item[data-v-39abbb4a]:hover {
  @apply transform scale-105 shadow-sm;
}
.range[data-v-39abbb4a]::-webkit-slider-thumb {
  @apply bg-primary;
}
.range[data-v-39abbb4a]::-moz-range-thumb {
  @apply bg-primary;
}
.conditional-rule-item[data-v-39abbb4a] {
  @apply transition-all duration-200;
}
.conditional-rule-item[data-v-39abbb4a]:hover {
  @apply shadow-sm;
}
@media (max-width: 768px) {
  .grid-cols-2[data-v-39abbb4a] {
    @apply grid-cols-1;
  }
  .flex[data-v-39abbb4a] {
    @apply flex-col;
  }
  .flex.gap-2[data-v-39abbb4a] {
    @apply space-y-2;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/RichTextBlockConfiguration.vue?type=style&index=0 */
.rich-text-block-configuration[data-v-b6326ffe] {
  @apply max-w-4xl;
}
.prose[data-v-b6326ffe] {
  @apply text-base-content;
}
.prose h1[data-v-b6326ffe],
.prose h2[data-v-b6326ffe],
.prose h3[data-v-b6326ffe] {
  @apply text-base-content;
}
.prose p[data-v-b6326ffe] {
  @apply text-base-content/80;
}
.prose strong[data-v-b6326ffe] {
  @apply text-base-content font-bold;
}
.prose em[data-v-b6326ffe] {
  @apply text-base-content/90;
}
.prose ul[data-v-b6326ffe],
.prose ol[data-v-b6326ffe] {
  @apply text-base-content/80;
}
.prose blockquote[data-v-b6326ffe] {
  @apply text-base-content/70 border-l-primary;
}
.btn-active[data-v-b6326ffe] {
  @apply bg-primary text-primary-content;
}
.prose[data-v-b6326ffe] span[data-variable] {
  @apply bg-primary/10 text-primary px-1 py-0.5 rounded text-sm font-mono;
}
.conditional-rule-item[data-v-b6326ffe] {
  @apply transition-all duration-200;
}
.conditional-rule-item[data-v-b6326ffe]:hover {
  @apply shadow-sm;
}
.range[data-v-b6326ffe]::-webkit-slider-thumb {
  @apply bg-primary;
}
.range[data-v-b6326ffe]::-moz-range-thumb {
  @apply bg-primary;
}
@media (max-width: 768px) {
  .grid-cols-2[data-v-b6326ffe] {
    @apply grid-cols-1;
  }
  .flex.gap-2[data-v-b6326ffe] {
    @apply flex-col space-y-2;
  }
  .prose[data-v-b6326ffe] {
    @apply text-sm;
  }
}
.form-control input[data-v-b6326ffe]:focus,
.form-control select[data-v-b6326ffe]:focus {
  @apply ring-2 ring-primary ring-opacity-50;
}
[ref=editorContainer][data-v-b6326ffe]:focus-within {
  @apply ring-2 ring-primary ring-opacity-50;
}

/* sfc-style:/rails/app/javascript/components/campaigns/BlockPreviewModal.vue?type=style&index=0 */
.block-preview-content[data-v-53fd85ba] {
  @apply max-w-full;
}
.block-rendered-content[data-v-53fd85ba] {
  @apply w-full;
}
.block-rendered-content[data-v-53fd85ba] table {
  @apply w-full border-collapse;
  border: 1px solid #d1d5db;
}
.block-rendered-content[data-v-53fd85ba] th {
  @apply bg-gray-100 font-semibold text-left px-4 py-2;
  border: 1px solid #d1d5db;
}
.block-rendered-content[data-v-53fd85ba] td {
  @apply px-4 py-2;
  border: 1px solid #d1d5db;
}
.block-rendered-content[data-v-53fd85ba] p {
  @apply mb-2;
}
.block-rendered-content[data-v-53fd85ba] h1,
.block-rendered-content[data-v-53fd85ba] h2,
.block-rendered-content[data-v-53fd85ba] h3 {
  @apply font-bold mb-2;
}
.block-rendered-content[data-v-53fd85ba] ul,
.block-rendered-content[data-v-53fd85ba] ol {
  @apply ml-4 mb-2;
}
.block-rendered-content[data-v-53fd85ba] li {
  @apply mb-1;
}
.block-rendered-content[data-v-53fd85ba] strong {
  @apply font-bold;
}
.block-rendered-content[data-v-53fd85ba] em {
  @apply italic;
}
.block-rendered-content[data-v-53fd85ba] u {
  @apply underline;
}
.tabs-boxed .tab-active[data-v-53fd85ba] {
  @apply bg-primary text-primary-content;
}
.carousel-center[data-v-53fd85ba] {
  @apply max-w-full;
}
.carousel-item[data-v-53fd85ba] {
  @apply flex-shrink-0;
}
.stats[data-v-53fd85ba] {
  @apply shadow-sm border border-base-200;
}
.table th[data-v-53fd85ba] {
  @apply bg-base-200 font-semibold;
}
.table td[data-v-53fd85ba] {
  @apply border-b border-base-200;
}
.alert[data-v-53fd85ba] {
  @apply rounded-lg;
}
.alert-warning[data-v-53fd85ba] {
  @apply bg-warning/10 border border-warning/20;
}
@media (max-width: 768px) {
  .stats-horizontal[data-v-53fd85ba] {
    @apply stats-vertical;
  }
  .carousel-center[data-v-53fd85ba] {
    @apply p-2;
  }
  .carousel-item[data-v-53fd85ba] {
    @apply w-72;
  }
  .table[data-v-53fd85ba] {
    @apply text-xs;
  }
  .tabs[data-v-53fd85ba] {
    @apply flex-wrap;
  }
  .tab[data-v-53fd85ba] {
    @apply flex-1 min-w-0;
  }
}
.loading[data-v-53fd85ba] {
  @apply text-primary;
}
.btn[data-v-53fd85ba]:hover {
  @apply transform scale-105;
}
@media (max-height: 600px) {
  .block-preview-content[data-v-53fd85ba] {
    @apply max-h-96 overflow-y-auto;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/OfferBlockBuilder.vue?type=style&index=0 */
.offer-block-builder[data-v-9694e808] {
  @apply space-y-6;
}
.offer-block-item[data-v-9694e808] {
  @apply transition-all duration-200;
}
.offer-block-item[data-v-9694e808]:hover {
  @apply shadow-md;
}
.drag-handle[data-v-9694e808]:hover {
  @apply text-primary;
}
.ghost[data-v-9694e808] {
  @apply opacity-50;
}
.block-preview[data-v-9694e808] {
  max-height: 200px;
  overflow-y: auto;
}
.block-preview table[data-v-9694e808] {
  @apply table table-compact w-full;
}
.block-preview th[data-v-9694e808],
.block-preview td[data-v-9694e808] {
  @apply text-xs;
}
.expand-enter-active[data-v-9694e808],
.expand-leave-active[data-v-9694e808] {
  transition: all 0.3s ease;
}
.expand-enter-from[data-v-9694e808],
.expand-leave-to[data-v-9694e808] {
  opacity: 0;
  transform: translateY(-10px);
}
.sortable-ghost[data-v-9694e808] {
  @apply opacity-50;
}
.sortable-chosen[data-v-9694e808] {
  @apply ring-2 ring-primary ring-opacity-50;
}
.badge[data-v-9694e808] {
  @apply transition-all duration-200;
}
.btn-ghost[data-v-9694e808]:hover {
  @apply bg-base-200;
}
@media (max-width: 768px) {
  .offer-block-item[data-v-9694e808] {
    @apply text-sm;
  }
  .dropdown-content[data-v-9694e808] {
    @apply w-40;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/OfferBlocksStep.vue?type=style&index=0 */
.offer-blocks-step[data-v-aa581194] {
  @apply max-w-6xl mx-auto;
}
.step-header[data-v-aa581194] {
  @apply text-center;
}
.stats[data-v-aa581194] {
  @apply bg-white border border-base-200;
}
.stat-value.text-sm[data-v-aa581194] {
  @apply text-2xl;
}
.card[data-v-aa581194] {
  @apply transition-all duration-200 hover:shadow-md;
}
.card-body[data-v-aa581194] {
  @apply p-6;
}
.progress-indicator .stat-value[data-v-aa581194] {
  @apply text-lg font-bold;
}
.text-success[data-v-aa581194] {
  @apply text-green-600;
}
.text-error[data-v-aa581194] {
  @apply text-red-600;
}
.text-warning[data-v-aa581194] {
  @apply text-yellow-600;
}
.alert[data-v-aa581194] {
  @apply rounded-lg;
}
.alert-info[data-v-aa581194] {
  @apply bg-info/10 border border-info/20;
}
.alert-error[data-v-aa581194] {
  @apply bg-error/10 border border-error/20;
}
.alert-warning[data-v-aa581194] {
  @apply bg-warning/10 border border-warning/20;
}
.step-tips[data-v-aa581194] {
  @apply max-w-4xl mx-auto;
}
.btn[data-v-aa581194] {
  @apply transition-all duration-200;
}
.btn[data-v-aa581194]:hover {
  @apply transform scale-105;
}
@media (max-width: 768px) {
  .stats-horizontal[data-v-aa581194] {
    @apply stats-vertical;
  }
  .grid-cols-2[data-v-aa581194] {
    @apply grid-cols-1;
  }
  .offer-blocks-step[data-v-aa581194] {
    @apply px-4;
  }
  .step-header h2[data-v-aa581194] {
    @apply text-xl;
  }
  .card-body[data-v-aa581194] {
    @apply p-4;
  }
}
.loading[data-v-aa581194] {
  @apply text-primary;
}
svg[data-v-aa581194] {
  @apply flex-shrink-0;
}
.feature-overview .card .p-2[data-v-aa581194] {
  @apply transition-all duration-200;
}
.feature-overview .card:hover .p-2[data-v-aa581194] {
  @apply scale-110;
}
.alert ul[data-v-aa581194] {
  @apply space-y-1;
}
.stat-desc[data-v-aa581194] {
  @apply text-xs opacity-70;
}
.card[data-v-aa581194]:hover {
  @apply border-primary/20;
}

/* sfc-style:/rails/app/javascript/components/campaigns/ColumnSelectorModal.vue?type=style&index=0 */
.modal-box[data-v-5e22178b] {
  @apply max-h-screen;
}
.search-controls[data-v-5e22178b] {
  @apply bg-base-50 p-4 rounded-lg;
}
.selection-stats[data-v-5e22178b] {
  @apply transition-all duration-300;
}
.column-categories[data-v-5e22178b] {
  @apply border border-base-200 rounded-lg overflow-hidden;
}
.tabs[data-v-5e22178b] {
  @apply mb-0 bg-base-50;
}
.tab[data-v-5e22178b] {
  @apply text-sm font-medium transition-all duration-200;
}
.tab-active[data-v-5e22178b] {
  @apply text-primary bg-base-100 border-b-primary;
}
.column-lists[data-v-5e22178b] {
  @apply p-4;
}
.category-section[data-v-5e22178b] {
  @apply space-y-4;
}
.columns-grid[data-v-5e22178b] {
  @apply grid grid-cols-1 md:grid-cols-2 gap-3;
}
.column-card[data-v-5e22178b] {
  @apply p-3 bg-base-100 rounded-lg border border-base-200 cursor-pointer transition-all duration-200;
}
.column-card[data-v-5e22178b]:hover {
  @apply border-primary/30 shadow-sm;
}
.column-card.selected[data-v-5e22178b] {
  @apply border-primary bg-primary/5;
}
.empty-category[data-v-5e22178b] {
  @apply text-center py-12 text-base-content/60;
}
.badge[data-v-5e22178b] {
  @apply transition-all duration-200;
}
.badge-outline[data-v-5e22178b] {
  @apply border-base-300;
}
.btn[data-v-5e22178b] {
  @apply transition-all duration-200;
}
.btn[data-v-5e22178b]:hover:not(:disabled) {
  @apply transform scale-105;
}
.checkbox[data-v-5e22178b] {
  @apply transition-all duration-200;
}
.checkbox[data-v-5e22178b]:checked {
  @apply bg-primary border-primary;
}
.input-group-text[data-v-5e22178b] {
  @apply bg-base-200 border-base-300;
}
.input[data-v-5e22178b] {
  @apply transition-all duration-200;
}
.input[data-v-5e22178b]:focus {
  @apply border-primary ring-1 ring-primary;
}
.select[data-v-5e22178b] {
  @apply transition-all duration-200;
}
.select[data-v-5e22178b]:focus {
  @apply border-primary ring-1 ring-primary;
}
.column-lists[data-v-5e22178b]::-webkit-scrollbar {
  @apply w-2;
}
.column-lists[data-v-5e22178b]::-webkit-scrollbar-track {
  @apply bg-base-100 rounded-full;
}
.column-lists[data-v-5e22178b]::-webkit-scrollbar-thumb {
  @apply bg-base-300 rounded-full;
}
.column-lists[data-v-5e22178b]::-webkit-scrollbar-thumb:hover {
  @apply bg-base-400;
}
@keyframes fadeInUp-5e22178b {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.column-card[data-v-5e22178b] {
  animation: fadeInUp-5e22178b 0.2s ease-out;
}
@media (max-width: 768px) {
  .modal-box[data-v-5e22178b] {
    @apply max-w-full mx-2;
  }
  .columns-grid[data-v-5e22178b] {
    @apply grid-cols-1;
  }
  .flex.flex-col.md\\[data-v-5e22178b]:flex-row {
    @apply space-y-4;
  }
}
.tab-active[data-v-5e22178b]::after {
  content: "";
  @apply absolute bottom-0 left-0 right-0 h-0.5 bg-primary;
}
.column-card.selected[data-v-5e22178b] {
  animation: selectPulse-5e22178b 0.3s ease-out;
}
@keyframes selectPulse-5e22178b {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.02);
  }
  100% {
    transform: scale(1);
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/ColumnConfigurationModal.vue?type=style&index=0 */
.modal-box[data-v-92001482] {
  @apply max-h-screen overflow-y-auto;
}
.section[data-v-92001482] {
  @apply p-4 bg-base-50 rounded-lg border border-base-200;
}
.form-control[data-v-92001482] {
  @apply space-y-1;
}
.label-text[data-v-92001482] {
  @apply text-sm font-medium text-base-content;
}
.input[data-v-92001482],
.select[data-v-92001482],
.textarea[data-v-92001482] {
  @apply transition-all duration-200;
}
.input[data-v-92001482]:focus,
.select[data-v-92001482]:focus,
.textarea[data-v-92001482]:focus {
  @apply border-primary ring-1 ring-primary;
}
.preview-container[data-v-92001482] {
  @apply border-2 border-dashed border-base-300;
}
.table[data-v-92001482] {
  @apply border-collapse;
}
.table th[data-v-92001482],
.table td[data-v-92001482] {
  @apply border border-base-300 px-2 py-1;
}
.table th[data-v-92001482] {
  @apply bg-base-200 font-medium;
}
.alert[data-v-92001482] {
  @apply rounded-lg;
}
.alert-info[data-v-92001482] {
  @apply bg-info/10 border border-info/20;
}
.alert-error[data-v-92001482] {
  @apply bg-error/10 border border-error/20;
}
.btn[data-v-92001482] {
  @apply transition-all duration-200;
}
.btn[data-v-92001482]:hover:not(:disabled) {
  @apply transform scale-105;
}
.checkbox[data-v-92001482] {
  @apply transition-all duration-200;
}
.checkbox[data-v-92001482]:checked {
  @apply bg-primary border-primary;
}
code[data-v-92001482] {
  @apply bg-base-200 text-primary px-1 py-0.5 rounded text-xs;
}
.input[data-v-92001482]:invalid,
.select[data-v-92001482]:invalid,
.textarea[data-v-92001482]:invalid {
  @apply border-error;
}
.preview-container .table th[data-v-92001482] {
  @apply text-center text-xs font-medium bg-primary/10;
}
.preview-container .table td[data-v-92001482] {
  @apply text-sm;
}
@media (max-width: 768px) {
  .modal-box[data-v-92001482] {
    @apply max-w-full mx-2;
  }
  .grid-cols-1.md\\[data-v-92001482]:grid-cols-2 {
    @apply grid-cols-1;
  }
  .form-control.md\\[data-v-92001482]:col-span-2 {
    @apply col-span-1;
  }
}
.section h4[data-v-92001482] {
  @apply text-base font-semibold text-base-content border-b border-base-200 pb-2 mb-4;
}
.btn-ghost.btn-xs[data-v-92001482] {
  @apply text-info hover:text-info-content hover:bg-info;
}
.textarea[data-v-92001482] {
  @apply font-mono text-sm;
}
input[type=number][data-v-92001482] {
  @apply text-center;
}
@keyframes fadeIn-92001482 {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.preview-container[data-v-92001482] {
  animation: fadeIn-92001482 0.3s ease-out;
}

/* sfc-style:/rails/app/javascript/components/campaigns/SpreadsheetColumnConfiguration.vue?type=style&index=0 */
.column-configuration[data-v-e004228d] {
  @apply space-y-6;
}
.config-header[data-v-e004228d] {
  @apply border-b border-base-200 pb-4;
}
.empty-state[data-v-e004228d] {
  @apply transition-all duration-300;
}
.empty-state[data-v-e004228d]:hover {
  @apply border-primary/30 bg-primary/5;
}
.columns-container[data-v-e004228d] {
  @apply space-y-3;
}
.column-item[data-v-e004228d] {
  @apply flex items-start gap-4 p-4 bg-base-100 rounded-lg border border-base-200 transition-all duration-200;
}
.column-item[data-v-e004228d]:hover {
  @apply border-primary/30 shadow-sm;
}
.sr-only[data-v-e004228d] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.column-item[data-v-e004228d]:focus-within,
.column-item[data-v-e004228d]:focus {
  @apply outline-none ring-2 ring-primary ring-offset-2 ring-offset-base-100 border-primary/50;
}
.drag-handle[data-v-e004228d]:focus {
  @apply outline-none ring-2 ring-primary ring-offset-2 ring-offset-base-100 bg-primary/10;
}
.btn[data-v-e004228d]:focus,
button[data-v-e004228d]:focus {
  @apply outline-none ring-2 ring-primary ring-offset-2 ring-offset-base-100;
}
.checkbox[data-v-e004228d]:focus {
  @apply outline-none ring-2 ring-primary ring-offset-2 ring-offset-base-100;
}
.column-item[tabindex="0"][data-v-e004228d]:focus {
  @apply bg-primary/5;
}
.drag-handle[tabindex="0"][data-v-e004228d]:focus {
  @apply bg-primary/10 rounded;
}
@media (prefers-contrast: high) {
  .column-item[data-v-e004228d]:focus-within,
  .column-item[data-v-e004228d]:focus {
    @apply ring-4 ring-primary ring-offset-4;
  }
  .drag-handle[data-v-e004228d]:focus {
    @apply ring-4 ring-primary ring-offset-4;
  }
  .btn[data-v-e004228d]:focus,
  button[data-v-e004228d]:focus {
    @apply ring-4 ring-primary ring-offset-4;
  }
}
.btn[data-v-e004228d]:disabled,
button[data-v-e004228d]:disabled {
  @apply opacity-50 cursor-not-allowed;
}
.drag-handle[data-v-e004228d]:hover {
  @apply bg-base-200 rounded transition-colors duration-200;
}
.column-actions .btn[data-v-e004228d]:hover {
  @apply scale-105 transition-transform duration-200;
}
.column-item.column-hidden[data-v-e004228d] {
  @apply opacity-60 bg-base-50;
}
.drag-handle[data-v-e004228d] {
  @apply flex items-center justify-center w-6 h-6 text-center cursor-move hover:text-primary transition-colors duration-200;
}
.column-info[data-v-e004228d] {
  @apply flex-1;
}
.column-actions[data-v-e004228d] {
  @apply opacity-100 transition-opacity duration-200;
}
.column-item:hover .column-actions[data-v-e004228d] {
  @apply opacity-100;
}
.column-item:focus-within .column-actions[data-v-e004228d] {
  @apply opacity-100;
}
.column-preview[data-v-e004228d] {
  @apply mt-3 p-3 bg-base-50 rounded;
}
.stat-preview[data-v-e004228d] {
  @apply flex items-center text-xs;
}
.formula-preview[data-v-e004228d] {
  @apply border-t border-base-200 pt-2;
}
.column-stats .stats[data-v-e004228d] {
  @apply bg-base-100;
}
.stat-value[data-v-e004228d] {
  @apply text-lg font-bold;
}
.badge[data-v-e004228d] {
  @apply transition-all duration-200;
}
.btn-ghost[data-v-e004228d]:hover {
  @apply scale-105;
}
.sortable-ghost[data-v-e004228d] {
  @apply opacity-50;
}
.sortable-chosen[data-v-e004228d] {
  @apply ring-2 ring-primary ring-opacity-50;
}
@media (max-width: 768px) {
  .stats-horizontal[data-v-e004228d] {
    @apply stats-vertical;
  }
  .grid-cols-3[data-v-e004228d] {
    @apply grid-cols-1 gap-2;
  }
  .column-item[data-v-e004228d] {
    @apply p-3;
  }
  .flex.items-center.justify-between[data-v-e004228d] {
    @apply flex-col gap-3 items-start;
  }
}
@keyframes fadeInDown-e004228d {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.column-item[data-v-e004228d] {
  animation: fadeInDown-e004228d 0.3s ease-out;
}
.checkbox[data-v-e004228d] {
  @apply transition-all duration-200;
}
.checkbox[data-v-e004228d]:checked {
  @apply bg-primary border-primary;
}
.stats[data-v-e004228d] {
  @apply transition-all duration-300;
}
.stats[data-v-e004228d]:hover {
  @apply shadow-md;
}

/* sfc-style:/rails/app/javascript/components/campaigns/SpreadsheetFormattingConfiguration.vue?type=style&index=0 */
.formatting-configuration[data-v-58fe25ec] {
  @apply space-y-8;
}
.section-header[data-v-58fe25ec] {
  @apply border-b border-base-200 pb-4;
}
.config-section[data-v-58fe25ec] {
  @apply p-6 bg-base-50 rounded-lg border border-base-200;
}
.section-title[data-v-58fe25ec] {
  @apply text-base font-semibold text-base-content mb-4 border-b border-base-200 pb-2;
}
.orientation-selector[data-v-58fe25ec] {
  @apply flex gap-4;
}
.orientation-option[data-v-58fe25ec] {
  @apply flex flex-col items-center cursor-pointer;
}
.orientation-card[data-v-58fe25ec] {
  @apply flex flex-col items-center gap-2 p-3 border-2 border-base-200 rounded-lg transition-all duration-200;
}
.orientation-option input:checked + .orientation-card[data-v-58fe25ec] {
  @apply border-primary bg-primary/5;
}
.orientation-preview[data-v-58fe25ec] {
  @apply bg-white border border-base-300 rounded shadow-sm;
}
.orientation-preview.portrait[data-v-58fe25ec] {
  @apply w-12 h-16;
}
.orientation-preview.landscape[data-v-58fe25ec] {
  @apply w-16 h-12;
}
.page-content[data-v-58fe25ec] {
  @apply w-full h-full bg-base-100 p-1;
}
.orientation-label[data-v-58fe25ec] {
  @apply text-sm font-medium;
}
.margins-config[data-v-58fe25ec] {
  @apply flex flex-col lg:flex-row gap-6;
}
.margin-preview[data-v-58fe25ec] {
  @apply flex-1;
}
.page-preview[data-v-58fe25ec] {
  @apply bg-white border-2 border-base-300 rounded-lg p-4 max-w-xs mx-auto;
}
.margin[data-v-58fe25ec] {
  @apply bg-primary/20 border border-primary/30 flex items-center justify-center text-xs text-primary font-medium relative;
}
.margin.top[data-v-58fe25ec],
.margin.bottom[data-v-58fe25ec] {
  @apply w-full;
}
.margin.left[data-v-58fe25ec],
.margin.right[data-v-58fe25ec] {
  @apply h-full;
}
.content-area[data-v-58fe25ec] {
  @apply flex;
}
.content[data-v-58fe25ec] {
  @apply flex-1 bg-base-50 border border-base-200 min-h-24 flex items-center justify-center;
}
.content-placeholder[data-v-58fe25ec] {
  @apply text-xs text-base-content/60;
}
.margin-label[data-v-58fe25ec] {
  @apply absolute inset-0 flex items-center justify-center text-xs;
}
.margin-label.vertical[data-v-58fe25ec] {
  @apply writing-vertical;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
.margin-controls[data-v-58fe25ec] {
  @apply flex-1 min-w-0;
}
.layout-preview[data-v-58fe25ec] {
  @apply bg-base-100 p-4 rounded-lg border-2 border-dashed border-base-300;
}
.preview-container[data-v-58fe25ec] {
  @apply max-w-lg mx-auto;
}
.page-mockup[data-v-58fe25ec] {
  @apply bg-white border border-base-300 rounded-lg shadow-sm p-4 transition-all duration-300;
}
.page-mockup.landscape[data-v-58fe25ec] {
  @apply max-w-2xl;
}
.page-header[data-v-58fe25ec] {
  @apply flex justify-between items-center text-xs text-base-content/60 mb-3 pb-2 border-b border-base-200;
}
.spreadsheet-preview[data-v-58fe25ec] {
  @apply space-y-1;
}
.header-row[data-v-58fe25ec] {
  @apply flex bg-base-200 rounded;
}
.header-row.frozen[data-v-58fe25ec] {
  @apply border-2 border-primary/30 bg-primary/5;
}
.data-row[data-v-58fe25ec] {
  @apply flex;
}
.cell[data-v-58fe25ec] {
  @apply flex-1 p-2 text-xs border-r border-base-200 last:border-r-0;
}
.header-row .cell[data-v-58fe25ec] {
  @apply font-medium text-base-content;
}
.data-row .cell[data-v-58fe25ec] {
  @apply text-base-content/70;
}
.print-indicator[data-v-58fe25ec] {
  @apply text-xs text-info mt-3 pt-2 border-t border-base-200;
}
.form-control[data-v-58fe25ec] {
  @apply space-y-1;
}
.input[data-v-58fe25ec],
.select[data-v-58fe25ec] {
  @apply transition-all duration-200;
}
.input[data-v-58fe25ec]:focus,
.select[data-v-58fe25ec]:focus {
  @apply border-primary ring-1 ring-primary;
}
.range[data-v-58fe25ec] {
  @apply transition-all duration-200;
}
.checkbox[data-v-58fe25ec] {
  @apply transition-all duration-200;
}
.checkbox[data-v-58fe25ec]:checked {
  @apply bg-primary border-primary;
}
.radio[data-v-58fe25ec] {
  @apply transition-all duration-200;
}
.radio[data-v-58fe25ec]:checked {
  @apply bg-primary border-primary;
}
.margin-presets .btn[data-v-58fe25ec] {
  @apply transition-all duration-200;
}
.margin-presets .btn[data-v-58fe25ec]:hover {
  @apply scale-105;
}
@media (max-width: 768px) {
  .orientation-selector[data-v-58fe25ec] {
    @apply flex-col gap-2;
  }
  .margins-config[data-v-58fe25ec] {
    @apply flex-col;
  }
  .grid-cols-1.md\\[data-v-58fe25ec]:grid-cols-2 {
    @apply grid-cols-1;
  }
  .page-mockup[data-v-58fe25ec] {
    @apply p-2;
  }
  .cell[data-v-58fe25ec] {
    @apply p-1 text-xs;
  }
}
@keyframes previewUpdate-58fe25ec {
  0% {
    opacity: 0.7;
  }
  100% {
    opacity: 1;
  }
}
.page-mockup[data-v-58fe25ec] {
  animation: previewUpdate-58fe25ec 0.3s ease-out;
}
.input-group .btn[data-v-58fe25ec] {
  @apply border-l-0;
}
.input-group .btn.btn-active[data-v-58fe25ec] {
  @apply bg-primary text-primary-content border-primary;
}
.data-type-section[data-v-58fe25ec] {
  @apply space-y-4 p-4 bg-base-100 rounded-lg border border-base-200;
}
.subsection-title[data-v-58fe25ec] {
  @apply text-sm font-semibold text-base-content mb-3 border-b border-base-200 pb-2;
}
.format-option[data-v-58fe25ec] {
  @apply flex items-center gap-2 cursor-pointer p-2 rounded hover:bg-base-100 transition-colors;
}
.format-label[data-v-58fe25ec] {
  @apply text-sm font-mono;
}
.formatting-preview-grid[data-v-58fe25ec] {
  @apply grid grid-cols-2 md:grid-cols-4 gap-4;
}
.preview-card[data-v-58fe25ec] {
  @apply p-4 bg-base-100 rounded-lg border border-base-200 text-center;
}
.preview-label[data-v-58fe25ec] {
  @apply text-xs text-base-content/60 mb-2 font-medium;
}
.preview-value[data-v-58fe25ec] {
  @apply text-sm font-mono font-semibold text-base-content;
}
.format-option:hover .format-label[data-v-58fe25ec] {
  @apply text-primary;
}
.format-option input:checked + .format-label[data-v-58fe25ec] {
  @apply text-primary font-semibold;
}
.input-group .btn[data-v-58fe25ec] {
  @apply border-l-0;
}
.input-group .btn.btn-active[data-v-58fe25ec] {
  @apply bg-primary text-primary-content border-primary;
}
@media (max-width: 768px) {
  .formatting-preview-grid[data-v-58fe25ec] {
    @apply grid-cols-2;
  }
  .data-type-section .grid-cols-1.md\\[data-v-58fe25ec]:grid-cols-2 {
    @apply grid-cols-1;
  }
}
.label-text[data-v-58fe25ec] {
  @apply text-sm font-medium text-base-content;
}
.label-text-alt[data-v-58fe25ec] {
  @apply text-xs text-base-content/60;
}

/* sfc-style:/rails/app/javascript/components/campaigns/SpreadsheetStylingConfiguration.vue?type=style&index=0 */
.styling-configuration[data-v-c9cdcab1] {
  @apply space-y-8;
}
.section-header[data-v-c9cdcab1] {
  @apply border-b border-base-200 pb-4;
}
.config-section[data-v-c9cdcab1] {
  @apply p-6 bg-base-50 rounded-lg border border-base-200;
}
.section-title[data-v-c9cdcab1] {
  @apply text-base font-semibold text-base-content mb-4 border-b border-base-200 pb-2;
}
.preset-gallery .card[data-v-c9cdcab1]:hover {
  @apply transform scale-[1.02];
}
.preview-rows[data-v-c9cdcab1] {
  @apply space-y-0;
}
.color-input-group[data-v-c9cdcab1] {
  @apply flex items-center gap-2;
}
.color-picker[data-v-c9cdcab1] {
  @apply w-10 h-10 rounded border border-base-300 cursor-pointer;
}
.color-picker[data-v-c9cdcab1]:disabled {
  @apply opacity-50 cursor-not-allowed;
}
.form-control[data-v-c9cdcab1] {
  @apply space-y-1;
}
.input[data-v-c9cdcab1],
.select[data-v-c9cdcab1] {
  @apply transition-all duration-200;
}
.input[data-v-c9cdcab1]:focus,
.select[data-v-c9cdcab1]:focus {
  @apply border-primary ring-1 ring-primary;
}
.input[data-v-c9cdcab1]:disabled,
.select[data-v-c9cdcab1]:disabled {
  @apply opacity-50 cursor-not-allowed;
}
.style-preview[data-v-c9cdcab1] {
  @apply bg-base-100 p-4 rounded-lg border-2 border-dashed border-base-300;
}
.preview-header-cell[data-v-c9cdcab1],
.preview-data-cell[data-v-c9cdcab1] {
  padding: 8px !important;
  font-size: 14px !important;
}
.preview-header-cell[data-v-c9cdcab1] {
  font-weight: inherit !important;
  color: inherit !important;
  background-color: inherit !important;
}
.preview-data-cell[data-v-c9cdcab1] {
  color: inherit !important;
  background-color: inherit !important;
}
.color-palette[data-v-c9cdcab1] {
  @apply grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6;
}
.palette-section[data-v-c9cdcab1] {
  @apply space-y-2;
}
.palette-name[data-v-c9cdcab1] {
  @apply text-sm font-medium text-base-content;
}
.color-swatches[data-v-c9cdcab1] {
  @apply flex flex-wrap gap-1;
}
.color-swatch[data-v-c9cdcab1] {
  @apply w-8 h-8 rounded border border-base-300 cursor-pointer transition-all duration-200;
}
.color-swatch[data-v-c9cdcab1]:hover {
  @apply scale-110 ring-2 ring-primary ring-opacity-50;
}
.range[data-v-c9cdcab1] {
  @apply transition-all duration-200;
}
.checkbox[data-v-c9cdcab1] {
  @apply transition-all duration-200;
}
.checkbox[data-v-c9cdcab1]:checked {
  @apply bg-primary border-primary;
}
@media (max-width: 768px) {
  .preset-gallery[data-v-c9cdcab1] {
    @apply grid-cols-1 gap-3;
  }
  .preset-gallery .card-body[data-v-c9cdcab1] {
    @apply p-3;
  }
  .color-palette[data-v-c9cdcab1] {
    @apply grid-cols-1;
  }
  .grid-cols-1.md\\:grid-cols-2.lg\\[data-v-c9cdcab1]:grid-cols-3 {
    @apply grid-cols-1;
  }
  .grid-cols-1.md\\[data-v-c9cdcab1]:grid-cols-2 {
    @apply grid-cols-1;
  }
  .color-input-group[data-v-c9cdcab1] {
    @apply flex-col gap-2 items-stretch;
  }
  .color-picker[data-v-c9cdcab1] {
    @apply w-full h-12;
  }
}
@keyframes styleUpdate-c9cdcab1 {
  0% {
    opacity: 0.7;
  }
  100% {
    opacity: 1;
  }
}
.style-preview table[data-v-c9cdcab1] {
  animation: styleUpdate-c9cdcab1 0.3s ease-out;
}
.btn[data-v-c9cdcab1] {
  @apply transition-all duration-200;
}
.btn[data-v-c9cdcab1]:hover:not(:disabled) {
  @apply scale-105;
}
.label-text[data-v-c9cdcab1] {
  @apply text-sm font-medium text-base-content;
}
.input[data-v-c9cdcab1]:invalid {
  @apply border-error;
}
.preset-card:hover .preset-preview[data-v-c9cdcab1] {
  @apply shadow-sm;
}
.color-swatch[data-v-c9cdcab1]:active {
  @apply scale-95;
}
.config-section[data-v-c9cdcab1] {
  @apply transition-all duration-300;
}
.config-section[data-v-c9cdcab1]:hover {
  @apply shadow-sm;
}

/* sfc-style:/rails/app/javascript/components/campaigns/SpreadsheetAdvancedConfiguration.vue?type=style&index=0 */
.advanced-configuration[data-v-bbda9634] {
  @apply space-y-8;
}
.section-header[data-v-bbda9634] {
  @apply border-b border-base-200 pb-4;
}
.config-section[data-v-bbda9634] {
  @apply p-6 bg-base-50 rounded-lg border border-base-200;
}
.section-title[data-v-bbda9634] {
  @apply text-base font-semibold text-base-content mb-4 border-b border-base-200 pb-2;
}
.sort-rule[data-v-bbda9634],
.filter-rule[data-v-bbda9634] {
  @apply p-4 bg-base-100 rounded-lg border border-base-200;
}
.rule-header[data-v-bbda9634] {
  @apply flex items-center gap-3 mb-3 pb-2 border-b border-base-200;
}
.rule-number[data-v-bbda9634] {
  @apply w-6 h-6 bg-primary text-primary-content rounded-full flex items-center justify-center text-xs font-bold;
}
.rule-title[data-v-bbda9634] {
  @apply font-medium text-base-content flex-1;
}
.rule-config[data-v-bbda9634] {
  @apply space-y-4;
}
.direction-selector[data-v-bbda9634] {
  @apply flex gap-2;
}
.direction-option[data-v-bbda9634] {
  @apply flex-1 cursor-pointer;
}
.direction-content[data-v-bbda9634] {
  @apply flex items-center gap-2 p-2 border-2 border-base-200 rounded-lg transition-all duration-200 text-center justify-center;
}
.direction-option input:checked + .direction-content[data-v-bbda9634] {
  @apply border-primary bg-primary/5;
}
.direction-content i[data-v-bbda9634] {
  @apply text-sm;
}
.direction-content span[data-v-bbda9634] {
  @apply text-xs font-medium;
}
.no-sort-rules[data-v-bbda9634],
.no-filter-rules[data-v-bbda9634] {
  @apply bg-base-100 rounded-lg border-2 border-dashed border-base-300;
}
.form-control[data-v-bbda9634] {
  @apply space-y-1;
}
.input[data-v-bbda9634],
.select[data-v-bbda9634] {
  @apply transition-all duration-200;
}
.input[data-v-bbda9634]:focus,
.select[data-v-bbda9634]:focus {
  @apply border-primary ring-1 ring-primary;
}
.stats[data-v-bbda9634] {
  @apply bg-base-100;
}
.stat-value[data-v-bbda9634] {
  @apply text-lg font-bold;
}
.alert[data-v-bbda9634] {
  @apply rounded-lg;
}
.alert-info[data-v-bbda9634] {
  @apply bg-info/10 border border-info/20;
}
.alert-warning[data-v-bbda9634] {
  @apply bg-warning/10 border border-warning/20;
}
.alert-error[data-v-bbda9634] {
  @apply bg-error/10 border border-error/20;
}
.checkbox[data-v-bbda9634] {
  @apply transition-all duration-200;
}
.checkbox[data-v-bbda9634]:checked {
  @apply bg-primary border-primary;
}
.radio[data-v-bbda9634] {
  @apply transition-all duration-200;
}
.radio[data-v-bbda9634]:checked {
  @apply bg-primary border-primary;
}
.range[data-v-bbda9634] {
  @apply transition-all duration-200;
}
.btn[data-v-bbda9634] {
  @apply transition-all duration-200;
}
.btn[data-v-bbda9634]:hover:not(:disabled) {
  @apply transform scale-105;
}
.badge[data-v-bbda9634] {
  @apply transition-all duration-200;
}
.input-group .btn[data-v-bbda9634] {
  @apply border-l-0;
}
.input-group .btn.btn-active[data-v-bbda9634] {
  @apply bg-primary text-primary-content border-primary;
}
@media (max-width: 768px) {
  .stats-horizontal[data-v-bbda9634] {
    @apply stats-vertical;
  }
  .grid-cols-1.md\\[data-v-bbda9634]:grid-cols-3 {
    @apply grid-cols-1;
  }
  .grid-cols-1.md\\[data-v-bbda9634]:grid-cols-4 {
    @apply grid-cols-1;
  }
  .grid-cols-1.md\\[data-v-bbda9634]:grid-cols-2 {
    @apply grid-cols-1;
  }
  .direction-selector[data-v-bbda9634] {
    @apply flex-col;
  }
}
@keyframes slideIn-bbda9634 {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.sort-rule[data-v-bbda9634],
.filter-rule[data-v-bbda9634] {
  animation: slideIn-bbda9634 0.3s ease-out;
}
.impact-summary[data-v-bbda9634] {
  @apply transition-all duration-300;
}
.impact-summary[data-v-bbda9634]:hover {
  @apply shadow-sm;
}
.label-text[data-v-bbda9634] {
  @apply text-sm font-medium text-base-content;
}
.label-text-alt[data-v-bbda9634] {
  @apply text-xs text-base-content/60;
}
.alert-error[data-v-bbda9634] {
  animation: pulse-bbda9634 2s infinite;
}
@keyframes pulse-bbda9634 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/SpreadsheetPreviewModal.vue?type=style&index=0 */
.modal-box[data-v-ea216164] {
  @apply max-h-screen overflow-y-auto;
}
.preview-controls[data-v-ea216164] {
  @apply bg-base-50 p-4 rounded-lg border border-base-200;
}
.sr-only[data-v-ea216164] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.modal-box[data-v-ea216164]:focus-within {
  @apply outline-none;
}
.btn[data-v-ea216164]:focus,
button[data-v-ea216164]:focus {
  @apply outline-none ring-2 ring-primary ring-offset-2 ring-offset-base-100;
}
.select[data-v-ea216164]:focus,
select[data-v-ea216164]:focus {
  @apply outline-none ring-2 ring-primary ring-offset-2 ring-offset-base-100;
}
@media (prefers-contrast: high) {
  .btn[data-v-ea216164]:focus,
  button[data-v-ea216164]:focus {
    @apply ring-4 ring-primary ring-offset-4;
  }
  .select[data-v-ea216164]:focus,
  select[data-v-ea216164]:focus {
    @apply ring-4 ring-primary ring-offset-4;
  }
}
.modal[aria-modal=true][data-v-ea216164] {
  @apply pointer-events-auto;
}
.loading-state[role=status][data-v-ea216164] {
  @apply transition-opacity duration-300;
}
.preview-meta[data-v-ea216164] {
  @apply transition-all duration-300;
}
.stats[data-v-ea216164] {
  @apply bg-base-100;
}
.stat-value[data-v-ea216164] {
  @apply font-bold;
}
.preview-table-container[data-v-ea216164] {
  @apply bg-base-100 border border-base-200 rounded-lg overflow-hidden;
}
.preview-table[data-v-ea216164] {
  @apply w-full table-fixed;
}
.header-cell[data-v-ea216164] {
  @apply p-3 text-left border-r border-inherit last:border-r-0 sticky top-0 z-10;
}
.header-content[data-v-ea216164] {
  @apply flex flex-col gap-1;
}
.header-text[data-v-ea216164] {
  @apply font-medium truncate;
}
.header-type[data-v-ea216164] {
  @apply self-start;
}
.data-cell[data-v-ea216164] {
  @apply p-3 border-r border-base-200 last:border-r-0 border-b border-base-200;
}
.data-row:last-child .data-cell[data-v-ea216164] {
  @apply border-b-0;
}
.cell-content[data-v-ea216164] {
  @apply truncate;
}
.alternate-row[data-v-ea216164] {
}
.table-footer[data-v-ea216164] {
  @apply border-t border-base-200 bg-base-50;
}
.config-summary[data-v-ea216164] {
  @apply p-4 bg-base-50 rounded-lg border border-base-200;
}
.config-item[data-v-ea216164] {
  @apply flex items-center gap-2;
}
.config-label[data-v-ea216164] {
  @apply text-base-content/70 font-medium;
}
.config-value[data-v-ea216164] {
  @apply text-base-content;
}
.loading-state[data-v-ea216164],
.error-state[data-v-ea216164] {
  @apply py-12;
}
.alert[data-v-ea216164] {
  @apply rounded-lg;
}
.alert-warning[data-v-ea216164] {
  @apply bg-warning/10 border border-warning/20;
}
.alert-error[data-v-ea216164] {
  @apply bg-error/10 border border-error/20;
}
.form-control[data-v-ea216164] {
  @apply space-y-1;
}
.select[data-v-ea216164] {
  @apply transition-all duration-200;
}
.select[data-v-ea216164]:focus {
  @apply border-primary ring-1 ring-primary;
}
.btn[data-v-ea216164] {
  @apply transition-all duration-200;
}
.btn[data-v-ea216164]:hover:not(:disabled) {
  @apply transform scale-105;
}
.badge[data-v-ea216164] {
  @apply transition-all duration-200;
}
@media (max-width: 768px) {
  .modal-box[data-v-ea216164] {
    @apply max-w-full mx-2;
  }
  .stats-horizontal[data-v-ea216164] {
    @apply stats-vertical;
  }
  .grid-cols-2.md\\[data-v-ea216164]:grid-cols-4 {
    @apply grid-cols-1;
  }
  .preview-table[data-v-ea216164] {
    @apply table-auto;
  }
  .header-cell[data-v-ea216164],
  .data-cell[data-v-ea216164] {
    @apply p-2 text-xs;
  }
  .flex.items-center.justify-between.flex-wrap[data-v-ea216164] {
    @apply flex-col gap-4 items-stretch;
  }
}
.preview-table-container[data-v-ea216164]::-webkit-scrollbar {
  @apply h-2;
}
.preview-table-container[data-v-ea216164]::-webkit-scrollbar-track {
  @apply bg-base-100;
}
.preview-table-container[data-v-ea216164]::-webkit-scrollbar-thumb {
  @apply bg-base-300 rounded-full;
}
.preview-table-container[data-v-ea216164]::-webkit-scrollbar-thumb:hover {
  @apply bg-base-400;
}
.preview-table[data-v-ea216164] {
  border-collapse: collapse;
}
.text-warning[data-v-ea216164] {
  animation: warningPulse-ea216164 2s infinite;
}
@keyframes warningPulse-ea216164 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
}
.text-success[data-v-ea216164] {
  @apply text-green-600;
}
@keyframes fadeInUp-ea216164 {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.preview-content[data-v-ea216164] {
  animation: fadeInUp-ea216164 0.4s ease-out;
}
.header-cell[data-v-ea216164] {
  position: sticky;
  top: 0;
  z-index: 10;
}
.data-cell[data-v-ea216164]:hover {
  @apply bg-base-50 transition-colors duration-200;
}
.loading[data-v-ea216164] {
  @apply text-primary;
}

/* sfc-style:/rails/app/javascript/components/campaigns/SpreadsheetAttachmentBuilder.vue?type=style&index=0 */
.btn-disabled[data-v-77f7d6ea] {
  @apply opacity-50 cursor-not-allowed;
}
.btn-disabled[data-v-77f7d6ea]:hover {
  @apply transform-none scale-100;
}
.btn .loading[data-v-77f7d6ea] {
  @apply mr-2;
}
.btn-success[data-v-77f7d6ea] {
  @apply bg-success text-success-content border-success;
}
.btn-success[data-v-77f7d6ea]:hover {
  @apply bg-success/90;
}
.alert[data-v-77f7d6ea] {
  @apply transition-all duration-300;
}
.alert[data-v-77f7d6ea]:hover {
  @apply shadow-md;
}
.configuration-summary[data-v-77f7d6ea] {
  @apply transition-all duration-200;
}
.configuration-summary[data-v-77f7d6ea]:hover {
  @apply shadow-md;
}
.badge[data-v-77f7d6ea] {
  @apply transition-all duration-200;
}
.badge .loading[data-v-77f7d6ea] {
  @apply mr-1;
}
.flex.items-center.gap-3 .btn[data-v-77f7d6ea],
.flex.items-center.gap-4 .btn[data-v-77f7d6ea] {
  @apply transition-all duration-200;
}
.flex.items-center.gap-3 .btn[data-v-77f7d6ea]:hover,
.flex.items-center.gap-4 .btn[data-v-77f7d6ea]:hover {
  @apply scale-105;
}
.btn-disabled[data-v-77f7d6ea]:hover {
  @apply scale-100 !important;
}
.alert.alert-info[data-v-77f7d6ea] {
  @apply border-l-4 border-l-info;
}
.badge.badge-success[data-v-77f7d6ea] {
  @apply text-white bg-success border-success;
}
.badge.badge-error[data-v-77f7d6ea] {
  @apply text-white bg-error border-error;
}
.badge.badge-warning[data-v-77f7d6ea] {
  @apply text-black bg-warning border-warning;
}
.badge.badge-info[data-v-77f7d6ea] {
  @apply text-white bg-info border-info;
}
.badge.badge-neutral[data-v-77f7d6ea] {
  @apply text-neutral-content bg-neutral border-neutral;
}
.loading.loading-xs[data-v-77f7d6ea] {
  @apply w-4 h-4;
}
.btn i[data-v-77f7d6ea] {
  @apply flex-shrink-0;
}
@media (max-width: 768px) {
  .flex.items-center.gap-3[data-v-77f7d6ea],
  .flex.items-center.gap-4[data-v-77f7d6ea] {
    @apply flex-wrap gap-2;
  }
  .btn-sm[data-v-77f7d6ea] {
    @apply text-xs px-2 py-1;
  }
}
.btn[data-v-77f7d6ea]:focus {
  @apply ring-2 ring-primary ring-offset-2;
}
.btn-disabled[data-v-77f7d6ea]:focus {
  @apply ring-0;
}
.spreadsheet-attachment-builder[data-v-77f7d6ea] {
  @apply max-w-6xl mx-auto;
}

/* sfc-style:/rails/app/javascript/components/campaigns/SpreadsheetAttachmentStep.vue?type=style&index=0 */
.spreadsheet-attachment-step[data-v-0eeb5304] {
  @apply max-w-6xl mx-auto;
}
.sr-only[data-v-0eeb5304] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.btn[data-v-0eeb5304]:focus,
button[data-v-0eeb5304]:focus {
  @apply outline-none ring-2 ring-primary ring-offset-2 ring-offset-base-100;
}
@media (prefers-contrast: high) {
  .btn[data-v-0eeb5304]:focus,
  button[data-v-0eeb5304]:focus {
    @apply ring-4 ring-primary ring-offset-4;
  }
}
.step-header[data-v-0eeb5304] {
  @apply text-center;
}
.stats[data-v-0eeb5304] {
  @apply bg-white border border-base-200;
}
.stat-value.text-sm[data-v-0eeb5304] {
  @apply text-2xl;
}
.card[data-v-0eeb5304] {
  @apply transition-all duration-200 hover:shadow-md;
}
.card-body[data-v-0eeb5304] {
  @apply p-6;
}
.progress-indicator .stat-value[data-v-0eeb5304] {
  @apply text-lg font-bold;
}
.text-success[data-v-0eeb5304] {
  @apply text-green-600;
}
.text-error[data-v-0eeb5304] {
  @apply text-red-600;
}
.text-warning[data-v-0eeb5304] {
  @apply text-yellow-600;
}
.text-info[data-v-0eeb5304] {
  @apply text-blue-600;
}
.alert[data-v-0eeb5304] {
  @apply rounded-lg;
}
.alert-info[data-v-0eeb5304] {
  @apply bg-info/10 border border-info/20;
}
.alert-error[data-v-0eeb5304] {
  @apply bg-error/10 border border-error/20;
}
.navigation-helper[data-v-0eeb5304] {
  @apply transition-all duration-200;
}
.step-tips[data-v-0eeb5304] {
  @apply max-w-4xl mx-auto;
}
.btn[data-v-0eeb5304] {
  @apply transition-all duration-200;
}
.btn[data-v-0eeb5304]:hover {
  @apply transform scale-105;
}
.loading[data-v-0eeb5304] {
  @apply text-primary;
}
.loading-skeleton .animate-pulse[data-v-0eeb5304] > * {
  animation: pulse-0eeb5304 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes pulse-0eeb5304 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: .5;
  }
}
.progress[data-v-0eeb5304] {
  @apply transition-all duration-300;
}
.relative .absolute[data-v-0eeb5304] {
  @apply transition-all duration-200;
}
.backdrop-blur-sm[data-v-0eeb5304] {
  backdrop-filter: blur(4px);
}
.animate-spin[data-v-0eeb5304] {
  animation: spin-0eeb5304 1s linear infinite;
}
@keyframes spin-0eeb5304 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.btn .loading-spinner[data-v-0eeb5304] {
  @apply animate-spin;
}
.progress-primary[data-v-0eeb5304]::-webkit-progress-bar {
  @apply bg-base-200 rounded;
}
.progress-primary[data-v-0eeb5304]::-webkit-progress-value {
  @apply bg-primary rounded transition-all duration-300;
}
.configuration-container[data-v-0eeb5304] {
  @apply transition-opacity duration-300;
}
.configuration-container.loading[data-v-0eeb5304] {
  @apply opacity-50 pointer-events-none;
}
.configuration-container[data-v-0eeb5304] {
  @apply transition-all duration-300;
}
@media (max-width: 768px) {
  .stats-horizontal[data-v-0eeb5304] {
    @apply stats-vertical;
  }
  .grid-cols-1.lg\\[data-v-0eeb5304]:grid-cols-2 {
    @apply grid-cols-1;
  }
  .spreadsheet-attachment-step[data-v-0eeb5304] {
    @apply px-4;
  }
  .step-header h2[data-v-0eeb5304] {
    @apply text-xl;
  }
  .card-body[data-v-0eeb5304] {
    @apply p-4;
  }
  .flex.items-center.justify-between[data-v-0eeb5304] {
    @apply flex-col gap-4 items-start;
  }
}
svg[data-v-0eeb5304] {
  @apply flex-shrink-0;
}
.alert ul[data-v-0eeb5304] {
  @apply space-y-1;
}
.stat-desc[data-v-0eeb5304] {
  @apply text-xs opacity-70;
}
.card[data-v-0eeb5304]:hover {
  @apply border-primary/20;
}
.navigation-helper[data-v-0eeb5304]:hover {
  @apply bg-base-100;
}
.stat-value[data-v-0eeb5304] {
  @apply transition-all duration-300;
}
.loading-spinner[data-v-0eeb5304] {
  @apply mx-auto;
}
.stat-value.text-success[data-v-0eeb5304],
.stat-value.text-error[data-v-0eeb5304],
.stat-value.text-warning[data-v-0eeb5304],
.stat-value.text-info[data-v-0eeb5304] {
  @apply transition-colors duration-200;
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignPreviewEmailContent.vue?type=style&index=0 */
.email-content-preview[data-v-935f38c1] {
  animation: fadeIn-935f38c1 0.3s ease-in-out;
}
@keyframes fadeIn-935f38c1 {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.email-content[data-v-935f38c1] img {
  max-width: 100%;
  height: auto;
}
.email-content[data-v-935f38c1] table {
  width: 100%;
  border-collapse: collapse;
}
.email-content[data-v-935f38c1] table td,
.email-content[data-v-935f38c1] table th {
  padding: 8px;
  border: 1px solid #e5e7eb;
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignPreviewOfferBlocks.vue?type=style&index=0 */
.offer-blocks-preview[data-v-fa70cf33] {
  animation: fadeIn-fa70cf33 0.3s ease-in-out;
}
@keyframes fadeIn-fa70cf33 {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.table[data-v-fa70cf33] {
  font-size: 0.875rem;
}
.table th[data-v-fa70cf33] {
  background-color: hsl(var(--b2));
  font-weight: 600;
}
.table-zebra tbody tr[data-v-fa70cf33]:nth-child(even) {
  background-color: hsl(var(--b3) / 0.3);
}
.prose[data-v-fa70cf33] h1,
.prose[data-v-fa70cf33] h2,
.prose[data-v-fa70cf33] h3,
.prose[data-v-fa70cf33] h4,
.prose[data-v-fa70cf33] h5,
.prose[data-v-fa70cf33] h6 {
  margin-top: 0.5em;
  margin-bottom: 0.25em;
}
.prose[data-v-fa70cf33] p {
  margin-bottom: 0.5em;
}
.prose[data-v-fa70cf33] img {
  max-width: 100%;
  height: auto;
  border-radius: 0.5rem;
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignPreviewSpreadsheet.vue?type=style&index=0 */
.spreadsheet-preview[data-v-b0076a24] {
  animation: fadeIn-b0076a24 0.3s ease-in-out;
}
@keyframes fadeIn-b0076a24 {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.table[data-v-b0076a24] {
  font-size: 0.8rem;
  border-collapse: collapse;
}
.table th[data-v-b0076a24],
.table td[data-v-b0076a24] {
  border: 1px solid #e5e7eb;
  padding: 0.5rem;
  white-space: nowrap;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.table th[data-v-b0076a24] {
  background-color: hsl(var(--b2));
  font-weight: 600;
  position: sticky;
  top: 0;
  z-index: 1;
}
.table tbody tr[data-v-b0076a24]:nth-child(even) {
  background-color: hsl(var(--b3) / 0.2);
}
.table tbody tr[data-v-b0076a24]:hover {
  background-color: hsl(var(--b3) / 0.4);
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignPreviewVariableAnalysis.vue?type=style&index=0 */
.variable-analysis[data-v-80a1f248] {
  animation: fadeIn-80a1f248 0.3s ease-in-out;
}
@keyframes fadeIn-80a1f248 {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.stat[data-v-80a1f248] {
  padding: 1rem;
}
.stat-title[data-v-80a1f248] {
  font-size: 0.75rem;
  font-weight: 500;
  opacity: 0.8;
}
.stat-value[data-v-80a1f248] {
  font-size: 2rem;
  font-weight: 700;
}
.stat-desc[data-v-80a1f248] {
  font-size: 0.75rem;
  opacity: 0.7;
}
code[data-v-80a1f248] {
  font-family:
    "Monaco",
    "Menlo",
    "Ubuntu Mono",
    monospace;
}

/* sfc-style:/rails/app/javascript/components/campaigns/PreviewStep.vue?type=style&index=0 */
.preview-step[data-v-7a34374b] {
  animation: fadeIn-7a34374b 0.3s ease-in-out;
}
@keyframes fadeIn-7a34374b {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.tabs-boxed .tab[data-v-7a34374b] {
  border-radius: 0.5rem;
  transition: all 0.2s ease;
}
.tabs-boxed .tab[data-v-7a34374b]:hover {
  background-color: hsl(var(--p) / 0.1);
}
.tabs-boxed .tab-active[data-v-7a34374b] {
  background-color: hsl(var(--p));
  color: hsl(var(--pc));
}

/* sfc-style:/rails/app/javascript/components/campaigns/CampaignSendingSchedulingInterface.vue?type=style&index=0 */
.campaign-sending-scheduling[data-v-cf64a895] {
  max-width: 800px;
  margin: 0 auto;
}
.stat[data-v-cf64a895] {
  padding: 1rem;
}
.stat-title[data-v-cf64a895] {
  font-size: 0.875rem;
  font-weight: 500;
  color: rgb(107 114 128);
}
.stat-value[data-v-cf64a895] {
  font-size: 1.5rem;
  font-weight: 700;
  margin-top: 0.25rem;
}
.progress[data-v-cf64a895] {
  height: 0.75rem;
}
.loading-spinner[data-v-cf64a895] {
  width: 1rem;
  height: 1rem;
}

/* sfc-style:/rails/app/javascript/components/campaigns/SendingSchedulingStep.vue?type=style&index=0 */
.sending-scheduling-step[data-v-5691ee62] {
  max-width: 800px;
  margin: 0 auto;
}

/* sfc-style:/rails/app/javascript/components/campaigns/TemplateSelectionModal.vue?type=style&index=0 */
.template-card[data-v-10254b6b] {
  transition: all 0.2s ease-in-out;
}
.template-card[data-v-10254b6b]:hover {
  transform: translateY(-1px);
}
.line-clamp-2[data-v-10254b6b] {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@keyframes pulse-10254b6b {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.loading-spinner[data-v-10254b6b] {
  animation: pulse-10254b6b 1.5s ease-in-out infinite;
}
.modal-content[data-v-10254b6b] {
  max-height: 70vh;
  overflow-y: auto;
}
@media (max-width: 640px) {
  .template-card .flex[data-v-10254b6b] {
    flex-direction: column;
    gap: 3;
  }
  .template-card .radio[data-v-10254b6b] {
    align-self: flex-start;
    order: -1;
  }
  .compatibility-analysis[data-v-10254b6b] {
    margin-top: 1rem;
  }
}
.template-card[data-v-10254b6b]:focus-within {
  outline: 2px solid theme("colors.primary");
  outline-offset: 2px;
}
.badge[data-v-10254b6b] {
  font-weight: 500;
}
.compatibility-analysis .alert[data-v-10254b6b] {
  border-radius: 0.375rem;
}
.radio[data-v-10254b6b] {
  transform: scale(1.1);
}
.template-card:hover .radio[data-v-10254b6b] {
  transform: scale(1.2);
}

/* sfc-style:/rails/app/javascript/components/campaigns/PerformanceDashboard.vue?type=style&index=0 */
.performance-dashboard[data-v-531a74da] {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: white;
  border-radius: 12px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  border: 1px solid #e5e7eb;
  z-index: 1000;
  max-width: 400px;
  font-family:
    system-ui,
    -apple-system,
    sans-serif;
}
.performance-status[data-v-531a74da] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  cursor: pointer;
  border-radius: 12px;
  transition: all 0.2s ease;
}
.performance-status[data-v-531a74da]:hover {
  background: #f9fafb;
}
.status-indicator[data-v-531a74da] {
  display: flex;
  align-items: center;
  gap: 10px;
}
.status-icon[data-v-531a74da] {
  font-size: 20px;
}
.status-text[data-v-531a74da] {
  display: flex;
  flex-direction: column;
}
.status-label[data-v-531a74da] {
  font-size: 12px;
  color: #6b7280;
  font-weight: 500;
}
.status-score[data-v-531a74da] {
  font-size: 16px;
  font-weight: 600;
  color: #111827;
}
.toggle-button[data-v-531a74da] {
  background: none;
  border: none;
  cursor: pointer;
  color: #6b7280;
  padding: 4px;
  border-radius: 4px;
  transition: all 0.2s ease;
}
.toggle-button[data-v-531a74da]:hover {
  background: #f3f4f6;
  color: #374151;
}
.dashboard-content[data-v-531a74da] {
  border-top: 1px solid #e5e7eb;
  max-height: 60vh;
  overflow-y: auto;
}
.metrics-section[data-v-531a74da] {
  padding: 16px;
  border-bottom: 1px solid #f3f4f6;
}
.metrics-section[data-v-531a74da]:last-child {
  border-bottom: none;
}
.section-title[data-v-531a74da] {
  font-size: 14px;
  font-weight: 600;
  color: #374151;
  margin-bottom: 12px;
}
.metrics-grid[data-v-531a74da] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.metric-card[data-v-531a74da] {
  background: #f9fafb;
  border-radius: 8px;
  padding: 12px;
  text-align: center;
  border: 1px solid #f3f4f6;
}
.metric-card.vital-good[data-v-531a74da] {
  background: #f0fdf4;
  border-color: #bbf7d0;
}
.metric-card.vital-needs-improvement[data-v-531a74da] {
  background: #fffbeb;
  border-color: #fed7aa;
}
.metric-card.vital-poor[data-v-531a74da] {
  background: #fef2f2;
  border-color: #fecaca;
}
.metric-label[data-v-531a74da] {
  font-size: 12px;
  color: #6b7280;
  font-weight: 500;
  margin-bottom: 4px;
}
.metric-value[data-v-531a74da] {
  font-size: 16px;
  font-weight: 600;
  color: #111827;
  margin-bottom: 2px;
}
.metric-description[data-v-531a74da] {
  font-size: 10px;
  color: #9ca3af;
}
.memory-chart[data-v-531a74da] {
  background: #f9fafb;
  border-radius: 8px;
  padding: 12px;
  border: 1px solid #f3f4f6;
}
.chart-container[data-v-531a74da] {
  width: 100%;
  height: 120px;
  margin-bottom: 8px;
}
.memory-svg[data-v-531a74da] {
  width: 100%;
  height: 100%;
}
.memory-path[data-v-531a74da] {
  stroke: #3b82f6;
}
.memory-point[data-v-531a74da] {
  fill: #3b82f6;
}
.memory-labels[data-v-531a74da] {
  display: flex;
  justify-content: space-between;
  font-size: 10px;
  color: #6b7280;
}
.actions-section[data-v-531a74da] {
  padding: 16px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.action-button[data-v-531a74da] {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  border-radius: 6px;
  border: 1px solid #d1d5db;
  background: white;
  color: #374151;
  font-size: 12px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.action-button[data-v-531a74da]:hover {
  background: #f9fafb;
  border-color: #9ca3af;
}
.action-button.active[data-v-531a74da] {
  background: #3b82f6;
  color: white;
  border-color: #3b82f6;
}
.export-button[data-v-531a74da]:hover {
  background: #eff6ff;
  border-color: #3b82f6;
  color: #3b82f6;
}
.clear-button[data-v-531a74da]:hover {
  background: #fef2f2;
  border-color: #ef4444;
  color: #ef4444;
}
.status-excellent .status-score[data-v-531a74da] {
  color: #059669;
}
.status-good .status-score[data-v-531a74da] {
  color: #0d9488;
}
.status-needs-improvement .status-score[data-v-531a74da] {
  color: #d97706;
}
.status-poor .status-score[data-v-531a74da] {
  color: #dc2626;
}
@media (max-width: 768px) {
  .performance-dashboard[data-v-531a74da] {
    position: relative;
    bottom: auto;
    right: auto;
    max-width: 100%;
    margin: 16px;
    border-radius: 8px;
  }
  .metrics-grid[data-v-531a74da] {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  .performance-status[data-v-531a74da],
  .toggle-button[data-v-531a74da],
  .action-button[data-v-531a74da] {
    transition: none;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/QuickStartGuide.vue?type=style&index=0 */
.step-card[data-v-8cba443d] {
  @apply border border-base-300 rounded-lg mb-6 overflow-hidden;
}
.step-header[data-v-8cba443d] {
  @apply bg-base-200 p-4 flex items-center gap-4;
}
.step-number[data-v-8cba443d] {
  @apply w-8 h-8 bg-primary text-primary-content rounded-full flex items-center justify-center font-bold text-sm;
}
.step-title[data-v-8cba443d] {
  @apply text-lg font-semibold flex-1;
}
.step-time[data-v-8cba443d] {
  @apply text-sm text-gray-500 bg-gray-100 px-2 py-1 rounded;
}
.step-content[data-v-8cba443d] {
  @apply p-4;
}
.substep[data-v-8cba443d] {
  @apply border-l-4 border-primary/20 pl-4 py-2;
}
.substep-title[data-v-8cba443d] {
  @apply font-semibold text-base mb-2 flex items-center gap-2;
}
code[data-v-8cba443d] {
  @apply bg-base-200 px-2 py-1 rounded text-sm font-mono;
}
.space-y-1[data-v-8cba443d] > * + * {
  margin-top: 0.25rem;
}
.space-y-3[data-v-8cba443d] > * + * {
  margin-top: 0.75rem;
}
.link[data-v-8cba443d] {
  @apply underline decoration-current underline-offset-2;
}
.link[data-v-8cba443d]:hover {
  @apply decoration-2;
}
.alert[data-v-8cba443d] {
  @apply rounded-lg;
}
.card[data-v-8cba443d] {
  @apply transition-shadow duration-200;
}
.card[data-v-8cba443d]:hover {
  @apply shadow-md;
}
@media (max-width: 768px) {
  .step-header[data-v-8cba443d] {
    @apply flex-col items-start gap-2;
  }
  .step-number[data-v-8cba443d] {
    @apply w-6 h-6 text-xs;
  }
  .step-title[data-v-8cba443d] {
    @apply text-base;
  }
  .grid.md\\[data-v-8cba443d]:grid-cols-2,
  .grid.md\\[data-v-8cba443d]:grid-cols-3 {
    @apply grid-cols-1;
  }
}
@media print {
  .step-card[data-v-8cba443d] {
    @apply border-gray-300;
    break-inside: avoid;
  }
  .step-header[data-v-8cba443d] {
    @apply bg-gray-100;
  }
  .step-number[data-v-8cba443d] {
    @apply bg-gray-600 text-white;
  }
  .alert[data-v-8cba443d],
  .card[data-v-8cba443d] {
    @apply border-gray-300;
  }
  .btn[data-v-8cba443d] {
    @apply hidden;
  }
}
.high-contrast .step-number[data-v-8cba443d] {
  @apply bg-black text-white border-2 border-white;
}
.high-contrast .step-card[data-v-8cba443d] {
  @apply border-2 border-black;
}
.high-contrast .alert[data-v-8cba443d] {
  @apply border-2 border-black;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/CampaignWizardGuide.vue?type=style&index=0 */
.steps-grid[data-v-2f3c0927] {
  @apply grid md:grid-cols-5 gap-4 mb-8;
}
.step-preview[data-v-2f3c0927] {
  @apply text-center p-4 border border-base-300 rounded-lg bg-base-50;
}
.step-icon[data-v-2f3c0927] {
  @apply w-12 h-12 bg-primary text-primary-content rounded-full flex items-center justify-center mx-auto mb-3;
}
.step-icon i[data-v-2f3c0927] {
  @apply text-lg;
}
.step-name[data-v-2f3c0927] {
  @apply font-semibold mb-1;
}
.step-description[data-v-2f3c0927] {
  @apply text-sm text-gray-600 mb-2;
}
.step-duration[data-v-2f3c0927] {
  @apply text-xs bg-gray-100 px-2 py-1 rounded;
}
.step-detail[data-v-2f3c0927] {
  @apply border border-base-300 rounded-lg mb-6 overflow-hidden;
}
.step-header[data-v-2f3c0927] {
  @apply bg-base-200 p-4 flex items-center gap-4;
}
.step-number[data-v-2f3c0927] {
  @apply w-8 h-8 bg-primary text-primary-content rounded-full flex items-center justify-center font-bold;
}
.step-title[data-v-2f3c0927] {
  @apply text-lg font-semibold flex-1;
}
.step-status[data-v-2f3c0927] {
  @apply px-2 py-1 text-xs rounded;
}
.step-status[data-v-2f3c0927] {
  @apply bg-primary/20 text-primary;
}
.step-content[data-v-2f3c0927] {
  @apply p-6;
}
.field-group[data-v-2f3c0927] {
  @apply space-y-4;
}
.field-item[data-v-2f3c0927] {
  @apply space-y-1;
}
.example[data-v-2f3c0927] {
  @apply text-xs bg-base-200 p-2 rounded font-mono;
}
.radio-option[data-v-2f3c0927] {
  @apply p-3 border border-base-300 rounded;
}
.option-header[data-v-2f3c0927] {
  @apply flex items-center gap-2 font-medium mb-1;
}
.validation-info[data-v-2f3c0927] {
  @apply mt-6 p-4 bg-success/10 border border-success/20 rounded;
}
.method-cards[data-v-2f3c0927] {
  @apply grid md:grid-cols-3 gap-4 mb-6;
}
.method-card[data-v-2f3c0927] {
  @apply border border-base-300 rounded-lg p-4 text-center;
}
.method-icon[data-v-2f3c0927] {
  @apply w-12 h-12 rounded-full flex items-center justify-center mx-auto mb-3;
}
.method-icon i[data-v-2f3c0927] {
  @apply text-2xl;
}
.method-info h5[data-v-2f3c0927] {
  @apply mb-2;
}
.method-benefits[data-v-2f3c0927] {
  @apply text-xs bg-base-100 p-2 rounded mt-2;
}
.content-section[data-v-2f3c0927] {
  @apply mb-6 p-4 border border-base-300 rounded-lg;
}
.editor-features[data-v-2f3c0927] {
  @apply mt-4;
}
.feature-grid[data-v-2f3c0927] {
  @apply grid grid-cols-2 md:grid-cols-4 gap-3;
}
.feature-item[data-v-2f3c0927] {
  @apply flex items-center gap-2 text-sm;
}
.feature-item i[data-v-2f3c0927] {
  @apply text-primary;
}
.format-comparison[data-v-2f3c0927] {
  @apply grid md:grid-cols-2 gap-6;
}
.format-option[data-v-2f3c0927] {
  @apply border border-base-300 rounded-lg p-4;
}
.format-header[data-v-2f3c0927] {
  @apply flex items-center gap-2 mb-3;
}
.format-preview[data-v-2f3c0927] {
  @apply mb-3 p-3 bg-base-100 rounded;
}
.mini-table[data-v-2f3c0927] {
  @apply text-xs space-y-1;
}
.table-header[data-v-2f3c0927] {
  @apply font-bold border-b pb-1;
}
.table-row[data-v-2f3c0927] {
  @apply py-1;
}
.rich-text-preview[data-v-2f3c0927] {
  @apply text-sm;
}
.product-showcase[data-v-2f3c0927] {
  @apply p-2 bg-white rounded border;
}
.preview-grid[data-v-2f3c0927] {
  @apply grid md:grid-cols-3 gap-4 mb-6;
}
.preview-item[data-v-2f3c0927] {
  @apply flex items-start gap-3 p-3 border border-base-300 rounded;
}
.checklist-items[data-v-2f3c0927] {
  @apply space-y-2;
}
.checklist-item[data-v-2f3c0927] {
  @apply flex items-center gap-2 text-sm;
}
@media (max-width: 768px) {
  .steps-grid[data-v-2f3c0927] {
    @apply grid-cols-1;
  }
  .step-header[data-v-2f3c0927] {
    @apply flex-col items-start gap-2;
  }
  .method-cards[data-v-2f3c0927],
  .format-comparison[data-v-2f3c0927],
  .preview-grid[data-v-2f3c0927] {
    @apply grid-cols-1;
  }
  .feature-grid[data-v-2f3c0927] {
    @apply grid-cols-1;
  }
}
.high-contrast .step-preview[data-v-2f3c0927] {
  @apply border-2 border-black;
}
.high-contrast .step-number[data-v-2f3c0927] {
  @apply bg-black text-white border-2 border-white;
}
.high-contrast .method-card[data-v-2f3c0927],
.high-contrast .format-option[data-v-2f3c0927] {
  @apply border-2 border-black;
}
@media print {
  .step-detail[data-v-2f3c0927] {
    @apply border-gray-300;
    break-inside: avoid;
  }
  .step-header[data-v-2f3c0927] {
    @apply bg-gray-100;
  }
  .step-number[data-v-2f3c0927] {
    @apply bg-gray-600;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/TemplatesGuide.vue?type=style&index=0 */
.benefits-grid[data-v-5a65d29d] {
  @apply grid md:grid-cols-3 gap-4;
}
.benefit-card[data-v-5a65d29d] {
  @apply text-center p-6 border border-base-300 rounded-lg;
}
.benefit-card i[data-v-5a65d29d] {
  @apply text-3xl mb-3 block;
}
.benefit-card h3[data-v-5a65d29d] {
  @apply font-bold mb-2;
}
.placeholder-content[data-v-5a65d29d] {
  @apply animate-pulse;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/ContentEditorGuide.vue?type=style&index=0 */
.placeholder-content[data-v-ccee3a18] {
  @apply animate-pulse;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/FormulaGuide.vue?type=style&index=0 */
.function-category[data-v-2778b0e0] {
  @apply border border-base-300 rounded-lg p-6 bg-base-50;
}
.function-card[data-v-2778b0e0] {
  @apply bg-white border border-base-200 rounded-lg p-4;
}
.function-header[data-v-2778b0e0] {
  @apply flex flex-col sm:flex-row sm:items-center gap-2 mb-3;
}
.function-name[data-v-2778b0e0] {
  @apply text-lg font-bold text-primary;
}
.function-syntax[data-v-2778b0e0] {
  @apply text-sm font-mono bg-base-200 px-2 py-1 rounded;
}
.function-description[data-v-2778b0e0] {
  @apply text-gray-700 mb-3;
}
.function-examples[data-v-2778b0e0] {
  @apply space-y-2;
}
.example[data-v-2778b0e0] {
  @apply bg-base-100 p-3 rounded border-l-4 border-primary/20;
}
.example code[data-v-2778b0e0] {
  @apply block font-mono text-sm mb-1;
}
.example-explanation[data-v-2778b0e0] {
  @apply text-xs text-gray-600;
}
.use-case-card[data-v-2778b0e0] {
  @apply border border-base-300 rounded-lg p-6 bg-gradient-to-r from-base-50 to-primary/5;
}
.use-case-title[data-v-2778b0e0] {
  @apply text-xl font-semibold flex items-center gap-2 mb-2;
}
.use-case-description[data-v-2778b0e0] {
  @apply text-gray-700 mb-4;
}
.technique-card[data-v-2778b0e0] {
  @apply border border-base-300 rounded-lg p-6 bg-secondary/5;
}
.technique-title[data-v-2778b0e0] {
  @apply text-xl font-semibold flex items-center gap-2 mb-2;
}
.technique-description[data-v-2778b0e0] {
  @apply text-gray-700 mb-4;
}
.example-complex[data-v-2778b0e0] {
  @apply bg-white p-4 rounded border border-secondary/20;
}
code[data-v-2778b0e0] {
  @apply bg-base-200 px-2 py-1 rounded text-sm font-mono;
}
code.block[data-v-2778b0e0] {
  @apply block p-3 bg-base-200 rounded-lg overflow-x-auto;
}
@media (max-width: 768px) {
  .function-header[data-v-2778b0e0] {
    @apply flex-col items-start;
  }
  .grid.md\\[data-v-2778b0e0]:grid-cols-2 {
    @apply grid-cols-1;
  }
  .use-case-card[data-v-2778b0e0],
  .technique-card[data-v-2778b0e0],
  .function-category[data-v-2778b0e0] {
    @apply p-4;
  }
}
.high-contrast .function-card[data-v-2778b0e0] {
  @apply border-2 border-black bg-white;
}
.high-contrast .use-case-card[data-v-2778b0e0] {
  @apply border-2 border-black bg-white;
}
.high-contrast code[data-v-2778b0e0] {
  @apply bg-gray-200 border border-black;
}
@media print {
  .function-category[data-v-2778b0e0],
  .use-case-card[data-v-2778b0e0],
  .technique-card[data-v-2778b0e0] {
    @apply border-gray-300;
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .card[data-v-2778b0e0] {
    @apply border-gray-300;
  }
  .btn[data-v-2778b0e0] {
    @apply hidden;
  }
  code[data-v-2778b0e0] {
    @apply bg-gray-100 border border-gray-300;
  }
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/AudienceTargetingGuide.vue?type=style&index=0 */
.placeholder-content[data-v-6f83597d] {
  @apply animate-pulse;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/OfferBlocksGuide.vue?type=style&index=0 */
.placeholder-content[data-v-332822ec] {
  @apply animate-pulse;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/MultiUploadGuide.vue?type=style&index=0 */
.placeholder-content[data-v-be4051cb] {
  @apply animate-pulse;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/AnalyticsGuide.vue?type=style&index=0 */
.placeholder-content[data-v-c82783af] {
  @apply animate-pulse;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/AutomationGuide.vue?type=style&index=0 */
.placeholder-content[data-v-d63483b4] {
  @apply animate-pulse;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/TroubleshootingGuide.vue?type=style&index=0 */
.issue-category[data-v-b1751495] {
  @apply border border-base-300 rounded-lg p-6 bg-base-50;
}
.issue-card[data-v-b1751495] {
  @apply bg-white border border-base-200 rounded-lg overflow-hidden;
  transition: all 0.2s ease;
}
.issue-card[data-v-b1751495]:hover {
  @apply shadow-md;
}
.issue-header[data-v-b1751495] {
  @apply p-4 bg-base-100 flex items-center justify-between;
}
.issue-title[data-v-b1751495] {
  @apply text-lg font-semibold;
}
.issue-severity[data-v-b1751495] {
  @apply px-2 py-1 rounded text-xs font-medium;
}
.severity-high[data-v-b1751495] {
  @apply bg-error/20 text-error;
}
.severity-medium[data-v-b1751495] {
  @apply bg-warning/20 text-warning;
}
.severity-low[data-v-b1751495] {
  @apply bg-info/20 text-info;
}
.issue-content[data-v-b1751495] {
  @apply p-4 space-y-4;
}
.issue-symptoms[data-v-b1751495] {
  @apply p-3 bg-error/5 border border-error/20 rounded;
}
.issue-solutions[data-v-b1751495] {
  @apply p-3 bg-success/5 border border-success/20 rounded;
}
.solution[data-v-b1751495] {
  @apply flex gap-3 items-start;
}
.solution-step[data-v-b1751495] {
  @apply w-6 h-6 bg-primary text-primary-content rounded-full flex items-center justify-center text-sm font-bold flex-shrink-0;
}
code[data-v-b1751495] {
  @apply bg-base-200 px-1 py-0.5 rounded text-sm font-mono;
}
.highlight-flash[data-v-b1751495] {
  animation: highlightFlash-b1751495 2s ease-in-out;
}
@keyframes highlightFlash-b1751495 {
  0% {
    background-color: transparent;
  }
  25% {
    background-color: hsl(var(--p) / 0.1);
  }
  75% {
    background-color: hsl(var(--p) / 0.1);
  }
  100% {
    background-color: transparent;
  }
}
.form-control input[data-v-b1751495]:focus {
  @apply ring-2 ring-primary/50 border-primary;
}
.card[data-v-b1751495] {
  transition: all 0.2s ease;
}
.card[data-v-b1751495]:hover {
  @apply shadow-lg transform -translate-y-1;
}
@media (max-width: 768px) {
  .issue-category[data-v-b1751495] {
    @apply p-4;
  }
  .issue-header[data-v-b1751495] {
    @apply flex-col items-start gap-2;
  }
  .solution[data-v-b1751495] {
    @apply flex-col gap-2;
  }
  .solution-step[data-v-b1751495] {
    @apply self-start;
  }
  .grid.md\\[data-v-b1751495]:grid-cols-2,
  .grid.md\\[data-v-b1751495]:grid-cols-3 {
    @apply grid-cols-1;
  }
}
.high-contrast .issue-card[data-v-b1751495] {
  @apply border-2 border-black;
}
.high-contrast .issue-severity[data-v-b1751495] {
  @apply border border-black;
}
.high-contrast .severity-high[data-v-b1751495] {
  @apply bg-red-200 text-black;
}
.high-contrast .severity-medium[data-v-b1751495] {
  @apply bg-yellow-200 text-black;
}
.high-contrast .severity-low[data-v-b1751495] {
  @apply bg-blue-200 text-black;
}
@media print {
  .issue-category[data-v-b1751495],
  .issue-card[data-v-b1751495] {
    @apply border-gray-300;
    break-inside: avoid;
  }
  .btn[data-v-b1751495] {
    @apply hidden;
  }
  .issue-header[data-v-b1751495] {
    @apply bg-gray-100;
  }
}
.issue-card[data-v-b1751495]:focus-within {
  @apply ring-2 ring-primary/50;
}
.btn[data-v-b1751495]:focus {
  @apply ring-2 ring-primary/50 outline-none;
}
.reduced-motion .card[data-v-b1751495]:hover {
  @apply transform-none;
}
.reduced-motion .highlight-flash[data-v-b1751495] {
  animation: none;
  @apply bg-primary/10;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/KeyboardShortcutsGuide.vue?type=style&index=0 */
.placeholder-content[data-v-53193db3] {
  @apply animate-pulse;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/ApiReferenceGuide.vue?type=style&index=0 */
.placeholder-content[data-v-f28fe763] {
  @apply animate-pulse;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/sections/BestPracticesGuide.vue?type=style&index=0 */
.placeholder-content[data-v-898ab03d] {
  @apply animate-pulse;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/interactive/InteractiveTutorial.vue?type=style&index=0 */
.tutorial-overlay[data-v-820f0ecc] {
  backdrop-filter: blur(2px);
}
.tutorial-card[data-v-820f0ecc] {
  @apply bg-base-100 border border-primary/20 rounded-lg shadow-2xl max-w-md;
  animation: tutorialFadeIn-820f0ecc 0.3s ease-out;
}
.tutorial-card-mobile[data-v-820f0ecc] {
  @apply max-w-[90vw] mx-4;
}
@keyframes tutorialFadeIn-820f0ecc {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.tutorial-header[data-v-820f0ecc] {
  @apply p-4 border-b border-base-300;
}
.tutorial-body[data-v-820f0ecc] {
  @apply p-4 max-h-64 overflow-y-auto;
}
.tutorial-footer[data-v-820f0ecc] {
  @apply p-4 border-t border-base-300 bg-base-50;
}
.tutorial-progress .radial-progress[data-v-820f0ecc] {
  --size: 3rem;
  --thickness: 3px;
}
.tutorial-progress-dots[data-v-820f0ecc] {
  @apply flex gap-1;
}
.progress-dot[data-v-820f0ecc] {
  @apply w-2 h-2 rounded-full bg-gray-300 transition-colors duration-200;
}
.progress-dot.active[data-v-820f0ecc] {
  @apply bg-primary;
}
.progress-dot.completed[data-v-820f0ecc] {
  @apply bg-success;
}
.tutorial-highlight[data-v-820f0ecc] {
  border-radius: 8px;
  transition: all 0.3s ease;
}
.highlight-border[data-v-820f0ecc] {
  @apply absolute inset-0 border-2 border-primary rounded-lg;
  animation: highlightPulse-820f0ecc 2s infinite;
}
.highlight-pulse[data-v-820f0ecc] {
  @apply absolute inset-0 bg-primary/10 rounded-lg;
  animation: highlightGlow-820f0ecc 2s infinite alternate;
}
@keyframes highlightPulse-820f0ecc {
  0%, 100% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.02);
    opacity: 0.8;
  }
}
@keyframes highlightGlow-820f0ecc {
  0% {
    opacity: 0.1;
  }
  100% {
    opacity: 0.2;
  }
}
.tutorial-arrow[data-v-820f0ecc] {
  transition: all 0.3s ease;
  animation: arrowBounce-820f0ecc 1s infinite;
}
.arrow-up i[data-v-820f0ecc] {
  transform: rotate(0deg);
}
.arrow-down i[data-v-820f0ecc] {
  transform: rotate(180deg);
}
.arrow-left i[data-v-820f0ecc] {
  transform: rotate(-90deg);
}
.arrow-right i[data-v-820f0ecc] {
  transform: rotate(90deg);
}
@keyframes arrowBounce-820f0ecc {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}
.tutorial-keyboard-help[data-v-820f0ecc] {
  animation: slideInLeft-820f0ecc 0.2s ease-out;
}
@keyframes slideInLeft-820f0ecc {
  from {
    opacity: 0;
    transform: translateX(-20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.tutorial-position-center[data-v-820f0ecc] {
  @apply drop-shadow-2xl;
}
.tutorial-position-top[data-v-820f0ecc],
.tutorial-position-bottom[data-v-820f0ecc] {
  @apply drop-shadow-lg;
}
.tutorial-position-left[data-v-820f0ecc],
.tutorial-position-right[data-v-820f0ecc] {
  @apply drop-shadow-lg;
}
@media (max-width: 768px) {
  .tutorial-card[data-v-820f0ecc] {
    @apply max-w-[95vw] mx-2;
  }
  .tutorial-body[data-v-820f0ecc] {
    @apply max-h-48;
  }
  .tutorial-footer .flex[data-v-820f0ecc] {
    @apply flex-col gap-3;
  }
  .tutorial-keyboard-help[data-v-820f0ecc] {
    @apply bottom-2 left-2 right-2 text-center;
  }
}
.high-contrast .tutorial-card[data-v-820f0ecc] {
  @apply border-2 border-black;
}
.high-contrast .highlight-border[data-v-820f0ecc] {
  @apply border-4 border-black;
}
.high-contrast .tutorial-arrow i[data-v-820f0ecc] {
  @apply text-black;
}
.reduced-motion .tutorial-card[data-v-820f0ecc] {
  animation: none;
}
.reduced-motion .highlight-border[data-v-820f0ecc],
.reduced-motion .highlight-pulse[data-v-820f0ecc],
.reduced-motion .tutorial-arrow[data-v-820f0ecc] {
  animation: none;
}
.tutorial-card[data-v-820f0ecc]:focus-within {
  @apply ring-2 ring-primary/50;
}
@media print {
  .interactive-tutorial[data-v-820f0ecc] {
    @apply hidden;
  }
}
.tutorial-card[data-v-820f0ecc] {
  @apply focus-within:outline-none;
}
.tutorial-card button[data-v-820f0ecc]:focus {
  @apply ring-2 ring-primary/50 outline-none;
}
.tutorial-loading[data-v-820f0ecc] {
  @apply animate-pulse;
}
.tutorial-loading .tutorial-body[data-v-820f0ecc] {
  @apply bg-gray-200;
}
.tutorial-error[data-v-820f0ecc] {
  @apply border-error bg-error/5;
}
.tutorial-error .tutorial-header[data-v-820f0ecc] {
  @apply text-error;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/modals/FeedbackModal.vue?type=style&index=0 */
.form-control[data-v-9ca51f59] {
  @apply mb-4;
}
.label.cursor-pointer[data-v-9ca51f59] {
  @apply transition-all duration-200;
}
.label.cursor-pointer[data-v-9ca51f59]:hover {
  @apply shadow-sm;
}
.rating input:checked ~ input[data-v-9ca51f59],
.rating input:hover ~ input[data-v-9ca51f59] {
  @apply bg-gray-300;
}
.rating input[data-v-9ca51f59]:checked,
.rating input[data-v-9ca51f59]:hover {
  @apply bg-orange-400;
}
.textarea[data-v-9ca51f59] {
  resize: vertical;
  min-height: 8rem;
}
.textarea[data-v-9ca51f59]:focus {
  @apply ring-2 ring-primary/50 border-primary;
}
.text-center[data-v-9ca51f59] {
  animation: successFadeIn-9ca51f59 0.3s ease-out;
}
@keyframes successFadeIn-9ca51f59 {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.loading[data-v-9ca51f59] {
  @apply opacity-70;
}
.btn[data-v-9ca51f59]:disabled {
  @apply opacity-50 cursor-not-allowed;
}
@media (max-width: 768px) {
  .modal-box[data-v-9ca51f59] {
    @apply max-w-[95vw] mx-2;
  }
  .grid.grid-cols-2.md\\[data-v-9ca51f59]:grid-cols-4 {
    @apply grid-cols-2;
  }
  .modal-action[data-v-9ca51f59] {
    @apply flex-col gap-2;
  }
  .modal-action .btn[data-v-9ca51f59] {
    @apply w-full;
  }
}
.high-contrast .label.cursor-pointer[data-v-9ca51f59] {
  @apply border-2 border-black;
}
.high-contrast .label.cursor-pointer.border-primary[data-v-9ca51f59] {
  @apply border-4 border-black bg-yellow-100;
}
.high-contrast .radio[data-v-9ca51f59]:checked {
  @apply bg-black;
}
.high-contrast .rating input[data-v-9ca51f59] {
  @apply bg-gray-400;
}
.high-contrast .rating input[data-v-9ca51f59]:checked {
  @apply bg-black;
}
.radio[data-v-9ca51f59]:focus {
  @apply ring-2 ring-primary/50 outline-none;
}
.select[data-v-9ca51f59]:focus,
.input[data-v-9ca51f59]:focus {
  @apply ring-2 ring-primary/50 border-primary outline-none;
}
@media print {
  .modal[data-v-9ca51f59] {
    @apply hidden;
  }
}
.label-text-alt[data-v-9ca51f59] {
  transition: color 0.2s ease;
}
.label-text-alt.text-warning[data-v-9ca51f59] {
  @apply text-warning;
}
.label-text-alt.text-error[data-v-9ca51f59] {
  @apply text-error;
}
.input[data-v-9ca51f59]:invalid {
  @apply border-error;
}
.input[data-v-9ca51f59]:invalid:focus {
  @apply ring-error/50 border-error;
}
.feedback-type-icon[data-v-9ca51f59] {
  transition: transform 0.2s ease;
}
.label:hover .feedback-type-icon[data-v-9ca51f59] {
  transform: scale(1.1);
}
.fa-check-circle[data-v-9ca51f59] {
  animation: successIconBounce-9ca51f59 0.6s ease-out;
}
@keyframes successIconBounce-9ca51f59 {
  0% {
    transform: scale(0);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.reduced-motion .text-center[data-v-9ca51f59],
.reduced-motion .fa-check-circle[data-v-9ca51f59],
.reduced-motion .feedback-type-icon[data-v-9ca51f59] {
  animation: none;
}
.reduced-motion .label:hover .feedback-type-icon[data-v-9ca51f59] {
  transform: none;
}

/* sfc-style:/rails/app/javascript/components/campaigns/documentation/CampaignHelpSystem.vue?type=style&index=0 */
.campaign-help-system .prose[data-v-8269a0e2] {
  max-width: none;
}
.campaign-help-system .prose h1[data-v-8269a0e2],
.campaign-help-system .prose h2[data-v-8269a0e2],
.campaign-help-system .prose h3[data-v-8269a0e2] {
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}
.campaign-help-system .prose p[data-v-8269a0e2],
.campaign-help-system .prose li[data-v-8269a0e2] {
  margin-bottom: 0.5rem;
}
.menu a.active[data-v-8269a0e2] {
  background-color: hsl(var(--p));
  color: hsl(var(--pc));
}
.quick-access-toolbar[data-v-8269a0e2] {
  border-bottom: 1px solid hsl(var(--bc) / 0.1);
  padding-bottom: 1rem;
}
.btn-circle[data-v-8269a0e2] {
  transition: all 0.2s ease;
}
.btn-circle[data-v-8269a0e2]:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
}
.form-control input[data-v-8269a0e2]:focus {
  outline: 2px solid hsl(var(--p));
  outline-offset: 2px;
}
.prose > div[data-v-8269a0e2] {
  animation: fadeIn-8269a0e2 0.3s ease-in-out;
}
@keyframes fadeIn-8269a0e2 {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.quick-help-tooltip[data-v-8269a0e2] {
  animation: slideUp-8269a0e2 0.2s ease-out;
  backdrop-filter: blur(8px);
}
@keyframes slideUp-8269a0e2 {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 768px) {
  .modal-box[data-v-8269a0e2] {
    max-width: 95vw;
    margin: 1rem;
    height: 85vh;
  }
  .grid.grid-cols-1.lg\\[data-v-8269a0e2]:grid-cols-5 {
    grid-template-columns: 1fr;
  }
  .lg\\[data-v-8269a0e2]:col-span-1,
  .lg\\[data-v-8269a0e2]:col-span-4 {
    grid-column: span 1;
  }
  .lg\\[data-v-8269a0e2]:col-span-1 {
    order: 2;
    max-height: 200px;
  }
  .lg\\[data-v-8269a0e2]:col-span-4 {
    order: 1;
  }
  .quick-access-toolbar .flex[data-v-8269a0e2] {
    flex-direction: column;
    gap: 0.5rem;
  }
  .quick-access-toolbar .btn[data-v-8269a0e2] {
    width: 100%;
    justify-content: flex-start;
  }
}
.high-contrast .menu a.active[data-v-8269a0e2] {
  background-color: #000;
  color: #fff;
  border: 2px solid #fff;
}
.high-contrast .quick-help-tooltip[data-v-8269a0e2] {
  border: 2px solid #000;
  background-color: #fff;
  color: #000;
}
.reduced-motion .prose > div[data-v-8269a0e2] {
  animation: none;
}
.reduced-motion .quick-help-tooltip[data-v-8269a0e2] {
  animation: none;
}
.reduced-motion .btn-circle[data-v-8269a0e2]:hover {
  transform: none;
}
.menu a[data-v-8269a0e2]:focus {
  outline: 2px solid hsl(var(--p));
  outline-offset: 2px;
}
.quick-access-toolbar .btn[data-v-8269a0e2]:focus {
  outline: 2px solid hsl(var(--p));
  outline-offset: 2px;
}
@media print {
  .campaign-help-system[data-v-8269a0e2] {
    position: static;
  }
  .modal-box[data-v-8269a0e2] {
    position: static;
    max-width: none;
    height: auto;
    box-shadow: none;
    border: 1px solid #ccc;
  }
  .btn-circle[data-v-8269a0e2],
  .quick-access-toolbar[data-v-8269a0e2],
  .modal-backdrop[data-v-8269a0e2] {
    display: none;
  }
  .prose[data-v-8269a0e2] {
    font-size: 12pt;
    line-height: 1.4;
  }
}

/* sfc-style:/rails/app/javascript/apps/CampaignEditorApp.vue?type=style&index=0 */
.campaign-editor-app[data-v-551f4139] {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.campaign-editor-content[data-v-551f4139] {
  flex: 1;
}
.step[data-v-551f4139] {
  cursor: pointer;
  transition: all 0.2s ease;
}
.step[data-v-551f4139]:hover {
  transform: translateY(-1px);
}
.step-content[data-v-551f4139] {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
}
.step-title[data-v-551f4139] {
  font-size: 0.75rem;
  font-weight: 600;
}
.step-indicator[data-v-551f4139] {
  line-height: 1;
}
@keyframes pulse-save-551f4139 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.text-warning .loading[data-v-551f4139] {
  animation: pulse-save-551f4139 1.5s ease-in-out infinite;
}
.step-error[data-v-551f4139] {
  --tw-step-color: theme("colors.error");
}
.step-error[data-v-551f4139]:after {
  border-color: theme("colors.error");
  background-color: theme("colors.error");
}
.step-disabled[data-v-551f4139] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.step-disabled[data-v-551f4139]:hover {
  transform: none;
}
@media (max-width: 768px) {
  .navbar-center[data-v-551f4139] {
    display: none;
  }
  .steps-horizontal[data-v-551f4139] {
    flex-direction: column;
  }
  .step-content .step-title[data-v-551f4139] {
    font-size: 0.625rem;
  }
  .btn-group[data-v-551f4139] {
    flex-direction: column;
    width: 100%;
  }
}

/* sfc-style:/rails/app/javascript/components/NotificationSystem.vue?type=style&index=0 */
.progress[data-v-dab30792] {
  height: 4px;
  overflow: hidden;
  border-radius: 2px;
}
.progress-bar[data-v-dab30792] {
  height: 100%;
  transition: width 0.5s ease;
}
.toast-enter-active[data-v-dab30792],
.toast-leave-active[data-v-dab30792] {
  transition: all 0.3s ease;
}
.toast-enter-from[data-v-dab30792] {
  opacity: 0;
  transform: translateX(100%);
}
.toast-leave-to[data-v-dab30792] {
  opacity: 0;
  transform: translateX(100%);
}
.toast-move[data-v-dab30792] {
  transition: transform 0.3s ease;
}

/* sfc-style:/rails/app/javascript/components/StatusBadge.vue?type=style&index=0 */
.status-badge[data-v-76aed3be] {
  @apply inline-flex items-center;
}
.status-text[data-v-76aed3be] {
  @apply font-medium;
}
.progress-text[data-v-76aed3be] {
  @apply text-xs font-normal opacity-75;
}
.fa-spin[data-v-76aed3be] {
  animation: fa-spin-76aed3be 2s infinite linear;
}
@keyframes fa-spin-76aed3be {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.badge-sm .status-text[data-v-76aed3be] {
  @apply text-xs;
}
.badge-sm .progress-text[data-v-76aed3be] {
  @apply text-xs;
}

/* sfc-style:/rails/app/javascript/components/ProgressBar.vue?type=style&index=0 */
.progress-bar[data-v-78cb3028] {
  @apply w-full;
}
.progress-container[data-v-78cb3028] {
  @apply relative;
}
.progress[data-v-78cb3028] {
  @apply bg-base-300 rounded-full overflow-hidden;
}
.progress-fill[data-v-78cb3028] {
  @apply rounded-full;
}
.progress-info[data-v-78cb3028] {
  @apply flex justify-between items-center;
}
.current-step[data-v-78cb3028] {
  @apply flex items-center;
}
.progress-percentage[data-v-78cb3028] {
  @apply tabular-nums;
}
.estimated-time[data-v-78cb3028] {
  @apply flex items-center;
}
.detailed-steps[data-v-78cb3028] {
  @apply max-h-40 overflow-y-auto;
}
.step-content[data-v-78cb3028] {
  @apply ml-4;
}
.step-title[data-v-78cb3028] {
  @apply font-medium text-base-content;
}
.step-description[data-v-78cb3028] {
  @apply text-base-content/70;
}
.step-progress[data-v-78cb3028] {
  @apply w-full;
}
.steps-vertical .step[data-v-78cb3028]::before {
  @apply w-3 h-3;
}
.steps-vertical .step[data-v-78cb3028]:not(:last-child)::after {
  @apply bg-base-300;
}
.step-primary[data-v-78cb3028]::before {
  @apply bg-primary border-primary;
}
.step-warning[data-v-78cb3028]::before {
  @apply bg-warning border-warning;
}
.step-error[data-v-78cb3028]::before {
  @apply bg-error border-error;
}
.step-neutral[data-v-78cb3028]::before {
  @apply bg-base-300 border-base-300;
}
.progress-fill[data-v-78cb3028] {
  transition: width 0.3s ease-out;
}
.step-warning[data-v-78cb3028]::before {
  animation: pulse-78cb3028 2s infinite;
}
@keyframes pulse-78cb3028 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
}
.progress-bar.size-small .progress[data-v-78cb3028] {
  @apply h-1;
}
.progress-bar.size-small .progress-info[data-v-78cb3028] {
  @apply text-xs;
}
.progress-bar.size-large .progress[data-v-78cb3028] {
  @apply h-4;
}
.progress-bar.size-large .progress-info[data-v-78cb3028] {
  @apply text-sm;
}

/* sfc-style:/rails/app/javascript/components/HelpModal.vue?type=style&index=0 */
.modal-header[data-v-02fec9ef] {
  @apply border-b border-base-200 pb-4;
}
.help-section[data-v-02fec9ef] {
  @apply border-l-2 border-base-300 pl-4;
}
.step-content[data-v-02fec9ef] {
  @apply ml-4;
}
.help-option[data-v-02fec9ef] {
  @apply transition-all duration-200 hover:shadow-md;
}
.collapse-group .collapse[data-v-02fec9ef]:not(:last-child) {
  @apply border-b border-base-300;
}
.btn[data-v-02fec9ef]:focus {
  @apply outline-none ring-2 ring-offset-2;
}
.modal-box[data-v-02fec9ef]:focus {
  @apply outline-none;
}

/* sfc-style:/rails/app/javascript/components/EmptyState.vue?type=style&index=0 */
.empty-state[data-v-1eef385c] {
  @apply w-full;
}
.empty-icon[data-v-1eef385c] {
  @apply flex justify-center;
}
.empty-content[data-v-1eef385c] {
  @apply max-w-2xl mx-auto;
}
.empty-actions[data-v-1eef385c] {
  @apply flex flex-col items-center;
}
.secondary-actions[data-v-1eef385c] {
  @apply border-t border-base-300 pt-6;
}
.quick-tips[data-v-1eef385c] {
  @apply border-t border-base-300 pt-8;
}
.tip-card[data-v-1eef385c] {
  @apply transition-all duration-200 hover:shadow-md hover:scale-105;
}
.tip-icon[data-v-1eef385c] {
  @apply flex justify-center lg:justify-start;
}
.getting-started[data-v-1eef385c] {
  @apply border-t border-base-300 pt-8;
}
.step-content[data-v-1eef385c] {
  @apply ml-0 lg:ml-4;
}
.step-title[data-v-1eef385c] {
  @apply text-base-content;
}
.step-description[data-v-1eef385c] {
  @apply hidden sm:block;
}
.steps-vertical .step[data-v-1eef385c]::before {
  @apply w-8 h-8 lg:w-6 lg:h-6;
}
.steps-horizontal .step[data-v-1eef385c]::before {
  @apply w-6 h-6;
}
@media (max-width: 640px) {
  .empty-icon i[data-v-1eef385c] {
    @apply text-4xl;
  }
  .empty-content h2[data-v-1eef385c] {
    @apply text-xl;
  }
  .empty-content p[data-v-1eef385c] {
    @apply text-base;
  }
  .btn-lg[data-v-1eef385c] {
    @apply btn-md;
  }
  .quick-tips .grid[data-v-1eef385c] {
    @apply grid-cols-1;
  }
}
@media (max-width: 1024px) {
  .steps-horizontal[data-v-1eef385c] {
    @apply steps-vertical;
  }
  .step-content[data-v-1eef385c] {
    @apply ml-4 text-left;
  }
}
.tip-card[data-v-1eef385c]:hover {
  @apply transform -translate-y-1;
}
.btn[data-v-1eef385c]:focus {
  @apply outline-none ring-2 ring-offset-2;
}
.btn-primary[data-v-1eef385c]:focus {
  @apply ring-primary;
}
.btn-outline[data-v-1eef385c]:focus {
  @apply ring-base-content;
}
.btn-ghost[data-v-1eef385c]:focus {
  @apply ring-base-content;
}

/* sfc-style:/rails/app/javascript/components/BulkActionModal.vue?type=style&index=0 */
.modal-header[data-v-a0444f5d] {
  @apply border-b border-base-200 pb-4;
}
.selected-summary[data-v-a0444f5d] {
  @apply border-l-4 border-info pl-4;
}
.action-card[data-v-a0444f5d] {
  @apply hover:shadow-md;
}
.action-card.border-primary[data-v-a0444f5d] {
  @apply shadow-md;
}
.action-card.border-secondary[data-v-a0444f5d] {
  @apply shadow-md;
}
.action-card.border-error[data-v-a0444f5d] {
  @apply shadow-md;
}
.action-card.border-warning[data-v-a0444f5d] {
  @apply shadow-md;
}
.action-icon[data-v-a0444f5d] {
  @apply flex-shrink-0;
}
.config-section[data-v-a0444f5d] {
  @apply border border-base-200 p-4 rounded-lg bg-base-50;
}
.loading-overlay[data-v-a0444f5d] {
  @apply border-t border-base-200 pt-4;
}
.action-card[data-v-a0444f5d]:focus {
  @apply outline-none ring-2 ring-offset-2 ring-primary;
}
.btn[data-v-a0444f5d]:focus {
  @apply outline-none ring-2 ring-offset-2;
}
.input[data-v-a0444f5d]:focus,
.select[data-v-a0444f5d]:focus,
.checkbox[data-v-a0444f5d]:focus {
  @apply outline-none ring-2 ring-offset-2 ring-primary;
}
.action-card[data-v-a0444f5d] {
  @apply transition-all duration-200;
}
.modal-box[data-v-a0444f5d] {
  @apply max-h-screen overflow-y-auto;
}
@media (max-width: 640px) {
  .grid-cols-2[data-v-a0444f5d] {
    @apply grid-cols-1;
  }
  .action-card[data-v-a0444f5d] {
    @apply p-3;
  }
  .action-details h5[data-v-a0444f5d] {
    @apply text-sm;
  }
  .action-details p[data-v-a0444f5d] {
    @apply text-xs;
  }
}

/* sfc-style:/rails/app/javascript/components/UploadTable.vue?type=style&index=0 */
.upload-table[data-v-9018e057] {
  @apply w-full;
}
.skeleton[data-v-9018e057] {
  @apply bg-base-300/50 animate-pulse;
}
.loading-skeleton table[data-v-9018e057] {
  @apply table-zebra;
}
.loading-skeleton tbody tr[data-v-9018e057]:hover {
  background-color: initial;
}
.table tbody tr.hover[data-v-9018e057]:hover {
  @apply bg-base-200/50;
}
.table tbody tr.hover:hover td[data-v-9018e057] {
  @apply bg-transparent;
}
.table tbody tr.bg-primary\/5[data-v-9018e057] {
  @apply border-l-4 border-primary/50;
}
.table tbody tr.bg-warning\/5[data-v-9018e057] {
  @apply border-l-2 border-warning/30;
}
.table tbody tr.bg-error\/5[data-v-9018e057] {
  @apply border-l-2 border-error/30;
}
.table tbody tr.bg-success\/5[data-v-9018e057] {
  @apply border-l-2 border-success/30;
}
.upload-card[data-v-9018e057] {
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
  touch-action: manipulation;
}
.upload-card[data-v-9018e057]:active {
  transform: scale(0.98);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}
@media (max-width: 639px) {
  .checkbox[data-v-9018e057] {
    min-width: 1.5rem;
    min-height: 1.5rem;
  }
  .btn-sm[data-v-9018e057] {
    min-height: 2.75rem;
    min-width: 2.75rem;
  }
  .btn-circle[data-v-9018e057] {
    min-height: 2.75rem;
    min-width: 2.75rem;
  }
  .upload-card .card-body[data-v-9018e057] {
    padding: 1rem;
  }
  .upload-card h4[data-v-9018e057] {
    font-size: 1rem;
    line-height: 1.5;
  }
  .dropdown-end .dropdown-content[data-v-9018e057] {
    right: 0;
    left: auto;
  }
}
.overflow-x-auto[data-v-9018e057] {
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}
.upload-card[data-v-9018e057]:focus-within {
  outline: 2px solid theme(colors.primary.DEFAULT);
  outline-offset: 2px;
}
.btn[data-v-9018e057]:focus {
  outline: 2px solid theme(colors.primary.DEFAULT);
  outline-offset: 2px;
}
@media (max-width: 639px) {
  .loading-skeleton .hidden.sm\\[data-v-9018e057]:table-cell {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .loading-skeleton .hidden.md\\[data-v-9018e057]:table-cell {
    display: none !important;
  }
}
@media (max-width: 1023px) {
  .loading-skeleton .hidden.lg\\[data-v-9018e057]:table-cell {
    display: none !important;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .upload-card[data-v-9018e057] {
    transition: transform 0.15s ease-out, box-shadow 0.15s ease-out;
  }
}
@media (prefers-contrast: high) {
  .upload-card[data-v-9018e057] {
    border-width: 2px;
  }
  .badge[data-v-9018e057] {
    border-width: 1px;
    border-style: solid;
  }
}
@media (prefers-color-scheme: dark) {
  .upload-card[data-v-9018e057]:active {
    background-color: rgba(255, 255, 255, 0.05);
  }
}
@media (max-width: 479px) {
  .upload-card .text-sm[data-v-9018e057] {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
  .upload-card .text-xs[data-v-9018e057] {
    font-size: 0.75rem;
    line-height: 1rem;
  }
  .badge-sm[data-v-9018e057] {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
  }
}
.dropdown-content[data-v-9018e057] {
  @apply backdrop-blur-sm;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}
.dropdown-content li[data-v-9018e057] > * {
  @apply transition-colors duration-150;
}
.dropdown-content .divider[data-v-9018e057] {
  @apply my-1 h-px bg-base-300;
}
.upload-table .progress-bar[data-v-9018e057] {
  @apply max-w-none;
}
@media (max-width: 640px) {
  .table th[data-v-9018e057],
  .table td[data-v-9018e057] {
    @apply px-2 py-3;
  }
  .table th[data-v-9018e057]:first-child,
  .table td[data-v-9018e057]:first-child {
    @apply pl-4;
  }
  .table th[data-v-9018e057]:last-child,
  .table td[data-v-9018e057]:last-child {
    @apply pr-4;
  }
}
.empty-table-state[data-v-9018e057] {
  @apply bg-base-100 rounded-lg border border-base-300;
}
.table-compact[data-v-9018e057] {
  @apply table-compact;
}
.table-compact .badge[data-v-9018e057] {
  @apply badge-sm;
}
.table-compact .btn[data-v-9018e057] {
  @apply btn-sm;
}
.table th[role=columnheader][data-v-9018e057] {
  @apply select-none;
}
.table tbody tr[data-v-9018e057]:focus-within {
  @apply outline-none ring-2 ring-primary ring-opacity-50;
}
.fa-file-csv[data-v-9018e057] {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}
.fa-file-excel[data-v-9018e057] {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}
.fa-file-code[data-v-9018e057] {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}
.bg-warning\/5[data-v-9018e057] {
  animation: subtle-pulse-9018e057 3s ease-in-out infinite;
}
@keyframes subtle-pulse-9018e057 {
  0%, 100% {
    background-color: rgba(255, 193, 7, 0.05);
  }
  50% {
    background-color: rgba(255, 193, 7, 0.1);
  }
}
@media (max-width: 768px) {
  .dropdown-content[data-v-9018e057] {
    @apply w-48;
  }
  .table[data-v-9018e057] {
    @apply text-sm;
  }
  .badge[data-v-9018e057] {
    @apply badge-sm text-xs;
  }
}

/* sfc-style:/rails/app/javascript/components/SearchFilter.vue?type=style&index=0 */
.dropdown-content[data-v-b049d336] {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1000;
}
.search-filter-component .menu li.active > a[data-v-b049d336] {
  @apply bg-primary text-primary-content;
}
.search-filter-component mark[data-v-b049d336] {
  @apply bg-yellow-200 text-yellow-900 px-1 rounded;
}
.advanced-search-section[data-v-b049d336] {
  animation: slideDown-b049d336 0.3s ease-out;
}
@keyframes slideDown-b049d336 {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.active-filters .badge[data-v-b049d336] {
  animation: fadeIn-b049d336 0.2s ease-out;
}
@keyframes fadeIn-b049d336 {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

/* sfc-style:/rails/app/javascript/components/UploadDeletionModal.vue?type=style&index=0 */
.stat[data-v-78d9d7c5] {
  min-height: auto;
}
.stat-value[data-v-78d9d7c5] {
  font-size: 1.125rem;
  line-height: 1.5rem;
}
.confirmation .form-control[data-v-78d9d7c5] {
  align-items: flex-start;
}
.confirmation .checkbox[data-v-78d9d7c5] {
  margin-top: 2px;
}

/* sfc-style:/rails/app/javascript/components/UploadsIndex.vue?type=style&index=0 */
.uploads-index[data-v-a5fcb8a4] {
  @apply max-w-full;
}
.page-header[data-v-a5fcb8a4] {
  @apply border-b border-base-200 pb-6;
}
.search-filters[data-v-a5fcb8a4] {
  @apply sticky top-0 z-10;
}
.uploads-table[data-v-a5fcb8a4] {
  @apply bg-base-100 rounded-lg shadow-sm;
}
.selection-controls[data-v-a5fcb8a4] {
  @apply bg-base-50 p-4 rounded-t-lg border-b border-base-200;
}
@media (max-width: 640px) {
  .table th[data-v-a5fcb8a4],
  .table td[data-v-a5fcb8a4] {
    @apply px-3 py-2;
  }
  .table th[data-v-a5fcb8a4]:first-child,
  .table td[data-v-a5fcb8a4]:first-child {
    @apply pl-4;
  }
  .table th[data-v-a5fcb8a4]:last-child,
  .table td[data-v-a5fcb8a4]:last-child {
    @apply pr-4;
  }
}
@keyframes pulse-a5fcb8a4 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.loading-skeleton[data-v-a5fcb8a4] {
  animation: pulse-a5fcb8a4 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

/* sfc-style:/rails/app/javascript/components/AccessibleModal.vue?type=style&index=0 */
.modal[data-v-d17a377f] {
  @apply backdrop-blur-sm;
}
.modal.modal-open[data-v-d17a377f] {
  @apply flex;
}
.modal-box[data-v-d17a377f] {
  @apply focus-within:ring-2 focus-within:ring-primary/20;
}
.modal-box-full[data-v-d17a377f] {
  @apply rounded-none;
}
.drawer-content[role=dialog][data-v-d17a377f] {
  @apply focus-within:ring-2 focus-within:ring-primary/20;
}
.high-contrast .modal-backdrop[data-v-d17a377f] {
  @apply bg-black/80;
}
.high-contrast .modal-box[data-v-d17a377f],
.high-contrast .drawer-content[data-v-d17a377f] {
  @apply border-2 border-gray-800;
}
.modal-box[data-v-d17a377f]:focus-within,
.drawer-content[data-v-d17a377f]:focus-within {
  outline: none;
}
@media (max-width: 768px) {
  .btn-circle[data-v-d17a377f],
  button[data-v-d17a377f] {
    min-width: 44px;
    min-height: 44px;
  }
}
body.modal-open {
  overflow: hidden;
}
.modal[data-v-d17a377f] {
  transition: opacity 0.2s ease-in-out;
}
.drawer-content[data-v-d17a377f] {
  transition: transform 0.3s ease-in-out;
}
.reduced-motion .modal[data-v-d17a377f],
.reduced-motion .drawer-content[data-v-d17a377f] {
  transition-duration: 0.01ms !important;
}
.sr-only[data-v-d17a377f] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.modal-backdrop button[data-v-d17a377f]:disabled {
  cursor: not-allowed;
}
.modal-backdrop button[data-v-d17a377f]:not(:disabled) {
  cursor: pointer;
}
.modal-box .btn-circle[data-v-d17a377f] {
  position: absolute;
  right: 0.5rem;
  top: 0.5rem;
  z-index: 10;
}
.modal-action[data-v-d17a377f] {
  @apply flex flex-wrap gap-2 justify-end;
}
@media (max-width: 640px) {
  .modal-action[data-v-d17a377f] {
    @apply flex-col;
  }
  .modal-action .btn[data-v-d17a377f] {
    @apply w-full;
  }
}

/* sfc-style:/rails/app/javascript/components/ColumnSelectionModal/ColumnSection.vue?type=style&index=0 */
.column-section[data-v-339404db] {
  @apply shadow-sm;
}
.section-header[data-v-339404db] {
  @apply border-b border-base-300;
}
.section-content[data-v-339404db] {
  scrollbar-width: thin;
  scrollbar-color: theme("colors.base-300") transparent;
}
.section-content[data-v-339404db]::-webkit-scrollbar {
  width: 8px;
}
.section-content[data-v-339404db]::-webkit-scrollbar-track {
  @apply bg-transparent;
}
.section-content[data-v-339404db]::-webkit-scrollbar-thumb {
  @apply bg-base-300 rounded-full;
}
.section-content[data-v-339404db]::-webkit-scrollbar-thumb:hover {
  @apply bg-base-400;
}
.checkbox[data-v-339404db]:focus {
  @apply ring-2 ring-primary/20 ring-offset-2;
}
.transition-transform[data-v-339404db] {
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}
label[data-v-339404db]:has(input[type=checkbox]):hover {
  @apply bg-base-200/50;
}
label[data-v-339404db]:has(input[type=checkbox]:checked) {
  @apply bg-primary/5;
}

/* sfc-style:/rails/app/javascript/components/ColumnSelectionModal.vue?type=style&index=0 */
.form-control[data-v-17b2644e] {
  @apply w-full;
}
.label-text[data-v-17b2644e] {
  @apply font-medium;
}
.input[data-v-17b2644e]:focus {
  @apply ring-2 ring-primary/20;
}

/* sfc-style:/rails/app/javascript/components/FullScreenDataView.vue?type=style&index=0 */
.modal-box-full[data-v-115582f7] {
  @apply p-0;
  max-height: 100vh;
  overflow: hidden;
}
input[type=checkbox][data-v-115582f7]:indeterminate {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='white'%3e%3cpath d='M5 10h10'/%3e%3c/svg%3e");
}
td.cursor-pointer[data-v-115582f7] {
  transition: background-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.animate-slide-down[data-v-115582f7] {
  animation: slideDown-115582f7 0.3s ease-out;
  transform-origin: top;
}
@keyframes slideDown-115582f7 {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.overflow-x-auto[data-v-115582f7] {
  scrollbar-width: thin;
}
.overflow-x-auto[data-v-115582f7]::-webkit-scrollbar {
  height: 8px;
}
.overflow-x-auto[data-v-115582f7]::-webkit-scrollbar-track {
  background: transparent;
}
.overflow-x-auto[data-v-115582f7]::-webkit-scrollbar-thumb {
  background: oklch(var(--bc) / 0.2);
  border-radius: 4px;
}
.overflow-x-auto[data-v-115582f7]::-webkit-scrollbar-thumb:hover {
  background: oklch(var(--bc) / 0.3);
}

/* sfc-style:/rails/app/javascript/components/ProductPreview.vue?type=style&index=0 */
.table-hover tbody tr[data-v-f748e0d8]:hover {
  background-color: rgba(0, 0, 0, 0.02);
}
input[type=checkbox][data-v-f748e0d8]:indeterminate {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");
}

/* sfc-style:/rails/app/javascript/components/ProcessingHistory.vue?type=style&index=0 */
.processing-history[data-v-4b85881e] {
}
.truncate[data-v-4b85881e] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
pre[data-v-4b85881e] {
  white-space: pre-wrap;
  word-wrap: break-word;
}

/* sfc-style:/rails/app/javascript/components/ExportsTab.vue?type=style&index=0 */

/* sfc-style:/rails/app/javascript/components/shared/FormulaChainSelector.vue?type=style&index=0 */
.border-success[data-v-f91b9ef3] {
  border-color: oklch(var(--su));
}
.bg-success\/5[data-v-f91b9ef3] {
  background-color: color-mix(in srgb, oklch(var(--su)) 5%, transparent);
}
.border-error[data-v-f91b9ef3] {
  border-color: oklch(var(--er));
}
.bg-error\/5[data-v-f91b9ef3] {
  background-color: color-mix(in srgb, oklch(var(--er)) 5%, transparent);
}
.modal-box[data-v-f91b9ef3] {
  @apply max-h-[90vh] overflow-y-auto;
}
.transition-shadow[data-v-f91b9ef3] {
  @apply transition-shadow duration-200;
}

/* sfc-style:/rails/app/javascript/components/UploadShow.vue?type=style&index=0 */
.loading-skeleton[data-v-615bf407] {
  background:
    linear-gradient(
      90deg,
      #f0f0f0 25%,
      #e0e0e0 50%,
      #f0f0f0 75%);
  background-size: 200% 100%;
  animation: loading-615bf407 1.5s infinite;
}
@keyframes loading-615bf407 {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

/* sfc-style:/rails/app/javascript/components/VirtualScrollTable.vue?type=style&index=0 */
.virtual-scroll-table[data-v-5f116220] {
  @apply relative w-full;
}
.table-header[data-v-5f116220] {
  @apply border-b border-base-300;
}
.virtual-scroll-container[data-v-5f116220] {
  @apply relative overflow-auto;
  scrollbar-width: thin;
  scrollbar-color: theme(colors.base-300) transparent;
}
.virtual-scroll-container[data-v-5f116220]::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.virtual-scroll-container[data-v-5f116220]::-webkit-scrollbar-track {
  background: transparent;
}
.virtual-scroll-container[data-v-5f116220]::-webkit-scrollbar-thumb {
  background: theme(colors.base-300);
  border-radius: 4px;
}
.virtual-scroll-container[data-v-5f116220]::-webkit-scrollbar-thumb:hover {
  background: theme(colors.base-400);
}
.virtual-items[data-v-5f116220] {
  @apply relative;
}
.virtual-item[data-v-5f116220] {
  @apply w-full;
}
.virtual-item table[data-v-5f116220] {
  @apply mb-0;
}
.virtual-item tr[data-v-5f116220]:hover {
  @apply bg-base-200/50;
}
.virtual-spacer-top[data-v-5f116220],
.virtual-spacer-bottom[data-v-5f116220] {
  @apply w-full;
}
.empty-state[data-v-5f116220] {
  @apply bg-base-100 rounded-lg border border-base-300;
}
.performance-info[data-v-5f116220] {
  @apply text-xs font-mono shadow-lg;
  backdrop-filter: blur(4px);
}
.table[data-v-5f116220] {
  table-layout: fixed;
}
.virtual-item .table tbody tr[data-v-5f116220] {
  @apply border-b border-base-200;
}
.loading[data-v-5f116220] {
  @apply text-primary;
}
.bg-primary\/5[data-v-5f116220] {
  @apply border-l-4 border-primary/50;
}
@media (max-width: 640px) {
  .virtual-scroll-table .table th[data-v-5f116220],
  .virtual-scroll-table .table td[data-v-5f116220] {
    @apply px-2 py-3;
  }
  .virtual-scroll-table .btn-sm[data-v-5f116220] {
    @apply min-h-11 min-w-11;
  }
}
.virtual-scroll-container[data-v-5f116220] {
  scroll-behavior: smooth;
}
.virtual-item tr[data-v-5f116220]:focus-within {
  @apply outline-none ring-2 ring-primary ring-opacity-50;
}
@media (prefers-reduced-motion: reduce) {
  .virtual-scroll-container[data-v-5f116220] {
    scroll-behavior: auto;
  }
  .virtual-item tr[data-v-5f116220] {
    transition: none;
  }
}
@media (prefers-contrast: high) {
  .virtual-item tr[data-v-5f116220] {
    border-width: 2px;
  }
  .bg-primary\/5[data-v-5f116220] {
    border-left-width: 6px;
  }
}

/* sfc-style:/rails/app/javascript/components/EnhancedUploadsIndex.vue?type=style&index=0 */
.uploads-index[data-v-200e18df] {
  @apply w-full max-w-none;
}
.page-header[data-v-200e18df] {
  @apply sticky top-0 bg-base-100 z-30 pb-4;
  backdrop-filter: blur(8px);
}
.search-section[data-v-200e18df] {
  @apply sticky top-20 z-20;
}
.performance-panel[data-v-200e18df] {
  @apply max-w-xs;
  backdrop-filter: blur(8px);
}
.uploads-table[data-v-200e18df] {
  contain: layout style paint;
}
.loading[data-v-200e18df] {
  @apply text-primary;
}
@media (prefers-reduced-motion: reduce) {
  [data-v-200e18df] {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
@media (max-width: 640px) {
  .uploads-index[data-v-200e18df] {
    padding-bottom: 4rem;
  }
  .page-header[data-v-200e18df] {
    position: static;
  }
  .search-section[data-v-200e18df] {
    position: static;
  }
}

/* sfc-style:/rails/app/javascript/components/admin/UserDetailModal.vue?type=style&index=0 */
.modal-box[data-v-579ef7ee] {
  max-height: 90vh;
  overflow-y: auto;
}
.stat[data-v-579ef7ee] {
  @apply text-center p-4 bg-gray-50 rounded-lg;
}
.stat-title[data-v-579ef7ee] {
  @apply text-gray-600 font-medium;
}
.stat-value[data-v-579ef7ee] {
  @apply font-bold;
}
code[data-v-579ef7ee] {
  font-family:
    "Monaco",
    "Menlo",
    "Ubuntu Mono",
    monospace;
}

/* sfc-style:/rails/app/javascript/components/admin/MasqueradingControls.vue?type=style&index=0 */
.masquerading-controls[data-v-c1a330f6] {
  position: relative;
}
.loading[data-v-c1a330f6] {
  display: inline-block;
}
.modal-backdrop[data-v-c1a330f6] {
  cursor: pointer;
}
.alert[data-v-c1a330f6] {
  animation: fadeIn-c1a330f6 0.3s ease-in-out;
}
@keyframes fadeIn-c1a330f6 {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.badge-warning[data-v-c1a330f6] {
  animation: pulse-c1a330f6 2s infinite;
}
@keyframes pulse-c1a330f6 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
}

/* sfc-style:/rails/app/javascript/components/admin/BulkActionConfirmation.vue?type=style&index=0 */
.modal-backdrop[data-v-246fc3af] {
  background-color: rgba(0, 0, 0, 0.3);
}

/* sfc-style:/rails/app/javascript/components/admin/BulkUserOperations.vue?type=style&index=0 */
.bulk-user-operations[data-v-a225a6f3] {
  position: relative;
}

/* sfc-style:/rails/app/javascript/components/admin/UserCreationModal.vue?type=style&index=0 */
.modal-backdrop[data-v-daabba17] {
  background-color: rgba(0, 0, 0, 0.3);
}

/* sfc-style:/rails/app/javascript/components/admin/UserManagementTable.vue?type=style&index=0 */
.user-management-table[data-v-893f4e98] {
  @apply space-y-6 max-w-full;
  overflow-x: hidden;
  width: 100%;
}
.user-management-table[data-v-893f4e98] > * {
  max-width: 100%;
}
.checkbox[data-v-893f4e98]:indeterminate {
  @apply bg-primary border-primary;
}
.checkbox[data-v-893f4e98]:indeterminate::after {
  content: "";
  @apply absolute inset-0 m-auto w-2 h-0.5 bg-white;
}

/* sfc-style:/rails/app/javascript/components/admin/UserActivityTimeline.vue?type=style&index=0 */
.user-activity-timeline[data-v-4449fff5] {
  @apply w-full;
}
.timeline-container[data-v-4449fff5] {
  @apply relative;
}
.timeline-container[data-v-4449fff5]::-webkit-scrollbar {
  width: 6px;
}
.timeline-container[data-v-4449fff5]::-webkit-scrollbar-track {
  @apply bg-gray-100 rounded;
}
.timeline-container[data-v-4449fff5]::-webkit-scrollbar-thumb {
  @apply bg-gray-300 rounded;
}
.timeline-container[data-v-4449fff5]::-webkit-scrollbar-thumb:hover {
  @apply bg-gray-400;
}
.timeline-container > div > div > div[data-v-4449fff5] {
  animation: fadeInUp-4449fff5 0.5s ease-out forwards;
}
@keyframes fadeInUp-4449fff5 {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* sfc-style:/rails/app/javascript/components/admin/UserActivityDashboard.vue?type=style&index=0 */
.admin-user-activity-dashboard[data-v-34f66f91] {
  @apply min-h-screen bg-gray-50 p-6;
}
.stat[data-v-34f66f91] {
  @apply border border-gray-200;
}
.stat-title[data-v-34f66f91] {
  @apply text-gray-600 text-sm;
}
.stat-value[data-v-34f66f91] {
  @apply text-2xl font-bold;
}
.stat-desc[data-v-34f66f91] {
  @apply text-gray-500 text-xs;
}
.stat-figure[data-v-34f66f91] {
  @apply opacity-80;
}
.max-h-64[data-v-34f66f91]::-webkit-scrollbar {
  width: 4px;
}
.max-h-64[data-v-34f66f91]::-webkit-scrollbar-track {
  @apply bg-gray-100 rounded;
}
.max-h-64[data-v-34f66f91]::-webkit-scrollbar-thumb {
  @apply bg-gray-300 rounded;
}
.max-h-64[data-v-34f66f91]::-webkit-scrollbar-thumb:hover {
  @apply bg-gray-400;
}

/* sfc-style:/rails/app/javascript/components/admin/AdvancedUserSearch.vue?type=style&index=0 */
.user-search-panel[data-v-e8969f37] {
  display: block;
}
.user-search-panel.hidden[data-v-e8969f37] {
  display: none;
}

/* sfc-style:/rails/app/javascript/components/admin/UserFilterPanel.vue?type=style&index=0 */
.badge[data-v-e11485ae] {
  @apply inline-flex items-center;
}
.badge button[data-v-e11485ae] {
  @apply ml-1 text-xs leading-none;
}

/* sfc-style:/rails/app/javascript/components/admin/MasqueradingHistory.vue?type=style&index=0 */
.masquerading-history[data-v-8f99ab35] {
  @apply space-y-6;
}
.table th[data-v-8f99ab35] {
  @apply bg-base-200;
}
.stats[data-v-8f99ab35] {
  @apply shadow-sm;
}
.stat-value[data-v-8f99ab35] {
  @apply text-2xl;
}
.modal-box[data-v-8f99ab35] {
  @apply max-h-[90vh] overflow-y-auto;
}
pre[data-v-8f99ab35] {
  @apply overflow-x-auto;
}

/* sfc-style:/rails/app/javascript/components/admin/SystemHealthWidget.vue?type=style&index=0 */
.system-health-widget[data-v-f824cc32] {
  transition: all 0.3s ease;
}
.system-health-widget[data-v-f824cc32]:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.loading[data-v-f824cc32] {
  animation: spin-f824cc32 1s linear infinite;
}
@keyframes spin-f824cc32 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* sfc-style:/rails/app/javascript/components/admin/AdminDashboard.vue?type=style&index=0 */
.admin-dashboard[data-v-fe7b3638] {
  min-height: 100vh;
}
.loading[data-v-fe7b3638] {
  animation: spin-fe7b3638 1s linear infinite;
}
@keyframes spin-fe7b3638 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* sfc-style:/rails/app/javascript/components/admin/SystemAnalytics.vue?type=style&index=0 */
.admin-system-analytics[data-v-09b21059] {
  min-height: 600px;
}
.stat[data-v-09b21059] {
  padding: 1rem;
}
.chart-container[data-v-09b21059] {
  position: relative;
  height: 256px;
  width: 100%;
}
.tabs-boxed .tab[data-v-09b21059] {
  border-radius: 0.375rem;
}
.alert[data-v-09b21059] {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.overflow-x-auto[data-v-09b21059]::-webkit-scrollbar {
  height: 6px;
}
.overflow-x-auto[data-v-09b21059]::-webkit-scrollbar-track {
  background: #f1f5f9;
  border-radius: 3px;
}
.overflow-x-auto[data-v-09b21059]::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 3px;
}
.overflow-x-auto[data-v-09b21059]::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* sfc-style:/rails/app/javascript/components/admin/ErrorTrackingDashboard.vue?type=style&index=0 */
.admin-error-tracking[data-v-c825ca93] {
  min-height: 600px;
}
.stat[data-v-c825ca93] {
  padding: 1.5rem;
}
.modal-box[data-v-c825ca93] {
  max-height: 90vh;
  overflow-y: auto;
}
.table th[data-v-c825ca93] {
  background-color: hsl(var(--b3));
  font-weight: 600;
}
.table td[data-v-c825ca93] {
  vertical-align: top;
}
.modal-box[data-v-c825ca93]::-webkit-scrollbar {
  width: 6px;
}
.modal-box[data-v-c825ca93]::-webkit-scrollbar-track {
  background: #f1f5f9;
  border-radius: 3px;
}
.modal-box[data-v-c825ca93]::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 3px;
}
.modal-box[data-v-c825ca93]::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}
pre[data-v-c825ca93] {
  font-size: 0.75rem;
  line-height: 1.2;
  white-space: pre-wrap;
  word-break: break-all;
}
.badge[data-v-c825ca93] {
  font-size: 0.75rem;
  font-weight: 600;
}
.animate-spin[data-v-c825ca93] {
  animation: spin-c825ca93 1s linear infinite;
}
@keyframes spin-c825ca93 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* sfc-style:/rails/app/javascript/components/admin/AdminDashboardApp.vue?type=style&index=0 */
.admin-dashboard-container[data-v-266da501] {
  min-height: 600px;
}
.admin-dashboard-tab-panel[data-v-266da501] {
  margin-top: 1rem;
}
.tab-pane[data-v-266da501] {
  transition: opacity 0.2s ease-in-out;
}
.tabs-boxed .tab[data-v-266da501] {
  border-radius: 0.375rem;
  transition: all 0.2s ease-in-out;
}
.tabs-boxed .tab[data-v-266da501]:hover {
  background-color: hsl(var(--bc) / 0.1);
}
.tabs-boxed .tab-active[data-v-266da501] {
  background-color: hsl(var(--p));
  color: hsl(var(--pc));
}
.security-monitoring-container[data-v-266da501],
.audit-trail-container[data-v-266da501] {
  min-height: 500px;
}
.security-tab-panel[data-v-266da501],
.audit-tab-panel[data-v-266da501] {
  margin-top: 1rem;
}

/* sfc-style:/rails/app/javascript/components/admin/SecurityEvents.vue?type=style&index=0 */
.security-events[data-v-fecb9fe3] {
  min-height: 100vh;
}
.table th[data-v-fecb9fe3] {
  background-color: #f3f4f6;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  color: #374151;
}
.table tbody tr[data-v-fecb9fe3]:hover {
  background-color: #f9fafb;
}

/* sfc-style:/rails/app/javascript/components/admin/UserSupportInterface.vue?type=style&index=0 */
.user-support-interface[data-v-a82cd9c2] {
  min-height: 100vh;
  background-color: #f9fafb;
}
.toast[data-v-a82cd9c2] {
  z-index: 1000;
}
.modal-box[data-v-a82cd9c2] {
  max-height: 90vh;
  overflow-y: auto;
}

/* sfc-style:/rails/app/javascript/components/admin/ProgressiveUserLoader.vue?type=style&index=0 */
.progressive-user-loader[data-v-2d4c8c93] {
  width: 100%;
}
.scroll-container[data-v-2d4c8c93] {
  position: relative;
  overflow-y: auto;
  overflow-x: hidden;
}
.virtual-list[data-v-2d4c8c93] {
  position: relative;
  width: 100%;
}
.virtual-items[data-v-2d4c8c93] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.user-item[data-v-2d4c8c93] {
  box-sizing: border-box;
}
.scroll-container[data-v-2d4c8c93] {
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}
.loading-spinner[data-v-2d4c8c93] {
  animation: spin-2d4c8c93 1s linear infinite;
}
@keyframes spin-2d4c8c93 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@media (max-width: 768px) {
  .user-item[data-v-2d4c8c93] {
    padding: 0.75rem;
  }
  .user-item .flex[data-v-2d4c8c93] {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }
}
