/*
 * DT Formulários — Tema LIGHT
 * Fundo: #fff | Texto: #1a1a2e | Accent: #ff5c1a
 *
 * Compatibilidade: Chrome 80+, Firefox 78+, Safari 13+, Edge 80+, iOS 13+, Android 5+
 * - Prefixos -webkit- onde necessário
 * - Fallback para :has() via classe .dtnf-radio-option--checked (JS)
 * - Touch targets >= 44px
 * - Responsivo mobile-first
 *
 * @package DT_Network
 */

/* ============================================
   ANIMACAO
   ============================================ */
@-webkit-keyframes dtnf-radio-pulse {
  0%   { -webkit-box-shadow: 0 0 0 0    rgba(255,92,26,.45); box-shadow: 0 0 0 0    rgba(255,92,26,.45); }
  65%  { -webkit-box-shadow: 0 0 0 10px rgba(255,92,26,0);   box-shadow: 0 0 0 10px rgba(255,92,26,0);   }
  100% { -webkit-box-shadow: 0 0 0 0    rgba(255,92,26,0);   box-shadow: 0 0 0 0    rgba(255,92,26,0);   }
}
@keyframes dtnf-radio-pulse {
  0%   { -webkit-box-shadow: 0 0 0 0    rgba(255,92,26,.45); box-shadow: 0 0 0 0    rgba(255,92,26,.45); }
  65%  { -webkit-box-shadow: 0 0 0 10px rgba(255,92,26,0);   box-shadow: 0 0 0 10px rgba(255,92,26,0);   }
  100% { -webkit-box-shadow: 0 0 0 0    rgba(255,92,26,0);   box-shadow: 0 0 0 0    rgba(255,92,26,0);   }
}

/* ============================================
   LIGHT MODE
   ============================================ */

/* Wrappers */
.dtnf-theme-light,
.dtnf-theme-light.dtnf-form-topo,
.dtnf-theme-light.dtnf-form-fundo {
  font-family: inherit !important;
  background: #fff !important;
  color: #1a1a2e !important;
  padding: 0.75rem !important;
  -webkit-border-radius: 12px !important;
  border-radius: 12px !important;
}
.dtnf-theme-light .dtnf-panel {
  background: #fff !important;
  color: #1a1a2e !important;
  padding: 0.75rem !important;
  -webkit-border-radius: 10px !important;
  border-radius: 10px !important;
}

/* Titulos */
.dtnf-theme-light .dtnf-form-title   { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-form-subtitle,
.dtnf-theme-light .dtnf-form-description { color: #475569 !important; }
.dtnf-theme-light .dtnf-step-title   { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-step-intro   { color: #475569 !important; }

/* Indicador de etapas */
.dtnf-theme-light .dtnf-steps::before { background: #e2e8f0 !important; }
.dtnf-theme-light .dtnf-step-num     {
  background: #e2e8f0 !important;
  color: #94a3b8 !important;
  min-width: 32px !important;
  min-height: 32px !important;
}
.dtnf-theme-light .dtnf-step-label    { color: #94a3b8 !important; }
.dtnf-theme-light .dtnf-step--active .dtnf-step-num   { background: #ff5c1a !important; color: #fff !important; }
.dtnf-theme-light .dtnf-step--active .dtnf-step-label { color: #ff5c1a !important; }
.dtnf-theme-light .dtnf-step--completed .dtnf-step-num   { background: #059669 !important; color: #fff !important; }
.dtnf-theme-light .dtnf-step--completed .dtnf-step-label { color: #059669 !important; }

/* Labels */
.dtnf-theme-light .dtnf-field > label,
.dtnf-theme-light .dtnf-field label { color: #374151 !important; }

/* Inputs, selects, textareas */
.dtnf-theme-light .dtnf-field input[type="text"],
.dtnf-theme-light .dtnf-field input[type="email"],
.dtnf-theme-light .dtnf-field input[type="tel"],
.dtnf-theme-light .dtnf-field input[type="number"],
.dtnf-theme-light .dtnf-field input[type="url"],
.dtnf-theme-light .dtnf-field input[type="password"],
.dtnf-theme-light .dtnf-field select,
.dtnf-theme-light .dtnf-field textarea {
  padding: .75rem 1rem !important;
  font-size: 1rem !important;
  border: 1.5px solid #d1d5db !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: #1a1a2e !important;
  outline: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  min-height: 44px !important;
}
.dtnf-theme-light .dtnf-field input::-webkit-input-placeholder { color: #9ca3af !important; opacity: 1 !important; }
.dtnf-theme-light .dtnf-field input::-moz-placeholder          { color: #9ca3af !important; opacity: 1 !important; }
.dtnf-theme-light .dtnf-field input:-ms-input-placeholder      { color: #9ca3af !important; opacity: 1 !important; }
.dtnf-theme-light .dtnf-field input::placeholder                { color: #9ca3af !important; opacity: 1 !important; }
.dtnf-theme-light .dtnf-field textarea::-webkit-input-placeholder { color: #9ca3af !important; opacity: 1 !important; }
.dtnf-theme-light .dtnf-field textarea::-moz-placeholder          { color: #9ca3af !important; opacity: 1 !important; }
.dtnf-theme-light .dtnf-field textarea:-ms-input-placeholder      { color: #9ca3af !important; opacity: 1 !important; }
.dtnf-theme-light .dtnf-field textarea::placeholder                { color: #9ca3af !important; opacity: 1 !important; }

.dtnf-theme-light .dtnf-field input:focus,
.dtnf-theme-light .dtnf-field select:focus,
.dtnf-theme-light .dtnf-field textarea:focus {
  border-color: #ff5c1a !important;
  -webkit-box-shadow: 0 0 0 3px rgba(255,92,26,.15) !important;
  box-shadow: 0 0 0 3px rgba(255,92,26,.15) !important;
}
.dtnf-theme-light .dtnf-field--error input,
.dtnf-theme-light .dtnf-field--error select,
.dtnf-theme-light .dtnf-field--error textarea {
  border-color: #ef4444 !important;
  -webkit-box-shadow: 0 0 0 3px rgba(239,68,68,.12) !important;
  box-shadow: 0 0 0 3px rgba(239,68,68,.12) !important;
}
.dtnf-theme-light .dtnf-error {
  color: #dc2626 !important;
  font-size: .8rem !important;
  font-weight: 500 !important;
  margin-top: 4px !important;
  display: block !important;
  line-height: 1.4 !important;
}

/* Radio */
.dtnf-theme-light .dtnf-radio-label {
  color: #374151 !important;
  font-weight: 600 !important;
  display: block !important;
  margin-bottom: 8px !important;
}
.dtnf-theme-light .dtnf-radio-group {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-flex-direction: column !important;
  -ms-flex-direction: column !important;
  flex-direction: column !important;
  gap: 10px !important;
}
/* Fallback margin para navegadores sem suporte a gap em flex */
@supports not (gap: 10px) {
  .dtnf-theme-light .dtnf-radio-group > * + * {
    margin-top: 10px !important;
  }
}
.dtnf-theme-light .dtnf-radio-option {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
  -ms-flex-align: center !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 18px !important;
  border: 1.5px solid #d1d5db !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
  background: rgba(0,0,0,.015) !important;
  color: #1a1a2e !important;
  cursor: pointer !important;
  font-size: 1rem !important;
  font-weight: 500 !important;
  -webkit-transition: border-color .2s, background .2s !important;
  transition: border-color .2s, background .2s !important;
  min-height: 48px !important;
  -webkit-tap-highlight-color: transparent !important;
}
.dtnf-theme-light .dtnf-radio-option *,
.dtnf-theme-light .dtnf-radio-option span,
.dtnf-theme-light .dtnf-radio-option p,
.dtnf-theme-light .dtnf-radio-option strong,
.dtnf-theme-light .dtnf-radio-option small { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-radio-option input[type="radio"] {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  cursor: pointer !important;
  margin: 0 !important;
  -webkit-flex-shrink: 0 !important;
  flex-shrink: 0 !important;
  -webkit-appearance: auto !important;
  -moz-appearance: radio !important;
  appearance: auto !important;
}
/* accent-color com fallback */
@supports (accent-color: #ff5c1a) {
  .dtnf-theme-light .dtnf-radio-option input[type="radio"] {
    accent-color: #ff5c1a !important;
  }
}
.dtnf-theme-light .dtnf-radio-option:hover {
  border-color: rgba(255,92,26,.5) !important;
  background: rgba(255,92,26,.05) !important;
}
/* Fallback via JS class (Firefox < 121 sem :has()) */
.dtnf-theme-light .dtnf-radio-option--checked {
  border-color: #ff5c1a !important;
  background: rgba(255,92,26,.06) !important;
  -webkit-animation: dtnf-radio-pulse 2s ease-out infinite !important;
  animation: dtnf-radio-pulse 2s ease-out infinite !important;
}
/* Navegadores modernos com :has() */
@supports selector(:has(*)) {
  .dtnf-theme-light .dtnf-radio-option:has(input[type="radio"]:checked) {
    border-color: #ff5c1a !important;
    background: rgba(255,92,26,.06) !important;
    -webkit-animation: dtnf-radio-pulse 2s ease-out infinite !important;
    animation: dtnf-radio-pulse 2s ease-out infinite !important;
  }
}

/* Botoes */
.dtnf-theme-light .dtnf-btn {
  cursor: pointer !important;
  font-weight: 600 !important;
  -webkit-transition: all .2s ease !important;
  transition: all .2s ease !important;
  -webkit-tap-highlight-color: transparent !important;
}
.dtnf-theme-light .dtnf-btn-label  { color: inherit !important; }
.dtnf-theme-light .dtnf-btn-loading { color: inherit !important; opacity: .8 !important; }
.dtnf-theme-light .dtnf-btn-primary {
  background: #ff5c1a !important;
  background: -webkit-linear-gradient(315deg,#ff5c1a 0%,#ff2d6f 100%) !important;
  background: linear-gradient(135deg,#ff5c1a 0%,#ff2d6f 100%) !important;
  border-color: transparent !important;
  color: #fff !important;
  -webkit-border-radius: 12px !important;
  border-radius: 12px !important;
  -webkit-box-shadow: 0 10px 36px rgba(255,92,26,.35) !important;
  box-shadow: 0 10px 36px rgba(255,92,26,.35) !important;
  padding: 1.1rem 2.5rem !important;
  font-size: 1.125rem !important;
  font-weight: 800 !important;
  width: 100% !important;
  letter-spacing: -0.01em !important;
  min-height: 52px !important;
}
.dtnf-theme-light .dtnf-btn-primary:hover:not(:disabled) {
  -webkit-transform: translateY(-2px) !important;
  transform: translateY(-2px) !important;
  -webkit-box-shadow: 0 14px 40px rgba(255,92,26,.4) !important;
  box-shadow: 0 14px 40px rgba(255,92,26,.4) !important;
  color: #fff !important;
}
.dtnf-theme-light .dtnf-btn-primary .dtnf-btn-label,
.dtnf-theme-light .dtnf-btn-primary .dtnf-btn-loading { color: #fff !important; }
.dtnf-theme-light .dtnf-btn-secondary {
  background: transparent !important;
  color: #475569 !important;
  border: 1.5px solid #d1d5db !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
  min-height: 44px !important;
}
.dtnf-theme-light .dtnf-btn-secondary:hover:not(:disabled) {
  background: #f1f5f9 !important;
  color: #1e293b !important;
  border-color: #94a3b8 !important;
}
.dtnf-theme-light .dtnf-btn-skip-booking {
  background: none !important;
  color: #94a3b8 !important;
  border: none !important;
  font-size: .72rem !important;
  font-weight: 300 !important;
  padding: 4px 0 !important;
  margin-top: 18px !important;
  min-height: auto !important;
  text-decoration: none !important;
  cursor: pointer !important;
  display: inline !important;
  text-align: center !important;
  opacity: 0.7 !important;
}
.dtnf-theme-light .dtnf-btn-skip-booking:hover {
  color: #64748b !important;
  opacity: 1 !important;
  text-decoration: underline !important;
}
.dtnf-theme-light .dtnf-btn-skip-booking:active {
  color: #475569 !important;
  opacity: 1 !important;
}
.dtnf-theme-light .dtnf-booking-cta-text {
  color: #64748b !important;
}
.dtnf-theme-light .dtnf-booking-select-error {
  background: #fef2f2 !important;
  border-color: #fecaca !important;
  color: #dc2626 !important;
}
.dtnf-theme-light .dtnf-booking-select-error[hidden] { display: none !important; }
.dtnf-theme-light .dtnf-btn-back-edit {
  background: transparent !important;
  color: #475569 !important;
  border: 1.5px solid #d1d5db !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
  padding: .55rem 1.2rem !important;
  font-size: .875rem !important;
  cursor: pointer !important;
  min-height: 44px !important;
}
.dtnf-theme-light .dtnf-btn-back-edit:hover {
  background: #f1f5f9 !important;
  color: #1a1a2e !important;
  border-color: #94a3b8 !important;
}
.dtnf-theme-light .dtnf-btn-continue-slot,
.dtnf-theme-light .dtnf-btn-confirm-booking {
  background: #ff5c1a !important;
  background: -webkit-linear-gradient(315deg,#ff5c1a 0%,#ff2d6f 100%) !important;
  background: linear-gradient(135deg,#ff5c1a 0%,#ff2d6f 100%) !important;
  border-color: transparent !important;
  color: #fff !important;
  -webkit-box-shadow: 0 10px 36px rgba(255,92,26,.35) !important;
  box-shadow: 0 10px 36px rgba(255,92,26,.35) !important;
  -webkit-border-radius: 12px !important;
  border-radius: 12px !important;
  font-weight: 800 !important;
  min-height: 48px !important;
}
.dtnf-theme-light .dtnf-btn-continue-slot,
.dtnf-theme-light .dtnf-btn-continue-slot *,
.dtnf-theme-light .dtnf-btn-continue-slot span,
.dtnf-theme-light .dtnf-btn-continue-slot .dtnf-btn-label,
.dtnf-theme-light .dtnf-btn-confirm-booking,
.dtnf-theme-light .dtnf-btn-confirm-booking *,
.dtnf-theme-light .dtnf-btn-confirm-booking span,
.dtnf-theme-light .dtnf-btn-confirm-booking .dtnf-btn-label { color: #fff !important; }
.dtnf-theme-light .dtnf-btn-back-confirm,
.dtnf-theme-light .dtnf-btn-back {
  background: #f8fafc !important;
  color: #475569 !important;
  border-color: #d1d5db !important;
  min-height: 44px !important;
}
.dtnf-theme-light .dtnf-btn-choose-another {
  background: transparent !important;
  color: #475569 !important;
  border-color: #d1d5db !important;
  min-height: 44px !important;
}
.dtnf-theme-light .dtnf-btn-choose-another:hover {
  color: #ff5c1a !important;
  border-color: #ff5c1a !important;
}

/* Alertas */
.dtnf-theme-light .dtnf-alert {
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
  border: 1px solid !important;
  padding: 12px 16px !important;
}
.dtnf-theme-light .dtnf-alert--error {
  background: #fef2f2 !important;
  border-color: #fecaca !important;
  color: #991b1b !important;
}
.dtnf-theme-light .dtnf-alert--success {
  background: #f0fdf4 !important;
  border-color: #bbf7d0 !important;
  color: #166534 !important;
}

/* Calendario — cards de data */
.dtnf-theme-light .dtnf-calendar-prompt,
.dtnf-theme-light .dtnf-slots-title {
  color: #475569 !important;
  font-weight: 600 !important;
}
.dtnf-theme-light .dtnf-calendar-hint { color: #64748b !important; }
.dtnf-theme-light .dtnf-calendar-scroll {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-flex-wrap: wrap !important;
  -ms-flex-wrap: wrap !important;
  flex-wrap: wrap !important;
  gap: 0.375rem !important;
  -webkit-box-pack: center !important;
  -webkit-justify-content: center !important;
  -ms-flex-pack: center !important;
  justify-content: center !important;
}
.dtnf-theme-light .dtnf-date-card {
  background: #fff !important;
  border: 1.5px solid #d1d5db !important;
  color: #1a1a2e !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  -webkit-transition: border-color .2s, background .2s !important;
  transition: border-color .2s, background .2s !important;
  min-width: 0 !important;
  -webkit-tap-highlight-color: transparent !important;
}
.dtnf-theme-light .dtnf-date-card *         { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-date-card-weekday   { color: #64748b !important; font-size: .75rem !important; }
.dtnf-theme-light .dtnf-date-card-num       { color: #1a1a2e !important; font-weight: 700 !important; font-size: 1.4rem !important; }
.dtnf-theme-light .dtnf-date-card-month     { color: #475569 !important; font-size: .75rem !important; }
.dtnf-theme-light .dtnf-date-card:hover:not(.dtnf-date-card--selected) {
  border-color: #93b4f5 !important;
  background: #f0f6ff !important;
  -webkit-transform: translateY(-2px) !important;
  transform: translateY(-2px) !important;
  -webkit-box-shadow: 0 4px 12px rgba(37,99,235,.1) !important;
  box-shadow: 0 4px 12px rgba(37,99,235,.1) !important;
}
.dtnf-theme-light .dtnf-date-card--selected {
  background: #2563eb !important;
  background: -webkit-linear-gradient(315deg,#2563eb 0%,#1d4ed8 100%) !important;
  background: linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%) !important;
  border-color: #2563eb !important;
  color: #fff !important;
  -webkit-transform: translateY(-2px) !important;
  transform: translateY(-2px) !important;
  -webkit-box-shadow: 0 4px 18px rgba(37,99,235,.35) !important;
  box-shadow: 0 4px 18px rgba(37,99,235,.35) !important;
}
.dtnf-theme-light .dtnf-date-card--selected:hover {
  background: #1d4ed8 !important;
  background: -webkit-linear-gradient(315deg,#1d4ed8 0%,#1e40af 100%) !important;
  background: linear-gradient(135deg,#1d4ed8 0%,#1e40af 100%) !important;
  border-color: #1d4ed8 !important;
}
.dtnf-theme-light .dtnf-date-card--selected *,
.dtnf-theme-light .dtnf-date-card--selected .dtnf-date-card-weekday,
.dtnf-theme-light .dtnf-date-card--selected .dtnf-date-card-num,
.dtnf-theme-light .dtnf-date-card--selected .dtnf-date-card-month { color: #fff !important; }

/* Slots de horario */
.dtnf-theme-light .dtnf-slot-btn {
  background: #fff !important;
  border: 1.5px solid #d1d5db !important;
  color: #1a1a2e !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  -webkit-transition: all .2s !important;
  transition: all .2s !important;
  min-height: 44px !important;
  -webkit-tap-highlight-color: transparent !important;
}
.dtnf-theme-light .dtnf-slot-btn * { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-slot-btn:hover:not(:disabled):not(.dtnf-slot-btn--selected) {
  border-color: #93b4f5 !important;
  color: #2563eb !important;
  background: #f0f6ff !important;
  -webkit-transform: translateY(-2px) !important;
  transform: translateY(-2px) !important;
  -webkit-box-shadow: 0 4px 12px rgba(37,99,235,.1) !important;
  box-shadow: 0 4px 12px rgba(37,99,235,.1) !important;
}
.dtnf-theme-light .dtnf-slot-btn--selected {
  background: #2563eb !important;
  background: -webkit-linear-gradient(315deg,#2563eb 0%,#1d4ed8 100%) !important;
  background: linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%) !important;
  border-color: #2563eb !important;
  color: #fff !important;
  -webkit-transform: translateY(-2px) !important;
  transform: translateY(-2px) !important;
  -webkit-box-shadow: 0 4px 18px rgba(37,99,235,.35) !important;
  box-shadow: 0 4px 18px rgba(37,99,235,.35) !important;
}
.dtnf-theme-light .dtnf-slot-btn--selected:hover {
  background: #1d4ed8 !important;
  background: -webkit-linear-gradient(315deg,#1d4ed8 0%,#1e40af 100%) !important;
  background: linear-gradient(135deg,#1d4ed8 0%,#1e40af 100%) !important;
  border-color: #1d4ed8 !important;
}
.dtnf-theme-light .dtnf-slot-btn--selected *,
.dtnf-theme-light .dtnf-slot-btn--selected:hover * { color: #fff !important; }
.dtnf-theme-light .dtnf-slots-empty-state   { color: #64748b !important; }
.dtnf-theme-light .dtnf-loader-dots span    { background: #ff5c1a !important; }
.dtnf-theme-light .dtnf-slots-loader p      { color: #475569 !important; }

/* Confirmacao */
.dtnf-theme-light .dtnf-confirm-panel { background: #fff !important; color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-confirm-panel * { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-confirm-title   { color: #1a1a2e !important; font-weight: 700 !important; }
.dtnf-theme-light .dtnf-confirm-icon    { color: #059669 !important; }
.dtnf-theme-light .dtnf-confirm-desc    { color: #475569 !important; }
.dtnf-theme-light .dtnf-confirm-desc strong { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-confirm-details {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
}
.dtnf-theme-light .dtnf-confirm-detail-row   { border-bottom: 1px solid #e2e8f0 !important; }
.dtnf-theme-light .dtnf-confirm-detail-label { color: #64748b !important; font-weight: 400 !important; }
.dtnf-theme-light .dtnf-confirm-detail-value { color: #1a1a2e !important; font-weight: 600 !important; }
.dtnf-theme-light .dtnf-confirm-commitment {
  background: #fffbeb !important;
  border: 1px solid #fde68a !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
}
.dtnf-theme-light .dtnf-confirm-commitment * { color: #92400e !important; }

/* Preloader de agendamento */
.dtnf-theme-light .dtnf-booking-preloader { background: rgba(255,255,255,.92) !important; }
.dtnf-theme-light .dtnf-booking-spinner { color: #ff5c1a !important; }
.dtnf-theme-light .dtnf-booking-preloader-msg { color: #1a1a2e !important; }

/* Sucesso */
.dtnf-theme-light .dtnf-success,
.dtnf-theme-light .dtnf-success-panel { background: #fff !important; color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-success *,
.dtnf-theme-light .dtnf-success-panel * { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-success-title   { color: #1a1a2e !important; font-weight: 700 !important; }
.dtnf-theme-light .dtnf-success-msg     { color: #475569 !important; }
.dtnf-theme-light .dtnf-success-msg a   { color: #ff5c1a !important; }
.dtnf-theme-light .dtnf-success-msg strong { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-success-svg circle,
.dtnf-theme-light .dtnf-success-svg polyline,
.dtnf-theme-light .dtnf-success-svg path { stroke: #059669 !important; }
.dtnf-theme-light .dtnf-warning-svg circle,
.dtnf-theme-light .dtnf-warning-svg line,
.dtnf-theme-light .dtnf-warning-svg path { stroke: #d97706 !important; }
.dtnf-theme-light .dtnf-success--warning .dtnf-success-title { color: #92400e !important; }
.dtnf-theme-light .dtnf-booking-summary {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
  color: #1a1a2e !important;
}
.dtnf-theme-light .dtnf-booking-summary * { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-summary-list      { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-summary-list li   { border-bottom: 1px solid #e2e8f0 !important; color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-summary-list strong { color: #475569 !important; }

/* Agenda (Google / Outlook) */
.dtnf-theme-light .dtnf-btn-calendar {
  background: #fff !important;
  border: 1.5px solid #d1d5db !important;
  color: #1a1a2e !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  min-height: 44px !important;
}
.dtnf-theme-light .dtnf-btn-calendar *     { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-btn-calendar:hover { background: #f8fafc !important; border-color: #94a3b8 !important; }
.dtnf-theme-light .dtnf-btn-google,
.dtnf-theme-light .dtnf-btn-outlook {
  background: #fff !important;
  border: 1.5px solid #d1d5db !important;
  color: #1a1a2e !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
}

/* Video */
.dtnf-theme-light .dtnf-video-section   { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-video-separator { border-color: #e2e8f0 !important; }
.dtnf-theme-light .dtnf-video-intro     { color: #475569 !important; }
.dtnf-theme-light .dtnf-video-intro strong { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-btn-video {
  background: #f8fafc !important;
  border: 1.5px solid #d1d5db !important;
  color: #1a1a2e !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
  min-height: 48px !important;
}
.dtnf-theme-light .dtnf-btn-video:hover { background: #f1f5f9 !important; border-color: #94a3b8 !important; }

/* Privacidade */
.dtnf-theme-light .dtnf-privacy-notice,
.dtnf-theme-light .dtnf-privacy-line,
.dtnf-theme-light .dtnf-privacy-secure { color: #64748b !important; }
.dtnf-theme-light .dtnf-privacy-line a,
.dtnf-theme-light .dtnf-privacy-line strong,
.dtnf-theme-light .dtnf-privacy-notice a,
.dtnf-theme-light .dtnf-privacy-notice strong,
.dtnf-theme-light .dtnf-privacy-secure a,
.dtnf-theme-light .dtnf-privacy-secure strong,
.dtnf-theme-light .dtnf-checkbox-label a,
.dtnf-theme-light .dtnf-checkbox-label strong { color: #ff5c1a !important; text-decoration: underline !important; }
.dtnf-theme-light .dtnf-privacy-icon { color: #059669 !important; }

/* Estado vazio */
.dtnf-theme-light .dtnf-empty-title { color: #1a1a2e !important; }
.dtnf-theme-light .dtnf-empty-text  { color: #475569 !important; }

/* Spinner */
.dtnf-theme-light .dtnf-spinner {
  border-color: rgba(255,92,26,.2) !important;
  border-top-color: #ff5c1a !important;
}

/* Misc */
.dtnf-theme-light .dtnf-req { color: #dc2626 !important; }

/* ============================================
   RESPONSIVO — Mobile
   ============================================ */
@media (max-width: 480px) {
  .dtnf-theme-light .dtnf-date-card-num { font-size: 1.1rem !important; }
  .dtnf-theme-light .dtnf-date-card-weekday,
  .dtnf-theme-light .dtnf-date-card-month { font-size: .6rem !important; }
  .dtnf-theme-light .dtnf-radio-option {
    padding: 12px 14px !important;
    font-size: .9rem !important;
  }
}

@media (max-width: 360px) {
  .dtnf-theme-light .dtnf-btn-primary {
    padding: .9rem 1.5rem !important;
    font-size: 1rem !important;
  }
  .dtnf-theme-light .dtnf-date-card-num { font-size: 1rem !important; }
}
