:root{--fbk-danger-text:var(--soomuch-danger);--fbk-muted-text:#5c5c63}[data-theme=dark]{--fbk-danger-text:var(--soomuch-pink);--fbk-muted-text:var(--text-secondary)}.fbk-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fbk-toasts{top:max(16px, env(safe-area-inset-top));z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:8px;width:min(420px,100vw - 32px);display:flex;position:fixed;left:50%;transform:translate(-50%)}.fbk-toasts__region{flex-direction:column;gap:8px;display:flex}.fbk-toast{pointer-events:auto;box-shadow:var(--shadow-lg);font-family:var(--soomuch-font-body);border-radius:16px;align-items:flex-start;gap:10px;padding:12px 8px 12px 16px;font-size:14px;font-weight:500;line-height:1.4;animation:.2s ease-out fbkToastIn;display:flex}.fbk-toast--success{background:var(--soomuch-success);color:var(--soomuch-text-inverse)}.fbk-toast--error{background:var(--soomuch-danger);color:var(--soomuch-text-inverse)}.fbk-toast--info{background:var(--soomuch-brand);color:var(--soomuch-cream)}[data-theme=dark] .fbk-toast--info{background:var(--soomuch-light-purple);color:var(--soomuch-dark-purple)}.fbk-toast__icon{flex-shrink:0;padding-top:1px;display:inline-flex}.fbk-toast__message{overflow-wrap:anywhere;flex:1;min-width:0;padding-top:1px}.fbk-toast__close{width:28px;height:28px;color:inherit;cursor:pointer;opacity:.85;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:-4px 0;display:inline-flex}.fbk-toast__close:hover{opacity:1;background:#ffffff29}.fbk-toast__close:focus-visible{outline-offset:1px;opacity:1;outline:2px solid}@keyframes fbkToastIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.fbk-toast{animation:none}}.fbk-dialog:focus{outline:none}.fbk-dialog__body{font-family:var(--soomuch-font-body);flex-direction:column;gap:12px;padding:28px 24px 20px;display:flex}.fbk-dialog--sheet .fbk-dialog__body{padding-bottom:max(20px, env(safe-area-inset-bottom))}.fbk-dialog__title{color:var(--text-primary);margin:0;font-size:17px;font-weight:700;line-height:1.3}.fbk-dialog__message{color:var(--fbk-muted-text);white-space:pre-line;margin:0;font-size:14px;line-height:1.5}.fbk-dialog__error{color:var(--fbk-danger-text);margin:0;font-size:14px;font-weight:500;line-height:1.45}.fbk-dialog__actions{gap:10px;margin-top:8px;display:flex}.fbk-dialog__actions .fbk-btn{flex:1}.fbk-btn{min-height:46px;font-family:var(--soomuch-font-body);cursor:pointer;border:1.5px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:15px;font-weight:600;line-height:1.2;transition:background-color .15s,border-color .15s,opacity .15s;display:inline-flex}.fbk-btn:disabled{cursor:default;opacity:.7}.fbk-btn:focus-visible{outline:2px solid var(--soomuch-brand-accent);outline-offset:2px}.fbk-btn--secondary{background:var(--surface-primary);color:var(--text-primary);border-color:var(--border-default)}.fbk-btn--secondary:hover:not(:disabled){border-color:var(--border-strong)}.fbk-btn--primary{background:var(--soomuch-brand);color:var(--soomuch-cream)}.fbk-btn--primary:hover:not(:disabled){background:var(--soomuch-brand-hover)}[data-theme=dark] .fbk-btn--primary{background:var(--soomuch-light-purple);color:var(--soomuch-dark-purple)}.fbk-btn--danger{background:var(--soomuch-danger);color:var(--soomuch-text-inverse)}.fbk-btn--danger:hover:not(:disabled){background:var(--soomuch-dark-sienna)}.fbk-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite fbkSpin}@keyframes fbkSpin{to{transform:rotate(360deg)}}.fbk-field{flex-direction:column;gap:6px;display:flex}.fbk-field__label{color:var(--text-primary);font-size:14px;font-weight:600}.fbk-field__hint{color:var(--fbk-muted-text);margin:0;font-size:13px}.fbk-field .input-error-message{color:var(--fbk-danger-text)}.fbk-field .input-error,.fbk-field .input-error:focus{border-color:var(--fbk-danger-text);box-shadow:0 0 0 1px var(--fbk-danger-text)}
