/* Shared spacing for form-level errors and action groups in every page shell. */
:root{--gc-message-gap:16px;--gc-action-gap:12px;--gc-message-padding-block:12px;--gc-message-padding-inline:16px}
:is(p.error-text,p[role="alert"],p.calculator-error,p.loan-error,.gc-form-message){
 display:block;box-sizing:border-box;max-width:100%;margin-block:var(--gc-message-gap);
 padding:var(--gc-message-padding-block) var(--gc-message-padding-inline);
 border:1px solid #e4c7bf;border-radius:8px;background:#fff5f2;color:#913e2f;
 font-size:14px;line-height:1.6;overflow-wrap:anywhere;min-height:0;
}
:is(p.error-text,p[role="alert"],p.calculator-error,p.loan-error,.gc-form-message):is([hidden],:empty){display:none!important}
/* These forms already provide a 16px row gap; do not add it twice. */
.feedback-dialog form>:is(p.error-text,p[role="alert"],.gc-form-message),.form-stack>:is(p.error-text,p[role="alert"],p.calculator-error,p.loan-error,.gc-form-message){margin-block:0}
/* The submit gap must survive an empty, hidden error block. */
.auth-card>#auth-submit{margin-block-start:16px}
.auth-card>p[role="alert"]:not(:empty):not([hidden])+#auth-submit{margin-block-start:0}
.calculator-buttons{display:flex;align-items:stretch;flex-wrap:wrap;gap:12px}
.calculator-buttons>.button{box-sizing:border-box;flex:0 1 auto;min-width:0;min-height:48px;height:auto;padding:12px 18px;line-height:1.4;font-size:15px;white-space:normal;text-align:center}
.loan-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:12px}
.loan-actions>.button{min-height:48px}
[data-loan-tool] .loan-actions>.button{padding:12px 18px;line-height:1.4}
@media(max-width:460px){.calculator-buttons>.button,[data-loan-tool] .loan-actions>.button{flex:1 1 110px;padding-inline:12px}}
.mail-dialog #mail-editor-error{margin:20px 0 16px;padding:16px 20px;line-height:1.65}
.mail-editor-actions,.dialog-actions,.account-form-actions{align-items:stretch;gap:var(--gc-action-gap)}
.mail-editor-actions{justify-content:flex-start}
.mail-editor-actions>:is(.button,.text-button){min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;line-height:1.4}
@media(max-width:380px){.mail-editor-actions{display:grid;grid-template-columns:1fr}.mail-editor-actions>:is(.button,.text-button){width:100%;margin:0}}
