/* Shared customer tool surfaces; deliberately scoped away from account/admin pages. */
.tool-workspace-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(250px, .37fr); gap: 28px; align-items: start; }
.tool-workspace-main { min-width: 0; }
.tool-help { min-width: 0; padding: 26px 22px; border: 1px solid #e2ecfb; border-radius: 9px; background: linear-gradient(145deg, #f8fbff, #f6faff); }
.tool-help h3 { margin: 0; color: #09142e; font-size: 19px; font-weight: 700; }
.tool-help-intro { margin: 8px 0 0; color: #6f81a0; font-size: 12px; line-height: 1.8; overflow-wrap: anywhere; }
.tool-help-steps { display: grid; gap: 38px; margin: 30px 0 0; padding: 0; list-style: none; counter-reset: tool-step; }
.tool-help-steps li { position: relative; min-height: 52px; padding-left: 49px; counter-increment: tool-step; }
.tool-help-steps li::before { content: counter(tool-step); position: absolute; top: 0; left: 3px; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: linear-gradient(135deg, #1f7aff, #77b9ff); color: #fff; font-size: 16px; }
.tool-help-steps li:not(:last-child)::after { content: ""; position: absolute; top: 33px; bottom: -34px; left: 18px; width: 1px; background: #bfd9fd; }
.tool-help-steps strong { color: #132747; font-size: 15px; font-weight: 600; }
.tool-help-steps p { margin: 7px 0 0; color: #6e83a7; font-size: 12px; line-height: 1.8; overflow-wrap: anywhere; }
.tool-help-mobile { display: none; }
.tool-help-example { margin-top: 24px; padding-top: 18px; border-top: 1px solid #dce8fa; color: #486a9d; font-size: 12px; }
.tool-help-example summary { cursor: pointer; }
.tool-help-example img { display: block; width: 100%; max-width: 100%; height: auto; margin: 14px 0 0; border: 1px solid #dce8fa; border-radius: 8px; }

/* X visibility: keep the existing labels and table separate from account status. */
.homepage #platform-workspace[data-active-platform="x_search"] .checker-platform-heading h2 { font-size: 30px; }
.homepage #platform-workspace[data-active-platform="x_search"] .checker-input-layout { grid-template-columns: minmax(0, 1fr) minmax(250px, .37fr); gap: 28px; align-items: start; }
.homepage #x-search-query-mode-wrap { margin: 0 0 22px; }
.homepage #x-search-query-mode { padding: 0; border: 0; }
.homepage #x-search-query-mode legend { padding: 0; margin-bottom: 9px; font-size: 13px; font-weight: 700; color: #182b49; }
.homepage #x-search-query-mode .search-mode-choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.homepage #x-search-query-mode .search-mode-choice { min-width: 0; min-height: 46px; padding: 11px 16px; border: 1px solid #dbe6f8; border-radius: 8px; background: #fff; color: #253955; font-size: 14px; font-weight: 600; cursor: pointer; }
.homepage #x-search-query-mode .search-mode-choice:has(input:checked) { border-color: #83b0ff; background: #eef5ff; color: #0064f5; box-shadow: none; }
.homepage #x-search-query-mode .search-mode-choice:has(input:disabled) { opacity: .55; cursor: not-allowed; }
.homepage #x-search-query-mode input { accent-color: #0064f5; }
.homepage .x-search-mode-notes { margin-top: 10px; color: #7588a8; font-size: 12px; line-height: 1.7; }
.homepage .x-search-mode-notes summary { width: fit-content; cursor: pointer; }
.homepage .x-search-mode-notes p { margin: 6px 0 0; }
.homepage .visibility-summary .check-summary-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.homepage .visibility-summary[data-query-mode="username"] .check-summary-stats { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.homepage .visibility-summary .check-stat > span { display: block; padding: 0 8px; line-height: 1.6; overflow-wrap: anywhere; }
.homepage .visibility-summary .check-stat[hidden] { display: none !important; }
.homepage .visibility-summary .check-stat.is-pending { border-left: 0; }
.homepage .visibility-summary .check-stat.is-partial strong { color: #d78816; }
.homepage #x-search-results { margin-top: 22px; }
.homepage .visibility-filter { border-color: #d5e0f1; color: #486485; background: #fff; font-weight: 600; }
.homepage .visibility-filter.is-active { border-color: #17233b; background: #17233b; color: #fff; }
.homepage .visibility-table-wrap { border-color: #dce7f8; border-radius: 9px; }
.homepage .visibility-table th { background: #f3f7fc; color: #233b5c; }
.homepage .rules-note { border-color: #e4ecf8; background: #f6f9fd; color: #6d81a2; }

/* Face unlock, including the existing confirmation and records surfaces. */
.homepage #x-unlock-panel .public-unlock-heading { margin-bottom: 4px; }
.homepage #x-unlock-panel .public-unlock-heading h2 { margin: 0; color: #06122e; font-size: 30px; line-height: 1.4; letter-spacing: -.5px; }
.homepage #x-unlock-panel .public-unlock-kicker { font-weight: 600; color: #7286a7; }
.homepage #x-unlock-panel .public-unlock-prices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 0; border: 0; background: transparent; }
.homepage #x-unlock-panel .public-unlock-prices p { min-width: 0; margin: 0; padding: 16px 18px; border: 1px solid #dfe9f8; border-radius: 9px; background: #f8fbff; color: #5b7295; font-size: 13px; }
.homepage #x-unlock-panel .public-unlock-prices strong { display: inline-block; color: #0064f5; font-size: 26px; }
.homepage #x-unlock-panel .public-unlock-prices .public-unlock-free-rule { grid-column: 1 / -1; padding: 9px 14px; color: #15803d; background: #f2fbf5; border-color: #e0f0e4; font-size: 13px; }
.homepage #x-unlock-panel .public-unlock-prices p:last-child { grid-column: 2; grid-row: 1; }
.homepage #x-unlock-panel .public-unlock-muted { color: #7185a5; font-size: 12px; line-height: 1.8; }
.homepage #x-unlock-panel .public-unlock-note { border: 1px solid #e1eafa; border-radius: 8px; background: #f6f9ff; color: #536d94; }
.homepage #x-unlock-panel .public-unlock-note.is-error { border-color: #f7d4d8; background: #fff5f5; color: #b42333; }
.homepage #x-unlock-panel textarea { min-height: 164px; border-color: #d5e0f1; border-radius: 8px; padding: 13px 15px; }
.homepage #x-unlock-panel .public-unlock-field { color: #182b49; font-size: 13px; }
.homepage #x-unlock-panel .public-unlock-input-meta { justify-content: flex-end; color: #7b8eab; }
.homepage #x-unlock-quote-panel { margin-top: 16px; padding: 14px 16px; border: 1px solid #e1ecfb; border-radius: 9px; background: #f8fbff; }
.homepage #x-unlock-quote-panel p { margin: 0; }
.homepage #x-unlock-quote-panel strong { color: #0064f5; font-size: 20px; }
.homepage #x-unlock-form > .public-unlock-actions { margin-top: 20px; }
.homepage #x-unlock-confirm { order: -1; min-width: 134px; min-height: 46px; font-size: 15px; }
.homepage #x-unlock-clear { min-width: 98px; min-height: 46px; }
.homepage #x-unlock-message, .homepage #x-unlock-order-link { margin-top: 24px; }
.homepage #x-unlock-panel .public-unlock-success-dialog { border-color: #dce8fa; border-radius: 14px; color: #132747; box-shadow: 0 24px 70px #14274925; }
.homepage #x-unlock-panel .public-unlock-success-dialog::backdrop { background: #182d4c50; backdrop-filter: blur(3px); }
.homepage #x-unlock-panel .public-unlock-success-dialog strong { color: #0064f5; }
.homepage #x-unlock-records-host .member-shell { max-width: none; margin: 0; padding: 0; }
.homepage #x-unlock-records-host .member-table-wrap { border-color: #dce7f8; border-radius: 9px; }
.homepage #x-unlock-records-host th { background: #f3f7fc; color: #233b5c; }
.homepage #x-unlock-records-host .member-order-results { border-color: #e1ecfb; background: #f8fbff; border-radius: 9px; }
.homepage #x-unlock-records-host .member-result-counts > div { border-color: #e1eafa; border-radius: 8px; background: #fff; }

/* Local text tools: one workspace, compact choices, paired editors. */
.homepage #text-tools .text-tools-body { padding: 26px 28px; background: #fff; }
.homepage #text-tools .text-tools-intro { align-items: flex-start; margin-bottom: 22px; }
.homepage #text-tools .text-tools-intro h2 { color: #06122e; font-size: 30px; line-height: 1.4; letter-spacing: -.5px; }
.homepage #text-tools .text-tools-kicker { color: #7286a7; font-weight: 600; letter-spacing: 0; }
.homepage #text-tools .text-tools-privacy { max-width: 42%; background: #edf5ff; border-color: #e1ecfb; color: #4677bb; font-size: 12px; font-weight: 500; line-height: 1.6; }
.homepage #text-tools .text-tool-tabs { margin: 0 0 20px; gap: 10px; }
.homepage #text-tools .text-tool-tab { min-height: 58px; border-radius: 8px; border-color: #dbe6f8; box-shadow: none; }
.homepage #text-tools .text-tool-tab.is-active { color: #0064f5; border-color: #83b0ff; background: #eef5ff; }
.homepage #text-tools .text-tool-panel { padding: 0; border: 0; background: transparent; }
.homepage #text-tools .text-tool-panel-heading { flex-wrap: wrap; gap: 8px; }
.homepage #text-tools .text-tool-panel-heading h3 { color: #182b49; font-size: 16px; }
.homepage #text-tools .text-tool-panel-heading p { color: #7588a8; font-size: 12px; line-height: 1.8; }
.homepage #text-tools .text-tool-format { max-width: 100%; padding: 5px 8px; background: #f4f8ff; color: #7186a7; font-size: 11px; text-align: left; }
.homepage #text-tools .text-smart-settings { margin-bottom: 20px; padding: 16px; border: 1px solid #e1eafa; border-radius: 9px; background: #f8fbff; }
.homepage #text-tools .text-smart-action-row { gap: 8px; }
.homepage #text-tools .text-smart-mode { min-width: 0; min-height: 38px; padding: 8px 12px; font-size: 12px; white-space: normal; }
.homepage #text-tools .text-smart-mode.is-active { border-color: #83b0ff; background: #edf5ff; color: #0064f5; box-shadow: none; }
.homepage #text-tools .text-smart-field-settings { border-color: #e1eafa; border-radius: 8px; background: #fff; }
.homepage #text-tools .text-smart-field-card { border-radius: 8px; border-color: #dce7f8; }
.homepage #text-tools .text-common-actions { gap: 8px; margin-bottom: 20px; padding: 0; background: transparent; border: 0; }
.homepage #text-tools .text-common-action { border-color: #dbe6f8; border-radius: 8px; background: #fff; color: #486485; box-shadow: none; }
.homepage #text-tools .text-common-action.is-active { border-color: #83b0ff; background: #edf5ff; color: #0064f5; box-shadow: none; }
.homepage #text-tools .text-tool-editor > label, .homepage #text-tools .text-tool-label-row label { color: #182b49; font-size: 13px; font-weight: 600; }
.homepage #text-tools .text-tool-editor textarea { min-height: 180px; border-color: #d5e0f1; border-radius: 8px; padding: 13px 15px; font-size: 13px; }
.homepage #text-tools textarea[readonly] { background: #f8fbff; }
.homepage #text-tools input, .homepage #text-tools select { border-color: #d5e0f1; border-radius: 8px; }
.homepage #text-tools .text-tool-count { color: #0064f5; background: #edf5ff; }
.homepage #text-tools .text-tool-actions { margin-top: 20px; gap: 10px; }
.homepage #text-tools .text-tool-actions .button-primary { min-height: 46px; min-width: 134px; font-size: 15px; }
.homepage #text-tools .text-tool-help, .homepage #text-tools .text-smart-segment-summary { color: #7588a8; font-size: 12px; line-height: 1.8; }
.homepage #text-tools .text-split-table-wrap { border-color: #dce7f8; border-radius: 9px; }

/* Both embedded and standalone SMS use the same markup and customer styles. */
.sms-shell { --primary: #0064f5; --primary-dark: #0058d9; --ink: #09142e; --line: #dce7f8; }
.sms-shell .sms-workspace-card { padding: 26px 28px; border-color: #dce7f8; border-radius: 9px; background: #fff; }
.sms-shell .sms-workspace-card > .sms-heading { margin-bottom: 22px; }
.sms-shell .sms-workspace-card > .sms-heading h2 { margin: 0; color: #06122e; font-size: 30px; line-height: 1.4; letter-spacing: -.5px; }
.sms-shell .member-muted { color: #7185a5; font-size: 12px; line-height: 1.8; }
.sms-shell .member-tabs button { min-height: 40px; border-color: #dbe6f8; border-radius: 8px; background: #fff; color: #486485; }
.sms-shell .member-tabs button[aria-selected="true"] { border-color: #83b0ff; background: #edf5ff; color: #0064f5; }
.sms-shell .button { min-height: 40px; border-color: #d5e0f1; border-radius: 8px; background: #fff; color: #172747; font-weight: 600; text-decoration: none; box-shadow: none; }
.sms-shell .button-primary { border-color: #0064f5; background: #0064f5; color: #fff; }
.sms-shell .button:hover:not(:disabled) { border-color: #a7c7ff; background: #f5f9ff; transform: none; }
.sms-shell .button-primary:hover:not(:disabled) { border-color: #0058d9; background: #0058d9; color: #fff; }
.sms-shell .sms-selection { gap: 12px; }
.sms-shell .member-field, .sms-shell .sms-picker { margin-top: 0; color: #182b49; font-size: 13px; }
.sms-shell input, .sms-shell select { border-color: #d5e0f1; border-radius: 8px; color: #253955; font-size: 13px; }
.sms-shell .sms-picker-list { border-color: #dce7f8; border-radius: 9px; box-shadow: 0 8px 24px #214d931a; }
.sms-shell .sms-purchase-row { margin-top: 18px; padding: 18px 20px; border-color: #e1ecfb; border-radius: 9px; background: #f8fbff; }
.sms-shell .sms-price strong { color: #0064f5; font-size: 30px; }
.sms-shell .sms-current { border-color: #e1ecfb; border-radius: 9px; background: #f8fbff; }
.sms-shell .sms-result { border-color: #dce7f8; border-radius: 9px; background: #fff; }
.sms-shell .sms-result strong { color: #132747; }
.sms-shell .sms-result:has([data-sms-id="code"]), .sms-shell .sms-result:has(#code) { background: #f7fcf9; border-color: #d9eddf; }
.sms-shell .sms-result [data-sms-id="code"], .sms-shell .sms-result #code { color: #15803d; }
.sms-shell .sms-order-card, .sms-shell .sms-message-history article { border-color: #dce7f8; border-radius: 9px; background: #fff; }
.sms-shell .sms-repeat { border-color: #dce7f8; border-radius: 9px; }
.sms-shell .sms-notice-header { margin-bottom: 16px; padding: 14px 18px; border: 1px solid #e1ecfb; border-radius: 9px; background: #f8fbff; box-shadow: none; }
.sms-shell .sms-notice-header h1, .sms-shell .sms-notice-header h2 { font-size: 16px; }
.homepage .sms-home-panel:has(.sms-embedded) { padding: 0; border: 0; background: transparent; box-shadow: none; }
.homepage .sms-home-panel > .module-paid-note { margin: 0 0 14px; }
.homepage .sms-embedded .sms-notice-header { margin-top: 0; }

@media (max-width: 1023px) {
  .tool-workspace-layout { display: block; }
  .tool-help-desktop { display: none; }
  .tool-help-mobile { display: block; margin-top: 16px; padding: 12px 14px; }
  .tool-help-mobile > summary { color: #647fa6; cursor: pointer; font-size: 12px; }
  .tool-help-mobile .tool-help-steps { gap: 20px; margin-top: 20px; }
  .tool-help-mobile .tool-help-steps li:not(:last-child)::after { bottom: -17px; }
}
@media (max-width: 760px) {
  .homepage #platform-workspace[data-active-platform="x_search"] .checker-platform-heading h2 { font-size: 24px; }
  .homepage #x-search-query-mode .search-mode-choice { min-height: 42px; padding: 9px; font-size: 12px; gap: 7px; }
  .homepage .visibility-summary .check-summary-stats, .homepage .visibility-summary[data-query-mode="username"] .check-summary-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 18px; }
  .homepage .visibility-summary .check-stat { border-left: 0; }
  .homepage .visibility-summary .check-stat:nth-child(even) { border-left: 1px solid #dce5f2; }
  .homepage .visibility-summary[data-query-mode="comment"] .check-stat.is-unknown { border-left: 1px solid #dce5f2; }
  .homepage .visibility-summary[data-query-mode="username"] .check-stat.is-unknown { grid-column: 1 / -1; }
  .homepage .visibility-summary .check-stat > span { font-size: 11px; }
  .homepage #x-unlock-panel .public-unlock-heading h2, .homepage #text-tools .text-tools-intro h2, .sms-shell .sms-workspace-card > .sms-heading h2 { font-size: 24px; }
  .homepage #x-unlock-panel .public-unlock-prices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .homepage #x-unlock-panel .public-unlock-prices p { padding: 12px 10px; font-size: 11px; }
  .homepage #x-unlock-panel .public-unlock-prices strong { margin-left: 0; font-size: 22px; }
  .homepage #x-unlock-panel .public-unlock-prices .public-unlock-free-rule { font-size: 12px; }
  .homepage #x-unlock-panel textarea { min-height: 145px; font-size: 12px; }
  .homepage #x-unlock-form > .public-unlock-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .homepage #x-unlock-confirm, .homepage #x-unlock-clear { min-width: 0; min-height: 40px; font-size: 13px; }
  .homepage #text-tools .text-tools-body, .sms-shell .sms-workspace-card { padding: 17px 15px; }
  .homepage #text-tools .text-tools-intro { flex-direction: column; gap: 12px; }
  .homepage #text-tools .text-tools-privacy { max-width: 100%; padding: 8px 10px; font-size: 11px; }
  .homepage #text-tools .text-smart-settings { padding: 12px; }
  .homepage #text-tools .text-tool-editor-grid, .homepage #text-tools .text-compare-editor-grid { grid-template-columns: 1fr; }
  .homepage #text-tools .text-tool-editor textarea { min-height: 140px; font-size: 12px; }
  .homepage #text-tools .text-tool-actions { gap: 8px; }
  .homepage #text-tools .text-tool-actions .button { min-width: 0; font-size: 12px; }
  .homepage #text-tools .text-tool-actions .button-primary { min-height: 40px; font-size: 13px; }
  .sms-shell .sms-selection { grid-template-columns: 1fr; gap: 4px; }
  .sms-shell .sms-result-grid { grid-template-columns: 1fr; }
  .sms-shell .sms-result { padding: 16px; }
  .sms-shell .sms-purchase-row { padding: 14px; }
  .sms-shell .sms-purchase-row .button { min-width: 0; width: 100%; min-height: 42px; font-size: 14px; }
  .sms-shell .sms-notice-header { padding: 12px 14px; }
}
