/* Scoped additions: existing storefront, auction and account styles are untouched. */
[data-customer-assistant] .assistant-messages { align-content: start; overscroll-behavior: contain; }
[data-customer-assistant] .assistant-message { box-sizing: border-box; overflow-wrap: anywhere; min-width: 0; }
[data-customer-assistant] .assistant-message-text { margin: 0 0 .35rem; white-space: pre-line; }
[data-customer-assistant] .assistant-product-list { display: grid; gap: .5rem; margin: .6rem 0; }
[data-customer-assistant] .assistant-product-card { display: grid; grid-template-columns: 64px minmax(0,1fr); gap: .6rem; padding: .5rem; border: 1px solid #d9e1e7; border-radius: .4rem; background: #fff; }
[data-customer-assistant] .assistant-product-card img { width: 64px; height: 64px; object-fit: contain; background: #fff; }
[data-customer-assistant] .assistant-product-details, [data-customer-assistant] .assistant-shipment-card { display: grid; gap: .25rem; min-width: 0; }
[data-customer-assistant] .assistant-product-placeholder { display: flex; align-items: center; justify-content: center; width: 64px; min-height: 64px; text-align: center; color: #667085; background: #f4f6fa; }
[data-customer-assistant] .assistant-shipment-card { padding: .6rem; margin: .6rem 0; border: 1px solid #d9e1e7; border-radius: .4rem; }
[data-customer-assistant] .assistant-panel { max-height: calc(100dvh - 5rem); display: flex; flex-direction: column; }
[data-customer-assistant] .assistant-panel[hidden] { display: none; }
[data-customer-assistant] .assistant-messages { flex: 1 1 300px; min-height: 80px; }
[data-customer-assistant] .assistant-panel textarea { min-width: 0; max-height: 120px; }
[data-customer-assistant] .assistant-panel header, [data-customer-assistant] .assistant-panel form { flex-shrink: 0; }
[data-customer-assistant] button:disabled { opacity: .65; cursor: wait; }

/* Shopping presentation stays inside the existing assistant component. */
[data-customer-assistant] .assistant-launcher[hidden] { display:none; }
[data-customer-assistant] .assistant-panel { width:min(480px,calc(100vw - 2rem));height:min(640px,calc(100dvh - 2rem));max-height:calc(100dvh - 2rem);border-radius:1rem; }
[data-customer-assistant] .assistant-panel.assistant-expanded { width:min(780px,calc(100vw - 2rem));height:min(820px,calc(100dvh - 2rem)); }
[data-customer-assistant] .assistant-window-controls { display:flex;align-items:center;gap:.25rem; }
[data-customer-assistant] .assistant-window-controls button { width:40px;min-height:40px;padding:0;border-radius:50%; }
[data-customer-assistant] .assistant-window-controls button:focus-visible { outline:2px solid #fff;outline-offset:2px; }
[data-customer-assistant] .assistant-messages { padding:1rem;gap:1rem;background:#f7f8fa; }
[data-customer-assistant] .assistant-welcome { align-self:center;padding:1.5rem .5rem;color:#172033; }
[data-customer-assistant] .assistant-welcome strong { font-size:1.35rem; }
[data-customer-assistant] .assistant-welcome p { line-height:1.55;color:#455569; }
[data-customer-assistant] .assistant-message.bot { width:100%;max-width:100%;background:transparent;padding:.25rem 0;box-shadow:none;color:#172033; }
[data-customer-assistant] .assistant-message.customer { max-width:88%; }
[data-customer-assistant] .assistant-product-list { display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);overflow-x:auto;gap:.65rem;padding:.25rem 0 .65rem;scroll-snap-type:x proximity; }
[data-customer-assistant] .assistant-product-card { display:flex;flex-direction:column;gap:.6rem;min-width:0;border-radius:.75rem;padding:.65rem;scroll-snap-align:start; }
[data-customer-assistant] .assistant-product-card img { width:100%;height:120px;object-fit:contain; }
[data-customer-assistant] .assistant-product-placeholder { width:100%;height:120px;font-size:.8rem; }
[data-customer-assistant] .assistant-product-details { flex:1;font-size:.85rem;line-height:1.4;align-content:start; }
[data-customer-assistant] .assistant-product-details strong { color:#172033;font-size:.9rem; }
[data-customer-assistant] .assistant-product-details small { color:#667085; }
[data-customer-assistant] .assistant-product-details a { display:block;padding:.4rem 0;color:#174ea6;font-weight:700; }
[data-customer-assistant] .assistant-suggestions { display:flex;gap:.45rem;overflow-x:auto;flex-shrink:0;padding:.55rem .75rem;background:#fff; }
[data-customer-assistant] .assistant-suggestions button { flex-shrink:0;min-height:36px;border:1px solid #cbd5e1;border-radius:999px;padding:.4rem .7rem;background:#fff;color:#172033;font:inherit;font-size:.8rem;cursor:pointer; }
[data-customer-assistant] .assistant-panel form { padding:.65rem .75rem; }
[data-customer-assistant] .assistant-panel textarea { border-radius:.65rem;line-height:1.4;min-height:44px; }
[data-customer-assistant] .assistant-panel form button { padding:0 .85rem;min-height:44px; }
[data-customer-assistant] .assistant-disclaimer { font-size:.7rem;line-height:1.35; }
@media(max-width:480px) {
 [data-customer-assistant] { right:.5rem;bottom:.5rem; }
 [data-customer-assistant] .assistant-panel,[data-customer-assistant] .assistant-panel.assistant-expanded { width:calc(100vw - 1rem);height:min(640px,calc(100dvh - 1rem));max-height:calc(100dvh - 1rem); }
 [data-customer-assistant] .assistant-panel header { padding:.65rem; }
 [data-customer-assistant] .assistant-product-list { grid-auto-columns:minmax(140px,1fr); }
}

/* Refined shopping panel: scoped to the assistant only. */
[data-customer-assistant] .assistant-panel { border:1px solid #e1e5e9;border-radius:24px;box-shadow:0 24px 70px #17203330,0 4px 16px #17203314;font-size:15px;line-height:1.5; }
[data-customer-assistant] .assistant-window-controls button { color:#253640;background:#fff;border:1px solid #e5e7eb;font-size:22px; }
[data-customer-assistant] .assistant-window-controls button:focus-visible { outline-color:#253640; }
[data-customer-assistant] .assistant-messages { background:#fff;padding:18px;gap:18px; }
[data-customer-assistant] .assistant-message.customer { background:#253640;border-radius:18px 18px 4px 18px;padding:10px 14px;box-shadow:none; }
[data-customer-assistant] .assistant-message-text { line-height:1.6; }
[data-customer-assistant] .assistant-product-list { grid-auto-columns:180px;gap:12px;max-width:100%;padding:8px 2px 14px;scrollbar-width:thin; }
[data-customer-assistant] .assistant-product-card { padding:10px;border:1px solid #e8ebee;border-radius:16px;background:#fff;box-shadow:0 3px 12px #17203308; }
[data-customer-assistant] .assistant-product-card img,[data-customer-assistant] .assistant-product-placeholder { height:132px;border-radius:10px;background:#f8f9fa; }
[data-customer-assistant] .assistant-product-details { gap:6px;display:flex;flex-direction:column;font-size:13px; }
[data-customer-assistant] .assistant-product-title { margin:0; }
[data-customer-assistant] .assistant-product-title summary { cursor:pointer;list-style:none; }
[data-customer-assistant] .assistant-product-title summary::-webkit-details-marker { display:none; }
[data-customer-assistant] .assistant-product-title summary strong { display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:13px;line-height:1.45; }
[data-customer-assistant] .assistant-product-title summary small { display:block;margin-top:4px;font-size:11px;text-decoration:underline; }
[data-customer-assistant] .assistant-product-title[open] summary strong { -webkit-line-clamp:unset; }
[data-customer-assistant] .assistant-product-sku { font-size:10px;overflow-wrap:anywhere; }
[data-customer-assistant] .assistant-product-price { font-size:18px;font-weight:750;color:#253640;letter-spacing:-.4px; }
[data-customer-assistant] .assistant-product-availability { font-size:11px;color:#526271; }
[data-customer-assistant] .assistant-product-details a { margin-top:auto;padding:9px 8px;border-radius:999px;background:#253640;color:#fff;text-align:center;text-decoration:none;font-size:12px; }
[data-customer-assistant] .assistant-suggestions { padding:10px 16px 4px;gap:8px; }
[data-customer-assistant] .assistant-suggestions button { border-color:#e1e5e9;background:#fafafa;font-size:12px; }
[data-customer-assistant] .assistant-panel form { padding:12px 16px 8px;gap:8px; }
[data-customer-assistant] .assistant-panel textarea { border:1px solid #e1e5e9;border-radius:18px;background:#fafafa;padding:12px;font-size:16px; }
[data-customer-assistant] .assistant-panel form button { background:#253640;border-radius:16px;padding:0 16px; }
[data-customer-assistant] .assistant-panel a:focus-visible,[data-customer-assistant] .assistant-panel summary:focus-visible,[data-customer-assistant] .assistant-suggestions button:focus-visible { outline:2px solid #9a772f;outline-offset:3px; }
[data-customer-assistant] .assistant-disclaimer { padding:0 18px 12px;font-size:10px;color:#667085; }
@media(max-width:480px) {
 [data-customer-assistant] .assistant-messages { padding:14px; }
 [data-customer-assistant] .assistant-product-list { grid-auto-columns:160px; }
}

[data-customer-assistant] .assistant-panel > .assistant-window-controls { justify-content:flex-end;flex-shrink:0;padding:8px 10px 0;gap:6px;background:#fff; }

/* Compact chat density. Keep a readable mobile input and touch controls. */
[data-customer-assistant] .assistant-panel { width:min(440px,calc(100vw - 2rem));height:auto;max-height:min(540px,calc(100dvh - 2rem));font-size:13px;line-height:1.35;border-radius:18px; }
[data-customer-assistant] .assistant-panel.assistant-expanded { width:min(640px,calc(100vw - 2rem));height:auto;max-height:min(680px,calc(100dvh - 2rem)); }
[data-customer-assistant] .assistant-messages { flex:0 1 auto;height:auto;min-height:0;padding:8px 12px;gap:10px; }
[data-customer-assistant] .assistant-message-text { line-height:1.4;margin-bottom:4px; }
[data-customer-assistant] .assistant-message.customer { padding:7px 10px; }
[data-customer-assistant] .assistant-welcome { padding:12px 4px; }
[data-customer-assistant] .assistant-welcome strong { font-size:17px; }
[data-customer-assistant] .assistant-welcome p { line-height:1.4;margin:8px 0; }
[data-customer-assistant] .assistant-product-list { grid-auto-columns:138px;gap:8px;margin:4px 0;padding:4px 1px 7px; }
[data-customer-assistant] .assistant-product-card { padding:7px;gap:5px;border-radius:11px; }
[data-customer-assistant] .assistant-product-card img,[data-customer-assistant] .assistant-product-placeholder { height:86px;border-radius:7px; }
[data-customer-assistant] .assistant-product-details { gap:3px;font-size:11px; }
[data-customer-assistant] .assistant-product-title summary strong { font-size:11px;line-height:1.3; }
[data-customer-assistant] .assistant-product-title summary small { font-size:10px;margin-top:2px; }
[data-customer-assistant] .assistant-product-sku { display:none; }
[data-customer-assistant] .assistant-product-price { font-size:14px;letter-spacing:0; }
[data-customer-assistant] .assistant-product-availability { font-size:10px; }
[data-customer-assistant] .assistant-product-details a { font-size:11px;padding:6px;border-radius:10px; }
[data-customer-assistant] .assistant-suggestions { padding:5px 10px 2px;gap:5px; }
[data-customer-assistant] .assistant-suggestions button { font-size:11px;min-height:30px;padding:4px 8px; }
[data-customer-assistant] .assistant-panel form { padding:6px 10px;gap:5px; }
[data-customer-assistant] .assistant-panel textarea { font-size:13px;padding:8px 10px;min-height:36px;border-radius:12px; }
[data-customer-assistant] .assistant-panel form button { min-height:36px;padding:0 10px;font-size:12px;border-radius:12px; }
[data-customer-assistant] .assistant-panel > .assistant-window-controls { padding:4px 7px 0;gap:4px; }
[data-customer-assistant] .assistant-window-controls button { width:32px;min-height:32px;font-size:18px; }
[data-customer-assistant] .assistant-disclaimer { padding:0 12px 7px;font-size:10px;line-height:1.25; }
@media(max-width:480px) {
 [data-customer-assistant] .assistant-panel,[data-customer-assistant] .assistant-panel.assistant-expanded { width:calc(100vw - 1rem);height:auto;max-height:calc(100dvh - 1rem); }
 [data-customer-assistant] .assistant-panel textarea { font-size:16px; }
}
@media(pointer:coarse) {
 [data-customer-assistant] .assistant-window-controls button { width:44px;min-height:44px; }
 [data-customer-assistant] .assistant-suggestions button,[data-customer-assistant] .assistant-panel form button { min-height:44px; }
 [data-customer-assistant] .assistant-product-details a { min-height:44px;box-sizing:border-box;display:flex;align-items:center;justify-content:center; }
}

/* Staff handoff controls remain within the existing compact chat. */
[data-customer-assistant] .assistant-contact[hidden] { display:none!important; }
[data-customer-assistant] .assistant-contact input { min-width:0;width:100%;box-sizing:border-box;border:1px solid #9aa7b9;border-radius:10px;padding:7px;font:inherit;font-size:13px; }
[data-customer-assistant] .assistant-message.customer p,[data-customer-assistant] .assistant-message.customer small { color:inherit; }
[data-customer-assistant] .assistant-message small { display:block;font-size:10px;margin-bottom:4px; }
.privacy-choice-button { width:auto;display:inline-block;margin:10px 16px;padding:7px 12px; }

/* ============================================================================
   LIGHT THEME — clean light panel (no dark background), with a branded header and
   larger, image-forward product cards. Scoped entirely to the assistant; nothing
   else on the site is affected.
   ============================================================================ */
[data-customer-assistant]{ --ca-ink:#1b2a3a; --ca-muted:#5a6b80; --ca-line:#e3e8ee; --ca-blue:#1f5fd0; --ca-cyan:#19c6dc; }

/* Launcher pill (brand accent — sits on any page background) */
[data-customer-assistant] .assistant-launcher{ display:inline-flex;align-items:center;gap:9px;background:linear-gradient(120deg,var(--ca-blue),#1a46a0);color:#fff;border:0;border-radius:999px;padding:12px 18px;font-weight:800;font-size:14px;box-shadow:0 12px 30px rgba(31,95,208,.4);cursor:pointer; }
[data-customer-assistant] .assistant-launcher::before{ content:"";width:9px;height:9px;border-radius:50%;background:#7ff0bf;box-shadow:0 0 0 3px rgba(25,198,122,.3); }

/* Panel shell (white) */
[data-customer-assistant] .assistant-panel{ background:#fff;border:1px solid var(--ca-line);color:var(--ca-ink);box-shadow:0 24px 60px rgba(23,32,51,.22);width:min(400px,calc(100vw - 2rem));max-height:min(620px,calc(100dvh - 2rem)); }
[data-customer-assistant] .assistant-panel.assistant-expanded{ width:min(680px,calc(100vw - 2rem));max-height:min(760px,calc(100dvh - 2rem)); }

/* Branded header bar (light) */
[data-customer-assistant] .assistant-brandbar{ display:flex;align-items:center;gap:11px;padding:12px 14px;background:#f7f9fc;border-bottom:1px solid var(--ca-line);flex-shrink:0; }
[data-customer-assistant] .assistant-avatar{ width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,var(--ca-cyan),var(--ca-blue));display:flex;align-items:center;justify-content:center;font-weight:900;color:#fff;font-size:17px;flex:none; }
[data-customer-assistant] .assistant-brandmeta{ flex:1;min-width:0; }
[data-customer-assistant] .assistant-brandmeta strong{ display:block;font-size:14.5px;line-height:1.1;color:var(--ca-ink); }
[data-customer-assistant] .assistant-brandmeta small{ display:flex;align-items:center;gap:6px;font-size:11.5px;color:#128a54;margin-top:2px; }
[data-customer-assistant] .assistant-brandmeta small::before{ content:"";width:7px;height:7px;border-radius:50%;background:#19c67a;box-shadow:0 0 0 3px rgba(25,198,122,.18); }
[data-customer-assistant] .assistant-brandbar .assistant-window-controls{ margin-left:auto; }
[data-customer-assistant] .assistant-window-controls button{ background:#fff;border:1px solid var(--ca-line);color:#334155; }

/* Status strip under the header */
[data-customer-assistant] .assistant-brandbar + .assistant-disclaimer{ margin:0;padding:6px 14px;background:#fbfcfe;border-bottom:1px solid var(--ca-line);color:var(--ca-muted);font-size:11px; }

/* Message area + bubbles */
[data-customer-assistant] .assistant-messages{ background:#fff; }
[data-customer-assistant] .assistant-welcome{ color:var(--ca-ink); }
[data-customer-assistant] .assistant-welcome strong{ color:var(--ca-ink); }
[data-customer-assistant] .assistant-welcome p{ color:var(--ca-muted); }
[data-customer-assistant] .assistant-message.bot{ color:var(--ca-ink); }
[data-customer-assistant] .assistant-message.bot .assistant-message-text{ background:#f4f6fa;border:1px solid var(--ca-line);border-radius:14px 14px 14px 5px;padding:10px 13px;display:inline-block;max-width:92%; }
[data-customer-assistant] .assistant-message.customer{ background:var(--ca-blue);color:#fff;border-radius:16px 16px 4px 16px; }
[data-customer-assistant] .assistant-message small{ color:var(--ca-muted); }

/* Compact product cards (white) */
[data-customer-assistant] .assistant-product-list{ grid-auto-columns:138px;gap:8px; }
[data-customer-assistant] .assistant-product-card{ background:#fff;border:1px solid var(--ca-line);border-radius:11px;box-shadow:0 2px 8px rgba(23,32,51,.07);padding:7px; }
[data-customer-assistant] .assistant-product-card img,[data-customer-assistant] .assistant-product-placeholder{ height:86px;border-radius:7px;background:#fff;color:#667085;object-fit:contain;padding:4px; }
[data-customer-assistant] .assistant-product-details{ font-size:11px; }
[data-customer-assistant] .assistant-product-title summary strong{ color:var(--ca-ink); }
[data-customer-assistant] .assistant-product-title summary small{ color:var(--ca-blue); }
[data-customer-assistant] .assistant-product-sku{ display:block;color:var(--ca-muted); }
[data-customer-assistant] .assistant-product-price{ color:var(--ca-ink);font-size:14px; }
[data-customer-assistant] .assistant-product-availability{ color:var(--ca-muted); }
[data-customer-assistant] .assistant-product-details a{ background:var(--ca-blue);color:#fff;border-radius:999px; }

/* Shipment/tracking cards */
[data-customer-assistant] .assistant-shipment-card{ background:#fff;border:1px solid var(--ca-line);border-radius:12px;color:var(--ca-ink); }
[data-customer-assistant] .assistant-shipment-card a{ color:var(--ca-blue); }

/* Quick-reply chips */
[data-customer-assistant] .assistant-suggestions{ background:#f7f9fc;border-top:1px solid var(--ca-line); }
[data-customer-assistant] .assistant-suggestions button{ background:#fff;border:1px solid var(--ca-line);color:var(--ca-ink); }

/* Composer */
[data-customer-assistant] .assistant-panel form{ background:#f7f9fc;border-top:1px solid var(--ca-line); }
[data-customer-assistant] .assistant-panel textarea{ background:#fff;border:1px solid var(--ca-line);color:var(--ca-ink); }
[data-customer-assistant] .assistant-panel textarea::placeholder{ color:var(--ca-muted); }
[data-customer-assistant] .assistant-panel form button{ background:var(--ca-blue); }
[data-customer-assistant] .assistant-disclaimer{ color:var(--ca-muted);background:#f7f9fc; }
[data-customer-assistant] .assistant-contact input{ background:#fff;border:1px solid var(--ca-line);color:var(--ca-ink); }

/* ============================================================================
   SHOPIFY-STYLE RESULT CARDS — clean, image-forward product cards. Scoped under
   .assistant-messages so these win over the earlier compact/light card rules.
   ============================================================================ */
[data-customer-assistant] .assistant-messages .assistant-product-list{ grid-auto-columns:150px;gap:10px;padding:8px 2px 12px; }
[data-customer-assistant] .assistant-messages .assistant-product-card{ background:#fff;border:1px solid var(--ca-line);border-radius:14px;box-shadow:0 2px 10px rgba(23,32,51,.06);padding:8px;gap:8px; }
[data-customer-assistant] .assistant-messages .assistant-product-card img,[data-customer-assistant] .assistant-messages .assistant-product-placeholder{ height:112px;border-radius:10px;background:#f4f6f9;object-fit:contain;padding:6px; }
[data-customer-assistant] .assistant-messages .assistant-product-details{ gap:5px;font-size:12px; }
[data-customer-assistant] .assistant-messages .assistant-product-title summary{ cursor:default; }
[data-customer-assistant] .assistant-messages .assistant-product-title summary strong,[data-customer-assistant] .assistant-messages .assistant-product-title[open] summary strong{ -webkit-line-clamp:2;font-size:12.5px;line-height:1.35;color:var(--ca-ink);font-weight:650; }
[data-customer-assistant] .assistant-messages .assistant-product-title summary small{ display:none; }
[data-customer-assistant] .assistant-messages .assistant-product-sku{ display:none; }
[data-customer-assistant] .assistant-messages .assistant-product-price{ font-size:16px;font-weight:800;color:var(--ca-ink);letter-spacing:-.2px; }
[data-customer-assistant] .assistant-messages .assistant-product-availability{ font-size:11px;color:#128a54;display:flex;align-items:center;gap:5px; }
[data-customer-assistant] .assistant-messages .assistant-product-availability::before{ content:"";width:6px;height:6px;border-radius:50%;background:#19c67a; }
[data-customer-assistant] .assistant-messages .assistant-product-details a{ margin-top:2px;background:var(--ca-blue);color:#fff;border-radius:10px;text-align:center;padding:8px;font-size:12px;font-weight:700; }
