/* Inquiry surfaces inherit the same palette as the rest of the system. */
#chatbot-widget .chat-header-actions { flex-shrink: 0; }
html[data-theme-scope] #chatbot-widget #owner-chat-delete { width: 44px; height: 44px; margin-inline-end: 6px; border-radius: 10px; }
html[data-theme-scope] #chatbot-widget #owner-chat-delete:not(:disabled):is(:hover, :focus-visible) { color: var(--dash-danger-strong, #dc2626); background: rgba(239, 68, 68, .08); }
#owner-chat-delete:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
#owner-chat-delete:disabled { opacity: .5; cursor: not-allowed; }
.inquiry-thread-identity { flex: 1; }
.inquiry-thread-identity h2 { overflow-wrap: anywhere; }
.inquiry-thread-actions { display: flex; flex: 0 0 auto; align-items: center; margin-inline-start: auto; padding-inline-start: 16px; border-inline-start: 1px solid var(--conversation-edge); }
#inquiry-thread-delete { flex-shrink: 0; gap: 7px; min-height: 44px; padding: 10px 12px; border-color: transparent; background: transparent; color: var(--conversation-muted); white-space: nowrap; }
#inquiry-thread-delete:not(:disabled):is(:hover, :focus-visible) { color: var(--dash-danger-strong, #dc2626); background: rgba(239, 68, 68, .08); border-color: rgba(239, 68, 68, .18); }
@media (max-width: 700px) {
    .inquiry-thread-actions { padding-inline-start: 10px; }
    #inquiry-thread-delete { width: 44px; padding: 10px; }
    .inquiry-delete-label { display: none; }
    .inquiry-thread-header .inquiry-back { flex-shrink: 0; }
}
#chatbot-widget, .inquiry-inbox {
    --conversation-surface: var(--site-surface);
    --conversation-canvas: var(--site-canvas);
    --conversation-incoming: var(--site-raised);
    --conversation-outgoing: var(--site-accent-tint);
    --conversation-edge: var(--site-border);
    --conversation-muted: var(--site-muted);
    --conversation-accent: var(--site-accent-text);
    --conversation-avatar: var(--site-accent-tint);
}

/* Project tools and shared content use the same glass finish as the chat shell. */
.chat-customer-tools { display: flex; flex-wrap: wrap; gap: 6px; padding: 8px 12px; border-bottom: 1px solid var(--glass-edge); flex-shrink: 0; }
.chat-tool-button, .chat-draft-preview button { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 7px 10px; border: 1px solid var(--glass-edge); border-radius: 10px; color: var(--site-text); background: var(--glass-sheen); font: inherit; font-size: .74rem; text-decoration: none; cursor: pointer; }
.chat-tool-button:hover, .chat-draft-preview button:hover { border-color: var(--site-accent-border); background: var(--site-accent-tint); color: var(--site-text); }
.chat-tool-button:focus-visible, .chat-reply-action:focus-visible { outline: 2px solid var(--site-accent-text); outline-offset: 2px; }
.chat-tool-button:disabled { opacity: .5; cursor: wait; }
.chat-business-hours { padding: 7px 14px 0; font-size: .7rem; color: var(--site-muted); flex-shrink: 0; }
.chat-draft-preview { display: flex; align-items: center; gap: 8px; padding: 8px 14px; font-size: .72rem; color: var(--site-muted); flex-shrink: 0; border-top: 1px solid var(--glass-edge); }
.chat-draft-preview > span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html[data-theme-scope] body .inquiry-compose .chat-attach { width: 34px; min-width: 34px; min-height: 42px; padding: 4px; color: var(--site-text); background: transparent; border: 0; font-size: 1.5rem; font-weight: 400; }
.chat-receipt { display: block; text-align: right; font-size: .62rem; color: var(--site-muted); }
.chat-reply-action { color: var(--site-muted); background: transparent; border: 0; min-height: 28px; padding: 4px; font: inherit; font-size: .65rem; cursor: pointer; }
.inquiry-message-row.is-mine .chat-reply-action { display: block; margin-left: auto; }
.inquiry-message-row blockquote { margin: 0 0 5px; padding: 8px 10px; border-left: 2px solid var(--site-accent-text); background: var(--site-accent-tint); color: var(--site-muted); font-size: .73rem; overflow-wrap: anywhere; border-radius: 4px 10px 10px 4px; }
.chat-photo-link { display: block; border: 1px solid var(--glass-edge); border-radius: 14px; overflow: hidden; }
.chat-photo-link img { display: block; width: 100%; max-width: 280px; max-height: 260px; object-fit: contain; background: var(--glass-fallback); }
.chat-shared-card { display: flex; flex-direction: column; gap: 8px; min-width: 0; width: 100%; padding: 14px; border: 1px solid var(--glass-edge); border-radius: 16px; background: var(--glass-fallback); color: var(--site-text); overflow-wrap: anywhere; font-size: .85rem; line-height: 1.55; box-shadow: inset 0 1px 0 var(--site-edge-highlight); }
.chat-shared-card img { width: 100%; max-height: 150px; object-fit: contain; border-radius: 8px; }
.chat-shared-card small { color: var(--site-muted); font-size: .7rem; line-height: 1.5; }
.chat-card-kind { color: var(--site-muted); font-size: .68rem; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.chat-card-title { font-size: .95rem; line-height: 1.4; }
.chat-card-status { align-self: flex-start; padding: 4px 9px; border-radius: 8px; background: var(--site-accent-tint); color: var(--site-text); font-size: .75rem; }
.chat-card-detail, .chat-card-note { color: var(--site-muted); }
.chat-card-total { display: flex; flex-direction: column; gap: 3px; padding: 8px 0; border-block: 1px solid var(--glass-edge); }
.chat-card-total > span { color: var(--site-muted); font-size: .75rem; }
.chat-card-total > strong { font-size: 1.25rem; font-weight: 650; font-variant-numeric: tabular-nums; }
.chat-card-breakdown summary { cursor: pointer; padding: 8px 0; min-height: 36px; color: var(--site-text); font-size: .78rem; }
.chat-card-items { list-style: none; padding: 0; margin: 0; }
.chat-card-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 5px 12px; padding: 12px 0; border-top: 1px solid var(--glass-edge); }
.chat-card-item-description { grid-column: 1 / -1; white-space: pre-line; }
.chat-card-item-quantity { color: var(--site-muted); font-size: .75rem; }
.chat-card-item-amount { font-variant-numeric: tabular-nums; text-align: right; }
.chat-shared-card .chat-card-action { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 12px; border-radius: 10px; border: 1px solid var(--site-accent-border); background: var(--site-accent-tint); color: var(--site-text); text-decoration: none; font-weight: 650; font-size: .82rem; }
.chat-card-action:hover { background: var(--glass-sheen); }
.chat-card-action:focus-visible, .chat-card-breakdown summary:focus-visible { outline: 2px solid var(--site-accent-text); outline-offset: 3px; }
.chat-unread-badge { position: absolute; top: -5px; right: -5px; min-width: 22px; height: 22px; padding: 2px 5px; display: grid; place-items: center; border-radius: 20px; background: var(--site-cta-bg); color: var(--site-on-accent); border: 2px solid var(--site-surface); font-size: .65rem; font-weight: 700; }
.chat-link-unread { font-size: .75rem; font-weight: 650; }
.chat-workflow-label { display: block; margin-top: 6px; color: var(--site-muted); font-size: .64rem; }
.inquiry-thread-header > .chat-tool-button { margin-left: auto; flex-shrink: 0; }
html[data-theme-scope] .chat-tools-dialog { width: min(640px, calc(100vw - 24px)); max-height: calc(100dvh - 32px); margin: auto; padding: 0; color: var(--site-text); background: var(--glass-fallback); border: 1px solid var(--glass-edge); border-radius: 22px; box-shadow: inset 0 1px 0 var(--site-edge-highlight), 0 24px 80px rgb(0 0 0 / 25%); overflow: auto; }
.chat-tools-dialog::backdrop { background: rgb(0 0 0 / 45%); }
.chat-tools-dialog > header { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 20px; border-bottom: 1px solid var(--glass-edge); background: var(--glass-fallback); }
.chat-tools-dialog h2 { margin: 0; font-size: 1.05rem; }
.chat-tools-dialog h3 { margin: 0 0 12px; font-size: .9rem; }
.chat-tools-content { padding: 0 20px 20px; }
.chat-tools-content > p, .chat-tool-section > p { font-size: .8rem; line-height: 1.6; color: var(--site-muted); }
.chat-tools-status { padding: 0 20px; font-size: .8rem; color: var(--site-muted); }
.chat-tools-status:empty { display: none; }
.chat-tool-section { margin-top: 16px; padding: 16px; border: 1px solid var(--glass-edge); border-radius: 14px; background: var(--glass-sheen); }
.chat-tool-section small { display: block; margin-top: 6px; }
.chat-tool-field { display: flex; flex-direction: column; gap: 6px; margin: 12px 0; color: var(--site-muted); font-size: .75rem; }
html[data-theme-scope][data-color-mode] .chat-tools-dialog :is(input, select, textarea) { width: 100%; padding: 10px 12px; min-height: 42px; border: 1px solid var(--site-control-border); border-radius: 10px; color: var(--site-text); background: var(--glass-fallback); font: inherit; font-size: .85rem; }
.chat-tools-dialog textarea { min-height: 110px; resize: vertical; }
.chat-tool-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px; }
.chat-saved-reply { display: flex; gap: 8px; margin-bottom: 8px; }
.chat-saved-reply > :first-child { flex: 1; justify-content: flex-start; }
.chat-estimate-item { display: grid; grid-template-columns: minmax(0, 2fr) minmax(65px, .7fr) minmax(95px, 1fr); gap: 0 8px; padding-bottom: 12px; margin-bottom: 12px; border-bottom: 1px solid var(--glass-edge); }
.chat-estimate-item > button { grid-column: 1 / -1; justify-self: start; }
.chat-estimate-item > .chat-estimate-wide { grid-column: 1 / -1; }
.chat-estimate-item [hidden] { display: none !important; }
.chat-estimate-item input[readonly] { color: var(--site-muted); }
.chat-estimate-total { display: block; margin-top: 14px; font-size: .85rem; }
.chat-hours-editor > p { color: var(--site-muted); font-size: .8rem; line-height: 1.6; margin-top: 16px; }
.chat-hours-editor > button { margin-right: 8px; }
.chat-hours-days { display: flex; flex-wrap: wrap; gap: 8px; border: 0; padding: 0; margin: 16px 0; }
.chat-hours-days legend { float: none; width: 100%; font-size: .8rem; margin-bottom: 10px; color: var(--site-muted); }
.chat-hours-days label { display: flex; align-items: center; gap: 7px; padding: 8px 10px; border: 1px solid var(--glass-edge); border-radius: 10px; font-size: .78rem; cursor: pointer; }
.chat-hours-days label:has(:checked) { background: var(--site-accent-tint); border-color: var(--site-accent-border); }
html[data-theme-scope][data-color-mode] .chat-tools-dialog .chat-hours-days input { width: 16px; height: 16px; min-height: 0; margin: 0; padding: 0; accent-color: var(--site-cta-bg); }
html[data-theme-scope][data-color-mode] .chat-tools-dialog input[type="time"] { color-scheme: var(--site-scheme); }
@supports ((backdrop-filter: blur(16px)) or (-webkit-backdrop-filter: blur(16px))) {
    html[data-theme-scope] .chat-tools-dialog { background: linear-gradient(135deg, var(--glass-sheen), transparent 65%), var(--glass-fill); backdrop-filter: blur(24px) saturate(120%); -webkit-backdrop-filter: blur(24px) saturate(120%); }
    .chat-shared-card { background: linear-gradient(135deg, var(--glass-sheen), transparent 65%), var(--glass-fill); }
}
@media (max-width: 700px) {
    .chat-tool-grid { grid-template-columns: 1fr; }
    .chat-tools-content { padding: 0 12px 12px; }
    .chat-tool-section { padding: 12px; }
    .chat-estimate-item { grid-template-columns: 1fr 1fr; }
    .chat-estimate-item > :first-child { grid-column: 1 / -1; }
    html[data-theme-scope][data-color-mode] .chat-tools-dialog :is(input,select,textarea) { font-size: 16px; }
    .inquiry-thread-header > .chat-tool-button { font-size: .68rem; padding: 6px; }
}
@media (prefers-reduced-transparency: reduce), (forced-colors: active) {
    html[data-theme-scope] .chat-tools-dialog, .chat-shared-card { background: var(--glass-fallback); backdrop-filter: none; -webkit-backdrop-filter: none; }
}
.chat-channel-picker { display: flex; gap: 4px; padding: 10px 14px; flex-shrink: 0; border-bottom: 1px solid var(--site-border); }
.chat-channel-picker button { flex: 1; border: 1px solid transparent; border-radius: 9px; padding: 9px; color: var(--site-muted); background: transparent; font: inherit; font-size: .8rem; cursor: pointer; }
.chat-channel-picker button[aria-pressed="true"] { background: var(--chat-user); color: var(--chat-user-text); border-color: var(--site-accent-border); font-weight: 650; }
#chatbot-widget [hidden], .inquiry-inbox [hidden] { display: none !important; }
.presence-label::before, #chatbot-widget .chat-status[data-availability]::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; margin-right: 7px; background: var(--site-muted); vertical-align: 1px; }
[data-availability="available"]::before { background: var(--site-success) !important; }
[data-availability="away"]::before { background: var(--site-warning) !important; }
#owner-chat { display: flex; flex: 1; flex-direction: column; min-height: 0; overflow: hidden; background: var(--conversation-canvas); }
.owner-availability-detail { flex-shrink: 0; color: var(--conversation-muted); font-size: .73rem; line-height: 1.5; padding: 10px 18px; margin: 0; border-bottom: 1px solid var(--conversation-edge); }
.inquiry-message-log { flex: 1; min-height: 0; overflow-y: auto; padding: 20px; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: var(--site-control-border) transparent; }
.inquiry-date-divider { display: flex; align-items: center; gap: 16px; color: var(--conversation-muted); font-size: .68rem; font-weight: 500; margin: 8px 0 24px; }
.inquiry-date-divider::before, .inquiry-date-divider::after { content: ""; flex: 1; height: 1px; background: var(--conversation-edge); }
.inquiry-message-row { width: fit-content; max-width: 80%; margin: 18px 0 0; }
.inquiry-message-row.is-grouped { margin-top: 7px; }
.inquiry-message-log .inquiry-message-row.has-shared-card { width: 340px; max-width: 100%; }
.has-shared-card > p:not([hidden]) { margin-bottom: 8px; }
.inquiry-message-sender { display: block; color: var(--conversation-muted); font-size: .7rem; margin: 0 3px 5px; }
.inquiry-message-row p { margin: 0; padding: 10px 14px; border-radius: 15px 15px 15px 4px; background: var(--conversation-incoming); border: 1px solid var(--conversation-edge); color: var(--site-text); white-space: pre-wrap; overflow-wrap: anywhere; font-size: .88rem; line-height: 1.6; }
.inquiry-message-row time { display: block; color: var(--conversation-muted); font-size: .63rem; margin: 4px 3px 0; font-variant-numeric: tabular-nums; }
.inquiry-message-row.is-mine { margin-left: auto; }
.inquiry-message-row.is-mine p { background: var(--conversation-outgoing); border-radius: 15px 15px 4px 15px; }
.inquiry-message-row.is-mine :is(.inquiry-message-sender, time) { text-align: right; }
.inquiry-chat-status { padding: 0 18px; margin: 10px 0; color: var(--site-muted); font-size: .78rem; line-height: 1.5; }
.inquiry-chat-status:empty { display: none; }
.inquiry-compose { display: flex; align-items: end; gap: 8px; margin: 12px; padding: 6px; border: 1px solid var(--site-control-border); border-radius: 16px; flex-shrink: 0; background: var(--conversation-surface); transition: border-color .15s, box-shadow .15s; }
.inquiry-compose:focus-within { border-color: var(--site-accent-text); box-shadow: 0 0 0 2px var(--site-focus-ring); }
html[data-theme-scope][data-color-mode] body .inquiry-compose textarea { flex: 1; min-width: 0; min-height: 42px; max-height: 120px; resize: none; padding: 10px; color: var(--site-text); background: transparent; font: inherit; font-size: .88rem; line-height: 1.5; border: 0; border-radius: 10px; box-shadow: none; outline: none; }
/* The composer owns the surface and focus ring, including under shared glass-input rules. */
html[data-theme-scope][data-color-mode] body :is(#owner-chat-form, #inquiry-reply-form) textarea {
    background: transparent !important; backdrop-filter: none; -webkit-backdrop-filter: none;
}
html[data-theme-scope][data-color-mode] body :is(#owner-chat-form, #inquiry-reply-form) textarea:focus-visible { outline: none; box-shadow: none; }
.inquiry-compose button { flex-shrink: 0; min-height: 42px; background: var(--site-cta-bg); color: var(--site-on-accent); border: 0; border-radius: 11px; padding: 10px 16px; font: inherit; font-size: .82rem; font-weight: 700; cursor: pointer; }
.inquiry-compose button:disabled { opacity: .45; cursor: default; }
.inquiry-compose button:not(:disabled):hover { background: var(--site-cta-hover-bg); }
.owner-login { display: flex; flex: 1; min-height: 0; overflow-y: auto; padding: 24px 18px; color: var(--site-text); }
.owner-login-card { width: 100%; margin: auto; padding: 22px 18px; border: 1px solid var(--glass-edge); border-radius: 18px; background: var(--glass-sheen); box-shadow: inset 0 1px 0 var(--site-edge-highlight); text-align: center; }
html[data-theme-scope] #chatbot-widget .owner-login h2 { margin: 0 0 10px; font-size: 1.05rem; font-weight: 650; line-height: 1.4; letter-spacing: -.02em; }
html[data-theme-scope] #chatbot-widget .owner-login p { margin: 0 0 22px; color: var(--site-muted); font-size: .84rem; font-weight: 400; line-height: 1.65; }
.owner-login-primary, .owner-login-secondary { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 44px; padding: 11px 12px; border-radius: 11px; font: inherit; font-size: .83rem; font-weight: 650; line-height: 1.4; cursor: pointer; text-decoration: none; }
.owner-login .owner-login-primary { border: 1px solid transparent; background: var(--site-cta-bg); color: var(--site-on-accent); }
.owner-login .owner-login-primary:hover { background: var(--site-cta-hover-bg); }
.owner-login-secondary { border: 1px solid var(--glass-edge); background: var(--glass-sheen); color: var(--site-text); }
.owner-login-secondary:hover { background: var(--site-accent-tint); border-color: var(--site-accent-border); }
.owner-login :is(a,button):focus-visible { outline: 2px solid var(--site-accent-text); outline-offset: 3px; }
.owner-login-divider { display: flex; align-items: center; gap: 10px; margin: 18px 0; color: var(--site-muted); font-size: .72rem; }
.owner-login-divider::before, .owner-login-divider::after { content: ''; flex: 1; height: 1px; background: var(--glass-edge); }
.owner-login small { display: block; margin-top: 10px; color: var(--site-muted); font-size: .7rem; line-height: 1.5; }
#owner-chat:has(.owner-login) .chat-business-hours { padding: 12px 18px; border-bottom: 1px solid var(--glass-edge); line-height: 1.6; }
.inquiry-page-heading { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-bottom: 24px; }
.inquiry-eyebrow { display: block; color: var(--site-muted); font-size: .65rem; font-weight: 600; letter-spacing: .16em; margin-bottom: 8px; }
.inquiry-availability { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 14px 18px; margin-bottom: 16px; border: 1px solid var(--site-border); border-radius: 14px; background: var(--site-surface); color: var(--site-text); }
.inquiry-availability strong { font-size: .83rem; font-weight: 600; }
.inquiry-availability p { font-size: .73rem; color: var(--site-muted); margin: 4px 0 0; line-height: 1.5; }
.inquiry-availability button { flex-shrink: 0; padding: 10px 14px; border: 1px solid var(--site-control-border); border-radius: 10px; background: var(--site-raised); color: var(--site-text); font: inherit; font-size: .78rem; cursor: pointer; }
.inquiry-availability button.availability-switch {
    position: relative;
    flex: 0 0 56px;
    width: 56px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    border: 0;
    border-radius: 24px;
    background: transparent;
    touch-action: manipulation;
}
.availability-switch::before {
    content: "";
    position: absolute;
    inset: 6px 2px;
    border-radius: 999px;
    background: #757575;
    transition: background-color .18s ease;
}
.availability-switch::after {
    content: "";
    position: absolute;
    width: 26px;
    height: 26px;
    top: 9px;
    left: 5px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .22);
    transition: transform .18s ease;
}
.availability-switch[aria-checked="true"]::before { background: #248a3d; }
.availability-switch[aria-checked="true"]::after { transform: translateX(20px); }
.availability-switch:disabled { cursor: wait; opacity: .6; }
@media (prefers-reduced-motion: reduce) {
    .availability-switch::before, .availability-switch::after { transition: none; }
}
.inquiry-inbox { display: grid; grid-template-columns: minmax(260px, 32%) minmax(0, 1fr); height: clamp(480px, 68dvh, 760px); border: 1px solid var(--conversation-edge); border-radius: 20px; background: var(--conversation-canvas); overflow: hidden; box-shadow: var(--site-panel-shadow); }
.inquiry-inbox-sidebar { display: flex; flex-direction: column; min-height: 0; min-width: 0; border-right: 1px solid var(--conversation-edge); background: var(--conversation-surface); }
.inquiry-list-heading { display: flex; align-items: center; gap: 8px; padding: 22px 20px 0; }
.inquiry-list-heading h2 { font-size: .9rem; color: var(--site-text); margin: 0; font-weight: 650; }
.inquiry-list-heading > span { font-size: .65rem; color: var(--conversation-muted); border: 1px solid var(--conversation-edge); border-radius: 6px; padding: 1px 6px; }
.inquiry-inbox-sidebar input { margin: 16px; padding: 11px 12px; min-width: 0; border: 1px solid var(--site-control-border); border-radius: 10px; background: var(--conversation-canvas); color: var(--site-text); font: inherit; font-size: .8rem; }
.inquiry-conversations { overflow-y: auto; flex: 1; padding: 0 8px 12px; }
.inquiry-conversation { display: flex; gap: 10px; align-items: center; width: 100%; padding: 15px 12px; margin-bottom: 4px; text-align: left; color: var(--site-text); background: transparent; border: 1px solid transparent; border-radius: 12px; font: inherit; cursor: pointer; }
.inquiry-conversation:hover { background: var(--conversation-canvas); }
.inquiry-conversation[aria-current="true"] { background: var(--conversation-outgoing); border-color: var(--site-accent-border); box-shadow: inset 3px 0 var(--site-accent-text); }
.inquiry-avatar { display: inline-flex; width: 38px; height: 38px; flex-shrink: 0; align-items: center; justify-content: center; border-radius: 50%; background: var(--conversation-avatar); color: var(--conversation-accent); font-size: .75rem; font-weight: 600; letter-spacing: .02em; }
.inquiry-conversation-copy { flex: 1; min-width: 0; }
.inquiry-conversation-copy strong { display: block; font-size: .82rem; font-weight: 550; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-bottom: 5px; }
.inquiry-conversation.has-unread strong { font-weight: 750; }
.inquiry-preview { display: block; color: var(--conversation-muted); font-size: .74rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.inquiry-conversation-meta { display: flex; align-self: stretch; align-items: end; justify-content: space-between; flex-direction: column; gap: 7px; }
.inquiry-conversation-meta time { color: var(--conversation-muted); font-size: .62rem; white-space: nowrap; }
.inquiry-conversation-meta em { display: inline-flex; align-items: center; justify-content: center; min-width: 19px; height: 19px; padding: 0 5px; background: var(--site-cta-bg); color: var(--site-on-accent); font-size: .62rem; font-style: normal; font-weight: 750; border-radius: 20px; }
.inquiry-thread { display: flex; position: relative; flex-direction: column; min-height: 0; min-width: 0; }
.inquiry-thread-header { display: flex; align-items: center; gap: 12px; padding: 18px 22px; border-bottom: 1px solid var(--conversation-edge); color: var(--site-text); background: var(--conversation-surface); }
.inquiry-thread-header > div { min-width: 0; }
.inquiry-thread-header h2 { font-size: .95rem; font-weight: 650; margin: 0 0 4px; }
.inquiry-thread-header p { font-size: .72rem; margin: 0; color: var(--conversation-muted); overflow-wrap: anywhere; }
.inquiry-empty-state { display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 32px; }
.inquiry-empty-icon { display: inline-flex; align-items: center; justify-content: center; width: 76px; height: 76px; border: 1px solid var(--conversation-edge); background: var(--conversation-avatar); color: var(--conversation-accent); border-radius: 24px; margin-bottom: 24px; }
.inquiry-empty-state h2 { font-size: 1.1rem; font-weight: 600; color: var(--site-text); margin: 0 0 10px; }
.inquiry-empty-state p { font-size: .85rem; line-height: 1.7; color: var(--conversation-muted); margin: 0; }
.inquiry-empty-caption { margin-top: 28px; font-size: .7rem; color: var(--conversation-muted); }
.inquiry-empty-state:not([hidden]) ~ .inquiry-message-log { display: none; }
.inquiry-back { display: none; }
:is(.inquiry-conversation, .inquiry-back, .inquiry-availability button, .chat-channel-picker button, .inquiry-compose button):focus-visible { outline: 2px solid var(--site-accent-text); outline-offset: 2px; }
@media (max-width: 700px) {
    .inquiry-page-heading { align-items: start; flex-direction: column; gap: 10px; }
    .inquiry-availability { padding: 12px; gap: 10px; }
    .inquiry-availability button { padding: 10px; }
    .inquiry-inbox { display: flex; height: clamp(440px, 70dvh, 760px); }
    .inquiry-inbox-sidebar { width: 100%; border-right: 0; }
    .inquiry-thread { display: none; width: 100%; }
    .inquiry-inbox.has-selection .inquiry-inbox-sidebar { display: none; }
    .inquiry-inbox.has-selection .inquiry-thread { display: flex; }
    .inquiry-thread-header { padding: 14px; gap: 10px; }
    .inquiry-back { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 38px; background: transparent; color: var(--site-text); border: 1px solid var(--conversation-edge); border-radius: 10px; font-size: 1.1rem; cursor: pointer; }
    .inquiry-message-log { padding: 16px; }
    .inquiry-message-row { max-width: 85%; }
    html[data-theme-scope][data-color-mode] body .inquiry-compose textarea { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { .inquiry-compose { transition: none; } }

/* Both customer channels share the same shell, message palette and composer. */
.inquiry-page-heading { flex-wrap: wrap; gap: 12px; margin-bottom: 16px; }
.inquiry-page-heading > div:first-child { flex: 1; min-width: 200px; }
html[data-theme-scope="admin"] .inquiry-page-heading .inquiry-availability { display: flex; flex: 0 0 auto; gap: 12px; margin: 0; padding: 6px 8px 6px 12px; border-radius: 12px; box-shadow: none; }
.inquiry-page-heading .inquiry-availability button { min-height: 40px; padding: 8px 10px; }
.inquiry-inbox { grid-template-columns: 290px minmax(0, 1fr); }
.inquiry-conversation { padding: 11px 10px; }
.inquiry-conversation[aria-current="true"] { border-color: transparent; box-shadow: inset 3px 0 var(--site-cta-bg); }
.inquiry-thread-header { padding: 14px 18px; flex-shrink: 0; }
html[data-theme-scope="admin"] .inquiry-inbox .inquiry-thread { background: var(--site-surface); }
.inquiry-thread > .inquiry-message-log { flex: 1 1 0; min-height: 0; }
.inquiry-thread > .inquiry-compose, .inquiry-thread > .chat-draft-preview, .inquiry-thread > .inquiry-chat-status { flex-shrink: 0; }
.inquiry-conversations, .inquiry-thread > .inquiry-message-log { scrollbar-width: thin; scrollbar-color: var(--site-control-border) transparent; }
.chat-message-meta { display: flex; align-items: center; gap: 7px; margin: 5px 3px 0; color: var(--site-muted); }
.inquiry-message-row .chat-message-meta time { margin: 0; }
.chat-message-meta .chat-receipt::before { content: '·'; margin-right: 7px; }
.is-mine .chat-message-meta { justify-content: flex-end; }
.chat-photo-link { width: min(280px, 100%); text-decoration: none; color: var(--site-text); }
.chat-photo-link img { width: 100%; height: 180px; object-fit: contain; }
.chat-photo-caption { display: block; padding: 9px 12px; background: var(--site-surface); border-top: 1px solid var(--glass-edge); font-size: .75rem; font-weight: 600; }
.chat-photo-link:focus-visible { outline: 2px solid var(--site-accent-text); outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) {
    .inquiry-inbox .chat-reply-action { opacity: 0; }
    .inquiry-inbox .inquiry-message-row:hover .chat-reply-action,
    .inquiry-inbox .inquiry-message-row:focus-within .chat-reply-action { opacity: 1; }
}
@media (max-width: 700px) {
    .inquiry-page-heading { flex-direction: row; align-items: center; }
    .inquiry-page-heading > div:first-child { flex-basis: 100%; }
    .inquiry-page-heading .dashboard-subtitle { display: none; }
    .inquiry-page-heading .dashboard-title { font-size: 1.6rem; margin-bottom: 0; }
    .inquiry-page-heading > .chat-tool-button { margin-left: auto; }
}
html[data-theme-scope] #chatbot-widget #chatbot-window { background: var(--conversation-canvas); }
html[data-theme-scope][data-color-mode] #chatbot-widget {
    --chat-panel: var(--conversation-canvas);
    --chat-tile: var(--conversation-incoming);
    --chat-user: var(--conversation-outgoing);
    --chat-user-text: var(--site-text);
}
html[data-theme-scope] #chatbot-widget .chat-header-icon {
    width: 38px; height: 38px; border-radius: 50%;
    background: var(--conversation-avatar); color: var(--conversation-accent);
    border: 1px solid var(--conversation-edge);
}
html[data-theme-scope] #chatbot-widget .chat-status { margin-top: 5px; font-size: .73rem; }
html[data-theme-scope] #chatbot-widget :is(#chatbot-messages, #owner-chat-messages) {
    background: var(--conversation-canvas); padding: 20px 16px 12px;
    scrollbar-width: thin; scrollbar-color: var(--site-control-border) transparent;
    scrollbar-gutter: stable; scroll-padding-bottom: 16px;
}
html[data-theme-scope] #chatbot-widget :is(#chatbot-messages, #owner-chat-messages)::-webkit-scrollbar { width: 6px; }
html[data-theme-scope] #chatbot-widget :is(#chatbot-messages, #owner-chat-messages)::-webkit-scrollbar-thumb { background: var(--site-control-border); border-radius: 6px; }
html[data-theme-scope] #chatbot-widget :is(#chatbot-messages, #owner-chat-messages)::-webkit-scrollbar-button { display: none; width: 0; height: 0; }
html[data-theme-scope] #chatbot-widget :is(.chat-bubble.bot, .chat-bubble.user, .inquiry-message-row p) {
    padding: 10px 14px; font-size: .88rem; line-height: 1.6;
    color: var(--site-text); border: 1px solid var(--conversation-edge);
    background: var(--conversation-incoming); border-radius: 15px 15px 15px 4px;
}
html[data-theme-scope] #chatbot-widget .chat-bubble { max-width: 80%; }
html[data-theme-scope] #chatbot-widget :is(.chat-bubble.user, .inquiry-message-row.is-mine p) {
    background: var(--conversation-outgoing); border-radius: 15px 15px 4px 15px;
}
html[data-theme-scope] #chatbot-widget .chat-bubble.error { border-color: var(--site-danger); color: var(--site-danger); }
html[data-theme-scope] #chatbot-widget :is(#chatbot-form, #owner-chat-form) {
    display: flex; align-items: end; gap: 8px; flex-shrink: 0;
    margin: 12px 12px 8px; padding: 6px; background: var(--conversation-surface);
    border: 1px solid var(--site-control-border); border-radius: 16px;
}
html[data-theme-scope] #chatbot-widget :is(#chatbot-form, #owner-chat-form):focus-within {
    border-color: var(--site-accent-text); box-shadow: 0 0 0 2px var(--site-focus-ring);
}
html[data-theme-scope] #chatbot-widget :is(#chatbot-input, #owner-chat-input) {
    flex: 1; width: 100%; min-width: 0; height: 44px; min-height: 44px;
    padding: 10px; border: 0; border-radius: 10px; margin: 0;
    font: inherit; font-size: .88rem; line-height: 1.5; color: var(--site-text);
    background: transparent !important; backdrop-filter: none; -webkit-backdrop-filter: none;
    outline: none; box-shadow: none;
}
html[data-theme-scope] #chatbot-widget :is(#chatbot-input, #owner-chat-input):focus-visible { outline: none; box-shadow: none; }
html[data-theme-scope] #chatbot-widget :is(#chatbot-send, #owner-chat-form button[type="submit"]) {
    width: auto; height: 44px; min-height: 44px; min-width: 64px; flex: 0 0 auto;
    padding: 10px 16px; border: 0; border-radius: 11px;
    font: inherit; font-size: .82rem; line-height: 1.5; font-weight: 700;
    background: var(--site-cta-bg); color: var(--site-on-accent); transform: none;
}
html[data-theme-scope] #chatbot-widget :is(#chatbot-send, #owner-chat-form button[type="submit"]):disabled { opacity: .45; cursor: default; }
html[data-theme-scope] #chatbot-widget :is(#chatbot-send, #owner-chat-form button[type="submit"]):hover:not(:disabled) { background: var(--site-cta-hover-bg); }
html[data-theme-scope] #chatbot-widget .chat-attribution {
    min-height: 24px; padding: 0 16px 10px; margin: 0; display: flex;
    align-items: center; justify-content: space-between; gap: 8px;
    background: var(--conversation-canvas); color: var(--conversation-muted); font-size: .65rem;
}
@media (max-width: 1199.98px) {
    html[data-theme-scope] #chatbot-widget :is(#chatbot-input, #owner-chat-input) { font-size: 16px; }
}

/* Glass shells share the site's light/dark tokens; the conversation stays legible. */
html[data-theme-scope] #chatbot-widget #chatbot-window,
html[data-theme-scope="admin"] .inquiry-inbox,
html[data-theme-scope="admin"] .inquiry-availability {
    background: var(--glass-fallback);
    border-color: var(--glass-edge);
    box-shadow: inset 0 1px 0 var(--site-edge-highlight), var(--site-panel-shadow);
}
html[data-theme-scope] #chatbot-widget :is(.chat-header, .chat-channel-picker, #chatbot-messages, #owner-chat, #owner-chat-messages, .chat-attribution, #chatbot-form, #owner-chat-form),
html[data-theme-scope="admin"] :is(.inquiry-inbox-sidebar, .inquiry-thread, .inquiry-thread-header, .inquiry-inbox-sidebar input, #inquiry-reply-form) {
    background: transparent;
}
html[data-theme-scope] #chatbot-widget :is(#chatbot-form, #owner-chat-form),
html[data-theme-scope="admin"] .inquiry-inbox :is(.inquiry-inbox-sidebar input, #inquiry-reply-form) {
    background: var(--glass-fallback);
    border-color: var(--glass-edge);
}
@supports ((backdrop-filter: blur(16px)) or (-webkit-backdrop-filter: blur(16px))) {
    html[data-theme-scope] #chatbot-widget #chatbot-window,
    html[data-theme-scope="admin"] .inquiry-inbox,
    html[data-theme-scope="admin"] .inquiry-availability {
        background: linear-gradient(135deg, var(--glass-sheen), transparent 62%), var(--glass-fill);
        -webkit-backdrop-filter: blur(20px) saturate(120%);
        backdrop-filter: blur(20px) saturate(120%);
    }
    html[data-theme-scope="admin"] .inquiry-inbox {
        background: linear-gradient(135deg, var(--glass-sheen), transparent 65%), var(--admin-glass-fill, var(--glass-fill));
    }
    html[data-theme-scope] #chatbot-widget :is(#chatbot-form, #owner-chat-form),
    html[data-theme-scope="admin"] .inquiry-inbox :is(.inquiry-inbox-sidebar input, #inquiry-reply-form) {
        background: color-mix(in srgb, var(--glass-fallback) 72%, transparent);
    }
}
@media (prefers-reduced-transparency: reduce), (forced-colors: active) {
    html[data-theme-scope] #chatbot-widget #chatbot-window,
    html[data-theme-scope="admin"] .inquiry-inbox,
    html[data-theme-scope="admin"] .inquiry-availability {
        background: var(--glass-fallback);
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }
    html[data-theme-scope] #chatbot-widget :is(.chat-header, .chat-channel-picker, #chatbot-messages, #owner-chat, #owner-chat-messages, .chat-attribution),
    html[data-theme-scope="admin"] :is(.inquiry-inbox-sidebar, .inquiry-thread, .inquiry-thread-header) {
        background: var(--glass-fallback);
    }
}

/* Reading a message does not answer the customer. */
.inquiry-reply-state { display: inline-block; margin-top: 6px; padding: 3px 7px; border: 1px solid currentColor; border-radius: 6px; font-size: .62rem; font-weight: 650; line-height: 1.3; }
.inquiry-reply-state.is-new { color: var(--site-info); background: color-mix(in srgb, var(--site-info) 8%, transparent); }
.inquiry-reply-state.is-replied { color: var(--site-success); background: color-mix(in srgb, var(--site-success) 8%, transparent); }
.inquiry-reply-state.is-needs_reply { color: var(--site-warning); background: color-mix(in srgb, var(--site-warning) 8%, transparent); }
