*,:after,:before{box-sizing:border-box}body,html{height:100%;margin:0;overflow:hidden;padding:0}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}#root{height:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body{background-color:#f0f0f0;font-family:sans-serif;margin:0;overflow-x:hidden}.App{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:column;height:100vh;max-height:100vh;overflow:hidden;padding:8px;width:100%}.App h1{color:#333;margin-bottom:10px}.controls{background-color:#fff;border-radius:5px;box-shadow:0 2px 4px #0000001a;flex-wrap:wrap;margin-bottom:10px;padding:10px;width:100%}.controls,.controls form{display:flex;gap:10px}.controls input[type=text]{border:1px solid #ccc;border-radius:4px;padding:8px 12px}.controls button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1em;padding:8px 15px;transition:background-color .2s}.controls button:hover{background-color:#0056b3}.controls .clear-button{background-color:#dc3545}.controls .clear-button:hover{background-color:#c82333}.remove-button{background-color:initial;border:none;color:#dc3545;cursor:pointer;font-size:1.2em;font-weight:700;line-height:1;opacity:.6;padding:0 5px;transition:opacity .2s}.remove-button:hover{opacity:1}.layout-container{background-color:#e9ecef;border:1px solid #ccc;border-radius:0 0 5px 5px;border-top:none;box-shadow:0 2px 4px #0000001a;display:flex;flex-grow:1;height:calc(100vh - 58px);margin-top:0;min-height:400px;overflow:hidden;transition:height .2s ease;width:100%}.layout-container>.activity-palette{border-right:1px solid #ccc;flex-shrink:0;min-width:180px}.layout-container>.schedule-grid-container{flex-grow:1;overflow:auto;padding:0}.App-header,.App-link,.App-logo{display:none}.App .tab-bar{background-color:#f8f9fa;border:1px solid #ccc;border-radius:5px 5px 0 0;box-shadow:0 2px 4px #0000000d;margin-bottom:0;width:100%}.tabs-content-container{display:flex;flex-direction:column;flex-grow:1;overflow:auto;width:100%}.clear-all-button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9em;margin-right:auto;padding:5px 10px}.clear-all-button:hover{background-color:#c82333}.time-slot-cell{align-items:center;background-position:50%;background-size:cover;border-bottom:1px solid #eee;border-left:1px solid #eee;box-sizing:border-box;cursor:pointer;display:flex;height:30px;justify-content:center;max-height:30px;min-height:30px;min-width:80px;overflow:hidden;padding:0 4px;text-align:center;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.schedule-grid>.person-column:first-of-type .time-slot-cell{border-left:none}.person-column .time-slot-cell:last-child{border-bottom:none}.time-slot-cell.empty-cell{background-color:#fff;border-top:1px solid #f8f8f8}.time-slot-cell:hover{outline:2px dashed var(--selected-activity-color);z-index:5}.schedule-grid-container:active .time-slot-cell:hover,.time-slot-cell:hover{background-color:#fff!important;background-color:var(--selected-activity-color,#fff)!important}.schedule-grid-container:active .time-slot-cell:hover{outline:2px solid #0009;transition:outline .05s ease-in-out}.cell-activity-name{font-size:.75em;max-width:100%;overflow:hidden;pointer-events:none;text-overflow:ellipsis;white-space:nowrap}.time-slot-cell.empty-cell .cell-activity-name{color:#ccc}.person-column{border-right:1px solid #ccc;display:flex;flex:1 0 auto;flex-direction:column;max-width:200px;min-width:100px;width:150px}.person-column:last-child{border-right:none}.person-column .header-cell{height:40px;max-height:40px;min-height:40px}.person-header-cell{align-items:center;display:flex;justify-content:space-between;min-height:40px;padding-left:10px;padding-right:5px}.person-name{cursor:pointer;flex-grow:1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.person-name:hover{color:#0056b3;-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.person-name-input{animation:inputAppear .3s ease-in-out;background:#0000;border:none;border-bottom:1px solid #007bff;flex-grow:1;font-size:1em;font-weight:inherit;outline:none;padding:2px 0;width:100%}.person-remove-button{margin-left:5px}.activity-summary{background-color:#f1f3f5;border-bottom:1px solid #ccc;box-sizing:border-box;display:flex;flex-direction:column;font-size:.8em;gap:4px;height:auto;min-height:100px;overflow:visible;padding:8px}.activity-summary::-webkit-scrollbar{display:none}.activity-summary{-ms-overflow-style:none;scrollbar-width:none}.summary-item{align-items:center;display:flex;gap:5px;min-height:20px;overflow:hidden;padding:2px 0}.summary-color{border:1px solid #0003;border-radius:2px;display:inline-block;height:10px;width:10px}.summary-name{flex-grow:1;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-hours{font-weight:700;white-space:nowrap}.unassigned-summary{color:#555}.empty-message{color:#888;font-style:italic}.schedule-grid-container{box-sizing:border-box;flex-grow:1;height:100%;overflow:auto;width:100%}.grid-aligned{min-width:max-content;width:100%}.column-aligned{height:100%}.schedule-grid{background-color:#fff;border:1px solid #ccc;border-radius:5px;display:inline-flex;height:auto;min-width:max-content;table-layout:fixed}.time-slots-column{background-color:#f8f9fa;border-right:1px solid #ccc;display:flex;flex-direction:column}.header-cell{align-items:center;background-color:#e9ecef;border-bottom:1px solid #ccc;box-sizing:border-box;display:flex;font-weight:700;height:40px;justify-content:center;max-height:40px;min-height:40px;padding:10px;text-align:center}.time-header-cell{min-width:90px}.summary-space{background-color:#f1f3f5;border-bottom:1px solid #ccc;box-sizing:border-box;height:auto;min-height:100px}.time-slot-label{border-bottom:1px solid #eee;box-sizing:border-box;color:#555;font-size:.9em;height:30px;line-height:30px;max-height:30px;min-height:30px;min-width:90px;padding:0 8px;text-align:center;white-space:nowrap}.time-slots-column .time-slot-label:last-child{border-bottom:none}.add-person-column{border-left:1px dashed #ccc;display:flex;flex-direction:column;max-width:120px;min-width:100px}.add-person-header-cell{background-color:#f8f9fa;color:#007bff;cursor:pointer;font-weight:400;justify-content:center;transition:background-color .2s ease}.add-person-header-cell:hover{background-color:#e3f2fd}.add-person-icon{font-size:16px;font-weight:700;margin-right:5px}.time-slot-placeholder{background-color:#f9f9f9;border-bottom:1px solid #eee;height:30px;max-height:30px;min-height:30px}.add-person-button{cursor:pointer;justify-content:center}.add-person-button,.add-person-form{align-items:center;display:flex;height:100%;width:100%}.add-person-form{box-sizing:border-box;gap:5px;padding:0 5px}.add-person-input{border:1px solid #ccc;border-radius:4px;flex-grow:1;font-size:.9em;height:25px;min-width:0;padding:0 8px}.add-person-submit{align-items:center;background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:16px;height:25px;justify-content:center;width:25px}.add-person-submit:hover{background-color:#0056b3}.activity-palette{background-color:#f9f9f9;border-right:1px solid #ccc;display:flex;flex-direction:column;flex-shrink:0;gap:8px;height:100%;max-width:200px;min-width:150px;overflow-y:auto;padding:10px}.activity-palette h3{font-size:1.1em;margin-bottom:10px;margin-top:0;text-align:center}.activity-item{align-items:center;border:1px solid #0000;border-radius:4px;color:#333;cursor:pointer;display:flex;font-weight:500;justify-content:space-between;padding:8px 10px;position:relative;transition:transform .1s ease-in-out,border-color .1s ease-in-out}.activity-item[style*="background-color: #FFFFFF"],.activity-item[style*="background-color: #ffffff"]{border:1px solid #ccc}.activity-item:hover{transform:scale(1.05)}.activity-item.selected{border:2px solid #007bff;box-shadow:0 0 5px #007bff80}.activity-name{flex-grow:1;margin-right:5px;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.activity-remove-button{align-items:center;background-color:#fff9!important;border:1px solid #0003!important;border-radius:50%;box-shadow:0 0 3px #0003;color:#c00!important;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:18px;justify-content:center;text-shadow:0 0 1px #fffc;width:18px}.activity-remove-button:hover{background-color:#fffc!important;box-shadow:0 0 5px #0000004d;transform:scale(1.1)}.palette-instructions{color:#666;font-size:.8em;margin-top:15px;text-align:center}.activity-item-wrapper{margin-bottom:5px;position:relative}.color-picker-popover{left:0;margin-top:5px;position:absolute;top:100%;z-index:10}.color-picker-cover{bottom:0;left:0;position:fixed;right:0;top:0;z-index:9}.color-picker-close-button{background:#fffc;border:1px solid #ccc;border-radius:50%;cursor:pointer;font-size:10px;height:14px;line-height:12px;padding:0;position:absolute;right:2px;text-align:center;top:2px;width:14px;z-index:11}.color-picker-close-button:hover{background:#fff}.activity-name-input{animation:inputAppear .3s ease-in-out;background:#0000;border:none;border-bottom:1px dashed #ffffff80;color:inherit;font-size:1em;font-weight:500;margin-right:5px;outline:none;padding:2px 0;width:100%}@keyframes inputAppear{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.activity-item:after{background-color:#ffffff80;border-radius:50%;bottom:4px;content:"";height:4px;opacity:0;position:absolute;right:4px;transition:opacity .2s ease;width:4px}.activity-item:hover:after{opacity:1}.activity-item[title*=DblClick]:hover:not(.selected):before{content:"Double-click to rename"}.activity-item:active:before,.activity-item[title*=DblClick]:hover:not(.selected):before{background-color:#000000b3;border-radius:4px;color:#fff;font-size:11px;left:50%;opacity:.8;padding:3px 8px;pointer-events:none;position:absolute;top:-25px;transform:translateX(-50%);white-space:nowrap;z-index:5}.activity-item:active:before{content:"Keep holding to change color..."}.long-press-in-progress{overflow:hidden;position:relative}.long-press-in-progress:after{animation:longPressProgress .5s linear forwards;background-color:#ffffffb3;bottom:0;content:"";height:3px;left:0;position:absolute;z-index:3}@keyframes longPressProgress{0%{width:0}to{width:100%}}.long-press-active .long-press-in-progress .activity-name{animation:pulsate .5s linear}@keyframes pulsate{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.empty-item{background-color:#f5f5f5!important;border:1px solid #ddd!important}.empty-item,.eraser-icon{align-items:center;display:flex}.eraser-icon{color:#888;font-size:16px;margin-right:8px}.empty-item:hover{background-color:#f0f0f0!important}.add-activity-container{border-bottom:1px solid #ddd;margin:5px 0 10px;padding-bottom:10px}.add-activity-form-inline{box-sizing:border-box;display:flex;gap:5px;width:100%}.add-activity-input{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;flex-grow:1;font-size:.9em;min-width:0;padding:6px 8px;width:calc(100% - 40px)}.add-activity-button{align-items:center;background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:1.1em;font-weight:700;justify-content:center;line-height:1;min-width:28px;padding:4px 8px}.add-activity-button:hover{background-color:#0056b3}.tab-bar{align-items:flex-start;background-color:#f0f0f0;border-bottom:1px solid #ccc;display:flex;height:40px;margin-bottom:0;padding:0 5px;width:100%}.tabs-container{display:flex;flex-grow:1;height:100%;overflow-x:auto;scrollbar-width:thin}.tabs-container::-webkit-scrollbar{height:4px}.tabs-container::-webkit-scrollbar-track{background:#f1f1f1}.tabs-container::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.tab{align-items:center;background-color:#e4e4e4;border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-left:1px solid #ccc;border-right:1px solid #ccc;border-top:none;cursor:pointer;display:flex;height:100%;margin-bottom:4px;max-width:240px;min-width:140px;overflow:hidden;padding:0 15px;position:relative;text-overflow:ellipsis;transition:background-color .2s,transform .1s;-webkit-user-select:none;user-select:none;white-space:nowrap}.tab:hover{background-color:#ddd}.tab.active{background-color:#fff;border-bottom:2px solid #007bff;font-weight:500;height:calc(100% + 1px)}.tab.dragging{opacity:.4;z-index:10}.tab.drag-over{background-color:#c8e1ff;border-left:2px solid #007bff;box-shadow:0 2px 4px #0000001a;transform:translateY(-2px)}.tab:not(.active):hover{cursor:grab}.tab:active{cursor:grabbing}.tab-name{flex-grow:1;margin-right:5px;overflow:hidden;text-overflow:ellipsis}.tab-name-input{background:#0000;border:none;font-size:1em;margin:0;outline:none;padding:0;width:100%}.tab-close-button{align-items:center;background:none;border:none;border-radius:50%;color:#777;cursor:pointer;display:flex;font-size:16px;height:20px;justify-content:center;line-height:1;margin-left:5px;padding:0;text-align:center;width:20px}.tab-close-button:hover{background-color:#0000001a;color:#333}.tab-action-button,.tab-actions{align-items:center;display:flex;height:100%}.tab-action-button{background:none;border:none;border-radius:4px;color:#333;cursor:pointer;font-size:14px;justify-content:center;margin:0 2px;padding:0 10px}.tab-action-button:hover{background-color:#ddd}.tab-action-button.clear-all-button{background-color:#dc3545;color:#fff}.tab-action-button.clear-all-button:hover{background-color:#c82333}.tab-action-button.export-button{background-color:#28a745;color:#fff}.tab-action-button.export-button:hover{background-color:#218838}.tab-action-button.import-button{background-color:#17a2b8;color:#fff}.tab-action-button.import-button:hover{background-color:#138496}.tab-action-button.disabled{cursor:not-allowed;opacity:.5}.add-tab-button{align-items:center;background:none;border:none;color:#333;cursor:pointer;display:flex;font-size:24px;height:100%;justify-content:center;margin-right:5px;padding:0 10px}.add-tab-button:hover{background-color:#ddd}.tab-content{display:flex;flex-direction:column;flex-grow:1;height:100%;overflow:auto;position:relative;width:100%}.empty-schedule-indicator{animation:fadeIn .5s ease-in-out;background-color:#ffffffe6;border-radius:8px;box-shadow:0 2px 10px #0000001a;left:50%;max-width:400px;padding:20px;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:10}.empty-schedule-indicator p{color:#555;font-size:16px;line-height:1.5;margin:0}.info-button{align-items:center;background-color:#4a90e2;border:none;border-radius:50%;bottom:60px;box-shadow:0 2px 5px #0003;color:#fff;cursor:pointer;display:flex;font-size:22px;font-weight:700;height:40px;justify-content:center;position:fixed;right:30px;transition:all .2s ease;width:40px;z-index:100}.info-button:hover{background-color:#357abf;transform:scale(1.05)}.info-popover-overlay{align-items:center;animation:fadeIn .3s ease-out;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow:auto;position:fixed;right:0;top:0;z-index:1000}.info-popover{animation:slideUp .3s ease-out;background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #00000040;max-height:90vh;max-width:700px;overflow-y:auto;padding:24px;position:relative;width:90%}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;line-height:1;padding:0;position:absolute;right:15px;top:15px;transition:background-color .2s;width:30px}.close-button:hover{background-color:#f0f0f0}.popover-content{align-items:center;display:flex;flex-direction:column;text-align:center}.app-logo{height:120px;margin-bottom:16px;width:120px}.app-name{color:#4a90e2;font-size:36px;font-weight:700;margin:0 0 8px}.app-slogan{color:#666;font-size:18px;font-style:italic;margin:0 0 24px}.app-description{color:#333;line-height:1.6;margin-bottom:24px;max-width:650px;text-align:left;width:100%}.app-description p{margin-bottom:16px}.app-description ul{margin:16px 0;padding-left:24px}.app-description li{margin-bottom:8px}.dont-show-again{align-items:center;display:flex;justify-content:center;margin-bottom:24px}.dont-show-again label{align-items:center;cursor:pointer;display:flex;gap:8px;-webkit-user-select:none;user-select:none}.start-button{background-color:#4a90e2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px 24px;transition:background-color .2s}.start-button:hover{background-color:#357abf}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:767px){.info-popover{max-width:95%;padding:20px;width:95%}.app-logo{height:80px;width:80px}.app-name{font-size:28px}.app-slogan{font-size:16px}.app-description{font-size:14px}}
/*# sourceMappingURL=main.6869614c.css.map*/