:root{--toast-surface:#ffffff;--toast-text:#1e293b;--toast-muted:#94a3b8;--toast-border:#e2e8f0;--toast-brand:#4a8fad;--toast-brand-soft:#f0f7fa;--toast-danger:#dc2626;--toast-danger-soft:#fef2f2;--toast-info:#0284c7;--toast-info-soft:#f0f9ff;--toast-close-hover:#f1f5f9;--toast-progress:#6ba8c4}.dark{--toast-surface:#1a222d;--toast-text:#e2e8f0;--toast-muted:#64748b;--toast-border:#334155;--toast-brand:#8ec4da;--toast-brand-soft:rgba(107,168,196,0.12);--toast-danger:#f87171;--toast-danger-soft:rgba(248,113,113,0.12);--toast-info:#38bdf8;--toast-info-soft:rgba(56,189,248,0.12);--toast-close-hover:rgba(255,255,255,0.06);--toast-progress:#8ec4da}.app-toaster{z-index:10050!important}.app-toast{position:relative;display:flex;align-items:center;gap:.55rem;width:min(20rem,calc(100vw - 2rem));min-height:2.5rem;padding:.5rem .55rem .5rem .65rem;border-radius:.5rem;border:1px solid var(--toast-border);background:var(--toast-surface);color:var(--toast-text);overflow:hidden}.app-toast--enter{animation:app-toast-in .22s ease forwards}.app-toast--exit{animation:app-toast-out .18s ease forwards}@keyframes app-toast-in{0%{opacity:0;transform:translateX(.4rem)}to{opacity:1;transform:translateX(0)}}@keyframes app-toast-out{to{opacity:0;transform:translateX(.35rem)}}.app-toast__icon-wrap{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.5rem;height:1.5rem;border-radius:.35rem;background:var(--toast-brand-soft);color:var(--toast-brand)}.app-toast--error .app-toast__icon-wrap{background:var(--toast-danger-soft);color:var(--toast-danger)}.app-toast--default .app-toast__icon-wrap,.app-toast--loading .app-toast__icon-wrap{background:var(--toast-info-soft);color:var(--toast-info)}.app-toast__icon-wrap svg{width:.9rem;height:.9rem}.app-toast__icon-wrap--spin svg{animation:app-toast-spin .8s linear infinite}@keyframes app-toast-spin{to{transform:rotate(1turn)}}.app-toast__message{flex:1;min-width:0;margin:0;font-size:.75rem;font-weight:500;line-height:1.35;color:var(--toast-text);word-break:break-word}.app-toast__close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.35rem;height:1.35rem;border:none;border-radius:.3rem;background:transparent;color:var(--toast-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.app-toast__close:hover{background:var(--toast-close-hover);color:var(--toast-text)}.app-toast__close svg{width:.8rem;height:.8rem}.app-toast__progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:transparent}.app-toast__progress-bar{display:block;height:100%;width:100%;transform-origin:left center;background:var(--toast-progress);opacity:.75;animation:app-toast-progress var(--toast-duration,3.2s) linear forwards}.app-toast--error .app-toast__progress-bar{background:var(--toast-danger)}.app-toast--default .app-toast__progress-bar,.app-toast--loading .app-toast__progress-bar{background:var(--toast-info);animation:app-toast-progress-pulse 1.1s ease-in-out infinite}@keyframes app-toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes app-toast-progress-pulse{0%,to{opacity:.35;transform:scaleX(.4)}50%{opacity:.8;transform:scaleX(.75)}}@media (max-width:639px){.app-toaster{left:.625rem!important;right:.625rem!important;width:auto!important}.app-toast{width:100%}}@media (prefers-reduced-motion:reduce){.app-toast--enter,.app-toast--exit,.app-toast__icon-wrap--spin svg,.app-toast__progress-bar{animation:none}}.pwa-install{position:fixed;right:.75rem;bottom:.75rem;z-index:9998;display:flex;flex-direction:column;align-items:flex-end;pointer-events:none}.pwa-install>*{pointer-events:auto}.pwa-install__card{width:min(14.25rem,calc(100vw - 1.5rem));padding:.5rem .55rem .45rem;border-radius:.45rem;border:1px solid var(--dash-border,#e2e8f0);background:var(--dash-surface,#fff);animation:pwa-install-in .2s ease forwards}.dark .pwa-install__card{border-color:#334155;background:#1a222d}@keyframes pwa-install-in{0%{opacity:0;transform:translateY(.3rem)}to{opacity:1;transform:translateY(0)}}.pwa-install__main{display:flex;align-items:flex-start;gap:.4rem}.pwa-install__logo{flex-shrink:0;width:1.5rem;height:1.5rem;border-radius:.3rem;border:1px solid var(--dash-border,#e2e8f0);object-fit:cover;background:#fff}.dark .pwa-install__logo{border-color:#334155;background:#0f172a}.pwa-install__copy{flex:1;min-width:0}.pwa-install__title{margin:0;font-size:.6875rem;font-weight:700;line-height:1.25;color:var(--dash-text,#1e293b)}.dark .pwa-install__title{color:#f1f5f9}.pwa-install__subtitle{margin:.12rem 0 0;font-size:.625rem;font-weight:500;line-height:1.35;color:var(--dash-text-muted,#64748b)}.dark .pwa-install__subtitle{color:#94a3b8}.pwa-install__close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.25rem;height:1.25rem;border:none;border-radius:.25rem;background:transparent;color:var(--dash-text-muted,#94a3b8);cursor:pointer}.pwa-install__close:hover{background:rgba(15,23,42,.06)}.dark .pwa-install__close:hover{background:rgba(255,255,255,.06)}.pwa-install__actions{display:flex;gap:.3rem;margin-top:.45rem;padding-top:.4rem;border-top:1px solid var(--dash-border,#e2e8f0)}.dark .pwa-install__actions{border-top-color:#334155}.pwa-install__btn{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;min-height:1.55rem;padding:0 .5rem;border-radius:.3rem;font-size:.625rem;font-weight:600;cursor:pointer}.pwa-install__btn--primary{flex:1;border:1px solid #4a8fad;color:#fff;background:#4a8fad}.pwa-install__btn--ghost{border:1px solid var(--dash-border,#e2e8f0);color:var(--dash-text-muted,#64748b);background:transparent}.dark .pwa-install__btn--ghost{border-color:#334155;color:#94a3b8}.pwa-install__fab{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid var(--dash-border,#e2e8f0);border-radius:.4rem;color:#4a8fad;background:var(--dash-surface,#fff);cursor:pointer}.dark .pwa-install__fab{border-color:#334155;background:#1a222d;color:#8ec4da}@media (max-width:639px){.pwa-install{right:.5rem;bottom:.5rem}.pwa-install__card{width:min(14.25rem,calc(100vw - 1rem))}}