/* Cellstore widget theme — scoped to #loadWidgetForm so vendor markup keeps
   working (ids, required fields, captcha, validation and messages untouched).
   Matches the iFixandRepair Charlotte site: white surfaces, near-black ink
   headings, brand blue buttons, Inter, gray borders, 8-12px corners. */
:root { color-scheme: light; }
html, body { margin: 0; padding: 0; background: #ffffff; }
body {
  font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  color: #090e17;
  -webkit-font-smoothing: antialiased;
}

#loadWidgetForm {
  font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  max-width: 680px;
  margin: 0 auto;
  padding: 4px;
  box-sizing: border-box;
}

/* Form panel: vendor sets inline background/color/border — neutralize to the
   site card style without hiding any content. */
#loadWidgetForm form > div[style] {
  background: #ffffff !important;
  color: #090e17 !important;
  border: 1px solid #e4e7ec !important;
  border-radius: 12px !important;
  padding: 24px !important;
  max-width: 680px !important;
  box-sizing: border-box;
}

/* Layout panels: drop floats/fixed widths so narrow screens stack cleanly. */
#loadWidgetForm .wid100Per { float: none !important; width: 100% !important; }
#loadWidgetForm .wid40Per,
#loadWidgetForm .wid60Per {
  float: none !important;
  width: 100% !important;
  padding: 0 !important;
}

/* Headings */
#loadWidgetForm h1, #loadWidgetForm h2, #loadWidgetForm h3, #loadWidgetForm h4 {
  color: #090e17;
  font-weight: 700;
  line-height: 1.25;
}

/* Inputs / selects / textareas (vendor class .widgetInput) */
#loadWidgetForm .widgetInput {
  width: 100% !important;
  box-sizing: border-box;
  height: 48px;
  line-height: normal;
  padding: 0 14px;
  background: #ffffff;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  color: #090e17;
  font-family: inherit;
  font-size: 16px; /* prevents iOS zoom on focus */
}
#loadWidgetForm textarea.widgetInput {
  height: auto;
  line-height: 1.5;
  padding: 12px 14px;
}
#loadWidgetForm select.widgetInput { padding-right: 32px; }
#loadWidgetForm .widgetInput:focus {
  outline: 2px solid #087bff;
  outline-offset: 1px;
  border-color: #087bff;
}
#loadWidgetForm .widgetInput::placeholder { color: #667085; }

/* Submit buttons (vendor class .widgetSubmit) */
#loadWidgetForm .widgetSubmit {
  background: #087bff !important;
  color: #ffffff !important;
  border: none;
  border-radius: 8px !important;
  min-height: 48px;
  line-height: 48px !important;
  padding: 0 24px !important;
  font-family: inherit !important;
  font-size: 15px !important;
  font-weight: 600;
  cursor: pointer;
}
#loadWidgetForm .widgetSubmit:hover { background: #0666d6 !important; }
#loadWidgetForm .widgetSubmit:focus-visible {
  outline: 2px solid #090e17;
  outline-offset: 2px;
}

/* Generic links/buttons inside listings (services/product/cellPhones) */
#loadWidgetForm a { color: #087bff; }
#loadWidgetForm button { font-family: inherit; cursor: pointer; }
#loadWidgetForm img { max-width: 100%; height: auto; }

/* Error/validation text keeps the provider's own color — do not recolor. */

@media (max-width: 640px) {
  #loadWidgetForm { padding: 2px; }
  #loadWidgetForm form > div[style] { padding: 16px !important; }
}
