.toast-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast-item{display:flex;align-items:center;gap:12px;min-width:300px;max-width:500px;padding:16px 20px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;pointer-events:auto;animation:toast-slide-in .3s ease-out;position:relative;border-left:4px solid}.toast-item.toast-exiting{animation:toast-slide-out .3s ease-in forwards}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toast-slide-out{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast-success{border-left-color:#10b981}.toast-error{border-left-color:#ef4444}.toast-warning{border-left-color:#f59e0b}.toast-info{border-left-color:#3b82f6}.toast-icon{font-size:20px;font-weight:700;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%}.toast-success .toast-icon{color:#10b981;background:#d1fae5}.toast-error .toast-icon{color:#ef4444;background:#fee2e2}.toast-warning .toast-icon{color:#f59e0b;background:#fef3c7}.toast-info .toast-icon{color:#3b82f6;background:#dbeafe}.toast-message{flex:1;font-size:14px;line-height:1.5;color:#1f2937;word-wrap:break-word}.toast-close{background:none;border:none;font-size:24px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .2s}.toast-close:hover{color:#1f2937}@media (max-width: 768px){.toast-container{top:10px;right:10px;left:10px}.toast-item{min-width:auto;max-width:100%}}.month-picker{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.month-picker-controls{display:flex;align-items:center;gap:.5rem}.month-picker-nav-btn{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:4px;background-color:#fff;color:#374151;font-size:1.25rem;font-weight:600;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.month-picker-nav-btn:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.month-picker-nav-btn:disabled{opacity:.5;cursor:not-allowed}.month-picker-selectors{display:flex;align-items:center;gap:.5rem}.month-picker-year,.month-picker-month{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:4px;background-color:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.month-picker-year:hover,.month-picker-month:hover{border-color:#3b82f6;background-color:#f9fafb}.month-picker-year:focus,.month-picker-month:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}@media (max-width: 768px){.mobile-slot-item{touch-action:pan-y;-webkit-overflow-scrolling:touch}.slot-item{padding:.75rem;font-size:.875rem}.slot-actions{flex-direction:column;gap:.5rem}.slot-actions button{width:100%;padding:.5rem;font-size:.875rem}}.trash-bin{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background-color:#f3f4f6;border:2px dashed #d1d5db;border-radius:12px;color:#6b7280;font-size:.875rem;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;cursor:default;z-index:100;box-shadow:0 4px 12px #00000026,0 0 #0000;animation:float 3s ease-in-out infinite;transform:translateY(0)}.trash-bin svg{flex-shrink:0;transition:transform .3s ease}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.trash-bin.drag-over{background-color:#fef2f2;border-color:#ef4444;border-style:solid;border-width:3px;color:#dc2626;transform:translateY(-8px) scale(1.15) rotate(5deg);box-shadow:0 8px 24px #ef444466,0 0 0 8px #ef44441a;animation:none}.trash-bin.drag-over svg{animation:shake .4s ease-in-out infinite;transform:scale(1.2)}@keyframes shake{0%,to{transform:translate(0) rotate(0) scale(1.2)}25%{transform:translate(-6px) rotate(-5deg) scale(1.2)}75%{transform:translate(6px) rotate(5deg) scale(1.2)}}.task-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.task-modal{background:#fff;border-radius:8px;padding:1.5rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.task-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.task-modal-header h3{margin:0}.task-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.task-modal-close:hover{color:#374151}.task-modal-body{margin-bottom:1.5rem}.task-modal-time,.task-modal-field{margin-bottom:1rem}.task-modal-field label{display:block;margin-bottom:.5rem;font-weight:500}.task-modal-field select{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:1rem}.task-modal-footer{display:flex;justify-content:flex-end;gap:1rem}.task-modal-cancel,.task-modal-confirm{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.task-modal-cancel{background-color:#e5e7eb;color:#374151}.task-modal-confirm{background-color:#3b82f6;color:#fff}.task-modal-cancel:hover{background-color:#d1d5db}.task-modal-confirm:hover{background-color:#2563eb}.user-guide-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:9998;pointer-events:all}.user-guide-highlight{border:3px solid #3b82f6;border-radius:8px;box-shadow:0 0 0 9999px #00000080;z-index:9999;pointer-events:none;transition:all .3s ease}.user-guide-tooltip{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;z-index:10000;min-width:320px;max-width:400px;max-height:calc(100vh - 80px);overflow:hidden;display:flex;flex-direction:column;pointer-events:all;animation:user-guide-fade-in .3s ease-out}@keyframes user-guide-fade-in{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.user-guide-tooltip-header{display:flex;justify-content:space-between;align-items:center;padding:20px 20px 16px;border-bottom:1px solid #e5e7eb}.user-guide-tooltip-header h3{margin:0;font-size:18px;font-weight:600;color:#1f2937}.user-guide-close{background:none;border:none;font-size:24px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.user-guide-close:hover{background:#f3f4f6;color:#1f2937}.user-guide-tooltip-content{padding:20px;flex:1;overflow-y:auto;min-height:0}.user-guide-tooltip-content p{margin:0;font-size:14px;line-height:1.6;color:#4b5563}.user-guide-tooltip-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 12px 12px;flex-shrink:0}.user-guide-progress{font-size:14px;color:#6b7280;font-weight:500}.user-guide-actions{display:flex;gap:8px}.user-guide-btn{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.user-guide-btn-secondary{background:#fff;color:#4b5563;border:1px solid #d1d5db}.user-guide-btn-secondary:hover{background:#f3f4f6;border-color:#9ca3af}.user-guide-btn-primary{background:#3b82f6;color:#fff}.user-guide-btn-primary:hover{background:#2563eb}@media (max-width: 768px){.user-guide-tooltip{min-width:calc(100vw - 40px);max-width:calc(100vw - 40px);left:50%!important;transform:translate(-50%)!important;max-height:calc(100vh - 80px)}.user-guide-tooltip-footer{flex-direction:column;gap:12px;align-items:stretch}.user-guide-actions{width:100%;justify-content:space-between}.user-guide-btn{flex:1}}.notification-settings{padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.notification-settings h3{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:#1f2937}.notification-permission-prompt,.notification-permission-denied{padding:1rem;border-radius:6px;margin-bottom:1rem}.notification-permission-prompt{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.notification-permission-denied{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.notification-warning{padding:1rem;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;color:#92400e}.notification-options{display:flex;flex-direction:column;gap:1rem}.setting-item{display:flex;flex-direction:column;gap:.5rem}.setting-item label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500}.setting-item input[type=checkbox]{width:18px;height:18px;cursor:pointer}.setting-sub-item{margin-left:2rem;display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.setting-sub-item label{display:flex;flex-direction:column;gap:.25rem;font-weight:400;font-size:.875rem}.setting-sub-item input[type=text],.setting-sub-item input[type=number],.setting-sub-item input[type=time]{padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem}.btn-primary,.btn-secondary{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;border:none;transition:all .2s}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb}.btn-secondary{background:#f3f4f6;color:#4b5563;border:1px solid #d1d5db}.btn-secondary:hover{background:#e5e7eb}
