.notification{align-items:center;background:var(--bg-primary);border:2px solid var(--border-default);border-left:4px solid var(--status-success);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);display:flex;font-family:var(--font-sans);gap:var(--space-4);max-width:500px;min-width:300px;opacity:0;padding:18px var(--space-6);position:fixed;right:20px;top:20px;touch-action:none;transform:translateX(100%);transition:all var(--duration-normal) var(--ease-default);user-select:none;width:20vw;z-index:var(--z-toast)}.notification.show{opacity:1;transform:translateX(0)}.notification.dragging{box-shadow:0 8px 32px rgba(0,0,0,.2);transition:none}.notification.dismissing{pointer-events:none;transition:all var(--duration-slow) var(--ease-default)}.notification.dismiss-ready{border-left-color:var(--status-error)}.notification.success{border-left-color:var(--status-success)}.notification.error{border-left-color:var(--status-error)}.notification.warning{border-left-color:var(--status-warning)}.notification-icon{align-items:center;border-radius:50%;color:var(--text-inverse);display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:24px;justify-content:center;position:relative;width:24px}.notification-svg-icon{color:inherit;display:block;height:100%;width:100%}.notification.success .notification-icon{background:var(--status-success);box-shadow:0 2px 8px color-mix(in srgb,var(--status-success) 30%,transparent)}.notification.error .notification-icon{background:var(--status-error);box-shadow:0 2px 8px color-mix(in srgb,var(--status-error) 30%,transparent)}.notification.warning .notification-icon{background:var(--status-warning);box-shadow:0 2px 8px color-mix(in srgb,var(--status-warning) 30%,transparent)}.notification-svg-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));transition:transform var(--duration-fast) var(--ease-default)}.notification:hover .notification-svg-icon{transform:scale(1.05)}.notification-content{flex:1}.notification-title{color:var(--text-body);font-size:var(--font-base);font-weight:var(--weight-bold);letter-spacing:-.2px;margin:0 0 var(--space-2) 0}.notification-message{color:var(--text-muted);font-size:var(--font-sm);line-height:1.4;margin:0}.notification-message strong{color:var(--text-body);display:inline-block;font-weight:var(--weight-semibold)}.notification-close{align-items:center;background:var(--bg-tertiary);border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.15);color:var(--text-muted);cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;left:-10px;opacity:0;padding:0;position:absolute;top:-10px;touch-action:manipulation;transform:scale(.8);transition:all var(--duration-fast) var(--ease-default);user-select:none;width:24px;z-index:var(--z-toast)}.notification:hover .notification-close{opacity:1;transform:scale(1)}.notification-close:hover{box-shadow:0 4px 12px rgba(0,0,0,.2);color:var(--text-body);filter:brightness(.85)}@media (max-width:768px){.notification{cursor:grab;max-width:none;right:10px;top:calc(var(--top-content-inset) + 10px)}.notification-close{font-size:12px;height:18px;left:-6px;top:-6px;width:18px}.notification-icon{height:20px;width:20px}.notification.dragging{cursor:grabbing}.notification:active{transform:scale(.98)}}.confirmation-overlay{align-items:center;backdrop-filter:blur(4px);background-color:rgba(0,0,0,.05);display:flex;height:100vh;justify-content:center;left:0;opacity:0;position:fixed;top:0;transition:opacity var(--duration-fast) var(--ease-default);width:100vw;z-index:var(--z-toast)}.choice-modal,.confirmation-modal,.info-modal{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:1.5rem;box-shadow:var(--shadow-xl);max-width:400px;padding:2rem 2rem 1.5rem;text-align:center;transform:scale(.95);transition:transform var(--duration-fast) var(--ease-default);width:90%;z-index:var(--z-toast)}.confirmation-overlay.show{opacity:1}.confirmation-overlay.show .confirmation-modal{transform:scale(1)}.choice-modal h4,.confirmation-modal h4,.info-modal h4{color:var(--text-body);font-size:var(--font-xl);font-weight:var(--weight-semibold);margin-bottom:var(--space-4);margin-top:0;text-align:left}.confirmation-modal h4 strong{color:var(--danger-color);font-size:1.05em;font-weight:var(--weight-bold)}.choice-modal p,.confirmation-modal p,.info-modal p{color:var(--text-muted);font-size:var(--font-base);line-height:1.5;margin-bottom:var(--space-6);text-align:left}.confirmation-message-left{color:var(--text-muted);display:block;line-height:1.5;margin:var(--space-2) 0;text-align:left}.confirmation-message-center{color:var(--text-muted);display:block;line-height:1.5;margin:var(--space-2) 0;text-align:center}.confirmation-message-strong{font-weight:var(--weight-semibold)}.confirmation-buttons{display:flex;gap:var(--space-2);justify-content:flex-end}.choice-modal-btn,.confirmation-buttons .confirmation-btn,.info-modal-btn{border-radius:var(--radius-full);cursor:pointer;font-size:var(--font-lg);font-weight:var(--weight-semibold);min-width:100px;padding:var(--btn-padding-md);width:fit-content}.confirmation-btn.neutral-button{background:var(--interactive-neutral);color:var(--text-inverse)}.confirmation-btn.neutral-button:hover{filter:brightness(.85)}.confirmation-btn-content{align-items:center;display:inline-flex;gap:.5rem}.info-modal-overlay{align-items:center;backdrop-filter:blur(4px);background-color:rgba(0,0,0,.2);display:flex;height:100vh;justify-content:center;left:0;opacity:0;position:fixed;top:0;transition:opacity var(--duration-fast) var(--ease-default);width:100vw;z-index:var(--z-toast)}.info-modal-overlay.show{opacity:1}.info-modal-overlay.show .info-modal{transform:scale(1)}.info-modal-buttons{display:flex;gap:var(--space-4);justify-content:center}.settings-card-button.info-modal-btn{width:180px}.toast-notification{background:var(--bg-primary);border:1px solid var(--border-default);border-radius:14px;box-shadow:0 8px 32px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.08);color:var(--text-body);font-family:var(--font-sans);font-size:var(--font-base);font-weight:var(--weight-medium);left:50%;max-width:calc(100vw - 40px);opacity:0;overflow:hidden;padding:16px 28px;pointer-events:none;position:fixed;text-align:center;text-overflow:ellipsis;top:20px;transform:translateX(-50%) translateY(-100%);transition:all var(--duration-normal) var(--ease-default);user-select:none;white-space:nowrap;z-index:var(--z-toast)}.toast-notification.show{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}.toast-notification.toast-bottom{bottom:20px;top:auto;transform:translateX(-50%) translateY(100%)}.toast-notification.toast-bottom.show{transform:translateX(-50%) translateY(0)}@media (max-width:768px){.toast-notification{border-radius:12px;font-size:var(--font-sm);max-width:calc(100vw - 32px);padding:14px 24px;top:calc(var(--top-content-inset, 0px) + 16px);z-index:var(--z-toast)}.toast-notification.toast-bottom{bottom:max(var(--floating-tab-bar-clearance),20px);top:auto}.confirmation-overlay{height:100%}.confirmation-modal{transform:translateY(-20%)}.info-modal-overlay{height:100%}.info-modal{transform:translateY(-20%)}.choice-modal-overlay{height:100%}.choice-modal{transform:translateY(-20%)}}.choice-modal-overlay{align-items:center;backdrop-filter:blur(4px);background-color:rgba(0,0,0,.6);display:flex;height:100vh;justify-content:center;left:0;opacity:0;position:fixed;top:0;transition:opacity var(--duration-fast) var(--ease-default);width:100vw;z-index:var(--z-toast)}.choice-modal-overlay.show{opacity:1}.choice-modal-overlay.show .choice-modal{transform:scale(1)}.choice-modal-buttons{display:flex;flex-direction:column;gap:var(--space-3)}.choice-modal-choice-btn{background-color:var(--bg-tertiary);border:1px solid var(--border-default);color:var(--text-body);transition:all var(--duration-fast) var(--ease-default)}.choice-modal-choice-btn:hover{border-color:var(--border-default);filter:brightness(.85)}.choice-modal-choice-btn:active{transform:scale(.98)}.choice-modal-cancel-btn{margin-top:var(--space-2)}.choice-modal-btn-content{align-items:center;display:inline-flex;gap:.5rem;justify-content:center}.choice-modal-btn-content i{font-size:1rem;opacity:.8}