.App{font-family:Arial,sans-serif;padding:0;max-width:100%;margin:0}input[type=file]{margin-right:1rem}input:focus,select:focus,textarea:focus{outline:2px solid #2196f3;outline-offset:1px;border-color:#2196f3}button{background:none;border:none;cursor:pointer;padding:4px;font-size:1.1rem}button:focus-visible{outline:2px solid #2196f3;outline-offset:2px}.section{border:1px solid #ccc;border-radius:10px;padding:1rem;margin-bottom:2rem;background-color:#fff}.section h2{margin-top:0;font-size:1.2rem;margin-bottom:1rem}.loading-container,.section h2{display:flex;align-items:center}.loading-container{justify-content:center;padding:2rem}.status-message{padding:1rem;border-radius:4px;margin-bottom:1rem}.status-uploading{background-color:#e3f2fd;border:1px solid #2196f3;color:#0d47a1}.status-decrypting,.status-transcribing{background-color:#fff3e0;border:1px solid #ff9800;color:#e65100}.status-error{background-color:#ffebee;border:1px solid #f44336;color:#c62828}.folder-item:focus,.recording-item:focus{outline:2px solid #2196f3;outline-offset:2px}.folder-item:focus-visible,.recording-item:focus-visible{outline:2px solid #2196f3;outline-offset:2px}.app-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background-color:#f7f7f7;border-bottom:1px solid #ddd}.site-name{text-decoration:none;color:inherit}.site-name:hover{color:#2196f3}.user-menu-container{position:relative}.user-menu-toggle{background:none;border:none;cursor:pointer;padding:.5rem;font-size:1rem}.user-dropdown-menu{position:absolute;top:2rem;right:0;background:#fff;border:1px solid #ccc;box-shadow:0 2px 5px rgba(0,0,0,.1);z-index:999;min-width:200px}.app-layout{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1 1}.app-footer{background-color:#f8f9fa;border-top:1px solid #e9ecef;padding:2rem;margin-top:auto}.footer-content{width:100%;margin:0;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-section{display:flex;gap:1.5rem;align-items:center}.footer-section p{margin:0;color:#666;font-size:.9rem}.footer-link{color:#666;text-decoration:none;font-size:.9rem;transition:color .2s ease}.footer-link:hover{color:#2196f3;text-decoration:underline}@media (max-width:768px){.footer-content{flex-direction:column;text-align:center;gap:1rem}.footer-section{justify-content:center}}.recording-page .main-content{padding:0}.recording-page.with-sidebar .app-footer{margin-right:400px;transition:margin-right .3s ease}@media (max-width:768px){.recording-page.with-sidebar .app-footer{margin-right:0}}.navigation-header{padding:0 0 1rem;display:flex;gap:1rem;align-items:center}.home-content-container{padding:0 2rem}.main-layout{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}@media (min-width:768px){.main-layout{flex-direction:row;gap:2rem}}.folder-item,.recording-item{display:flex;justify-content:space-between;align-items:center;border:1px solid #ccc;border-radius:8px;padding:10px 12px;margin-bottom:10px;background-color:#f9f9f9}.item-actions{display:flex;gap:8px;margin-left:auto}.folder-item:hover,.recording-item:hover{background-color:#f0f0f0}.folder-list,.recording-list{margin-bottom:30px}.folder-item.highlight{background-color:#e6f7ff;border:2px dashed #07c;border-radius:6px}.upload-transcribe-button{border:1px solid #ccc;background-color:#f0f0f0;padding:8px 16px;border-radius:6px;font-weight:700;cursor:pointer;margin-top:.5rem;position:relative;z-index:9999;pointer-events:auto}.upload-transcribe-button:disabled{opacity:.6;cursor:not-allowed}.top-section,.top-section-wrapper{background:#fff}.top-section{padding:1rem 2rem 0}.top-section-header{display:flex;justify-content:space-between;align-items:center}.recording-title{margin:0;font-size:1.5rem;font-weight:600;color:#333}.recording-title-section{display:flex;flex-direction:column;gap:.25rem;flex:1 1}.recording-controls{display:flex;align-items:center;gap:1rem}.player-section{background:#fff;z-index:99;padding:.75rem 2rem 1rem;border-bottom:1px solid #eee;transition:all .2s ease}.player-section.fixed{position:fixed;top:0;left:0;right:0;box-shadow:0 2px 4px rgba(0,0,0,.1);z-index:99;background:#fff}.player-section .media-player-container{padding:0;margin:0}.custom-audio-player,.waveform-container{min-height:60px}.recording-page{overflow:visible;height:auto}.main-section{min-height:100vh}.framework-dropdown-container{position:relative}.framework-dropdown-button{background:#f8f9fa;border:1px solid #ddd;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;color:#333;transition:all .2s ease;min-width:160px;text-align:left}.framework-dropdown-button:hover{background-color:#e9ecef;border-color:#2196f3}.framework-dropdown-menu{position:absolute;top:100%;right:0;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:1000;min-width:200px;overflow:hidden;margin-top:4px}.framework-menu-item{display:block;width:100%;padding:.75rem 1rem;background:none;border:none;text-align:left;cursor:pointer;font-size:.9rem;transition:background-color .2s ease}.framework-menu-item:hover{background-color:#f5f5f5}.framework-menu-item.selected{background-color:#e3f2fd;color:#1976d2;font-weight:500}.recording-menu-container{position:relative}.recording-menu-button{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:4px;color:#666;transition:background-color .2s ease}.recording-menu-button:hover{background-color:#f0f0f0}.recording-dropdown-menu{position:absolute;top:100%;right:0;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:1000;min-width:150px;overflow:hidden}.menu-item{display:block;width:100%;padding:.75rem 1rem;background:none;border:none;text-align:left;cursor:pointer;font-size:.9rem;transition:background-color .2s ease}.menu-item:hover{background-color:#f5f5f5}.menu-item.delete-item:hover{background-color:#ffebee;color:#d32f2f}.rename-input-container{display:flex;align-items:center;gap:.5rem;flex:1 1}.rename-input{flex:1 1;padding:.5rem;border:2px solid #2196f3;border-radius:4px;font-size:1.25rem;font-weight:600}.rename-cancel-btn,.rename-confirm-btn{padding:.5rem .75rem;border:none;border-radius:4px;cursor:pointer;font-weight:700}.rename-confirm-btn{background-color:#4caf50;color:#fff}.rename-cancel-btn{background-color:#f44336;color:#fff}.media-player-container{padding-bottom:1rem}.main-section{margin:0 2rem;padding:0 0 2rem}.tab-navigation{display:flex;border-bottom:2px solid #eee;margin-bottom:1rem}.tab-button{background:none;padding:1rem 1.5rem;cursor:pointer;font-size:1rem;font-weight:500;color:#666;border:none;border-bottom:3px solid transparent;transition:all .2s ease}.tab-button:hover{color:#2196f3;background-color:#f5f5f5}.tab-button.active{color:#2196f3;border-bottom-color:#2196f3;background-color:#f8f9fa}.tab-content{min-height:400px}.tab-content,.transcript-tab{position:relative}.transcript-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.transcript-title{margin:0;font-size:1.25rem;font-weight:600}.has-active-word .active-word{background-color:#cde5cd!important}.transcript-content-wrapper{position:relative;min-height:400px}.transcript-main-content{transition:all .3s ease}.transcript-main-content.with-sidebar{margin-right:320px}.transcript-viewer{margin-top:1rem}.recap-tab{padding:1rem 0}.recap-placeholder{margin-top:2rem;padding:2rem;background-color:#f8f9fa;border-radius:8px;text-align:center;color:#666}.recording-page{transition:margin-right .3s ease}@media (max-width:768px){.top-section{padding:1rem}.sticky-player-section{padding:.5rem 1rem}.main-section{margin:0 1rem;padding:0 0 2rem}.transcript-main-content.with-sidebar{margin-right:0}.top-section-header{flex-direction:column;align-items:flex-start;gap:1rem}.recording-menu-container{align-self:flex-end}.tab-navigation{overflow-x:auto;white-space:nowrap}.tab-button{min-width:120px}}.transcript-section{margin-top:1rem;line-height:1.6}.utterance{display:flex;margin-bottom:1.5rem;align-items:flex-start;gap:1rem}.speaker-info{min-width:120px;flex-shrink:0;text-align:right;padding-right:1rem;border-right:2px solid #e0e0e0}.speaker-name{font-weight:700;font-size:.9rem;margin-bottom:.25rem}.timestamp{font-size:.8rem;color:#666}.utterance-content{flex:1 1;padding-left:1rem}.utterance-words{line-height:1.8}.speaker-name.speaker-1{color:#2196f3}.speaker-name.speaker-2{color:#4caf50}.speaker-name.speaker-3{color:#ff9800}.speaker-name.speaker-4{color:#9c27b0}.speaker-name.speaker-5{color:#f44336}.speaker-name.speaker-6{color:#00bcd4}.word{display:inline;padding:0;margin:0;border-radius:0;cursor:pointer;transition:background-color .2s ease}.word:hover{background-color:#f0f8ff}.active-word{background-color:#cde5cd!important;padding:2px 4px!important;border-radius:3px!important}.manual-highlight-viewer .utterance-content{user-select:text;-webkit-user-select:text;-moz-user-select:text}.evidence-highlight{border-bottom:2px solid #4caf50}.contra-evidence-highlight{border-bottom:2px solid #f44336}@media (max-width:768px){.utterance{flex-direction:column;gap:.5rem}.speaker-info{min-width:auto;text-align:left;border-right:none;border-bottom:1px solid #e0e0e0;padding-right:0;padding-bottom:.5rem}.utterance-content{padding-left:0}.inline-badges-container{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.inline-marker-badges{display:inline-flex;gap:.25rem;cursor:pointer;transition:opacity .2s ease}.inline-marker-badges:hover{opacity:.8}.inline-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;border:1px solid;white-space:nowrap}.inline-badge.badge-evidence{background-color:#e8f5e8;border-color:#4caf50;color:#2e7d32}.inline-badge.badge-contra{background-color:#ffebee;border-color:#f44336;color:#c62828}.badge-competency{font-weight:600;margin-right:.25rem}.badge-marker{display:inline-flex;align-items:center;gap:.15rem;margin-left:.25rem;padding-left:.25rem;border-left:1px solid}.badge-icon{font-size:.7rem;margin-left:.1rem}.utterance-content{display:flex;flex-direction:column;gap:.25rem}}.markers-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid #eee;background:#f8f9fa}.markers-header h4{margin:0;font-size:.95rem;font-weight:600}.back-btn,.save-btn{padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:500;font-size:.8rem}.back-btn{background:#f0f0f0;color:#333;border:none}.back-btn:hover{background:#e0e0e0}.save-btn{background:#2196f3;color:#fff;border:none}.save-btn:hover:not(:disabled){background:#1976d2}.save-btn:disabled{background:#ccc;cursor:not-allowed}.marker-item{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;margin-bottom:.5rem;border-radius:6px;font-size:.9rem;line-height:1.4;position:relative;cursor:default}.marker-item:not(.marker-evidence):not(.marker-contra){border:1px solid #e0e0e0;background:#f8f9fa;cursor:pointer;transition:all .2s ease}.marker-item:not(.marker-evidence):not(.marker-contra):hover{background:#e9ecef;border-color:#2196f3}.marker-item.marker-evidence{background-color:#e8f5e8;border:2px solid #4caf50}.marker-item.marker-contra{background-color:#ffebee;border:2px solid #f44336}.marker-number{font-weight:700;color:#2196f3;min-width:28px;display:flex;flex-direction:column;align-items:center;gap:.15rem;flex-shrink:0}.marker-number:after{content:attr(data-icon);font-size:.85rem;line-height:1}.marker-evidence .marker-number{color:#2e7d32}.marker-contra .marker-number{color:#c62828}.marker-text{flex:1 1;color:#333;font-size:.9rem;line-height:1.5}.evidence-highlight{background-color:#e8f5e8;-webkit-text-decoration-color:#4caf50;text-decoration-color:#4caf50;border-top:2px solid #4caf50}.contra-evidence-highlight,.evidence-highlight{text-decoration-thickness:2px;padding:2px 0;box-decoration-break:clone;-webkit-box-decoration-break:clone}.contra-evidence-highlight{background-color:#ffebee;-webkit-text-decoration-color:#f44336;text-decoration-color:#f44336;border-top:2px solid #f44336}.assessment-panel-sidebar{position:absolute;right:0;top:0;width:280px;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:50;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,opacity .3s ease;max-height:80vh}.assessment-panel-sidebar.visible{transform:translateX(0);opacity:1}.assessment-panel-sidebar.hidden{transform:translateX(100%);opacity:0;pointer-events:none}.assessment-panel-sidebar.collapsed .assessment-sidebar-content{display:none}.assessment-sidebar-header{padding:.5rem;border-bottom:1px solid #eee;background:#f8f9fa;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.assessment-sidebar-title{margin:0;font-size:1rem;font-weight:600}.panel-controls{display:flex;gap:.25rem}.assessment-sidebar-close,.collapse-btn{background:none;border:none;font-size:1rem;cursor:pointer;padding:.25rem;border-radius:4px;color:#666}.assessment-sidebar-close:hover,.collapse-btn:hover{background:rgba(0,0,0,.1)}.assessment-sidebar-content{flex:1 1;padding:.5rem;overflow:auto}.multiple-mode-toggle{padding:.75rem;border-bottom:1px solid #eee;background:#f8f9fa}.toggle-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#333}.toggle-label,.toggle-label input[type=checkbox]{cursor:pointer}.competencies-grid{padding:.5rem;display:grid;grid-gap:.5rem;gap:.5rem}.competency-item{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem .75rem;border:1px solid #e0e0e0;border-radius:6px;background:#f8f9fa;cursor:pointer;text-align:left;font-size:.78rem;transition:all .2s ease;width:100%}.competency-item:hover{background:#e9ecef;border-color:#2196f3}.competency-list-panel .competency-item.selected{background-color:#e3f2fd!important;border:2px solid #2196f3!important;box-shadow:0 0 0 2px rgba(33,150,243,.15)!important;padding:calc(.5rem - 1px) calc(.75rem - 1px)}.competency-list-panel .competency-item.selected:hover{background-color:#bbdefb!important;border-color:#1976d2!important}.competency-list-panel .competency-item.selected .competency-number{color:#1976d2!important;font-weight:700!important}.competency-list-panel .competency-item.selected .competency-name{color:#1565c0!important;font-weight:500!important}.competency-number{font-weight:700;color:#2196f3;min-width:20px}.competency-name{flex:1 1;line-height:1.3}.panel-actions{display:flex;justify-content:flex-end;gap:.5rem;padding:.75rem;border-top:1px solid #eee}.assessment-column-toggle{position:absolute;right:-20px;top:50%;transform:translateY(-50%);background:#2196f3;color:#fff;border:none;border-radius:50%;width:40px;height:40px;cursor:pointer;font-size:.9rem;box-shadow:0 2px 8px rgba(0,0,0,.2);z-index:150;transition:all .2s ease}.assessment-column-toggle:hover{background:#1976d2;transform:translateY(-50%) scale(1.1)}.assessment-column-toggle.collapsed{right:-300px}.assessment-panel-sidebar.column-collapsed{transform:translateX(100%);opacity:0;pointer-events:none}.transcript-main-content.with-assessment-column{margin-right:300px;position:relative;transition:margin-right .3s ease}.transcript-main-content{margin-right:0;position:relative;transition:margin-right .3s ease}.assessment-panel-sidebar.positioned{position:absolute;top:var(--selection-top,0);right:0}.saved-assessments-view{padding:.75rem}.saved-markers-list{display:flex}.saved-marker-group,.saved-markers-list{flex-direction:column;gap:0}.all-assessments-view{padding:.5rem}.assessment-group{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;padding:.75rem;margin-bottom:.75rem;position:relative;cursor:pointer;transition:background-color .2s ease}.assessment-group:hover{background:#e9ecef}.assessment-text-preview{font-size:.85rem;color:#333;margin-bottom:.5rem;font-style:italic;line-height:1.3}.saved-marker-group{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.25rem}.marker-item-small{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;border:1px solid}.marker-item-small.marker-evidence{background-color:#e8f5e8;border-color:#4caf50}.marker-item-small.marker-contra{background-color:#ffebee;border-color:#f44336}.marker-number-small{font-weight:700;font-size:.7rem}.marker-icon-small{font-size:.6rem}.delete-assessment-btn{position:absolute;top:.5rem;right:.5rem;background:none;border:none;cursor:pointer;font-size:.9rem;opacity:.6;transition:opacity .2s ease}.delete-assessment-btn:hover{opacity:1}.no-assessments-message{text-align:center;padding:2rem 1rem;color:#666;font-size:.85rem}@media (max-width:768px){.assessment-panel-sidebar{position:fixed;right:0;top:0;width:100vw;height:100vh;z-index:1000;border-radius:0;max-height:none}}.upload-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.upload-modal-container{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 10px 25px rgba(0,0,0,.3)}.upload-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e0e0e0}.upload-modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#333}.upload-modal-close{background:none;border:none;font-size:2rem;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.upload-modal-close:hover{background-color:#f0f0f0}.upload-modal-content{padding:2rem;max-height:70vh;overflow-y:auto}.btn-primary{background:#ff9800;color:#fff;border:none;padding:.75rem 2rem;border-radius:6px;font-weight:700;cursor:pointer;font-size:.9rem;transition:background-color .2s ease}.btn-primary:hover:not(:disabled){background:#f57c00}.btn-primary:disabled{background:#ccc;cursor:not-allowed}.btn-secondary{background:transparent;color:#666;border:1px solid #ddd;padding:.75rem 2rem;border-radius:6px;font-weight:700;cursor:pointer;font-size:.9rem;transition:all .2s ease}.btn-secondary:hover{background:#f5f5f5;border-color:#999}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1rem;border-top:1px solid #e0e0e0}.error-message{background:#ffebee;color:#c62828;padding:1rem;border-radius:6px;border:1px solid #f44336;margin-top:1rem;font-size:.9rem}.drop-zone{border:2px dashed #ddd;border-radius:8px;padding:3rem 2rem;text-align:center;transition:all .3s ease;background:#fafafa}.drop-zone.active{border-color:#ff9800;background:#fff8e1}.drop-zone-content p{margin:0 0 1rem;font-size:1.1rem;color:#333}.file-size-limit{font-size:.9rem!important;color:#666!important;margin-bottom:2rem!important}.upload-buttons{flex-direction:column;gap:1rem}.file-info,.upload-buttons{display:flex;align-items:center}.file-info{gap:.5rem;padding:1rem;background:#f8f9fa;border-radius:6px;margin-bottom:2rem}.file-icon{font-size:1.2rem}.file-name{font-weight:500;color:#333}.file-type{color:#666;font-size:.9rem}.transcription-options{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.option-button{display:flex;flex-direction:column;align-items:center;padding:1.5rem;border:2px solid #e0e0e0;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s ease;text-align:center}.option-button.selected,.option-button:hover:not(:disabled){border-color:#ff9800;background:#fff8e1}.option-button:disabled{opacity:.6;cursor:not-allowed;background:#f5f5f5}.option-title{font-weight:700;font-size:.9rem;color:#333;margin-bottom:.25rem}.option-price{font-size:1.1rem;font-weight:700;color:#ff9800}.option-note{font-size:.8rem;color:#666;margin-top:.25rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;color:#333;margin-bottom:.5rem}.form-input,.form-select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;transition:border-color .2s ease}.form-input:focus,.form-select:focus{outline:none;border-color:#ff9800;box-shadow:0 0 0 2px rgba(255,152,0,.1)}.upload-progress{margin:1rem 0;padding:.75rem;background:#f8f9fa;border-radius:6px;border:1px solid #e0e0e0}.progress-text{font-size:.9rem;color:#666}.step-uploading{text-align:center;padding:2rem 0}.upload-progress-container{margin-bottom:2rem}.progress-circle-wrapper{position:relative;width:120px;height:120px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center}.progress-circle{position:absolute;width:120px;height:120px;border:8px solid #e0e0e0;border-top-color:#ff9800;border-radius:50%;animation:spin 1s linear infinite}.progress-text{position:relative;z-index:1;font-size:1.2rem;font-weight:700;color:#333;pointer-events:none}.progress-label{font-size:1.1rem;font-weight:500;color:#333}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.upload-status{margin:1rem 0}.status-text{font-size:.9rem;color:#666}.step-success{text-align:center;padding:1rem 0}.success-content{margin-bottom:2rem}.success-icon{font-size:4rem;color:#4caf50;margin-bottom:1rem}.success-content h3{margin:0 0 1rem;font-size:1.3rem;color:#333}.success-content p{margin:0 0 1rem;color:#666;line-height:1.5}.success-details{text-align:left;margin-top:1.5rem;padding:1rem;background:#f8f9fa;border-radius:6px}.success-details p{margin-bottom:1rem;font-size:.9rem;line-height:1.6}@media (max-width:600px){.upload-modal-overlay{padding:1rem}.upload-modal-container{max-width:100%}.upload-modal-content,.upload-modal-header{padding:1.5rem}.drop-zone{padding:2rem 1rem}.modal-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.upload-panel{padding:1rem}.upload-panel-title{font-size:1.5rem;margin-bottom:1rem;color:#333;font-weight:600}.upload-section{margin-bottom:1rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.add-recording-btn{border:1px solid #ff9800;background-color:#ff9800;color:#fff;padding:12px 24px;border-radius:6px;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .2s ease}.add-recording-btn:hover{background-color:#f57c00}.upload-error{padding:1rem;margin-bottom:1rem;background-color:#ffebee;border:1px solid #f44336;border-radius:4px;color:#c62828;font-size:.9rem}.folder-section{margin-top:0}.add-folder-btn{border:1px solid #ccc;padding:8px 16px;border-radius:4px;margin-top:0;background:#fff;cursor:pointer;display:inline-block;font-size:.9rem;color:#333;transition:all .2s ease}.add-folder-btn:hover:not(:disabled){background-color:#f5f5f5;border-color:#999}.add-folder-btn:disabled{cursor:not-allowed;opacity:.6}.folder-input-container{margin-top:10px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.folder-name-input{padding:8px;border-radius:4px;border:1px solid #ccc;flex:1 1;min-width:200px}.folder-name-input:disabled{opacity:.6}.folder-create-btn{padding:8px 16px;background-color:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.folder-create-btn:hover:not(:disabled){background-color:#45a049}.folder-create-btn:disabled{cursor:not-allowed;opacity:.6;background-color:#ccc}.folder-cancel-btn{padding:8px 16px;background-color:#f44336;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.folder-cancel-btn:hover:not(:disabled){background-color:#da190b}.folder-cancel-btn:disabled{cursor:not-allowed;opacity:.6;background-color:#ccc}@media (max-width:768px){.upload-panel{padding:.5rem}.upload-panel-title{font-size:1.25rem}.add-recording-btn{width:100%;padding:16px 24px}.folder-input-container{flex-direction:column;align-items:stretch}.folder-name-input{min-width:auto;width:100%;margin-bottom:8px}.folder-cancel-btn,.folder-create-btn{width:100%}}.custom-audio-player{width:100%;flex-direction:row;height:60px;overflow:visible}.controls-left,.custom-audio-player{display:flex;align-items:center;background:transparent;border:none;gap:.75rem}.controls-left{flex-shrink:0;padding:0}.waveform-container{cursor:pointer;background-color:#f5f5f5;position:relative;height:60px;border:1px solid #ccc;border-radius:4px;overflow:hidden}.waveform-container,.waveform-with-timeline{flex:1 1 auto;min-width:200px;max-width:100%}.waveform-with-timeline{display:flex;flex-direction:column}.controls-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0;min-width:90px}.waveform-canvas{width:100%;height:100%;display:block}.waveform-analyzing-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.85rem;color:#666;background-color:hsla(0,0%,100%,.9);padding:8px 16px;border-radius:4px;z-index:10;pointer-events:none;white-space:nowrap}.control-btn{background:none;border:none;cursor:pointer;padding:.5rem;color:#333;transition:all .2s;display:flex;align-items:center;justify-content:center;border-radius:4px;flex-shrink:0}.control-btn:hover{background:rgba(0,0,0,.05)}.play-pause-btn{width:32px;height:32px;flex-shrink:0}.play-pause-btn svg{width:14px;height:14px}.time-display{font-size:.85rem;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;min-width:100px;flex-shrink:0}.time-separator{color:#666;margin:0 .25rem}.volume-control{display:flex;align-items:center;gap:.5rem;position:relative;flex-shrink:0}.volume-btn{width:32px;height:32px;flex-shrink:0}.volume-btn svg{width:16px;height:16px}.volume-slider{width:0;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ddd;border-radius:2px;outline:none;cursor:pointer;transition:width .2s ease;overflow:hidden}.volume-control:has(.volume-slider:focus) .volume-slider,.volume-control:hover .volume-slider{width:80px}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;background:#666;border-radius:50%;cursor:pointer}.volume-slider::-moz-range-thumb{width:12px;height:12px;background:#666;border-radius:50%;border:none;cursor:pointer}.speed-control{position:relative;flex-shrink:0}.speed-btn{font-size:.85rem;font-weight:500;padding:.4rem .6rem;background:#fff;border:1px solid #ccc;border-radius:3px;min-width:45px;cursor:pointer;height:32px;flex-shrink:0}.speed-btn:hover{background:#f5f5f5}.speed-menu{position:absolute;bottom:calc(100% + 4px);right:0;background:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:100;min-width:80px}.speed-option{display:block;width:100%;padding:.5rem 1rem;background:none;border:none;text-align:left;cursor:pointer;font-size:.85rem;white-space:nowrap}.speed-option:hover{background:#f5f5f5}.speed-option.active{background:#e3f2fd;color:#1976d2;font-weight:500}.download-btn{width:32px;height:32px;flex-shrink:0}.download-btn svg{width:16px;height:16px}@media (max-width:768px){.controls-left,.controls-right,.custom-audio-player{gap:.5rem}.time-display{font-size:.75rem;min-width:80px}.waveform-container{min-width:150px;flex:1 1 auto;min-width:200px;max-width:100%;cursor:pointer;background-color:#f5f5f5;position:relative;height:60px;border:1px solid #ccc;border-radius:4px;overflow:hidden;user-select:none;-webkit-user-select:none;-moz-user-select:none}.waveform-container:hover{background-color:#f0f0f0}.waveform-container:active{cursor:-webkit-grabbing;cursor:grabbing}.waveform-canvas{width:100%;height:100%;display:block;touch-action:none}.waveform-analyzing-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.85rem;color:#666;background-color:hsla(0,0%,100%,.9);padding:8px 16px;border-radius:4px;z-index:10;pointer-events:none;white-space:nowrap}.speaker-timeline-container{width:100%;height:6px;margin-top:2px;position:relative;background-color:#e8e8e8;border-radius:1px;overflow:hidden}.speaker-timeline-bar{position:relative;width:100%;height:100%}.timeline-segment{position:absolute;height:100%;top:0;transition:opacity .2s ease}.timeline-segment:hover{opacity:.8}.speaker-stats{display:flex;align-items:center;gap:.25rem;font-size:.9rem;color:#666;flex-wrap:wrap}.speaker-stat-item{display:inline-flex;align-items:center;gap:.25rem}.speaker-stat-label{font-weight:600}.speaker-stat-percentage{color:#666}.speaker-stat-separator{color:#999;margin:0 .25rem}@media (max-width:768px){.speaker-timeline-container{height:4px}.speaker-stats{font-size:.8rem}}}