/* GLOBE Concierge — chat assistant. Scoped under .gc-*; relies on style.css variables with fallbacks. */
.gc-launch,.gc-panel,.gc-nudge{color-scheme:light only;--gc-ink:#111111;--gc-ivory:#ffffff;--gc-paper:#ffffff;--gc-gold:#111111;--gc-gold-deep:#111111;--gc-line:var(--line,rgba(17,17,17,.12));--gc-muted:var(--muted,#6b655c);--gc-ease:var(--ease,cubic-bezier(.2,.7,.2,1));--gc-serif:var(--serif,'Cormorant Garamond',Georgia,serif);--gc-sans:var(--sans,'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif);font-family:var(--gc-sans);box-sizing:border-box}
.gc-launch *,.gc-panel *,.gc-nudge *{box-sizing:border-box}
.gc-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* launcher */
.gc-launch{position:fixed;right:16px;bottom:16px;z-index:70;width:56px;height:56px;border-radius:50%;border:0;padding:0;cursor:pointer;background:var(--gc-ink);color:var(--gc-gold);display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px rgba(17,17,17,.75),inset 0 0 0 4px var(--gc-ink),inset 0 0 0 5px rgba(17,17,17,.22),0 12px 30px rgba(17,17,17,.28);transition:transform .35s var(--gc-ease),box-shadow .35s var(--gc-ease),bottom .35s var(--gc-ease);-webkit-tap-highlight-color:transparent}
.gc-launch:hover{transform:translateY(-2px)}
.gc-launch:focus-visible{outline:2px solid var(--gc-gold);outline-offset:3px}
.gc-launch-ic{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:opacity .25s,transform .35s var(--gc-ease)}
.gc-launch svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.gc-ic-close{opacity:0;transform:rotate(-45deg)}
.gc-launch.gc-active .gc-ic-chat{opacity:0;transform:scale(.7)}
.gc-launch.gc-active .gc-ic-close{opacity:1;transform:none}
.gc-dot{position:absolute;top:7px;right:8px;width:10px;height:10px;border-radius:50%;background:var(--gc-gold);box-shadow:0 0 0 2px var(--gc-ink);opacity:0;transform:scale(.4);transition:opacity .3s,transform .35s var(--gc-ease)}
.gc-launch.gc-unread .gc-dot{opacity:1;transform:none}
body.has-sticky .gc-launch{bottom:80px}
@media (min-width:900px){body.has-sticky .gc-launch{bottom:16px}}

/* nudge */
.gc-nudge{position:fixed;right:84px;bottom:24px;z-index:69;display:flex;align-items:stretch;max-width:calc(100vw - 104px);background:var(--gc-paper);color:var(--gc-ink);border:1px solid var(--gc-line);border-radius:2px;box-shadow:0 14px 34px rgba(17,17,17,.14);opacity:0;visibility:hidden;transform:translateX(8px);transition:opacity .4s,transform .45s var(--gc-ease),visibility .4s}
.gc-nudge.gc-on{opacity:1;visibility:visible;transform:none}
.gc-nudge::after{content:"";position:absolute;right:-6px;bottom:15px;width:10px;height:10px;background:var(--gc-paper);border-right:1px solid var(--gc-line);border-top:1px solid var(--gc-line);transform:rotate(45deg)}
.gc-nudge-open{background:none;border:0;cursor:pointer;font:400 italic 19px/1.2 var(--gc-serif);color:var(--gc-ink);padding:11px 4px 11px 16px;text-align:left;white-space:nowrap}
.gc-nudge-x{background:none;border:0;cursor:pointer;width:34px;display:flex;align-items:center;justify-content:center;color:var(--gc-muted)}
.gc-nudge-x svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.4}
body.has-sticky .gc-nudge{bottom:88px}
@media (min-width:900px){body.has-sticky .gc-nudge{bottom:24px}}

/* panel */
.gc-panel{position:fixed;z-index:95;inset:0;display:flex;flex-direction:column;background:var(--gc-paper);color:var(--gc-ink);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(16px);transition:opacity .3s var(--gc-ease),transform .4s var(--gc-ease),visibility 0s linear .4s;height:100%;height:100dvh;overflow:hidden}
.gc-panel.gc-on{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity .3s var(--gc-ease),transform .4s var(--gc-ease),visibility 0s}
html.gc-open{overflow:hidden}
html.gc-open body{overflow:hidden}
@media (max-width:599.98px){html.gc-open .gc-launch{opacity:0;pointer-events:none}}
@media (min-width:600px){
  html.gc-open,html.gc-open body{overflow:visible}
  html.gc-open body{overflow-x:hidden}
  .gc-panel{inset:auto 16px 84px auto;width:380px;height:600px;max-height:calc(100vh - 104px);border:1px solid var(--gc-line);border-radius:2px;box-shadow:0 28px 70px rgba(17,17,17,.22),0 2px 8px rgba(17,17,17,.06);transform-origin:100% 100%}
}

/* header */
.gc-head{flex:none;display:flex;align-items:center;gap:12px;padding:14px 10px 14px 18px;background:var(--gc-ink);color:var(--gc-ivory);border-bottom:1px solid rgba(17,17,17,.35);padding-top:max(14px,env(safe-area-inset-top))}
.gc-mark{flex:none;width:36px;height:36px;border:1px solid rgba(17,17,17,.55);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gc-gold)}
.gc-mark svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.1}
.gc-title{flex:1;min-width:0}
.gc-title h2{margin:0;font:500 22px/1.05 var(--gc-serif);letter-spacing:.01em;color:var(--gc-ivory)}
.gc-title p{margin:4px 0 0;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gc-gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gc-hbtn{flex:none;width:40px;height:40px;background:none;border:0;border-radius:2px;color:var(--gc-ivory);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.85;transition:opacity .2s,background .2s}
.gc-hbtn:hover{opacity:1;background:rgba(247,242,233,.07)}
.gc-hbtn:focus-visible,.gc-panel button:focus-visible,.gc-panel a:focus-visible{outline:2px solid var(--gc-gold);outline-offset:2px}
.gc-hbtn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round}
.gc-menu-btn svg circle{fill:currentColor;stroke:none}
.gc-menu-wrap{position:relative}
.gc-menu{position:absolute;right:0;top:44px;z-index:3;min-width:228px;background:var(--gc-paper);border:1px solid var(--gc-line);border-radius:2px;box-shadow:0 18px 40px rgba(17,17,17,.18);padding:6px 0}
.gc-menu[hidden]{display:none}
.gc-menu button{display:flex;align-items:center;gap:12px;width:100%;background:none;border:0;padding:11px 16px;font:400 14px/1.3 var(--gc-sans);color:var(--gc-ink);cursor:pointer;text-align:left}
.gc-menu button:hover{background:rgba(17,17,17,.04)}
.gc-menu svg{width:18px;height:18px;fill:none;stroke:var(--gc-gold-deep);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* log */
.gc-log{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:20px 16px 8px;display:flex;flex-direction:column;gap:10px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;outline:none;background:var(--gc-paper)}
.gc-msg{display:flex;flex-direction:column;max-width:88%;animation:gcIn .35s var(--gc-ease) both}
.gc-bot{align-self:flex-start}
.gc-user{align-self:flex-end;align-items:flex-end}
.gc-cards,.gc-wide{max-width:100%;width:100%;gap:8px}
.gc-bubble{padding:11px 14px;border-radius:2px;font-size:14.5px;line-height:1.55;overflow-wrap:anywhere;word-break:normal}
.gc-bot .gc-bubble{background:#fff;border:1px solid var(--gc-line);color:var(--gc-ink)}
.gc-user .gc-bubble{background:var(--gc-ink);color:var(--gc-ivory)}
.gc-cards .gc-bubble,.gc-wide .gc-bubble{align-self:flex-start;max-width:88%}
.gc-bubble strong{font-weight:600}
.gc-bubble a{color:var(--gc-gold-deep);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.gc-user .gc-bubble a{color:var(--gc-gold)}
.gc-msg:first-child .gc-bubble{font:400 19px/1.4 var(--gc-serif);padding:13px 16px}
@keyframes gcIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* typing */
.gc-typing .gc-bubble{display:flex;gap:5px;align-items:center;padding:14px 16px}
.gc-typing i{width:5px;height:5px;border-radius:50%;background:var(--gc-gold-deep);opacity:.35;animation:gcDot 1.1s infinite ease-in-out}
.gc-typing i:nth-child(2){animation-delay:.15s}
.gc-typing i:nth-child(3){animation-delay:.3s}
@keyframes gcDot{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}

/* product card */
.gc-card{display:flex;gap:12px;background:#fff;border:1px solid var(--gc-line);border-radius:2px;padding:10px;min-width:0}
.gc-card-img{flex:none;width:84px;height:108px;background:var(--gc-ivory);overflow:hidden;display:flex;align-items:center;justify-content:center;font:400 30px var(--gc-serif);color:var(--gc-gold-deep);text-decoration:none}
.gc-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--gc-ease)}
.gc-card:hover .gc-card-img img{transform:scale(1.04)}
.gc-card-body{flex:1;min-width:0;display:flex;flex-direction:column}
.gc-card-meta{margin:0;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gc-muted);min-height:12px}
.gc-card-name{margin:2px 0 0;font:500 21px/1.1 var(--gc-serif)}
.gc-card-name a{color:var(--gc-ink);text-decoration:none}
.gc-card-name a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.gc-card-desc{margin:3px 0 0;font-size:12.5px;line-height:1.45;color:var(--gc-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gc-card-price{margin:6px 0 0;font-size:14px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}
.gc-card-price span{font-weight:600}
.gc-card-price s{color:var(--gc-muted);font-size:12.5px}
.gc-card-price em{font-style:normal;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gc-gold-deep)}
.gc-card-act{margin-top:auto;padding-top:9px;display:flex;gap:6px}
.gc-btn{flex:1;min-width:0;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:2px;font:500 11px/1 var(--gc-sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;cursor:pointer;white-space:nowrap;padding:0 10px;transition:background .2s,color .2s,border-color .2s}
.gc-btn-dark{background:var(--gc-ink);color:var(--gc-ivory);border:1px solid var(--gc-ink)}
.gc-btn-dark:hover{background:#2e2e2e}
.gc-btn-dark.gc-added{background:var(--gc-gold-deep);border-color:var(--gc-gold-deep)}
.gc-btn-dark[disabled]{background:transparent;color:var(--gc-muted);border-color:var(--gc-line);cursor:not-allowed}
.gc-btn-line{flex:0 0 auto;background:transparent;color:var(--gc-ink);border:1px solid rgba(17,17,17,.3)}
.gc-btn-line:hover{border-color:var(--gc-ink)}

/* tracking */
.gc-track{background:#fff;border:1px solid var(--gc-line);border-radius:2px;padding:14px 16px}
.gc-tr-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--gc-line)}
.gc-label{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gc-muted)}
.gc-tr-head strong{font:500 20px/1 var(--gc-serif);letter-spacing:.04em}
.gc-tr-status{margin-left:auto;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gc-gold-deep);border:1px solid rgba(17,17,17,.4);padding:4px 8px;border-radius:2px}
.gc-tr-status.gc-x{color:#a3261b;border-color:rgba(163,38,27,.35)}
.gc-tl{list-style:none;margin:14px 0 4px;padding:0}
.gc-tl li{position:relative;display:flex;align-items:center;gap:12px;padding:0 0 14px 0;font-size:13.5px}
.gc-tl li:last-child{padding-bottom:4px}
.gc-tl li::before{content:"";position:absolute;left:5px;top:13px;bottom:-1px;width:1px;background:var(--gc-line)}
.gc-tl li:last-child::before{display:none}
.gc-tl-dot{position:relative;z-index:1;flex:none;width:11px;height:11px;border-radius:50%;border:1px solid rgba(17,17,17,.3);background:#fff}
.gc-tl-done .gc-tl-dot{background:var(--gc-ink);border-color:var(--gc-ink)}
.gc-tl-done::before{background:var(--gc-ink)!important}
.gc-tl-cur .gc-tl-dot{background:var(--gc-gold);border-color:var(--gc-gold-deep);box-shadow:0 0 0 3px rgba(17,17,17,.2)}
.gc-tl-x .gc-tl-dot{background:#a3261b;border-color:#a3261b;box-shadow:none}
.gc-tl-next .gc-tl-l{color:var(--gc-muted)}
.gc-tl-cur .gc-tl-l{font-weight:600}
.gc-tl-d{margin-left:auto;font-size:12px;color:var(--gc-muted)}
.gc-tr-ship,.gc-tr-items,.gc-tr-total{margin:8px 0 0;font-size:13px;line-height:1.5;color:var(--gc-ink)}
.gc-tr-ship{padding:9px 11px;background:var(--gc-paper);border-left:2px solid var(--gc-gold)}
.gc-tr-items{color:var(--gc-muted)}
.gc-tr-total strong{font-weight:600}

/* chips */
.gc-chips{flex:none;display:flex;flex-wrap:wrap;gap:7px;padding:8px 16px 10px;background:var(--gc-paper);max-height:132px;overflow-y:auto}
.gc-chips.gc-empty{padding:0}
.gc-chip{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:7px 13px;background:transparent;border:1px solid rgba(17,17,17,.22);border-radius:2px;font:400 13px/1.2 var(--gc-sans);color:var(--gc-ink);cursor:pointer;text-align:left;transition:border-color .2s,background .2s,color .2s;max-width:100%}
.gc-chip:hover{border-color:var(--gc-ink);background:#fff}
.gc-chip svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex:none}
.gc-chip-wa{border-color:rgba(17,17,17,.5);color:var(--gc-gold-deep)}
.gc-chip-wa:hover{border-color:var(--gc-gold-deep);color:var(--gc-ink)}

/* input */
.gc-form{flex:none;display:flex;align-items:center;gap:8px;padding:10px 12px 10px 16px;border-top:1px solid var(--gc-line);background:#fff}
.gc-input{flex:1;min-width:0;height:44px;border:0;background:transparent;font:400 16px/1.3 var(--gc-sans);color:var(--gc-ink);outline:none;padding:0}
.gc-input::placeholder{color:#8a8a8a}
.gc-form:focus-within{box-shadow:inset 0 1px 0 var(--gc-gold)}
.gc-send{flex:none;width:44px;height:44px;border:0;border-radius:2px;background:var(--gc-ink);color:var(--gc-gold);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}
.gc-send:hover{background:#2e2e2e}
.gc-send svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.gc-foot{flex:none;display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;padding-bottom:max(9px,env(safe-area-inset-bottom));font-size:11px;letter-spacing:.06em;color:var(--gc-muted);text-decoration:none;background:#fff;border-top:1px solid var(--gc-line)}
.gc-foot:hover{color:var(--gc-ink)}
.gc-foot svg{width:14px;height:14px;fill:none;stroke:var(--gc-gold-deep);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}

@media (max-width:359.98px){.gc-card-img{width:70px;height:92px}.gc-btn{letter-spacing:.08em;padding:0 8px}}
@media print{.gc-launch,.gc-panel,.gc-nudge{display:none!important}}
@media (prefers-reduced-motion:reduce){
  .gc-launch,.gc-launch-ic,.gc-dot,.gc-nudge,.gc-panel,.gc-panel.gc-on,.gc-card-img img,.gc-msg{transition:none!important;animation:none!important}
  .gc-panel{transform:none}
  .gc-typing i{animation:none;opacity:.6}
}

/* v2: white + black skin, small launcher that never sits on page buttons */
.gc-launch{right:16px;bottom:16px;width:46px;height:46px;background:#ffffff;color:#111111;box-shadow:inset 0 0 0 1px #111111,0 6px 18px rgba(0,0,0,.16)}
.gc-launch svg{width:21px;height:21px}
.gc-dot{top:5px;right:6px;width:9px;height:9px;background:#111111;box-shadow:0 0 0 2px #ffffff}
body.has-sticky .gc-launch{bottom:80px}
@media (min-width:960px){.gc-launch{right:24px;bottom:28px}body.has-sticky .gc-launch{bottom:28px}}
.gc-nudge{right:72px;bottom:18px;background:#ffffff;color:#111111}
@media (min-width:960px){.gc-nudge{right:82px;bottom:30px}}
.gc-panel{background:#ffffff;color:#111111}
@media (min-width:600px){.gc-panel{inset:auto 16px 76px auto}}
@media (min-width:960px){.gc-panel{inset:auto 24px 88px auto}}
.gc-head{background:#ffffff;color:#111111;border-bottom:1px solid rgba(17,17,17,.12)}
.gc-title h2{color:#111111}
.gc-title p{color:#6e6e6e}
.gc-hbtn{color:#111111}
.gc-hbtn:hover{background:rgba(17,17,17,.05)}
.gc-mark{border-color:#111111;color:#111111}
.gc-log,.gc-chips{background:#fafafa}
.gc-bot .gc-bubble{background:#ffffff;color:#111111}
.gc-user .gc-bubble{background:#111111;color:#ffffff}
.gc-user .gc-bubble a{color:#ffffff}
.gc-send{background:#111111;color:#ffffff}
.gc-input{color:#111111;background:transparent}
.gc-chip{background:#ffffff;color:#111111;border-color:rgba(17,17,17,.25)}
.gc-chip-wa{color:#111111;border-color:#111111}
.gc-tl-cur .gc-tl-dot{background:#111111;border-color:#111111;box-shadow:0 0 0 3px rgba(17,17,17,.15)}
.gc-tr-status{color:#111111;border-color:rgba(17,17,17,.35)}
.gc-btn-dark.gc-added{background:#2e2e2e;border-color:#2e2e2e}
.gc-card,.gc-track,.gc-form,.gc-foot{background:#ffffff;color:#111111}
.gc-menu{background:#ffffff;color:#111111}

.gc-launch{right:12px;bottom:14px;width:44px;height:44px}
body.has-sticky .gc-launch{bottom:78px}
@media (min-width:960px){.gc-launch{right:24px;bottom:28px}body.has-sticky .gc-launch{bottom:28px}}
