/* Goldway chat widget — colors come from CSS variables; menu/content live in chat-widget.js (GW_CHAT_CONFIG) */
.gwc{
  --gwc-navy:#0D3B7A; --gwc-navy-d:#082a58; --gwc-gold:#D4AF37; --gwc-gold-l:#F4C75C;
  --gwc-white:#fff; --gwc-bg:#F7F9FC; --gwc-text:#1F2937; --gwc-muted:#6b7686; --gwc-line:#e3e8f0;
  --gwc-ok:#0f8a4b; --gwc-err:#c0392b; --gwc-r:16px;
  font-family:'Prompt','Noto Sans Thai','Sarabun',sans-serif; color:var(--gwc-text); font-size:15px; line-height:1.5;
}
.gwc *{box-sizing:border-box}
:where(.gwc) button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
.gwc svg{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.gwc :focus-visible{outline:3px solid var(--gwc-gold-l);outline-offset:2px}

/* launcher */
.gwc-launch{position:fixed;left:22px;bottom:24px;z-index:70;display:flex;align-items:center;gap:10px;padding:13px 20px 13px 16px;border-radius:999px;
  background:linear-gradient(135deg,var(--gwc-gold-l),var(--gwc-gold));color:#10264a;font-weight:600;box-shadow:0 10px 28px rgba(13,59,122,.35);transition:transform .2s,box-shadow .2s,opacity .2s}
.gwc-launch:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(13,59,122,.42)}
.gwc-launch:active{transform:scale(.97)}
.gwc-launch svg{font-size:22px}
.gwc-launch .dot{position:absolute;top:-2px;right:-2px;width:14px;height:14px;border-radius:50%;background:#e74c3c;border:2px solid #fff}
.gwc.is-open .gwc-launch{opacity:0;pointer-events:none;transform:scale(.8)}

/* panel */
.gwc-panel{position:fixed;left:22px;bottom:24px;z-index:80;width:400px;max-width:calc(100vw - 24px);height:min(700px,calc(100vh - 48px));display:flex;flex-direction:column;
  background:var(--gwc-bg);border-radius:20px;overflow:hidden;box-shadow:0 24px 70px rgba(8,30,70,.35);
  transform-origin:bottom left;opacity:0;transform:translateY(16px) scale(.96);pointer-events:none;visibility:hidden;transition:opacity .25s,transform .25s,visibility .25s,height .25s}
.gwc.is-open .gwc-panel{opacity:1;transform:none;pointer-events:auto;visibility:visible}
.gwc.is-min .gwc-panel{height:86px}
.gwc.is-min .gwc-body,.gwc.is-min .gwc-input{display:none}

.gwc-head{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(160deg,var(--gwc-navy),var(--gwc-navy-d));color:#fff;border-bottom:3px solid var(--gwc-gold);flex:none}
.gwc-logo{width:54px;height:54px;border-radius:50%;background:#fff;object-fit:cover;box-shadow:0 0 0 2px var(--gwc-gold)}
.gwc-head .ti{flex:1;min-width:0}
.gwc-head b{display:block;font-weight:700;font-size:18px;letter-spacing:.04em;line-height:1.1}
.gwc-head small{display:block;font-size:12.5px;opacity:.9;margin-top:3px}
.gwc-head .ctl{display:flex;gap:2px;align-self:flex-start}
.gwc-ib{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:20px;color:#fff;transition:background .2s}
.gwc-ib:hover{background:rgba(255,255,255,.16)}
.gwc-ib:active{background:rgba(255,255,255,.26)}

.gwc-body{flex:1;min-height:0;display:flex;flex-direction:column}
.gwc-msgs{flex:1;min-height:0;overflow-y:auto;padding:16px 14px 8px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth;
  background:linear-gradient(180deg,#fff,var(--gwc-bg) 70%)}
.gwc-row{display:flex;gap:8px;align-items:flex-end;max-width:100%;animation:gwcIn .25s ease both}
.gwc-row.user{justify-content:flex-end}
.gwc-av{width:34px;height:34px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1.5px var(--gwc-gold);background:#fff;flex:none}
.gwc-col{display:flex;flex-direction:column;gap:6px;max-width:82%;min-width:0}
.gwc-row.user .gwc-col{align-items:flex-end}
.gwc-bub{padding:11px 14px;border-radius:16px 16px 16px 4px;background:#fff;border:1px solid var(--gwc-line);box-shadow:0 3px 10px rgba(13,59,122,.06);white-space:pre-line;overflow-wrap:anywhere}
.gwc-row.user .gwc-bub{background:linear-gradient(135deg,#2a7bf0,#1c63d1);color:#fff;border:0;border-radius:16px 16px 4px 16px}
.gwc-meta{font-size:11.5px;color:var(--gwc-muted);display:flex;gap:6px;align-items:center}
.gwc-meta svg{color:var(--gwc-gold);font-size:13px}
.gwc-chips{display:flex;flex-direction:column;gap:8px;margin:2px 0 0 42px}
.gwc-chip{display:flex;align-items:center;gap:10px;width:100%;max-width:300px;padding:11px 14px;border-radius:999px;background:#fff;border:1px solid var(--gwc-line);color:var(--gwc-navy);font-weight:500;box-shadow:0 2px 8px rgba(13,59,122,.06);transition:transform .15s,border-color .15s,box-shadow .15s}
.gwc-chip svg:first-child{font-size:20px;color:var(--gwc-navy)}
.gwc-chip span{flex:1;text-align:left}
.gwc-chip svg:last-child{font-size:16px;color:var(--gwc-navy)}
.gwc-chip:hover{border-color:var(--gwc-gold);transform:translateX(2px);box-shadow:0 4px 12px rgba(13,59,122,.12)}
.gwc-chip:active{transform:scale(.98)}
.gwc-chip[disabled]{opacity:.5;pointer-events:none}

/* cards (forms / results) */
.gwc-card{background:#fff;border:1px solid var(--gwc-line);border-radius:var(--gwc-r);padding:14px;box-shadow:0 4px 14px rgba(13,59,122,.08);width:100%}
.gwc-card h4{margin:0 0 8px;font-size:15px;color:var(--gwc-navy);font-weight:600}
.gwc-f{display:flex;flex-direction:column;gap:4px;margin-bottom:9px}
.gwc-f label{font-size:12.5px;color:var(--gwc-muted)}
.gwc-f input,.gwc-f select{width:100%;padding:10px 12px;border:1.5px solid var(--gwc-line);border-radius:12px;font:inherit;background:var(--gwc-bg);color:var(--gwc-text);transition:border-color .15s,box-shadow .15s}
.gwc-f input:focus,.gwc-f select:focus{outline:none;border-color:var(--gwc-gold);box-shadow:0 0 0 3px rgba(212,175,55,.2);background:#fff}
.gwc-f.bad input,.gwc-f.bad select{border-color:var(--gwc-err)}
.gwc-err{color:var(--gwc-err);font-size:12.5px;min-height:0}
.gwc-two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gwc-cons{display:flex;gap:8px;font-size:12px;color:var(--gwc-muted);margin:2px 0 10px}
.gwc-cons input{margin-top:3px;accent-color:var(--gwc-navy)}
.gwc-cons a{color:var(--gwc-navy);text-decoration:underline}
.gwc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 16px;border-radius:12px;font-weight:600;background:linear-gradient(135deg,var(--gwc-gold-l),var(--gwc-gold));color:#10264a;transition:transform .15s,box-shadow .15s,filter .15s;text-decoration:none}
.gwc-btn:hover{filter:brightness(1.04);box-shadow:0 6px 16px rgba(212,175,55,.4)}
.gwc-btn:active{transform:scale(.98)}
.gwc-btn.line{background:#06C755;color:#fff}
.gwc-btn.alt{background:#fff;border:1.5px solid var(--gwc-navy);color:var(--gwc-navy)}
.gwc-btn[disabled]{opacity:.65;pointer-events:none}
.gwc-spin{width:16px;height:16px;border:2.5px solid rgba(16,38,74,.25);border-top-color:#10264a;border-radius:50%;animation:gwcSpin .7s linear infinite;display:inline-block}
.gwc-state{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border-radius:12px;font-size:13.5px;margin-top:8px}
.gwc-state.ok{background:#e9f8ef;color:var(--gwc-ok)}
.gwc-state.err{background:#fdecea;color:var(--gwc-err)}
.gwc-state svg{margin-top:3px}
.gwc-files{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}
.gwc-files li{display:flex;gap:8px;align-items:center;padding:7px 10px;border-radius:10px;background:var(--gwc-bg)}
.gwc-files li.bad{background:#fdecea;color:var(--gwc-err)}
.gwc-files li span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* rich menu */
.gwc-menu{flex:none;background:linear-gradient(180deg,var(--gwc-navy),var(--gwc-navy-d));padding:10px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-height:260px;transition:max-height .25s,padding .25s;overflow:hidden}
.gwc-menu.hide{max-height:0;padding-top:0;padding-bottom:0}
.gwc-mi{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;padding:12px 6px;min-height:92px;border-radius:14px;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(212,175,55,.55);transition:transform .15s,background .15s,box-shadow .15s}
.gwc-mi svg{font-size:30px;color:var(--gwc-gold-l);margin-bottom:3px}
.gwc-mi b{font-weight:600;font-size:14px;line-height:1.2}
.gwc-mi small{font-size:11.5px;opacity:.85}
.gwc-mi:hover{background:rgba(255,255,255,.14);transform:translateY(-2px)}
.gwc-mi:active{transform:scale(.97)}
.gwc-mi.primary{background:linear-gradient(135deg,var(--gwc-gold-l),var(--gwc-gold));color:#10264a;border-color:transparent}
.gwc-mi.primary svg{color:#10264a}
.gwc-mi.primary:hover{filter:brightness(1.05)}

/* input */
.gwc-input{flex:none;background:#fff;padding:10px 12px 8px;border-top:1px solid var(--gwc-line)}
.gwc-bar{display:flex;align-items:center;gap:8px}
.gwc-bar .gwc-ibd{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:20px;color:var(--gwc-navy);background:var(--gwc-bg);border:1px solid var(--gwc-line);transition:background .15s}
.gwc-bar .gwc-ibd:hover{background:#eaf0fa}
.gwc-bar input[type=text]{flex:1;min-width:0;height:44px;padding:0 16px;border:1.5px solid var(--gwc-line);border-radius:999px;font:inherit;background:var(--gwc-bg);color:var(--gwc-text)}
.gwc-bar input[type=text]:focus{outline:none;border-color:var(--gwc-gold);background:#fff;box-shadow:0 0 0 3px rgba(212,175,55,.2)}
.gwc-send{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:20px;background:linear-gradient(135deg,var(--gwc-gold-l),var(--gwc-gold));color:#10264a;box-shadow:0 6px 14px rgba(212,175,55,.4);transition:transform .15s}
.gwc-send:hover{transform:scale(1.06)}
.gwc-send:active{transform:scale(.94)}
.gwc-pw{text-align:center;font-size:11.5px;color:var(--gwc-muted);margin-top:6px}
.gwc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

@keyframes gwcIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes gwcSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.gwc *{animation:none!important;transition:none!important}}

/* mobile: full-screen sheet, launcher sits above the site's sticky action bar */
@media (max-width:700px){
  .gwc-launch{left:12px;bottom:calc(84px + env(safe-area-inset-bottom));width:52px;height:52px;padding:0;justify-content:center;gap:0}
  .gwc-launch span{display:none}
  .gwc-launch svg{font-size:24px}
  .gwc-panel{left:0;bottom:0;width:100%;max-width:100%;height:100dvh;border-radius:0}
  .gwc.is-min .gwc-panel{height:86px;bottom:calc(66px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0}
  .gwc-mi{min-height:84px;padding:10px 4px}
  .gwc-mi b{font-size:13px}
  .gwc-input{padding-bottom:max(8px,env(safe-area-inset-bottom))}
}
.gwc-launch.is-late{opacity:0;pointer-events:none;transform:translateY(8px)}
