:root{--up2-ink:#15243a;--up2-muted:#66768a;--up2-surface:#fff;--up2-canvas:#f4f7fb;--up2-border:#dbe4ee;--up2-orange:#f45a16;--up2-orange-dark:#cf4210;--up2-blue:#167eaf;--up2-green:#138a5b;--up2-red:#c93636;--up2-radius:12px;--up2-shadow:0 12px 32px rgb(20 38 61 / 10%)}
button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.1}button [data-lucide],.button [data-lucide],a [data-lucide]{width:16px;height:16px;stroke-width:2.4;flex:0 0 auto}.shrink-0{flex-shrink:0}.icon-button{width:38px;height:38px;padding:0}.toast-viewport{position:fixed;z-index:2000;right:18px;bottom:18px;width:min(390px,calc(100vw - 32px));display:grid;gap:10px;pointer-events:none}.toast{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:10px;padding:13px 14px;border:1px solid var(--up2-border);border-radius:12px;background:#fff;color:var(--up2-ink);box-shadow:0 18px 44px rgb(15 31 49 / 20%);animation:toast-in .18s ease-out;pointer-events:auto;font-size:13px;font-weight:700}.toast.success{border-left:4px solid var(--up2-green)}.toast.error{border-left:4px solid var(--up2-red)}.toast.info{border-left:4px solid var(--up2-blue)}.toast .toast-icon{color:var(--up2-blue);width:18px;flex:0 0 auto}.toast.success .toast-icon{color:var(--up2-green)}.toast.error .toast-icon{color:var(--up2-red)}.toast-close{border:0;background:transparent;color:var(--up2-muted);padding:0;min-width:20px;min-height:20px}.toast-close [data-lucide]{width:16px;height:16px}.up2-confirm{border:0;padding:0;width:min(440px,calc(100vw - 32px));border-radius:14px;box-shadow:0 28px 80px rgb(10 25 41 / 35%)}.up2-confirm::backdrop{background:rgb(15 27 42 / 55%);backdrop-filter:blur(2px)}.up2-confirm-inner{padding:24px}.up2-confirm h2{font-size:20px;margin:0 0 9px;color:var(--up2-ink)}.up2-confirm p{margin:0;color:var(--up2-muted);line-height:1.5;font-size:14px}.up2-confirm-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.up2-confirm-actions button{border:0;border-radius:9px;padding:10px 13px;font:inherit;font-weight:800;cursor:pointer}.up2-confirm-cancel{background:#edf1f5;color:#445266}.up2-confirm-accept{background:var(--up2-orange);color:#fff}.up2-confirm-accept.danger{background:var(--up2-red)}@keyframes toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.toast-viewport{right:12px;bottom:12px}.up2-confirm-actions{flex-direction:column-reverse}.up2-confirm-actions button{width:100%}}
