/* Sycamoreic live chat — matches the site palette (assets/css/style.css variables, with fallbacks). */
.sc-btn{position:fixed;right:68px;bottom:20px;z-index:900;width:56px;height:56px;border-radius:50%;border:0;padding:0;background:var(--warning,#ff7500);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,30,70,.28);transition:transform .15s,background .15s,box-shadow .15s;-webkit-tap-highlight-color:transparent}
.sc-btn:hover{background:var(--warning-hover,#ff6600);transform:scale(1.05)}
.sc-btn:focus-visible,.sc-x:focus-visible,.sc-send:focus-visible{outline:3px solid #9cc2ee;outline-offset:2px}
.sc-btn.sc-on{background:var(--theme-color,#004c97)}
.sc-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;box-sizing:border-box;border-radius:10px;background:var(--danger,#c80000);color:#fff;font:700 12px/20px InterVariable,Helvetica,Arial,sans-serif;text-align:center;border:2px solid #fff;line-height:16px}
.sc-badge[hidden]{display:none}
.sc-panel{position:fixed;right:68px;bottom:88px;z-index:901;width:360px;max-width:calc(100vw - 84px);height:520px;max-height:calc(100vh - 110px);display:flex;flex-direction:column;background:#fff;border:1px solid var(--border,#dbe7f0);border-radius:12px;box-shadow:0 10px 40px rgba(0,30,70,.28);overflow:hidden;font-family:"InterVariable",Helvetica,Arial,Tahoma,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-size:14px;color:var(--font-main,#07090d);line-height:1.45}
.sc-panel[hidden]{display:none}
.sc-head{display:flex;align-items:center;gap:8px;padding:12px 12px 12px 16px;background:var(--theme-color,#004c97);color:#fff;flex:0 0 auto}
.sc-hl{flex:1;min-width:0;display:flex;flex-direction:column}
.sc-title{font-size:15px;font-weight:600}
.sc-sub{font-size:12px;opacity:.85}
.sc-x{width:32px;height:32px;border-radius:6px;border:0;background:transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.sc-x:hover{background:rgba(255,255,255,.18)}
.sc-list{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:14px 12px;background:var(--box-light,#f8fafc);display:flex;flex-direction:column;gap:10px;min-height:0}
.sc-list[hidden],.sc-form[hidden],.sc-off[hidden],.sc-who[hidden]{display:none}
.sc-m{max-width:86%;display:flex;flex-direction:column}
.sc-a{align-self:flex-start}
.sc-c{align-self:flex-end;align-items:flex-end}
.sc-who-n{font-size:11px;font-weight:600;color:var(--font-vice,#454d5b);margin:0 4px 2px}
.sc-t{padding:8px 12px;border-radius:14px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.sc-a .sc-t{background:#fff;border:1px solid var(--border,#dbe7f0);border-top-left-radius:4px}
.sc-c .sc-t{background:var(--theme-color,#004c97);color:#fff;border-top-right-radius:4px}
.sc-t a{color:inherit;text-decoration:underline}
.sc-a .sc-t a{color:var(--theme-color,#004c97)}
.sc-meta{font-size:11px;color:#8a93a0;margin:2px 4px 0}
.sc-sending .sc-t{opacity:.7}
.sc-failed .sc-t{background:#fff0f0;color:var(--danger,#c80000);border:1px solid #f0b4b4}
.sc-retry{color:var(--danger,#c80000);cursor:pointer;text-decoration:underline}
.sc-form{flex:0 0 auto;border-top:1px solid var(--border,#dbe7f0);background:#fff;padding:8px 10px 10px;display:flex;flex-direction:column;gap:6px}
.sc-who{display:flex;flex-direction:column;gap:6px}
.sc-in,.sc-ta{box-sizing:border-box;width:100%;border:1px solid var(--border,#dbe7f0);border-radius:8px;padding:8px 10px;font:inherit;font-size:14px;color:inherit;background:#fff;outline:none}
.sc-in:focus,.sc-ta:focus{border-color:var(--theme-color,#004c97);box-shadow:0 0 0 2px rgba(0,76,151,.15)}
.sc-hint{font-size:11.5px;color:var(--font-vice,#454d5b);line-height:1.35}
.sc-row{display:flex;gap:8px;align-items:flex-end}
.sc-ta{resize:none;height:38px;max-height:110px;flex:1;min-width:0;line-height:20px}
.sc-send{flex:0 0 auto;height:38px;padding:0 14px;border:0;border-radius:8px;background:var(--warning,#ff7500);color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.sc-send:hover{background:var(--warning-hover,#ff6600)}
.sc-hp{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.sc-ts:empty{display:none}
.sc-off{flex:1 1 auto;padding:18px 16px;display:flex;flex-direction:column;gap:10px;overflow:auto;background:var(--box-light,#f8fafc)}
.sc-off p{margin:0 0 4px}
.sc-lnk{display:block;padding:10px 12px;border:1px solid var(--theme-color,#004c97);border-radius:8px;color:var(--theme-color,#004c97);text-decoration:none;background:#fff;overflow-wrap:anywhere}
.sc-lnk:hover{background:var(--box-deep,#eaf1f9)}
.sc-lnk-p{background:var(--warning,#ff7500);border-color:var(--warning,#ff7500);color:#fff}
.sc-lnk-p:hover{background:var(--warning-hover,#ff6600)}
html.q-open .sc-btn,html.q-open .sc-panel{display:none}
@media (max-width:640px){
  .sc-btn{right:14px;bottom:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px));width:52px;height:52px}
  .sc-panel{right:0;left:0;top:0;bottom:0;width:auto;max-width:none;height:100vh;height:100dvh;max-height:none;border:0;border-radius:0;z-index:2000}
  .sc-in,.sc-ta{font-size:16px}
  .sc-form{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
  html.sc-open .sc-btn{display:none}                       /* full-screen panel: the header's X closes it */
  html.sc-open,html.sc-open body{overflow:hidden}
}
.sc-dots{display:flex;align-items:center;gap:4px;color:var(--font-vice,#454d5b);font-size:13px}
.sc-dots i{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.35;animation:sc-bl 1.2s infinite ease-in-out}
.sc-dots i:nth-child(2){animation-delay:.2s}.sc-dots i:nth-child(3){animation-delay:.4s}
.sc-dots span{margin-left:6px}
@keyframes sc-bl{0%,80%,100%{opacity:.25}40%{opacity:1}}
@media (prefers-reduced-motion:reduce){.sc-btn{transition:none}.sc-dots i{animation:none;opacity:.6}}
