.customer-service-float{position:fixed;z-index:45;right:38px;bottom:58px;display:inline-flex;min-height:60px;align-items:center;gap:11px;padding:0 28px;border:1px solid rgba(183,146,79,.88);border-radius:999px;background:var(--ink);box-shadow:0 16px 35px rgba(18,33,30,.17),0 1px 0 rgba(255,255,255,.1) inset;color:#fff;font-size:16px;font-weight:760;line-height:1;transition:transform .2s var(--ease),background .2s var(--ease),border-color .2s var(--ease),box-shadow .2s var(--ease)}
.customer-service-float:hover{border-color:#e3ca8d;background:var(--ink-2);box-shadow:0 21px 40px rgba(18,33,30,.22),0 1px 0 rgba(255,255,255,.12) inset;transform:translateY(-3px)}
.customer-service-float:focus-visible,.customer-service-close:focus-visible,.customer-service-link:focus-visible{outline:3px solid rgba(183,146,79,.55);outline-offset:3px}
.customer-service-float svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.customer-service-mobile-label{display:none}
.customer-service-modal{width:min(420px,calc(100% - 40px));margin:auto;padding:0;border:0;border-radius:18px;background:var(--surface);box-shadow:0 28px 70px rgba(14,28,25,.28);color:var(--ink)}
.customer-service-modal[open]{animation:customer-service-modal-in .2s var(--ease) both}
.customer-service-modal::backdrop{background:rgba(18,31,29,.58)}
.customer-service-modal-inner{position:relative;padding:30px 30px 28px;text-align:center}
.customer-service-close{position:absolute;top:12px;right:12px;display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);font-size:23px;line-height:1;cursor:pointer;transition:border-color .16s,background .16s}
.customer-service-close:hover{border-color:var(--gold);background:var(--gold-soft)}
.customer-service-logo{width:31px;height:38px;margin:0 auto 14px;object-fit:contain}
.customer-service-modal h2{margin:0;color:var(--ink);font-size:25px;font-weight:760;letter-spacing:-.04em}
.customer-service-modal p{max-width:270px;margin:9px auto 20px;color:var(--muted);font-size:14px;line-height:1.65}
.customer-service-qr{width:min(238px,72vw);height:auto;margin:0 auto;padding:10px;border:1px solid var(--line);background:#fff}
.customer-service-hint{margin:16px 0 0;color:var(--meta);font-size:13px;line-height:1.55}
.customer-service-link{display:inline-flex;min-height:42px;align-items:center;justify-content:center;margin-top:16px;padding:0 16px;border:1px solid var(--line);color:var(--ink);font-size:13px;font-weight:700;transition:border-color .16s,background .16s}
.customer-service-link:hover{border-color:var(--gold);background:var(--gold-soft)}
@keyframes customer-service-modal-in{from{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}
@media(max-width:620px){.customer-service-float{right:18px;bottom:max(24px,env(safe-area-inset-bottom));min-height:52px;gap:8px;padding:0 18px;font-size:14px}.customer-service-float svg{width:18px;height:18px}.customer-service-desktop-label{display:none}.customer-service-mobile-label{display:inline}.customer-service-modal-inner{padding:27px 24px 25px}}
@media(prefers-reduced-motion:reduce){.customer-service-float,.customer-service-close,.customer-service-link{transition:none}.customer-service-modal[open]{animation:none}}
