.ntf-stack{position:fixed;right:16px;bottom:16px;z-index:var(--z-overlay);display:flex;flex-direction:column;gap:8px;width:min(380px,calc(100vw - 32px));pointer-events:none}.ntf{--lv: var(--ink-2);pointer-events:auto;position:relative;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:start;gap:10px;padding:11px 10px 12px 14px;overflow:hidden;background:var(--surface-strong);border:1px solid var(--border-strong);border-radius:var(--r-2);box-shadow:0 18px 48px -16px #00000073,0 2px 8px -4px #00000040;color:var(--ink);font-family:var(--font-sans);animation:ntf-in .22s cubic-bezier(.2,.8,.2,1) both}.ntf:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--lv)}.ntf.out{animation:ntf-out .18s ease-in forwards}.ntf.link{cursor:pointer}.ntf.link:hover{border-color:color-mix(in oklch,var(--lv),var(--border-strong) 50%)}.ntf.lv-info{--lv: var(--cyber)}.ntf.lv-success{--lv: var(--pos)}.ntf.lv-warning{--lv: var(--warn)}.ntf.lv-error{--lv: var(--neg)}.ntf.lv-progress{--lv: var(--accent)}.ntf-ic{display:grid;place-items:center;width:18px;height:18px;margin-top:1px;color:var(--lv)}.ntf-ic svg{width:17px;height:17px}.ntf-spin{animation:ntf-spin .9s linear infinite}.ntf-tx{display:flex;flex-direction:column;gap:3px;min-width:0}.ntf-t{font-size:13px;font-weight:600;line-height:1.3;letter-spacing:-.005em;overflow-wrap:anywhere}.ntf-b{font-size:12.5px;line-height:1.4;color:var(--ink-2);overflow:hidden;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow-wrap:anywhere}.ntf-act{align-self:flex-start;margin-top:4px;padding:4px 10px;border:1px solid var(--border-strong);border-radius:var(--r-pill, 999px);background:var(--surface);color:var(--ink);font:inherit;font-size:12px;font-weight:600;cursor:pointer}.ntf-act:hover{border-color:var(--lv);color:var(--lv)}.ntf-x{display:grid;place-items:center;width:24px;height:24px;margin:-3px -2px 0 0;border:0;border-radius:6px;background:none;color:var(--ink-3);cursor:pointer}.ntf-x svg{width:14px;height:14px}.ntf-x:hover{background:var(--surface);color:var(--ink)}.ntf-bar{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--lv);opacity:.7;transform-origin:left;animation:ntf-run linear forwards}.ntf:hover .ntf-bar{animation-play-state:paused}.ntf-more{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;padding:4px 4px 4px 12px;color:var(--ink-3);font-family:var(--font-mono);font-size:11px}.ntf-more button{border:0;background:none;color:var(--ink-2);font:inherit;cursor:pointer;padding:3px 8px;border-radius:6px}.ntf-more button:hover{background:var(--surface);color:var(--ink)}@keyframes ntf-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}@keyframes ntf-out{to{opacity:0;transform:translateY(6px) scale(.98)}}@keyframes ntf-run{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes ntf-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ntf{animation:ntf-in-still .15s both}.ntf.out{animation:ntf-out-still .12s forwards}.ntf-spin{animation:none}@keyframes ntf-in-still{0%{opacity:0}to{opacity:1}}@keyframes ntf-out-still{to{opacity:0}}}
