.oknolit-b24-actions { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-block:20px; }
.oknolit-b24-actions button,.oknolit-b24-float { min-height:48px; border:0; border-radius:4px; padding:12px 16px; background:#005a9f; color:#fff; font:inherit; font-weight:650; line-height:1.4; cursor:pointer; }
.oknolit-b24-actions button:last-child { background:#e2edf4; color:#005a9f; }
.oknolit-b24-float { position:fixed; right:24px; bottom:24px; z-index:990; border-radius:24px; box-shadow:0 2px 12px #082f4d33; }
.oknolit-b24-actions button:focus-visible,.oknolit-b24-float:focus-visible,.oknolit-b24-close:focus-visible { outline:3px solid #005a9f; outline-offset:4px; }
.oknolit-b24-dialog { position:fixed; inset:auto 24px 84px auto; margin:0; width:min(380px,calc(100% - 32px)); height:min(520px,calc(100dvh - 112px)); max-width:none; max-height:none; z-index:991; border:1px solid #c7d8e4; border-radius:12px; padding:0; overflow:hidden; box-shadow:0 8px 32px #082f4d33; background:#f8fafb; color:#082f4d; box-sizing:border-box; font-family:"Segoe UI",Arial,sans-serif; }
.oknolit-b24-dialog:not([open]) { display:none; }
.oknolit-b24-heading { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:56px; padding:4px 8px 4px 16px; box-sizing:border-box; }
.oknolit-b24-heading h2 { margin:0; font-size:1rem; line-height:1.3; }
.oknolit-b24-close { flex:0 0 48px; width:48px; height:48px; border:0; background:#e2edf4; color:#005a9f; font:2rem/1 Arial,sans-serif; cursor:pointer; }
.oknolit-b24-dialog[open] { display:flex; flex-direction:column; }
.oknolit-b24-dialog iframe { display:block; flex:1 1 0; min-height:0; width:100%; border:0; background:#fff; }
.oknolit-b24-dialog[data-kind="chat"][data-ready="true"] .oknolit-b24-heading { display:none; }
.oknolit-b24-dialog [data-b24-status] { position:absolute; top:80px; left:24px; right:24px; margin:0; pointer-events:none; }
.oknolit-b24-dialog [hidden] { display:none; }
.oknolit-b24-actions--contacts { grid-template-columns:minmax(0,1fr); max-width:20rem; }
.oknolit-b24-actions--contacts button { font-size:1rem; }
.oknolit-b24-dialog[data-load-state="error"] iframe { display:none; }
.oknolit-b24-dialog[data-load-state="error"] { height:auto; max-height:calc(100dvh - 112px); overflow:auto; }
.oknolit-b24-dialog[data-load-state="error"] [data-b24-status] { position:static; margin:20px 20px 0; pointer-events:auto; }
.oknolit-b24-recovery { display:grid; gap:12px; padding:20px; }
.oknolit-b24-recovery button,.oknolit-b24-recovery a { box-sizing:border-box; min-height:48px; padding:12px 16px; border:0; border-radius:4px; font:inherit; line-height:1.4; font-weight:650; }
.oknolit-b24-recovery button { background:#005a9f; color:white; cursor:pointer; }
.oknolit-b24-recovery a { background:#e2edf4; color:#005a9f; text-align:center; text-decoration:underline; text-underline-offset:3px; }
.oknolit-b24-recovery :is(button,a):focus-visible { outline:3px solid #005a9f; outline-offset:3px; }
@media(max-width:767px) { .oknolit-b24-float { right:16px; bottom:calc(88px + env(safe-area-inset-bottom)); } .oknolit-b24-actions { grid-template-columns:1fr; } .oknolit-b24-dialog { inset:auto 16px calc(148px + env(safe-area-inset-bottom)) auto; height:min(480px,58dvh); } }
@media(max-height:500px) { .oknolit-b24-dialog { bottom:72px; height:calc(100dvh - 88px); } .oknolit-b24-float { bottom:12px; } }
@media(forced-colors:active) { .oknolit-b24-actions button:focus-visible,.oknolit-b24-float:focus-visible,.oknolit-b24-close:focus-visible,.oknolit-b24-recovery :is(button,a):focus-visible { outline-color:Highlight; } }
