.ck-public .ck-footer-phone { min-height: 44px; padding-block: 4px; }
.ck-phone-picker { position: relative; }
.ck-public .ck-phone-picker > button { display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border: 0; border-radius: 50%; box-shadow: 0 3px 12px #0003; cursor: pointer; }
.ck-public .ck-phone-picker > button:focus-visible, .ck-public .ck-phone-panel a:focus-visible { outline: 3px solid #E8B323; outline-offset: 3px; }
.ck-public .ck-phone-picker > button > i { animation: none; }
.ck-public .ck-phone-picker > button::before { content: none; }
.ck-phone-panel { position: absolute; bottom: 64px; right: 64px; width: min(290px, calc(100vw - 100px)); padding: 12px; background: #fff; color: #0B2D50; border: 1px solid #E8B323; border-radius: 12px; box-shadow: 0 6px 24px #0B2D5033; animation: ck-phone-enter .16s ease-out; max-height: calc(100dvh - 110px); overflow-y: auto; }
.ck-phone-panel[hidden] { display: none; }
.ck-phone-panel p { margin: 0 0 8px; font-weight: 700; }
.ck-public .ck-floating .ck-phone-panel a { width: auto; height: auto; min-height: 44px; justify-content: flex-start; gap: 10px; border-radius: 6px; padding: 8px; box-shadow: none; color: #0B2D50; }
.ck-phone-panel a > span { min-width: 0; }
.ck-phone-panel a span span, .ck-phone-panel a strong { display: block; }
.ck-phone-panel a span span { font-variant-numeric: tabular-nums; }
.ck-public .ck-phone-panel a:hover { background: #E8B32322; }
.ck-public .ck-contact-channel { min-height: 44px; }
@keyframes ck-phone-enter { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .ck-phone-panel { animation: none; } }
