/* Persistent, brand-recognizable contact shortcuts; native dialog stays above them. */
.floating-channels{position:fixed;right:20px;bottom:28px;z-index:24;display:flex;flex-direction:column;align-items:center;gap:12px}
.floating-channels .channel-button{position:relative;display:flex;align-items:center;justify-content:center;width:52px;height:52px;min-height:52px;padding:0;border:1px solid #494541;border-radius:50%;box-shadow:0 4px 18px #0004;color:#f6f5f2;background:#1c1b1a;text-decoration:none;transition:background .18s,border-color .18s}
.floating-channels .channel-kakao{background:#fee500;color:#191600;border-color:#fee500}
.floating-channels .wp-icon{width:24px;height:24px;color:inherit;pointer-events:none}
.floating-channels .kakao-icon{width:30px;height:30px}
.floating-channels .channel-blog{color:#58d590}
.floating-channels .channel-button:hover,.floating-channels .channel-button:focus-visible{border-color:#ece6de}
.floating-channels .channel-kakao:hover,.floating-channels .channel-kakao:focus-visible{background:#ffed4a;border-color:#ffed4a}
.channel-tooltip{position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%);padding:9px 13px;border:1px solid #514a43;border-radius:5px;background:#1c1a18;color:#fff;font-size:14px;line-height:1.5;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s}
.channel-button:hover .channel-tooltip,.channel-button:focus-visible .channel-tooltip{opacity:1;visibility:visible}
.channel-pending{display:none}
.channel-button[aria-disabled=true] .channel-pending{display:block;position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);white-space:nowrap;border-radius:3px;background:#312e2a;color:#e5ddd3;font-size:12px;line-height:1.5;padding:1px 4px;pointer-events:none}
.social-link[aria-disabled=true]{cursor:default}
.social-links .social-link[aria-disabled=true]::after{content:'준비 중';font-size:12px;color:#b6aba1;margin-left:3px}
.viewer-open .floating-channels{visibility:hidden}
/* Reserve an external right rail on desktop; retain the full 860px content width. */
@media(min-width:1200px){
 .column{right:calc(var(--gutter) + 84px)}
 .stagepane{right:calc(var(--gutter) + 944px)}
 .floating-channels{right:calc(var(--gutter) + 16px)}
}
@media(min-width:1200px) and (max-width:1399px){.stagepane{padding-inline:24px}}

@media(max-width:760px){.floating-channels{right:12px;bottom:calc(92px + env(safe-area-inset-bottom));gap:12px}.floating-channels .channel-button{width:46px;height:46px;min-height:46px}.floating-channels .wp-icon{width:22px;height:22px}.floating-channels .kakao-icon{width:28px;height:28px}}
@media(max-height:480px) and (max-width:760px){.floating-channels{flex-direction:row;bottom:calc(86px + env(safe-area-inset-bottom))}.channel-tooltip{right:0;top:auto;bottom:calc(100% + 10px);transform:none}}
@media(prefers-reduced-motion:reduce){.floating-channels .channel-button,.channel-tooltip{transition:none}}
