* { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: Arial, sans-serif; background: transparent; min-height: 100vh; color: rgba(200, 220, 240, 0.95); pointer-events: none; } /* Notification Container */ .notification-container { position: fixed; top: 120px; right: 20px; z-index: 1000; width: 350px; pointer-events: auto; } /* Individual Notification */ .notification { background: rgba(15, 20, 30, 0.9); border: 1px solid rgba(100, 150, 200, 0.4); border-left: 3px solid rgba(100, 150, 200, 0.5); border-radius: 4px; box-shadow: 0 0 20px rgba(100, 150, 200, 0.15), 0 4px 16px rgba(0, 0, 0, 0.8); margin-bottom: 10px; padding: 1rem 1.25rem; width: 100%; transform: translateX(100%); transition: all 0.15s ease; position: relative; overflow: hidden; &.show { transform: translateX(0); } &.hide { transform: translateX(100%); opacity: 0; } /* Notification Types */ &.success { border-left-color: rgba(100, 200, 150, 0.6); .notification-title { color: rgba(150, 255, 200, 0.9); } .notification-progress-bar { background: rgba(100, 200, 150, 0.8); animation: progress 5s linear forwards; } } &.danger { border-left-color: rgba(220, 100, 100, 0.6); .notification-title { color: rgba(255, 150, 150, 0.9); } .notification-progress-bar { background: rgba(220, 100, 100, 0.8); animation: progress 5s linear forwards; } } &.warning { border-left-color: rgba(200, 150, 100, 0.6); .notification-title { color: rgba(255, 200, 150, 0.9); } .notification-progress-bar { background: rgba(200, 150, 100, 0.8); animation: progress 5s linear forwards; } } &.info { border-left-color: rgba(100, 150, 200, 0.6); .notification-title { color: rgba(150, 200, 255, 0.9); } .notification-progress-bar { background: rgba(100, 150, 200, 0.8); animation: progress 5s linear forwards; } } } /* Notification Content */ .notification-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.5rem; } .notification-title { font-weight: 600; font-size: 0.875rem; text-transform: uppercase; letter-spacing: 0.5px; flex: 1; color: rgba(200, 220, 255, 1); } .notification-message { color: rgba(140, 160, 180, 0.9); font-size: 0.8rem; line-height: 1.4; word-wrap: break-word; margin-bottom: 0.5rem; } /* Progress bar for auto-dismiss */ .notification-progress { position: absolute; bottom: 0; left: 0; height: 3px; background: rgba(15, 20, 30, 0.5); width: 100%; border-radius: 0 0 4px 4px; } .notification-progress-bar { height: 100%; width: 0%; transform-origin: left; border-radius: 0 0 4px 4px; transition: width linear; } /* Responsive Design */ @media (max-width: 768px) { .notification-container { left: 20px; right: 20px; width: auto; } .notification { transform: translateY(-100%); &.show { transform: translateY(0); } &.hide { transform: translateY(-100%); } } } @media (max-width: 500px) { .notification-container { width: calc(100vw - 40px); } }