.notification-viewport{z-index:1000;top:max(80px, env(safe-area-inset-top));pointer-events:none;outline:none;flex-direction:column;gap:12px;width:min(440px,100vw - 32px);margin:0;padding:4px;list-style:none;display:flex;position:fixed;left:50%;transform:translate(-50%)}.app-notification,.inline-notice{--notice-ink:var(--accent-text);--notice-soft:var(--accent-soft);color:var(--accent-text)}.notification-success{--notice-ink:var(--success);--notice-soft:var(--success-soft)}.notification-warning{--notice-ink:var(--warning);--notice-soft:var(--warning-soft)}.notification-error{--notice-ink:var(--danger);--notice-soft:var(--danger-soft)}.app-notification{border:1px solid var(--accent-border);background:color-mix(in srgb, var(--surface) 94.9%, transparent);-webkit-backdrop-filter:blur(18px);width:100%;box-shadow:0 12px 40px rgb(var(--shadow-rgb) / .125), 0 2px 8px rgb(var(--shadow-rgb) / .051);pointer-events:auto;overflow-wrap:anywhere;border-radius:16px;outline:none;flex-shrink:0;align-items:flex-start;gap:13px;padding:18px 44px 18px 18px;display:flex;position:relative}.notification-icon{background:var(--notice-soft);width:38px;height:38px;color:var(--notice-ink);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.notification-copy{flex:1;min-width:0}.app-notification .notification-copy{overscroll-behavior:contain;scrollbar-width:thin;max-height:min(230px,33.3333dvh - 90px);overflow-y:auto}.notification-title{color:var(--ink);font-size:var(--text-sm);margin:0 0 5px;font-weight:650;line-height:1.5;display:block}.notification-description{color:var(--ink-secondary);font-size:var(--text-sm);overflow-wrap:anywhere;margin:0;line-height:1.7}.notification-close{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;padding:0;display:grid;position:absolute;top:8px;right:7px}.notification-close:hover{background:var(--surface-soft);color:var(--ink-secondary)}.notification-close:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.app-notification:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.app-notification[data-state=open]{animation:.2s cubic-bezier(.2,.75,.25,1) notification-enter}.app-notification[data-state=closed]{animation:.16s ease-in both notification-leave}.app-notification[data-swipe=move]{transform:translateX(var(--radix-toast-swipe-move-x));animation:none}.app-notification[data-swipe=cancel]{transition:transform .18s ease-out;transform:translate(0)}.app-notification[data-swipe=end]{animation:.16s ease-out both notification-swipe}.inline-notice{border:1px solid var(--border);background:var(--surface);border-radius:12px;align-items:flex-start;gap:10px;width:100%;margin:12px auto;padding:12px 14px;display:flex}.inline-notice .notification-icon{width:28px;height:28px}.inline-notice .notification-description{font-size:var(--text-sm)}.inline-notice .button{margin-top:8px}@keyframes notification-enter{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes notification-leave{to{opacity:0;transform:translateY(-5px)scale(.98)}}@keyframes notification-swipe{0%{transform:translateX(var(--radix-toast-swipe-end-x))}to{opacity:0;transform:translate(110%)}}@media (width<=680px){.notification-viewport{top:calc(68px + env(safe-area-inset-top));width:calc(100vw - 20px);max-height:calc(100dvh - 96px)}.app-notification{border-radius:14px;gap:10px;padding:16px 42px 16px 14px}.notification-icon{width:34px;height:34px}}@media (prefers-reduced-motion:reduce){.app-notification{transition:none!important;animation:none!important}}
