@media (max-width: 767px) {
  :root {
    --session-navy: #101a36;
    --session-blue: #1267f4;
    --session-green: #10b94f;
    --session-orange: #f59a0a;
    --session-purple: #54208d;
    --session-text-secondary: #68748a;
    --session-border: #e3e7ef;
    --session-background: #fefeff;
    --session-blue-soft: #eaf3fe;
    --session-green-soft: #ecf8ec;
    --session-orange-soft: #fefaf2;
    --session-client-soft: #f6f7f9;
    --session-shadow-card:
      0 1px 2px rgba(16, 26, 54, 0.018),
      0 3px 8px rgba(16, 26, 54, 0.022);
    --session-shadow-subtle: 0 1px 4px rgba(16, 26, 54, 0.018);
  }

  #details-overlay,
  #details-overlay button,
  #details-overlay input,
  #details-overlay select,
  #details-overlay textarea {
    font-family: "Inter", sans-serif;
  }

  #details-overlay {
    position: absolute;
    inset: 0;
    z-index: 300;
    align-items: stretch;
    background: var(--session-background);
    backdrop-filter: none;
    overflow: hidden;
  }

  #details-overlay .overlay-sheet {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 0;
    overflow: hidden;
    background: var(--session-background);
    color: var(--session-navy);
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }

  #details-overlay .session-details-header {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    flex: 0 0 auto;
    min-height: 70px;
    padding: calc(14px + env(safe-area-inset-top)) 18px 10px;
    border: 0;
    background: var(--session-background);
  }

  #details-overlay .btn-close {
    width: 44px;
    height: 44px;
    min-width: 44px;
    padding: 0;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 50%;
    box-shadow: none;
  }

  #details-overlay .btn-close svg {
    width: 22px;
    height: 22px;
  }

  #details-overlay .overlay-header h3 {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    color: var(--session-navy);
    font-family: "Inter", sans-serif;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.035em;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  #details-overlay .overlay-header h3.long-title {
    font-size: 14px;
    letter-spacing: -0.04em;
  }

  #details-overlay .overlay-status-tag {
    margin: 0;
    padding: 6px 11px;
    color: #d77800;
    background: #fff8e8;
    border: 1px solid #f8d99d;
    border-radius: 999px;
    box-shadow: none;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
  }

  #details-overlay .overlay-status-tag.status-agendando {
    color: var(--session-blue);
    background: var(--session-blue-soft);
    border-color: #c9dcfd;
  }

  #details-overlay .overlay-status-tag.status-followup {
    color: var(--session-purple);
    background: #f3ecff;
    border-color: #dfd1f2;
  }

  #details-overlay .overlay-status-tag.status-hoje {
    color: #087d34;
    background: var(--session-green-soft);
    border-color: #c8ebd4;
  }

  #details-overlay .modal-tabs-header {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    flex: 0 0 46px;
    height: 46px;
    margin: 0 18px 14px;
    overflow: hidden;
    background: #fbfcfe;
    border: 1px solid var(--session-border);
    border-radius: 14px;
    box-shadow: var(--session-shadow-subtle);
  }

  #details-overlay .modal-tabs-header .modal-tab-btn {
    position: relative;
    height: 46px;
    padding: 0;
    color: var(--session-text-secondary);
    background: transparent;
    border: 0 !important;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
  }

  #details-overlay .modal-tabs-header .modal-tab-btn::after {
    position: absolute;
    right: 35%;
    bottom: 0;
    left: 35%;
    height: 3px;
    background: transparent;
    border-radius: 3px 3px 0 0;
    content: "";
  }

  #details-overlay .modal-tabs-header .modal-tab-btn.active {
    color: var(--session-blue) !important;
    background: #fff;
    border: 0 !important;
  }

  #details-overlay .modal-tabs-header .modal-tab-btn.active::after {
    background: var(--session-blue);
  }

  #details-overlay .modal-tabs-header .modal-tab-btn:focus-visible {
    outline: 2px solid rgba(18, 103, 244, 0.28);
    outline-offset: -3px;
    border-radius: 10px;
  }

  #details-overlay .overlay-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    padding: 0;
    overflow: hidden;
    background: var(--session-background);
  }

  #details-overlay .modal-tab-content {
    width: 100%;
    min-height: 0;
  }

  #details-overlay #overlay-tab-details-content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 14px;
    padding: 0 18px calc(18px + env(safe-area-inset-bottom));
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
  }

  #details-overlay #overlay-tab-details-content[hidden],
  #details-overlay #overlay-tab-whatsapp-content[hidden] {
    display: none !important;
  }

  #details-overlay .session-detail-card {
    width: 100%;
    flex: 0 0 auto;
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 17px;
    box-shadow: var(--session-shadow-card);
  }

  #details-overlay .session-contact-card {
    overflow: hidden;
  }

  #details-overlay .session-contact-top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    min-height: 88px;
    padding: 12px 12px 12px 14px;
  }

  #details-overlay .session-contact-card:not(.session-contact-card-whatsapp) .session-contact-top {
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 76px;
    padding: 10px 12px 10px 14px;
  }

  #details-overlay .session-contact-identity {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 10px;
  }

  #details-overlay .session-avatar {
    display: inline-flex;
    width: 48px;
    height: 48px;
    min-width: 48px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    box-shadow: none;
  }

  #details-overlay .session-avatar svg {
    width: 27px;
    height: 27px;
  }

  #details-overlay .session-avatar-client {
    color: var(--session-purple);
    background: #f0e9fb;
  }

  #details-overlay .session-contact-copy {
    min-width: 0;
  }

  #details-overlay .session-contact-copy h4 {
    max-width: 100%;
    margin: 0 0 5px;
    overflow: hidden;
    color: var(--session-navy);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  #details-overlay .session-contact-card:not(.session-contact-card-whatsapp) .session-contact-copy h4 {
    margin-bottom: 0;
  }

  #details-overlay .session-contact-copy p {
    display: flex;
    align-items: center;
    min-width: 0;
    margin: 0;
    color: var(--session-text-secondary);
    font-size: 12px;
    line-height: 1.25;
    white-space: nowrap;
  }

  #details-overlay .session-contact-copy p svg {
    width: 14px;
    height: 14px;
    min-width: 14px;
    margin-right: 4px;
    color: var(--session-green);
  }

  #details-overlay .session-contact-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
    min-width: 0;
    padding-left: 8px;
    border-left: 1px solid var(--session-border);
  }

  #details-overlay .session-contact-card:not(.session-contact-card-whatsapp) .session-contact-actions {
    grid-template-columns: 44px;
    justify-content: end;
  }

  #details-overlay .session-action-button {
    display: flex;
    min-width: 0;
    height: 62px;
    padding: 6px 2px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 13px;
    box-shadow: none;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
  }

  #details-overlay .session-contact-card:not(.session-contact-card-whatsapp) .session-action-button {
    width: 44px;
    height: 44px;
    padding: 0;
    gap: 0;
    border-radius: 12px;
  }

  #details-overlay .session-brand-icon {
    display: block;
    width: 19px;
    height: 19px;
  }

  #details-overlay .session-action-button svg {
    width: 18px;
    height: 18px;
    color: var(--session-blue);
  }

  #details-overlay #btn-whatsapp-owner svg,
  #details-overlay #mobile-btn-manual-chat svg {
    color: var(--session-green);
  }

  #details-overlay .session-overflow-button svg {
    color: var(--session-text-secondary);
  }

  #details-overlay .session-property-strip {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 12px;
    padding: 13px 14px;
    border-top: 1px solid var(--session-border);
  }

  #details-overlay .session-property-item {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: 4px;
  }

  #details-overlay button.session-property-item {
    width: 100%;
    padding: 0;
    color: inherit;
    background: transparent;
    border: 0;
    border-radius: 0;
    font: inherit;
    text-align: left;
  }

  #details-overlay .session-property-address {
    grid-column: 1 / -1;
    padding-top: 10px !important;
    border-top: 1px solid var(--session-border) !important;
  }

  #details-overlay .session-property-item > span:last-child,
  #details-overlay .next-session-column > span:last-child {
    display: flex;
    min-width: 0;
    flex-direction: column;
  }

  #details-overlay .session-property-item small,
  #details-overlay .next-session-column small {
    margin-bottom: 3px;
    overflow: visible;
    color: var(--session-text-secondary);
    font-size: 10px;
    font-weight: 400;
    line-height: 1.15;
    white-space: normal;
  }

  #details-overlay .mobile-address-validated-badge {
    display: inline-flex;
    margin-left: 4px;
    align-items: center;
    color: #16a34a;
    vertical-align: -2px;
  }

  #details-overlay .mobile-address-validated-badge[hidden] {
    display: none;
  }

  #details-overlay .mobile-address-validated-badge svg {
    width: 15px;
    height: 15px;
    stroke-width: 2.5;
  }

  #details-overlay .mobile-address-validated-label {
    margin-left: 2px;
    font-size: 10px;
    font-weight: 700;
  }

  #details-overlay .session-property-item strong {
    overflow: visible;
    color: var(--session-navy);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    white-space: normal;
  }

  #details-overlay .session-property-item em,
  #details-overlay .next-session-column em {
    margin-top: 2px;
    overflow: visible;
    color: var(--session-text-secondary);
    font-size: 10px;
    font-style: normal;
    line-height: 1.2;
    white-space: normal;
  }

  #details-overlay .session-property-address strong {
    font-size: 13px;
  }

  #details-overlay .session-property-address em {
    font-size: 11px;
  }

  #details-overlay .session-icon-tile {
    display: inline-flex;
    width: 36px;
    height: 36px;
    min-width: 36px;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    box-shadow: none;
  }

  #details-overlay .session-property-strip .session-icon-tile {
    width: 30px;
    height: 30px;
    min-width: 30px;
    border-radius: 10px;
  }

  #details-overlay .session-property-strip .session-icon-tile svg {
    width: 17px;
    height: 17px;
  }

  #details-overlay .session-icon-tile svg {
    width: 20px;
    height: 20px;
  }

  #details-overlay .tile-blue { color: var(--session-blue); background: var(--session-blue-soft); }
  #details-overlay .tile-green { color: var(--session-green); background: var(--session-green-soft); }
  #details-overlay .tile-orange { color: var(--session-orange); background: #fff3e4; }

  #details-overlay .critical-notes-card {
    display: flex;
    flex: 0 0 auto;
    gap: 12px;
    padding: 15px 16px;
    background: var(--session-orange-soft);
    border: 1px solid #f8dca7;
    border-radius: 16px;
    box-shadow: none;
  }

  #details-overlay .critical-notes-card.hidden {
    display: none;
  }

  #details-overlay .critical-notes-icon {
    display: inline-flex;
    width: 32px;
    height: 32px;
    min-width: 32px;
    align-items: center;
    justify-content: center;
    color: var(--session-orange);
  }

  #details-overlay .critical-notes-icon svg {
    width: 26px;
    height: 26px;
  }

  #details-overlay .critical-notes-card h4 {
    margin: 0 0 6px;
    color: #d87700;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
  }

  #details-overlay .critical-notes-card p {
    margin: 0;
    color: var(--session-navy);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    white-space: pre-line;
  }

  #details-overlay .session-sections-card {
    overflow: hidden;
  }

  #details-overlay .session-section-row {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 20px;
    width: 100%;
    min-height: 70px;
    padding: 8px 14px;
    align-items: center;
    gap: 12px;
    color: var(--session-navy);
    background: #fff;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    text-align: left;
  }

  #details-overlay .session-section-row + .session-section-row {
    border-top: 1px solid var(--session-border);
  }

  #details-overlay .session-section-row > span:nth-child(2) {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 4px;
  }

  #details-overlay .session-section-row strong {
    color: var(--session-navy);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
  }

  #details-overlay .session-section-row small {
    overflow: hidden;
    color: var(--session-text-secondary);
    font-size: 11px;
    font-weight: 400;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  #details-overlay .session-section-row > svg {
    width: 19px;
    height: 19px;
    color: var(--session-text-secondary);
  }

  #details-overlay .next-session-card {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-height: 92px;
    padding: 13px 14px;
  }

  #details-overlay .next-session-column {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
  }

  #details-overlay .next-session-column + .next-session-column {
    margin-left: 12px;
    padding-left: 14px;
    border-left: 1px solid var(--session-border);
  }

  #details-overlay .next-session-column strong {
    overflow: hidden;
    color: var(--session-blue);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  #details-overlay .next-session-column + .next-session-column strong {
    color: #07963e;
  }

  #details-overlay .overlay-footer {
    display: flex;
    width: 100%;
    flex: 0 0 auto;
    padding: 0;
    background: transparent;
    border: 0;
  }

  #details-overlay .finalize-photos-button {
    display: flex;
    width: 100%;
    min-height: 56px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #fff;
    background: var(--session-green);
    border: 0;
    border-radius: 12px;
    box-shadow: none;
    font-size: 18px;
    font-weight: 700;
  }

  #details-overlay .finalize-photos-button svg {
    width: 22px;
    height: 22px;
  }

  #details-overlay #overlay-tab-whatsapp-content {
    display: none;
    flex: 1 1 auto;
    min-height: 0;
    padding: 0 18px calc(14px + env(safe-area-inset-bottom));
    overflow: hidden;
  }

  #details-overlay #overlay-tab-whatsapp-content.active {
    display: flex;
  }

  #details-overlay .whatsapp-session-layout {
    display: none;
    width: 100%;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 12px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  #details-overlay .session-contact-card-whatsapp .session-contact-top {
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 76px;
    padding: 10px 12px 10px 14px;
  }

  #details-overlay .session-contact-card-whatsapp .session-contact-copy h4 {
    margin-bottom: 0;
  }

  #details-overlay .whatsapp-contact-actions .session-action-button {
    height: 48px;
    padding: 0;
    gap: 0;
  }

  #details-overlay .whatsapp-contact-actions {
    grid-template-columns: 48px minmax(106px, auto) 48px;
  }

  #details-overlay #mobile-btn-manual-chat {
    padding: 0 10px;
    flex-direction: row;
    gap: 7px;
    color: #087d34;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
  }

  #details-overlay .automation-banner {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    flex: 0 0 auto;
    min-height: 78px;
    padding: 12px;
    align-items: center;
    gap: 10px;
    color: #744400;
    background: var(--session-orange-soft);
    border: 1px solid #f8dca7;
    border-radius: 16px;
    box-shadow: none;
  }

  #details-overlay .automation-banner.active {
    color: #087d34;
    background: var(--session-green-soft);
    border-color: #c8ebd4;
  }

  #details-overlay .automation-banner.error {
    color: #b42318;
    background: #fff1f0;
    border-color: #f3c7c2;
  }

  #details-overlay .automation-icon {
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    color: var(--session-orange);
    background: #fff0d8;
    border-radius: 13px;
    box-shadow: none;
  }

  #details-overlay .automation-banner.active .automation-icon {
    color: var(--session-green);
    background: #dff4e5;
  }

  #details-overlay .automation-icon svg {
    width: 22px;
    height: 22px;
  }

  #details-overlay .automation-copy {
    min-width: 0;
  }

  #details-overlay .automation-copy strong {
    display: block;
    margin-bottom: 4px;
    color: currentColor;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
  }

  #details-overlay .automation-copy p {
    margin: 0;
    color: #725d41;
    font-size: 11px;
    line-height: 1.35;
  }

  #details-overlay .automation-banner.active .automation-copy p {
    color: #427153;
  }

  #details-overlay .automation-action {
    display: inline-flex;
    min-width: 82px;
    min-height: 44px;
    padding: 0 12px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #07963e;
    background: #fff;
    border: 1px solid var(--session-green);
    border-radius: 11px;
    box-shadow: none;
    font-size: 13px;
    font-weight: 600;
  }

  #details-overlay .automation-action svg {
    width: 17px;
    height: 17px;
  }

  #details-overlay .automation-banner.active .automation-action {
    color: #bb6200;
    border-color: var(--session-orange);
  }

  #details-overlay .conversation-panel {
    display: flex;
    min-height: 290px;
    flex: 1 0 290px;
    padding: 12px;
    overflow: hidden;
  }

  #details-overlay .simulator-chat-messages {
    display: flex;
    width: 100%;
    min-height: 0;
    padding: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 12px;
    overflow-x: hidden;
    overflow-y: auto;
    background: #fff;
    scroll-behavior: smooth;
  }

  #details-overlay .chat-loading-state {
    display: flex;
    min-height: 120px;
    padding: 20px;
    align-items: center;
    justify-content: center;
    color: var(--session-text-secondary);
    font-size: 13px;
    line-height: 1.4;
    text-align: center;
  }

  #details-overlay .chat-loading-error {
    color: #b42318;
  }

  #details-overlay .chat-message-row {
    display: flex;
    width: 100%;
    flex: 0 0 auto;
    align-items: flex-end;
    gap: 8px;
  }

  #details-overlay .chat-message-row.bot,
  #details-overlay .chat-message-row.manual {
    justify-content: flex-end;
  }

  #details-overlay .chat-message-avatar {
    display: inline-flex;
    width: 32px;
    height: 32px;
    min-width: 32px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    box-shadow: none;
  }

  #details-overlay .chat-message-avatar svg {
    width: 17px;
    height: 17px;
  }

  #details-overlay .chat-message-row.owner .chat-message-avatar {
    color: var(--session-purple);
    background: #f0e9fb;
  }

  #details-overlay .chat-message-row.bot .chat-message-avatar {
    order: 2;
    color: var(--session-green);
    background: var(--session-green-soft);
  }

  #details-overlay .chat-message-row.manual .chat-message-avatar {
    order: 2;
    color: var(--session-blue);
    background: var(--session-blue-soft);
  }

  #details-overlay .chat-bubble {
    display: flex;
    max-width: 77%;
    flex: 0 0 auto;
    padding: 9px 11px 7px;
    flex-direction: column;
    color: var(--session-navy);
    background: var(--session-client-soft);
    border: 1px solid #eceef2;
    border-radius: 11px;
    box-shadow: none;
    font-size: 13px;
    line-height: 1.45;
    word-break: break-word;
  }

  #details-overlay .chat-message-row.bot .chat-bubble {
    background: var(--session-green-soft);
    border-color: #d8efdc;
  }

  #details-overlay .chat-message-row.manual .chat-bubble {
    background: var(--session-blue-soft);
    border-color: #d8e7fc;
  }

  #details-overlay .chat-message-label {
    margin-bottom: 3px;
    color: var(--session-purple);
    font-size: 11px;
    font-weight: 600;
  }

  #details-overlay .chat-message-row.bot .chat-message-label { color: #07963e; }
  #details-overlay .chat-message-row.manual .chat-message-label { color: var(--session-blue); }

  #details-overlay .chat-message-text {
    white-space: pre-wrap;
  }

  #details-overlay .chat-bubble-time {
    display: flex;
    margin-top: 4px;
    align-items: center;
    align-self: flex-end;
    gap: 3px;
    color: var(--session-text-secondary) !important;
    font-size: 11px;
    line-height: 1;
  }

  #details-overlay .chat-tick {
    width: 13px;
    height: 13px;
    color: var(--session-blue);
  }

  #details-overlay .chat-system-event {
    display: flex;
    max-width: 92%;
    min-height: 30px;
    margin: 0 auto;
    padding: 5px 10px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #31558d;
    background: #fff;
    border: 1px solid #d9e2ef;
    border-radius: 999px;
    box-shadow: none;
    font-size: 11px;
    line-height: 1.25;
    text-align: center;
  }

  #details-overlay .chat-system-text {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  #details-overlay .chat-system-event svg {
    width: 14px;
    height: 14px;
    min-width: 14px;
  }

  #details-overlay .chat-system-time {
    color: var(--session-text-secondary);
    white-space: nowrap;
  }

  #details-overlay .manual-response-note {
    display: flex;
    min-height: 18px;
    margin: -2px 0;
    align-items: center;
    justify-content: center;
    gap: 5px;
    color: #58719a;
    font-size: 11px;
    line-height: 1.2;
    text-align: center;
  }

  #details-overlay .manual-response-note svg {
    width: 14px;
    height: 14px;
  }

  #details-overlay .simulator-input-area {
    position: sticky;
    bottom: 0;
    z-index: 2;
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 40px;
    flex: 0 0 auto;
    gap: 8px;
    padding: 0;
    align-items: center;
    background: var(--session-background);
    border: 0;
  }

  #details-overlay .simulator-input-area input {
    width: 100%;
    height: 40px;
    min-width: 0;
    padding: 0 15px;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 999px;
    outline: none;
    box-shadow: none;
    font-size: 14px;
  }

  #details-overlay .composer-round-button {
    display: inline-flex;
    width: 40px;
    height: 40px;
    padding: 0;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    box-shadow: none;
  }

  #details-overlay .composer-round-button svg {
    width: 19px;
    height: 19px;
  }

  #details-overlay .composer-add-button {
    color: var(--session-blue);
    background: #fff;
    border: 1px solid var(--session-border);
  }

  #details-overlay .composer-add-button:disabled {
    opacity: 1;
  }

  #details-overlay .composer-send-button {
    width: 40px;
    height: 40px;
    color: #fff;
    background: var(--session-blue);
    border: 0;
  }

  #details-overlay .composer-send-button svg {
    transform: translateX(-1px);
  }

  #details-overlay .session-empty-state {
    display: flex;
    width: 100%;
    height: 100%;
    padding: 32px 20px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: var(--session-text-secondary);
    text-align: center;
  }

  #details-overlay .session-empty-state h4 {
    margin: 12px 0 6px;
    color: var(--session-navy);
    font-size: 17px;
  }

  #details-overlay .session-empty-state p {
    max-width: 280px;
    margin: 0;
    font-size: 14px;
    line-height: 1.45;
  }

  #details-overlay .mobile-detail-sheet {
    position: absolute;
    inset: 0;
    z-index: 30;
    display: flex;
    align-items: flex-end;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    contain: layout paint;
    transition: opacity 180ms ease, visibility 0s linear 280ms;
  }

  #details-overlay .mobile-detail-sheet.active {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transition-delay: 0s;
  }

  #details-overlay.detail-sheet-open #overlay-tab-details-content,
  #details-overlay.detail-sheet-open #overlay-tab-whatsapp-content {
    overflow: hidden;
  }

  #details-overlay .mobile-detail-sheet-backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    background: rgba(16, 26, 54, 0.28);
    border: 0;
    border-radius: 0;
  }

  #details-overlay .mobile-detail-sheet-panel {
    position: relative;
    z-index: 1;
    display: flex;
    width: 100%;
    height: min(76dvh, 680px);
    max-height: calc(100dvh - 72px);
    padding-bottom: env(safe-area-inset-bottom);
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 22px 22px 0 0;
    box-shadow: none;
    backface-visibility: hidden;
    transform: translate3d(0, 100%, 0);
    transition: transform 280ms cubic-bezier(0.22, 1, 0.36, 1);
    will-change: transform;
  }

  #details-overlay .mobile-detail-sheet.active .mobile-detail-sheet-panel {
    transform: translate3d(0, 0, 0);
  }

  #details-overlay .mobile-detail-sheet[data-active-section="navigation"] .mobile-detail-sheet-panel {
    height: min(82dvh, 700px);
    min-height: 420px;
    max-height: calc(100dvh - 72px);
  }

  #details-overlay .mobile-detail-sheet-handle {
    width: 42px;
    height: 4px;
    margin: 9px auto 4px;
    background: #cfd5df;
    border-radius: 999px;
  }

  #details-overlay .mobile-detail-sheet-panel > header {
    display: flex;
    min-height: 54px;
    padding: 7px 16px 10px 20px;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--session-border);
  }

  #details-overlay .mobile-detail-sheet-panel h4 {
    margin: 0;
    color: var(--session-navy);
    font-size: 19px;
    font-weight: 700;
  }

  #details-overlay .mobile-detail-sheet-close {
    display: inline-flex;
    width: 44px;
    height: 44px;
    padding: 0;
    align-items: center;
    justify-content: center;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 50%;
  }

  #details-overlay .mobile-detail-sheet-close svg {
    width: 20px;
    height: 20px;
  }

  #details-overlay .mobile-detail-sheet-content {
    min-height: 0;
    min-width: 0;
    padding: 18px 20px 22px;
    overflow-y: auto;
  }

  #details-overlay .mobile-sheet-section,
  #details-overlay .schedule-sheet-form,
  #details-overlay .schedule-subpanel {
    min-width: 0;
    max-width: 100%;
  }

  #details-overlay .mobile-sheet-section[hidden] {
    display: none;
  }

  #details-overlay .schedule-sheet-form,
  #details-overlay .schedule-subpanel {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  #details-overlay .input-group {
    display: flex;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    flex-direction: column;
    gap: 7px;
    overflow-x: hidden;
  }

  #details-overlay .input-group label,
  #details-overlay .schedule-subpanel > label {
    color: var(--session-navy);
    font-size: 13px;
    font-weight: 600;
  }

  #details-overlay .text-input {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 46px;
    padding: 10px 12px;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 11px;
    font-size: 15px;
  }

  #details-overlay .date-input-shell {
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    height: 46px;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 11px;
  }

  #details-overlay .date-input-shell:focus-within {
    border-color: var(--session-blue);
    outline: 2px solid rgba(18, 103, 244, 0.16);
    outline-offset: 1px;
  }

  #details-overlay .date-input-shell input[type="date"].text-input {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    inline-size: 100% !important;
    min-inline-size: 0 !important;
    max-inline-size: 100% !important;
    height: 44px;
    padding: 10px 12px;
    overflow: hidden;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-sizing: border-box !important;
    font-size: 16px;
    -webkit-appearance: none;
    appearance: none;
  }

  #details-overlay .date-input-shell input[type="date"].text-input::-webkit-date-and-time-value {
    min-width: 0;
    max-width: 100%;
    margin: 0;
    padding: 0;
    text-align: left;
  }

  #details-overlay .date-input-shell input[type="date"].text-input::-webkit-datetime-edit {
    min-width: 0;
    max-width: 100%;
    padding: 0;
  }

  #details-overlay .date-input-shell input[type="date"].text-input::-webkit-calendar-picker-indicator {
    flex: 0 0 auto;
    margin: 0;
    padding: 0;
  }

  #details-overlay textarea.text-input {
    min-height: 88px;
    resize: vertical;
  }

  #details-overlay .schedule-subpanel {
    padding: 14px;
    background: #f8faff;
    border: 1px solid var(--session-border);
    border-radius: 13px;
  }

  #details-overlay .schedule-subpanel[hidden],
  #details-overlay .input-group[hidden] {
    display: none !important;
  }

  #details-overlay .schedule-subpanel h5 {
    margin: 0;
    color: var(--session-navy);
    font-size: 14px;
    font-weight: 700;
  }

  #details-overlay .mobile-sequence-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  #details-overlay .mobile-sequence-step-item {
    display: grid;
    grid-template-columns: 8px minmax(0, 1fr) auto;
    min-height: 34px;
    padding: 7px 9px;
    align-items: center;
    gap: 8px;
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 8px;
    font-size: 12px;
  }

  #details-overlay .step-indicator {
    width: 7px;
    height: 7px;
    background: #c7ced9;
    border-radius: 50%;
  }

  #details-overlay .schedule-subpanel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
  }

  #details-overlay .sheet-primary-button,
  #details-overlay .sheet-secondary-button,
  #details-overlay .sheet-warning-button,
  #details-overlay .sheet-danger-button {
    min-height: 48px;
    padding: 0 16px;
    border-radius: 11px;
    font-size: 15px;
    font-weight: 700;
  }

  #details-overlay .sheet-primary-button { color: #fff; background: var(--session-blue); border: 0; }
  #details-overlay .sheet-secondary-button { min-height: 38px; color: var(--session-blue); background: #fff; border: 1px solid #b9d2fb; }
  #details-overlay .sheet-warning-button { color: #fff; background: var(--session-orange); border: 0; }
  #details-overlay .sheet-danger-button { color: #b42318; background: #fff1f0; border: 1px solid #f3c7c2; }

  #details-overlay .schedule-checkbox {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #087d34;
    font-size: 13px;
    font-weight: 600;
  }

  #details-overlay .schedule-checkbox input {
    width: 18px;
    height: 18px;
  }

  #details-overlay .followup-custom-actions {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }

  #details-overlay .followup-custom-send-button {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    align-self: stretch;
    padding: 0 14px;
    border: 0;
    border-radius: 10px;
    color: #fff;
    background: #16a34a;
    font-size: 14px;
    font-weight: 700;
  }

  #details-overlay .followup-custom-send-button:disabled {
    background: #a7b0bc;
    opacity: 0.8;
  }

  #details-overlay .property-details-list {
    display: flex;
    margin: 0;
    flex-direction: column;
  }

  #details-overlay .property-details-list > div {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    min-height: 52px;
    padding: 12px 0;
    align-items: start;
    gap: 12px;
    border-bottom: 1px solid var(--session-border);
  }

  #details-overlay .property-details-list dt {
    color: var(--session-text-secondary);
    font-size: 13px;
  }

  #details-overlay .property-details-list dd {
    margin: 0;
    color: var(--session-navy);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
  }

  #details-overlay .navigation-choice-sheet > .navigation-choice-title {
    margin: 0 0 16px;
    color: var(--session-text-secondary);
    font-size: 14px;
    line-height: 1.4;
    text-align: center;
  }

  #details-overlay .mobile-address-validation {
    display: flex;
    margin-bottom: 20px;
    padding-bottom: 20px;
    flex-direction: column;
    gap: 12px;
    border-bottom: 1px solid var(--session-border);
  }

  #details-overlay .mobile-address-validation-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  #details-overlay .mobile-address-validation-heading > label {
    margin: 0;
    color: var(--session-text-secondary);
    font-size: 12px;
    font-weight: 600;
  }

  #details-overlay .mobile-address-validation-state {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 4px;
    color: #15803d;
    font-size: 12px;
    font-weight: 700;
  }

  #details-overlay .mobile-address-validation-state[hidden] {
    display: none;
  }

  #details-overlay .mobile-address-validation-state svg {
    width: 15px;
    height: 15px;
  }

  #details-overlay .mobile-address-validate-button,
  #details-overlay .mobile-address-validation-save {
    display: inline-flex;
    width: 100%;
    min-height: 44px;
    padding: 10px 14px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #0b5bd3;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 700;
  }

  #details-overlay .mobile-address-validate-button svg,
  #details-overlay .mobile-address-validation-save svg {
    width: 18px;
    height: 18px;
  }

  #details-overlay .mobile-address-validate-button:disabled,
  #details-overlay .mobile-address-validation-save:disabled {
    cursor: default;
    opacity: 0.6;
  }

  #details-overlay .mobile-address-validation-panel {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  #details-overlay .mobile-address-validation-panel[hidden] {
    display: none;
  }

  #details-overlay .mobile-address-validation-status {
    color: var(--session-text-secondary);
    font-size: 12px;
    line-height: 1.4;
  }

  #details-overlay .mobile-address-validation-status.is-error {
    color: #b42318;
  }

  #details-overlay .mobile-address-validation-results {
    display: flex;
    max-height: 240px;
    overflow-y: auto;
    flex-direction: column;
    gap: 8px;
    overscroll-behavior: contain;
  }

  #details-overlay .mobile-address-validation-result {
    display: grid;
    width: 100%;
    min-width: 0;
    padding: 11px;
    grid-template-columns: 30px minmax(0, 1fr) 24px;
    align-items: center;
    gap: 9px;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 12px;
    text-align: left;
  }

  #details-overlay .mobile-address-validation-result.is-selected {
    background: #f0fdf4;
    border-color: #22c55e;
    box-shadow: 0 0 0 1px #22c55e;
  }

  #details-overlay .mobile-address-validation-result-marker,
  #details-overlay .mobile-address-validation-result-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  #details-overlay .mobile-address-validation-result-marker {
    width: 30px;
    height: 30px;
    color: #f59e0b;
    background: #fff7ed;
    border-radius: 9px;
  }

  #details-overlay .mobile-address-validation-result-marker svg,
  #details-overlay .mobile-address-validation-result-check svg {
    width: 16px;
    height: 16px;
  }

  #details-overlay .mobile-address-validation-result-check {
    color: transparent;
  }

  #details-overlay .mobile-address-validation-result.is-selected .mobile-address-validation-result-check {
    color: #16a34a;
  }

  #details-overlay .mobile-address-validation-result-copy {
    min-width: 0;
  }

  #details-overlay .mobile-address-validation-result-copy strong,
  #details-overlay .mobile-address-validation-result-copy small {
    display: block;
    overflow-wrap: anywhere;
  }

  #details-overlay .mobile-address-validation-result-copy strong {
    font-size: 13px;
    line-height: 1.35;
  }

  #details-overlay .mobile-address-validation-result-copy small {
    margin-top: 3px;
    color: var(--session-text-secondary);
    font-size: 11px;
    line-height: 1.35;
  }

  #details-overlay .mobile-address-validation-save {
    color: #fff;
    background: #16a34a;
    border-color: #16a34a;
  }

  #details-overlay .mobile-address-validation-save:disabled {
    background: #9ca3af;
    border-color: #9ca3af;
  }

  #details-overlay .mobile-address-validation-privacy,
  #details-overlay .mobile-address-validation-attribution {
    color: var(--session-text-secondary);
    font-size: 10px;
    line-height: 1.35;
  }

  #details-overlay .mobile-address-validation-attribution {
    width: fit-content;
    color: #0b5bd3;
  }

  #details-overlay .navigation-choice-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  #details-overlay .navigation-choice-actions a {
    display: flex;
    min-height: 94px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 9px;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 15px;
    box-shadow: var(--session-shadow-subtle);
    text-decoration: none;
  }

  #details-overlay .navigation-choice-actions strong {
    font-size: 14px;
    font-weight: 700;
  }

  #details-overlay .navigation-brand-tile {
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    background: #f7f9fc;
    border-radius: 12px;
  }

  #details-overlay .navigation-brand-tile img {
    display: block;
    width: 26px;
    height: 26px;
  }

  #details-overlay .overflow-actions-list {
    display: flex;
    flex-direction: column;
  }

  #details-overlay .overflow-actions-list button {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    min-height: 66px;
    padding: 10px 4px;
    align-items: center;
    gap: 12px;
    color: var(--session-navy);
    background: #fff;
    border: 0;
    border-bottom: 1px solid var(--session-border);
    border-radius: 0;
    text-align: left;
  }

  #details-overlay .overflow-actions-list button > svg {
    width: 21px;
    height: 21px;
    margin: auto;
    color: var(--session-blue);
  }

  #details-overlay .overflow-actions-list button:disabled {
    cursor: not-allowed;
    opacity: 0.55;
  }

  #details-overlay .overflow-actions-list button > span {
    display: flex;
    flex-direction: column;
    gap: 3px;
  }

  #details-overlay .overflow-actions-list strong {
    font-size: 15px;
    font-weight: 600;
  }

  #details-overlay .overflow-actions-list small {
    color: var(--session-text-secondary);
    font-size: 12px;
  }

  #details-overlay .overflow-actions-list button.destructive,
  #details-overlay .overflow-actions-list button.destructive > svg {
    color: #b42318;
  }

  #details-overlay button:focus-visible,
  #details-overlay a:focus-visible,
  #details-overlay input:focus-visible,
  #details-overlay select:focus-visible,
  #details-overlay textarea:focus-visible {
    outline: 3px solid rgba(18, 103, 244, 0.24);
    outline-offset: 2px;
  }

  @media (max-width: 390px) {
    #details-overlay .session-details-header {
      gap: 9px;
      padding-right: 16px;
      padding-left: 16px;
    }

    #details-overlay .overlay-header h3 {
      font-size: 18px;
    }

    #details-overlay .overlay-header h3.long-title {
      font-size: 12px;
    }

    #details-overlay .overlay-status-tag {
      padding-right: 8px;
      padding-left: 8px;
      font-size: 12px;
    }
  }

  @media (max-width: 374px) {
    #details-overlay .session-details-header {
      grid-template-columns: 44px minmax(0, 1fr) auto;
      gap: 9px;
      padding-right: 16px;
      padding-left: 16px;
    }

    #details-overlay .overlay-header h3 {
      font-size: 18px;
    }

    #details-overlay .overlay-header h3.long-title {
      font-size: 12px;
    }

    #details-overlay .overlay-status-tag {
      padding-right: 8px;
      padding-left: 8px;
      font-size: 12px;
    }

    #details-overlay .modal-tabs-header,
    #details-overlay #overlay-tab-details-content,
    #details-overlay #overlay-tab-whatsapp-content {
      margin-right: 0;
      margin-left: 0;
    }

    #details-overlay .modal-tabs-header {
      margin-right: 16px;
      margin-left: 16px;
    }

    #details-overlay #overlay-tab-details-content,
    #details-overlay #overlay-tab-whatsapp-content {
      padding-right: 16px;
      padding-left: 16px;
    }

    #details-overlay .session-contact-top {
      grid-template-columns: minmax(0, 1fr) 148px;
    }

    #details-overlay .session-contact-card-whatsapp .session-contact-top {
      grid-template-columns: minmax(0, 1fr) auto;
    }

    #details-overlay .session-avatar {
      width: 48px;
      height: 48px;
      min-width: 48px;
    }

    #details-overlay .session-contact-copy h4 {
      font-size: 15px;
    }

    #details-overlay .next-session-card {
      grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
      padding-right: 12px;
      padding-left: 12px;
    }

    #details-overlay .next-session-column {
      gap: 7px;
    }

    #details-overlay .next-session-column + .next-session-column {
      margin-left: 6px;
      padding-left: 8px;
    }

    #details-overlay .next-session-column strong {
      font-size: 17px;
    }

    #details-overlay .session-contact-actions {
      gap: 4px;
      padding-left: 8px;
    }

    #details-overlay .session-action-button {
      font-size: 10px;
    }

    #details-overlay .session-property-strip {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px 8px;
      padding-right: 11px;
      padding-left: 11px;
    }

    #details-overlay .session-property-item {
      gap: 5px;
    }

    #details-overlay .session-property-strip .session-icon-tile {
      width: 31px;
      height: 31px;
      min-width: 31px;
    }

    #details-overlay .automation-banner {
      grid-template-columns: 38px minmax(0, 1fr) auto;
      gap: 8px;
      padding: 10px;
    }

    #details-overlay .automation-icon {
      width: 38px;
      height: 38px;
    }

    #details-overlay .automation-action {
      min-width: 74px;
      padding: 0 9px;
      font-size: 12px;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #details-overlay .overlay-sheet,
    #details-overlay .mobile-detail-sheet-panel,
    #details-overlay .simulator-chat-messages {
      scroll-behavior: auto;
      transition-duration: 0.01ms;
    }
  }


  #details-overlay .mobile-address-edit-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 82px;
    align-items: stretch;
    gap: 8px;
  }

  #details-overlay #mobile-navigation-address-input {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 10px 12px;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 12px;
    font: inherit;
    font-size: 14px;
    line-height: 1.35;
  }

  #details-overlay #mobile-navigation-address-input:focus {
    border-color: #60a5fa;
    outline: 3px solid rgba(59, 130, 246, 0.14);
  }

  #details-overlay .mobile-address-save-button {
    display: inline-flex;
    min-width: 82px;
    min-height: 44px;
    padding: 0 12px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #fff;
    background: #0b5bd3;
    border: 1px solid #0b5bd3;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 700;
  }

  #details-overlay .mobile-address-save-button:disabled {
    color: #98a2b3;
    background: #f2f4f7;
    border-color: #e4e7ec;
  }

  #details-overlay .mobile-address-save-button svg {
    width: 16px;
    height: 16px;
  }

  #details-overlay .mobile-address-validation > #mobile-address-edit-help {
    display: block;
    width: 100%;
    margin-top: 0;
    color: var(--session-text-secondary);
    font-size: 11px;
    line-height: 1.35;
  }


  #details-overlay .mobile-address-autocomplete-panel {
    display: flex;
    max-height: 258px;
    padding: 7px;
    flex-direction: column;
    gap: 3px;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 12px;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.14);
  }

  #details-overlay .mobile-address-autocomplete-panel[hidden] {
    display: none;
  }

  #details-overlay .mobile-address-autocomplete-status {
    padding: 7px 8px;
    color: var(--session-text-secondary);
    font-size: 11px;
    line-height: 1.35;
  }

  #details-overlay .mobile-address-autocomplete-status:empty {
    display: none;
  }

  #details-overlay .mobile-address-autocomplete-status.is-error {
    color: #b42318;
  }

  #details-overlay .mobile-address-autocomplete-results {
    display: flex;
    min-height: 0;
    overflow-y: auto;
    flex-direction: column;
    gap: 3px;
    overscroll-behavior: contain;
  }

  #details-overlay .mobile-address-autocomplete-option {
    display: flex;
    width: 100%;
    min-width: 0;
    padding: 10px;
    flex-direction: column;
    gap: 2px;
    color: var(--session-navy);
    background: transparent;
    border: 0;
    border-radius: 9px;
    text-align: left;
  }

  #details-overlay .mobile-address-autocomplete-option:active,
  #details-overlay .mobile-address-autocomplete-option.is-active {
    background: #eef5ff;
  }

  #details-overlay .mobile-address-autocomplete-option strong,
  #details-overlay .mobile-address-autocomplete-option small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  #details-overlay .mobile-address-autocomplete-option strong {
    font-size: 13px;
    font-weight: 700;
  }

  #details-overlay .mobile-address-autocomplete-option small {
    color: var(--session-text-secondary);
    font-size: 11px;
  }

  #details-overlay .mobile-address-autocomplete-attribution {
    width: fit-content;
    margin: 5px 8px 2px;
    color: #0b5bd3;
    font-family: Roboto, Arial, sans-serif;
    font-size: 10px;
    text-decoration: none;
  }
}

@media (max-width: 767px) {
  body.mobile-cancel-dialog-open {
    overflow: hidden !important;
  }

  .mobile-cancel-dialog {
    position: fixed;
    inset: 0;
    z-index: 16000;
    display: flex;
    padding: 16px;
    align-items: center;
    justify-content: center;
    background: rgba(16, 26, 54, .56);
    backdrop-filter: blur(3px);
  }

  .mobile-cancel-dialog[hidden] {
    display: none;
  }

  .mobile-cancel-dialog__panel {
    position: relative;
    width: min(100%, 440px);
    max-height: calc(100dvh - 32px);
    padding: 26px 20px 20px;
    overflow-y: auto;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid rgba(227, 231, 239, .9);
    border-radius: 22px;
    box-shadow: 0 24px 64px rgba(16, 26, 54, .24);
  }

  .mobile-cancel-dialog__close {
    position: absolute;
    top: 14px;
    right: 14px;
    display: inline-flex;
    width: 42px;
    height: 42px;
    padding: 0;
    align-items: center;
    justify-content: center;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 50%;
  }

  .mobile-cancel-dialog__close svg {
    width: 20px;
    height: 20px;
  }

  .mobile-cancel-dialog__icon {
    display: inline-flex;
    width: 48px;
    height: 48px;
    margin-bottom: 14px;
    align-items: center;
    justify-content: center;
    color: #c52a20;
    background: #fff1f0;
    border-radius: 14px;
  }

  .mobile-cancel-dialog__icon svg {
    width: 24px;
    height: 24px;
  }

  .mobile-cancel-dialog__eyebrow {
    margin: 0 0 5px;
    color: #c52a20;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .055em;
    text-transform: uppercase;
  }

  .mobile-cancel-dialog h2 {
    margin: 0 50px 7px 0;
    color: var(--session-navy);
    font: 700 24px/1.15 'Outfit', sans-serif;
  }

  .mobile-cancel-dialog__support {
    margin: 0 0 18px;
    color: var(--session-text-secondary);
    font-size: 14px;
    line-height: 1.5;
  }

  .mobile-cancel-dialog label[for="mobile-cancel-reason"],
  .mobile-cancel-dialog label[for="mobile-followup-reason"] {
    display: block;
    margin-bottom: 7px;
    color: var(--session-navy);
    font-size: 13px;
    font-weight: 700;
  }

  #mobile-cancel-reason,
  #mobile-followup-reason {
    display: block;
    width: 100%;
    min-height: 112px;
    padding: 13px 14px;
    resize: vertical;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 13px;
    outline: none;
    font: 500 15px/1.45 'Inter', sans-serif;
  }

  #mobile-cancel-reason:focus,
  #mobile-followup-reason:focus {
    border-color: #e47770;
    box-shadow: 0 0 0 3px rgba(197, 42, 32, .11);
  }

  .mobile-cancel-dialog__error {
    margin: 8px 0 0;
    color: #b42318;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
  }

  .mobile-cancel-dialog__error[hidden] {
    display: none;
  }

  .mobile-cancel-dialog__choices {
    display: grid;
    gap: 9px;
  }

  .mobile-cancel-dialog__choices label {
    cursor: pointer;
  }

  .mobile-cancel-dialog__choices input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
  }

  .mobile-cancel-dialog__choices label > span {
    display: grid;
    min-height: 70px;
    padding: 12px 13px;
    grid-template-columns: 34px minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 10px;
    align-items: center;
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
    border-radius: 13px;
  }

  .mobile-cancel-dialog__choices input:checked + span {
    background: #fff7f6;
    border-color: #e47770;
    box-shadow: 0 0 0 2px rgba(197, 42, 32, .08);
  }

  .mobile-cancel-dialog__choices span > svg {
    width: 21px;
    height: 21px;
    grid-row: 1 / 3;
    justify-self: center;
    color: #c52a20;
  }

  .mobile-cancel-dialog__choices strong {
    font-size: 14px;
  }

  .mobile-cancel-dialog__choices small {
    color: var(--session-text-secondary);
    font-size: 12px;
    line-height: 1.35;
  }

  .mobile-cancel-dialog__summary {
    margin: 14px 0 0;
    padding: 11px 12px;
    color: #69411f;
    background: #fff8ed;
    border: 1px solid #f7ddb5;
    border-radius: 11px;
    font-size: 12px;
    line-height: 1.45;
  }

  .mobile-cancel-dialog__actions {
    display: grid;
    margin-top: 18px;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: 9px;
  }

  .mobile-cancel-dialog__actions button {
    display: inline-flex;
    min-height: 48px;
    padding: 0 12px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 750;
  }

  .mobile-cancel-dialog__secondary {
    color: var(--session-navy);
    background: #fff;
    border: 1px solid var(--session-border);
  }

  .mobile-cancel-dialog__primary {
    color: #fff;
    background: var(--session-blue);
    border: 1px solid var(--session-blue);
  }

  .mobile-cancel-dialog__danger {
    color: #fff;
    background: #c52a20;
    border: 1px solid #c52a20;
  }

  .mobile-cancel-dialog__danger:disabled {
    opacity: .65;
  }

  .mobile-cancel-dialog__danger .lucide-loader-circle {
    animation: session-spin .8s linear infinite;
  }

  .mobile-cancel-dialog__danger svg {
    width: 18px;
    height: 18px;
  }
}
@media (max-width: 767px) {
  .mobile-cancel-dialog--followup .mobile-cancel-dialog__icon {
    color: #b66a00;
    background: #fff6e5;
  }

  .mobile-cancel-dialog--followup .mobile-cancel-dialog__eyebrow {
    color: #b66a00;
  }

  .mobile-cancel-dialog--followup #mobile-followup-reason:focus {
    border-color: #e4a33d;
    box-shadow: 0 0 0 3px rgba(182, 106, 0, .11);
  }

  .mobile-cancel-dialog--followup .mobile-cancel-dialog__primary,
  .mobile-cancel-dialog--followup .mobile-cancel-dialog__danger {
    color: #fff;
    background: #c87900;
    border-color: #c87900;
  }
}
