/* Single BSF message/confirmation/input surface. No global button/form overrides. */
.bsf-dialog{--bd-bg:var(--bsf-bg-surface,#141e2d);--bd-text:var(--bsf-text-primary,#f1f5f9);--bd-muted:var(--bsf-text-secondary,#cbd5e1);--bd-border:var(--bsf-border-strong,#2c3e55);--bd-accent:var(--bsf-brand-accent,#1e70b8);box-sizing:border-box;width:min(480px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--bd-border);border-radius:18px;background:var(--bd-bg);color:var(--bd-text);box-shadow:0 24px 90px #0006;font:14px/1.6 var(--bsf-font-body,system-ui,sans-serif);margin:auto;overflow:auto;overscroll-behavior:contain;text-align:start;z-index:2147483646;color-scheme:dark}
.bsf-dialog::backdrop{background:rgba(3,10,22,.7);backdrop-filter:blur(3px)}
.bsf-dialog *{box-sizing:border-box}.bsf-dialog [hidden]{display:none!important}
.bsf-dialog-form{margin:0;padding:25px;display:flex;flex-direction:column;gap:15px}
.bsf-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.bsf-dialog-brand{display:block;color:color-mix(in srgb,var(--bd-accent) 50%,var(--bd-text));font-size:11px;font-weight:800;letter-spacing:.12em;margin:0 0 5px}
.bsf-dialog-title{font-size:20px;font-weight:750;line-height:1.3;margin:0;color:var(--bd-text)}
.bsf-dialog-close{border:0;border-radius:9px;flex:none;width:36px;min-height:36px;padding:0;background:transparent;color:var(--bd-muted);font:24px/1 system-ui;cursor:pointer}
.bsf-dialog-message{margin:0;color:var(--bd-muted);font-size:14px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;max-height:45dvh;overflow:auto}
.bsf-dialog-field{font:16px/1.5 var(--bsf-font-body,system-ui,sans-serif);width:100%;min-width:0;padding:11px 13px;border:1px solid var(--bd-border);border-radius:10px;color:var(--bd-text);background:var(--bsf-bg-page,#0b1420);margin:0;outline-offset:2px}
textarea.bsf-dialog-field{min-height:130px;max-height:40dvh;resize:vertical}
.bsf-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:4px}
.bsf-dialog-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;min-width:95px;padding:9px 18px;border:1px solid var(--bd-border);border-radius:10px;background:transparent;color:var(--bd-text);font:650 13px/1.5 var(--bsf-font-body,system-ui,sans-serif);cursor:pointer;white-space:normal;overflow-wrap:anywhere}
.bsf-dialog-ok{background:var(--bd-accent);border-color:var(--bd-accent);color:#fff}.bsf-dialog[data-danger=true] .bsf-dialog-ok{background:#b63832;border-color:#b63832;color:#fff}
.bsf-dialog-btn:hover,.bsf-dialog-close:hover{filter:brightness(1.12)}
.bsf-dialog :is(button,input,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--bd-accent) 55%,#fff);outline-offset:3px}
body.bsf-dialog-open{overflow:hidden}
.bsf-dialog-shade{position:fixed;inset:0;z-index:2147483645;background:rgba(3,10,22,.7)}
.bsf-dialog[data-fallback=true][open]{position:fixed;inset:0;display:block}
html[data-theme=light] .bsf-dialog{color-scheme:light}
@media(max-width:480px){.bsf-dialog{width:calc(100vw - 24px);border-radius:15px;max-height:calc(100dvh - 24px)}.bsf-dialog-form{padding:20px;gap:14px}.bsf-dialog-title{font-size:19px}.bsf-dialog-actions{gap:8px}.bsf-dialog-btn{flex:1}}
@media print{.bsf-dialog,.bsf-dialog-shade{display:none!important}}

/* Existing nonblocking toast fallback, shared with legacy callers. */
.bsfdlg-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);background:#1a1a1a;color:#fff;padding:10px 18px;border-radius:10px;font:13px/1.5 var(--bsf-font-body,system-ui,sans-serif);box-shadow:0 8px 28px #0006;z-index:100001;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:80vw;text-align:center;white-space:pre-wrap;overflow-wrap:anywhere}.bsfdlg-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
