/* GreenChat AI — widget live chat (v25.7). Warna mengikuti --primary / --accent situs. */
.gc-root,.gc-panel{--gc-p:var(--primary,#1f6f4a);--gc-a:var(--accent,#c9a227);--gc-ink:var(--ink,#1d2a24);--gc-muted:var(--muted,#6b7a72);--gc-line:var(--line,#e3e8e5)}
.gc-root{--gc-bottom:calc(18px + var(--mobile-cta-height,0px) + var(--compare-bar-height,0px));position:fixed;z-index:58;bottom:calc(var(--gc-bottom) + 72px);right:18px;font-family:inherit}
.gc-root.gc-kiri{right:auto;left:18px;bottom:var(--gc-bottom)}
.gc-fab{display:flex;align-items:center;gap:10px;height:58px;padding:0 20px 0 7px;border:0;border-radius:999px;cursor:pointer;color:#fff;font:inherit;font-weight:800;font-size:1rem;letter-spacing:.01em;
  background:linear-gradient(135deg,var(--gc-p),color-mix(in srgb,var(--gc-p) 70%,#000));box-shadow:0 10px 28px color-mix(in srgb,var(--gc-p) 45%,transparent),0 2px 6px rgba(0,0,0,.18);transition:transform .2s,box-shadow .2s;position:relative}
.gc-fab:hover{transform:translateY(-2px);box-shadow:0 14px 32px color-mix(in srgb,var(--gc-p) 55%,transparent),0 2px 6px rgba(0,0,0,.2)}
.gc-fab:focus-visible{outline:3px solid var(--gc-a);outline-offset:3px}
.gc-fab-ic{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.16);display:grid;place-items:center;flex-shrink:0;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.28)}
.gc-ico .gc-body{fill:#fff}.gc-ico .gc-arm{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round}
.gc-ico .gc-face{fill:none;stroke:var(--gc-p);stroke-width:1.3;stroke-linecap:round}.gc-ico .gc-face-f{fill:var(--gc-p)}
.gc-ico .gc-q{stroke:var(--gc-a)}.gc-ico .gc-dot{fill:var(--gc-a);stroke:none}
.gc-ico .gc-q1{transform-origin:38px 14px;animation:gcWobble 2.6s ease-in-out infinite}.gc-ico .gc-q2{transform-origin:8px 17px;animation:gcWobble 2.6s ease-in-out .6s infinite}
.gc-badge{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:#dc2626;color:#fff;font-size:.72rem;display:grid;place-items:center;border:2px solid #fff}
.gc-nudge{position:absolute;bottom:68px;right:0;width:max-content;max-width:min(260px,calc(100vw - 40px));background:#fff;color:var(--gc-ink);border-radius:14px 14px 4px 14px;padding:10px 34px 10px 14px;font-size:.88rem;font-weight:600;line-height:1.4;
  box-shadow:0 10px 30px rgba(16,40,28,.18);cursor:pointer;animation:gcPop .35s ease-out both}
.gc-kiri .gc-nudge{right:auto;left:0;border-radius:14px 14px 14px 4px}
.gc-nudge button{position:absolute;top:6px;right:6px;width:22px;height:22px;border:0;background:transparent;color:var(--gc-muted);cursor:pointer;border-radius:50%;display:grid;place-items:center}
.gc-open .gc-fab,.gc-open .gc-nudge{visibility:hidden;opacity:0}
/* Panel */
.gc-panel{position:fixed;z-index:150;font-family:inherit;right:18px;bottom:18px;width:min(400px,calc(100vw - 36px));height:min(660px,calc(100vh - 36px));height:min(660px,calc(100dvh - 36px));background:#fff;border-radius:20px;
  box-shadow:0 24px 60px rgba(16,40,28,.28),0 4px 12px rgba(0,0,0,.08);display:flex;flex-direction:column;overflow:hidden;color:var(--gc-ink);animation:gcIn .28s cubic-bezier(.2,.9,.3,1.2) both}
.gc-panel.gc-p-kiri{right:auto;left:18px}
.gc-panel[hidden]{display:none}
.gc-head{display:flex;align-items:center;gap:12px;padding:14px 12px 14px 16px;color:#fff;background:linear-gradient(135deg,var(--gc-p),color-mix(in srgb,var(--gc-p) 68%,#000));position:relative;flex-shrink:0}
.gc-ava{width:44px;height:44px;border-radius:50%;flex-shrink:0;position:relative;background:rgba(255,255,255,.18);display:grid;place-items:center}
.gc-ava img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.gc-ava::after{content:'';position:absolute;right:0;bottom:1px;width:11px;height:11px;border-radius:50%;background:#22c55e;border:2px solid color-mix(in srgb,var(--gc-p) 80%,#000)}
.gc-title{flex:1;min-width:0}.gc-title b{display:block;font-size:1.02rem;line-height:1.2}.gc-title small{display:block;opacity:.85;font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gc-hbtn{width:38px;height:38px;border:0;border-radius:10px;background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center;flex-shrink:0}.gc-hbtn:hover,.gc-hbtn:focus-visible{background:rgba(255,255,255,.16);outline:none}
.gc-menu{position:absolute;top:58px;right:12px;background:#fff;color:var(--gc-ink);border-radius:12px;box-shadow:0 12px 34px rgba(0,0,0,.18);padding:6px;min-width:230px;z-index:3}
.gc-menu button,.gc-menu a{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;background:none;font:inherit;font-size:.9rem;color:inherit;text-decoration:none;border-radius:8px;cursor:pointer;text-align:left}
.gc-menu button:hover,.gc-menu a:hover{background:color-mix(in srgb,var(--gc-p) 8%,#fff)}
.gc-body{flex:1;overflow-y:auto;overscroll-behavior:contain;background:color-mix(in srgb,var(--gc-p) 4%,#f7f9f8);padding:16px 14px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
/* Pesan */
.gc-row{display:flex;gap:8px;align-items:flex-end;max-width:100%;animation:gcMsg .25s ease-out both}
.gc-row.gc-me{justify-content:flex-end}
.gc-row .gc-mava{width:28px;height:28px;border-radius:50%;flex-shrink:0;background:var(--gc-p);display:grid;place-items:center;overflow:hidden;color:#fff;font-size:.75rem;font-weight:800}
.gc-row .gc-mava img{width:100%;height:100%;object-fit:cover}
.gc-bub{max-width:82%;padding:10px 13px;border-radius:16px;font-size:.93rem;line-height:1.5;overflow-wrap:anywhere;box-shadow:0 1px 2px rgba(16,40,28,.06)}
.gc-ai .gc-bub,.gc-admin .gc-bub{background:#fff;border:1px solid var(--gc-line);border-bottom-left-radius:5px}
.gc-me .gc-bub{background:var(--gc-p);color:#fff;border-bottom-right-radius:5px}
.gc-bub p{margin:0 0 6px}.gc-bub p:last-child{margin:0}.gc-bub ul,.gc-bub ol{margin:4px 0 6px;padding-left:18px}.gc-bub li{margin:2px 0}.gc-bub a{color:inherit;text-decoration:underline;font-weight:700;word-break:break-all}
.gc-ai .gc-bub a,.gc-admin .gc-bub a{color:var(--gc-p)}
.gc-who{display:block;font-size:.7rem;font-weight:800;color:var(--gc-p);margin-bottom:2px}
.gc-time{display:flex;gap:6px;align-items:center;font-size:.68rem;color:var(--gc-muted);margin-top:3px}
.gc-me .gc-time{justify-content:flex-end}
.gc-rate{display:inline-flex;gap:2px;margin-left:4px}.gc-rate button{border:0;background:none;padding:2px;cursor:pointer;color:var(--gc-muted);border-radius:6px;display:grid;place-items:center}.gc-rate button:hover{color:var(--gc-p);background:color-mix(in srgb,var(--gc-p) 8%,#fff)}.gc-rate button.on{color:var(--gc-p)}
.gc-sys{align-self:center;max-width:92%;text-align:center;font-size:.78rem;color:var(--gc-muted);background:#fff;border:1px dashed var(--gc-line);border-radius:10px;padding:7px 12px;line-height:1.45}
.gc-sys a{color:var(--gc-p);font-weight:700}
.gc-typing .gc-bub{display:flex;gap:4px;align-items:center;padding:13px 14px}.gc-typing i{width:7px;height:7px;border-radius:50%;background:var(--gc-muted);opacity:.5;animation:gcDot 1.2s infinite}.gc-typing i:nth-child(2){animation-delay:.15s}.gc-typing i:nth-child(3){animation-delay:.3s}
.gc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.gc-chips button{border:1.5px solid color-mix(in srgb,var(--gc-p) 35%,#fff);background:#fff;color:var(--gc-p);border-radius:999px;padding:7px 12px;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer;text-align:left;line-height:1.3}
.gc-chips button:hover{background:var(--gc-p);color:#fff;border-color:var(--gc-p)}
/* Kaki */
.gc-foot{display:flex;gap:8px;align-items:flex-end;padding:10px 12px;border-top:1px solid var(--gc-line);background:#fff;flex-shrink:0}
.gc-foot textarea{flex:1;resize:none;border:1.5px solid var(--gc-line);border-radius:14px;padding:10px 12px;font:inherit;font-size:16px;line-height:1.4;max-height:120px;min-height:44px;background:#fafbfa;color:var(--gc-ink);outline:none;margin:0}
.gc-foot textarea:focus{border-color:var(--gc-p);background:#fff}
.gc-send{width:44px;height:44px;border-radius:50%;border:0;background:var(--gc-p);color:#fff;cursor:pointer;display:grid;place-items:center;flex-shrink:0;transition:transform .15s,opacity .15s}.gc-send:disabled{opacity:.45;cursor:not-allowed}.gc-send:not(:disabled):hover{transform:scale(1.06)}
.gc-note{font-size:.68rem;color:var(--gc-muted);text-align:center;padding:0 12px 8px;background:#fff;flex-shrink:0}
.gc-count{font-size:.68rem;color:var(--gc-muted);align-self:center}
/* Formulir minat */
.gc-form{background:#fff;border-radius:16px;padding:16px;border:1px solid var(--gc-line);display:flex;flex-direction:column;gap:10px}
.gc-form h3{margin:0;font-size:1.05rem}.gc-form p{margin:0;color:var(--gc-muted);font-size:.86rem;line-height:1.45}
.gc-lbl small{font-weight:400;font-size:inherit;color:var(--gc-muted)}
.gc-form label{display:flex;flex-direction:column;gap:4px;font-size:.82rem;font-weight:700;color:var(--gc-ink);margin:0}
.gc-form input:not([type=checkbox]),.gc-form select{width:100%;border:1.5px solid var(--gc-line);border-radius:10px;padding:10px 12px;font:inherit;font-size:16px;font-weight:400;background:#fafbfa;color:var(--gc-ink);margin:0;height:auto}
.gc-form input:focus,.gc-form select:focus{border-color:var(--gc-p);outline:none;background:#fff}
.gc-form .gc-check{flex-direction:row;align-items:flex-start;gap:8px;font-weight:500;font-size:.8rem;line-height:1.45;color:var(--gc-muted)}.gc-form .gc-check input{margin-top:2px;width:18px;height:18px;flex-shrink:0;accent-color:var(--gc-p)}
.gc-form .gc-err{color:#b91c1c;font-size:.75rem;font-weight:600}.gc-form .gc-bad{border-color:#ef4444!important}
.gc-form .gc-alert{background:#fef2f2;color:#991b1b;border-radius:10px;padding:8px 12px;font-size:.82rem}
.gc-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border:0;border-radius:12px;padding:13px;font:inherit;font-weight:800;font-size:.95rem;background:var(--gc-p);color:#fff;cursor:pointer}.gc-btn:disabled{opacity:.6;cursor:wait}
.gc-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.gc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@keyframes gcWobble{0%,100%{transform:rotate(0)}20%{transform:rotate(-14deg)}40%{transform:rotate(10deg)}60%{transform:rotate(-6deg)}80%{transform:rotate(0)}}
@keyframes gcPop{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}
@keyframes gcIn{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
@keyframes gcMsg{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes gcDot{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}
@media(max-width:600px){
  .gc-root{right:12px;bottom:calc(var(--gc-bottom) + 70px)}.gc-root.gc-kiri{left:12px;bottom:calc(var(--gc-bottom) - 6px)}
  .gc-fab{height:52px;padding:0 16px 0 6px;font-size:.92rem;gap:8px}.gc-fab-ic{width:40px;height:40px}
  .gc-panel{inset:0;right:0;bottom:0;left:0;width:100%;height:100%;height:100dvh;border-radius:0;animation-name:gcMsg}
  .gc-head{padding-top:calc(12px + env(safe-area-inset-top,0px))}.gc-foot{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
  html.gc-lock,html.gc-lock body{overflow:hidden}
}
@media(prefers-reduced-motion:reduce){.gc-ico .gc-q1,.gc-ico .gc-q2,.gc-panel,.gc-row,.gc-nudge{animation:none}}
html.gc-is-open .wa-float,html.gc-is-open .compare-bar{opacity:0;pointer-events:none}
@media print{.gc-root,.gc-panel{display:none!important}}
