diff --git a/static/chapters_editor/chapters-editor.css b/static/chapters_editor/chapters-editor.css index c30c308e..caaa7d31 100644 --- a/static/chapters_editor/chapters-editor.css +++ b/static/chapters_editor/chapters-editor.css @@ -1 +1 @@ -#chapters-editor-root{@keyframes pulse{0%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}to{opacity:.7;transform:scale(1)}}}#chapters-editor-root .video-player-container{position:relative;width:100%;background:#000;border-radius:.5rem;overflow:hidden;margin-bottom:1rem;aspect-ratio:16/9;-webkit-user-select:none;-moz-user-select:none;user-select:none}#chapters-editor-root .video-player-container video{width:100%;height:100%;cursor:pointer;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-user-select:none;-moz-user-select:none;user-select:none}@supports (-webkit-touch-callout: none){#chapters-editor-root .video-player-container video{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}}#chapters-editor-root .play-pause-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;background-color:#0009;border-radius:50%;opacity:0;transition:opacity .3s;pointer-events:none}#chapters-editor-root .video-player-container:hover .play-pause-indicator{opacity:1}#chapters-editor-root .play-pause-indicator:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#chapters-editor-root .play-pause-indicator.play-icon:before{width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-left:25px solid white;margin-left:3px}#chapters-editor-root .play-pause-indicator.pause-icon:before{width:20px;height:25px;border-left:6px solid white;border-right:6px solid white}#chapters-editor-root .ios-first-play-indicator{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10}#chapters-editor-root .ios-play-message{color:#fff;font-size:1.2rem;text-align:center;padding:1rem;background:#000c;border-radius:.5rem;animation:pulse 2s infinite}#chapters-editor-root .video-controls{position:absolute;bottom:0;left:0;right:0;padding:.75rem;background:linear-gradient(transparent,#000000b3);opacity:0;transition:opacity .3s}#chapters-editor-root .video-player-container:hover .video-controls{opacity:1}#chapters-editor-root .video-current-time,#chapters-editor-root .video-duration{color:#fff;font-size:.875rem}#chapters-editor-root .video-time-display{display:flex;justify-content:space-between;margin-bottom:.5rem;color:#fff;font-size:.875rem}#chapters-editor-root .video-progress{position:relative;height:6px;background-color:#ffffff4d;border-radius:3px;cursor:pointer;margin:0 10px;touch-action:none;flex-grow:1}#chapters-editor-root .video-progress.dragging{height:8px}#chapters-editor-root .video-progress-fill{position:absolute;top:0;left:0;height:100%;background-color:red;border-radius:3px;pointer-events:none}#chapters-editor-root .video-scrubber{position:absolute;top:50%;transform:translate(-50%,-50%);width:16px;height:16px;background-color:red;border-radius:50%;cursor:grab;transition:transform .1s ease,width .1s ease,height .1s ease}#chapters-editor-root .video-progress.dragging .video-scrubber{transform:translate(-50%,-50%) scale(1.2);width:18px;height:18px;cursor:grabbing;box-shadow:0 0 8px #f009}@media (pointer: coarse){#chapters-editor-root .video-scrubber{width:20px;height:20px}#chapters-editor-root .video-progress.dragging .video-scrubber{width:24px;height:24px}#chapters-editor-root .video-scrubber:before{content:"";position:absolute;top:-10px;left:-10px;right:-10px;bottom:-10px}}#chapters-editor-root .video-controls-buttons{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}#chapters-editor-root .mute-button,#chapters-editor-root .fullscreen-button{min-width:auto;color:#fff;background:none;border:none;cursor:pointer;padding:.25rem;transition:transform .2s}#chapters-editor-root .mute-button:hover,#chapters-editor-root .fullscreen-button:hover{transform:scale(1.1)}#chapters-editor-root .mute-button svg,#chapters-editor-root .fullscreen-button svg{width:1.25rem;height:1.25rem}#chapters-editor-root .video-time-tooltip{position:absolute;top:-30px;background-color:#000000b3;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-family:monospace;pointer-events:none;z-index:1000;white-space:nowrap;box-shadow:0 2px 4px #0000004d}#chapters-editor-root .video-time-tooltip:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(0,0,0,.7)}#chapters-editor-root{@keyframes modal-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes success-pop{0%{transform:scale(0);opacity:0}70%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}@keyframes error-pop{0%{transform:scale(0);opacity:0}70%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}}#chapters-editor-root .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}#chapters-editor-root .modal-container{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;animation:modal-fade-in .3s ease-out}#chapters-editor-root .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}#chapters-editor-root .modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#333}#chapters-editor-root .modal-close-button{background:none;border:none;cursor:pointer;color:#666;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s}#chapters-editor-root .modal-close-button:hover{color:#000}#chapters-editor-root .modal-content{padding:20px;color:#333;font-size:1rem;line-height:1.5;max-height:400px;overflow-y:auto}#chapters-editor-root .modal-actions{display:flex;justify-content:flex-end;padding:16px 20px;border-top:1px solid #eee;gap:12px}#chapters-editor-root .modal-button{padding:8px 16px;border-radius:4px;font-weight:500;cursor:pointer;transition:all .2s;border:none}#chapters-editor-root .modal-button-primary{background-color:#06c;color:#fff}#chapters-editor-root .modal-button-primary:hover{background-color:#05a}#chapters-editor-root .modal-button-secondary{background-color:#f0f0f0;color:#333}#chapters-editor-root .modal-button-secondary:hover{background-color:#e0e0e0}#chapters-editor-root .modal-button-danger{background-color:#dc3545;color:#fff}#chapters-editor-root .modal-button-danger:hover{background-color:#bd2130}#chapters-editor-root .modal-message{margin-bottom:16px;font-size:1rem}#chapters-editor-root .modal-spinner{display:flex;align-items:center;justify-content:center;margin:20px 0}#chapters-editor-root .spinner{border:4px solid rgba(0,0,0,.1);border-radius:50%;border-top:4px solid #0066cc;width:30px;height:30px;animation:spin 1s linear infinite}#chapters-editor-root .modal-success-icon{display:flex;justify-content:center;margin-bottom:16px;color:#28a745;font-size:2rem}#chapters-editor-root .modal-success-icon svg{width:60px;height:60px;color:#4caf50;animation:success-pop .5s ease-out}#chapters-editor-root .modal-error-icon{display:flex;justify-content:center;margin-bottom:16px;color:#dc3545;font-size:2rem}#chapters-editor-root .modal-error-icon svg{width:60px;height:60px;color:#f44336;animation:error-pop .5s ease-out}#chapters-editor-root .modal-choices{display:flex;flex-direction:column;gap:10px;margin-top:20px}#chapters-editor-root .modal-choice-button{padding:12px 16px;border:none;border-radius:4px;background-color:#06c;text-align:center;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;font-weight:500;text-decoration:none;color:#fff}#chapters-editor-root .modal-choice-button:hover{background-color:#05a;transform:translateY(-1px);box-shadow:0 2px 5px #0000001a}#chapters-editor-root .modal-choice-button svg{margin-right:8px}#chapters-editor-root .success-link{background-color:#4caf50}#chapters-editor-root .success-link:hover{background-color:#3d8b40}#chapters-editor-root .centered-choice{margin:0 auto;width:auto;min-width:220px;background-color:#06c;color:#fff}#chapters-editor-root .centered-choice:hover{background-color:#05a}@media (max-width: 480px){#chapters-editor-root .modal-container{width:95%}#chapters-editor-root .modal-actions{flex-direction:column}#chapters-editor-root .modal-button{width:100%}}#chapters-editor-root .error-message{color:#f44336;font-weight:500;background-color:#f443361a;padding:10px;border-radius:4px;border-left:4px solid #f44336;margin-top:10px}#chapters-editor-root .redirect-message{color:#555;font-size:.95rem;padding:0;margin:0}#chapters-editor-root .countdown{font-weight:700;color:#06c;font-size:1.1rem}#chapters-editor-root{@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}}#chapters-editor-root .timeline-container-card{background-color:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 1px 2px #0000000d}#chapters-editor-root .timeline-header{margin-bottom:.75rem;display:flex;justify-content:space-between;align-items:center}#chapters-editor-root .timeline-title{font-size:.875rem;font-weight:500;color:var(--foreground, #333)}#chapters-editor-root .timeline-title-text{font-weight:700}#chapters-editor-root .current-time{font-size:.875rem;color:var(--foreground, #333)}#chapters-editor-root .time-code{font-family:monospace;background-color:#f3f4f6;padding:0 .5rem;border-radius:.25rem}#chapters-editor-root .duration-time{font-size:.875rem;color:var(--foreground, #333)}#chapters-editor-root .timeline-scroll-container{position:relative;overflow:visible!important}#chapters-editor-root .timeline-container{position:relative;min-width:100%;background-color:#fafbfc;height:70px;border-radius:.25rem;overflow:visible!important}#chapters-editor-root .timeline-marker{position:absolute;height:82px;width:2px;background-color:#000;transform:translate(-50%);z-index:50;pointer-events:none}#chapters-editor-root .timeline-marker-head{position:absolute;top:-6px;left:50%;transform:translate(-50%);width:16px;height:16px;background-color:#ef4444;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;pointer-events:auto;z-index:51}#chapters-editor-root .timeline-marker-drag{position:absolute;bottom:-12px;left:50%;transform:translate(-50%);width:16px;height:16px;background-color:#4b5563;border-radius:50%;cursor:grab;display:flex;align-items:center;justify-content:center;pointer-events:auto;z-index:51}#chapters-editor-root .timeline-marker-drag.dragging{cursor:grabbing;background-color:#374151}#chapters-editor-root .timeline-marker-head-icon{color:#fff;font-size:14px;font-weight:700;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}#chapters-editor-root .timeline-marker-drag-icon{color:#fff;font-size:12px;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform:rotate(90deg);display:inline-block}#chapters-editor-root .trim-line-marker{position:absolute;top:0;bottom:0;width:1px;background-color:#00000080;z-index:20}#chapters-editor-root .trim-handle{position:absolute;width:10px;height:20px;background-color:#000;cursor:ew-resize}#chapters-editor-root .trim-handle.left{right:0;top:10px;border-radius:3px 0 0 3px}#chapters-editor-root .trim-handle.right{left:0;top:10px;border-radius:0 3px 3px 0}#chapters-editor-root .timeline-thumbnail{display:inline-block;height:70px;border-right:1px solid rgba(0,0,0,.03)}#chapters-editor-root .split-point{position:absolute;top:0;bottom:0;width:1px;background-color:#ff000080;z-index:15}#chapters-editor-root .clip-segment{position:absolute;height:70px;border-radius:4px;z-index:10;border:2px solid rgba(0,0,0,.15);cursor:pointer}#chapters-editor-root .clip-segment:hover{box-shadow:0 0 0 2px #0000004d;border-color:#0006;background-color:#f0f0f0cc!important}#chapters-editor-root .clip-segment.selected{box-shadow:0 0 0 2px #3b82f6b3;border-color:#3b82f6e6}#chapters-editor-root .clip-segment.selected:hover{background-color:#f0f8ffd9!important}#chapters-editor-root .clip-segment-info{position:absolute;bottom:0;left:0;right:0;padding:.4rem;background-color:#0006;color:#fff;opacity:1;transition:background-color .2s;line-height:1.3}#chapters-editor-root .clip-segment:hover .clip-segment-info{background-color:#00000080}#chapters-editor-root .clip-segment.selected .clip-segment-info{background-color:#3b82f680}#chapters-editor-root .clip-segment.selected:hover .clip-segment-info{background-color:#3b82f666}#chapters-editor-root .clip-segment-name{font-weight:700;font-size:12px}#chapters-editor-root .clip-segment-time,#chapters-editor-root .clip-segment-duration{font-size:10px}#chapters-editor-root .clip-segment-handle{position:absolute;top:0;bottom:0;width:6px;background-color:#0003;cursor:ew-resize}#chapters-editor-root .clip-segment-handle:hover{background-color:#0006}#chapters-editor-root .clip-segment-handle.left{left:0;border-radius:2px 0 0 2px}#chapters-editor-root .clip-segment-handle.right{right:0;border-radius:0 2px 2px 0}@media (pointer: coarse){#chapters-editor-root .clip-segment-handle{width:14px;background-color:#0006}#chapters-editor-root .clip-segment-handle:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:20px;background-color:#fffc;border-radius:1px}#chapters-editor-root .clip-segment-handle.left:after{box-shadow:-2px 0 #00000080}#chapters-editor-root .clip-segment-handle.right:after{box-shadow:2px 0 #00000080}#chapters-editor-root .clip-segment-handle:active{background-color:#0009}#chapters-editor-root .timeline-marker{height:85px}#chapters-editor-root .timeline-marker-head{width:24px;height:24px;top:-13px}#chapters-editor-root .timeline-marker-drag{width:24px;height:24px;bottom:-18px}#chapters-editor-root .timeline-marker-head.dragging{width:28px;height:28px;top:-15px}}#chapters-editor-root .segment-tooltip,#chapters-editor-root .empty-space-tooltip{position:absolute;background-color:#fff;border-radius:4px;box-shadow:0 2px 8px #0000004d;padding:.5rem;z-index:1000;min-width:150px;text-align:center;pointer-events:auto;top:-100px!important;transform:translateY(-10px)}#chapters-editor-root .segment-tooltip:after,#chapters-editor-root .empty-space-tooltip:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid white}#chapters-editor-root .segment-tooltip:before,#chapters-editor-root .empty-space-tooltip:before{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid rgba(0,0,0,.1);z-index:-1}#chapters-editor-root .tooltip-time{font-weight:600;font-size:.875rem;margin-bottom:.5rem;color:#333}#chapters-editor-root .tooltip-actions{display:flex;justify-content:center;gap:.5rem}#chapters-editor-root .tooltip-action-btn{background-color:#f3f4f6;border:none;border-radius:.25rem;padding:.375rem;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#4b5563;min-width:20px!important}#chapters-editor-root .tooltip-action-btn:hover{background-color:#e5e7eb;color:#111827}#chapters-editor-root .tooltip-action-btn.delete{color:#ef4444}#chapters-editor-root .tooltip-action-btn.delete:hover{background-color:#fee2e2}#chapters-editor-root .tooltip-action-btn.new-segment{padding:.375rem .5rem}#chapters-editor-root .tooltip-action-btn.new-segment .tooltip-btn-text{margin-left:.25rem;font-size:.75rem}#chapters-editor-root .tooltip-action-btn svg{width:1rem;height:1rem}#chapters-editor-root .timeline-controls{display:flex;align-items:center;justify-content:space-between;margin-top:.75rem}#chapters-editor-root .time-navigation{display:none;align-items:center;gap:.5rem}#chapters-editor-root .time-nav-label{font-size:.875rem;font-weight:500}#chapters-editor-root .time-input{border:1px solid #d1d5db;border-radius:.25rem;padding:.25rem .5rem;width:8rem;font-size:.875rem}#chapters-editor-root .time-button-group{display:flex}#chapters-editor-root .time-button{background-color:#e5e7eb;color:#000;padding:.25rem .5rem;font-size:.875rem;border:none;cursor:pointer;margin-right:.5rem}#chapters-editor-root .time-button:hover{background-color:#d1d5db}#chapters-editor-root .time-button:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}#chapters-editor-root .time-button:last-child{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}#chapters-editor-root .controls-right{display:flex;align-items:center;gap:.5rem;margin-left:auto}#chapters-editor-root .zoom-dropdown-container{position:relative;z-index:100;display:none}#chapters-editor-root .zoom-button{background-color:#374151;color:#fff;border:none;border-radius:.25rem;padding:.25rem .75rem;font-size:.875rem;display:flex;align-items:center;cursor:pointer}#chapters-editor-root .zoom-button:hover{background-color:#1f2937}#chapters-editor-root .zoom-button svg{margin-left:.25rem}#chapters-editor-root .zoom-dropdown{position:absolute;top:100%;left:0;margin-top:.25rem;width:9rem;background-color:#374151;color:#fff;border-radius:.25rem;box-shadow:0 4px 6px -1px #0000001a;z-index:50;max-height:300px;overflow-y:auto}#chapters-editor-root .zoom-option{padding:.25rem .75rem;cursor:pointer}#chapters-editor-root .zoom-option:hover{background-color:#4b5563}#chapters-editor-root .zoom-option.selected{background-color:#6b7280;display:flex;align-items:center}#chapters-editor-root .zoom-option svg{margin-right:.25rem}#chapters-editor-root .save-buttons-row{display:flex;align-items:center;gap:.5rem;margin:0;flex-wrap:nowrap}#chapters-editor-root .save-button,#chapters-editor-root .save-copy-button,#chapters-editor-root .save-segments-button{color:#fff;background:#06c;border-radius:.25rem;font-size:.75rem;padding:.25rem .5rem;cursor:pointer;border:none;white-space:nowrap;transition:background-color .2s;min-width:-moz-fit-content;min-width:fit-content}#chapters-editor-root .save-button:hover,#chapters-editor-root .save-copy-button:hover,#chapters-editor-root .save-segments-button:hover{background-color:#0056b3}@media (max-width: 576px){#chapters-editor-root .save-buttons-row{width:100%;justify-content:space-between;gap:.5rem}#chapters-editor-root .save-button,#chapters-editor-root .save-copy-button,#chapters-editor-root .save-segments-button{flex:1;font-size:.7rem;padding:.25rem .35rem}}@media (max-width: 480px){#chapters-editor-root .save-button,#chapters-editor-root .save-copy-button,#chapters-editor-root .save-segments-button{font-size:.675rem;padding:.25rem}#chapters-editor-root .controls-right,#chapters-editor-root .controls-right button{margin:0}}#chapters-editor-root .modal-success-content,#chapters-editor-root .modal-error-content{display:flex;flex-direction:column;align-items:center;padding:1rem;text-align:center;padding:0;margin:0}#chapters-editor-root .modal-success-icon,#chapters-editor-root .modal-error-icon{margin-bottom:1rem}#chapters-editor-root .modal-success-icon svg{color:#4caf50;animation:fadeIn .5s ease-in-out}#chapters-editor-root .modal-error-icon svg{color:#f44336;animation:fadeIn .5s ease-in-out}#chapters-editor-root .success-link{background-color:#4caf50;color:#fff;transition:background-color .3s}#chapters-editor-root .success-link:hover{background-color:#388e3c}#chapters-editor-root .error-message{color:#f44336;font-weight:500}#chapters-editor-root .modal-spinner{display:flex;justify-content:center;margin:2rem 0}#chapters-editor-root .spinner{width:50px;height:50px;border:5px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#06c;animation:spin 1s ease-in-out infinite}#chapters-editor-root .text-center{text-align:center}#chapters-editor-root .modal-message{margin-bottom:1rem;line-height:1.5}#chapters-editor-root .modal-choice-button{display:flex;align-items:center;justify-content:center;padding:.75rem 1.25rem;background-color:#06c;color:#fff;border-radius:4px;text-decoration:none;margin:0 auto;cursor:pointer;font-weight:500;gap:.5rem;border:none;transition:background-color .3s}#chapters-editor-root .modal-choice-button:hover{background-color:#0056b3}#chapters-editor-root .modal-choice-button svg{flex-shrink:0}#chapters-editor-root .centered-choice{margin:0 auto;min-width:180px}.mobile-timeline-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:50;display:flex;justify-content:center;align-items:center;border-radius:.5rem;pointer-events:none}.mobile-timeline-message{background-color:#000c;border-radius:8px;padding:15px 25px;text-align:center;max-width:80%;animation:pulse 2s infinite}.mobile-timeline-message p{color:#fff;font-size:16px;margin:0 0 15px;font-weight:500}.mobile-play-icon{width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-left:25px solid white;margin:0 auto}@keyframes pulse{0%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}to{opacity:.7;transform:scale(1)}}.segments-playback-mode .tooltip-time-btn,.segments-playback-mode .tooltip-action-btn.play,.segments-playback-mode .tooltip-action-btn.pause{opacity:1;cursor:pointer}.segments-playback-mode .tooltip-time-btn[disabled],.segments-playback-mode .tooltip-action-btn[disabled]{opacity:.5!important;cursor:not-allowed!important}.segments-playback-mode [data-tooltip][disabled]:hover:before,.segments-playback-mode [data-tooltip][disabled]:hover:after{opacity:1!important;visibility:visible!important}.segments-playback-message{display:flex;align-items:center;background-color:#3b82f61a;color:#3b82f6;padding:6px 12px;border-radius:4px;font-weight:600;font-size:.875rem;animation:pulse 2s infinite}.segments-playback-message svg{height:1.25rem;width:1.25rem;margin-right:.5rem;color:#3b82f6}.two-row-tooltip{display:flex;flex-direction:column;background-color:#fff;padding:6px;border-radius:4px;box-shadow:0 2px 8px #00000026;position:relative;z-index:3000}.tooltip-time-btn[data-tooltip="Decrease by 100ms"],.tooltip-time-btn[data-tooltip="Increase by 100ms"]{display:none!important}.tooltip-row{display:flex;justify-content:space-between;align-items:center;gap:3px}.tooltip-row:first-child{margin-bottom:6px}.tooltip-time-btn{background-color:#f0f0f0!important;border:none!important;border-radius:4px!important;padding:4px 8px!important;font-size:.75rem!important;font-weight:500!important;color:#333!important;cursor:pointer!important;transition:background-color .2s!important;min-width:20px!important}.tooltip-time-btn:hover{background-color:#e0e0e0!important}.tooltip-time-display{font-family:monospace!important;font-size:.875rem!important;font-weight:600!important;color:#333!important;padding:4px 6px!important;background-color:#f7f7f7!important;border-radius:4px!important;min-width:100px!important;text-align:center!important;overflow:hidden!important}.tooltip-time-display.disabled{pointer-events:none!important;cursor:not-allowed!important;opacity:.6!important;user-select:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important}.tooltip-time-btn.disabled[data-tooltip]:hover:before,.tooltip-time-btn.disabled[data-tooltip]:hover:after,.tooltip-action-btn.disabled[data-tooltip]:hover:before,.tooltip-action-btn.disabled[data-tooltip]:hover:after{opacity:1!important;visibility:visible!important}.tooltip-actions{display:flex;justify-content:space-between;align-items:center;gap:3px;position:relative;z-index:2500}.tooltip-action-btn{background-color:#f3f4f6;border:none;border-radius:4px;padding:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#4b5563;width:26px;height:26px;min-width:20px!important;position:relative}.tooltip-action-btn[data-tooltip]:before{content:attr(data-tooltip);position:absolute;height:30px;top:35px;left:50%;transform:translate(-50%);margin-left:0;background-color:#000000d9;color:#fff;text-align:left;padding:6px 12px;border-radius:4px;box-shadow:0 2px 8px #0003;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:2500;pointer-events:none}.tooltip-action-btn[data-tooltip]:after{content:"";position:absolute;top:35px;left:50%;transform:translate(-50%);border-width:4px;border-style:solid;border-color:rgba(0,0,0,.85) transparent transparent transparent;margin-left:0;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:2500;pointer-events:none}@media (hover: hover) and (pointer: fine){.tooltip-action-btn[data-tooltip]:hover:before,.tooltip-action-btn[data-tooltip]:hover:after{opacity:1;visibility:visible}}@media (pointer: coarse){.tooltip-action-btn[data-tooltip]:before,.tooltip-action-btn[data-tooltip]:after{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;content:none!important}}.tooltip-action-btn:hover{background-color:#e5e7eb;color:#111827}.tooltip-action-btn.delete{color:#ef4444}.tooltip-action-btn.delete:hover{background-color:#fee2e2}.tooltip-action-btn.play{color:#10b981}.tooltip-action-btn.play:hover{background-color:#d1fae5}.tooltip-action-btn.pause{color:#3b82f6}.tooltip-action-btn.pause:hover{background-color:#dbeafe}.tooltip-action-btn.play-from-start{color:#4f46e5}.tooltip-action-btn.play-from-start:hover{background-color:#e0e7ff}.tooltip-action-btn svg{width:16px;height:16px}.tooltip-action-btn.new-segment{width:auto;height:auto;padding:6px 10px;display:flex;flex-direction:row;color:#10b981}.tooltip-action-btn.new-segment:hover{background-color:#d1fae5}.tooltip-action-btn.new-segment .tooltip-btn-text{margin-left:6px;font-size:.75rem;white-space:nowrap}.tooltip-action-btn.disabled{opacity:.5;cursor:not-allowed;background-color:#f3f4f6}.tooltip-action-btn.disabled:hover{background-color:#f3f4f6;color:#9ca3af}.tooltip-action-btn.disabled svg{color:#9ca3af}.tooltip-action-btn.disabled .tooltip-btn-text{color:#9ca3af}.tooltip-action-btn.pause.disabled{color:#9ca3af!important;opacity:.5;cursor:not-allowed}.tooltip-action-btn.pause.disabled:hover{background-color:#f3f4f6!important;color:#9ca3af!important}.tooltip-action-btn.play.disabled{color:#9ca3af!important;opacity:.5;cursor:not-allowed}.tooltip-action-btn.play.disabled:hover{background-color:#f3f4f6!important;color:#9ca3af!important}.tooltip-time-btn.disabled{opacity:.5!important;cursor:not-allowed!important;background-color:#f3f4f6!important;color:#9ca3af!important}.tooltip-time-btn.disabled:hover{background-color:#f3f4f6!important;color:#9ca3af!important}@media (max-width: 768px){.two-row-tooltip{padding:4px}.tooltip-row:first-child{margin-bottom:4px}.tooltip-time-btn{min-width:20px!important;font-size:.7rem!important;padding:3px 6px!important}.tooltip-time-display{font-size:.8rem!important;padding:3px 4px!important;min-width:90px!important}.tooltip-action-btn{width:24px;height:24px;padding:4px}.tooltip-action-btn.new-segment{padding:4px 8px}.tooltip-action-btn svg{width:14px;height:14px}.tooltip-action-btn[data-tooltip]:before{min-width:100px;font-size:11px;padding:4px 8px;height:24px;top:33px}.tooltip-action-btn[data-tooltip]:after{top:33px}}#chapters-editor-root{@keyframes bluePulse{0%{box-shadow:0 0 #3b82f666}50%{box-shadow:0 0 0 8px #3b82f600}to{box-shadow:0 0 #3b82f600}}@keyframes pulse{0%{opacity:.8}50%{opacity:1}to{opacity:.8}}}#chapters-editor-root .editing-tools-container{background-color:#fff;border-radius:.5rem;padding:1rem;margin-bottom:2.5rem;box-shadow:0 1px 2px #0000000d}#chapters-editor-root .flex-container{display:flex;justify-content:space-between;align-items:center;position:relative;gap:15px;width:100%}#chapters-editor-root .flex-container.single-row{flex-wrap:nowrap}#chapters-editor-root .full-text{display:inline}#chapters-editor-root .short-text{display:none}#chapters-editor-root .reset-text{display:inline}#chapters-editor-root .button-group{display:flex;align-items:center}#chapters-editor-root .button-group.play-buttons-group{gap:.75rem;justify-content:flex-start;flex:0 0 auto}#chapters-editor-root .button-group.secondary{gap:.75rem;align-items:center;justify-content:flex-end;margin-left:auto}#chapters-editor-root .button-group button{display:flex;align-items:center;color:#333;background:none;border:none;cursor:pointer;min-width:auto}#chapters-editor-root .button-group button:hover:not(:disabled){color:inherit}#chapters-editor-root .button-group button:disabled{opacity:.5;cursor:not-allowed}#chapters-editor-root .button-group button svg{height:1.25rem;width:1.25rem;margin-right:.25rem}#chapters-editor-root .divider{border-right:1px solid #d1d5db;height:1.5rem;margin:0 .5rem}#chapters-editor-root .play-button,#chapters-editor-root .preview-button{font-weight:600;display:flex;align-items:center;position:relative;overflow:hidden;min-width:80px;justify-content:center;font-size:.875rem!important}#chapters-editor-root .play-button.greyed-out{opacity:.5;cursor:not-allowed}#chapters-editor-root .segments-button.highlighted-stop{background-color:#3b82f61a;color:#3b82f6;border:1px solid #3b82f6;animation:bluePulse 2s infinite}#chapters-editor-root .play-button:hover:not(:disabled),#chapters-editor-root .preview-button:hover:not(:disabled){color:inherit!important;transform:none!important;font-size:.875rem!important;width:auto!important;background:none!important}#chapters-editor-root .play-button svg,#chapters-editor-root .preview-button svg{height:1.5rem;width:1.5rem;flex-shrink:0}#chapters-editor-root .button-text{margin-left:.25rem}@media (max-width: 992px){#chapters-editor-root .button-group.secondary .button-text{display:none}}@media (max-width: 768px){#chapters-editor-root .flex-container.single-row{justify-content:space-between}#chapters-editor-root .button-group{gap:.5rem}#chapters-editor-root .preview-button,#chapters-editor-root .play-button{font-size:.875rem!important}}@media (max-width: 640px){#chapters-editor-root .editing-tools-container{padding:.75rem;overflow-x:hidden}#chapters-editor-root .preview-button{min-width:auto}#chapters-editor-root .full-text{display:none}#chapters-editor-root .short-text{display:inline;margin-left:.15rem}#chapters-editor-root .reset-text{display:none}#chapters-editor-root .button-group.play-buttons-group{flex:initial;justify-content:flex-start;flex-shrink:0}#chapters-editor-root .button-group.secondary{flex:initial;justify-content:flex-end;flex-shrink:0}#chapters-editor-root .button-group button{padding:.375rem;min-width:auto}#chapters-editor-root .button-group button svg{height:1.125rem;width:1.125rem;margin-right:.125rem}}@media (max-width: 576px){#chapters-editor-root .flex-container.single-row{justify-content:space-between;flex-wrap:nowrap;gap:10px}#chapters-editor-root .button-group.play-buttons-group{justify-content:flex-start;flex:0 0 auto}#chapters-editor-root .button-group.secondary{justify-content:flex-end;margin-left:auto}#chapters-editor-root .button-group button{padding:.25rem}#chapters-editor-root .divider{margin:0 .25rem}}@media (max-width: 480px){#chapters-editor-root .editing-tools-container{padding:.5rem}#chapters-editor-root .flex-container.single-row{gap:8px}#chapters-editor-root .button-group.play-buttons-group,#chapters-editor-root .button-group.secondary{gap:.25rem}#chapters-editor-root .divider{display:none}#chapters-editor-root .button-group button{padding:.125rem}#chapters-editor-root .button-group button svg{height:1rem;width:1rem;margin-right:0}#chapters-editor-root .button-text,#chapters-editor-root .reset-text{display:none}}@media (max-width: 640px) and (orientation: portrait){#chapters-editor-root .editing-tools-container{width:100%;box-sizing:border-box}#chapters-editor-root .flex-container.single-row{width:100%;padding:0;margin:0}#chapters-editor-root .button-group{max-width:50%}#chapters-editor-root .button-group.play-buttons-group{max-width:60%}#chapters-editor-root .button-group.secondary{max-width:40%}}@media (hover: hover) and (pointer: fine){#chapters-editor-root [data-tooltip]{position:relative}#chapters-editor-root [data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:5px;background-color:#000c;color:#fff;text-align:center;padding:5px 10px;border-radius:3px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1000;pointer-events:none}#chapters-editor-root [data-tooltip]:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:rgba(0,0,0,.8) transparent transparent transparent;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none}#chapters-editor-root [data-tooltip]:hover:before,#chapters-editor-root [data-tooltip]:hover:after{opacity:1;visibility:visible}}@media (pointer: coarse){#chapters-editor-root [data-tooltip]:before,#chapters-editor-root [data-tooltip]:after{display:none!important;content:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}}#chapters-editor-root .clip-segments-container{margin-top:1rem;background-color:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 1px 2px #0000000d}#chapters-editor-root .clip-segments-title{font-size:.875rem;font-weight:500;color:var(--foreground, #333);margin-bottom:.75rem}#chapters-editor-root .segment-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem;border:1px solid #e5e7eb;border-radius:.25rem;margin-bottom:.5rem;transition:box-shadow .2s ease}#chapters-editor-root .segment-item:hover{box-shadow:0 4px 6px -1px #0000001a}#chapters-editor-root .segment-content{display:flex;align-items:center}#chapters-editor-root .segment-thumbnail{width:4rem;height:2.25rem;background-size:cover;background-position:center;border-radius:.25rem;margin-right:.75rem;box-shadow:0 0 0 1px #ffffff4d}#chapters-editor-root .segment-info{display:flex;flex-direction:column}#chapters-editor-root .segment-title{font-weight:500;font-size:.875rem;color:#000}#chapters-editor-root .segment-time{font-size:.75rem;color:#000}#chapters-editor-root .segment-duration{font-size:.75rem;margin-top:.25rem;display:inline-block;background-color:#f3f4f6;padding:0 .5rem;border-radius:.25rem;color:#000}#chapters-editor-root .segment-actions{display:flex;align-items:center;gap:.5rem}#chapters-editor-root .delete-button{padding:.375rem;color:#4b5563;background-color:#e5e7eb;border-radius:9999px;border:none;cursor:pointer;transition:background-color .2s,color .2s;min-width:auto}#chapters-editor-root .delete-button:hover{color:#000;background-color:#d1d5db}#chapters-editor-root .delete-button svg{height:1rem;width:1rem}#chapters-editor-root .empty-message{padding:1rem;text-align:center;color:#333333b3}#chapters-editor-root .segment-color-1{background-color:#3b82f626}#chapters-editor-root .segment-color-2{background-color:#10b98126}#chapters-editor-root .segment-color-3{background-color:#f59e0b26}#chapters-editor-root .segment-color-4{background-color:#ef444426}#chapters-editor-root .segment-color-5{background-color:#8b5cf626}#chapters-editor-root .segment-color-6{background-color:#ec489926}#chapters-editor-root .segment-color-7{background-color:#06b6d426}#chapters-editor-root .segment-color-8{background-color:#facc1526}.mobile-play-prompt-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.mobile-play-prompt{background-color:#fff;width:90%;max-width:400px;border-radius:12px;padding:25px;box-shadow:0 4px 20px #00000040;text-align:center}.mobile-play-prompt h3{margin:0 0 15px;font-size:20px;color:#333;font-weight:600}.mobile-play-prompt p{margin:0 0 15px;font-size:16px;color:#444;line-height:1.5}.mobile-prompt-instructions{margin:20px 0;text-align:left;background-color:#f8f9fa;padding:15px;border-radius:8px}.mobile-prompt-instructions p{margin:0 0 8px;font-size:15px;font-weight:500}.mobile-prompt-instructions ol{margin:0;padding-left:22px}.mobile-prompt-instructions li{margin-bottom:8px;font-size:14px;color:#333}.mobile-play-button{background-color:#007bff;color:#fff;border:none;border-radius:8px;padding:12px 25px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s;margin-top:5px;min-height:44px;min-width:200px}.mobile-play-button:hover{background-color:#0069d9}.mobile-play-button:active{background-color:#0062cc;transform:scale(.98)}@supports (-webkit-touch-callout: none){.mobile-play-button{padding:14px 25px}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{border-color:hsl(var(--border))}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.inline{display:inline}.flex{display:flex}.hidden{display:none}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-6xl{max-width:72rem}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-4{gap:1rem}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.bg-background{background-color:hsl(var(--background))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.text-center{text-align:center}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.paused{animation-play-state:paused}:root{--foreground: 20 14.3% 4.1%;--muted: 60 4.8% 95.9%;--muted-foreground: 25 5.3% 44.7%;--popover: 0 0% 100%;--popover-foreground: 20 14.3% 4.1%;--card: 0 0% 100%;--card-foreground: 20 14.3% 4.1%;--border: 20 5.9% 90%;--input: 20 5.9% 90%;--primary: 207 90% 54%;--primary-foreground: 211 100% 99%;--secondary: 30 84% 54%;--secondary-foreground: 60 9.1% 97.8%;--accent: 60 4.8% 95.9%;--accent-foreground: 24 9.8% 10%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 60 9.1% 97.8%;--ring: 20 14.3% 4.1%;--radius: .5rem}.video-player{position:relative;width:100%;background-color:#000;overflow:hidden;border-radius:.5rem}.video-controls{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:1rem;display:flex;flex-direction:column}.video-current-time{color:#fff;font-weight:500}.video-progress{position:relative;height:4px;background-color:#ffffff4d;border-radius:2px;margin-bottom:1rem}.video-progress-fill{position:absolute;left:0;top:0;height:100%;background-color:hsl(var(--primary));border-radius:2px}.video-scrubber{position:absolute;width:12px;height:12px;margin-left:-6px;background-color:#fff;border-radius:50%;top:-4px}.video-player-container{position:relative;overflow:hidden}.play-pause-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;border-radius:50%;background-color:#00000080;z-index:20;opacity:0;transition:opacity .2s ease;pointer-events:none;background-position:center;background-repeat:no-repeat}.play-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='36' height='36' fill='white'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E")}.pause-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='36' height='36' fill='white'%3E%3Cpath d='M6 19h4V5H6v14zm8-14v14h4V5h-4z'/%3E%3C/svg%3E")}.video-player-container:hover .play-pause-indicator{opacity:1}.timeline-scroll-container{height:6rem;border-radius:.375rem;overflow-x:auto;overflow-y:hidden;margin-bottom:.75rem;background-color:#eee;position:relative}.timeline-container{position:relative;background-color:#eee;height:6rem;width:100%;cursor:pointer;transition:width .3s ease}.timeline-marker{position:absolute;top:-10px;height:calc(100% + 10px);width:2px;background-color:red;z-index:100;pointer-events:none;box-shadow:0 0 4px #ff000080}.trim-line-marker{position:absolute;top:0;bottom:0;width:2px;background-color:#007bffe6;z-index:10}.trim-handle{width:8px;background-color:#6c757de6;position:absolute;top:0;bottom:0;cursor:ew-resize;z-index:15}.trim-handle.left{left:-4px}.trim-handle.right{right:-4px}.timeline-thumbnail{height:100%;border-right:1px solid rgba(0,0,0,.1);position:relative;display:inline-block;background-size:cover;background-position:center}.split-point{position:absolute;width:2px;background-color:#6c757de6;top:0;bottom:0;z-index:5}.clip-segment{position:absolute;height:95%;top:0;border-radius:4px;background-size:cover;background-position:center;background-blend-mode:soft-light;box-shadow:0 2px 8px #0003;overflow:hidden;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:box-shadow .2s,transform .1s;z-index:15}.clip-segment:nth-child(odd),.segment-color-1,.segment-color-3,.segment-color-5,.segment-color-7{background-color:transparent;border:2px solid rgba(0,123,255,.9)}.clip-segment:nth-child(2n),.segment-color-2,.segment-color-4,.segment-color-6,.segment-color-8{background-color:transparent;border:2px solid rgba(108,117,125,.9)}.clip-segment:hover{box-shadow:0 4px 12px #0000004d;transform:translateY(-1px);filter:brightness(1.1)}.clip-segment:active{cursor:grabbing;box-shadow:0 2px 6px #0000004d;transform:translateY(0)}.clip-segment.selected{border-width:3px;box-shadow:0 4px 12px #0006;z-index:25;filter:brightness(1.2)}.clip-segment-info{background-color:#e2e6eae6;color:#000;padding:6px 8px;font-size:.7rem;position:absolute;top:0;left:0;width:100%;border-radius:4px 4px 0 0;z-index:2;display:flex;flex-direction:column;gap:2px}.clip-segment-name{font-weight:700;color:#000}.clip-segment-time{font-size:.65rem;color:#000}.clip-segment-duration{font-size:.65rem;color:#000;background:#b3d9ff66;padding:1px 4px;border-radius:2px;display:inline-block;margin-top:2px}.clip-segment-handle{position:absolute;width:8px;top:0;bottom:0;background-color:#6c757de6;cursor:ew-resize;z-index:20;display:flex;align-items:center;justify-content:center}.clip-segment-handle:after{content:"↔";color:#fff;font-size:12px;text-shadow:0 0 2px rgba(0,0,0,.8)}.clip-segment-handle.left{left:0}.clip-segment-handle.right{right:0}.clip-segment-handle:hover{background-color:#007bffe6;width:10px}input[type=range]{-webkit-appearance:none;height:6px;background:#e0e0e0;border-radius:3px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;height:16px;width:16px;border-radius:50%;background:#007bffe6;cursor:pointer}[data-tooltip]{position:relative;cursor:pointer}[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;background-color:#000c;color:#fff;padding:5px 10px;border-radius:4px;font-size:.8rem;white-space:nowrap;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none}[data-tooltip]:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:rgba(0,0,0,.8) transparent transparent transparent;margin-bottom:0;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none}@media (hover: hover) and (pointer: fine){[data-tooltip]:hover:before,[data-tooltip]:hover:after{opacity:1;visibility:visible}}@media (pointer: coarse){[data-tooltip]:before,[data-tooltip]:after{display:none!important;content:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}}button[disabled][data-tooltip]:before,button[disabled][data-tooltip]:after{opacity:.5}.tooltip-action-btn{position:relative}.tooltip-action-btn[data-tooltip]:before,.tooltip-action-btn[data-tooltip]:after{opacity:0;visibility:hidden;position:absolute;pointer-events:none;transition:all .3s ease}.tooltip-action-btn[data-tooltip]:before{content:attr(data-tooltip);background-color:#000c;color:#fff;font-size:12px;padding:4px 8px;border-radius:3px;white-space:nowrap;bottom:-35px;left:50%;transform:translate(-50%);z-index:9999}.tooltip-action-btn[data-tooltip]:after{content:"";border-width:5px;border-style:solid;border-color:transparent transparent rgba(0,0,0,.8) transparent;bottom:-15px;left:50%;transform:translate(-50%);z-index:9999}@media (hover: hover) and (pointer: fine){.tooltip-action-btn:hover[data-tooltip]:before,.tooltip-action-btn:hover[data-tooltip]:after{opacity:1;visibility:visible}}.segment-tooltip{background-color:#b3d9fff2;color:#000;border-radius:4px;padding:6px;min-width:140px;z-index:1000;box-shadow:0 3px 10px #0003}.segment-tooltip:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid rgba(179,217,255,.95)}.tooltip-time{font-size:.85rem;font-weight:700;text-align:center;margin-bottom:6px;color:#000}.tooltip-actions{display:flex;justify-content:space-between;gap:5px;position:relative}.tooltip-action-btn{background-color:#007bff33;border:none;border-radius:3px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:6px;transition:background-color .2s;min-width:20px!important}.tooltip-action-btn:hover{background-color:#007bff66}.tooltip-action-btn svg{width:100%;height:100%;stroke:currentColor}.tooltip-action-btn.set-in svg,.tooltip-action-btn.set-out svg{width:100%;height:100%;margin:0 auto;fill:currentColor;stroke:none}.empty-space-tooltip{background-color:#fff;border-radius:6px;box-shadow:0 2px 8px #00000026;padding:8px;z-index:50;min-width:120px;text-align:center;position:relative}.empty-space-tooltip:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);border-width:8px 8px 0;border-style:solid;border-color:white transparent transparent}.tooltip-action-btn.new-segment{width:auto;padding:6px 10px;display:flex;align-items:center;gap:5px}.tooltip-btn-text{font-size:.8rem;white-space:nowrap;color:#000}.icon-new-segment{width:20px;height:20px}.zoom-dropdown-container{position:relative}.zoom-button{display:flex;align-items:center;gap:6px;background-color:#6c757dcc;color:#fff;border:none;border-radius:4px;padding:8px 12px;font-weight:500;cursor:pointer;transition:background-color .2s}.zoom-button:hover{background-color:#6c757d}.zoom-dropdown{background-color:#fff;border-radius:4px;box-shadow:0 2px 10px #00000026;max-height:300px;overflow-y:auto}.zoom-option{padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:5px}.zoom-option:hover{background-color:#007bff1a}.zoom-option.selected{background-color:#007bff33;font-weight:500}.save-button,.save-copy-button,.save-segments-button{background-color:#007bffcc;color:#fff;border:none;border-radius:4px;padding:8px 12px;font-weight:500;cursor:pointer;transition:background-color .2s}.save-button:hover,.save-copy-button:hover{background-color:#007bff}.save-copy-button{background-color:#6c757dcc}.save-copy-button:hover{background-color:#6c757d}.time-nav-label{font-weight:500;font-size:.9rem}.time-input{padding:6px 10px;border-radius:4px;border:1px solid #ccc;width:150px;font-family:monospace}.time-button-group{display:flex;gap:5px}.time-button{background-color:#6c757dcc;color:#fff;border:none;border-radius:4px;padding:6px 8px;font-size:.8rem;cursor:pointer;transition:background-color .2s}.time-button:hover{background-color:#6c757d}.timeline-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:12px;background-color:#f5f5f5;border-radius:6px;margin-top:15px}.time-navigation{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.controls-right{display:flex;align-items:center;gap:10px}@media (max-width: 768px){.timeline-controls{flex-direction:column;align-items:flex-start;gap:15px}.controls-right{margin-top:10px;width:100%;justify-content:flex-start;text-align:center;align-items:center;justify-content:center}}.timeline-header{display:flex;align-items:center;gap:20px;margin-bottom:10px;flex-wrap:wrap}.timeline-title{font-weight:700;margin-right:20px}.timeline-title-text{font-size:1.1rem}.current-time,.duration-time{white-space:nowrap}.time-code{font-family:monospace;font-weight:500}@media (max-width: 480px){.timeline-header{flex-direction:column;align-items:flex-start;gap:8px}.time-navigation{width:100%;flex-direction:column;align-items:flex-start;gap:10px}.time-button-group{width:100%;display:flex;justify-content:space-between;margin-top:10px}.controls-right{flex-wrap:wrap;gap:8px}.save-button,.save-copy-button{margin-top:8px;width:100%}.zoom-dropdown-container{width:100%}.zoom-button{width:100%;justify-content:center}} +#chapters-editor-root{@keyframes pulse{0%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}to{opacity:.7;transform:scale(1)}}}#chapters-editor-root .video-player-container{position:relative;width:100%;background:#000;border-radius:.5rem;overflow:hidden;margin-bottom:1rem;aspect-ratio:16/9;-webkit-user-select:none;-moz-user-select:none;user-select:none}#chapters-editor-root .video-player-container video{width:100%;height:100%;cursor:pointer;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-user-select:none;-moz-user-select:none;user-select:none}@supports (-webkit-touch-callout: none){#chapters-editor-root .video-player-container video{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}}#chapters-editor-root .play-pause-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;background-color:#0009;border-radius:50%;opacity:0;transition:opacity .3s;pointer-events:none}#chapters-editor-root .video-player-container:hover .play-pause-indicator{opacity:1}#chapters-editor-root .play-pause-indicator:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#chapters-editor-root .play-pause-indicator.play-icon:before{width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-left:25px solid white;margin-left:3px}#chapters-editor-root .play-pause-indicator.pause-icon:before{width:20px;height:25px;border-left:6px solid white;border-right:6px solid white}#chapters-editor-root .ios-first-play-indicator{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10}#chapters-editor-root .ios-play-message{color:#fff;font-size:1.2rem;text-align:center;padding:1rem;background:#000c;border-radius:.5rem;animation:pulse 2s infinite}#chapters-editor-root .video-controls{position:absolute;bottom:0;left:0;right:0;padding:.75rem;background:linear-gradient(transparent,#000000b3);opacity:0;transition:opacity .3s}#chapters-editor-root .video-player-container:hover .video-controls{opacity:1}#chapters-editor-root .video-current-time,#chapters-editor-root .video-duration{color:#fff;font-size:.875rem}#chapters-editor-root .video-time-display{display:flex;justify-content:space-between;margin-bottom:.5rem;color:#fff;font-size:.875rem}#chapters-editor-root .video-progress{position:relative;height:6px;background-color:#ffffff4d;border-radius:3px;cursor:pointer;margin:0 10px;touch-action:none;flex-grow:1}#chapters-editor-root .video-progress.dragging{height:8px}#chapters-editor-root .video-progress-fill{position:absolute;top:0;left:0;height:100%;background-color:red;border-radius:3px;pointer-events:none}#chapters-editor-root .video-scrubber{position:absolute;top:50%;transform:translate(-50%,-50%);width:16px;height:16px;background-color:red;border-radius:50%;cursor:grab;transition:transform .1s ease,width .1s ease,height .1s ease}#chapters-editor-root .video-progress.dragging .video-scrubber{transform:translate(-50%,-50%) scale(1.2);width:18px;height:18px;cursor:grabbing;box-shadow:0 0 8px #f009}@media (pointer: coarse){#chapters-editor-root .video-scrubber{width:20px;height:20px}#chapters-editor-root .video-progress.dragging .video-scrubber{width:24px;height:24px}#chapters-editor-root .video-scrubber:before{content:"";position:absolute;top:-10px;left:-10px;right:-10px;bottom:-10px}}#chapters-editor-root .video-controls-buttons{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}#chapters-editor-root .mute-button,#chapters-editor-root .fullscreen-button{min-width:auto;color:#fff;background:none;border:none;cursor:pointer;padding:.25rem;transition:transform .2s}#chapters-editor-root .mute-button:hover,#chapters-editor-root .fullscreen-button:hover{transform:scale(1.1)}#chapters-editor-root .mute-button svg,#chapters-editor-root .fullscreen-button svg{width:1.25rem;height:1.25rem}#chapters-editor-root .video-time-tooltip{position:absolute;top:-30px;background-color:#000000b3;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-family:monospace;pointer-events:none;z-index:1000;white-space:nowrap;box-shadow:0 2px 4px #0000004d}#chapters-editor-root .video-time-tooltip:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(0,0,0,.7)}#chapters-editor-root{@keyframes modal-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes success-pop{0%{transform:scale(0);opacity:0}70%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}@keyframes error-pop{0%{transform:scale(0);opacity:0}70%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}}#chapters-editor-root .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}#chapters-editor-root .modal-container{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;animation:modal-fade-in .3s ease-out}#chapters-editor-root .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}#chapters-editor-root .modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#333}#chapters-editor-root .modal-close-button{background:none;border:none;cursor:pointer;color:#666;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s}#chapters-editor-root .modal-close-button:hover{color:#000}#chapters-editor-root .modal-content{padding:20px;color:#333;font-size:1rem;line-height:1.5;max-height:400px;overflow-y:auto}#chapters-editor-root .modal-actions{display:flex;justify-content:flex-end;padding:16px 20px;border-top:1px solid #eee;gap:12px}#chapters-editor-root .modal-button{padding:8px 16px;border-radius:4px;font-weight:500;cursor:pointer;transition:all .2s;border:none}#chapters-editor-root .modal-button-primary{background-color:#06c;color:#fff}#chapters-editor-root .modal-button-primary:hover{background-color:#05a}#chapters-editor-root .modal-button-secondary{background-color:#f0f0f0;color:#333}#chapters-editor-root .modal-button-secondary:hover{background-color:#e0e0e0}#chapters-editor-root .modal-button-danger{background-color:#dc3545;color:#fff}#chapters-editor-root .modal-button-danger:hover{background-color:#bd2130}#chapters-editor-root .modal-message{margin-bottom:16px;font-size:1rem}#chapters-editor-root .modal-spinner{display:flex;align-items:center;justify-content:center;margin:20px 0}#chapters-editor-root .spinner{border:4px solid rgba(0,0,0,.1);border-radius:50%;border-top:4px solid #0066cc;width:30px;height:30px;animation:spin 1s linear infinite}#chapters-editor-root .modal-success-icon{display:flex;justify-content:center;margin-bottom:16px;color:#28a745;font-size:2rem}#chapters-editor-root .modal-success-icon svg{width:60px;height:60px;color:#4caf50;animation:success-pop .5s ease-out}#chapters-editor-root .modal-error-icon{display:flex;justify-content:center;margin-bottom:16px;color:#dc3545;font-size:2rem}#chapters-editor-root .modal-error-icon svg{width:60px;height:60px;color:#f44336;animation:error-pop .5s ease-out}#chapters-editor-root .modal-choices{display:flex;flex-direction:column;gap:10px;margin-top:20px}#chapters-editor-root .modal-choice-button{padding:12px 16px;border:none;border-radius:4px;background-color:#06c;text-align:center;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;font-weight:500;text-decoration:none;color:#fff}#chapters-editor-root .modal-choice-button:hover{background-color:#05a;transform:translateY(-1px);box-shadow:0 2px 5px #0000001a}#chapters-editor-root .modal-choice-button svg{margin-right:8px}#chapters-editor-root .success-link{background-color:#4caf50}#chapters-editor-root .success-link:hover{background-color:#3d8b40}#chapters-editor-root .centered-choice{margin:0 auto;width:auto;min-width:220px;background-color:#06c;color:#fff}#chapters-editor-root .centered-choice:hover{background-color:#05a}@media (max-width: 480px){#chapters-editor-root .modal-container{width:95%}#chapters-editor-root .modal-actions{flex-direction:column}#chapters-editor-root .modal-button{width:100%}}#chapters-editor-root .error-message{color:#f44336;font-weight:500;background-color:#f443361a;padding:10px;border-radius:4px;border-left:4px solid #f44336;margin-top:10px}#chapters-editor-root .redirect-message{color:#555;font-size:.95rem;padding:0;margin:0}#chapters-editor-root .countdown{font-weight:700;color:#06c;font-size:1.1rem}#chapters-editor-root{@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}}#chapters-editor-root .timeline-container-card{background-color:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 1px 2px #0000000d}#chapters-editor-root .timeline-header{margin-bottom:.75rem;display:flex;justify-content:space-between;align-items:center}#chapters-editor-root .timeline-title{font-size:.875rem;font-weight:500;color:var(--foreground, #333)}#chapters-editor-root .timeline-title-text{font-weight:700}#chapters-editor-root .current-time{font-size:.875rem;color:var(--foreground, #333)}#chapters-editor-root .time-code{font-family:monospace;background-color:#f3f4f6;padding:0 .5rem;border-radius:.25rem}#chapters-editor-root .duration-time{font-size:.875rem;color:var(--foreground, #333)}#chapters-editor-root .timeline-scroll-container{position:relative;overflow:visible!important}#chapters-editor-root .timeline-container{position:relative;min-width:100%;background-color:#fafbfc;height:70px;border-radius:.25rem;overflow:visible!important}#chapters-editor-root .timeline-marker{position:absolute;height:82px;width:2px;background-color:#000;transform:translate(-50%);z-index:50;pointer-events:none}#chapters-editor-root .timeline-marker-head{position:absolute;top:-6px;left:50%;transform:translate(-50%);width:16px;height:16px;background-color:#ef4444;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;pointer-events:auto;z-index:51}#chapters-editor-root .timeline-marker-drag{position:absolute;bottom:-12px;left:50%;transform:translate(-50%);width:16px;height:16px;background-color:#4b5563;border-radius:50%;cursor:grab;display:flex;align-items:center;justify-content:center;pointer-events:auto;z-index:51}#chapters-editor-root .timeline-marker-drag.dragging{cursor:grabbing;background-color:#374151}#chapters-editor-root .timeline-marker-head-icon{color:#fff;font-size:14px;font-weight:700;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}#chapters-editor-root .timeline-marker-drag-icon{color:#fff;font-size:12px;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform:rotate(90deg);display:inline-block}#chapters-editor-root .trim-line-marker{position:absolute;top:0;bottom:0;width:1px;background-color:#00000080;z-index:20}#chapters-editor-root .trim-handle{position:absolute;width:10px;height:20px;background-color:#000;cursor:ew-resize}#chapters-editor-root .trim-handle.left{right:0;top:10px;border-radius:3px 0 0 3px}#chapters-editor-root .trim-handle.right{left:0;top:10px;border-radius:0 3px 3px 0}#chapters-editor-root .timeline-thumbnail{display:inline-block;height:70px;border-right:1px solid rgba(0,0,0,.03)}#chapters-editor-root .split-point{position:absolute;top:0;bottom:0;width:1px;background-color:#ff000080;z-index:15}#chapters-editor-root .clip-segment{position:absolute;height:70px;border-radius:4px;z-index:10;border:2px solid rgba(0,0,0,.15);cursor:pointer}#chapters-editor-root .clip-segment:hover{box-shadow:0 0 0 2px #0000004d;border-color:#0006;background-color:#f0f0f0cc!important}#chapters-editor-root .clip-segment.selected{box-shadow:0 0 0 2px #3b82f6b3;border-color:#3b82f6e6}#chapters-editor-root .clip-segment.selected:hover{background-color:#f0f8ffd9!important}#chapters-editor-root .clip-segment-info{position:absolute;bottom:0;left:0;right:0;padding:.4rem;background-color:#0006;color:#fff;opacity:1;transition:background-color .2s;line-height:1.3}#chapters-editor-root .clip-segment:hover .clip-segment-info{background-color:#00000080}#chapters-editor-root .clip-segment.selected .clip-segment-info{background-color:#3b82f680}#chapters-editor-root .clip-segment.selected:hover .clip-segment-info{background-color:#3b82f666}#chapters-editor-root .clip-segment-name{font-weight:700;font-size:12px}#chapters-editor-root .clip-segment-time,#chapters-editor-root .clip-segment-duration{font-size:10px}#chapters-editor-root .clip-segment-handle{position:absolute;top:0;bottom:0;width:6px;background-color:#0003;cursor:ew-resize}#chapters-editor-root .clip-segment-handle:hover{background-color:#0006}#chapters-editor-root .clip-segment-handle.left{left:0;border-radius:2px 0 0 2px}#chapters-editor-root .clip-segment-handle.right{right:0;border-radius:0 2px 2px 0}@media (pointer: coarse){#chapters-editor-root .clip-segment-handle{width:14px;background-color:#0006}#chapters-editor-root .clip-segment-handle:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:20px;background-color:#fffc;border-radius:1px}#chapters-editor-root .clip-segment-handle.left:after{box-shadow:-2px 0 #00000080}#chapters-editor-root .clip-segment-handle.right:after{box-shadow:2px 0 #00000080}#chapters-editor-root .clip-segment-handle:active{background-color:#0009}#chapters-editor-root .timeline-marker{height:85px}#chapters-editor-root .timeline-marker-head{width:24px;height:24px;top:-13px}#chapters-editor-root .timeline-marker-drag{width:24px;height:24px;bottom:-18px}#chapters-editor-root .timeline-marker-head.dragging{width:28px;height:28px;top:-15px}}#chapters-editor-root .segment-tooltip,#chapters-editor-root .empty-space-tooltip{position:absolute;background-color:#fff;border-radius:4px;box-shadow:0 2px 8px #0000004d;padding:.5rem;z-index:1000;min-width:150px;text-align:center;pointer-events:auto;top:-105px!important;transform:translateY(-10px)}#chapters-editor-root .segment-tooltip{top:-165px!important}#chapters-editor-root .segment-tooltip:after,#chapters-editor-root .empty-space-tooltip:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid white}#chapters-editor-root .segment-tooltip:before,#chapters-editor-root .empty-space-tooltip:before{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid rgba(0,0,0,.1);z-index:-1}#chapters-editor-root .tooltip-time{font-weight:600;font-size:.875rem;margin-bottom:.5rem;color:#333}#chapters-editor-root .tooltip-actions{display:flex;justify-content:center;gap:.5rem}#chapters-editor-root .tooltip-action-btn{background-color:#f3f4f6;border:none;border-radius:.25rem;padding:.375rem;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#4b5563;min-width:20px!important}#chapters-editor-root .tooltip-action-btn:hover{background-color:#e5e7eb;color:#111827}#chapters-editor-root .tooltip-action-btn.delete{color:#ef4444}#chapters-editor-root .tooltip-action-btn.delete:hover{background-color:#fee2e2}#chapters-editor-root .tooltip-action-btn.new-segment{padding:.375rem .5rem}#chapters-editor-root .tooltip-action-btn.new-segment .tooltip-btn-text{margin-left:.25rem;font-size:.75rem}#chapters-editor-root .tooltip-action-btn svg{width:1rem;height:1rem}#chapters-editor-root .timeline-controls{display:flex;align-items:center;justify-content:space-between;margin-top:.75rem}#chapters-editor-root .time-navigation{display:none;align-items:center;gap:.5rem}#chapters-editor-root .time-nav-label{font-size:.875rem;font-weight:500}#chapters-editor-root .time-input{border:1px solid #d1d5db;border-radius:.25rem;padding:.25rem .5rem;width:8rem;font-size:.875rem}#chapters-editor-root .time-button-group{display:flex}#chapters-editor-root .time-button{background-color:#e5e7eb;color:#000;padding:.25rem .5rem;font-size:.875rem;border:none;cursor:pointer;margin-right:.5rem}#chapters-editor-root .time-button:hover{background-color:#d1d5db}#chapters-editor-root .time-button:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}#chapters-editor-root .time-button:last-child{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}#chapters-editor-root .controls-right{display:flex;align-items:center;gap:.5rem;margin-left:auto}#chapters-editor-root .zoom-dropdown-container{position:relative;z-index:100;display:none}#chapters-editor-root .zoom-button{background-color:#374151;color:#fff;border:none;border-radius:.25rem;padding:.25rem .75rem;font-size:.875rem;display:flex;align-items:center;cursor:pointer}#chapters-editor-root .zoom-button:hover{background-color:#1f2937}#chapters-editor-root .zoom-button svg{margin-left:.25rem}#chapters-editor-root .zoom-dropdown{position:absolute;top:100%;left:0;margin-top:.25rem;width:9rem;background-color:#374151;color:#fff;border-radius:.25rem;box-shadow:0 4px 6px -1px #0000001a;z-index:50;max-height:300px;overflow-y:auto}#chapters-editor-root .zoom-option{padding:.25rem .75rem;cursor:pointer}#chapters-editor-root .zoom-option:hover{background-color:#4b5563}#chapters-editor-root .zoom-option.selected{background-color:#6b7280;display:flex;align-items:center}#chapters-editor-root .zoom-option svg{margin-right:.25rem}#chapters-editor-root .save-buttons-row{display:flex;align-items:center;gap:.5rem;margin:0;flex-wrap:nowrap}#chapters-editor-root .save-button,#chapters-editor-root .save-copy-button,#chapters-editor-root .save-segments-button{color:#fff;background:#06c;border-radius:.25rem;font-size:.75rem;padding:.25rem .5rem;cursor:pointer;border:none;white-space:nowrap;transition:background-color .2s;min-width:-moz-fit-content;min-width:fit-content}#chapters-editor-root .save-button:hover,#chapters-editor-root .save-copy-button:hover,#chapters-editor-root .save-segments-button:hover{background-color:#0056b3}@media (max-width: 576px){#chapters-editor-root .save-buttons-row{width:100%;justify-content:space-between;gap:.5rem}#chapters-editor-root .save-button,#chapters-editor-root .save-copy-button,#chapters-editor-root .save-segments-button{flex:1;font-size:.7rem;padding:.25rem .35rem}}@media (max-width: 480px){#chapters-editor-root .save-button,#chapters-editor-root .save-copy-button,#chapters-editor-root .save-segments-button{font-size:.675rem;padding:.25rem}#chapters-editor-root .controls-right,#chapters-editor-root .controls-right button{margin:0}}#chapters-editor-root .modal-success-content,#chapters-editor-root .modal-error-content{display:flex;flex-direction:column;align-items:center;padding:1rem;text-align:center;padding:0;margin:0}#chapters-editor-root .modal-success-icon,#chapters-editor-root .modal-error-icon{margin-bottom:1rem}#chapters-editor-root .modal-success-icon svg{color:#4caf50;animation:fadeIn .5s ease-in-out}#chapters-editor-root .modal-error-icon svg{color:#f44336;animation:fadeIn .5s ease-in-out}#chapters-editor-root .success-link{background-color:#4caf50;color:#fff;transition:background-color .3s}#chapters-editor-root .success-link:hover{background-color:#388e3c}#chapters-editor-root .error-message{color:#f44336;font-weight:500}#chapters-editor-root .modal-spinner{display:flex;justify-content:center;margin:2rem 0}#chapters-editor-root .spinner{width:50px;height:50px;border:5px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#06c;animation:spin 1s ease-in-out infinite}#chapters-editor-root .text-center{text-align:center}#chapters-editor-root .modal-message{margin-bottom:1rem;line-height:1.5}#chapters-editor-root .modal-choice-button{display:flex;align-items:center;justify-content:center;padding:.75rem 1.25rem;background-color:#06c;color:#fff;border-radius:4px;text-decoration:none;margin:0 auto;cursor:pointer;font-weight:500;gap:.5rem;border:none;transition:background-color .3s}#chapters-editor-root .modal-choice-button:hover{background-color:#0056b3}#chapters-editor-root .modal-choice-button svg{flex-shrink:0}#chapters-editor-root .centered-choice{margin:0 auto;min-width:180px}.mobile-timeline-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:50;display:flex;justify-content:center;align-items:center;border-radius:.5rem;pointer-events:none}.mobile-timeline-message{background-color:#000c;border-radius:8px;padding:15px 25px;text-align:center;max-width:80%;animation:pulse 2s infinite}.mobile-timeline-message p{color:#fff;font-size:16px;margin:0 0 15px;font-weight:500}.mobile-play-icon{width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-left:25px solid white;margin:0 auto}@keyframes pulse{0%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}to{opacity:.7;transform:scale(1)}}.segments-playback-mode .tooltip-time-btn,.segments-playback-mode .tooltip-action-btn.play,.segments-playback-mode .tooltip-action-btn.pause{opacity:1;cursor:pointer}.segments-playback-mode .tooltip-time-btn[disabled],.segments-playback-mode .tooltip-action-btn[disabled]{opacity:.5!important;cursor:not-allowed!important}.segments-playback-mode [data-tooltip][disabled]:hover:before,.segments-playback-mode [data-tooltip][disabled]:hover:after{opacity:1!important;visibility:visible!important}.segments-playback-message{display:flex;align-items:center;background-color:#3b82f61a;color:#3b82f6;padding:6px 12px;border-radius:4px;font-weight:600;font-size:.875rem;animation:pulse 2s infinite}.segments-playback-message svg{height:1.25rem;width:1.25rem;margin-right:.5rem;color:#3b82f6}.chapter-editor{background-color:#f8fafc;border:2px solid #3b82f6;border-radius:.5rem;padding:1rem;margin-bottom:1rem;transition:all .2s ease}.chapter-editor-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:.75rem;gap:1rem}.chapter-editor-title-section{display:flex;flex-direction:column;gap:.5rem;flex:1}.chapter-editor-header h4{margin:0;font-size:.875rem;font-weight:600;color:#1f2937}.chapter-editor-segment{font-size:.75rem;color:#6b7280;background-color:#e5e7eb;padding:.25rem .5rem;border-radius:.25rem;display:inline-block}.save-chapters-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.save-chapters-button:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px -1px #3b82f64d}.save-chapters-button.has-changes{background-color:#10b981;animation:pulse-green-chapters 2s infinite}.save-chapters-button.has-changes:hover{background-color:#059669}.save-chapters-button svg{width:1rem;height:1rem}@keyframes pulse-green-chapters{0%,to{background-color:#10b981}50%{background-color:#34d399}}.chapter-title-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}.chapter-title-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.chapter-title-input::-moz-placeholder{color:#9ca3af}.chapter-title-input::placeholder{color:#9ca3af}.chapter-editor-info{margin-top:.5rem;font-size:.75rem;color:#6b7280;font-style:italic}@media (max-width: 768px){.chapter-editor-header{flex-direction:column;gap:.75rem;align-items:stretch}.save-chapters-button{justify-content:center;align-self:stretch}.chapter-editor-segment{text-align:center}}.tooltip-chapter-editor{background-color:#fffffff2;border-radius:.375rem;pointer-events:auto}.tooltip-chapter-input{width:100%;padding:.5rem;border:2px solid #ccc;border-radius:.25rem;background-color:#fff;color:#000;font-size:.75rem;resize:none;outline:none;box-sizing:border-box;max-height:70px!important}.tooltip-chapter-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f64d}.tooltip-chapter-input::-moz-placeholder{color:#999}.tooltip-chapter-input::placeholder{color:#999}.two-row-tooltip{display:flex;flex-direction:column;background-color:#fff;padding:6px;border-radius:4px;box-shadow:0 2px 8px #00000026;position:relative;z-index:3000}.tooltip-time-btn[data-tooltip="Decrease by 100ms"],.tooltip-time-btn[data-tooltip="Increase by 100ms"]{display:none!important}.tooltip-row{display:flex;justify-content:space-between;align-items:center;gap:3px}.tooltip-row:first-child{margin-bottom:6px}.tooltip-time-btn{background-color:#f0f0f0!important;border:none!important;border-radius:4px!important;padding:4px 8px!important;font-size:.75rem!important;font-weight:500!important;color:#333!important;cursor:pointer!important;transition:background-color .2s!important;min-width:20px!important}.tooltip-time-btn:hover{background-color:#e0e0e0!important}.tooltip-time-display{font-family:monospace!important;font-size:.875rem!important;font-weight:600!important;color:#333!important;padding:4px 6px!important;background-color:#f7f7f7!important;border-radius:4px!important;min-width:100px!important;text-align:center!important;overflow:hidden!important}.tooltip-time-display.disabled{pointer-events:none!important;cursor:not-allowed!important;opacity:.6!important;user-select:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important}.tooltip-time-btn.disabled[data-tooltip]:hover:before,.tooltip-time-btn.disabled[data-tooltip]:hover:after,.tooltip-action-btn.disabled[data-tooltip]:hover:before,.tooltip-action-btn.disabled[data-tooltip]:hover:after{opacity:1!important;visibility:visible!important}.tooltip-actions{display:flex;justify-content:space-between;align-items:center;gap:3px;position:relative;z-index:2500}.tooltip-action-btn{background-color:#f3f4f6;border:none;border-radius:4px;padding:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#4b5563;width:26px;height:26px;min-width:20px!important;position:relative}.tooltip-action-btn[data-tooltip]:before{content:attr(data-tooltip);position:absolute;height:30px;top:35px;left:50%;transform:translate(-50%);margin-left:0;background-color:#000000d9;color:#fff;text-align:left;padding:6px 12px;border-radius:4px;box-shadow:0 2px 8px #0003;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:2500;pointer-events:none}.tooltip-action-btn[data-tooltip]:after{content:"";position:absolute;top:35px;left:50%;transform:translate(-50%);border-width:4px;border-style:solid;border-color:rgba(0,0,0,.85) transparent transparent transparent;margin-left:0;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:2500;pointer-events:none}@media (hover: hover) and (pointer: fine){.tooltip-action-btn[data-tooltip]:hover:before,.tooltip-action-btn[data-tooltip]:hover:after{opacity:1;visibility:visible}}@media (pointer: coarse){.tooltip-action-btn[data-tooltip]:before,.tooltip-action-btn[data-tooltip]:after{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;content:none!important}}.tooltip-action-btn:hover{background-color:#e5e7eb;color:#111827}.tooltip-action-btn.delete{color:#ef4444}.tooltip-action-btn.delete:hover{background-color:#fee2e2}.tooltip-action-btn.play{color:#10b981}.tooltip-action-btn.play:hover{background-color:#d1fae5}.tooltip-action-btn.pause{color:#3b82f6}.tooltip-action-btn.pause:hover{background-color:#dbeafe}.tooltip-action-btn.play-from-start{color:#4f46e5}.tooltip-action-btn.play-from-start:hover{background-color:#e0e7ff}.tooltip-action-btn svg{width:16px;height:16px}.tooltip-action-btn.new-segment{width:auto;height:auto;padding:6px 10px;display:flex;flex-direction:row;color:#10b981}.tooltip-action-btn.new-segment:hover{background-color:#d1fae5}.tooltip-action-btn.new-segment .tooltip-btn-text{margin-left:6px;font-size:.75rem;white-space:nowrap}.tooltip-action-btn.disabled{opacity:.5;cursor:not-allowed;background-color:#f3f4f6}.tooltip-action-btn.disabled:hover{background-color:#f3f4f6;color:#9ca3af}.tooltip-action-btn.disabled svg{color:#9ca3af}.tooltip-action-btn.disabled .tooltip-btn-text{color:#9ca3af}.tooltip-action-btn.pause.disabled{color:#9ca3af!important;opacity:.5;cursor:not-allowed}.tooltip-action-btn.pause.disabled:hover{background-color:#f3f4f6!important;color:#9ca3af!important}.tooltip-action-btn.play.disabled{color:#9ca3af!important;opacity:.5;cursor:not-allowed}.tooltip-action-btn.play.disabled:hover{background-color:#f3f4f6!important;color:#9ca3af!important}.tooltip-time-btn.disabled{opacity:.5!important;cursor:not-allowed!important;background-color:#f3f4f6!important;color:#9ca3af!important}.tooltip-time-btn.disabled:hover{background-color:#f3f4f6!important;color:#9ca3af!important}@media (max-width: 768px){.two-row-tooltip{padding:4px}.tooltip-row:first-child{margin-bottom:4px}.tooltip-time-btn{min-width:20px!important;font-size:.7rem!important;padding:3px 6px!important}.tooltip-time-display{font-size:.8rem!important;padding:3px 4px!important;min-width:90px!important}.tooltip-action-btn{width:24px;height:24px;padding:4px}.tooltip-action-btn.new-segment{padding:4px 8px}.tooltip-action-btn svg{width:14px;height:14px}.tooltip-action-btn[data-tooltip]:before{min-width:100px;font-size:11px;padding:4px 8px;height:24px;top:33px}.tooltip-action-btn[data-tooltip]:after{top:33px}}#chapters-editor-root{@keyframes bluePulse{0%{box-shadow:0 0 #3b82f666}50%{box-shadow:0 0 0 8px #3b82f600}to{box-shadow:0 0 #3b82f600}}@keyframes pulse{0%{opacity:.8}50%{opacity:1}to{opacity:.8}}}#chapters-editor-root .editing-tools-container{background-color:#fff;border-radius:.5rem;padding:1rem;margin-bottom:2.5rem;box-shadow:0 1px 2px #0000000d}#chapters-editor-root .flex-container{display:flex;justify-content:space-between;align-items:center;position:relative;gap:15px;width:100%}#chapters-editor-root .flex-container.single-row{flex-wrap:nowrap}#chapters-editor-root .full-text{display:inline}#chapters-editor-root .short-text{display:none}#chapters-editor-root .reset-text{display:inline}#chapters-editor-root .button-group{display:flex;align-items:center}#chapters-editor-root .button-group.play-buttons-group{gap:.75rem;justify-content:flex-start;flex:0 0 auto}#chapters-editor-root .button-group.secondary{gap:.75rem;align-items:center;justify-content:flex-end;margin-left:auto}#chapters-editor-root .button-group button{display:flex;align-items:center;color:#333;background:none;border:none;cursor:pointer;min-width:auto}#chapters-editor-root .button-group button:hover:not(:disabled){color:inherit}#chapters-editor-root .button-group button:disabled{opacity:.5;cursor:not-allowed}#chapters-editor-root .button-group button svg{height:1.25rem;width:1.25rem;margin-right:.25rem}#chapters-editor-root .divider{border-right:1px solid #d1d5db;height:1.5rem;margin:0 .5rem}#chapters-editor-root .play-button,#chapters-editor-root .preview-button{font-weight:600;display:flex;align-items:center;position:relative;overflow:hidden;min-width:80px;justify-content:center;font-size:.875rem!important}#chapters-editor-root .play-button.greyed-out{opacity:.5;cursor:not-allowed}#chapters-editor-root .segments-button.highlighted-stop{background-color:#3b82f61a;color:#3b82f6;border:1px solid #3b82f6;animation:bluePulse 2s infinite}#chapters-editor-root .play-button:hover:not(:disabled),#chapters-editor-root .preview-button:hover:not(:disabled){color:inherit!important;transform:none!important;font-size:.875rem!important;width:auto!important;background:none!important}#chapters-editor-root .play-button svg,#chapters-editor-root .preview-button svg{height:1.5rem;width:1.5rem;flex-shrink:0}#chapters-editor-root .button-text{margin-left:.25rem}@media (max-width: 992px){#chapters-editor-root .button-group.secondary .button-text{display:none}}@media (max-width: 768px){#chapters-editor-root .flex-container.single-row{justify-content:space-between}#chapters-editor-root .button-group{gap:.5rem}#chapters-editor-root .preview-button,#chapters-editor-root .play-button{font-size:.875rem!important}}@media (max-width: 640px){#chapters-editor-root .editing-tools-container{padding:.75rem;overflow-x:hidden}#chapters-editor-root .preview-button{min-width:auto}#chapters-editor-root .full-text{display:none}#chapters-editor-root .short-text{display:inline;margin-left:.15rem}#chapters-editor-root .reset-text{display:none}#chapters-editor-root .button-group.play-buttons-group{flex:initial;justify-content:flex-start;flex-shrink:0}#chapters-editor-root .button-group.secondary{flex:initial;justify-content:flex-end;flex-shrink:0}#chapters-editor-root .button-group button{padding:.375rem;min-width:auto}#chapters-editor-root .button-group button svg{height:1.125rem;width:1.125rem;margin-right:.125rem}}@media (max-width: 576px){#chapters-editor-root .flex-container.single-row{justify-content:space-between;flex-wrap:nowrap;gap:10px}#chapters-editor-root .button-group.play-buttons-group{justify-content:flex-start;flex:0 0 auto}#chapters-editor-root .button-group.secondary{justify-content:flex-end;margin-left:auto}#chapters-editor-root .button-group button{padding:.25rem}#chapters-editor-root .divider{margin:0 .25rem}}@media (max-width: 480px){#chapters-editor-root .editing-tools-container{padding:.5rem}#chapters-editor-root .flex-container.single-row{gap:8px}#chapters-editor-root .button-group.play-buttons-group,#chapters-editor-root .button-group.secondary{gap:.25rem}#chapters-editor-root .divider{display:none}#chapters-editor-root .button-group button{padding:.125rem}#chapters-editor-root .button-group button svg{height:1rem;width:1rem;margin-right:0}#chapters-editor-root .button-text,#chapters-editor-root .reset-text{display:none}}@media (max-width: 640px) and (orientation: portrait){#chapters-editor-root .editing-tools-container{width:100%;box-sizing:border-box}#chapters-editor-root .flex-container.single-row{width:100%;padding:0;margin:0}#chapters-editor-root .button-group{max-width:50%}#chapters-editor-root .button-group.play-buttons-group{max-width:60%}#chapters-editor-root .button-group.secondary{max-width:40%}}#chapters-editor-root{@keyframes pulse-green{0%,to{background-color:#10b981}50%{background-color:#34d399}}}@media (hover: hover) and (pointer: fine){#chapters-editor-root [data-tooltip]{position:relative}#chapters-editor-root [data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:5px;background-color:#000c;color:#fff;text-align:center;padding:5px 10px;border-radius:3px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1000;pointer-events:none}#chapters-editor-root [data-tooltip]:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:rgba(0,0,0,.8) transparent transparent transparent;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none}#chapters-editor-root [data-tooltip]:hover:before,#chapters-editor-root [data-tooltip]:hover:after{opacity:1;visibility:visible}}@media (pointer: coarse){#chapters-editor-root [data-tooltip]:before,#chapters-editor-root [data-tooltip]:after{display:none!important;content:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}}#chapters-editor-root .clip-segments-container{margin-top:1rem;background-color:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 1px 2px #0000000d}#chapters-editor-root .clip-segments-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}#chapters-editor-root .clip-segments-title{font-size:.875rem;font-weight:500;color:var(--foreground, #333);margin:0}#chapters-editor-root .save-chapters-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}#chapters-editor-root .save-chapters-button:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px -1px #3b82f64d}#chapters-editor-root .save-chapters-button.has-changes{background-color:#10b981;animation:pulse-green 2s infinite}#chapters-editor-root .save-chapters-button.has-changes:hover{background-color:#059669}#chapters-editor-root .save-chapters-button svg{width:1rem;height:1rem}#chapters-editor-root .chapter-editor{background-color:#f8fafc;border:2px solid #3b82f6;border-radius:.5rem;padding:1rem;margin-bottom:1rem;transition:all .2s ease}#chapters-editor-root .chapter-editor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}#chapters-editor-root .chapter-editor-header h4{margin:0;font-size:.875rem;font-weight:600;color:#1f2937}#chapters-editor-root .chapter-editor-segment{font-size:.75rem;color:#6b7280;background-color:#e5e7eb;padding:.25rem .5rem;border-radius:.25rem}#chapters-editor-root .chapter-title-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}#chapters-editor-root .chapter-title-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}#chapters-editor-root .chapter-title-input::-moz-placeholder{color:#9ca3af}#chapters-editor-root .chapter-title-input::placeholder{color:#9ca3af}#chapters-editor-root .chapter-editor-info{margin-top:.5rem;font-size:.75rem;color:#6b7280;font-style:italic}#chapters-editor-root .segment-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem;border:1px solid #e5e7eb;border-radius:.25rem;margin-bottom:.5rem;transition:all .2s ease}#chapters-editor-root .segment-item:hover{box-shadow:0 4px 6px -1px #0000001a}#chapters-editor-root .segment-item.selected{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;background-color:#3b82f60d}#chapters-editor-root .segment-content{display:flex;align-items:center}#chapters-editor-root .segment-thumbnail{width:4rem;height:2.25rem;background-size:cover;background-position:center;border-radius:.25rem;margin-right:.75rem;box-shadow:0 0 0 1px #ffffff4d}#chapters-editor-root .segment-info{display:flex;flex-direction:column}#chapters-editor-root .segment-title{font-weight:500;font-size:.875rem;color:#000}#chapters-editor-root .chapter-title{color:#1f2937;font-weight:600}#chapters-editor-root .default-title{color:#6b7280;font-style:italic}#chapters-editor-root .segment-time{font-size:.75rem;color:#000}#chapters-editor-root .segment-duration{font-size:.75rem;margin-top:.25rem;display:inline-block;background-color:#f3f4f6;padding:0 .5rem;border-radius:.25rem;color:#000}#chapters-editor-root .segment-actions{display:flex;align-items:center;gap:.5rem}#chapters-editor-root .delete-button{padding:.375rem;color:#4b5563;background-color:#e5e7eb;border-radius:9999px;border:none;cursor:pointer;transition:background-color .2s,color .2s;min-width:auto}#chapters-editor-root .delete-button:hover{color:#000;background-color:#d1d5db}#chapters-editor-root .delete-button svg{height:1rem;width:1rem}#chapters-editor-root .empty-message{padding:1rem;text-align:center;color:#333333b3}#chapters-editor-root .segment-color-1{background-color:#3b82f626}#chapters-editor-root .segment-color-2{background-color:#10b98126}#chapters-editor-root .segment-color-3{background-color:#f59e0b26}#chapters-editor-root .segment-color-4{background-color:#ef444426}#chapters-editor-root .segment-color-5{background-color:#8b5cf626}#chapters-editor-root .segment-color-6{background-color:#ec489926}#chapters-editor-root .segment-color-7{background-color:#06b6d426}#chapters-editor-root .segment-color-8{background-color:#facc1526}@media (max-width: 768px){#chapters-editor-root .clip-segments-header{flex-direction:column;gap:.75rem;align-items:stretch}#chapters-editor-root .save-chapters-button{justify-content:center}#chapters-editor-root .chapter-editor-header{flex-direction:column;gap:.5rem;align-items:flex-start}#chapters-editor-root .chapter-editor-segment{align-self:stretch;text-align:center}}.mobile-play-prompt-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.mobile-play-prompt{background-color:#fff;width:90%;max-width:400px;border-radius:12px;padding:25px;box-shadow:0 4px 20px #00000040;text-align:center}.mobile-play-prompt h3{margin:0 0 15px;font-size:20px;color:#333;font-weight:600}.mobile-play-prompt p{margin:0 0 15px;font-size:16px;color:#444;line-height:1.5}.mobile-prompt-instructions{margin:20px 0;text-align:left;background-color:#f8f9fa;padding:15px;border-radius:8px}.mobile-prompt-instructions p{margin:0 0 8px;font-size:15px;font-weight:500}.mobile-prompt-instructions ol{margin:0;padding-left:22px}.mobile-prompt-instructions li{margin-bottom:8px;font-size:14px;color:#333}.mobile-play-button{background-color:#007bff;color:#fff;border:none;border-radius:8px;padding:12px 25px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s;margin-top:5px;min-height:44px;min-width:200px}.mobile-play-button:hover{background-color:#0069d9}.mobile-play-button:active{background-color:#0062cc;transform:scale(.98)}@supports (-webkit-touch-callout: none){.mobile-play-button{padding:14px 25px}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{border-color:hsl(var(--border))}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.inline{display:inline}.flex{display:flex}.hidden{display:none}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-6xl{max-width:72rem}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-4{gap:1rem}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.bg-background{background-color:hsl(var(--background))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.text-center{text-align:center}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.paused{animation-play-state:paused}:root{--foreground: 20 14.3% 4.1%;--muted: 60 4.8% 95.9%;--muted-foreground: 25 5.3% 44.7%;--popover: 0 0% 100%;--popover-foreground: 20 14.3% 4.1%;--card: 0 0% 100%;--card-foreground: 20 14.3% 4.1%;--border: 20 5.9% 90%;--input: 20 5.9% 90%;--primary: 207 90% 54%;--primary-foreground: 211 100% 99%;--secondary: 30 84% 54%;--secondary-foreground: 60 9.1% 97.8%;--accent: 60 4.8% 95.9%;--accent-foreground: 24 9.8% 10%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 60 9.1% 97.8%;--ring: 20 14.3% 4.1%;--radius: .5rem}.video-player{position:relative;width:100%;background-color:#000;overflow:hidden;border-radius:.5rem}.video-controls{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:1rem;display:flex;flex-direction:column}.video-current-time{color:#fff;font-weight:500}.video-progress{position:relative;height:4px;background-color:#ffffff4d;border-radius:2px;margin-bottom:1rem}.video-progress-fill{position:absolute;left:0;top:0;height:100%;background-color:hsl(var(--primary));border-radius:2px}.video-scrubber{position:absolute;width:12px;height:12px;margin-left:-6px;background-color:#fff;border-radius:50%;top:-4px}.video-player-container{position:relative;overflow:hidden}.play-pause-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;border-radius:50%;background-color:#00000080;z-index:20;opacity:0;transition:opacity .2s ease;pointer-events:none;background-position:center;background-repeat:no-repeat}.play-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='36' height='36' fill='white'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E")}.pause-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='36' height='36' fill='white'%3E%3Cpath d='M6 19h4V5H6v14zm8-14v14h4V5h-4z'/%3E%3C/svg%3E")}.video-player-container:hover .play-pause-indicator{opacity:1}.timeline-scroll-container{height:6rem;border-radius:.375rem;overflow-x:auto;overflow-y:hidden;margin-bottom:.75rem;background-color:#eee;position:relative}.timeline-container{position:relative;background-color:#eee;height:6rem;width:100%;cursor:pointer;transition:width .3s ease}.timeline-marker{position:absolute;top:-10px;height:calc(100% + 10px);width:2px;background-color:red;z-index:100;pointer-events:none;box-shadow:0 0 4px #ff000080}.trim-line-marker{position:absolute;top:0;bottom:0;width:2px;background-color:#007bffe6;z-index:10}.trim-handle{width:8px;background-color:#6c757de6;position:absolute;top:0;bottom:0;cursor:ew-resize;z-index:15}.trim-handle.left{left:-4px}.trim-handle.right{right:-4px}.timeline-thumbnail{height:100%;border-right:1px solid rgba(0,0,0,.1);position:relative;display:inline-block;background-size:cover;background-position:center}.split-point{position:absolute;width:2px;background-color:#6c757de6;top:0;bottom:0;z-index:5}.clip-segment{position:absolute;height:95%;top:0;border-radius:4px;background-size:cover;background-position:center;background-blend-mode:soft-light;box-shadow:0 2px 8px #0003;overflow:hidden;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:box-shadow .2s,transform .1s;z-index:15}.clip-segment:nth-child(odd),.segment-color-1,.segment-color-3,.segment-color-5,.segment-color-7{background-color:transparent;border:2px solid rgba(0,123,255,.9)}.clip-segment:nth-child(2n),.segment-color-2,.segment-color-4,.segment-color-6,.segment-color-8{background-color:transparent;border:2px solid rgba(108,117,125,.9)}.clip-segment:hover{box-shadow:0 4px 12px #0000004d;transform:translateY(-1px);filter:brightness(1.1)}.clip-segment:active{cursor:grabbing;box-shadow:0 2px 6px #0000004d;transform:translateY(0)}.clip-segment.selected{border-width:3px;box-shadow:0 4px 12px #0006;z-index:25;filter:brightness(1.2)}.clip-segment-info{background-color:#e2e6eae6;color:#000;padding:6px 8px;font-size:.7rem;position:absolute;top:0;left:0;width:100%;border-radius:4px 4px 0 0;z-index:2;display:flex;flex-direction:column;gap:2px}.clip-segment-name{font-weight:700;color:#000}.clip-segment-time{font-size:.65rem;color:#000}.clip-segment-duration{font-size:.65rem;color:#000;background:#b3d9ff66;padding:1px 4px;border-radius:2px;display:inline-block;margin-top:2px}.clip-segment-handle{position:absolute;width:8px;top:0;bottom:0;background-color:#6c757de6;cursor:ew-resize;z-index:20;display:flex;align-items:center;justify-content:center}.clip-segment-handle:after{content:"↔";color:#fff;font-size:12px;text-shadow:0 0 2px rgba(0,0,0,.8)}.clip-segment-handle.left{left:0}.clip-segment-handle.right{right:0}.clip-segment-handle:hover{background-color:#007bffe6;width:10px}input[type=range]{-webkit-appearance:none;height:6px;background:#e0e0e0;border-radius:3px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;height:16px;width:16px;border-radius:50%;background:#007bffe6;cursor:pointer}[data-tooltip]{position:relative;cursor:pointer}[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;background-color:#000c;color:#fff;padding:5px 10px;border-radius:4px;font-size:.8rem;white-space:nowrap;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none}[data-tooltip]:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:rgba(0,0,0,.8) transparent transparent transparent;margin-bottom:0;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none}@media (hover: hover) and (pointer: fine){[data-tooltip]:hover:before,[data-tooltip]:hover:after{opacity:1;visibility:visible}}@media (pointer: coarse){[data-tooltip]:before,[data-tooltip]:after{display:none!important;content:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}}button[disabled][data-tooltip]:before,button[disabled][data-tooltip]:after{opacity:.5}.tooltip-action-btn{position:relative}.tooltip-action-btn[data-tooltip]:before,.tooltip-action-btn[data-tooltip]:after{opacity:0;visibility:hidden;position:absolute;pointer-events:none;transition:all .3s ease}.tooltip-action-btn[data-tooltip]:before{content:attr(data-tooltip);background-color:#000c;color:#fff;font-size:12px;padding:4px 8px;border-radius:3px;white-space:nowrap;bottom:-35px;left:50%;transform:translate(-50%);z-index:9999}.tooltip-action-btn[data-tooltip]:after{content:"";border-width:5px;border-style:solid;border-color:transparent transparent rgba(0,0,0,.8) transparent;bottom:-15px;left:50%;transform:translate(-50%);z-index:9999}@media (hover: hover) and (pointer: fine){.tooltip-action-btn:hover[data-tooltip]:before,.tooltip-action-btn:hover[data-tooltip]:after{opacity:1;visibility:visible}}.segment-tooltip{background-color:#b3d9fff2;color:#000;border-radius:4px;padding:6px;min-width:140px;z-index:1000;box-shadow:0 3px 10px #0003}.segment-tooltip:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid rgba(179,217,255,.95)}.tooltip-time{font-size:.85rem;font-weight:700;text-align:center;margin-bottom:6px;color:#000}.tooltip-actions{display:flex;justify-content:space-between;gap:5px;position:relative}.tooltip-action-btn{background-color:#007bff33;border:none;border-radius:3px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:6px;transition:background-color .2s;min-width:20px!important}.tooltip-action-btn:hover{background-color:#007bff66}.tooltip-action-btn svg{width:100%;height:100%;stroke:currentColor}.tooltip-action-btn.set-in svg,.tooltip-action-btn.set-out svg{width:100%;height:100%;margin:0 auto;fill:currentColor;stroke:none}.empty-space-tooltip{background-color:#fff;border-radius:6px;box-shadow:0 2px 8px #00000026;padding:8px;z-index:50;min-width:120px;text-align:center;position:relative}.empty-space-tooltip:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);border-width:8px 8px 0;border-style:solid;border-color:white transparent transparent}.tooltip-action-btn.new-segment{width:auto;padding:6px 10px;display:flex;align-items:center;gap:5px}.tooltip-btn-text{font-size:.8rem;white-space:nowrap;color:#000}.icon-new-segment{width:20px;height:20px}.zoom-dropdown-container{position:relative}.zoom-button{display:flex;align-items:center;gap:6px;background-color:#6c757dcc;color:#fff;border:none;border-radius:4px;padding:8px 12px;font-weight:500;cursor:pointer;transition:background-color .2s}.zoom-button:hover{background-color:#6c757d}.zoom-dropdown{background-color:#fff;border-radius:4px;box-shadow:0 2px 10px #00000026;max-height:300px;overflow-y:auto}.zoom-option{padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:5px}.zoom-option:hover{background-color:#007bff1a}.zoom-option.selected{background-color:#007bff33;font-weight:500}.save-button,.save-copy-button,.save-segments-button{background-color:#007bffcc;color:#fff;border:none;border-radius:4px;padding:8px 12px;font-weight:500;cursor:pointer;transition:background-color .2s}.save-button:hover,.save-copy-button:hover{background-color:#007bff}.save-copy-button{background-color:#6c757dcc}.save-copy-button:hover{background-color:#6c757d}.time-nav-label{font-weight:500;font-size:.9rem}.time-input{padding:6px 10px;border-radius:4px;border:1px solid #ccc;width:150px;font-family:monospace}.time-button-group{display:flex;gap:5px}.time-button{background-color:#6c757dcc;color:#fff;border:none;border-radius:4px;padding:6px 8px;font-size:.8rem;cursor:pointer;transition:background-color .2s}.time-button:hover{background-color:#6c757d}.timeline-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:12px;background-color:#f5f5f5;border-radius:6px;margin-top:15px}.time-navigation{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.controls-right{display:flex;align-items:center;gap:10px}@media (max-width: 768px){.timeline-controls{flex-direction:column;align-items:flex-start;gap:15px}.controls-right{margin-top:10px;width:100%;justify-content:flex-start;text-align:center;align-items:center;justify-content:center}}.timeline-header{display:flex;align-items:center;gap:20px;margin-bottom:10px;flex-wrap:wrap}.timeline-title{font-weight:700;margin-right:20px}.timeline-title-text{font-size:1.1rem}.current-time,.duration-time{white-space:nowrap}.time-code{font-family:monospace;font-weight:500}@media (max-width: 480px){.timeline-header{flex-direction:column;align-items:flex-start;gap:8px}.time-navigation{width:100%;flex-direction:column;align-items:flex-start;gap:10px}.time-button-group{width:100%;display:flex;justify-content:space-between;margin-top:10px}.controls-right{flex-wrap:wrap;gap:8px}.save-button,.save-copy-button{margin-top:8px;width:100%}.zoom-dropdown-container{width:100%}.zoom-button{width:100%;justify-content:center}} diff --git a/static/chapters_editor/chapters-editor.js b/static/chapters_editor/chapters-editor.js index c1883312..3b646031 100644 --- a/static/chapters_editor/chapters-editor.js +++ b/static/chapters_editor/chapters-editor.js @@ -1,4 +1,4 @@ -(function(){"use strict";var dm={exports:{}},Kc={exports:{}},al={exports:{}};al.exports;var vm;function z0(){return vm||(vm=1,function(w,L){/** +(function(){"use strict";var dm={exports:{}},Kc={exports:{}},al={exports:{}};al.exports;var vm;function U0(){return vm||(vm=1,function(k,R){/** * @license React * react.development.js * @@ -6,29 +6,29 @@ * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */(function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var me="18.3.1",Ee=Symbol.for("react.element"),fe=Symbol.for("react.portal"),Re=Symbol.for("react.fragment"),d=Symbol.for("react.strict_mode"),Q=Symbol.for("react.profiler"),he=Symbol.for("react.provider"),te=Symbol.for("react.context"),bt=Symbol.for("react.forward_ref"),I=Symbol.for("react.suspense"),H=Symbol.for("react.suspense_list"),K=Symbol.for("react.memo"),Oe=Symbol.for("react.lazy"),zt=Symbol.for("react.offscreen"),qt=Symbol.iterator,St="@@iterator";function Pe(s){if(s===null||typeof s!="object")return null;var m=qt&&s[qt]||s[St];return typeof m=="function"?m:null}var _e={current:null},ot={transition:null},_={current:null,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1},ne={current:null},De={},Vt=null;function Me(s){Vt=s}De.setExtraStackFrame=function(s){Vt=s},De.getCurrentStack=null,De.getStackAddendum=function(){var s="";Vt&&(s+=Vt);var m=De.getCurrentStack;return m&&(s+=m()||""),s};var pe=!1,nt=!1,oe=!1,Le=!1,Ke=!1,le={ReactCurrentDispatcher:_e,ReactCurrentBatchConfig:ot,ReactCurrentOwner:ne};le.ReactDebugCurrentFrame=De,le.ReactCurrentActQueue=_;function W(s){{for(var m=arguments.length,k=new Array(m>1?m-1:0),N=1;N1?m-1:0),N=1;N1){for(var Yt=Array(At),Wt=0;Wt1){for(var lt=Array(Wt),en=0;en is not supported and will be removed in a future major release. Did you mean to render instead?")),m.Provider},set:function(Se){m.Provider=Se}},_currentValue:{get:function(){return m._currentValue},set:function(Se){m._currentValue=Se}},_currentValue2:{get:function(){return m._currentValue2},set:function(Se){m._currentValue2=Se}},_threadCount:{get:function(){return m._threadCount},set:function(Se){m._threadCount=Se}},Consumer:{get:function(){return k||(k=!0,q("Rendering is not supported and will be removed in a future major release. Did you mean to render instead?")),m.Consumer}},displayName:{get:function(){return m.displayName},set:function(Se){X||(W("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.",Se),X=!0)}}}),m.Consumer=Ne}return m._currentRenderer=null,m._currentRenderer2=null,m}var ma=-1,h=0,B=1,D=2;function T(s){if(s._status===ma){var m=s._result,k=m();if(k.then(function(Ne){if(s._status===h||s._status===ma){var Se=s;Se._status=B,Se._result=Ne}},function(Ne){if(s._status===h||s._status===ma){var Se=s;Se._status=D,Se._result=Ne}}),s._status===ma){var N=s;N._status=h,N._result=k}}if(s._status===B){var X=s._result;return X===void 0&&q(`lazy: Expected the result of a dynamic import() call. Instead received: %s + */(function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var Ee="18.3.1",we=Symbol.for("react.element"),xe=Symbol.for("react.portal"),ce=Symbol.for("react.fragment"),d=Symbol.for("react.strict_mode"),X=Symbol.for("react.profiler"),ve=Symbol.for("react.provider"),ne=Symbol.for("react.context"),gt=Symbol.for("react.forward_ref"),ue=Symbol.for("react.suspense"),Le=Symbol.for("react.suspense_list"),ee=Symbol.for("react.memo"),Fe=Symbol.for("react.lazy"),Ge=Symbol.for("react.offscreen"),W=Symbol.iterator,Tt="@@iterator";function it(s){if(s===null||typeof s!="object")return null;var h=W&&s[W]||s[Tt];return typeof h=="function"?h:null}var _e={current:null},Qe={transition:null},ye={current:null,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1},U={current:null},K={},At=null;function bt(s){At=s}K.setExtraStackFrame=function(s){At=s},K.getCurrentStack=null,K.getStackAddendum=function(){var s="";At&&(s+=At);var h=K.getCurrentStack;return h&&(s+=h()||""),s};var ot=!1,Dt=!1,Te=!1,I=!1,Je=!1,ie={ReactCurrentDispatcher:_e,ReactCurrentBatchConfig:Qe,ReactCurrentOwner:U};ie.ReactDebugCurrentFrame=K,ie.ReactCurrentActQueue=ye;function pe(s){{for(var h=arguments.length,D=new Array(h>1?h-1:0),O=1;O1?h-1:0),O=1;O1){for(var It=Array(Ut),qt=0;qt1){for(var st=Array(qt),en=0;en is not supported and will be removed in a future major release. Did you mean to render instead?")),h.Provider},set:function(ge){h.Provider=ge}},_currentValue:{get:function(){return h._currentValue},set:function(ge){h._currentValue=ge}},_currentValue2:{get:function(){return h._currentValue2},set:function(ge){h._currentValue2=ge}},_threadCount:{get:function(){return h._threadCount},set:function(ge){h._threadCount=ge}},Consumer:{get:function(){return D||(D=!0,q("Rendering is not supported and will be removed in a future major release. Did you mean to render instead?")),h.Consumer}},displayName:{get:function(){return h.displayName},set:function(ge){Q||(pe("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.",ge),Q=!0)}}}),h.Consumer=Oe}return h._currentRenderer=null,h._currentRenderer2=null,h}var ga=-1,Rn=0,wn=1,Da=2;function gr(s){if(s._status===ga){var h=s._result,D=h();if(D.then(function(Oe){if(s._status===Rn||s._status===ga){var ge=s;ge._status=wn,ge._result=Oe}},function(Oe){if(s._status===Rn||s._status===ga){var ge=s;ge._status=Da,ge._result=Oe}}),s._status===ga){var O=s;O._status=Rn,O._result=D}}if(s._status===wn){var Q=s._result;return Q===void 0&&q(`lazy: Expected the result of a dynamic import() call. Instead received: %s Your code should look like: const MyComponent = lazy(() => import('./MyComponent')) -Did you accidentally put curly braces around the import?`,X),"default"in X||q(`lazy: Expected the result of a dynamic import() call. Instead received: %s +Did you accidentally put curly braces around the import?`,Q),"default"in Q||q(`lazy: Expected the result of a dynamic import() call. Instead received: %s Your code should look like: - const MyComponent = lazy(() => import('./MyComponent'))`,X),X.default}else throw s._result}function x(s){var m={_status:ma,_result:s},k={$$typeof:Oe,_payload:m,_init:T};{var N,X;Object.defineProperties(k,{defaultProps:{configurable:!0,get:function(){return N},set:function(Ne){q("React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),N=Ne,Object.defineProperty(k,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return X},set:function(Ne){q("React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),X=Ne,Object.defineProperty(k,"propTypes",{enumerable:!0})}}})}return k}function O(s){s!=null&&s.$$typeof===K?q("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):typeof s!="function"?q("forwardRef requires a render function but was given %s.",s===null?"null":typeof s):s.length!==0&&s.length!==2&&q("forwardRef render functions accept exactly two parameters: props and ref. %s",s.length===1?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),s!=null&&(s.defaultProps!=null||s.propTypes!=null)&&q("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?");var m={$$typeof:bt,render:s};{var k;Object.defineProperty(m,"displayName",{enumerable:!1,configurable:!0,get:function(){return k},set:function(N){k=N,!s.name&&!s.displayName&&(s.displayName=N)}})}return m}var c;c=Symbol.for("react.module.reference");function y(s){return!!(typeof s=="string"||typeof s=="function"||s===Re||s===Q||Ke||s===d||s===I||s===H||Le||s===zt||pe||nt||oe||typeof s=="object"&&s!==null&&(s.$$typeof===Oe||s.$$typeof===K||s.$$typeof===he||s.$$typeof===te||s.$$typeof===bt||s.$$typeof===c||s.getModuleId!==void 0))}function S(s,m){y(s)||q("memo: The first argument must be a component. Instead received: %s",s===null?"null":typeof s);var k={$$typeof:K,type:s,compare:m===void 0?null:m};{var N;Object.defineProperty(k,"displayName",{enumerable:!1,configurable:!0,get:function(){return N},set:function(X){N=X,!s.name&&!s.displayName&&(s.displayName=X)}})}return k}function A(){var s=_e.current;return s===null&&q(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons: + const MyComponent = lazy(() => import('./MyComponent'))`,Q),Q.default}else throw s._result}function y(s){var h={_status:ga,_result:s},D={$$typeof:Fe,_payload:h,_init:gr};{var O,Q;Object.defineProperties(D,{defaultProps:{configurable:!0,get:function(){return O},set:function(Oe){q("React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),O=Oe,Object.defineProperty(D,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return Q},set:function(Oe){q("React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),Q=Oe,Object.defineProperty(D,"propTypes",{enumerable:!0})}}})}return D}function F(s){s!=null&&s.$$typeof===ee?q("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):typeof s!="function"?q("forwardRef requires a render function but was given %s.",s===null?"null":typeof s):s.length!==0&&s.length!==2&&q("forwardRef render functions accept exactly two parameters: props and ref. %s",s.length===1?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),s!=null&&(s.defaultProps!=null||s.propTypes!=null)&&q("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?");var h={$$typeof:gt,render:s};{var D;Object.defineProperty(h,"displayName",{enumerable:!1,configurable:!0,get:function(){return D},set:function(O){D=O,!s.name&&!s.displayName&&(s.displayName=O)}})}return h}var c;c=Symbol.for("react.module.reference");function m(s){return!!(typeof s=="string"||typeof s=="function"||s===ce||s===X||Je||s===d||s===ue||s===Le||I||s===Ge||ot||Dt||Te||typeof s=="object"&&s!==null&&(s.$$typeof===Fe||s.$$typeof===ee||s.$$typeof===ve||s.$$typeof===ne||s.$$typeof===gt||s.$$typeof===c||s.getModuleId!==void 0))}function g(s,h){m(s)||q("memo: The first argument must be a component. Instead received: %s",s===null?"null":typeof s);var D={$$typeof:ee,type:s,compare:h===void 0?null:h};{var O;Object.defineProperty(D,"displayName",{enumerable:!1,configurable:!0,get:function(){return O},set:function(Q){O=Q,!s.name&&!s.displayName&&(s.displayName=Q)}})}return D}function E(){var s=_e.current;return s===null&&q(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons: 1. You might have mismatching versions of React and the renderer (such as React DOM) 2. You might be breaking the Rules of Hooks 3. You might have more than one copy of React in the same app -See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.`),s}function ve(s){var m=A();if(s._context!==void 0){var k=s._context;k.Consumer===s?q("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?"):k.Provider===s&&q("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return m.useContext(s)}function z(s){var m=A();return m.useState(s)}function ue(s,m,k){var N=A();return N.useReducer(s,m,k)}function ye(s){var m=A();return m.useRef(s)}function ze(s,m){var k=A();return k.useEffect(s,m)}function it(s,m){var k=A();return k.useInsertionEffect(s,m)}function Ft(s,m){var k=A();return k.useLayoutEffect(s,m)}function nn(s,m){var k=A();return k.useCallback(s,m)}function Zt(s,m){var k=A();return k.useMemo(s,m)}function Pn(s,m,k){var N=A();return N.useImperativeHandle(s,m,k)}function ft(s,m){{var k=A();return k.useDebugValue(s,m)}}function be(){var s=A();return s.useTransition()}function Rn(s){var m=A();return m.useDeferredValue(s)}function Ua(){var s=A();return s.useId()}function il(s,m,k){var N=A();return N.useSyncExternalStore(s,m,k)}var Ha=0,ha,ya,$r,yi,un,_t,za;function oa(){}oa.__reactDisabledLog=!0;function hr(){{if(Ha===0){ha=console.log,ya=console.info,$r=console.warn,yi=console.error,un=console.group,_t=console.groupCollapsed,za=console.groupEnd;var s={configurable:!0,enumerable:!0,value:oa,writable:!0};Object.defineProperties(console,{info:s,log:s,warn:s,error:s,group:s,groupCollapsed:s,groupEnd:s})}Ha++}}function nr(){{if(Ha--,Ha===0){var s={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:We({},s,{value:ha}),info:We({},s,{value:ya}),warn:We({},s,{value:$r}),error:We({},s,{value:yi}),group:We({},s,{value:un}),groupCollapsed:We({},s,{value:_t}),groupEnd:We({},s,{value:za})})}Ha<0&&q("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var gi=le.ReactCurrentDispatcher,Pr;function no(s,m,k){{if(Pr===void 0)try{throw Error()}catch(X){var N=X.stack.trim().match(/\n( *(at )?)/);Pr=N&&N[1]||""}return` -`+Pr+s}}var bi=!1,ao;{var ol=typeof WeakMap=="function"?WeakMap:Map;ao=new ol}function Yu(s,m){if(!s||bi)return"";{var k=ao.get(s);if(k!==void 0)return k}var N;bi=!0;var X=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var Ne;Ne=gi.current,gi.current=null,hr();try{if(m){var Se=function(){throw Error()};if(Object.defineProperty(Se.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(Se,[])}catch(dn){N=dn}Reflect.construct(s,[],Se)}else{try{Se.call()}catch(dn){N=dn}s.call(Se.prototype)}}else{try{throw Error()}catch(dn){N=dn}s()}}catch(dn){if(dn&&N&&typeof dn.stack=="string"){for(var Ie=dn.stack.split(` -`),dt=N.stack.split(` -`),At=Ie.length-1,Yt=dt.length-1;At>=1&&Yt>=0&&Ie[At]!==dt[Yt];)Yt--;for(;At>=1&&Yt>=0;At--,Yt--)if(Ie[At]!==dt[Yt]){if(At!==1||Yt!==1)do if(At--,Yt--,Yt<0||Ie[At]!==dt[Yt]){var Wt=` -`+Ie[At].replace(" at new "," at ");return s.displayName&&Wt.includes("")&&(Wt=Wt.replace("",s.displayName)),typeof s=="function"&&ao.set(s,Wt),Wt}while(At>=1&&Yt>=0);break}}}finally{bi=!1,gi.current=Ne,nr(),Error.prepareStackTrace=X}var lt=s?s.displayName||s.name:"",en=lt?no(lt):"";return typeof s=="function"&&ao.set(s,en),en}function ll(s,m,k){return Yu(s,!1)}function af(s){var m=s.prototype;return!!(m&&m.isReactComponent)}function Si(s,m,k){if(s==null)return"";if(typeof s=="function")return Yu(s,af(s));if(typeof s=="string")return no(s);switch(s){case I:return no("Suspense");case H:return no("SuspenseList")}if(typeof s=="object")switch(s.$$typeof){case bt:return ll(s.render);case K:return Si(s.type,m,k);case Oe:{var N=s,X=N._payload,Ne=N._init;try{return Si(Ne(X),m,k)}catch{}}}return""}var Wu={},ul=le.ReactDebugCurrentFrame;function xt(s){if(s){var m=s._owner,k=Si(s.type,s._source,m?m.type:null);ul.setExtraStackFrame(k)}else ul.setExtraStackFrame(null)}function rf(s,m,k,N,X){{var Ne=Function.call.bind(yt);for(var Se in s)if(Ne(s,Se)){var Ie=void 0;try{if(typeof s[Se]!="function"){var dt=Error((N||"React class")+": "+k+" type `"+Se+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof s[Se]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw dt.name="Invariant Violation",dt}Ie=s[Se](m,Se,N,k,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(At){Ie=At}Ie&&!(Ie instanceof Error)&&(xt(X),q("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",N||"React class",k,Se,typeof Ie),xt(null)),Ie instanceof Error&&!(Ie.message in Wu)&&(Wu[Ie.message]=!0,xt(X),q("Failed %s type: %s",k,Ie.message),xt(null))}}}function yr(s){if(s){var m=s._owner,k=Si(s.type,s._source,m?m.type:null);Me(k)}else Me(null)}var Xe;Xe=!1;function sl(){if(ne.current){var s=Ge(ne.current.type);if(s)return` +See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.`),s}function T(s){var h=E();if(s._context!==void 0){var D=s._context;D.Consumer===s?q("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?"):D.Provider===s&&q("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return h.useContext(s)}function M(s){var h=E();return h.useState(s)}function L(s,h,D){var O=E();return O.useReducer(s,h,D)}function z(s){var h=E();return h.useRef(s)}function Ue(s,h){var D=E();return D.useEffect(s,h)}function $(s,h){var D=E();return D.useInsertionEffect(s,h)}function Ce(s,h){var D=E();return D.useLayoutEffect(s,h)}function et(s,h){var D=E();return D.useCallback(s,h)}function rt(s,h){var D=E();return D.useMemo(s,h)}function Wt(s,h,D){var O=E();return O.useImperativeHandle(s,h,D)}function $t(s,h){{var D=E();return D.useDebugValue(s,h)}}function Ve(){var s=E();return s.useTransition()}function rn(s){var h=E();return h.useDeferredValue(s)}function Fa(){var s=E();return s.useId()}function An(s,h,D){var O=E();return O.useSyncExternalStore(s,h,D)}var Ot=0,sa,nr,no,Yr,ba,_a,bi;function Wr(){}Wr.__reactDisabledLog=!0;function cn(){{if(Ot===0){sa=console.log,nr=console.info,no=console.warn,Yr=console.error,ba=console.group,_a=console.groupCollapsed,bi=console.groupEnd;var s={configurable:!0,enumerable:!0,value:Wr,writable:!0};Object.defineProperties(console,{info:s,log:s,warn:s,error:s,group:s,groupCollapsed:s,groupEnd:s})}Ot++}}function ft(){{if(Ot--,Ot===0){var s={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:lt({},s,{value:sa}),info:lt({},s,{value:nr}),warn:lt({},s,{value:no}),error:lt({},s,{value:Yr}),group:lt({},s,{value:ba}),groupCollapsed:lt({},s,{value:_a}),groupEnd:lt({},s,{value:bi})})}Ot<0&&q("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var ca=ie.ReactCurrentDispatcher,Wn;function ar(s,h,D){{if(Wn===void 0)try{throw Error()}catch(Q){var O=Q.stack.trim().match(/\n( *(at )?)/);Wn=O&&O[1]||""}return` +`+Wn+s}}var Si=!1,ao;{var il=typeof WeakMap=="function"?WeakMap:Map;ao=new il}function Yu(s,h){if(!s||Si)return"";{var D=ao.get(s);if(D!==void 0)return D}var O;Si=!0;var Q=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var Oe;Oe=ca.current,ca.current=null,cn();try{if(h){var ge=function(){throw Error()};if(Object.defineProperty(ge.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ge,[])}catch(vn){O=vn}Reflect.construct(s,[],ge)}else{try{ge.call()}catch(vn){O=vn}s.call(ge.prototype)}}else{try{throw Error()}catch(vn){O=vn}s()}}catch(vn){if(vn&&O&&typeof vn.stack=="string"){for(var Ie=vn.stack.split(` +`),vt=O.stack.split(` +`),Ut=Ie.length-1,It=vt.length-1;Ut>=1&&It>=0&&Ie[Ut]!==vt[It];)It--;for(;Ut>=1&&It>=0;Ut--,It--)if(Ie[Ut]!==vt[It]){if(Ut!==1||It!==1)do if(Ut--,It--,It<0||Ie[Ut]!==vt[It]){var qt=` +`+Ie[Ut].replace(" at new "," at ");return s.displayName&&qt.includes("")&&(qt=qt.replace("",s.displayName)),typeof s=="function"&&ao.set(s,qt),qt}while(Ut>=1&&It>=0);break}}}finally{Si=!1,ca.current=Oe,ft(),Error.prepareStackTrace=Q}var st=s?s.displayName||s.name:"",en=st?ar(st):"";return typeof s=="function"&&ao.set(s,en),en}function ol(s,h,D){return Yu(s,!1)}function af(s){var h=s.prototype;return!!(h&&h.isReactComponent)}function Ti(s,h,D){if(s==null)return"";if(typeof s=="function")return Yu(s,af(s));if(typeof s=="string")return ar(s);switch(s){case ue:return ar("Suspense");case Le:return ar("SuspenseList")}if(typeof s=="object")switch(s.$$typeof){case gt:return ol(s.render);case ee:return Ti(s.type,h,D);case Fe:{var O=s,Q=O._payload,Oe=O._init;try{return Ti(Oe(Q),h,D)}catch{}}}return""}var Wu={},ll=ie.ReactDebugCurrentFrame;function Rt(s){if(s){var h=s._owner,D=Ti(s.type,s._source,h?h.type:null);ll.setExtraStackFrame(D)}else ll.setExtraStackFrame(null)}function rf(s,h,D,O,Q){{var Oe=Function.call.bind(Y);for(var ge in s)if(Oe(s,ge)){var Ie=void 0;try{if(typeof s[ge]!="function"){var vt=Error((O||"React class")+": "+D+" type `"+ge+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof s[ge]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw vt.name="Invariant Violation",vt}Ie=s[ge](h,ge,O,D,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(Ut){Ie=Ut}Ie&&!(Ie instanceof Error)&&(Rt(Q),q("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",O||"React class",D,ge,typeof Ie),Rt(null)),Ie instanceof Error&&!(Ie.message in Wu)&&(Wu[Ie.message]=!0,Rt(Q),q("Failed %s type: %s",D,Ie.message),Rt(null))}}}function br(s){if(s){var h=s._owner,D=Ti(s.type,s._source,h?h.type:null);bt(D)}else bt(null)}var Xe;Xe=!1;function ul(){if(U.current){var s=A(U.current.type);if(s)return` -Check the render method of \``+s+"`."}return""}function Qn(s){if(s!==void 0){var m=s.fileName.replace(/^.*[\\\/]/,""),k=s.lineNumber;return` +Check the render method of \``+s+"`."}return""}function Zn(s){if(s!==void 0){var h=s.fileName.replace(/^.*[\\\/]/,""),D=s.lineNumber;return` -Check your code at `+m+":"+k+"."}return""}function Ti(s){return s!=null?Qn(s.__source):""}var Yr={};function of(s){var m=sl();if(!m){var k=typeof s=="string"?s:s.displayName||s.name;k&&(m=` +Check your code at `+h+":"+D+"."}return""}function Ei(s){return s!=null?Zn(s.__source):""}var Ir={};function of(s){var h=ul();if(!h){var D=typeof s=="string"?s:s.displayName||s.name;D&&(h=` -Check the top-level render call using <`+k+">.")}return m}function Dn(s,m){if(!(!s._store||s._store.validated||s.key!=null)){s._store.validated=!0;var k=of(m);if(!Yr[k]){Yr[k]=!0;var N="";s&&s._owner&&s._owner!==ne.current&&(N=" It was passed a child from "+Ge(s._owner.type)+"."),yr(s),q('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',k,N),yr(null)}}}function Jt(s,m){if(typeof s=="object"){if(F(s))for(var k=0;k",X=" Did you accidentally export a JSX literal instead of a component?"):Se=typeof s,q("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",Se,X)}var Ie=Je.apply(this,arguments);if(Ie==null)return Ie;if(N)for(var dt=2;dt10&&W("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."),N._updatedFibers.clear()}}}var fl=!1,ro=null;function uf(s){if(ro===null)try{var m=("require"+Math.random()).slice(0,7),k=w&&w[m];ro=k.call(w,"timers").setImmediate}catch{ro=function(X){fl===!1&&(fl=!0,typeof MessageChannel>"u"&&q("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));var Ne=new MessageChannel;Ne.port1.onmessage=X,Ne.port2.postMessage(void 0)}}return ro(s)}var Wr=0,Ei=!1;function dl(s){{var m=Wr;Wr++,_.current===null&&(_.current=[]);var k=_.isBatchingLegacy,N;try{if(_.isBatchingLegacy=!0,N=s(),!k&&_.didScheduleLegacyUpdate){var X=_.current;X!==null&&(_.didScheduleLegacyUpdate=!1,lo(X))}}catch(lt){throw gr(m),lt}finally{_.isBatchingLegacy=k}if(N!==null&&typeof N=="object"&&typeof N.then=="function"){var Ne=N,Se=!1,Ie={then:function(lt,en){Se=!0,Ne.then(function(dn){gr(m),Wr===0?io(dn,lt,en):lt(dn)},function(dn){gr(m),en(dn)})}};return!Ei&&typeof Promise<"u"&&Promise.resolve().then(function(){}).then(function(){Se||(Ei=!0,q("You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"))}),Ie}else{var dt=N;if(gr(m),Wr===0){var At=_.current;At!==null&&(lo(At),_.current=null);var Yt={then:function(lt,en){_.current===null?(_.current=[],io(dt,lt,en)):lt(dt)}};return Yt}else{var Wt={then:function(lt,en){lt(dt)}};return Wt}}}}function gr(s){s!==Wr-1&&q("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "),Wr=s}function io(s,m,k){{var N=_.current;if(N!==null)try{lo(N),uf(function(){N.length===0?(_.current=null,m(s)):io(s,m,k)})}catch(X){k(X)}else m(s)}}var oo=!1;function lo(s){if(!oo){oo=!0;var m=0;try{for(;m.")}return h}function Dn(s,h){if(!(!s._store||s._store.validated||s.key!=null)){s._store.validated=!0;var D=of(h);if(!Ir[D]){Ir[D]=!0;var O="";s&&s._owner&&s._owner!==U.current&&(O=" It was passed a child from "+A(s._owner.type)+"."),br(s),q('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',D,O),br(null)}}}function Jt(s,h){if(typeof s=="object"){if(an(s))for(var D=0;D",Q=" Did you accidentally export a JSX literal instead of a component?"):ge=typeof s,q("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",ge,Q)}var Ie=ke.apply(this,arguments);if(Ie==null)return Ie;if(O)for(var vt=2;vt10&&pe("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."),O._updatedFibers.clear()}}}var cl=!1,ro=null;function uf(s){if(ro===null)try{var h=("require"+Math.random()).slice(0,7),D=k&&k[h];ro=D.call(k,"timers").setImmediate}catch{ro=function(Q){cl===!1&&(cl=!0,typeof MessageChannel>"u"&&q("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));var Oe=new MessageChannel;Oe.port1.onmessage=Q,Oe.port2.postMessage(void 0)}}return ro(s)}var qr=0,Ci=!1;function fl(s){{var h=qr;qr++,ye.current===null&&(ye.current=[]);var D=ye.isBatchingLegacy,O;try{if(ye.isBatchingLegacy=!0,O=s(),!D&&ye.didScheduleLegacyUpdate){var Q=ye.current;Q!==null&&(ye.didScheduleLegacyUpdate=!1,lo(Q))}}catch(st){throw Sr(h),st}finally{ye.isBatchingLegacy=D}if(O!==null&&typeof O=="object"&&typeof O.then=="function"){var Oe=O,ge=!1,Ie={then:function(st,en){ge=!0,Oe.then(function(vn){Sr(h),qr===0?io(vn,st,en):st(vn)},function(vn){Sr(h),en(vn)})}};return!Ci&&typeof Promise<"u"&&Promise.resolve().then(function(){}).then(function(){ge||(Ci=!0,q("You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"))}),Ie}else{var vt=O;if(Sr(h),qr===0){var Ut=ye.current;Ut!==null&&(lo(Ut),ye.current=null);var It={then:function(st,en){ye.current===null?(ye.current=[],io(vt,st,en)):st(vt)}};return It}else{var qt={then:function(st,en){st(vt)}};return qt}}}}function Sr(s){s!==qr-1&&q("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "),qr=s}function io(s,h,D){{var O=ye.current;if(O!==null)try{lo(O),uf(function(){O.length===0?(ye.current=null,h(s)):io(s,h,D)})}catch(Q){D(Q)}else h(s)}}var oo=!1;function lo(s){if(!oo){oo=!0;var h=0;try{for(;h.")}return m}function Dn(s,m){if(!( * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */return function(){var w=Zc(),L=Symbol.for("react.element"),me=Symbol.for("react.portal"),Ee=Symbol.for("react.fragment"),fe=Symbol.for("react.strict_mode"),Re=Symbol.for("react.profiler"),d=Symbol.for("react.provider"),Q=Symbol.for("react.context"),he=Symbol.for("react.forward_ref"),te=Symbol.for("react.suspense"),bt=Symbol.for("react.suspense_list"),I=Symbol.for("react.memo"),H=Symbol.for("react.lazy"),K=Symbol.for("react.offscreen"),Oe=Symbol.iterator,zt="@@iterator";function qt(c){if(c===null||typeof c!="object")return null;var y=Oe&&c[Oe]||c[zt];return typeof y=="function"?y:null}var St=w.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function Pe(c){{for(var y=arguments.length,S=new Array(y>1?y-1:0),A=1;A=1&&Ft>=0&&ye[it]!==ze[Ft];)Ft--;for(;it>=1&&Ft>=0;it--,Ft--)if(ye[it]!==ze[Ft]){if(it!==1||Ft!==1)do if(it--,Ft--,Ft<0||ye[it]!==ze[Ft]){var nn=` -`+ye[it].replace(" at new "," at ");return c.displayName&&nn.includes("")&&(nn=nn.replace("",c.displayName)),typeof c=="function"&&Gt.set(c,nn),nn}while(it>=1&&Ft>=0);break}}}finally{Qe=!1,et.current=z,cn(),Error.prepareStackTrace=ve}var Zt=c?c.displayName||c.name:"",Pn=Zt?gt(Zt):"";return typeof c=="function"&&Gt.set(c,Pn),Pn}function F(c,y,S){return fn(c,!1)}function G(c){var y=c.prototype;return!!(y&&y.isReactComponent)}function Te(c,y,S){if(c==null)return"";if(typeof c=="function")return fn(c,G(c));if(typeof c=="string")return gt(c);switch(c){case te:return gt("Suspense");case bt:return gt("SuspenseList")}if(typeof c=="object")switch(c.$$typeof){case he:return F(c.render);case I:return Te(c.type,y,S);case H:{var A=c,ve=A._payload,z=A._init;try{return Te(z(ve),y,S)}catch{}}}return""}var Ce=Object.prototype.hasOwnProperty,Ze={},st=St.ReactDebugCurrentFrame;function ht(c){if(c){var y=c._owner,S=Te(c.type,c._source,y?y.type:null);st.setExtraStackFrame(S)}else st.setExtraStackFrame(null)}function Ge(c,y,S,A,ve){{var z=Function.call.bind(Ce);for(var ue in c)if(z(c,ue)){var ye=void 0;try{if(typeof c[ue]!="function"){var ze=Error((A||"React class")+": "+S+" type `"+ue+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof c[ue]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw ze.name="Invariant Violation",ze}ye=c[ue](y,ue,A,S,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(it){ye=it}ye&&!(ye instanceof Error)&&(ht(ve),Pe("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",A||"React class",S,ue,typeof ye),ht(null)),ye instanceof Error&&!(ye.message in Ze)&&(Ze[ye.message]=!0,ht(ve),Pe("Failed %s type: %s",S,ye.message),ht(null))}}}var yt=Array.isArray;function rt(c){return yt(c)}function tn(c){{var y=typeof Symbol=="function"&&Symbol.toStringTag,S=y&&c[Symbol.toStringTag]||c.constructor.name||"Object";return S}}function mn(c){try{return Ot(c),!1}catch{return!0}}function Ot(c){return""+c}function Lt(c){if(mn(c))return Pe("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",tn(c)),Ot(c)}var hn=St.ReactCurrentOwner,ia={key:!0,ref:!0,__self:!0,__source:!0},va,Z;function xe(c){if(Ce.call(c,"ref")){var y=Object.getOwnPropertyDescriptor(c,"ref").get;if(y&&y.isReactWarning)return!1}return c.ref!==void 0}function Je(c){if(Ce.call(c,"key")){var y=Object.getOwnPropertyDescriptor(c,"key").get;if(y&&y.isReactWarning)return!1}return c.key!==void 0}function Rt(c,y){typeof c.ref=="string"&&hn.current}function Bt(c,y){{var S=function(){va||(va=!0,Pe("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",y))};S.isReactWarning=!0,Object.defineProperty(c,"key",{get:S,configurable:!0})}}function Xt(c,y){{var S=function(){Z||(Z=!0,Pe("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",y))};S.isReactWarning=!0,Object.defineProperty(c,"ref",{get:S,configurable:!0})}}var Qt=function(c,y,S,A,ve,z,ue){var ye={$$typeof:L,type:c,key:y,ref:S,props:ue,_owner:z};return ye._store={},Object.defineProperty(ye._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(ye,"_self",{configurable:!1,enumerable:!1,writable:!1,value:A}),Object.defineProperty(ye,"_source",{configurable:!1,enumerable:!1,writable:!1,value:ve}),Object.freeze&&(Object.freeze(ye.props),Object.freeze(ye)),ye};function wn(c,y,S,A,ve){{var z,ue={},ye=null,ze=null;S!==void 0&&(Lt(S),ye=""+S),Je(y)&&(Lt(y.key),ye=""+y.key),xe(y)&&(ze=y.ref,Rt(y,ve));for(z in y)Ce.call(y,z)&&!ia.hasOwnProperty(z)&&(ue[z]=y[z]);if(c&&c.defaultProps){var it=c.defaultProps;for(z in it)ue[z]===void 0&&(ue[z]=it[z])}if(ye||ze){var Ft=typeof c=="function"?c.displayName||c.name||"Unknown":c;ye&&Bt(ue,Ft),ze&&Xt(ue,Ft)}return Qt(c,ye,ze,ve,A,hn.current,ue)}}var Pt=St.ReactCurrentOwner,Tt=St.ReactDebugCurrentFrame;function Dt(c){if(c){var y=c._owner,S=Te(c.type,c._source,y?y.type:null);Tt.setExtraStackFrame(S)}else Tt.setExtraStackFrame(null)}var er;er=!1;function $n(c){return typeof c=="object"&&c!==null&&c.$$typeof===L}function pa(){{if(Pt.current){var c=Le(Pt.current.type);if(c)return` + */return function(){var k=Zc(),R=Symbol.for("react.element"),Ee=Symbol.for("react.portal"),we=Symbol.for("react.fragment"),xe=Symbol.for("react.strict_mode"),ce=Symbol.for("react.profiler"),d=Symbol.for("react.provider"),X=Symbol.for("react.context"),ve=Symbol.for("react.forward_ref"),ne=Symbol.for("react.suspense"),gt=Symbol.for("react.suspense_list"),ue=Symbol.for("react.memo"),Le=Symbol.for("react.lazy"),ee=Symbol.for("react.offscreen"),Fe=Symbol.iterator,Ge="@@iterator";function W(c){if(c===null||typeof c!="object")return null;var m=Fe&&c[Fe]||c[Ge];return typeof m=="function"?m:null}var Tt=k.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function it(c){{for(var m=arguments.length,g=new Array(m>1?m-1:0),E=1;E=1&&Ce>=0&&z[$]!==Ue[Ce];)Ce--;for(;$>=1&&Ce>=0;$--,Ce--)if(z[$]!==Ue[Ce]){if($!==1||Ce!==1)do if($--,Ce--,Ce<0||z[$]!==Ue[Ce]){var et=` +`+z[$].replace(" at new "," at ");return c.displayName&&et.includes("")&&(et=et.replace("",c.displayName)),typeof c=="function"&&Yt.set(c,et),et}while($>=1&&Ce>=0);break}}}finally{Ze=!1,Ne.current=M,Ye(),Error.prepareStackTrace=T}var rt=c?c.displayName||c.name:"",Wt=rt?dn(rt):"";return typeof c=="function"&&Yt.set(c,Wt),Wt}function an(c,m,g){return nt(c,!1)}function un(c){var m=c.prototype;return!!(m&&m.isReactComponent)}function sn(c,m,g){if(c==null)return"";if(typeof c=="function")return nt(c,un(c));if(typeof c=="string")return dn(c);switch(c){case ne:return dn("Suspense");case gt:return dn("SuspenseList")}if(typeof c=="object")switch(c.$$typeof){case ve:return an(c.render);case ue:return sn(c.type,m,g);case Le:{var E=c,T=E._payload,M=E._init;try{return sn(M(T),m,g)}catch{}}}return""}var tn=Object.prototype.hasOwnProperty,Pn={},Yn=Tt.ReactDebugCurrentFrame;function la(c){if(c){var m=c._owner,g=sn(c.type,c._source,m?m.type:null);Yn.setExtraStackFrame(g)}else Yn.setExtraStackFrame(null)}function A(c,m,g,E,T){{var M=Function.call.bind(tn);for(var L in c)if(M(c,L)){var z=void 0;try{if(typeof c[L]!="function"){var Ue=Error((E||"React class")+": "+g+" type `"+L+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof c[L]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw Ue.name="Invariant Violation",Ue}z=c[L](m,L,E,g,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch($){z=$}z&&!(z instanceof Error)&&(la(T),it("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",E||"React class",g,L,typeof z),la(null)),z instanceof Error&&!(z.message in Pn)&&(Pn[z.message]=!0,la(T),it("Failed %s type: %s",g,z.message),la(null))}}}var Y=Array.isArray;function ae(c){return Y(c)}function me(c){{var m=typeof Symbol=="function"&&Symbol.toStringTag,g=m&&c[Symbol.toStringTag]||c.constructor.name||"Object";return g}}function je(c){try{return Be(c),!1}catch{return!0}}function Be(c){return""+c}function at(c){if(je(c))return it("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",me(c)),Be(c)}var We=Tt.ReactCurrentOwner,St={key:!0,ref:!0,__self:!0,__source:!0},Zt,Z;function be(c){if(tn.call(c,"ref")){var m=Object.getOwnPropertyDescriptor(c,"ref").get;if(m&&m.isReactWarning)return!1}return c.ref!==void 0}function ke(c){if(tn.call(c,"key")){var m=Object.getOwnPropertyDescriptor(c,"key").get;if(m&&m.isReactWarning)return!1}return c.key!==void 0}function Ke(c,m){typeof c.ref=="string"&&We.current}function ut(c,m){{var g=function(){Zt||(Zt=!0,it("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",m))};g.isReactWarning=!0,Object.defineProperty(c,"key",{get:g,configurable:!0})}}function xt(c,m){{var g=function(){Z||(Z=!0,it("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",m))};g.isReactWarning=!0,Object.defineProperty(c,"ref",{get:g,configurable:!0})}}var Nt=function(c,m,g,E,T,M,L){var z={$$typeof:R,type:c,key:m,ref:g,props:L,_owner:M};return z._store={},Object.defineProperty(z._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(z,"_self",{configurable:!1,enumerable:!1,writable:!1,value:E}),Object.defineProperty(z,"_source",{configurable:!1,enumerable:!1,writable:!1,value:T}),Object.freeze&&(Object.freeze(z.props),Object.freeze(z)),z};function Xt(c,m,g,E,T){{var M,L={},z=null,Ue=null;g!==void 0&&(at(g),z=""+g),ke(m)&&(at(m.key),z=""+m.key),be(m)&&(Ue=m.ref,Ke(m,T));for(M in m)tn.call(m,M)&&!St.hasOwnProperty(M)&&(L[M]=m[M]);if(c&&c.defaultProps){var $=c.defaultProps;for(M in $)L[M]===void 0&&(L[M]=$[M])}if(z||Ue){var Ce=typeof c=="function"?c.displayName||c.name||"Unknown":c;z&&ut(L,Ce),Ue&&xt(L,Ce)}return Nt(c,z,Ue,T,E,We.current,L)}}var Vt=Tt.ReactCurrentOwner,jt=Tt.ReactDebugCurrentFrame;function Bt(c){if(c){var m=c._owner,g=sn(c.type,c._source,m?m.type:null);jt.setExtraStackFrame(g)}else jt.setExtraStackFrame(null)}var tr;tr=!1;function ya(c){return typeof c=="object"&&c!==null&&c.$$typeof===R}function hn(){{if(Vt.current){var c=I(Vt.current.type);if(c)return` -Check the render method of \``+c+"`."}return""}}function tr(c){return""}var Fr={};function Vr(c){{var y=pa();if(!y){var S=typeof c=="string"?c:c.displayName||c.name;S&&(y=` +Check the render method of \``+c+"`."}return""}}function ua(c){return""}var Br={};function za(c){{var m=hn();if(!m){var g=typeof c=="string"?c:c.displayName||c.name;g&&(m=` -Check the top-level render call using <`+S+">.")}return y}}function wa(c,y){{if(!c._store||c._store.validated||c.key!=null)return;c._store.validated=!0;var S=Vr(y);if(Fr[S])return;Fr[S]=!0;var A="";c&&c._owner&&c._owner!==Pt.current&&(A=" It was passed a child from "+Le(c._owner.type)+"."),Dt(c),Pe('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',S,A),Dt(null)}}function ja(c,y){{if(typeof c!="object")return;if(rt(c))for(var S=0;S",ye=" Did you accidentally export a JSX literal instead of a component?"):it=typeof c,Pe("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",it,ye)}var Ft=wn(c,y,S,ve,z);if(Ft==null)return Ft;if(ue){var nn=y.children;if(nn!==void 0)if(A)if(rt(nn)){for(var Zt=0;Zt0?"{key: someKey, "+ft.join(": ..., ")+": ...}":"{key: someKey}";if(!h[Pn+be]){var Rn=ft.length>0?"{"+ft.join(": ..., ")+": ...}":"{}";Pe(`A props object containing a "key" prop is being spread into JSX: +Check the top-level render call using <`+g+">.")}return m}}function yr(c,m){{if(!c._store||c._store.validated||c.key!=null)return;c._store.validated=!0;var g=za(m);if(Br[g])return;Br[g]=!0;var E="";c&&c._owner&&c._owner!==Vt.current&&(E=" It was passed a child from "+I(c._owner.type)+"."),Bt(c),it('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',g,E),Bt(null)}}function $r(c,m){{if(typeof c!="object")return;if(ae(c))for(var g=0;g",z=" Did you accidentally export a JSX literal instead of a component?"):$=typeof c,it("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",$,z)}var Ce=Xt(c,m,g,T,M);if(Ce==null)return Ce;if(L){var et=m.children;if(et!==void 0)if(E)if(ae(et)){for(var rt=0;rt0?"{key: someKey, "+$t.join(": ..., ")+": ...}":"{key: someKey}";if(!Rn[Wt+Ve]){var rn=$t.length>0?"{"+$t.join(": ..., ")+": ...}":"{}";it(`A props object containing a "key" prop is being spread into JSX: let props = %s; <%s {...props} /> React keys must be passed directly to JSX without using spread: let props = %s; - <%s key={someKey} {...props} />`,be,Pn,Rn,Pn),h[Pn+be]=!0}}return c===Ee?ma(Ft):Br(Ft),Ft}}function D(c,y,S){return B(c,y,S,!0)}function T(c,y,S){return B(c,y,S,!1)}var x=T,O=D;rl.Fragment=Ee,rl.jsx=x,rl.jsxs=O}(),rl}dm.exports=F0();var p=dm.exports,hm={exports:{}},Jc={exports:{}},ef={},ym;function V0(){return ym||(ym=1,function(w){/** + <%s key={someKey} {...props} />`,Ve,Wt,rn,Wt),Rn[Wt+Ve]=!0}}return c===we?ga(Ce):Pr(Ce),Ce}}function Da(c,m,g){return wn(c,m,g,!0)}function gr(c,m,g){return wn(c,m,g,!1)}var y=gr,F=Da;rl.Fragment=we,rl.jsx=y,rl.jsxs=F}(),rl}dm.exports=H0();var p=dm.exports,hm={exports:{}},Jc={exports:{}},ef={},ym;function z0(){return ym||(ym=1,function(k){/** * @license React * scheduler.development.js * @@ -57,7 +57,7 @@ React keys must be passed directly to JSX without using spread: * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */(function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var L=!1,me=5;function Ee(Z,xe){var Je=Z.length;Z.push(xe),d(Z,xe,Je)}function fe(Z){return Z.length===0?null:Z[0]}function Re(Z){if(Z.length===0)return null;var xe=Z[0],Je=Z.pop();return Je!==xe&&(Z[0]=Je,Q(Z,Je,0)),xe}function d(Z,xe,Je){for(var Rt=Je;Rt>0;){var Bt=Rt-1>>>1,Xt=Z[Bt];if(he(Xt,xe)>0)Z[Bt]=xe,Z[Rt]=Xt,Rt=Bt;else return}}function Q(Z,xe,Je){for(var Rt=Je,Bt=Z.length,Xt=Bt>>>1;RtJe&&(!Z||st()));){var Rt=oe.callback;if(typeof Rt=="function"){oe.callback=null,Le=oe.priorityLevel;var Bt=oe.expirationTime<=Je,Xt=Rt(Bt);Je=w.unstable_now(),typeof Xt=="function"?oe.callback=Xt:oe===fe(Me)&&Re(Me),at(Je)}else Re(Me);oe=fe(Me)}if(oe!==null)return!0;var Qt=fe(pe);return Qt!==null&&Lt(ct,Qt.startTime-Je),!1}function Ue(Z,xe){switch(Z){case te:case bt:case I:case H:case K:break;default:Z=I}var Je=Le;Le=Z;try{return xe()}finally{Le=Je}}function cn(Z){var xe;switch(Le){case te:case bt:case I:xe=I;break;default:xe=Le;break}var Je=Le;Le=xe;try{return Z()}finally{Le=Je}}function et(Z){var xe=Le;return function(){var Je=Le;Le=xe;try{return Z.apply(this,arguments)}finally{Le=Je}}}function Ht(Z,xe,Je){var Rt=w.unstable_now(),Bt;if(typeof Je=="object"&&Je!==null){var Xt=Je.delay;typeof Xt=="number"&&Xt>0?Bt=Rt+Xt:Bt=Rt}else Bt=Rt;var Qt;switch(Z){case te:Qt=ot;break;case bt:Qt=_;break;case K:Qt=Vt;break;case H:Qt=De;break;case I:default:Qt=ne;break}var wn=Bt+Qt,Pt={id:nt++,callback:xe,priorityLevel:Z,startTime:Bt,expirationTime:wn,sortIndex:-1};return Bt>Rt?(Pt.sortIndex=Bt,Ee(pe,Pt),fe(Me)===null&&Pt===fe(pe)&&(W?hn():W=!0,Lt(ct,Bt-Rt))):(Pt.sortIndex=wn,Ee(Me,Pt),!le&&!Ke&&(le=!0,Ot(We))),Pt}function gt(){}function Qe(){!le&&!Ke&&(le=!0,Ot(We))}function Gt(){return fe(Me)}function rn(Z){Z.callback=null}function fn(){return Le}var F=!1,G=null,Te=-1,Ce=me,Ze=-1;function st(){var Z=w.unstable_now()-Ze;return!(Z125){console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported");return}Z>0?Ce=Math.floor(1e3/Z):Ce=me}var yt=function(){if(G!==null){var Z=w.unstable_now();Ze=Z;var xe=!0,Je=!0;try{Je=G(xe,Z)}finally{Je?rt():(F=!1,G=null)}}else F=!1},rt;if(typeof Fe=="function")rt=function(){Fe(yt)};else if(typeof MessageChannel<"u"){var tn=new MessageChannel,mn=tn.port2;tn.port1.onmessage=yt,rt=function(){mn.postMessage(null)}}else rt=function(){q(yt,0)};function Ot(Z){G=Z,F||(F=!0,rt())}function Lt(Z,xe){Te=q(function(){Z(w.unstable_now())},xe)}function hn(){Ye(Te),Te=-1}var ia=ht,va=null;w.unstable_IdlePriority=K,w.unstable_ImmediatePriority=te,w.unstable_LowPriority=H,w.unstable_NormalPriority=I,w.unstable_Profiling=va,w.unstable_UserBlockingPriority=bt,w.unstable_cancelCallback=rn,w.unstable_continueExecution=Qe,w.unstable_forceFrameRate=Ge,w.unstable_getCurrentPriorityLevel=fn,w.unstable_getFirstCallbackNode=Gt,w.unstable_next=cn,w.unstable_pauseExecution=gt,w.unstable_requestPaint=ia,w.unstable_runWithPriority=Ue,w.unstable_scheduleCallback=Ht,w.unstable_shouldYield=st,w.unstable_wrapCallback=et,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)})()}(ef)),ef}var gm;function B0(){return gm||(gm=1,Jc.exports=V0()),Jc.exports}var ra={},bm;function $0(){if(bm)return ra;bm=1;/** + */(function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var R=!1,Ee=5;function we(Z,be){var ke=Z.length;Z.push(be),d(Z,be,ke)}function xe(Z){return Z.length===0?null:Z[0]}function ce(Z){if(Z.length===0)return null;var be=Z[0],ke=Z.pop();return ke!==be&&(Z[0]=ke,X(Z,ke,0)),be}function d(Z,be,ke){for(var Ke=ke;Ke>0;){var ut=Ke-1>>>1,xt=Z[ut];if(ve(xt,be)>0)Z[ut]=be,Z[Ke]=xt,Ke=ut;else return}}function X(Z,be,ke){for(var Ke=ke,ut=Z.length,xt=ut>>>1;Keke&&(!Z||Yn()));){var Ke=Te.callback;if(typeof Ke=="function"){Te.callback=null,I=Te.priorityLevel;var ut=Te.expirationTime<=ke,xt=Ke(ut);ke=k.unstable_now(),typeof xt=="function"?Te.callback=xt:Te===xe(bt)&&ce(bt),dt(ke)}else ce(bt);Te=xe(bt)}if(Te!==null)return!0;var Nt=xe(ot);return Nt!==null&&at(Mt,Nt.startTime-ke),!1}function Lt(Z,be){switch(Z){case ne:case gt:case ue:case Le:case ee:break;default:Z=ue}var ke=I;I=Z;try{return be()}finally{I=ke}}function Ye(Z){var be;switch(I){case ne:case gt:case ue:be=ue;break;default:be=I;break}var ke=I;I=be;try{return Z()}finally{I=ke}}function Ne(Z){var be=I;return function(){var ke=I;I=be;try{return Z.apply(this,arguments)}finally{I=ke}}}function ze(Z,be,ke){var Ke=k.unstable_now(),ut;if(typeof ke=="object"&&ke!==null){var xt=ke.delay;typeof xt=="number"&&xt>0?ut=Ke+xt:ut=Ke}else ut=Ke;var Nt;switch(Z){case ne:Nt=Qe;break;case gt:Nt=ye;break;case ee:Nt=At;break;case Le:Nt=K;break;case ue:default:Nt=U;break}var Xt=ut+Nt,Vt={id:Dt++,callback:be,priorityLevel:Z,startTime:ut,expirationTime:Xt,sortIndex:-1};return ut>Ke?(Vt.sortIndex=ut,we(ot,Vt),xe(bt)===null&&Vt===xe(ot)&&(pe?We():pe=!0,at(Mt,ut-Ke))):(Vt.sortIndex=Xt,we(bt,Vt),!ie&&!Je&&(ie=!0,Be(lt))),Vt}function dn(){}function Ze(){!ie&&!Je&&(ie=!0,Be(lt))}function Yt(){return xe(bt)}function yt(Z){Z.callback=null}function nt(){return I}var an=!1,un=null,sn=-1,tn=Ee,Pn=-1;function Yn(){var Z=k.unstable_now()-Pn;return!(Z125){console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported");return}Z>0?tn=Math.floor(1e3/Z):tn=Ee}var Y=function(){if(un!==null){var Z=k.unstable_now();Pn=Z;var be=!0,ke=!0;try{ke=un(be,Z)}finally{ke?ae():(an=!1,un=null)}}else an=!1},ae;if(typeof fe=="function")ae=function(){fe(Y)};else if(typeof MessageChannel<"u"){var me=new MessageChannel,je=me.port2;me.port1.onmessage=Y,ae=function(){je.postMessage(null)}}else ae=function(){q(Y,0)};function Be(Z){un=Z,an||(an=!0,ae())}function at(Z,be){sn=q(function(){Z(k.unstable_now())},be)}function We(){G(sn),sn=-1}var St=la,Zt=null;k.unstable_IdlePriority=ee,k.unstable_ImmediatePriority=ne,k.unstable_LowPriority=Le,k.unstable_NormalPriority=ue,k.unstable_Profiling=Zt,k.unstable_UserBlockingPriority=gt,k.unstable_cancelCallback=yt,k.unstable_continueExecution=Ze,k.unstable_forceFrameRate=A,k.unstable_getCurrentPriorityLevel=nt,k.unstable_getFirstCallbackNode=Yt,k.unstable_next=Ye,k.unstable_pauseExecution=dn,k.unstable_requestPaint=St,k.unstable_runWithPriority=Lt,k.unstable_scheduleCallback=ze,k.unstable_shouldYield=Yn,k.unstable_wrapCallback=Ne,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)})()}(ef)),ef}var gm;function F0(){return gm||(gm=1,Jc.exports=z0()),Jc.exports}var oa={},bm;function V0(){if(bm)return oa;bm=1;/** * @license React * react-dom.development.js * @@ -65,15 +65,15 @@ React keys must be passed directly to JSX without using spread: * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */return function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var w=Zc(),L=B0(),me=w.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,Ee=!1;function fe(e){Ee=e}function Re(e){if(!Ee){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?t-1:0),a=1;a2&&(e[0]==="o"||e[0]==="O")&&(e[1]==="n"||e[1]==="N")}function Qt(e,t,n,a){if(n!==null&&n.type===rt)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":{if(a)return!1;if(n!==null)return!n.acceptsBooleans;var r=e.toLowerCase().slice(0,5);return r!=="data-"&&r!=="aria-"}default:return!1}}function wn(e,t,n,a){if(t===null||typeof t>"u"||Qt(e,t,n,a))return!0;if(a)return!1;if(n!==null)switch(n.type){case Ot:return!t;case Lt:return t===!1;case hn:return isNaN(t);case ia:return isNaN(t)||t<1}return!1}function Pt(e){return Dt.hasOwnProperty(e)?Dt[e]:null}function Tt(e,t,n,a,r,i,o){this.acceptsBooleans=t===mn||t===Ot||t===Lt,this.attributeName=a,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=o}var Dt={},er=["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"];er.forEach(function(e){Dt[e]=new Tt(e,rt,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0],n=e[1];Dt[t]=new Tt(t,tn,!1,n,null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){Dt[e]=new Tt(e,mn,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Dt[e]=new Tt(e,mn,!1,e,null,!1,!1)}),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","disablePictureInPicture","disableRemotePlayback","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach(function(e){Dt[e]=new Tt(e,Ot,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){Dt[e]=new Tt(e,Ot,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){Dt[e]=new Tt(e,Lt,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){Dt[e]=new Tt(e,ia,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){Dt[e]=new Tt(e,hn,!1,e.toLowerCase(),null,!1,!1)});var $n=/[\-\:]([a-z])/g,pa=function(e){return e[1].toUpperCase()};["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach(function(e){var t=e.replace($n,pa);Dt[t]=new Tt(t,tn,!1,e,null,!1,!1)}),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach(function(e){var t=e.replace($n,pa);Dt[t]=new Tt(t,tn,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace($n,pa);Dt[t]=new Tt(t,tn,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){Dt[e]=new Tt(e,tn,!1,e.toLowerCase(),null,!1,!1)});var tr="xlinkHref";Dt[tr]=new Tt("xlinkHref",tn,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){Dt[e]=new Tt(e,tn,!1,e.toLowerCase(),null,!0,!0)});var Fr=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*\:/i,Vr=!1;function wa(e){!Vr&&Fr.test(e)&&(Vr=!0,d("A future version of React will block javascript: URLs as a security precaution. Use event handlers instead if you can. If you need to generate unsafe HTML try using dangerouslySetInnerHTML instead. React was passed %s.",JSON.stringify(e)))}function ja(e,t,n,a){if(a.mustUseProperty){var r=a.propertyName;return e[r]}else{Ce(n,t),a.sanitizeURL&&wa(""+n);var i=a.attributeName,o=null;if(a.type===Lt){if(e.hasAttribute(i)){var l=e.getAttribute(i);return l===""?!0:wn(t,n,a,!1)?l:l===""+n?n:l}}else if(e.hasAttribute(i)){if(wn(t,n,a,!1))return e.getAttribute(i);if(a.type===Ot)return n;o=e.getAttribute(i)}return wn(t,n,a,!1)?o===null?n:o:o===""+n?n:o}}function Br(e,t,n,a){{if(!Bt(t))return;if(!e.hasAttribute(t))return n===void 0?void 0:null;var r=e.getAttribute(t);return Ce(n,t),r===""+n?n:r}}function ma(e,t,n,a){var r=Pt(t);if(!Xt(t,r,a)){if(wn(t,n,r,a)&&(n=null),a||r===null){if(Bt(t)){var i=t;n===null?e.removeAttribute(i):(Ce(n,t),e.setAttribute(i,""+n))}return}var o=r.mustUseProperty;if(o){var l=r.propertyName;if(n===null){var u=r.type;e[l]=u===Ot?!1:""}else e[l]=n;return}var f=r.attributeName,v=r.attributeNamespace;if(n===null)e.removeAttribute(f);else{var b=r.type,g;b===Ot||b===Lt&&n===!0?g="":(Ce(n,f),g=""+n,r.sanitizeURL&&wa(g.toString())),v?e.setAttributeNS(v,f,g):e.setAttribute(f,g)}}}var h=Symbol.for("react.element"),B=Symbol.for("react.portal"),D=Symbol.for("react.fragment"),T=Symbol.for("react.strict_mode"),x=Symbol.for("react.profiler"),O=Symbol.for("react.provider"),c=Symbol.for("react.context"),y=Symbol.for("react.forward_ref"),S=Symbol.for("react.suspense"),A=Symbol.for("react.suspense_list"),ve=Symbol.for("react.memo"),z=Symbol.for("react.lazy"),ue=Symbol.for("react.scope"),ye=Symbol.for("react.debug_trace_mode"),ze=Symbol.for("react.offscreen"),it=Symbol.for("react.legacy_hidden"),Ft=Symbol.for("react.cache"),nn=Symbol.for("react.tracing_marker"),Zt=Symbol.iterator,Pn="@@iterator";function ft(e){if(e===null||typeof e!="object")return null;var t=Zt&&e[Zt]||e[Pn];return typeof t=="function"?t:null}var be=Object.assign,Rn=0,Ua,il,Ha,ha,ya,$r,yi;function un(){}un.__reactDisabledLog=!0;function _t(){{if(Rn===0){Ua=console.log,il=console.info,Ha=console.warn,ha=console.error,ya=console.group,$r=console.groupCollapsed,yi=console.groupEnd;var e={configurable:!0,enumerable:!0,value:un,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}Rn++}}function za(){{if(Rn--,Rn===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:be({},e,{value:Ua}),info:be({},e,{value:il}),warn:be({},e,{value:Ha}),error:be({},e,{value:ha}),group:be({},e,{value:ya}),groupCollapsed:be({},e,{value:$r}),groupEnd:be({},e,{value:yi})})}Rn<0&&d("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var oa=me.ReactCurrentDispatcher,hr;function nr(e,t,n){{if(hr===void 0)try{throw Error()}catch(r){var a=r.stack.trim().match(/\n( *(at )?)/);hr=a&&a[1]||""}return` -`+hr+e}}var gi=!1,Pr;{var no=typeof WeakMap=="function"?WeakMap:Map;Pr=new no}function bi(e,t){if(!e||gi)return"";{var n=Pr.get(e);if(n!==void 0)return n}var a;gi=!0;var r=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var i;i=oa.current,oa.current=null,_t();try{if(t){var o=function(){throw Error()};if(Object.defineProperty(o.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(o,[])}catch(M){a=M}Reflect.construct(e,[],o)}else{try{o.call()}catch(M){a=M}e.call(o.prototype)}}else{try{throw Error()}catch(M){a=M}e()}}catch(M){if(M&&a&&typeof M.stack=="string"){for(var l=M.stack.split(` + */return function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var k=Zc(),R=F0(),Ee=k.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,we=!1;function xe(e){we=e}function ce(e){if(!we){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a1?t-1:0),a=1;a2&&(e[0]==="o"||e[0]==="O")&&(e[1]==="n"||e[1]==="N")}function Nt(e,t,n,a){if(n!==null&&n.type===ae)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":{if(a)return!1;if(n!==null)return!n.acceptsBooleans;var r=e.toLowerCase().slice(0,5);return r!=="data-"&&r!=="aria-"}default:return!1}}function Xt(e,t,n,a){if(t===null||typeof t>"u"||Nt(e,t,n,a))return!0;if(a)return!1;if(n!==null)switch(n.type){case Be:return!t;case at:return t===!1;case We:return isNaN(t);case St:return isNaN(t)||t<1}return!1}function Vt(e){return Bt.hasOwnProperty(e)?Bt[e]:null}function jt(e,t,n,a,r,i,o){this.acceptsBooleans=t===je||t===Be||t===at,this.attributeName=a,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=o}var Bt={},tr=["children","dangerouslySetInnerHTML","defaultValue","defaultChecked","innerHTML","suppressContentEditableWarning","suppressHydrationWarning","style"];tr.forEach(function(e){Bt[e]=new jt(e,ae,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0],n=e[1];Bt[t]=new jt(t,me,!1,n,null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){Bt[e]=new jt(e,je,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Bt[e]=new jt(e,je,!1,e,null,!1,!1)}),["allowFullScreen","async","autoFocus","autoPlay","controls","default","defer","disabled","disablePictureInPicture","disableRemotePlayback","formNoValidate","hidden","loop","noModule","noValidate","open","playsInline","readOnly","required","reversed","scoped","seamless","itemScope"].forEach(function(e){Bt[e]=new jt(e,Be,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){Bt[e]=new jt(e,Be,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){Bt[e]=new jt(e,at,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){Bt[e]=new jt(e,St,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){Bt[e]=new jt(e,We,!1,e.toLowerCase(),null,!1,!1)});var ya=/[\-\:]([a-z])/g,hn=function(e){return e[1].toUpperCase()};["accent-height","alignment-baseline","arabic-form","baseline-shift","cap-height","clip-path","clip-rule","color-interpolation","color-interpolation-filters","color-profile","color-rendering","dominant-baseline","enable-background","fill-opacity","fill-rule","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-name","glyph-orientation-horizontal","glyph-orientation-vertical","horiz-adv-x","horiz-origin-x","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","overline-position","overline-thickness","paint-order","panose-1","pointer-events","rendering-intent","shape-rendering","stop-color","stop-opacity","strikethrough-position","strikethrough-thickness","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-rendering","underline-position","underline-thickness","unicode-bidi","unicode-range","units-per-em","v-alphabetic","v-hanging","v-ideographic","v-mathematical","vector-effect","vert-adv-y","vert-origin-x","vert-origin-y","word-spacing","writing-mode","xmlns:xlink","x-height"].forEach(function(e){var t=e.replace(ya,hn);Bt[t]=new jt(t,me,!1,e,null,!1,!1)}),["xlink:actuate","xlink:arcrole","xlink:role","xlink:show","xlink:title","xlink:type"].forEach(function(e){var t=e.replace(ya,hn);Bt[t]=new jt(t,me,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(ya,hn);Bt[t]=new jt(t,me,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){Bt[e]=new jt(e,me,!1,e.toLowerCase(),null,!1,!1)});var ua="xlinkHref";Bt[ua]=new jt("xlinkHref",me,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){Bt[e]=new jt(e,me,!1,e.toLowerCase(),null,!0,!0)});var Br=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*\:/i,za=!1;function yr(e){!za&&Br.test(e)&&(za=!0,d("A future version of React will block javascript: URLs as a security precaution. Use event handlers instead if you can. If you need to generate unsafe HTML try using dangerouslySetInnerHTML instead. React was passed %s.",JSON.stringify(e)))}function $r(e,t,n,a){if(a.mustUseProperty){var r=a.propertyName;return e[r]}else{tn(n,t),a.sanitizeURL&&yr(""+n);var i=a.attributeName,o=null;if(a.type===at){if(e.hasAttribute(i)){var l=e.getAttribute(i);return l===""?!0:Xt(t,n,a,!1)?l:l===""+n?n:l}}else if(e.hasAttribute(i)){if(Xt(t,n,a,!1))return e.getAttribute(i);if(a.type===Be)return n;o=e.getAttribute(i)}return Xt(t,n,a,!1)?o===null?n:o:o===""+n?n:o}}function Pr(e,t,n,a){{if(!ut(t))return;if(!e.hasAttribute(t))return n===void 0?void 0:null;var r=e.getAttribute(t);return tn(n,t),r===""+n?n:r}}function ga(e,t,n,a){var r=Vt(t);if(!xt(t,r,a)){if(Xt(t,n,r,a)&&(n=null),a||r===null){if(ut(t)){var i=t;n===null?e.removeAttribute(i):(tn(n,t),e.setAttribute(i,""+n))}return}var o=r.mustUseProperty;if(o){var l=r.propertyName;if(n===null){var u=r.type;e[l]=u===Be?!1:""}else e[l]=n;return}var f=r.attributeName,v=r.attributeNamespace;if(n===null)e.removeAttribute(f);else{var S=r.type,b;S===Be||S===at&&n===!0?b="":(tn(n,f),b=""+n,r.sanitizeURL&&yr(b.toString())),v?e.setAttributeNS(v,f,b):e.setAttribute(f,b)}}}var Rn=Symbol.for("react.element"),wn=Symbol.for("react.portal"),Da=Symbol.for("react.fragment"),gr=Symbol.for("react.strict_mode"),y=Symbol.for("react.profiler"),F=Symbol.for("react.provider"),c=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),g=Symbol.for("react.suspense"),E=Symbol.for("react.suspense_list"),T=Symbol.for("react.memo"),M=Symbol.for("react.lazy"),L=Symbol.for("react.scope"),z=Symbol.for("react.debug_trace_mode"),Ue=Symbol.for("react.offscreen"),$=Symbol.for("react.legacy_hidden"),Ce=Symbol.for("react.cache"),et=Symbol.for("react.tracing_marker"),rt=Symbol.iterator,Wt="@@iterator";function $t(e){if(e===null||typeof e!="object")return null;var t=rt&&e[rt]||e[Wt];return typeof t=="function"?t:null}var Ve=Object.assign,rn=0,Fa,An,Ot,sa,nr,no,Yr;function ba(){}ba.__reactDisabledLog=!0;function _a(){{if(rn===0){Fa=console.log,An=console.info,Ot=console.warn,sa=console.error,nr=console.group,no=console.groupCollapsed,Yr=console.groupEnd;var e={configurable:!0,enumerable:!0,value:ba,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}rn++}}function bi(){{if(rn--,rn===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:Ve({},e,{value:Fa}),info:Ve({},e,{value:An}),warn:Ve({},e,{value:Ot}),error:Ve({},e,{value:sa}),group:Ve({},e,{value:nr}),groupCollapsed:Ve({},e,{value:no}),groupEnd:Ve({},e,{value:Yr})})}rn<0&&d("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var Wr=Ee.ReactCurrentDispatcher,cn;function ft(e,t,n){{if(cn===void 0)try{throw Error()}catch(r){var a=r.stack.trim().match(/\n( *(at )?)/);cn=a&&a[1]||""}return` +`+cn+e}}var ca=!1,Wn;{var ar=typeof WeakMap=="function"?WeakMap:Map;Wn=new ar}function Si(e,t){if(!e||ca)return"";{var n=Wn.get(e);if(n!==void 0)return n}var a;ca=!0;var r=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var i;i=Wr.current,Wr.current=null,_a();try{if(t){var o=function(){throw Error()};if(Object.defineProperty(o.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(o,[])}catch(_){a=_}Reflect.construct(e,[],o)}else{try{o.call()}catch(_){a=_}e.call(o.prototype)}}else{try{throw Error()}catch(_){a=_}e()}}catch(_){if(_&&a&&typeof _.stack=="string"){for(var l=_.stack.split(` `),u=a.stack.split(` -`),f=l.length-1,v=u.length-1;f>=1&&v>=0&&l[f]!==u[v];)v--;for(;f>=1&&v>=0;f--,v--)if(l[f]!==u[v]){if(f!==1||v!==1)do if(f--,v--,v<0||l[f]!==u[v]){var b=` -`+l[f].replace(" at new "," at ");return e.displayName&&b.includes("")&&(b=b.replace("",e.displayName)),typeof e=="function"&&Pr.set(e,b),b}while(f>=1&&v>=0);break}}}finally{gi=!1,oa.current=i,za(),Error.prepareStackTrace=r}var g=e?e.displayName||e.name:"",R=g?nr(g):"";return typeof e=="function"&&Pr.set(e,R),R}function ao(e,t,n){return bi(e,!0)}function ol(e,t,n){return bi(e,!1)}function Yu(e){var t=e.prototype;return!!(t&&t.isReactComponent)}function ll(e,t,n){if(e==null)return"";if(typeof e=="function")return bi(e,Yu(e));if(typeof e=="string")return nr(e);switch(e){case S:return nr("Suspense");case A:return nr("SuspenseList")}if(typeof e=="object")switch(e.$$typeof){case y:return ol(e.render);case ve:return ll(e.type,t,n);case z:{var a=e,r=a._payload,i=a._init;try{return ll(i(r),t,n)}catch{}}}return""}function af(e){switch(e._debugOwner&&e._debugOwner.type,e._debugSource,e.tag){case K:return nr(e.type);case Vt:return nr("Lazy");case _:return nr("Suspense");case nt:return nr("SuspenseList");case he:case bt:case De:return ol(e.type);case _e:return ol(e.type.render);case te:return ao(e.type);default:return""}}function Si(e){try{var t="",n=e;do t+=af(n),n=n.return;while(n);return t}catch(a){return` +`),f=l.length-1,v=u.length-1;f>=1&&v>=0&&l[f]!==u[v];)v--;for(;f>=1&&v>=0;f--,v--)if(l[f]!==u[v]){if(f!==1||v!==1)do if(f--,v--,v<0||l[f]!==u[v]){var S=` +`+l[f].replace(" at new "," at ");return e.displayName&&S.includes("")&&(S=S.replace("",e.displayName)),typeof e=="function"&&Wn.set(e,S),S}while(f>=1&&v>=0);break}}}finally{ca=!1,Wr.current=i,bi(),Error.prepareStackTrace=r}var b=e?e.displayName||e.name:"",w=b?ft(b):"";return typeof e=="function"&&Wn.set(e,w),w}function ao(e,t,n){return Si(e,!0)}function il(e,t,n){return Si(e,!1)}function Yu(e){var t=e.prototype;return!!(t&&t.isReactComponent)}function ol(e,t,n){if(e==null)return"";if(typeof e=="function")return Si(e,Yu(e));if(typeof e=="string")return ft(e);switch(e){case g:return ft("Suspense");case E:return ft("SuspenseList")}if(typeof e=="object")switch(e.$$typeof){case m:return il(e.render);case T:return ol(e.type,t,n);case M:{var a=e,r=a._payload,i=a._init;try{return ol(i(r),t,n)}catch{}}}return""}function af(e){switch(e._debugOwner&&e._debugOwner.type,e._debugSource,e.tag){case ee:return ft(e.type);case At:return ft("Lazy");case ye:return ft("Suspense");case Dt:return ft("SuspenseList");case ve:case gt:case K:return il(e.type);case _e:return il(e.type.render);case ne:return ao(e.type);default:return""}}function Ti(e){try{var t="",n=e;do t+=af(n),n=n.return;while(n);return t}catch(a){return` Error generating stack: `+a.message+` -`+a.stack}}function Wu(e,t,n){var a=e.displayName;if(a)return a;var r=t.displayName||t.name||"";return r!==""?n+"("+r+")":n}function ul(e){return e.displayName||"Context"}function xt(e){if(e==null)return null;if(typeof e.tag=="number"&&d("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case D:return"Fragment";case B:return"Portal";case x:return"Profiler";case T:return"StrictMode";case S:return"Suspense";case A:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case c:var t=e;return ul(t)+".Consumer";case O:var n=e;return ul(n._context)+".Provider";case y:return Wu(e,e.render,"ForwardRef");case ve:var a=e.displayName||null;return a!==null?a:xt(e.type)||"Memo";case z:{var r=e,i=r._payload,o=r._init;try{return xt(o(i))}catch{return null}}}return null}function rf(e,t,n){var a=t.displayName||t.name||"";return e.displayName||(a!==""?n+"("+a+")":n)}function yr(e){return e.displayName||"Context"}function Xe(e){var t=e.tag,n=e.type;switch(t){case le:return"Cache";case St:var a=n;return yr(a)+".Consumer";case Pe:var r=n;return yr(r._context)+".Provider";case pe:return"DehydratedFragment";case _e:return rf(n,n.render,"ForwardRef");case zt:return"Fragment";case K:return n;case H:return"Portal";case I:return"Root";case Oe:return"Text";case Vt:return xt(n);case qt:return n===T?"StrictMode":"Mode";case Le:return"Offscreen";case ot:return"Profiler";case oe:return"Scope";case _:return"Suspense";case nt:return"SuspenseList";case W:return"TracingMarker";case te:case he:case Me:case bt:case ne:case De:if(typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n;break}return null}var sl=me.ReactDebugCurrentFrame,Qn=null,Ti=!1;function Yr(){{if(Qn===null)return null;var e=Qn._debugOwner;if(e!==null&&typeof e<"u")return Xe(e)}return null}function of(){return Qn===null?"":Si(Qn)}function Dn(){sl.getCurrentStack=null,Qn=null,Ti=!1}function Jt(e){sl.getCurrentStack=e===null?null:of,Qn=e,Ti=!1}function Iu(){return Qn}function Ra(e){Ti=e}function Kn(e){return""+e}function Fa(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return yt(e),e;default:return""}}var lf={button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0};function cl(e,t){lf[t.type]||t.onChange||t.onInput||t.readOnly||t.disabled||t.value==null||d("You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`."),t.onChange||t.readOnly||t.disabled||t.checked==null||d("You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.")}function qu(e){var t=e.type,n=e.nodeName;return n&&n.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function fl(e){return e._valueTracker}function ro(e){e._valueTracker=null}function uf(e){var t="";return e&&(qu(e)?t=e.checked?"true":"false":t=e.value),t}function Wr(e){var t=qu(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);yt(e[t]);var a=""+e[t];if(!(e.hasOwnProperty(t)||typeof n>"u"||typeof n.get!="function"||typeof n.set!="function")){var r=n.get,i=n.set;Object.defineProperty(e,t,{configurable:!0,get:function(){return r.call(this)},set:function(l){yt(l),a=""+l,i.call(this,l)}}),Object.defineProperty(e,t,{enumerable:n.enumerable});var o={getValue:function(){return a},setValue:function(l){yt(l),a=""+l},stopTracking:function(){ro(e),delete e[t]}};return o}}function Ei(e){fl(e)||(e._valueTracker=Wr(e))}function dl(e){if(!e)return!1;var t=fl(e);if(!t)return!0;var n=t.getValue(),a=uf(e);return a!==n?(t.setValue(a),!0):!1}function gr(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var io=!1,oo=!1,lo=!1,Gu=!1;function Xu(e){var t=e.type==="checkbox"||e.type==="radio";return t?e.checked!=null:e.value!=null}function vl(e,t){var n=e,a=t.checked,r=be({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:a??n._wrapperState.initialChecked});return r}function Qu(e,t){cl("input",t),t.checked!==void 0&&t.defaultChecked!==void 0&&!oo&&(d("%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://reactjs.org/link/controlled-components",Yr()||"A component",t.type),oo=!0),t.value!==void 0&&t.defaultValue!==void 0&&!io&&(d("%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://reactjs.org/link/controlled-components",Yr()||"A component",t.type),io=!0);var n=e,a=t.defaultValue==null?"":t.defaultValue;n._wrapperState={initialChecked:t.checked!=null?t.checked:t.defaultChecked,initialValue:Fa(t.value!=null?t.value:a),controlled:Xu(t)}}function s(e,t){var n=e,a=t.checked;a!=null&&ma(n,"checked",a,!1)}function m(e,t){var n=e;{var a=Xu(t);!n._wrapperState.controlled&&a&&!Gu&&(d("A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components"),Gu=!0),n._wrapperState.controlled&&!a&&!lo&&(d("A component is changing a controlled input to be uncontrolled. This is likely caused by the value changing from a defined to undefined, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components"),lo=!0)}s(e,t);var r=Fa(t.value),i=t.type;if(r!=null)i==="number"?(r===0&&n.value===""||n.value!=r)&&(n.value=Kn(r)):n.value!==Kn(r)&&(n.value=Kn(r));else if(i==="submit"||i==="reset"){n.removeAttribute("value");return}t.hasOwnProperty("value")?Ne(n,t.type,r):t.hasOwnProperty("defaultValue")&&Ne(n,t.type,Fa(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(n.defaultChecked=!!t.defaultChecked)}function k(e,t,n){var a=e;if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type,i=r==="submit"||r==="reset";if(i&&(t.value===void 0||t.value===null))return;var o=Kn(a._wrapperState.initialValue);n||o!==a.value&&(a.value=o),a.defaultValue=o}var l=a.name;l!==""&&(a.name=""),a.defaultChecked=!a.defaultChecked,a.defaultChecked=!!a._wrapperState.initialChecked,l!==""&&(a.name=l)}function N(e,t){var n=e;m(n,t),X(n,t)}function X(e,t){var n=t.name;if(t.type==="radio"&&n!=null){for(var a=e;a.parentNode;)a=a.parentNode;Ce(n,"name");for(var r=a.querySelectorAll("input[name="+JSON.stringify(""+n)+'][type="radio"]'),i=0;i.")))}):t.dangerouslySetInnerHTML!=null&&(dt||(dt=!0,d("Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected.")))),t.selected!=null&&!Se&&(d("Use the `defaultValue` or `value` props on instead of setting `selected` on