body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f8f9fa;color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.app-container{display:flex;flex-direction:column;min-height:100vh}.app-header{align-items:center;background-color:#4caf50;box-shadow:0 2px 5px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:15px 20px}.app-header h1{font-size:24px;font-weight:500;margin:0}.toolbar{display:flex;gap:10px}.import-button,.toolbar button{background-color:#fff3;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:14px;padding:8px 12px;transition:background-color .2s}.import-button:hover,.toolbar button:hover{background-color:#ffffff4d}.tabs{background-color:#e8f5e9;box-shadow:0 2px 4px #0000000d;display:flex;padding:0 20px}.tabs button{background:none;border:none;color:#555;cursor:pointer;font-size:16px;padding:15px 20px;position:relative;transition:color .2s}.tabs button:hover{color:#2e7d32}.tabs button.active{color:#2e7d32;font-weight:500}.tabs button.active:after{background-color:#4caf50;bottom:0;content:"";height:3px;left:0;position:absolute;right:0}.tab-with-edit{align-items:center;display:flex;gap:4px}.edit-tab-name{background:none;border:none;cursor:pointer;font-size:12px;opacity:.6;padding:4px;transition:opacity .2s}.edit-tab-name:hover{opacity:1}.content{flex:1 1;padding:20px}@media (max-width:768px){.app-header{align-items:stretch;flex-direction:column;gap:15px;padding:15px}.toolbar{justify-content:center}.tabs{padding:0}.tabs button{flex:1 1;font-size:14px;padding:12px 5px}.content{padding:10px}}.calendar-container{margin:0 auto;max-width:1200px;padding:20px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.month-navigation{align-items:center;display:flex;gap:15px}.month-navigation h2{color:#333;font-size:22px;margin:0}.nav-button{align-items:center;background-color:#f5f5f5;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:18px;height:36px;justify-content:center;transition:background-color .2s;width:36px}.nav-button:hover{background-color:#e0e0e0}.today-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:background-color .2s}.today-button:hover{background-color:#45a049}.calendar-grid{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.calendar-weekdays{background-color:#f5f5f5;border-bottom:1px solid #e0e0e0;display:grid;grid-template-columns:repeat(7,1fr)}.weekday{color:#555;font-weight:600;padding:12px;text-align:center}.calendar-days{display:flex;flex-direction:column}.calendar-week{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{border-bottom:1px solid #e0e0e0;border-right:1px solid #e0e0e0;cursor:pointer;min-height:100px;overflow:hidden;padding:8px;position:relative;transition:background-color .2s}.calendar-day:hover{box-shadow:0 0 10px #0000001a;z-index:1}.calendar-day:nth-child(7n){border-right:none}.calendar-week:last-child .calendar-day{border-bottom:none}.day-number{background-color:#ffffffb3;border-radius:10px;display:inline-block;font-weight:500;margin-bottom:5px;padding:2px 5px;position:relative;z-index:2}.other-month{background-color:#f8f8f8;color:#aaa}.today{z-index:1}.today .day-number{align-items:center;background-color:#4caf50;border-radius:50%;color:#fff;display:flex;height:28px;justify-content:center;padding:0;width:28px}.day-color-background{bottom:0;left:0;position:absolute;right:0;top:0;z-index:1}.color-division{height:100%;left:0;position:absolute;top:0;width:100%}.day-note-indicator{align-items:center;background-color:#fff;border-radius:50%;bottom:5px;box-shadow:0 1px 3px #0003;display:flex;font-size:14px;height:20px;justify-content:center;position:absolute;right:5px;width:20px;z-index:2}.day-badges-container{display:flex;gap:4px;position:absolute;right:5px;top:5px;z-index:3}.day-icon-badge{align-items:center;border-radius:50%;box-shadow:0 1px 3px #0003;color:#fff;display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;position:static;width:24px}.calendar-legend{background-color:#f5f5f5;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:30px;padding:15px}.calendar-legend h3{color:#333;margin-bottom:15px;margin-top:0}.calendar-legend h4{color:#333;font-size:16px;margin-bottom:10px}.legend-elements{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.legend-element{align-items:center;background-color:#fff;border-radius:15px;box-shadow:0 1px 3px #0000001a;display:flex;flex:0 1 auto;font-size:14px;max-width:calc(50% - 8px);min-width:fit-content;padding:4px 8px}.legend-color{border:1px solid #0000001a;border-radius:50%;height:15px;margin-right:8px;width:15px}.legend-note-icon{font-size:15px;margin-right:8px}@media (max-width:768px){.calendar-container{padding:10px}.calendar-header{flex-direction:column;gap:10px}.calendar-day{min-height:60px;padding:4px}.legend-elements{gap:6px}.legend-element{font-size:12px;max-width:calc(33.33% - 6px);padding:3px 6px}.legend-color{height:12px;margin-right:6px;width:12px}.day-badges-container{gap:2px;right:2px;top:2px}.day-icon-badge{font-size:10px;height:20px;right:2px;top:2px;width:20px}.day-number{font-size:12px;margin-bottom:2px;padding:1px 3px}}@media (max-width:480px){.calendar-day{min-height:50px}.legend-element{max-width:calc(50% - 6px)}.day-icon-badge{font-size:9px;height:18px;width:18px}}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:15px 20px}.modal-header h2{color:#333;font-size:18px;margin:0}.close-button{background:none;border:none;color:#888;cursor:pointer;font-size:24px;transition:color .2s}.close-button:hover{color:#333}.modal-section{border-bottom:1px solid #eee;padding:20px}.modal-section h3{color:#555;font-size:16px;margin-bottom:15px;margin-top:0}.no-elements{color:#888;padding:10px 0}.elements-selection{display:flex;flex-direction:column;gap:10px}.element-checkbox{align-items:center;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;justify-content:space-between;padding:10px;transition:background-color .2s}.element-checkbox:hover{background-color:#f9f9f9}.element-checkbox.selected{background-color:#e8f5e9;border-color:#4caf50}.element-color{border:1px solid #0000001a;border-radius:50%;height:15px;margin-right:12px;width:15px}.checkbox-indicator{align-items:center;border:2px solid #aaa;border-radius:3px;color:#4caf50;display:flex;font-weight:700;height:20px;justify-content:center;width:20px}.selected .checkbox-indicator{background-color:#4caf50;border-color:#4caf50;color:#fff}.notes-textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;padding:10px;resize:vertical;width:100%}.modal-actions{display:flex;gap:10px;justify-content:flex-end;padding:15px 20px}.cancel-button{background-color:#f5f5f5;color:#333;padding:10px 15px}.cancel-button:hover{background-color:#e0e0e0}.save-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background-color .2s}.save-button:hover{background-color:#45a049}@media (max-width:768px){.modal-content{border-radius:0;max-height:100vh;max-width:100%}.modal-actions{flex-direction:column}.cancel-button,.save-button{width:100%}}.element-checkbox-content{align-items:center;display:flex;flex:1 1}.rating-selector{margin-left:10px}.rating-selector select{border:1px solid #ddd;border-radius:3px;padding:2px 5px}.elements-list-container{display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:1200px;padding:20px}.elements-form{background-color:#f5f5f5;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.elements-form h2{color:#333;margin-bottom:20px;margin-top:0}.form-group{margin-bottom:15px}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:5px}.form-group input[type=text]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.color-selector{align-items:center;display:flex;gap:10px}.color-selector input[type=color]{border:none;border-radius:4px;cursor:pointer;height:40px;width:50px}.color-selector input[type=text]{flex:1 1}.form-buttons{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.submit-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background-color .2s}.submit-button:hover{background-color:#45a049}.cancel-button{background-color:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background-color .2s}.cancel-button:hover{background-color:#d32f2f}.elements-list{background-color:#f5f5f5;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.elements-list h2{color:#333;margin-bottom:20px;margin-top:0}.no-elements{color:#777;font-style:italic;padding:20px 0;text-align:center}.elements-list ul{list-style:none;margin:0;padding:0}.element-item{align-items:center;background-color:#fff;border-bottom:1px solid #eee;border-radius:4px;display:flex;margin-bottom:8px;padding:12px}.element-color-indicator{border:1px solid #0000001a;border-radius:50%;height:20px;margin-right:15px;width:20px}.element-text{flex:1 1;font-size:16px}.element-actions{display:flex;gap:8px}.delete-button,.edit-button{background:none;border:none;border-radius:4px;cursor:pointer;font-size:18px;padding:5px;transition:background-color .2s}.delete-button:hover,.edit-button:hover{background-color:#f1f1f1}@media (max-width:768px){.elements-list-container{padding:10px}.form-buttons{flex-direction:column}.cancel-button,.submit-button{width:100%}}
/*# sourceMappingURL=main.a4e35942.css.map*/