/* Floating quick buttons — see quick.js */
.quick{position:fixed;right:24px;bottom:24px;z-index:60;display:flex;flex-direction:column;align-items:center;gap:12px}
.qb{position:relative;width:58px;height:58px;border-radius:50%;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 8px 24px rgba(13,24,40,.22),0 2px 6px rgba(13,24,40,.12);
  transition:transform .2s ease,box-shadow .2s ease,opacity .3s ease,visibility .3s ease;-webkit-tap-highlight-color:transparent}
.qb svg{width:26px;height:26px}
.qb:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(13,24,40,.28),0 3px 8px rgba(13,24,40,.14)}
.qb:active{transform:scale(.94)}
.qb:focus-visible{outline:3px solid #c8962e;outline-offset:3px}

.qb-kakao{background:#fee500;color:#191919}
.qb-kakao svg{fill:#191919;width:29px;height:29px}
.qb-phone{background:linear-gradient(145deg,#d9a94a,#b8862a);color:#fff}
.qb-phone svg{fill:#fff}
/* soft pulse so the call button draws the eye without being noisy */
.qb-phone::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 0 rgba(200,150,46,.55);animation:qb-pulse 2.6s ease-out infinite}
@keyframes qb-pulse{0%{box-shadow:0 0 0 0 rgba(200,150,46,.55)}70%,100%{box-shadow:0 0 0 16px rgba(200,150,46,0)}}

.qb-top{width:48px;height:48px;background:#fff;color:#14233a;border:1px solid #e3e6ea;opacity:0;visibility:hidden;transform:translateY(10px)}
.qb-top svg{width:22px;height:22px}
.qb-top.show{opacity:1;visibility:visible;transform:none}
.qb-top.show:hover{transform:translateY(-3px)}

/* label bubble on hover (pointer devices only) */
.qb-tip{position:absolute;right:calc(100% + 12px);top:50%;transform:translate(6px,-50%);white-space:nowrap;
  background:#14233a;color:#fff;font-size:13px;font-weight:600;padding:7px 12px;border-radius:8px;
  opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;font-family:inherit;
  box-shadow:0 0 0 1px rgba(255,255,255,.18),0 6px 16px rgba(0,0,0,.25)}
.qb-tip::after{content:"";position:absolute;left:100%;top:50%;margin-top:-5px;border:5px solid transparent;border-left-color:#14233a}
@media (hover:hover){.qb:hover .qb-tip{opacity:1;transform:translate(0,-50%)}}

@media (max-width:600px){
  .quick{right:14px;bottom:16px;gap:10px}
  .qb{width:52px;height:52px}
  .qb svg{width:23px;height:23px}
  .qb-kakao svg{width:26px;height:26px}
  .qb-top{width:44px;height:44px}
}
@media (prefers-reduced-motion:reduce){
  .qb,.qb-tip{transition:none}
  .qb-phone::after{animation:none}
}
@media print{.quick{display:none}}
