:root{--gchat-bg:#0b0f15;--gchat-panel:#121823;--gchat-panel2:#171f2b;--gchat-line:#273244;--gchat-text:#eef3fb;--gchat-muted:#8f9bad;--gchat-green:#38e7b5;--gchat-blue:#5f7cff;--gchat-danger:#ff5d76;--gchat-gold:#ffd166}
#garnetChatRoot *{box-sizing:border-box}
#garnetChatRoot{position:fixed;right:22px;bottom:22px;z-index:2147482000;font:14px/1.4 Inter,Segoe UI,Arial,sans-serif;color:var(--gchat-text)}
.gchat-dock{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.gchat-dock-row{display:flex;gap:11px}.gchat-stack{display:flex;flex-direction:column;gap:9px;align-items:flex-end}
.gchat-circle{position:relative;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:linear-gradient(145deg,#182130,#0f151e);display:grid;place-items:center;color:#fff;cursor:pointer;box-shadow:0 12px 32px rgba(0,0,0,.42),0 0 24px rgba(56,231,181,.08);transition:.18s}.gchat-circle:hover{transform:translateY(-2px) scale(1.03)}.gchat-circle.support{box-shadow:0 12px 32px rgba(0,0,0,.42),0 0 24px rgba(255,209,102,.12)}.gchat-circle .ico{font-size:20px}.gchat-tip{position:absolute;right:62px;white-space:nowrap;background:#111821;border:1px solid var(--gchat-line);padding:6px 9px;border-radius:9px;color:#cbd5e1;opacity:0;pointer-events:none;transform:translateX(5px);transition:.15s}.gchat-circle:hover .gchat-tip{opacity:1;transform:none}.gchat-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--gchat-danger);color:#fff;border:2px solid var(--gchat-bg);font-size:10px;font-weight:900;display:grid;place-items:center}
.gchat-mini{position:relative;width:36px;height:36px;border-radius:50%;padding:2px;cursor:pointer;background:conic-gradient(var(--g1,#38e7b5),var(--g2,#5f7cff),var(--g1,#38e7b5));box-shadow:0 0 20px color-mix(in srgb,var(--g1) 50%,transparent);animation:gchatPulse 2s ease-in-out infinite}.gchat-mini-symbol{width:100%;height:100%;border-radius:50%;border:2px solid #10151d;background:#18212d;display:grid;place-items:center;font-size:14px;font-weight:900;color:#fff;line-height:1}.gchat-mini-x{position:absolute;top:-5px;left:-5px;width:15px;height:15px;border-radius:50%;background:#222a36;color:#cbd5e1;border:1px solid #39475a;font-size:10px;display:grid;place-items:center;opacity:0}.gchat-mini:hover .gchat-mini-x{opacity:1}@keyframes gchatPulse{50%{filter:brightness(1.25);transform:scale(1.03)}}
.gchat-panel,.gchat-window{position:fixed;right:96px;bottom:22px;width:405px;height:620px;border-radius:22px;background:linear-gradient(180deg,rgba(19,25,36,.99),rgba(10,14,20,.99));border:1px solid rgba(255,255,255,.08);box-shadow:0 22px 70px rgba(0,0,0,.5);overflow:hidden;display:flex;flex-direction:column;z-index:2147481998;opacity:0;transform:translateY(12px) scale(.98);pointer-events:none;transition:.18s}.gchat-panel.open,.gchat-window.open{opacity:1;transform:none;pointer-events:auto}.gchat-window{width:360px;height:520px;z-index:2147481999}
.gchat-head{padding:14px 15px;border-bottom:1px solid var(--gchat-line)}.gchat-headrow{display:flex;align-items:center;justify-content:space-between;gap:8px}.gchat-title{font-weight:900;font-size:16px}.gchat-sub{color:var(--gchat-muted);font-size:11px;margin-top:2px}.gchat-x{width:32px;height:32px;border:0;border-radius:9px;background:transparent;color:#aab5c4;font-size:20px;cursor:pointer}.gchat-x:hover{background:rgba(255,255,255,.06);color:#fff}.gchat-admin-chip{font-size:9px;font-weight:900;color:var(--gchat-gold);border:1px solid rgba(255,209,102,.3);border-radius:999px;padding:3px 7px;margin-left:4px}
.gchat-tabs{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.05);display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px}.gchat-seg{border:1px solid var(--gchat-line);background:#0f151e;color:#97a4b5;padding:8px 6px;border-radius:10px;font-weight:800;cursor:pointer}.gchat-seg.active{color:#fff;border-color:rgba(56,231,181,.4);background:rgba(56,231,181,.08)}
.gchat-adminbar{display:flex;gap:6px;padding:9px 12px;border-bottom:1px solid rgba(255,255,255,.05);background:rgba(255,209,102,.035)}.gchat-search{margin:10px 12px 0;width:calc(100% - 24px);background:#0e141c;border:1px solid var(--gchat-line);color:#fff;padding:10px 11px;border-radius:11px;outline:none}.gchat-list,.gchat-messages{flex:1;min-height:0;overflow:auto;padding:11px 12px 12px;scrollbar-width:thin;scrollbar-color:#344155 transparent}
.gchat-user,.gchat-request{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid rgba(255,255,255,.06);border-radius:13px;background:#121a25;margin-bottom:8px}.gchat-ring{--g1:#38e7b5;--g2:#5f7cff;flex:0 0 44px;width:44px;height:44px;padding:2px;border-radius:50%;background:linear-gradient(135deg,var(--g1),var(--g2));box-shadow:0 0 var(--intensity,16px) color-mix(in srgb,var(--g1) 50%,transparent)}.gchat-ring.pulse{animation:gchatGlow 1.8s ease-in-out infinite}.gchat-ring.breathe{animation:gchatBreathe 2.4s ease-in-out infinite}.gchat-ring.spin{background:conic-gradient(var(--g1),var(--g2),var(--g1));animation:gchatSpin 2.8s linear infinite}.gchat-avatar-symbol{width:100%;height:100%;border-radius:50%;display:grid;place-items:center;border:2px solid #10151d;background:#18212d;color:#fff;font-weight:900;font-size:14px;line-height:1}.gchat-ring.spin .gchat-avatar-symbol{animation:gchatCounterSpin 2.8s linear infinite}@keyframes gchatGlow{50%{box-shadow:0 0 30px var(--g1);transform:scale(1.035)}}@keyframes gchatBreathe{50%{filter:brightness(1.35)}}@keyframes gchatSpin{to{transform:rotate(360deg)}}@keyframes gchatCounterSpin{to{transform:rotate(-360deg)}}
.gchat-meta{min-width:0;flex:1}.gchat-meta b{display:block}.gchat-meta small{color:var(--gchat-muted)}.gchat-online{width:8px;height:8px;border-radius:50%;background:#4ddd8d;box-shadow:0 0 9px rgba(77,221,141,.55)}.gchat-muted-dot{width:8px;height:8px;border-radius:50%;background:var(--gchat-danger);box-shadow:0 0 9px rgba(255,93,118,.45)}
.gchat-btn{border:1px solid var(--gchat-line);background:#182131;color:#dce5ef;padding:7px 9px;border-radius:9px;cursor:pointer;font-weight:800;font-size:11px}.gchat-btn.primary{background:rgba(56,231,181,.12);border-color:rgba(56,231,181,.35);color:#dffdf4}.gchat-btn.danger{background:rgba(255,93,118,.08);border-color:rgba(255,93,118,.25);color:#ff9aaa}.gchat-btn.gold{background:rgba(255,209,102,.08);border-color:rgba(255,209,102,.28);color:#ffe4a2}.gchat-btn:disabled{opacity:.45;cursor:not-allowed}
.gchat-msg{display:flex;gap:9px;margin-bottom:13px;align-items:flex-start}.gchat-msg.me{flex-direction:row-reverse}.gchat-msgbody{min-width:0;flex:1}.gchat-msghead{display:flex;gap:7px;align-items:center;margin-bottom:3px}.gchat-msg.me .gchat-msghead{flex-direction:row-reverse}.gchat-time{margin-left:auto;color:#68778c;font-size:9px}.gchat-msg.me .gchat-time{margin-left:0;margin-right:auto}.gchat-bubble{display:inline-block;background:#161e2a;border:1px solid rgba(255,255,255,.06);padding:8px 10px;border-radius:4px 12px 12px 12px;color:#dce5ef;max-width:90%;word-break:break-word}.gchat-msg.me .gchat-bubble{float:right;background:rgba(56,231,181,.09);border-color:rgba(56,231,181,.2);border-radius:12px 4px 12px 12px}.gchat-msg-actions{opacity:0;display:flex;gap:5px;margin-top:5px}.gchat-msg:hover .gchat-msg-actions{opacity:1}.gchat-role{font-size:9px;padding:2px 6px;border:1px solid rgba(255,209,102,.35);border-radius:999px;color:var(--gchat-gold);font-weight:900}
.gchat-composer{display:flex;flex:0 0 auto;gap:8px;padding:10px 12px 12px;border-top:1px solid var(--gchat-line);background:#0d131b}.gchat-composer input{flex:1;background:#141c27;border:1px solid var(--gchat-line);color:#fff;border-radius:11px;padding:10px 11px;outline:none}.gchat-send{width:42px;border:0;border-radius:11px;background:var(--gchat-green);color:#06120e;font-weight:900;cursor:pointer}.gchat-send:disabled,.gchat-composer input:disabled{opacity:.45;cursor:not-allowed}.gchat-empty{padding:24px 10px;text-align:center;color:var(--gchat-muted)}.gchat-notice{padding:8px 12px;background:rgba(255,209,102,.06);border-bottom:1px solid rgba(255,209,102,.12);color:#d7c58b;font-size:11px}.gchat-mutednotice{padding:9px 12px;background:rgba(255,93,118,.06);border-bottom:1px solid rgba(255,93,118,.12);color:#ff9aaa;font-size:11px;font-weight:700}
.gchat-modalbg{position:fixed;inset:0;background:rgba(0,0,0,.62);display:none;place-items:center;z-index:2147482100;padding:18px}.gchat-modalbg.open{display:grid}.gchat-modal{width:min(430px,100%);max-height:80vh;overflow:auto;background:#111821;border:1px solid rgba(255,255,255,.09);border-radius:18px;box-shadow:0 25px 80px rgba(0,0,0,.55);padding:16px}.gchat-modal h3{margin:0 0 5px}.gchat-modal p{color:var(--gchat-muted);margin:0 0 14px}.gchat-modal-actions{display:flex;gap:8px;justify-content:flex-end}.gchat-field{margin-bottom:12px}.gchat-field label{display:block;color:#9aa6b6;font-size:10px;font-weight:800;margin-bottom:6px;text-transform:uppercase;letter-spacing:.4px}.gchat-field input,.gchat-field select{width:100%;background:#111823;border:1px solid var(--gchat-line);color:#fff;padding:9px 10px;border-radius:10px}.gchat-colors{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gchat-profile-preview{display:flex;justify-content:center;margin:8px 0 16px}.gchat-profile-preview .gchat-ring{width:58px;height:58px;flex-basis:58px;padding:3px}.gchat-profile-preview .gchat-avatar-symbol{font-size:24px}
@media(max-width:600px){#garnetChatRoot{right:12px;bottom:12px}.gchat-panel,.gchat-window{right:8px;left:8px;width:auto;bottom:86px;height:70vh}.gchat-tip{display:none}}

/* Garnet Chat v10 - Admin identity, message glow and electric effects */
.gchat-admin-logo{width:100%;height:100%;object-fit:contain;border-radius:50%;padding:3px;filter:drop-shadow(0 0 5px var(--g1,#b783ff))}
.gchat-ring:has(.gchat-admin-logo){position:relative;overflow:visible}
.gchat-ring:has(.gchat-admin-logo)::before,.gchat-ring:has(.gchat-admin-logo)::after{content:"";position:absolute;inset:-4px;border-radius:50%;pointer-events:none;border:1px solid color-mix(in srgb,var(--g1) 65%,transparent);animation:gchatAdminSpark 2.2s linear infinite}
.gchat-ring:has(.gchat-admin-logo)::after{inset:-7px;border-style:dashed;border-color:color-mix(in srgb,var(--g2) 65%,transparent);animation-duration:3.1s;animation-direction:reverse}
@keyframes gchatAdminSpark{to{transform:rotate(360deg)}}
.gchat-admin-message .gchat-bubble{position:relative;border-color:color-mix(in srgb,var(--admin-g1,#b783ff) 60%,transparent);box-shadow:0 0 calc(var(--admin-intensity,24px) * .65) color-mix(in srgb,var(--admin-g1,#b783ff) 38%,transparent),inset 0 0 18px color-mix(in srgb,var(--admin-g2,#68d7ff) 8%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--admin-g1,#b783ff) 12%,#161e2a),color-mix(in srgb,var(--admin-g2,#68d7ff) 8%,#161e2a))}
.gchat-admin-message.admin-preset-clean .gchat-bubble{box-shadow:none;background:#161e2a;border-color:rgba(255,255,255,.12)}
.gchat-admin-message.admin-preset-glow .gchat-bubble{animation:gchatAdminGlow 2.4s ease-in-out infinite}
.gchat-admin-message.admin-preset-neon .gchat-bubble{border-width:1px;box-shadow:0 0 var(--admin-intensity,24px) color-mix(in srgb,var(--admin-g1) 55%,transparent),0 0 calc(var(--admin-intensity,24px) * 1.5) color-mix(in srgb,var(--admin-g2) 25%,transparent)}
.gchat-admin-message.admin-preset-electric .gchat-bubble{animation:gchatElectric 1.8s steps(1,end) infinite}
.gchat-admin-message.admin-preset-electric .gchat-bubble::after{content:"⚡";position:absolute;right:-8px;top:-9px;font-size:11px;color:var(--admin-g2,#68d7ff);filter:drop-shadow(0 0 5px var(--admin-g2,#68d7ff));animation:gchatBolt 1.15s steps(2,end) infinite}
.gchat-admin-message.admin-preset-royal .gchat-bubble{border-color:#d9b85f;box-shadow:0 0 var(--admin-intensity,24px) rgba(217,184,95,.35);background:linear-gradient(135deg,rgba(121,77,164,.22),rgba(217,184,95,.09))}
.gchat-admin-message.admin-preset-royal .gchat-role{color:#ffe08a;border-color:rgba(255,224,138,.45)}
@keyframes gchatAdminGlow{50%{box-shadow:0 0 var(--admin-intensity,24px) color-mix(in srgb,var(--admin-g1) 60%,transparent),0 0 calc(var(--admin-intensity,24px)*1.3) color-mix(in srgb,var(--admin-g2) 25%,transparent)}}
@keyframes gchatElectric{0%,92%,100%{filter:none}93%{filter:brightness(1.6)}95%{filter:brightness(.85)}97%{filter:brightness(1.3)}}
@keyframes gchatBolt{0%,70%,100%{opacity:.25;transform:translate(0,0) rotate(-8deg)}72%{opacity:1;transform:translate(2px,-2px) rotate(8deg)}75%{opacity:.45;transform:translate(-1px,1px)}}
@media (prefers-reduced-motion:reduce){.gchat-ring,.gchat-ring::before,.gchat-ring::after,.gchat-admin-message .gchat-bubble,.gchat-admin-message .gchat-bubble::after{animation:none!important}}

/* v11.2 floating safe-zone coordination */
#garnetChatRoot{right:22px!important;bottom:22px!important}
@media(max-width:600px){#garnetChatRoot{right:12px!important;bottom:12px!important}}

/* Garnet Chat v11.2.2 - prevent accidental horizontal scrolling */
.gchat-panel,.gchat-window,
.gchat-list,.gchat-messages,
.gchat-msg,.gchat-msgbody,
.gchat-head,.gchat-headrow,
.gchat-composer{
  min-width:0;
  max-width:100%;
}
.gchat-list,.gchat-messages{
  overflow-y:auto;
  overflow-x:hidden!important;
  overscroll-behavior-x:none;
}
.gchat-msg{width:100%;overflow:visible}
.gchat-msgbody{overflow:visible}
.gchat-bubble{
  max-width:90%;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.gchat-msghead{min-width:0;max-width:100%}
.gchat-msghead b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gchat-composer{width:100%;overflow:hidden}
.gchat-composer input{
  min-width:0;
  width:0;
  max-width:100%;
}
.gchat-send{flex:0 0 42px}

/* Garnet Chat v11.2.3 — panels always ABOVE the shared bottom dock safe-zone */
:root{--garnet-dock-bottom:22px;--garnet-dock-size:52px;--garnet-dock-gap:11px;--garnet-dock-safe-h:96px}
#garnetChatRoot{right:22px!important;bottom:var(--garnet-dock-bottom)!important}
.gchat-panel,.gchat-window{
  right:22px!important;
  bottom:calc(var(--garnet-dock-bottom) + var(--garnet-dock-size) + 18px)!important;
  max-height:calc(100vh - var(--garnet-dock-safe-h) - 42px)!important;
}
@media(max-width:900px){
  :root{--garnet-dock-bottom:12px;--garnet-dock-safe-h:88px}
  #garnetChatRoot{right:12px!important;bottom:var(--garnet-dock-bottom)!important}
  .gchat-panel,.gchat-window{
    right:8px!important;left:8px!important;width:auto!important;
    bottom:calc(var(--garnet-dock-bottom) + var(--garnet-dock-size) + 16px)!important;
    height:min(70vh,calc(100vh - var(--garnet-dock-safe-h) - 28px))!important;
    max-height:calc(100vh - var(--garnet-dock-safe-h) - 28px)!important;
  }
}
@media(max-width:420px){:root{--garnet-dock-size:48px;--garnet-dock-gap:7px}}


/* Garnet floating dock v11.4 — one compact right column; panels open to the left. */
:root{--garnet-dock-right:18px;--garnet-dock-bottom:18px;--garnet-dock-size:44px;--garnet-dock-gap:8px;--garnet-dock-safe-h:220px}
#garnetChatRoot{right:var(--garnet-dock-right)!important;bottom:var(--garnet-dock-bottom)!important}
.gchat-dock{gap:var(--garnet-dock-gap)!important;align-items:center!important}
.gchat-dock-row{display:flex!important;flex-direction:column!important;gap:var(--garnet-dock-gap)!important;align-items:center!important}
.gchat-circle{width:var(--garnet-dock-size)!important;height:var(--garnet-dock-size)!important}
.gchat-circle .ico{font-size:17px!important}
.gchat-stack{gap:var(--garnet-dock-gap)!important;align-items:center!important}
.gchat-panel,.gchat-window{right:calc(var(--garnet-dock-right) + var(--garnet-dock-size) + 12px)!important;bottom:var(--garnet-dock-bottom)!important;max-height:calc(100vh - 36px)!important}
@media(max-width:600px){:root{--garnet-dock-right:10px;--garnet-dock-bottom:10px;--garnet-dock-size:42px;--garnet-dock-gap:7px}.gchat-panel,.gchat-window{right:calc(var(--garnet-dock-right) + var(--garnet-dock-size) + 8px)!important;left:8px!important;width:auto!important;bottom:var(--garnet-dock-bottom)!important;height:min(70vh,calc(100vh - 20px))!important;max-height:calc(100vh - 20px)!important}}


/* v11.3 unified Garnet dock */
#garnetChatRoot{right:10px!important;bottom:12px!important}
.gchat-dock{gap:7px!important;align-items:center!important}
.gchat-dock-row{flex-direction:column!important;gap:7px!important;align-items:center!important}
.gchat-circle{width:42px!important;height:42px!important}
.gchat-circle .ico{font-size:17px!important}
.gchat-tip{right:50px!important}
.gchat-panel,.gchat-window{right:64px!important;bottom:12px!important}
@media(max-width:700px){#garnetChatRoot{right:8px!important;bottom:8px!important}.gchat-panel,.gchat-window{right:8px!important;left:8px!important;bottom:62px!important;width:auto!important}}
