/* Toasts, breadcrumb, alerts. Colors come from brand-tokens.css. */

/* Toast notifications */
.toast-stack{position:fixed;top:var(--sp-4);right:var(--sp-4);z-index:1000;display:flex;flex-direction:column;gap:var(--sp-2);width:min(420px,calc(100vw - 24px));pointer-events:none}
.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--sp-3);min-width:min(320px,100%);padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-4);border:1px solid var(--border);border-left-width:4px;border-radius:var(--r-md);background:var(--surface-pop);color:var(--text);font-size:var(--fs-md);line-height:1.5;box-shadow:var(--shadow-pop);animation:toast-in var(--t-slow) var(--ease)}
.toast.is-leaving{opacity:0;transform:translateX(24px);transition:opacity var(--t-base) var(--ease),transform var(--t-base) var(--ease)}
.toast-icon{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;color:var(--bg);font-size:14px;font-weight:var(--fw-black)}
.toast-body{flex:1;min-width:0;overflow-wrap:anywhere}
.toast-body p{margin:0}
.toast-details{margin:6px 0 0;padding-left:18px;font-size:var(--fs-sm)}
.toast-details li+li{margin-top:2px}
.toast-close{flex:none;display:grid;place-items:center;width:32px;height:32px;margin:-4px -4px -4px 0;border:0;border-radius:var(--r-sm);background:none;color:var(--text-muted);font-size:22px;line-height:1;cursor:pointer;transition:background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}
.toast-close:hover,.toast-close:focus-visible{background:var(--surface-sunken);color:var(--text)}
.toast-success{border-left-color:var(--green)}
.toast-success .toast-icon{background:var(--green)}
.toast-error{border-left-color:var(--red)}
.toast-error .toast-icon{background:var(--red)}
.toast-warning{border-left-color:var(--yellow)}
.toast-warning .toast-icon{background:var(--yellow)}
@keyframes toast-in{from{opacity:0;transform:translateX(32px)}to{opacity:1;transform:none}}
@media(max-width:639px){.toast-stack{top:var(--sp-3);right:var(--sp-3);left:var(--sp-3);width:auto}.toast{animation-name:toast-in-top}.toast.is-leaving{transform:translateY(-16px)}@keyframes toast-in-top{from{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}}

/* Breadcrumb */
.breadcrumb{min-width:0;flex:1}
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none;color:var(--text-muted);font-size:var(--fs-sm)}
.breadcrumb li{display:flex;align-items:center;gap:6px;min-width:0}
.breadcrumb li+li::before{content:"/";color:var(--border-strong)}
.breadcrumb a{color:var(--text-muted);font-weight:var(--fw-medium);text-decoration:none;transition:color var(--t-fast) var(--ease)}
.breadcrumb a:hover,.breadcrumb a:focus-visible{color:var(--accent-text);text-decoration:underline}
.breadcrumb [aria-current=page]{overflow:hidden;color:var(--text);font-weight:var(--fw-bold);text-overflow:ellipsis;white-space:nowrap}
@media(max-width:639px){.breadcrumb ol{gap:4px;font-size:var(--fs-xs)}.breadcrumb li{gap:4px}.breadcrumb li:not(:first-child):not(:last-child){display:none}.breadcrumb li:last-child:not(:first-child)::before{content:"/ "}}

/* Sticky form actions (long forms) */
.form-actions.is-sticky,.settings-save.is-sticky{position:sticky;bottom:0;z-index:12;margin-left:-4px;margin-right:-4px;padding:var(--sp-3) 4px;background:linear-gradient(180deg,transparent,var(--bg) 30%)}
.card .form-actions.is-sticky{background:linear-gradient(180deg,transparent,var(--surface) 30%)}

/* Dashboard alerts */
.dashboard-alert,.auto-tax-banner{display:flex;align-items:flex-start;gap:var(--sp-3);margin:0 0 var(--sp-4);padding:var(--sp-3) var(--sp-4);border:1px solid var(--yellow-line);border-left:4px solid var(--yellow);border-radius:var(--r-md);background:var(--yellow-bg);color:var(--yellow-text);font-size:var(--fs-sm)}
.dashboard-alert strong{display:block}
.dashboard-alert p,.auto-tax-banner p{margin:2px 0 0}
.dashboard-alert a{color:inherit;font-weight:var(--fw-bold)}
.auto-tax-banner{align-items:center;justify-content:space-between;flex-wrap:wrap}

@media print{.toast-stack,.page-back,.breadcrumb{display:none!important}}
