.theme-toggle{display:flex;gap:var(--spacing-xs);padding:var(--spacing-xs);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.theme-toggle--loading{min-width:200px;min-height:44px}.theme-toggle-skeleton{width:100%;height:100%;background:linear-gradient(90deg,var(--color-surface) 25%,var(--color-border) 50%,var(--color-surface) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.theme-toggle-option{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);min-height:var(--touch-target-min);background-color:transparent;border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.theme-toggle-option:hover{background-color:rgba(79,70,229,.08);color:var(--color-text)}.theme-toggle-option:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.theme-toggle-option--active{box-shadow:var(--shadow-sm)}.theme-toggle-option--active,.theme-toggle-option--active:hover{background-color:var(--color-background);color:var(--color-primary)}.theme-icon{width:18px;height:18px;flex-shrink:0}.theme-toggle-icon{display:flex;align-items:center;justify-content:center}.theme-toggle-label{white-space:nowrap}.theme-toggle-button{display:flex;align-items:center;justify-content:center;width:var(--touch-target-min);height:var(--touch-target-min);padding:var(--spacing-sm);background-color:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.theme-toggle-button:hover{background-color:var(--color-surface);color:var(--color-text);border-color:var(--color-primary)}.theme-toggle-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.theme-toggle-button:active{transform:scale(.95)}.theme-toggle-button--loading{opacity:.5;cursor:wait}.theme-toggle-icon-wrapper{display:flex;align-items:center;justify-content:center;width:24px;height:24px}.theme-toggle-icon-wrapper .theme-icon{width:100%;height:100%}:root.dark .theme-toggle{background-color:var(--color-surface)}:root.dark .theme-toggle-option--active{background-color:var(--color-background)}:root.dark .theme-toggle-option:hover{background-color:rgba(79,70,229,.15)}:root.dark .theme-toggle-button:hover{background-color:var(--color-surface)}@media (max-width:640px){.theme-toggle{flex-direction:column;width:100%}.theme-toggle-option{width:100%;justify-content:flex-start;padding:var(--spacing-md)}}@media (min-width:641px){.theme-toggle-option{flex:1 1}}@media (prefers-reduced-motion:reduce){.theme-toggle-button,.theme-toggle-option{transition:none}.theme-toggle-button:active{transform:none}.theme-toggle-skeleton{animation:none;background:var(--color-border)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.notification-settings{display:flex;flex-direction:column;gap:var(--space-4,1rem)}.notification-settings--unsupported{padding:var(--space-4,1rem);background-color:var(--color-warning-bg,#fef3c7);border-radius:var(--radius-lg,.75rem);border:1px solid var(--color-warning-border,#fcd34d)}.notification-unsupported-message{display:flex;align-items:flex-start;gap:var(--space-3,.75rem)}.notification-unsupported-icon{flex-shrink:0;width:1.5rem;height:1.5rem;color:var(--color-warning,#d97706)}.notification-unsupported-icon svg{width:100%;height:100%}.notification-unsupported-title{font-weight:600;color:var(--color-warning,#d97706);margin:0 0 var(--space-1,.25rem)}.notification-unsupported-text{margin:0;font-size:.875rem;color:var(--color-text-muted,#64748b);line-height:1.5}.notification-setting-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4,1rem);background-color:var(--color-surface,#ffffff);border-radius:var(--radius-lg,.75rem);border:1px solid var(--color-border,#e2e8f0)}.notification-setting-item--primary{background:linear-gradient(135deg,var(--color-primary-light,#eff6ff) 0,var(--color-surface,#ffffff) 100%);border-color:var(--color-primary-border,#bfdbfe)}.notification-setting-item--time{padding:var(--space-3,.75rem) var(--space-4,1rem);background-color:var(--color-surface-alt,#f8fafc);border-style:dashed}.notification-setting-info{flex:1 1;min-width:0}.notification-setting-title{margin:0 0 var(--space-1,.25rem);font-size:1rem;font-weight:600;color:var(--color-text,#1e293b)}.notification-setting-description{margin:0;font-size:.875rem;color:var(--color-text-muted,#64748b);line-height:1.5}.notification-setting-label{display:block;font-size:.9375rem;font-weight:500;color:var(--color-text,#1e293b);margin-bottom:var(--space-1,.25rem)}.notification-setting-hint{display:block;font-size:.8125rem;color:var(--color-text-muted,#64748b)}.notification-toggle{position:relative;display:inline-flex;align-items:center;cursor:pointer}.notification-toggle input{position:absolute;opacity:0;width:0;height:0}.notification-toggle-slider{position:relative;display:inline-block;width:3rem;height:1.625rem;background-color:var(--color-toggle-bg,#cbd5e1);border-radius:9999px;transition:background-color .2s ease}.notification-toggle-slider:before{content:"";position:absolute;top:.1875rem;left:.1875rem;width:1.25rem;height:1.25rem;background-color:white;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 3px rgba(0,0,0,.1)}.notification-toggle input:checked+.notification-toggle-slider{background-color:var(--color-primary,#1d4ed8)}.notification-toggle input:checked+.notification-toggle-slider:before{transform:translateX(1.375rem)}.notification-toggle input:focus-visible+.notification-toggle-slider{outline:2px solid var(--color-primary,#1d4ed8);outline-offset:2px}.notification-toggle input:disabled+.notification-toggle-slider{opacity:.5;cursor:not-allowed}.notification-toggle--small .notification-toggle-slider{width:2.5rem;height:1.375rem}.notification-toggle--small .notification-toggle-slider:before{width:1rem;height:1rem}.notification-toggle--small input:checked+.notification-toggle-slider:before{transform:translateX(1.125rem)}.notification-status{padding:var(--space-2,.5rem) var(--space-3,.75rem);border-radius:var(--radius-md,.5rem);background-color:var(--color-surface-alt,#f8fafc)}.notification-status-text{display:flex;align-items:center;gap:var(--space-2,.5rem);font-size:.875rem;color:var(--color-text-muted,#64748b)}.notification-status--enabled{color:var(--color-success,#16a34a)}.notification-status--disabled,.notification-status--loading{color:var(--color-text-muted,#64748b)}.notification-status--loading{font-style:italic}.notification-status-dot{width:.5rem;height:.5rem;background-color:var(--color-success,#16a34a);border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.notification-warning{display:flex;align-items:flex-start;gap:var(--space-3,.75rem);padding:var(--space-3,.75rem) var(--space-4,1rem);background-color:var(--color-warning-bg,#fef3c7);border-radius:var(--radius-lg,.75rem);border:1px solid var(--color-warning-border,#fcd34d);font-size:.875rem;color:var(--color-warning-text,#92400e)}.notification-warning-icon{flex-shrink:0;width:1.25rem;height:1.25rem;color:var(--color-warning,#d97706)}.notification-warning-icon svg{width:100%;height:100%}.notification-warning p{margin:0;line-height:1.5}.notification-error{padding:var(--space-3,.75rem) var(--space-4,1rem);background-color:var(--color-error-bg,#fef2f2);border-radius:var(--radius-lg,.75rem);border:1px solid var(--color-error-border,#fecaca);font-size:.875rem;color:var(--color-error-text,#991b1b)}.notification-preferences{display:flex;flex-direction:column;gap:var(--space-3,.75rem);padding-top:var(--space-2,.5rem)}.notification-preferences-title{margin:0 0 var(--space-2,.5rem);font-size:.875rem;font-weight:600;color:var(--color-text-muted,#64748b);text-transform:uppercase;letter-spacing:.05em}.notification-time-input{padding:var(--space-2,.5rem) var(--space-3,.75rem);font-size:.9375rem;border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-md,.5rem);background-color:var(--color-surface,#ffffff);color:var(--color-text,#1e293b);cursor:pointer;transition:border-color .2s ease}.notification-time-input:focus,.notification-time-input:hover{border-color:var(--color-primary,#1d4ed8)}.notification-time-input:focus{outline:none;box-shadow:0 0 0 3px var(--color-primary-ring,rgba(29,78,216,.15))}.notification-test{display:flex;align-items:center;gap:var(--space-3,.75rem);padding-top:var(--space-3,.75rem);border-top:1px solid var(--color-border,#e2e8f0)}.notification-test-button{display:inline-flex;align-items:center;gap:var(--space-2,.5rem);padding:var(--space-2,.5rem) var(--space-4,1rem);font-size:.875rem;font-weight:500;color:var(--color-primary,#1d4ed8);background-color:transparent;border:1px solid var(--color-primary,#1d4ed8);border-radius:var(--radius-md,.5rem);cursor:pointer;transition:all .2s ease}.notification-test-button:hover:not(:disabled){background-color:var(--color-primary,#1d4ed8);color:white}.notification-test-button:disabled{opacity:.5;cursor:not-allowed}.notification-test-icon{width:1.125rem;height:1.125rem}.notification-test-icon svg{width:100%;height:100%}.notification-test-success{font-size:.875rem;color:var(--color-success,#16a34a);font-weight:500}[data-theme=dark] .notification-settings--unsupported,[data-theme=dark] .notification-warning{background-color:rgba(251,191,36,.1);border-color:rgba(251,191,36,.3)}[data-theme=dark] .notification-setting-item{background-color:var(--color-surface-dark,#1e293b);border-color:var(--color-border-dark,#334155)}[data-theme=dark] .notification-setting-item--primary{background:linear-gradient(135deg,rgba(29,78,216,.15) 0,var(--color-surface-dark,#1e293b) 100%);border-color:rgba(29,78,216,.3)}[data-theme=dark] .notification-setting-item--time,[data-theme=dark] .notification-status{background-color:rgba(0,0,0,.2)}[data-theme=dark] .notification-time-input{background-color:var(--color-surface-dark,#1e293b);border-color:var(--color-border-dark,#334155);color:var(--color-text-light,#f1f5f9)}[data-theme=dark] .notification-test{border-top-color:var(--color-border-dark,#334155)}[data-theme=dark] .notification-error{background-color:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3)}[data-theme=dark] .notification-toggle-slider{background-color:var(--color-toggle-bg-dark,#475569)}@media (max-width:480px){.notification-setting-item{flex-direction:column;align-items:flex-start;gap:var(--space-3,.75rem)}.notification-setting-item--time{flex-direction:row;align-items:center}.notification-test{flex-direction:column;align-items:flex-start}.notification-test-button{width:100%;justify-content:center}}