.customer-auth-links { display:flex; justify-content:space-between; gap:12px; }
.customer-password-help { padding:15px; border:1px solid #e3e7ef; border-radius:12px; background:#f7f8fc; font-size:13px; line-height:1.8; }
.customer-password-help p { margin:7px 0 12px; }
.customer-claim-banner { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:18px 20px; margin-bottom:20px; border:1px solid #e7e5e4; border-radius:14px; background:#fafaf9; }
.customer-claim-banner strong { font-size:14px; }
.customer-claim-banner p { margin:5px 0 0; font-size:12px; color:#78716c; }
.customer-order-actions { display:flex; flex-direction:column; align-items:flex-end; gap:7px; }
.customer-orders-more { display:flex; margin:20px auto 0; }
.support-launcher { position:fixed; z-index:65; right:25px; bottom:25px; display:flex; align-items:center; gap:8px; min-height:46px; padding:12px 18px; border:1px solid #1c1917; border-radius:28px; background:#1c1917; color:white; box-shadow:0 8px 25px #563c9a30; font-family:inherit; font-size:14px; font-weight:600; }
.support-unread { display:grid; place-items:center; min-width:20px; height:20px; padding:0 5px; border-radius:10px; color:#733652; background:#fff; font-size:11px; }
.support-chat { display:flex; flex-direction:column; min-height:0; min-width:0; background:#fff; color:#334056; font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; }
.support-chat *, .support-admin * { box-sizing:border-box; }
.support-chat button, .support-chat input, .support-chat textarea, .support-admin button, .support-admin select { font:inherit; }
.support-chat button, .support-admin button { cursor:pointer; }
.support-chat button:disabled, .support-admin button:disabled { cursor:default; opacity:.5; }
.support-chat button:focus-visible, .support-chat textarea:focus-visible, .support-admin button:focus-visible, .support-admin select:focus-visible { outline:2px solid #8f7ade; outline-offset:3px; }
.support-chat [hidden], .support-admin [hidden] { display:none!important; }
.support-floating { position:fixed; z-index:70; right:25px; bottom:84px; width:min(390px,calc(100vw - 28px)); height:min(620px,calc(100dvh - 110px)); border:1px solid #e3e7ef; border-radius:18px; overflow:hidden; box-shadow:0 20px 65px #28344b29; }
.support-chat-header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:17px 18px; border-bottom:1px solid #e9ecf2; flex:0 0 auto; }
.support-chat-header > div { min-width:0; }
.support-chat-header strong { display:block; color:#2e384d; font-size:15px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.support-connection { display:block; margin-top:5px; color:#8b95a6; font-size:10px; }
.support-connection.failed { color:#b16a48; }
.support-icon-button { display:grid; place-items:center; flex-shrink:0; width:28px; height:28px; border:0; border-radius:7px; background:transparent; color:#7e889a; font-size:23px!important; line-height:1; }
.support-icon-button:hover { background:#f3f4f8; }
.support-linked-order { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 16px; border-bottom:1px solid #e7e5e4; background:#fafaf9; flex:0 0 auto; }
.support-linked-order small { display:block; font-size:10px; color:#9385aa; }
.support-linked-order strong { display:block; margin-top:3px; font-size:12px; color:#78716c; overflow-wrap:anywhere; }
.support-older { flex:0 0 auto; padding:8px; border:0; background:#fbfcff; font-size:11px!important; color:#a8a29e; }
.support-messages { flex:1; min-height:0; overflow-y:auto; padding:16px; background:#f7f8fb; scrollbar-width:thin; }
.support-message { display:flex; flex-direction:column; align-items:flex-start; margin-bottom:16px; }
.support-message.mine { align-items:flex-end; }
.support-message-meta { padding:0 2px 5px; font-size:10px; color:#99a1b1; }
.support-bubble { max-width:88%; padding:10px 12px; border:1px solid #e8eaf1; border-radius:2px 12px 12px; background:#fff; box-shadow:0 2px 5px #22335502; }
.support-message.mine .support-bubble { background:#f5f5f4; border-color:#e7e5e4; border-radius:12px 2px 12px 12px; }
.support-bubble p { margin:0; color:#455069; white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; line-height:1.7; }
.support-bubble img { display:block; max-width:100%; max-height:230px; border-radius:6px; object-fit:contain; margin:5px 0; }
.support-message-order { display:block; margin-bottom:7px; padding-bottom:7px; border-bottom:1px solid #e7e5e4; color:#807196; font-size:10px; overflow-wrap:anywhere; }
.support-delivery { display:flex; gap:8px; align-items:center; margin-top:5px; color:#9b91af; font-size:10px; }
.support-delivery button { border:0; padding:0 3px; background:none; color:#b55d52; font-size:11px; }
.support-empty { padding:25px 15px; text-align:center; color:#939daf; font-size:12px; line-height:1.9; }
.support-reconnect { flex:0 0 auto; padding:9px; border:0; border-top:1px solid #eee3d9; background:#fff8ee; color:#a16a37; font-size:12px!important; }
.support-composer { flex:0 0 auto; padding:12px 14px; border-top:1px solid #e9ecf2; background:#fff; }
.support-composer textarea { display:block; width:100%; min-height:55px; max-height:130px; resize:vertical; border:0; padding:0; outline:none; color:#4c5670; background:transparent; font-size:13px; line-height:1.6; }
.support-composer textarea::placeholder { color:#9ca5b7; }
.support-composer-tools { display:flex; align-items:center; gap:10px; margin-top:9px; }
.support-composer-tools small { color:#a0a7b5; font-size:9px; }
.support-upload { border:0; padding:5px 0; background:transparent; color:#a8a29e; font-size:12px!important; }
.support-send { min-width:60px; margin-left:auto; padding:7px 12px; border:0; border-radius:7px; background:#1c1917; color:#fff; font-size:12px!important; }
.support-feedback { margin:6px 0 0; color:#b26554; font-size:10px; line-height:1.6; }
.support-feedback:empty { display:none; }
.support-previews { display:flex; flex-wrap:wrap; gap:8px; }
.support-previews > div { position:relative; margin-bottom:10px; }
.support-previews img { display:block; width:52px; height:52px; border:1px solid #e7e5e4; border-radius:5px; object-fit:cover; }
.support-previews button { position:absolute; right:-5px; top:-5px; display:grid; place-items:center; width:18px; height:18px; border:0; border-radius:50%; background:#78716c; color:#fff; font-size:12px; }
.support-backup { padding:7px 15px; border-top:1px solid #e9ecf2; background:#fafaf9; font-size:11px; color:#8e819f; flex:0 0 auto; }
.support-backup summary { cursor:pointer; }
.support-backup p { padding:5px 0; margin:0; overflow-wrap:anywhere; }
.support-admin { display:grid; grid-template-columns:245px minmax(300px,1fr) 250px; min-height:0; height:var(--support-panel-height, min(720px,calc(100dvh - 360px))); border:1px solid #e4e7ef; border-radius:13px; overflow:hidden; background:#fff; }
.support-inbox { display:flex; flex-direction:column; min-height:0; border-right:1px solid #e4e7ef; background:#fafbfe; }
.support-inbox-header { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:7px; padding:14px; border-bottom:1px solid #e4e7ef; }
.support-inbox-header strong { font-size:13px; }
.support-inbox-header select { border:1px solid #e1e5ed; border-radius:6px; padding:5px; background:#fff; color:#7d8597; font-size:11px; }
.support-conversations { flex:1; min-height:0; overflow-y:auto; }
.support-conversation { display:block; width:100%; padding:14px; text-align:left; border:0; border-bottom:1px solid #ebedf4; background:transparent; color:#576077; }
.support-conversation[aria-current="true"] { background:#f5f5f4; box-shadow:inset 3px 0 #1c1917; }
.support-conversation > div { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.support-conversation strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.support-conversation small { display:block; margin-top:6px; color:#949bae; font-size:10px; }
.support-conversation b { flex-shrink:0; display:grid; place-items:center; min-width:17px; height:17px; border-radius:9px; background:#b35e79; color:white; font-size:9px; }
.support-inbox-pages { display:flex; align-items:center; justify-content:space-between; padding:9px 14px; border-top:1px solid #e4e7ef; font-size:10px; color:#8a95a8; }
.support-inbox-pages button { padding:3px 7px; border:1px solid #e3e6ee; border-radius:4px; background:#fff; color:#748198; font-size:10px; }
.support-related { padding:16px; overflow-y:auto; border-left:1px solid #e4e7ef; background:#fbfcfe; }
.support-related h3 { margin:0 0 12px; color:#68728a; font-size:13px; }
.support-case-status { display:flex; flex-direction:column; gap:9px; padding-bottom:16px; border-bottom:1px solid #e6e9f1; margin-bottom:17px; }
.support-case-status > span { font-size:12px; color:#9a8056; }
.support-case-status button { padding:8px; border:1px solid #e7e5e4; border-radius:7px; background:#fff; color:#78716c; font-size:11px; }
.support-related-order { margin-bottom:10px; padding:11px; border:1px solid #e3e7ef; border-radius:8px; background:#fff; }
.support-related-order strong { display:block; font-size:11px; color:#536178; overflow-wrap:anywhere; }
.support-related-order small { display:block; margin-top:7px; font-size:10px; color:#8d96a9; }
.support-related-order button { display:block; margin-top:9px; border:0; padding:0; background:none; color:#a8a29e; font-size:10px; }
.support-admin-placeholder { display:grid; place-items:center; padding:30px; color:#939bad; font-size:13px; }
@media(max-width:1200px) { .support-admin { grid-template-columns:215px minmax(280px,1fr) 205px; }.support-related { padding:13px; } }
@media(max-width:960px) { .support-admin { grid-template-columns:190px minmax(260px,1fr); grid-template-rows:minmax(0,1fr) auto; }.support-related { grid-column:1/-1; max-height:140px; border-top:1px solid #e4e7ef; display:flex; gap:15px; }.support-related h3 { min-width:65px; }.support-case-status { min-width:100px; border-bottom:0; margin:0; }.support-related-order { min-width:170px; } }
@media(max-width:600px) { .support-floating { right:14px; bottom:78px; height:min(600px,calc(100dvh - 94px)); }.support-launcher { right:15px; bottom:16px; }.customer-claim-banner { flex-direction:column; align-items:flex-start; }.customer-order-actions { align-items:flex-start; }.support-admin { display:flex; flex-direction:column; height:auto; min-height:0; }.support-inbox { max-height:220px; border-right:0; }.support-admin .support-chat { height:560px; }.support-related { max-height:220px; overflow:auto; } }
.support-chat-column { display:flex; flex-direction:column; min-width:0; min-height:0; }
.support-chat-column > .support-chat { flex:1; min-height:0; }
.support-chat-column > .support-admin-placeholder { flex:1; }

.agent-layout { grid-template-columns:minmax(300px,420px) minmax(230px,1fr); max-width:900px; }
.agent-section.is-logged-in .agent-layout { grid-template-columns:minmax(0,1fr); max-width:none; }
.agent-section.is-logged-in .agent-benefits { display:none; }
.agent-section.is-logged-in .agent-dashboard { grid-column:auto; }
.customer-account-actions { display:flex; gap:10px; margin-bottom:18px; }
@media(max-width:600px) {
    .site-header { height:auto; min-height:110px; }
    .header-inner { flex-wrap:wrap; gap:8px; padding-block:9px; }
    .header-inner .brand { margin-right:auto; }
    .header-inner .main-nav { display:flex; order:3; width:100%; margin-left:0; justify-content:center; gap:4px; }
    .header-inner .main-nav a { display:block; padding:7px 10px; font-size:12px; }
    .agent-layout { grid-template-columns:minmax(0,1fr); }
    html { scroll-padding-top:128px; }
}

.support-admin-unread { display:inline-flex; align-items:center; justify-content:center; min-width:18px; height:18px; padding:0 5px; margin-left:3px; border-radius:9px; background:#b85f7c; color:#fff; font-size:10px; }
#supportSidebarUnread { margin-left:auto; }

.support-message-aftercare{display:grid;gap:6px;min-width:0;margin-top:10px;padding-top:9px;border-top:1px solid #e7e5e4}
.support-problem-heading{font-size:12px;color:#78716c;line-height:1.6}
.support-problem-account{display:grid;gap:3px;min-width:0;padding:5px 9px;border-radius:6px;background:#fafaf9}
.support-problem-account strong{font-size:12px;color:#44403c;line-height:1.65;overflow-wrap:anywhere;white-space:normal}
.support-problem-account small{font-size:11px;color:#83738f;line-height:1.6;overflow-wrap:anywhere;white-space:normal}
.support-problem-more{font-size:11px;color:#8a789b;line-height:1.6;overflow-wrap:anywhere}
.support-chat .support-inspect-aftercare{justify-self:start;max-width:100%;min-height:36px;padding:8px 12px;border:1px solid #1c1917;border-radius:7px;background:#1c1917;color:#fff;font-size:12px;line-height:1.6;white-space:normal}
.support-chat .support-inspect-aftercare:hover{background:#1c1917;border-color:#1c1917;color:#fff}
.support-chat .support-inspect-aftercare:focus-visible{outline:3px solid #d6d3d1;outline-offset:2px}
@media(max-width:600px){.support-message-aftercare{gap:6px}.support-chat .support-inspect-aftercare{width:100%;justify-self:stretch;min-height:40px}}

/* The same buyer conversation lives in the mobile route and the desktop launcher. */
.shop-support-page { min-width:0; }
@media(max-width:700px) {
    body.shop-support-page-active { overflow:hidden; padding-bottom:0; }
    .shop-support-page-active .site-footer { display:none; }
    .shop-support-page { height:var(--shop-support-page-height,calc(100dvh - 133px)); }
    .shop-support-page > .support-page-chat { height:100%; width:100%; border:0; border-radius:0; box-shadow:none; }
    .support-page-chat .support-chat-header { padding:15px 18px; background:#fff; }
    .support-page-chat .support-chat-header strong { font-size:21px; font-weight:650; }
    .support-page-chat .support-connection { font-size:11px; margin-top:4px; }
    .support-page-chat .support-linked-order { margin:0; padding:11px 18px; background:#f5f5f4; }
    .support-page-chat .support-linked-order small { font-size:11px; }
    .support-page-chat .support-linked-order strong { font-size:12px; font-weight:550; }
    .support-page-chat .support-messages { padding:18px 16px; background:#fafaf9; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }
    .support-page-chat .support-message-meta { font-size:11px; }
    .support-page-chat .support-bubble { padding:10px 12px; max-width:90%; box-shadow:none; }
    .support-page-chat .support-bubble p { font-size:14px; }
    .support-page-chat .support-composer { padding:10px 16px; }
    .support-page-chat .support-composer textarea { font-size:16px; min-height:43px; height:43px; max-height:90px; resize:none; }
    .support-page-chat .support-composer-tools { margin-top:5px; }
    .support-page-chat .support-upload { min-height:36px; font-size:13px!important; }
    .support-page-chat .support-send { min-height:36px; min-width:66px; font-size:13px!important; }
    .support-page-chat .support-composer-tools small { font-size:9px; }
    .support-page-chat .support-feedback { font-size:11px; }
    .support-page-chat .support-backup { max-height:90px; overflow:auto; }
    .shop-support-keyboard-open .support-page-chat .support-chat-header { padding:8px 16px; }
    .shop-support-keyboard-open .support-page-chat .support-chat-header strong { font-size:17px; }
    .shop-support-keyboard-open .support-page-chat .support-linked-order { padding:6px 16px; }
}

/* Buyer-facing chat shares the approved neutral card-home design; admin inbox is unchanged. */
body .support-launcher { display:flex; align-items:center; justify-content:center; gap:9px; right:24px; bottom:24px; min-width:108px; height:50px; min-height:50px; padding:0 19px; border:1px solid #171717; border-radius:25px; background:#171717; color:#fff; font-size:13px; font-weight:500; line-height:1; box-shadow:0 4px 16px #00000014; z-index:160; transition:background 180ms,transform 180ms,box-shadow 180ms; }
body .support-launcher:hover { background:#303030; transform:translateY(-2px); box-shadow:0 8px 24px #00000020; }
.support-launcher-symbol { position:relative; display:block; width:20px; height:17px; flex:none; border:1.5px solid currentColor; border-radius:8px; }
.support-launcher-symbol::before { content:""; position:absolute; width:5px; height:5px; bottom:-3px; left:2px; border-left:1.5px solid currentColor; transform:skewY(-30deg); background:#171717; }
.support-launcher-symbol::after { content:""; position:absolute; left:4px; right:4px; top:5px; height:4px; border-block:1px solid currentColor; }
body .support-launcher .support-unread { position:absolute; top:-5px; right:-4px; color:white; background:#b94f49; box-shadow:0 0 0 2px white; font-size:10px; }
.support-buyer-chat.support-floating { z-index:165; right:24px; bottom:88px; width:min(380px,calc(100vw - 32px)); height:min(530px,calc(100dvh - 112px)); border:1px solid #e5e5e5; border-radius:18px; box-shadow:0 16px 55px #0000001c; }
.support-buyer-chat { color:#171717; }
.support-buyer-chat .support-chat-header { gap:13px; padding:20px; border-color:#ededed; background:white; }
.support-buyer-chat .support-avatar { position:relative; overflow:hidden; display:grid; place-items:center; width:38px; height:38px; flex:none; border-radius:50%; background:#ece8df; color:#625d53; font-size:13px; }
.support-buyer-chat .support-heading-copy { flex:1; }
.support-buyer-chat .support-chat-header strong { color:#171717; font-size:15px; font-weight:600; }
.support-buyer-chat .support-connection { display:flex; align-items:center; gap:5px; color:#777; line-height:1.5; font-size:11px; margin-top:3px; }
.support-buyer-chat .support-connection.failed { color:#a66b3e; }
.support-buyer-chat .support-icon-button { color:#777; }
.support-buyer-chat .support-icon-button:hover { background:#f3f3f3; color:#171717; }
.support-buyer-chat .support-expand { margin-right:-8px; font-size:20px!important; }
.support-buyer-chat .support-linked-order { background:#f7f7f5; border-color:#e8e8e5; }
.support-buyer-chat .support-linked-order small { color:#888; }
.support-buyer-chat .support-linked-order strong { color:#444; }
.support-buyer-chat .support-older { background:white; color:#777; }
.support-buyer-chat .support-messages { padding:18px 18px 24px; background:white; overscroll-behavior:contain; }
.support-buyer-chat .support-message { position:relative; padding-left:38px; margin-bottom:19px; }
.support-buyer-chat .support-message.mine { padding-left:0; padding-right:38px; }
.support-buyer-chat .support-message-avatar { position:absolute; left:0; top:0; width:30px; height:30px; font-size:10px; }
.support-buyer-chat .support-message.mine .support-message-avatar { left:auto; right:0; background:#eee; color:#666; }
.support-buyer-chat .support-message-meta { color:#969696; font-size:10px; font-weight:400; padding:0; margin-bottom:7px; }
.support-buyer-chat .support-bubble { max-width:100%; background:#f4f4f5; border:0; border-radius:0 11px 11px 11px; padding:11px 13px; box-shadow:none; }
.support-buyer-chat .support-bubble p { color:#171717; font-size:12px; line-height:1.8; }
.support-buyer-chat .support-message.mine .support-bubble { background:#171717; border-radius:11px 0 11px 11px; }
.support-buyer-chat .support-message.mine .support-bubble p { color:white; }
.support-buyer-chat .support-message-order { color:#999; border-color:#ddd; }
.support-buyer-chat .support-message.mine .support-message-order { color:#ccc; border-color:#555; }
.support-buyer-chat .support-delivery { color:#999; font-size:9px; }
.support-buyer-chat .support-empty { color:#888; font-size:12px; line-height:1.9; }
.support-buyer-chat .support-composer { padding:14px 16px 12px; border-color:#ededed; }
.support-buyer-chat .support-input-wrap { display:flex; align-items:flex-end; gap:9px; border:1px solid #e6e6e6; border-radius:12px; padding:10px; background:white; }
.support-buyer-chat .support-input-wrap:focus-within { border-color:#aaa; }
.support-buyer-chat .support-input-wrap textarea { width:100%; min-width:0; min-height:38px; height:auto; max-height:130px; resize:none; padding:1px 2px; border:0; border-radius:0; outline:none; color:#222; background:none; font-size:12px; line-height:1.6; }
.support-buyer-chat .support-composer textarea::placeholder { color:#999; }
.support-buyer-chat .support-composer-tools { gap:8px; }
.support-buyer-chat .support-upload { padding:0; color:#666; font-size:10px!important; }
.support-buyer-chat .support-composer-tools small { color:#aaa; }
.support-buyer-chat .support-enter-hint { margin-left:auto; white-space:nowrap; }
.support-buyer-chat .support-input-wrap .support-send { display:grid; place-items:center; flex:none; width:30px; height:30px; min-width:30px; min-height:30px; margin:0; padding:0; border-radius:8px; background:#171717; color:white; }
.support-buyer-chat .support-send:disabled { opacity:1; background:#ededed; color:#b5b5b5; }
.support-send-arrow { position:relative; width:18px; height:18px; }
.support-send-arrow::before { content:""; position:absolute; width:1.7px; height:13px; top:3px; left:8px; border-radius:1px; background:currentColor; }
.support-send-arrow::after { content:""; position:absolute; width:8px; height:8px; top:3px; left:4.5px; border-left:1.7px solid currentColor; border-top:1.7px solid currentColor; transform:rotate(45deg); border-radius:1px; }
.support-buyer-chat .support-previews img { border-color:#ddd; }
.support-buyer-chat .support-previews button { background:#555; }
.support-buyer-chat .support-backup { color:#777; border-color:#ededed; background:#fafafa; }
.support-buyer-chat button:focus-visible,.support-buyer-chat textarea:focus-visible,body .support-launcher:focus-visible { outline:2px solid #6b7162; outline-offset:3px; }
.support-buyer-chat .support-team { position:relative; display:flex; align-items:center; width:63px; height:40px; flex:none; }
.support-buyer-chat .support-team .support-avatar { width:38px; height:38px; font-size:11px; box-shadow:0 0 0 2px #fff; }
.support-buyer-chat .support-avatar-image { display:block; width:100%; height:100%; object-fit:cover; }
.support-buyer-chat .support-team-primary { z-index:2; }
.support-buyer-chat .support-team-secondary { margin-left:-13px; background:#e7ebf0; color:#526374; }
.support-buyer-chat .support-connection-dot { position:absolute; right:0; bottom:0; width:10px; height:10px; z-index:3; border:2px solid white; border-radius:50%; background:#aaa; }
.support-buyer-chat .support-connection::before { content:""; width:6px; height:6px; flex:none; border-radius:50%; background:#aaa; }
.support-buyer-chat.support-connected .support-connection-dot,.support-buyer-chat.support-connected .support-connection::before { background:#43b26c; }
.support-buyer-chat .support-date-divider { text-align:center; font-size:10px; font-weight:400; color:#aaa; margin:0 0 24px; }
.support-buyer-chat .support-message-time { display:block; font-size:9px; color:#aaa; margin-top:5px; }
.support-buyer-chat .support-quick-actions { display:flex; flex-wrap:wrap; gap:7px; margin-left:38px; }
.support-buyer-chat .support-quick-action { border:1px solid #e5e5e5; border-radius:7px; background:#fff; color:#666; padding:7px 10px; font-size:10px; }
.support-buyer-chat .support-quick-action:hover { border-color:#aaa; color:#171717; }
.shop-support-page > .support-buyer-chat.support-page-chat { height:calc(100dvh - 148px); min-height:400px; width:min(760px,calc(100% - 48px)); margin:24px auto; border:1px solid #e5e5e5; border-radius:20px; box-shadow:0 8px 30px #00000005; overflow:hidden; }
.support-page-chat.support-buyer-chat .support-messages { padding:24px; }
.support-page-chat.support-buyer-chat .support-bubble { max-width:min(480px,100%); }
.support-page-chat.support-buyer-chat .support-bubble p { font-size:14px; }
.support-page-chat.support-buyer-chat .support-composer { padding:18px 24px; }
@media(max-width:700px) {
    body .support-launcher { display:flex; right:16px; bottom:80px!important; }
    .support-buyer-chat.support-floating { right:16px; bottom:144px; height:min(510px,calc(100dvh - 160px)); }
    .shop-support-page > .support-buyer-chat.support-page-chat { height:var(--shop-support-page-height,calc(100dvh - 133px)); min-height:0; width:100%; margin:0; border:0; border-radius:0; box-shadow:none; }
    .support-buyer-chat .support-chat-header { padding:17px; }
    .support-page-chat.support-buyer-chat .support-messages { padding:18px 16px; }
    .support-page-chat.support-buyer-chat .support-composer { padding:12px 16px; }
    .support-page-chat.support-buyer-chat .support-input-wrap textarea { font-size:16px; }
    .support-buyer-chat .support-enter-hint { display:none; }
    .shop-support-page-active .support-launcher { bottom:calc(var(--shop-support-keyboard-inset,0px) + 80px)!important; }
}
@media(prefers-reduced-motion:reduce) { body .support-launcher { transition:none; } }
/* Shop dialogs carry their own support link; the floating launcher must not cover their actions. */
body.shop-dialog-open .support-launcher { display:none; }
/* Typing indicator shown briefly before the greeting appears. */
.support-typing .support-bubble{display:inline-flex;gap:4px;align-items:center;min-height:20px;padding:12px 14px}
.support-typing .support-bubble span{width:6px;height:6px;border-radius:50%;background:#a8a29e;animation:support-typing 1s infinite ease-in-out}
.support-typing .support-bubble span:nth-child(2){animation-delay:.15s}
.support-typing .support-bubble span:nth-child(3){animation-delay:.3s}
@keyframes support-typing{0%,80%,100%{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.support-typing .support-bubble span{animation:none}}
/* Buyer chat: one shop avatar, compact own messages, a contact button and a calm input focus. */
.support-buyer-chat .support-team { width:40px; }
.support-buyer-chat .support-message.mine { padding-right:0; display:flex; flex-direction:column; align-items:flex-end; }
.support-buyer-chat .support-message.mine .support-bubble { max-width:85%; }
.support-buyer-chat .support-message.continued { margin-top:-13px; }
.support-buyer-chat .support-message.theirs.continued .support-bubble { border-radius:11px; }
.support-buyer-chat .support-message.mine .support-message-time { text-align:right; }
.support-buyer-chat .support-input-wrap textarea:focus-visible { outline:none; }
.support-buyer-chat .support-input-wrap:focus-within { border-color:#78716c; box-shadow:0 0 0 3px #78716c1a; }
.support-buyer-chat .support-contact-button { margin-left:auto; padding:6px 10px; border:1px solid #e5e5e5; border-radius:8px; background:#fff; color:#44403c; font-size:11px; white-space:nowrap; cursor:pointer; }
.support-buyer-chat .support-contact-button:hover { border-color:#a8a29e; }
.support-buyer-chat .support-contact-button + .support-icon-button { margin-left:6px; }
.support-buyer-chat .support-copy-contact { display:block; margin-top:8px; padding:5px 10px; border:1px solid #d6d3d1; border-radius:7px; background:#fff; color:#292524; font-size:11px; cursor:pointer; }
body.shop-support-page-active .support-launcher { display:none; }
.support-buyer-chat .support-connection::before { display:none; }
/* Phones: an icon-only round button (its aria-label names it), so it hides less of the product rows beneath it. */
@media(max-width:700px) {
    body .support-launcher { min-width:0; width:48px; height:48px; min-height:48px; padding:0; gap:0; border-radius:50%; }
    body .support-launcher > span:not(.support-launcher-symbol) { display:none; }
}
