.plg-bday-notif-container{position:fixed;top:calc(var(--header-height, 70px) + 12px);left:24px;z-index:var(--z-notifications,1045);background:color-mix(in srgb,var(--background-secondary) 88%,transparent);backdrop-filter:none;border:1.5px solid transparent;background-clip:padding-box;clip-path:polygon(.9rem 0,calc(100% - .9rem) 0,100% .9rem,100% calc(100% - .9rem),calc(100% - .9rem) 100%,.9rem 100%,0 calc(100% - .9rem),0 .9rem);padding:16px 18px;min-width:288px;max-width:368px;box-shadow:var(--shadow-xl),var(--shape-glow-gold);animation:plg-bday-notif-in .55s var(--transition-bounce)}.plg-bday-notif-container:before{content:"";position:absolute;inset:-1.5px;z-index:-1;clip-path:inherit;background:var(--gradient-gold-metallic);opacity:.85}@keyframes plg-bday-notif-in{0%{transform:translate3d(-48px,-6px,0) scale(.92) rotate(-2deg);opacity:0}to{transform:translateZ(0) scale(1) rotate(0deg);opacity:1}}.plg-bday-notif-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border-color)}.plg-bday-notif-title{font-family:var(--font-heading);font-size:1.05rem;font-weight:800;background:var(--gradient-gold-metallic);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.01em}.plg-bday-notif-count{font-size:.65rem;font-weight:800;background:var(--gradient-primary);color:var(--text-on-primary);padding:2px 9px;clip-path:polygon(4px 0,calc(100% - 4px) 0,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0 calc(100% - 4px),0 4px);box-shadow:var(--glow-primary)}.plg-bday-notif-toggle{margin-left:auto;font-size:.65rem;font-weight:700;color:var(--primary-color);background:none;border:none;cursor:pointer;font-family:var(--font-display);padding:4px 8px;border-radius:var(--border-radius-md);transition:var(--transition-fast)}.plg-bday-notif-toggle:hover{background:var(--background-hover)}.plg-bday-notif-list{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow-y:auto;scrollbar-width:thin}.plg-bday-notif-item{--i:0;display:flex;align-items:center;gap:12px;padding:8px 10px;background:var(--background-tertiary);clip-path:polygon(.6rem 0,calc(100% - .6rem) 0,100% .6rem,100% calc(100% - .6rem),calc(100% - .6rem) 100%,.6rem 100%,0 calc(100% - .6rem),0 .6rem);transition:var(--transition-fast);animation:plg-bday-item-in .4s var(--transition-bounce) both;animation-delay:calc(var(--i) * 70ms)}@keyframes plg-bday-item-in{0%{transform:translateX(-24px);opacity:0}to{transform:translateX(0);opacity:1}}.plg-bday-notif-item:hover{background:var(--background-hover);transform:translateX(4px);box-shadow:var(--shadow-md)}.plg-bday-notif-avatar-wrap{position:relative;flex-shrink:0;width:42px;height:42px;text-decoration:none}.plg-bday-notif-avatar,.plg-bday-notif-avatar-fallback{width:100%;height:100%;clip-path:var(--octagon-clip);-o-object-fit:cover;object-fit:cover;box-shadow:0 0 0 2px var(--gold-color),var(--shadow-gold)}.plg-bday-notif-avatar-fallback{display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800;background:var(--gradient-primary);color:var(--text-on-primary);font-family:var(--font-display)}.plg-bday-notif-cake{position:absolute;bottom:-5px;right:-5px;font-size:13px;animation:plg-bday-cake-bounce 1.6s ease-in-out infinite;filter:drop-shadow(0 1px 3px rgba(0,0,0,.35))}@keyframes plg-bday-cake-bounce{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-4px) rotate(-10deg)}}.plg-bday-notif-info{flex:1;min-width:0}.plg-bday-notif-name{font-family:var(--font-heading);font-size:.9rem;font-weight:700;color:var(--text-primary);text-decoration:none;display:block;transition:color .2s}.plg-bday-notif-name:hover{color:var(--primary-color)}.plg-bday-notif-handle{font-size:.65rem;color:var(--text-muted);font-family:var(--font-display)}.plg-bday-notif-actions{display:flex;align-items:center;gap:5px;flex-shrink:0}.plg-bday-notif-wish{padding:5px 12px;background:var(--gradient-primary);color:var(--text-on-primary);border:none;clip-path:polygon(.35rem 0,calc(100% - .35rem) 0,100% .35rem,100% calc(100% - .35rem),calc(100% - .35rem) 100%,.35rem 100%,0 calc(100% - .35rem),0 .35rem);font-size:.62rem;font-weight:800;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.4px;cursor:pointer;transition:var(--transition-fast);white-space:nowrap}.plg-bday-notif-wish:hover{opacity:.88;transform:scale(1.05);box-shadow:var(--glow-primary)}.plg-bday-notif-wish:active{transform:scale(.96)}.plg-bday-notif-ignore{padding:5px 8px;background:var(--background-secondary);color:var(--text-muted);border:1px solid var(--border-color);clip-path:polygon(.35rem 0,calc(100% - .35rem) 0,100% .35rem,100% calc(100% - .35rem),calc(100% - .35rem) 100%,.35rem 100%,0 calc(100% - .35rem),0 .35rem);font-size:.62rem;font-weight:700;cursor:pointer;transition:var(--transition-fast)}.plg-bday-notif-ignore:hover{background:var(--error-color);color:var(--text-on-primary);border-color:var(--error-color)}.plg-bday-card-container{position:fixed;top:calc(var(--header-height, 70px) + 12px);right:24px;z-index:var(--z-notifications,1045);display:flex;flex-direction:column;gap:18px;max-height:calc(100vh - var(--header-height, 70px) - 40px);max-height:calc(100dvh - var(--header-height, 70px) - 40px);overflow-y:auto;overflow-x:visible;padding:4px 6px;scrollbar-width:none}.plg-bday-card-container::-webkit-scrollbar{display:none}.plg-bday-card-floating{position:relative;width:348px;background:color-mix(in srgb,var(--background-secondary) 90%,transparent);backdrop-filter:none;clip-path:polygon(1.1rem 0,calc(100% - 1.1rem) 0,100% 1.1rem,100% calc(100% - 1.1rem),calc(100% - 1.1rem) 100%,1.1rem 100%,0 calc(100% - 1.1rem),0 1.1rem);padding:22px 24px 20px;box-shadow:var(--shadow-2xl),var(--shape-glow-gold);animation:plg-bday-card-float-in .65s var(--transition-bounce);overflow:visible;transform-style:preserve-3d}@keyframes plg-bday-card-float-in{0%{transform:translate3d(64px,0,0) scale(.88) rotateY(8deg);opacity:0}to{transform:translateZ(0) scale(1) rotateY(0deg);opacity:1}}.plg-bday-card-floating-glow{position:absolute;inset:-2px;clip-path:inherit;background:var(--gradient-gold-metallic);opacity:.35;animation:plg-bday-glow-spin 7s linear infinite;z-index:-1;filter:none}@keyframes plg-bday-glow-spin{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(1turn)}}.plg-bday-card-floating-close{position:absolute;top:10px;right:10px;width:26px;height:26px;background:var(--background-tertiary);border:none;clip-path:var(--octagon-clip);font-size:11px;color:var(--text-muted);cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;justify-content:center;z-index:2}.plg-bday-card-floating-close:hover{background:var(--error-color);color:var(--text-on-primary);transform:rotate(90deg)}.plg-bday-card-floating-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.plg-bday-card-floating-icon{font-size:30px;animation:plg-bday-icon-float 2.2s ease-in-out infinite;filter:drop-shadow(var(--glow-gold))}@keyframes plg-bday-icon-float{0%,to{transform:translateY(0) rotate(0deg) scale(1)}50%{transform:translateY(-7px) rotate(-6deg) scale(1.1)}}.plg-bday-card-floating-title{font-family:var(--font-heading);font-size:1.15rem;font-weight:800;background:var(--gradient-gold-metallic);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.01em}.plg-bday-card-floating-sender{display:flex;align-items:center;gap:12px;text-decoration:none;padding:10px 12px;background:var(--background-tertiary);clip-path:polygon(.6rem 0,calc(100% - .6rem) 0,100% .6rem,100% calc(100% - .6rem),calc(100% - .6rem) 100%,.6rem 100%,0 calc(100% - .6rem),0 .6rem);margin-bottom:12px;transition:var(--transition-fast)}.plg-bday-card-floating-sender:hover{background:var(--background-hover);transform:translateX(4px)}.plg-bday-card-floating-avatar-wrap{flex-shrink:0;width:50px;height:50px}.plg-bday-card-floating-avatar,.plg-bday-card-floating-avatar-fallback{width:100%;height:100%;clip-path:var(--octagon-clip);-o-object-fit:cover;object-fit:cover;box-shadow:0 0 0 2px var(--gold-color),var(--shadow-gold)}.plg-bday-card-floating-avatar-fallback{display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:800;background:var(--gradient-primary);color:var(--text-on-primary);font-family:var(--font-display)}.plg-bday-card-floating-sender-info{flex:1;min-width:0}.plg-bday-card-floating-sender-name{font-family:var(--font-heading);font-size:1rem;font-weight:700;color:var(--text-primary);display:block}.plg-bday-card-floating-sender-handle{font-size:.7rem;color:var(--text-muted);font-family:var(--font-display)}.plg-bday-card-floating-message{font-family:var(--font-heading);font-size:.95rem;font-style:italic;color:var(--text-secondary);padding:12px 15px;background:var(--background-tertiary);clip-path:polygon(.5rem 0,100% 0,100% 100%,.5rem 100%,0 calc(100% - .5rem),0 .5rem);margin-bottom:14px;border-left:3px solid var(--gold-color);line-height:1.5;animation:plg-bday-message-reveal .5s ease .15s both}@keyframes plg-bday-message-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.plg-bday-card-floating-actions{display:flex;gap:8px;margin-bottom:10px}.plg-bday-card-floating-wish{flex:1;padding:10px 16px;background:var(--gradient-primary);color:var(--text-on-primary);border:none;clip-path:polygon(.5rem 0,calc(100% - .5rem) 0,100% .5rem,100% calc(100% - .5rem),calc(100% - .5rem) 100%,.5rem 100%,0 calc(100% - .5rem),0 .5rem);font-family:var(--font-display);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.4px;cursor:pointer;transition:var(--transition-fast)}.plg-bday-card-floating-wish:hover{transform:scale(1.03);box-shadow:var(--glow-primary);opacity:.92}.plg-bday-card-floating-wish:active{transform:scale(.97)}.plg-bday-card-floating-dismiss{padding:10px 14px;background:var(--background-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);clip-path:polygon(.5rem 0,calc(100% - .5rem) 0,100% .5rem,100% calc(100% - .5rem),calc(100% - .5rem) 100%,.5rem 100%,0 calc(100% - .5rem),0 .5rem);font-family:var(--font-display);font-size:.8rem;font-weight:700;cursor:pointer;transition:var(--transition-fast)}.plg-bday-card-floating-dismiss:hover{background:var(--error-color);color:var(--text-on-primary);border-color:var(--error-color)}.plg-bday-card-floating-time{font-size:.65rem;color:var(--text-muted);font-family:var(--font-display)}.plg-bday-card-floating-balloons{position:absolute;top:-12px;right:-6px;pointer-events:none}.plg-bday-balloon{position:absolute;font-size:30px;animation:plg-bday-balloon-rise--plg-bday-floating 3.2s ease-in-out infinite;filter:drop-shadow(0 3px 6px rgba(0,0,0,.25))}.plg-bday-balloon--1{top:-22px;right:18px;animation-delay:0s}.plg-bday-balloon--2{top:-32px;right:58px;animation-delay:.85s;font-size:24px}.plg-bday-balloon--3{top:-16px;right:98px;animation-delay:1.7s;font-size:20px}@keyframes plg-bday-balloon-rise--plg-bday-floating{0%,to{transform:translateY(0) translateX(0) rotate(-5deg)}50%{transform:translateY(-16px) translateX(3px) rotate(6deg)}}.plg-bday-celebration-overlay{position:fixed;inset:0;pointer-events:none;z-index:var(--z-maximum,2000);overflow:hidden}.plg-bday-celebration-particle{position:absolute;animation:plg-bday-particle-rise 3.2s ease-out forwards;filter:drop-shadow(0 0 10px color-mix(in srgb,var(--gold-color) 60%,transparent))}@keyframes plg-bday-particle-rise{0%{transform:translateY(100vh) rotate(0deg) scale(0);opacity:0}18%{transform:translateY(72vh) rotate(50deg) scale(1);opacity:1}80%{transform:translateY(18vh) rotate(190deg) scale(1);opacity:1}to{transform:translateY(-10vh) rotate(1turn) scale(.5);opacity:0}}.plg-bday-wish-btn{padding:9px 18px;background:var(--gradient-gold-metallic);color:var(--bg-primary,#0f172a);border:none;clip-path:polygon(.5rem 0,calc(100% - .5rem) 0,100% .5rem,100% calc(100% - .5rem),calc(100% - .5rem) 100%,.5rem 100%,0 calc(100% - .5rem),0 .5rem);font-family:var(--font-display);font-size:.82rem;font-weight:800;cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-gold)}.plg-bday-wish-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:var(--glow-gold)}.plg-bday-wish-btn:disabled{opacity:.5;cursor:not-allowed}.plg-bday-wish-btn--wished{background:var(--gradient-community,var(--gradient-primary));color:var(--text-on-primary);animation:plg-bday-wish-pop .5s var(--transition-bounce)}@keyframes plg-bday-wish-pop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@media (max-width:768px){.plg-bday-notif-container{top:calc(var(--header-height-mobile, 56px) + 8px);left:12px;right:12px;min-width:unset;max-width:unset;width:calc(100% - 24px);padding:13px 16px}.plg-bday-card-container{top:auto;bottom:80px;right:12px;left:12px;max-height:calc(100vh - 180px);max-height:calc(100dvh - 180px)}.plg-bday-card-floating{width:100%;padding:18px}.plg-bday-card-floating-balloons{display:none}.plg-bday-celebration-particle{font-size:16px!important}}@media (prefers-reduced-motion:reduce){.plg-bday-balloon,.plg-bday-card-floating,.plg-bday-card-floating-glow,.plg-bday-card-floating-icon,.plg-bday-card-floating-message,.plg-bday-notif-cake,.plg-bday-notif-container,.plg-bday-notif-item,.plg-bday-wish-btn--wished{animation:none!important}.plg-bday-celebration-particle{animation:none!important;display:none}}