:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.schedule-grid{position:relative;display:flex;flex-direction:column;width:100%;height:100%;font-size:4cqw;overflow:hidden;font-family:Fira Sans,sans-serif;--header-height: 4%;--theme-base: #a8e6d5;--theme-bg-color: #f6f0e4;--grid-line-color: rgba(0, 0, 0, .1);background-color:var(--theme-bg-color)}.schedule-grid.light-mode{--theme-color-75: rgba(var(--theme-rgb), .75);--theme-color-50: rgba(var(--theme-rgb), .5);--theme-color-30: rgba(var(--theme-rgb), .3);--theme-color-10: rgba(var(--theme-rgb), .1);--theme-text-color: #333;--theme-border-color: var(--theme-base);--theme-rgb: 168, 230, 213;--grid-line-color: rgba(0, 0, 0, .1);color:var(--theme-text-color)}.schedule-grid.dark-mode{--theme-color-75: rgba(var(--theme-rgb), .75);--theme-color-50: rgba(var(--theme-rgb), .5);--theme-color-30: rgba(var(--theme-rgb), .3);--theme-color-10: rgba(var(--theme-rgb), .1);--theme-text-color: #f0f0f0;--theme-border-color: var(--theme-base);--theme-rgb: 168, 230, 213;--grid-line-color: rgba(255, 255, 255, .15);color:var(--theme-text-color)}.clock-space-padding,.bottom-padding{width:100%;position:relative;flex-shrink:0}.clock-space-padding{display:flex;justify-content:center;padding-top:2em;background:linear-gradient(to bottom,var(--theme-color-75) 0%,var(--theme-bg-color) 100%)}.padding-label{display:flex;flex-direction:column;align-items:center;text-transform:uppercase;font-size:1em;font-weight:600;color:var(--theme-text-color);opacity:.2}.padding-label-prefix{font-size:.5em;font-weight:700;color:var(--theme-text-color)}.bottom-padding{background:linear-gradient(to top,var(--theme-color-75) 0%,var(--theme-bg-color) 100%);width:100%;text-align:center}.grid-content{position:relative;display:flex;flex:1;width:100%;overflow:hidden;background-color:var(--theme-bg-color)}.time-labels{position:relative;width:1em;z-index:2;flex-shrink:0;height:100%}.time-labels-header{flex-shrink:0}.time-label{width:100%;text-align:center;font-size:.5625em;font-weight:500;display:flex;align-items:flex-start;justify-content:center;padding-top:.125em;box-sizing:border-box}.stage-columns{display:flex;flex:1;overflow:hidden;height:100%}.stage-column{position:relative;flex:1;min-width:0;height:100%}.stage-header{text-align:center;text-wrap:break;padding:.25em .125em;font-weight:400;font-size:.5625em;line-height:1em;overflow:hidden;text-overflow:ellipsis;top:0;z-index:1;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.performance{border-radius:.1875em;display:flex;gap:.125em;padding:.15em .13em;flex-direction:column;align-items:start;box-sizing:border-box;background-color:var(--theme-color-75);position:relative;z-index:2;cursor:pointer}.performance:hover{background-color:var(--theme-color-50)}.performance.highlighted{background-color:var(--theme-text-color);color:var(--theme-bg-color)}.performance.highlighted .performance-time{color:var(--theme-bg-color);opacity:.8}.performance.last-in-stage{overflow:visible;background:linear-gradient(to bottom,var(--theme-color-75) 0%,var(--theme-color-75) 70%,var(--theme-bg-color) 100%)}.performance.last-in-stage:hover{background:linear-gradient(to bottom,var(--theme-color-50) 0%,var(--theme-color-50) 70%,var(--theme-bg-color) 100%)}.performance.last-in-stage.highlighted{background:linear-gradient(to bottom,var(--theme-text-color) 0%,var(--theme-text-color) 70%,var(--theme-bg-color) 100%)}.schedule-grid.reverse .performance.last-in-stage{background:linear-gradient(to top,var(--theme-color-75) 0%,var(--theme-color-75) 70%,var(--theme-bg-color) 100%)}.schedule-grid.reverse .performance.last-in-stage:hover{background:linear-gradient(to top,var(--theme-color-50) 0%,var(--theme-color-50) 70%,var(--theme-bg-color) 100%)}.schedule-grid.reverse .performance.last-in-stage.highlighted{background:linear-gradient(to top,var(--theme-text-color) 0%,var(--theme-text-color) 70%,var(--theme-bg-color) 100%)}.artist-name{font-weight:500;font-size:.5em;line-height:1.125em;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.performance-time{font-size:.45em;font-family:Chivo,monospace;line-height:1.2em;font-weight:400;opacity:.8;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.hour-grid-line{position:absolute;height:.1%;background-color:var(--grid-line-color)}.half-hour-grid-line{position:absolute;height:.1%;background-color:var(--grid-line-color);opacity:.6}.marker-line,.sunset-line{position:absolute;height:.1%;background-color:#ff8c00;left:0;right:0;pointer-events:none;z-index:2;opacity:.8}.marker-icon,.sunset-icon{position:absolute;width:1em;height:1em;transform:translateY(-50%);pointer-events:none;z-index:2;color:#ff8c00;opacity:.8}.schedule-grid.reverse .performance{justify-content:end}.control-panel{background-color:var(--bg-primary);height:100%;font-family:Fira Sans,sans-serif;display:flex;flex-direction:column;overflow:hidden}.scrollable-content{flex:1;overflow-y:auto;overflow-x:hidden}.control-section{margin-bottom:0;padding:12px 16px;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:8px}.control-section.no-border{border-bottom:none}.control-section h3{margin:0;font-size:14px;color:var(--text-secondary);font-weight:500;text-transform:uppercase;font-family:Fira Sans,sans-serif;display:flex;align-items:center;justify-content:space-between}.control-description{margin:0;font-size:13px;color:var(--text-tertiary);line-height:1.4}.stage-selector{display:flex;flex-direction:column;gap:2px}.stage-item{display:flex;align-items:center;padding:4px 10px;background-color:var(--bg-primary);border:1px solid var(--border-color);margin-bottom:0;border-radius:4px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s;touch-action:none;position:relative}.stage-item:hover{background-color:var(--bg-secondary)}.stage-item.dragging{opacity:.6;border:1px dashed var(--text-tertiary);box-shadow:0 2px 5px var(--shadow-color-strong);z-index:10}.stage-item.drop-target-top:before,.stage-item.drop-target-bottom:after{content:"";position:absolute;left:0;right:0;height:3px;background-color:var(--accent-color);border-radius:3px;z-index:10}.stage-item.drop-target-top:before{top:-3px}.stage-item.drop-target-bottom:after{bottom:-3px}.drag-handle{margin-right:8px;color:var(--text-tertiary);cursor:grab;align-self:stretch;display:flex;align-items:center}.stage-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--text-primary);font-size:13px;font-family:Fira Sans,sans-serif;font-weight:500;flex:1}.theme-category{margin:0;font-size:13px;color:var(--text-tertiary);font-weight:500;font-family:Fira Sans,sans-serif}.theme-category:first-of-type{margin-top:0}.color-scheme-selector{display:flex;gap:8px;flex-wrap:wrap}.color-scheme-button,.color-input-wrapper{padding:0;border:2px solid transparent;border-radius:1000px;cursor:pointer;position:relative;height:32px;width:32px;overflow:hidden;background:var(--preview-color);box-shadow:0 1px 3px var(--shadow-color-strong);transition:all .2s}.color-scheme-button:hover,.color-input-wrapper:hover{transform:scale(1.1)}.color-scheme-button.selected,.color-input-wrapper.selected{border-color:var(--text-primary);outline:none;box-shadow:0 0 0 2px var(--shadow-color-strong);transform:scale(1.05)}.color-scheme-button:focus-visible,.color-input-wrapper:focus-visible{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--input-focus-shadow);transform:scale(1.1)}.color-scheme-button.selected[data-mode=dark],.color-input-wrapper.selected[data-mode=dark]{border-color:#fff}.color-scheme-button:after,.color-input-wrapper:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,var(--gradient-overlay) 0%,transparent 100%);pointer-events:none;border-radius:1000px}.color-scheme-button[data-mode=dark]:after,.color-input-wrapper[data-mode=dark]:after{background:linear-gradient(to bottom,var(--gradient-overlay-dark) 0%,var(--gradient-overlay-dark-strong) 100%)}.color-input-wrapper[data-mode=dark] input[type=color]{background-color:var(--input-bg);border-color:var(--input-border)}.export-section{position:sticky;bottom:0;background-color:var(--bg-primary);padding:12px 16px;border-top:1px solid var(--border-color);box-shadow:0 -2px 10px var(--shadow-color);z-index:10;margin-top:auto}.button-group{display:flex;gap:8px}.share-button{flex:1;padding:8px 16px;background-color:var(--button-bg);color:var(--text-primary);border:none;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500;font-size:13px;display:flex;justify-content:center;align-items:center;font-family:Fira Sans,sans-serif;position:relative}.share-button:hover{background-color:var(--button-hover)}.export-button{flex:2;padding:8px 16px;background-color:var(--accent-color);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500;font-size:13px;display:flex;justify-content:center;align-items:center;font-family:Fira Sans,sans-serif;position:relative}.export-button:hover{background-color:var(--accent-hover)}.sunset-control{display:flex;flex-direction:column;gap:8px;width:100%}.sunset-time-wrapper{position:relative;width:100%}.sunset-time-input{width:100%;padding:6px 30px 6px 12px;background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;font-size:14px;color:var(--text-primary);font-family:Fira Sans,sans-serif;transition:all .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:36px}.sunset-time-input::-webkit-calendar-picker-indicator{background-color:transparent;cursor:pointer;position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-tertiary)}.sunset-time-input::-moz-time-text{color:var(--text-primary)}.sunset-time-input::-moz-time-edit{color:var(--text-primary)}.sunset-time-input::-moz-time-edit-fields-wrapper{color:var(--text-primary)}.sunset-time-input::-moz-time-edit-text{color:var(--text-primary)}.sunset-time-input::-moz-time-edit-hour-field,.sunset-time-input::-moz-time-edit-minute-field,.sunset-time-input::-moz-time-edit-ampm-field{color:var(--text-primary)}.sunset-time-input::-webkit-datetime-edit{color:var(--text-primary)}.sunset-time-input::-webkit-datetime-edit-fields-wrapper{color:var(--text-primary)}.sunset-time-input::-webkit-datetime-edit-text{color:var(--text-primary)}.sunset-time-input::-webkit-datetime-edit-hour-field,.sunset-time-input::-webkit-datetime-edit-minute-field,.sunset-time-input::-webkit-datetime-edit-ampm-field{color:var(--text-primary)}.sunset-time-input:hover{border-color:var(--accent-color)}.sunset-time-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px var(--input-focus-shadow)}.sunset-time-input:disabled{opacity:.5;cursor:not-allowed}.color-input-hidden{opacity:0;position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer}.color-input-hidden:focus{outline:none}.inline-button{margin-left:10px;padding:3px 8px;font-size:11px;background-color:var(--button-bg);border:none;border-radius:3px;cursor:pointer;color:var(--text-primary);font-family:Fira Sans,sans-serif;font-weight:500;text-transform:none;letter-spacing:normal}.inline-button:hover{background-color:var(--button-hover)}.dropdown-container{display:flex;flex-direction:column;gap:2px;margin-bottom:4px}.dropdown-container:last-child{margin-bottom:0}.dropdown-container label{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px;font-size:13px;color:var(--text-secondary);font-weight:500}.dropdown-select,.emergency-phone-input{width:100%;padding:8px 10px;border-radius:4px;border:1px solid var(--input-border);background-color:var(--input-bg);font-size:14px;color:var(--text-primary);font-family:Fira Sans,sans-serif;-webkit-appearance:none;-moz-appearance:none;appearance:none}.dropdown-select{cursor:pointer;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 10px center;background-size:16px}.control-section.emergency-contact{margin-bottom:32px}@media (prefers-color-scheme: dark){.control-panel:not(.light-mode):not(.dark-mode) .dropdown-select{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f0f0f0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e")}}.control-panel.dark-mode .dropdown-select{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f0f0f0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e")}.dropdown-select:hover{border-color:var(--text-tertiary)}.dropdown-select:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px var(--input-focus-shadow)}.title-section{text-align:left;padding:16px;border-bottom:1px solid var(--border-color-light)}.app-title{font-size:20px;line-height:1.1em;margin:0;color:var(--text-primary);font-weight:600}.title-link{color:inherit;text-decoration:none;transition:color .2s ease}.title-link:hover{color:var(--accent-color)}.app-description{font-size:13px;color:var(--text-tertiary);gap:6px}.control-panel:has(.dark-mode) .app-title{color:#f0f0f0}.control-panel:has(.dark-mode) .app-description{color:silver}.coffee-link{display:inline;color:var(--accent-color);font-size:13px;font-weight:500;text-decoration:none}.coffee-link:hover{text-decoration:underline}.suggest-link{font-size:11px;color:var(--accent-color);text-decoration:none;font-weight:400;padding:3px 8px;background-color:var(--input-focus-shadow);border-radius:3px;transition:all .2s ease;display:flex;align-items:center}.suggest-link:after{content:"→";font-size:12px;margin-left:4px}.suggest-link:hover{background-color:var(--accent-color);text-decoration:underline}.segmented-control{display:flex;width:100%}.segmented-control-button{flex:1;padding:8px 6px;background-color:var(--button-bg);border:1px 0px solid var(--border-color);color:var(--text-secondary);font-size:12px;font-weight:500;font-family:Fira Sans,sans-serif;cursor:pointer;text-align:center;transition:all .2s;position:relative;border-radius:0}.segmented-control-button:first-child{border-radius:4px 0 0 4px}.segmented-control-button:last-child{border-radius:0 4px 4px 0}.segmented-control-button.selected{background-color:var(--accent-color);color:#fff;border-color:var(--accent-color);z-index:1}.segmented-control-button:hover:not(.selected){background-color:var(--button-hover)}.segmented-control-button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-color),0 0 0 4px var(--input-focus-shadow);position:relative;z-index:2}.segmented-control-button .padding-value{display:block;font-size:10px;opacity:.8;margin-top:2px}.toggle-container{display:flex;flex-direction:column;gap:5px}.toggle-label{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:13px;color:var(--text-secondary);cursor:pointer}.toggle-switch{position:relative;display:inline-block;width:40px;height:20px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background-color:var(--button-bg);transition:.4s;border-radius:20px}.toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:2px;bottom:2px;background-color:var(--bg-primary);transition:.4s;border-radius:50%}input:checked+.toggle-slider{background-color:var(--accent-color)}input:checked+.toggle-slider:before{transform:translate(20px)}.sidebar-close-button{width:auto;align-self:flex-end;background-color:var(--button-bg);color:var(--text-secondary);border:none;border-radius:4px;padding:8px 16px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:Fira Sans,sans-serif;display:flex;align-items:center;justify-content:center}.sidebar-close-button:hover{background-color:var(--button-hover);color:var(--text-primary)}.highlighted-performances{display:flex;flex-direction:column;gap:8px;margin-top:8px}.highlighted-performance{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background-color:var(--bg-secondary);border-radius:4px;border:1px solid var(--border-color-light);transition:all .2s ease}.highlighted-performance:hover{border-color:var(--border-color);background-color:var(--bg-primary)}.highlighted-performance-info{flex:1;min-width:0}.highlighted-performance-name{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.highlighted-performance-details{font-size:11px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.remove-highlight-button{background:none;border:none;color:var(--text-tertiary);font-size:18px;padding:4px 8px;cursor:pointer;margin-left:8px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.remove-highlight-button:hover{background-color:var(--button-bg);color:var(--text-primary)}@media (max-width: 768px){.control-section:has(.sidebar-close-button){display:none}.control-section.no-border{border-bottom:1px solid var(--border-color)}.sunset-time-input{font-size:16px;padding:8px 30px 8px 12px}.stage-selector{padding:0 48px}}.section-header-with-toggle{display:flex;justify-content:space-between;align-items:center}.section-header-with-toggle h3,.section-header-with-toggle .toggle-container{margin:0}:root{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--text-primary: #333;--text-secondary: #555;--text-tertiary: #666;--border-color: #e0e0e0;--border-color-light: rgba(0, 0, 0, .08);--accent-color: #4a90e2;--accent-hover: #3a7bc8;--button-bg: #e0e0e0;--button-hover: #d0d0d0;--input-bg: #ffffff;--input-border: #ddd;--input-focus-shadow: rgba(74, 144, 226, .2);--shadow-color: rgba(0, 0, 0, .05);--shadow-color-strong: rgba(0, 0, 0, .1);--gradient-overlay: rgba(255, 255, 255, .3);--gradient-overlay-dark: rgba(255, 255, 255, .1);--gradient-overlay-dark-strong: rgba(0, 0, 0, .1);--dropdown-chevron-color: #333}@media (prefers-color-scheme: dark){:root:not(.light-mode):not(.dark-mode){--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--text-primary: #f0f0f0;--text-secondary: #c0c0c0;--text-tertiary: #a0a0a0;--border-color: #404040;--border-color-light: rgba(255, 255, 255, .08);--button-bg: #404040;--button-hover: #505050;--input-bg: #2d2d2d;--input-border: #404040;--shadow-color: rgba(0, 0, 0, .2);--shadow-color-strong: rgba(0, 0, 0, .3);--gradient-overlay: rgba(255, 255, 255, .1);--gradient-overlay-dark: rgba(255, 255, 255, .05);--gradient-overlay-dark-strong: rgba(0, 0, 0, .2);--dropdown-chevron-color: #f0f0f0}}:root.light-mode{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--text-primary: #333;--text-secondary: #555;--text-tertiary: #666;--border-color: #e0e0e0;--border-color-light: rgba(0, 0, 0, .08);--button-bg: #e0e0e0;--button-hover: #d0d0d0;--input-bg: #ffffff;--input-border: #ddd;--shadow-color: rgba(0, 0, 0, .05);--shadow-color-strong: rgba(0, 0, 0, .1);--gradient-overlay: rgba(255, 255, 255, .3);--gradient-overlay-dark: rgba(255, 255, 255, .1);--gradient-overlay-dark-strong: rgba(0, 0, 0, .1);--dropdown-chevron-color: #333}:root.dark-mode{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--text-primary: #f0f0f0;--text-secondary: #c0c0c0;--text-tertiary: #a0a0a0;--border-color: #404040;--border-color-light: rgba(255, 255, 255, .08);--button-bg: #404040;--button-hover: #505050;--input-bg: #2d2d2d;--input-border: #404040;--shadow-color: rgba(0, 0, 0, .2);--shadow-color-strong: rgba(0, 0, 0, .3);--gradient-overlay: rgba(255, 255, 255, .1);--gradient-overlay-dark: rgba(255, 255, 255, .05);--gradient-overlay-dark-strong: rgba(0, 0, 0, .2);--dropdown-chevron-color: #f0f0f0}@font-face{font-family:Fira Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnPKreSxf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnPKreQhf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnPKreShf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnPKreRRf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnPKreSRf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnPKreSBf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnPKreRhf6Xl7Glw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5VvmojLazX3dGTP.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5Vvk4jLazX3dGTP.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5Vvm4jLazX3dGTP.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5VvlIjLazX3dGTP.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5VvmIjLazX3dGTP.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5VvmYjLazX3dGTP.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5Vvl4jLazX3dA.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnZKveSxf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnZKveQhf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnZKveShf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnZKveRRf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnZKveSRf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnZKveSBf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnZKveRhf6Xl7Glw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnSKzeSxf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnSKzeQhf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnSKzeShf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnSKzeRRf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnSKzeSRf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnSKzeSBf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnSKzeRhf6Xl7Glw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnLK3eSxf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnLK3eQhf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnLK3eShf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnLK3eRRf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnLK3eSRf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnLK3eSBf6Xl7Gl3LX.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnLK3eRhf6Xl7Glw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Chivo;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_vB_en2rTN33AiKMJd7E.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chivo;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_vB_enmrTN33AiKMJd7E.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chivo;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_vB_ekGrTN33AiKMJ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Fira Sans,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);margin:0;min-height:100%}html,body{height:100dvh;overflow-y:auto}#root{height:100%;width:100%;margin:0;padding:0;overflow-y:auto}.app-container{width:100%;height:100dvh;margin:0;padding:0}.three-column-layout{display:flex;height:100%;width:100%;margin:0;padding:0}.control-column{background-color:var(--bg-primary);overflow-y:auto;width:100%}.left-panel{flex:0 0 280px}.right-panel{flex:0 0 280px;position:relative}.right-panel.hidden{display:none}.right-panel.visible{display:block}.preview-column{display:flex;justify-content:center;background-color:#eaeaea;align-items:center;padding:0}.schedule-container{height:95dvh;width:round(up,95dvh * 9 / 20,1px);max-height:95dvh;max-width:round(up,95dvh * 9 / 20,1px);aspect-ratio:9 / 20;background-color:#fff;box-shadow:0 4px 8px #0000001a;overflow:hidden;position:relative;margin:0 auto;container-type:inline-size;contain:layout size}.sidebar-toggle-button{position:absolute;top:12px;right:16px;z-index:20;background-color:var(--button-bg);color:var(--text-secondary);border:none;border-radius:4px;padding:8px 16px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:Fira Sans,sans-serif;display:flex;justify-content:center;align-items:center}.sidebar-toggle-button:before{content:"⚙";margin-right:8px;font-size:16px;color:var(--text-secondary)}.sidebar-toggle-button:hover{background-color:var(--button-hover)}.sidebar-toggle-button.hidden{transform:translate(300px);opacity:0;pointer-events:none}.mobile-export-container{display:none;position:fixed;bottom:0;left:0;right:0;padding:12px 16px;background-color:var(--bg-primary);border-top:1px solid var(--border-color);box-shadow:0 -2px 10px var(--shadow-color);z-index:1000}.mobile-export-container .button-group{display:flex;gap:8px}.mobile-export-container .share-button{flex:1;padding:8px 16px;background-color:var(--button-bg);color:var(--text-primary);border:none;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500;font-size:13px;display:flex;justify-content:center;align-items:center;font-family:Fira Sans,sans-serif;position:relative}.mobile-export-container .share-button:hover{background-color:var(--button-hover)}.mobile-export-container .export-button{flex:2;padding:8px 16px;background-color:var(--accent-color);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500;font-size:13px;display:flex;justify-content:center;align-items:center;font-family:Fira Sans,sans-serif;position:relative}.mobile-export-container .export-button:hover{background-color:var(--accent-hover)}.desktop-only{display:block}@media (max-width: 768px){html,body,#root{height:auto;overflow-y:auto;padding-bottom:70px}.app-container{height:auto;overflow-y:auto;min-height:100%;position:relative}.three-column-layout{flex-direction:column;height:auto;overflow:visible}.control-column{position:relative;width:100%;height:auto;left:auto;top:auto;bottom:auto;overflow-y:visible;position:static}.left-panel,.right-panel{width:100%}.right-panel{padding-top:0;margin-top:0;border-top:1px solid var(--border-color);display:block!important;transform:none!important;visibility:visible!important}.mobile-export-container{display:block}.desktop-only{display:none!important}.preview-column{margin-left:0;height:auto;padding:20px;min-height:auto;display:flex;justify-content:center}.schedule-container{height:95vh;width:round(up,95vh * 9 / 20,1px);max-height:95vh;max-width:round(up,95vh * 9 / 20,1px)}}@media (orientation: landscape) and (max-width: 768px){.control-column{height:40%}.preview-column{height:60%}}@media (min-width: 769px){.three-column-layout{display:flex;flex-direction:row;height:100dvh;width:100%;overflow:hidden}.control-column{overflow-y:auto;height:100%}.left-panel{flex:0 0 280px}.right-panel{flex:0 0 280px;order:3;max-width:280px;overflow:hidden;transition:max-width .3s ease-in-out,padding .3s ease-in-out,margin .3s ease-in-out,border .3s ease-in-out,flex-basis .3s ease-in-out}.right-panel.hidden{flex-basis:0;max-width:0;padding-left:0;padding-right:0;margin-left:0;margin-right:0;border-left-width:0;border-right-width:0;display:flex}.right-panel.visible{display:flex;flex-basis:280px;max-width:280px}.preview-column{flex:1 1 0;display:flex;justify-content:center;align-items:center;height:100%;overflow-y:auto;overflow-x:hidden;padding:20px;position:relative;order:1}.schedule-container{max-height:100%}.sidebar-toggle-button{position:absolute;top:12px;right:16px;z-index:20}.mobile-export-container{display:none}}
