.ai-req-generator-section .material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.ai-req-generator-section {
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden;
  box-sizing: border-box;
}

.ai-req-generator-section * {
  box-sizing: border-box;
}

.ai-req-generator-section .step-content {
  display: none;
  width: 100%;
  max-width: 100%;
  overflow-wrap: break-word; /* Fixes long text overflow in step 12 summary */
}

.ai-req-generator-section .step-content.active {
  display: block;
}

.ai-req-generator-section .radio-tile:checked+label {
  background-color: rgba(237, 92, 55, 0.1);
  border-color: #ed5c37;
  box-shadow: 0 0 0 2px rgba(237, 92, 55, 0.5);
}

.ai-req-generator-section .radio-tile:checked+label .radio-check {
  transform: scale(1);
}

.ai-req-generator-section .radio-check {
  transform: scale(0);
  transition: transform 0.2s;
}

.ai-req-generator-section .radio-custom:checked {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
}

.ai-req-generator-section .peer:checked~label .radio-icon {
  border-color: #ed5c37 !important;
  background-color: transparent !important;
  position: relative;
}

.ai-req-generator-section .peer:checked~label .radio-icon::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background-color: #ed5c37;
  border-radius: 50%;
}

.ai-req-generator-section .peer:checked~label .radio-icon .material-symbols-outlined {
  display: none !important;
}

.ai-req-generator-section .peer~.checked-icon {
  display: none;
}

.ai-req-generator-section .peer:checked~.checked-icon {
  display: block;
}

.ai-req-generator-section .selection-card:hover {
  ring: 4px;
  ring-color: rgba(237, 92, 55, 0.3);
}

.ai-req-generator-section .selection-card.selected {
  ring: 4px;
  ring-color: #ed5c37;
  background-color: rgba(237, 92, 55, 0.1);
}

.ai-req-generator-section .selection-card.selected .checkbox {
  background-color: #ed5c37;
  color: white;
}

.ai-req-generator-section .selection-card.selected .checkbox .material-symbols-outlined {
  opacity: 1 !important;
}

.ai-req-generator-section .bg-primary {
  background-color: #ed5c37 !important;
  border-color: #ed5c37 !important;
}

.ai-req-generator-section .border-primary {
  border-color: #ed5c37 !important;
}

.ai-req-generator-section .has-\[\:checked\]\:bg-primary\/10:has(:checked) {
  background-color: rgb(237 92 55 / 0.1) !important;
}

.ai-req-generator-section .has-\[\:checked\]\:border-primary:has(:checked) {
  border-color: rgb(237 92 55 / var(--tw-border-opacity, 1)) !important;
}

.ai-req-generator-section [type="checkbox"]:checked:hover,
.ai-req-generator-section [type="checkbox"]:checked:focus,
.ai-req-generator-section [type="radio"]:checked:hover,
.ai-req-generator-section [type="radio"]:checked:focus {
  border-color: #ed5c37 !important;
  background-color: #ed5c37 !important;
}

.ai-req-generator-section .radio-check {
  border: 2px solid rgb(222 226 230 / var(--tw-border-opacity, 1));
}

.ai-req-generator-section input.border-none {
  border: none !important;
}

.border-2 {
  border: 2px solid;
}

#visionDescription {
  border: 1px solid #d3d1d170;
}

.ai-req-generator-section .shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05) !important;
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color) !important;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
}

.ai-req-generator-section [type='checkbox']:checked,
.ai-req-generator-section [type='radio']:checked {
  background-color: #ed5c37 !important;
  outline: none !important;
}

.ai-req-generator-section [type='checkbox']:checked,
.ai-req-generator-section [type='radio']:checked {
  background-color: #ed5c37 !important;
  outline: none !important;
}

.ai-req-generator-section [type='checkbox']:checked,
.ai-req-generator-section [type='radio']:checked {
  background-color: #ed5c37 !important;
  outline: none !important;
}

.ai-req-generator-section [type='checkbox'],
.ai-req-generator-section [type='radio'] {
  outline: none !important;
  box-shadow: none !important;
  accent-color: #ed5c37 !important;
}

.ai-req-generator-section .p-4 {
  padding: 1rem !important;
}

.ai-req-generator-section .py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.ai-req-generator-section .px-4 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.ai-req-generator-section .px-3 {
  padding-left: 0.75rem !important;
  padding-right: 0.75rem !important;
  ;
}

.ai-req-generator-section .py-4 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.ai-req-generator-section .p-3 {
  padding: 0.75rem !important;
}

.main-middle-area .ai-req-generator-section .text-primary:hover {
  color: var(--bs-orange-dark) !important;
}

button.remove-platform-btn {
  width: 1.4rem;
  height: 1.4rem;
  border: none;
}

.ai-req-generator-section .selection-card.selected {
  background-color: rgb(237 92 55 / 0.1) !important;
  --tw-ring-offset-shadow: 0 0 0 0 #fff;
  box-shadow: 0 0 0 0px #fff, 0 0 0 1px #ed5c37, var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(237 92 55 / 1);
}

.ai-req-generator-section p.border-l-2.text-subtle-text-light {
  border-left: 2px solid rgb(237 92 55 / 0.2) !important;
}

.ai-req-generator-section .bg-secondary {
  --tw-bg-opacity: 1;
  background-color: rgb(255 108 30 / var(--tw-bg-opacity, 1)) !important;
  border-color: rgb(255 108 30 / var(--tw-border-opacity, 1)) !important;
}

.recommended-badge.py-1 {
  padding-top: 0.18rem !important;
  padding-bottom: 0.18rem !important;
}

.ai-req-generator-section .px-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.ai-req-generator-section .pr-10 {
  padding-right: 2.5rem !important;
}

.ai-blueprint-form .form-control {
  border: 1px solid #d9d9d9 !important;
  border-radius: 6px;
  min-height: 48px;
  box-shadow: none;
}

.ai-blueprint-form .form-control:focus {
  border-color: #ed5c37;
  box-shadow: 0 0 0 2px rgba(237, 92, 55, 0.12);
}

.ai-blueprint-actions {
  margin-top: 10px;
  gap: 8px;
  margin-bottom: 6px;
}

.ai-blueprint-actions .ai-blueprint-btn {
  padding: 10px 16px;
  border-radius: 5px;
}

.ai-blueprint-actions .ai-blueprint-btn+.ai-blueprint-btn {
  margin-left: 6px;
}

.ai-blueprint-form .icon-span {
  padding-bottom: 0;
}

/* Ensure all selectable cards have a consistent gray border by default */
.ai-req-generator-section .industry-card,
.ai-req-generator-section #step-2 label[for],
.ai-req-generator-section #step-6 label {
  border-color: #dee2e6 !important;
  border-width: 2px !important;
}

/* Orange border for selected items */
.ai-req-generator-section .industry-card.border-primary,
.ai-req-generator-section .selection-card.selected,
.ai-req-generator-section #step-2 label[for]:has(.radio-tile:checked),
.ai-req-generator-section #step-2 label[for].border-primary,
.ai-req-generator-section #step-6 label:has(:checked) {
  border-color: #ed5c37 !important;
}



/* Keep industry card icons orange on hover and selected — prevent gray override */
.ai-req-generator-section .industry-card:hover .material-symbols-outlined,
.ai-req-generator-section .industry-card:hover p,
.ai-req-generator-section .industry-card .material-symbols-outlined {
  color: #ed5c37 !important;
}

#aiBlueprintModal .invalid-feedback {
  display: none;
  color: #dc3545;
  font-size: 14px;
  font-weight: 500;
  margin-top: 5px;
  margin-bottom: 5px;
}

.ai-req-generator-section #step-2 label[for]:has(.radio-tile:checked),
.ai-req-generator-section #step-2 label[for].border-primary {
  border-color: #ed5c37 !important;
}

/* Prevent icon/text color going gray on hover for ALL radio-tile cards */
.ai-req-generator-section #step-2 label .material-symbols-outlined,
.ai-req-generator-section #step-6 label .material-symbols-outlined,
.ai-req-generator-section .selection-card .material-symbols-outlined {
  color: #ed5c37 !important;
}

/* Scoped Form Input Styling - Fixes dark/light edge mismatch */
.ai-req-generator-section .ai-form-input {
  border: 1px solid #d1d5db !important;
  border-style: solid !important;
  border-radius: 8px !important;
  background-color: #ffffff !important;
  color: #1a1a1a !important;
  padding: 0.75rem 1rem !important;
  width: 100% !important;
  transition: all 0.2s ease-in-out !important;
  box-shadow: none !important;
  outline: none !important;
}

.ai-req-generator-section .ai-form-input:focus {
  border-color: #ed5c37 !important;
  box-shadow: 0 0 0 1px #ed5c37 !important;
}

.ai-req-generator-section .ai-form-input::placeholder {
  color: #9ca3af !important;
}

/* Error States for Standardized Inputs */
.ai-req-generator-section .ai-form-input.is-invalid {
  border-color: #ef4444 !important;
  background-color: #fff1f2 !important;
}

/* Feature Toggle Consistency */
.ai-req-generator-section .feature-toggle-label {
  transition: all 0.2s ease-in-out !important;
}

.ai-req-generator-section .feature-toggle-circle {
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Fix for dark mode base color toggle background */
.dark .ai-req-generator-section .bg-gray-200 {
  background-color: #4b5563 !important; /* gray-600 */
}

/* Prevent text wrap from breaking toggle alignment */
.ai-req-generator-section .feature-card-header {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
}
/* Safari compatibility fix for details/summary */
.ai-req-generator-section details summary::-webkit-details-marker {
    display: none !important;
}

.ai-req-generator-section details>summary {
    list-style: none !important;
}

