.app-bar{background:linear-gradient(135deg,#1565c0,#0d47a1);border-bottom:2px solid #0d47a1;flex-shrink:0;padding:16px 0;width:100%}.app-bar-content{align-items:center;display:flex;justify-content:space-between;margin:0 40px;max-width:1200px;padding:0 20px 0 0}.app-bar-title{color:#fff;cursor:pointer;font-size:28px;font-weight:700;letter-spacing:.5px;margin:0;padding-left:20px;transition:opacity .2s ease}.app-bar-title:hover{opacity:.8}.app-bar-buttons{align-items:center;display:flex;gap:32px}.app-bar-button{background-color:transparent;border:none;border-bottom:2px solid transparent;border-radius:0;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:0;transition:all .2s ease}.app-bar-button:hover{box-shadow:none}.app-bar-button:active,.app-bar-button:hover{background-color:transparent;border-bottom:2px solid #fff}.app-bar-button:active{transform:none}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f5f5;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app-container{display:flex;height:100vh;overflow:hidden;width:100%}.timeline-ruler-container{display:flex;gap:0;height:100%;width:100%}.timeline-wrapper{background-color:#fafafa;border-right:2px solid #ddd;flex-shrink:0;width:150px}.timeline-container{height:100%;overflow-x:hidden;overflow-y:scroll;padding-top:16px;scroll-behavior:smooth}.timeline-container,.timeline-track{position:relative;width:100%}.timeline-year{align-items:center;cursor:pointer;display:flex;gap:8px;height:0;left:0;padding:0 12px;position:absolute;transition:background-color .2s ease;user-select:none;width:100%}.timeline-year:hover{background-color:#d4e9f2}.timeline-year:active{background-color:#c0dce8}.timeline-year.active{background-color:#e3f2fd;border-right:4px solid #4a90e2}.timeline-dash{background-color:#999;flex-shrink:0;height:2px;width:12px}.timeline-year.active .timeline-dash{background-color:#4a90e2;height:2px}.timeline-label{color:#666;font-size:11px;font-weight:500;user-select:none;white-space:nowrap}.timeline-year.active .timeline-label{color:#4a90e2;font-weight:600}.data-columns-wrapper{background-color:#f5f5f5;display:flex;flex:1;gap:1px;overflow-x:auto;overflow-y:hidden}.data-column{background-color:#fff;border-right:1px solid #ddd;display:flex;flex:1;flex-direction:column;min-width:300px}.data-column:last-child{border-right:none}.column-header{background-color:#f9f9f9;border-bottom:2px solid #ddd;flex-shrink:0;padding:16px;position:sticky;top:0;z-index:10}.column-header h3{color:#333;font-size:16px;font-weight:600;margin:0}.column-content{flex:1;overflow-x:hidden;overflow-y:hidden;padding:16px;position:relative}.entries-list,.events-overlay-container{left:0;min-height:100%;pointer-events:none;position:absolute;top:0;width:100%}.events-overlay-container{right:0;z-index:5}.entry{background-color:#f9f9f9;border-radius:4px;padding:12px 16px;transition:all .2s ease}.entry:hover{background-color:#f0f0f0;box-shadow:0 2px 4px rgba(0,0,0,.1)}.entry:before{content:"";display:inline-block;margin-right:8px;vertical-align:middle}.entry-period-bar{background:linear-gradient(90deg,#f0f7ff,#e3f2fd);border-left:4px solid #2196f3;border-radius:4px;box-shadow:0 1px 3px rgba(33,150,243,.1);display:flex;flex-direction:column;left:8px;min-height:60px;overflow:visible;padding:12px;pointer-events:auto;position:absolute;right:8px;transition:all .2s ease}.entry-period-bar:hover{background:linear-gradient(90deg,#e1f0ff,#bbdefb);border-left-width:6px;box-shadow:0 4px 8px rgba(33,150,243,.2)}.small-period:hover:after{background-color:#1565c0;border-radius:4px;bottom:calc(100% + 8px);box-shadow:0 4px 12px rgba(0,0,0,.2);color:#fff;content:attr(data-tooltip);font-size:12px;font-weight:500;left:0;max-width:280px;padding:10px 12px;position:absolute;white-space:normal;z-index:1001;word-wrap:break-word;line-height:1.4;pointer-events:none}.period-bar-content{display:flex;flex-direction:column;height:100%;overflow:hidden}.entry-period-bar .entry-date{color:#1565c0;flex-shrink:0;font-size:12px;font-weight:700;margin-bottom:8px}.entry-period-bar .entry-description{color:#1565c0;flex-grow:1;font-size:12px;line-height:1.4}.entry-event{background-color:#f1f8f4;border-left:4px solid #4caf50}.entry-event:hover{background-color:#e8f5f0;box-shadow:0 2px 6px rgba(76,175,80,.15)}.entry-event:before{content:"⭐";font-size:14px}.entry-event .entry-date{color:#388e3c}.entry-event-overlay{align-items:center;background-color:transparent;border-left:2px solid #4caf50;border-radius:0;box-shadow:none;cursor:pointer;display:flex;gap:8px;height:auto;left:200px;margin:0;max-width:calc(100% - 220px);padding:4px 0 4px 12px;pointer-events:auto;position:absolute;top:var(--event-offset,0);transition:all .2s ease;z-index:10}.entry-event-overlay:hover{background-color:rgba(76,175,80,.08);border-left-width:3px;box-shadow:none}.entry-event-overlay:before{content:"";display:none}.entry-event-overlay .entry-date{color:#388e3c;display:none;flex-shrink:0;font-size:11px;font-weight:600;margin-right:8px;padding:0;white-space:nowrap}.entry-event-overlay:hover .entry-date{display:inline}.entry-event-overlay .entry-description{color:#2e7d32;flex:1;font-size:12px;font-weight:500;margin:0;min-width:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.entry-event-overlay:hover:after{background-color:#2e7d32;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.3);color:#fff;content:attr(data-tooltip);font-size:12px;font-weight:500;max-width:300px;padding:10px 12px;position:fixed;white-space:pre-wrap;z-index:10000;word-wrap:break-word;bottom:auto;line-height:1.5;pointer-events:none;top:auto}.entry-complex-event{border-left-color:#1b5e20!important}.entry-complex-event:hover{background-color:rgba(27,94,32,.08)!important}.entry-complex-event .entry-date{color:#1b5e20!important;display:inline!important}.entry-complex-event .entry-complex-indicator{color:#1b5e20;flex-shrink:0;font-size:13px;font-weight:700;min-width:35px;text-align:center;white-space:nowrap}.entry-complex-event:hover .entry-complex-indicator{color:#0d3817}.entry-complex-event:hover:after{background-color:#1b5e20!important;white-space:pre-wrap!important}.entry-date{color:#4a90e2;font-size:13px;font-weight:600;margin-bottom:6px}.entry-description{color:#555;font-size:13px;line-height:1.5}.no-entries{color:#999;font-size:13px;padding:32px 16px;text-align:center}.column-content::-webkit-scrollbar,.timeline-container::-webkit-scrollbar{width:8px}.column-content::-webkit-scrollbar-track,.timeline-container::-webkit-scrollbar-track{background:#f5f5f5}.column-content::-webkit-scrollbar-thumb,.timeline-container::-webkit-scrollbar-thumb{background:#999;border-radius:4px}.column-content::-webkit-scrollbar-thumb:hover,.timeline-container::-webkit-scrollbar-thumb:hover{background:#666}.timeline-wrapper-container{display:flex;flex-direction:column;height:100%;width:100%}.timeline-year-display{background:linear-gradient(135deg,#1565c0,#0d47a1);border-bottom:2px solid #0d47a1;flex-direction:column;flex-shrink:0;gap:8px;padding:8px 4px}.hamburger-btn,.timeline-year-display{align-items:center;display:flex;justify-content:center}.hamburger-btn{align-self:flex-start;background:none;border:none;color:#fff;cursor:pointer;font-size:24px;padding:4px 8px;transition:transform .2s ease}.hamburger-btn:hover{transform:scale(1.1)}.hamburger-btn:active{transform:scale(.95)}.timeline-year-display .year-value{color:#fff;font-size:28px;font-weight:900;letter-spacing:1px;text-align:center;width:100%}.timeline-controls{background-color:#fafafa;border-top:2px solid #ddd;flex-shrink:0;gap:12px;padding:12px}.timeline-controls,.zoom-btn{align-items:center;display:flex;justify-content:center}.zoom-btn{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;font-size:18px;font-weight:600;height:36px;padding:0;transition:all .2s ease;width:36px}.zoom-btn:hover:not(:disabled){background-color:#f0f0f0;border-color:#999;box-shadow:0 2px 4px rgba(0,0,0,.1)}.zoom-btn:active:not(:disabled){background-color:#e0e0e0;transform:scale(.95)}.zoom-btn:disabled{color:#999;cursor:not-allowed;opacity:.5}.zoom-level{color:#666;font-size:14px;font-weight:600;min-width:24px;text-align:center}@media (max-width:768px){.timeline-wrapper{width:100px}.data-column{min-width:250px}.timeline-label{font-size:10px}.column-header h3{font-size:14px}.entry{margin-bottom:12px;padding:10px}.entry-date,.entry-description{font-size:12px}.zoom-btn{font-size:16px;height:32px;width:32px}.zoom-level{font-size:12px}}.drawer-backdrop{background:rgba(0,0,0,.5);bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.drawer{background:#fff;box-shadow:2px 0 8px rgba(0,0,0,.15);display:flex;flex-direction:column;height:100vh;left:-300px;position:fixed;top:0;transition:left .3s ease;width:280px;z-index:1000}.drawer.open{left:0}.drawer-header{border-bottom:1px solid #ddd;display:flex;justify-content:flex-end;padding:16px}.drawer-close-btn{background:none;border:none;color:#333;cursor:pointer;font-size:20px;padding:4px 8px;transition:color .2s ease}.drawer-close-btn:hover{color:#06c}.drawer-content{display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding:16px}.drawer-link{align-items:center;border-radius:4px;color:#333;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 16px;text-decoration:none;transition:all .2s ease}.drawer-link:hover{background:#f0f0f0;color:#06c}.drawer-link:active{background:#e0e0e0}.drawer-icon{align-items:center;color:#333;display:flex;flex-shrink:0;height:20px;justify-content:center;stroke:currentColor;width:20px}.drawer-link:hover .drawer-icon{color:#06c}.drawer-link svg{color:inherit;flex-shrink:0;transition:color .2s ease}.drawer-button{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-family:inherit;gap:12px;padding:12px 16px;text-align:left;width:100%}.column-editor{background:#f9f9f9;border:1px solid #ddd;border-radius:6px;flex-shrink:0;min-width:220px;padding:14px;position:relative}.column-editor-header{display:flex;justify-content:flex-end;margin-bottom:12px}.delete-column-btn{background:#f44;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;height:28px;padding:0;transition:background .2s ease;width:28px}.delete-column-btn:hover{background:#c00}.column-editor-content{display:flex;flex-direction:column;gap:12px}.select-group{display:flex;flex-direction:column;gap:6px}.select-group label{color:#333;font-size:12px;font-weight:600}.select-group select{background:#fff;border:1px solid #ccc;border-radius:3px;cursor:pointer;font-size:12px;padding:6px 10px}.select-group select:focus{border-color:#06c;box-shadow:0 0 0 2px rgba(0,102,204,.1);outline:none}.column-name-input{background:#fff;border:1px solid #ccc;border-radius:3px;font-size:12px;padding:6px 10px}.column-name-input:focus{border-color:#06c;box-shadow:0 0 0 2px rgba(0,102,204,.1);outline:none}.events-checkboxes{background:#fff;border:1px solid #ddd;border-radius:3px;display:flex;flex-direction:column;gap:6px;max-height:150px;overflow-y:auto;padding:6px}.event-checkbox{align-items:center;color:#333;cursor:pointer;display:flex;font-size:12px;gap:6px;padding:2px}.event-checkbox input[type=checkbox]{cursor:pointer;height:14px;width:14px}.event-checkbox:hover{background:#f0f0f0;border-radius:2px}.column-editor-preview{border-top:1px solid #ddd;margin-top:12px;padding-top:12px}.preview-header{margin-bottom:10px}.preview-header h4{color:#333;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.preview-content{font-size:11px;max-height:300px;overflow-y:auto}.preview-empty{color:#999;font-style:italic;padding:8px}.preview-entries{display:flex;flex-direction:column;gap:8px}.preview-period{background:#f5f5f5;border-left:3px solid #06c;border-radius:2px;padding:8px}.preview-period-dates{color:#06c;font-size:11px;font-weight:600;margin-bottom:3px}.preview-period-description{color:#333;font-size:11px;line-height:1.3}.preview-events-section{border-top:1px solid #ddd;margin-top:10px;padding-top:10px}.preview-events-label{color:#333;font-size:11px;font-weight:600;letter-spacing:.3px;margin-bottom:6px;text-transform:uppercase}.preview-event{background:#f1f8f4;border-left:2px solid #4caf50;border-radius:2px;margin-bottom:4px;padding:6px 8px}.preview-event-date{color:#388e3c;font-size:10px;font-weight:600;margin-bottom:2px}.preview-event-description{color:#388e3c;font-size:10px;line-height:1.3}.select-group label.disabled{color:#999;cursor:not-allowed}.events-checkboxes.disabled{background:#f5f5f5;border-color:#ddd;cursor:not-allowed;opacity:.6}.event-checkbox.disabled{color:#999;cursor:not-allowed;opacity:.6}.event-checkbox.disabled input[type=checkbox]{cursor:not-allowed}.event-checkbox.disabled:hover{background:transparent}.add-set-sidebar{display:flex;flex-direction:column;gap:24px;height:100%;padding:20px}.add-set-title{border-bottom:2px solid #ddd;padding-bottom:16px}.add-set-title h2{color:#333;font-size:18px;margin:0}.add-set-form{display:flex;flex-direction:column;gap:8px}.add-set-form label{color:#333;font-size:13px;font-weight:600}.set-name-input{border:1px solid #ccc;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.set-name-input::placeholder{color:#999}.set-name-input:focus{border-color:#06c;box-shadow:0 0 0 2px rgba(0,102,204,.1);outline:none}.add-set-buttons{display:flex;flex-direction:column;gap:8px}.btn{font-size:13px;padding:10px 16px;text-align:center;width:100%}.btn-primary{background:#06c}.btn-primary:hover{background:#0052a3;box-shadow:0 2px 8px rgba(0,102,204,.3)}.btn-secondary{background:#f0f0f0}.btn-secondary:hover{background:#e0e0e0}.add-set-summary{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:4px;padding:12px}.add-set-summary h3{color:#333;font-size:14px;font-weight:600;margin:0 0 12px}.summary-item{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;font-size:13px;justify-content:space-between;padding:8px 0}.summary-item:last-child{border-bottom:none}.summary-label{color:#666;font-weight:500}.summary-value{color:#333;font-weight:600}.confirm-dialog-backdrop{background:rgba(0,0,0,.5);bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.confirm-dialog{background:#fff;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);left:50%;max-width:400px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1001}.confirm-dialog-header{border-bottom:1px solid #ddd;padding:20px}.confirm-dialog-header h2{color:#333;font-size:18px}.confirm-dialog-content{color:#666;font-size:14px;line-height:1.5;padding:20px}.confirm-dialog-content p{margin:0}.confirm-dialog-actions{border-top:1px solid #ddd;display:flex;gap:8px;justify-content:flex-end;padding:16px 20px}.btn-primary{background-color:#06c}.btn-primary:hover{background-color:#0052a3}.btn-danger{background-color:#d32f2f;color:#fff}.btn-danger:hover{background-color:#b71c1c}.period-editor-container{background-color:#f5f5f5;display:flex;flex:1;overflow:hidden}.period-editor-left{background-color:#fff;border-right:1px solid #ddd;display:flex;flex-direction:column;overflow-y:auto;padding:20px;width:40%}.period-list-header{margin-bottom:20px}.period-list-header h2{color:#333;font-size:18px;margin:0 0 12px}.period-search-container{align-items:center;display:flex;position:relative}.period-search-icon{color:#999;flex-shrink:0;left:12px;pointer-events:none;position:absolute;stroke:currentColor;top:50%;transform:translateY(-50%)}.period-search-icon svg{color:inherit;stroke:currentColor}.period-search-input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:8px 36px;width:100%}.period-search-input:focus{border-color:#06c;box-shadow:0 0 0 2px rgba(0,102,204,.1);outline:none}.period-search-clear{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;padding:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:color .2s ease;width:24px}.period-search-clear:hover{color:#333}.period-sort-controls{display:flex;gap:8px;margin-bottom:16px}.period-sort-btn{align-items:center;background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;flex:1;font-size:12px;font-weight:600;gap:6px;justify-content:center;padding:8px 12px;transition:all .2s ease}.period-sort-btn svg{color:inherit;flex-shrink:0;stroke:currentColor}.period-sort-btn:hover{background-color:#e8e8e8}.period-sort-btn.active{background-color:#06c;border-color:#06c;color:#fff}.period-list{border:1px solid #ddd;border-radius:4px;flex:1;overflow-y:auto}.period-list-item{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:12px 16px;transition:all .2s ease}.period-list-item:hover{background-color:#f9f9f9}.period-list-item.active{background-color:#e3f2fd;border-left:4px solid #06c;padding-left:12px}.period-list-item-name{color:#333;font-size:14px;font-weight:600;margin-bottom:4px}.period-list-item-range{color:#666;font-size:12px}.period-editor-right{display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:20px}.period-editor-header{border-bottom:1px solid #ddd;margin-bottom:20px;padding-bottom:16px}.period-editor-header h2{color:#333}.period-set-name-edit-btn{align-items:center;background:transparent;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;display:flex;justify-content:center;padding:6px 8px;transition:all .2s ease}.period-set-name-edit-btn:hover{border-color:#999;color:#333}.period-set-name-edit-btn svg{color:inherit;flex-shrink:0;stroke:currentColor}.period-set-name-input{border:1px solid #ddd;border-radius:4px;flex:1;font-family:inherit;font-size:16px;font-weight:700;padding:8px 12px}.period-set-name-input:focus{border-color:#06c;box-shadow:0 0 0 2px rgba(0,102,204,.1);outline:none}.period-editor-form{background-color:#fff;border:1px solid #ddd;border-radius:4px;margin-bottom:20px;padding:16px}.period-form{display:flex;flex-direction:column;gap:12px}.period-item-form .period-form{gap:12px}.form-row{display:flex;gap:12px}.form-row .period-form-group{flex:1}.period-form-group{display:flex;flex-direction:column;gap:6px}.period-form-group label{color:#333;font-size:12px;font-weight:600}.period-form-group input,.period-form-group textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:12px;padding:8px 12px}.period-form-group input:focus,.period-form-group textarea:focus{border-color:#06c;box-shadow:0 0 0 2px rgba(0,102,204,.1);outline:none}.period-form-buttons{display:flex;gap:8px;margin-top:8px}.period-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:12px;font-weight:600;justify-content:center;padding:8px 16px;transition:all .2s ease;width:auto}.period-btn svg{color:inherit;flex-shrink:0;stroke:currentColor}.period-btn-primary{background-color:#06c;color:#fff}.period-btn-primary:hover{background-color:#0052a3}.btn-add-set{font-size:11px;padding:6px 12px!important;white-space:nowrap}.period-btn-secondary{background-color:#f0f0f0;border:1px solid #ddd;color:#333}.period-btn-secondary:hover{background-color:#e8e8e8}.period-list-section{background-color:#fff;border:1px solid #ddd;border-radius:4px;flex:1;overflow-y:auto;padding:16px}.period-list-section h3{color:#333;font-size:14px;margin:0 0 12px}.period-items{display:flex;flex-direction:column;gap:8px}.period-item{align-items:flex-start;background-color:#f9f9f9;border:1px solid #ddd;border-radius:4px;display:flex;justify-content:space-between;padding:12px}.period-item-form{background-color:#fff;border:1px solid #06c;display:block;padding:16px}.period-item-gap{background-color:#e8f5e9;border:1px dashed #ddd}.period-item-gap .period-item-content{opacity:.5}.period-item-overlapping{background-color:#ffe0e0;border-color:#ffb3b3}.period-years-overlapping{color:#d32f2f!important;font-weight:700}.period-item-content{flex:1}.period-item-years{color:#06c;font-size:12px;font-weight:600;margin-bottom:4px}.period-item-description{color:#666;font-size:12px;line-height:1.3}.period-item-actions{display:flex;flex-shrink:0;gap:6px;margin-left:12px}.period-delete-btn,.period-edit-btn{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:3px;color:#333;cursor:pointer;display:flex;justify-content:center;min-height:32px;min-width:32px;padding:6px 8px;transition:all .2s ease}.period-delete-btn svg,.period-edit-btn svg{color:inherit;flex-shrink:0;stroke:currentColor}.period-edit-btn:hover{background-color:#f0f0f0;border-color:#06c;color:#06c}.period-delete-btn:hover{background-color:#ffebee;border-color:#d32f2f;color:#d32f2f}.period-editor-footer{border-top:1px solid #ddd;margin-top:20px;padding-top:16px}.period-editor-empty{align-items:center;color:#999;display:flex;font-size:16px;height:100%;justify-content:center}.event-editor-container{background-color:#f5f5f5;display:flex;flex:1;overflow:hidden}.event-editor-left{background-color:#fff;border-right:1px solid #ddd;display:flex;flex-direction:column;overflow-y:auto;padding:20px;width:40%}.event-list-header{margin-bottom:20px}.event-list-header h2{color:#333;font-size:18px;margin:0 0 16px}.event-search-container{align-items:center;display:flex;position:relative}.event-search-icon{color:#999;flex-shrink:0;left:12px;pointer-events:none;position:absolute;stroke:currentColor;top:50%;transform:translateY(-50%)}.event-search-icon svg{color:inherit;stroke:currentColor}.event-search-input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:8px 36px;width:100%}.event-search-input:focus{border-color:#4caf50;box-shadow:0 0 0 2px rgba(76,175,80,.1);outline:none}.event-search-clear{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;padding:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:color .2s ease;width:24px}.event-search-clear:hover{color:#333}.event-sort-controls{display:flex;gap:8px;margin-bottom:16px}.sort-btn{align-items:center;background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;flex:1;font-size:12px;font-weight:600;gap:6px;justify-content:center;padding:8px 12px;transition:all .2s ease}.sort-btn svg{color:inherit;flex-shrink:0;stroke:currentColor}.sort-btn:hover{background-color:#e8e8e8}.sort-btn.active{background-color:#4caf50;border-color:#4caf50;color:#fff}.event-list{border:1px solid #ddd;border-radius:4px;flex:1;overflow-y:auto}.event-list-item{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:12px 16px;transition:all .2s ease}.event-list-item:hover{background-color:#f9f9f9}.event-list-item.active{background-color:#f1f8f4;border-left:4px solid #4caf50;padding-left:12px}.event-list-item-name{color:#333;font-size:14px;font-weight:600;margin-bottom:4px}.event-list-item-range{color:#666;font-size:12px}.event-editor-right{display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:20px}.event-editor-header{border-bottom:1px solid #ddd;margin-bottom:20px;padding-bottom:16px}.event-editor-header h2{color:#333}.event-set-name-edit-btn{align-items:center;background:transparent;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;display:flex;justify-content:center;padding:6px 8px;transition:all .2s ease}.event-set-name-edit-btn:hover{border-color:#999;color:#333}.event-set-name-edit-btn svg{color:inherit;flex-shrink:0;stroke:currentColor}.event-set-name-input{border:1px solid #ddd;border-radius:4px;flex:1;font-family:inherit;font-size:16px;font-weight:700;padding:8px 12px}.event-set-name-input:focus{border-color:#4caf50;box-shadow:0 0 0 2px rgba(76,175,80,.1);outline:none}.event-editor-form{background-color:#fff;border:1px solid #ddd;border-radius:4px;margin-bottom:20px;padding:16px}.event-form{gap:12px}.event-form,.form-group{display:flex;flex-direction:column}.form-group{gap:6px}.form-group label{color:#333;font-size:12px;font-weight:600}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:12px;padding:8px 12px}.form-group input:focus,.form-group textarea:focus{border-color:#4caf50;box-shadow:0 0 0 2px rgba(76,175,80,.1);outline:none}.form-buttons{display:flex;gap:8px;margin-top:8px}.btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:12px;font-weight:600;justify-content:center;padding:8px 16px;transition:all .2s ease;width:auto}.btn svg{color:inherit;flex-shrink:0;stroke:currentColor}.btn-primary{background-color:#4caf50;color:#fff}.btn-primary:hover{background-color:#388e3c}.btn-secondary{background-color:#f0f0f0;border:1px solid #ddd;color:#333}.btn-secondary:hover{background-color:#e8e8e8}.event-list-section{background-color:#fff;border:1px solid #ddd;border-radius:4px;flex:1;overflow-y:auto;padding:16px}.event-list-section h3{color:#333;font-size:14px;margin:0 0 12px}.event-items{display:flex;flex-direction:column;gap:8px}.event-item{align-items:flex-start;background-color:#f9f9f9;border:1px solid #ddd;border-radius:4px;display:flex;justify-content:space-between;padding:12px}.event-item-form{background-color:#fff;border:1px solid #4caf50;display:block;padding:16px}.event-item-content{flex:1}.event-item-date{color:#388e3c;font-size:12px;font-weight:600;margin-bottom:4px}.event-item-description{color:#666;font-size:12px;line-height:1.3}.event-item-actions{display:flex;flex-shrink:0;gap:6px;margin-left:12px}.event-delete-btn,.event-edit-btn{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:3px;color:#333;cursor:pointer;display:flex;justify-content:center;min-height:32px;min-width:32px;padding:6px 8px;transition:all .2s ease}.event-delete-btn svg,.event-edit-btn svg{color:inherit;flex-shrink:0;stroke:currentColor}.event-edit-btn:hover{background-color:#f0f0f0;border-color:#4caf50;color:#388e3c}.event-delete-btn:hover{background-color:#ffebee;border-color:#d32f2f;color:#d32f2f}.event-editor-footer{border-top:1px solid #ddd;margin-top:20px;padding-top:16px}.event-editor-empty{align-items:center;color:#999;display:flex;font-size:16px;height:100%;justify-content:center}