/* Approved BIZ info-box component, shared by the customer app and operations.
 * Authored classes also cover freshly rendered service content; no DOM observer
 * is needed. Important declarations isolate the component from legacy page
 * styles and font-size overrides. Hidden states keep their existing behavior.
 */
.biz-info-box {
  --info-box-ink: #202422;
  --info-box-copy: #53647a;
  --info-box-surface: #edf3fa;
  --info-box-icon-surface: #dfe9f6;
  --info-box-icon-ink: #3b608c;
  --info-box-link: #0056f5;
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: 32px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 12px !important;
  flex-shrink: 0;
  width: auto;
  min-width: 0;
  height: auto !important;
  min-height: 0 !important;
  margin: 12px 0 !important;
  padding: 16px !important;
  border: 0 !important;
  border-radius: 20px !important;
  box-shadow: none !important;
  background: var(--info-box-surface) !important;
  color: var(--info-box-copy) !important;
  font-family: "Vazirmatn Regular", Tahoma, sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 24px !important;
  letter-spacing: 0 !important;
  text-align: start !important;
}

html[data-color-scheme="dark"] .biz-info-box {
  --info-box-ink: #edf2f8;
  --info-box-copy: #bac9db;
  --info-box-surface: #1b2c43;
  --info-box-icon-surface: #2a4160;
  --info-box-icon-ink: #a5c9fa;
  --info-box-link: #9ac2ff;
}

.biz-info-box[hidden] { display: none !important; }

.biz-info-box:not(:has(.biz-info-content > strong)) {
  align-items: center !important;
}

.biz-info-box > .biz-info-icon {
  box-sizing: border-box;
  display: grid !important;
  place-items: center;
  align-self: start !important;
  flex-shrink: 0;
  width: 32px !important;
  min-width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  background: var(--info-box-icon-surface) !important;
  color: var(--info-box-icon-ink) !important;
  transform: none !important;
}

.biz-info-box:not(:has(.biz-info-content > strong)) > .biz-info-icon {
  align-self: center !important;
}

/* A direct SVG carries its own tile; wrapped legacy icons use the same glyph. */
.biz-info-box > svg.biz-info-icon {
  display: block !important;
  padding: 6px !important;
}

.biz-info-box > svg.biz-info-icon,
.biz-info-box > .biz-info-icon > svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.75 !important;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.biz-info-box > .biz-info-icon > svg {
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  transform: none !important;
}

.biz-info-box > .biz-info-content,
.phone.next-ui-theme.app-theme-refined .biz-info-box > .biz-info-content,
.biz-info-box > .biz-info-content > :is(p, small, span) {
  display: block !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--info-box-copy) !important;
  font-family: "Vazirmatn Regular", Tahoma, sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 24px !important;
  letter-spacing: 0 !important;
  text-align: start !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
}

.biz-info-box .biz-info-content > strong {
  display: block !important;
  margin: 4px 0 6px !important;
  color: var(--info-box-ink) !important;
  font-family: "Vazirmatn SemiBold", Tahoma, sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 24px !important;
  letter-spacing: 0 !important;
  text-align: start !important;
}

.biz-info-box .biz-info-content :is(button, a) {
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: auto !important;
  max-width: 100%;
  min-height: 44px !important;
  margin: 6px 0 -6px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  background: transparent !important;
  color: var(--info-box-link) !important;
  font-family: "Vazirmatn Medium", Tahoma, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 24px !important;
  text-align: start !important;
  text-decoration: none;
  cursor: pointer;
}

.biz-info-box .biz-info-content :is(button, a):hover {
  text-decoration: underline;
  text-underline-offset: 5px;
}

.biz-info-box .biz-info-content :is(button, a) > svg {
  flex-shrink: 0;
  width: 16px !important;
  height: 16px !important;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.75;
}

@media (max-width: 360px) {
  .biz-info-box { gap: 10px !important; }
}
