.video-editor-page{width:100%;height:100%;display:flex;flex-direction:column;background:#f8f9fa;overflow:hidden}.video-editor{width:100%;height:100%;background:#f8f9fa;display:flex;flex-direction:column;overflow:hidden}.editor-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-bottom:1px solid #e5e7eb}.editor-header-left{display:flex;align-items:center;gap:16px}.editor-header h2{margin:0;font-size:18px;font-weight:600;color:#1f2937}.step-indicator{font-size:14px;color:#6b7280;background:#f3f4f6;padding:4px 12px;border-radius:20px}.editor-header-right{display:flex;gap:12px}.btn-secondary{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:14px;transition:background .2s}.btn-secondary:hover{background:#e5e7eb}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--accent-gradient, linear-gradient(135deg, #D4A853, #C49542));color:#1a1a1a;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s;white-space:nowrap;min-width:fit-content}.btn-primary:hover:not(:disabled){opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.editor-main{flex:1;display:flex;overflow:hidden}.editor-sidebar{width:200px;background:#fff;border-right:1px solid #e5e7eb;padding:16px;display:flex;flex-direction:column;gap:24px;overflow-y:auto}.sidebar-section h3{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}.tool-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.tool-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;background:#f3f4f6;border:2px solid transparent;border-radius:8px;color:#6b7280;cursor:pointer;font-size:11px;transition:all .2s}.tool-btn:hover{background:#e5e7eb;color:#374151}.tool-btn.active{background:#d4a853;color:#1a1a1a;border-color:#d4a853}.tool-btn.danger{background:#fee2e2;color:#dc2626}.tool-btn.danger:hover{background:#fecaca}.selected-actions{display:flex;flex-direction:column;gap:8px}.selected-actions .tool-btn{width:100%;flex-direction:row;justify-content:center}.editor-canvas-area{flex:1;display:flex;flex-direction:column;padding:12px 16px;gap:8px;overflow:hidden;background:#f3f4f6}.step-info{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.step-title-input{padding:10px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#1f2937;font-size:15px;font-weight:500}.step-title-input:focus{outline:none;border-color:#d4a853;box-shadow:0 0 0 3px #d4a8531a}.step-description-input{padding:8px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;font-size:13px;resize:none}.step-description-input:focus{outline:none;border-color:#d4a853;box-shadow:0 0 0 3px #d4a8531a;color:#1f2937}.intro-narration-input{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);border-color:#c4b5fd}.intro-narration-input:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.canvas-container{flex:1;position:relative;background:#e5e7eb;border-radius:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}.canvas-container canvas{max-width:100%;max-height:100%;border-radius:4px;box-shadow:0 4px 12px #0000001a}.canvas-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#6b7280;background:#fffc}.text-edit-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000080;z-index:10}.text-edit-modal{background:#fff;padding:24px;border-radius:12px;min-width:300px;box-shadow:0 10px 40px #0003}.text-edit-modal h4{margin:0 0 16px;font-size:16px;font-weight:600;color:#1f2937}.text-edit-modal input{width:100%;padding:12px 16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#1f2937;font-size:16px;margin-bottom:16px}.text-edit-modal input:focus{outline:none;border-color:#d4a853;box-shadow:0 0 0 3px #d4a8531a}.text-edit-actions{display:flex;gap:12px;justify-content:flex-end}.text-edit-actions .btn-cancel{padding:8px 16px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:14px}.text-edit-actions .btn-cancel:hover{background:#e5e7eb}.text-edit-actions .btn-save{padding:8px 16px;background:#d4a853;border:none;border-radius:6px;color:#1a1a1a;cursor:pointer;font-size:14px;font-weight:500}.text-edit-actions .btn-save:hover{opacity:.9}.duration-control{display:flex;align-items:center;gap:8px;padding:8px 14px;background:#fff;border-radius:8px;color:#6b7280;font-size:13px;border:1px solid #e5e7eb;flex-shrink:0}.duration-control input{width:60px;padding:6px 10px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;color:#1f2937;font-size:14px;text-align:center}.duration-control input:focus{outline:none;border-color:#d4a853}.editor-properties{width:220px;background:#fff;border-left:1px solid #e5e7eb;padding:16px;overflow-y:auto}.properties-section{margin-bottom:24px}.properties-section h3{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}.property-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f3f4f6}.property-row label{font-size:13px;color:#6b7280}.property-row span{font-size:13px;color:#1f2937;font-weight:500}.modified-badge{margin-top:12px;padding:6px 12px;background:#d4a853;color:#1a1a1a;border-radius:4px;font-size:12px;font-weight:600;text-align:center}.editor-timeline{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-top:1px solid #e5e7eb}.nav-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;transition:background .2s}.nav-btn:hover:not(:disabled){background:#e5e7eb}.nav-btn:disabled{opacity:.5;cursor:not-allowed}.timeline-steps{flex:1;display:flex;gap:8px;overflow-x:auto;padding:4px 0}.timeline-step{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f9fafb;border:2px solid transparent;border-radius:8px;color:#6b7280;cursor:pointer;font-size:12px;white-space:nowrap;transition:all .2s;position:relative}.timeline-step:hover{background:#f3f4f6;color:#374151}.timeline-step.active{background:#fff;border-color:#d4a853;color:#1f2937;box-shadow:0 2px 8px #0000001a}.timeline-step.modified{background:#fef3c7}.timeline-step .step-number{display:flex;align-items:center;justify-content:center;min-width:24px;height:24px;background:#e5e7eb;border-radius:4px;font-weight:600;font-size:11px;color:#374151}.timeline-step.active .step-number{background:#d4a853;color:#1a1a1a}.timeline-step .step-title{max-width:120px;overflow:hidden;text-overflow:ellipsis}.timeline-step.intro-step{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border-color:#7c3aed}.timeline-step.intro-step:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff}.timeline-step.intro-step.active{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:#fff;box-shadow:0 0 0 2px #8b5cf6}.timeline-step.intro-step .step-number{background:#ffffff4d;color:#fff;font-weight:700}.timeline-step.intro-step.active .step-number{background:#fff6;color:#fff}.modified-dot{position:absolute;top:4px;right:4px;width:8px;height:8px;background:#d4a853;border-radius:50%}.timeline-step-wrapper{display:flex;align-items:center;gap:4px;position:relative}.add-step-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:#e5e7eb;border:1px dashed #9ca3af;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .2s;opacity:.6}.add-step-btn:hover{opacity:1;background:#d4a853;border-color:#d4a853;border-style:solid;color:#1a1a1a}.add-step-modal{text-align:center}.add-step-upload-area{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 24px;margin:16px 0 24px;background:#f9fafb;border:2px dashed #d1d5db;border-radius:12px;color:#6b7280;cursor:pointer;transition:all .2s}.add-step-upload-area:hover{background:#f3f4f6;border-color:#d4a853;color:#d4a853}.add-step-upload-area span{font-size:14px;font-weight:500}.add-step-upload-area .upload-hint{font-size:12px;font-weight:400;color:#9ca3af}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal{background:#fff;padding:24px;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:480px;width:90%;animation:slideUp .3s ease-out}.modal h3{margin:0 0 12px;font-size:20px;font-weight:600;color:#1f2937}.modal p{margin:0 0 24px;font-size:14px;color:#6b7280;line-height:1.5}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.cancel-btn{padding:10px 20px;background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.cancel-btn:hover{background:#e5e7eb}.spinner{animation:spin 1s linear infinite}@media (max-width: 1200px){.editor-properties{display:none}}@media (max-width: 900px){.editor-sidebar{width:160px}.tool-grid{grid-template-columns:1fr}}:root{--accent-color: #f3efdc;--accent-color-dark: #e8e4d1;--accent-text-color: #333333;--accent-gradient: linear-gradient(135deg, #f3efdc 0%, #e8e4d1 100%);--accent-secondary: #4ECDC4;--sidebar-bg: #1e1e2d;--sidebar-text: rgba(255, 255, 255, .7);--sidebar-text-hover: white;--sidebar-active-bg: rgba(243, 239, 220, .2);--sidebar-active-text: var(--accent-color)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;color:#333}.app{max-width:1200px;margin:0 auto;padding:20px}header{text-align:center;margin-bottom:40px}header h1{font-size:32px;margin-bottom:8px}header p{color:#666}main{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.player-container{margin-bottom:30px}video{border-radius:8px;max-width:100%}.steps h2{font-size:20px;margin-bottom:16px}.steps ul{list-style:none}.steps li{padding:12px 16px;background:#f9f9f9;margin-bottom:8px;border-radius:6px;border-left:3px solid #4CAF50}.video-list{padding:20px}.video-list h2{font-size:24px;margin-bottom:20px;color:#333}.video-list.loading,.video-list.error,.video-list.empty{text-align:center;padding:60px 20px;color:#666}.video-list.error button{margin-top:16px;padding:10px 20px;background:#4caf50;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.video-list.error button:hover{background:#45a049}.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.video-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a;cursor:pointer;transition:transform .2s,box-shadow .2s}.video-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.video-thumbnail{width:100%;height:180px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.video-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.video-card:hover .video-thumbnail img{transform:scale(1.05)}.play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:48px;color:#fff;opacity:.9;text-shadow:0 2px 8px rgba(0,0,0,.3);pointer-events:none}.duration-badge{position:absolute;bottom:8px;right:8px;background:#000c;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600}.video-info{padding:16px}.video-info h3{font-size:16px;margin-bottom:12px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.video-meta{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#666}.video-player{padding:20px}.player-header{margin-bottom:24px;position:relative}.back-button{padding:8px 16px;background:#f0f0f0;border:none;border-radius:6px;cursor:pointer;font-size:14px;margin-bottom:16px;transition:background .2s}.back-button:hover{background:#e0e0e0}.delete-button{position:absolute;top:0;right:0;padding:10px 20px;background:#f44336;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.delete-button:hover:not(:disabled){background:#d32f2f;transform:translateY(-2px);box-shadow:0 4px 12px #f443364d}.delete-button:disabled{opacity:.6;cursor:not-allowed}.player-header h1{font-size:28px;margin-bottom:8px;color:#333;padding-right:180px}.video-author{font-size:14px;color:#666}.video-description{margin:20px 0;padding:16px;background:#f9f9f9;border-radius:8px}.video-description h3{font-size:16px;margin-bottom:8px;color:#333}.video-description p{color:#666;line-height:1.6}.video-metadata{margin:20px 0;padding:20px;background:#f9f9f9;border-radius:8px}.video-metadata h3{font-size:18px;margin-bottom:16px;color:#333}.metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-label{font-size:12px;color:#999;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.meta-value{font-size:16px;color:#333;font-weight:500}.video-steps{margin-top:32px}.video-steps h3{font-size:20px;margin-bottom:16px;color:#333}.no-steps{text-align:center;padding:40px 20px;color:#999;font-style:italic}.steps-list{display:flex;flex-direction:column;gap:12px}.step-card{display:flex;gap:20px;padding:20px;background:#f9f9f9;border-radius:12px;cursor:pointer;transition:all .2s;border-left:4px solid #ddd;align-items:flex-start}.step-card:hover{background:#f0f0f0;border-left-color:#4caf50;box-shadow:0 2px 8px #00000014}.step-card.active{background:#e8f5e9;border-left-color:#4caf50;box-shadow:0 2px 12px #4caf5026}.step-info{display:flex;gap:16px;flex:1;min-width:0}.step-number{width:40px;height:40px;background:#4caf50;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;flex-shrink:0}.step-card.active .step-number{background:#388e3c;box-shadow:0 0 0 4px #4caf5033}.step-content{flex:1;min-width:0}.step-content h4{font-size:16px;margin-bottom:8px;color:#333;font-weight:600}.step-content p{font-size:14px;color:#666;margin-bottom:8px;line-height:1.5}.step-timestamp{display:inline-block;font-size:12px;color:#999;background:#fff;padding:4px 8px;border-radius:4px;margin-top:8px}.ai-instruction{margin:12px 0 8px;padding:12px 16px;background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border-left:4px solid #4CAF50;border-radius:8px;font-size:14px;line-height:1.6;color:#2e7d32}.ai-instruction strong{color:#1b5e20;font-weight:600}.ai-description{margin:8px 0;padding:10px 14px;background:#f5f5f5;border-radius:6px;font-size:13px;color:#555}.ai-description summary{cursor:pointer;font-weight:600;color:#666;-webkit-user-select:none;user-select:none;padding:4px 0}.ai-description summary:hover{color:#333}.ai-description p{margin-top:8px;font-size:12px;color:#666;line-height:1.6;max-height:200px;overflow-y:auto}.step-description{margin-bottom:8px}.step-screenshot{flex-shrink:0;width:600px;max-width:60%;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a;background:#fff}.step-screenshot img{width:100%;height:auto;display:block;transition:transform .2s}.step-card:hover .step-screenshot img{transform:scale(1.02)}.video-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid #e0e0e0}.video-tabs .tab{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:16px;font-weight:500;color:#666;transition:all .2s}.video-tabs .tab:hover{color:#333;background:#f9f9f9}.video-tabs .tab.active{color:#4caf50;border-bottom-color:#4caf50}.howto-placeholder{text-align:center;padding:60px 40px;background:linear-gradient(135deg,#f5f5f5,#e8f5e9);border-radius:12px;border:2px dashed #4CAF50}.howto-placeholder h2{font-size:28px;margin-bottom:16px;color:#333}.howto-placeholder p{font-size:16px;color:#666;margin-bottom:20px;line-height:1.6}.howto-placeholder ul{list-style:none;text-align:left;display:inline-block;margin:20px 0}.howto-placeholder ul li{padding:8px 0;font-size:16px;color:#555}.generate-button{padding:14px 32px;background:#4caf50;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;margin-top:20px}.generate-button:hover{background:#45a049;transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.generate-button:active{transform:translateY(0)}.spinner{border:4px solid #f3f3f3;border-top:4px solid #4CAF50;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.processing-steps{margin-top:30px;line-height:2;color:#666}.processing-steps span{display:inline-block;padding:4px 0}.howto-actions{margin-top:20px;text-align:center}.download-button{padding:12px 24px;background:#2196f3;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s}.download-button:hover{background:#1976d2;transform:translateY(-2px);box-shadow:0 4px 12px #2196f34d}.howto-placeholder.error{background:linear-gradient(135deg,#f5f5f5,#ffebee);border-color:#f44336}.howto-placeholder.error h2{color:#d32f2f}.delete-confirmation{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease-in-out}.back-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#f3f4f6;border:none;border-radius:8px;cursor:pointer;color:#374151}.back-btn:hover{background:#e5e7eb}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirmation-dialog{background:#fff;border-radius:12px;padding:32px;max-width:500px;width:100%;box-shadow:0 8px 32px #0003;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.confirmation-dialog h3{font-size:24px;margin-bottom:16px;color:#d32f2f}.confirmation-dialog p{font-size:16px;color:#666;margin-bottom:12px;line-height:1.6}.confirmation-dialog ul{margin:16px 0 16px 24px;color:#666}.confirmation-dialog ul li{margin:8px 0;font-size:15px}.confirmation-dialog .warning{font-weight:600;color:#d32f2f;margin-top:20px;padding:12px;background:#ffebee;border-radius:6px}.confirmation-buttons{display:flex;gap:12px;margin-top:24px}.confirm-delete-button{flex:1;padding:12px 24px;background:#f44336;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.confirm-delete-button:hover:not(:disabled){background:#d32f2f;transform:translateY(-2px);box-shadow:0 4px 12px #f443364d}.confirm-delete-button:disabled{opacity:.6;cursor:not-allowed}.cancel-button{flex:1;padding:12px 24px;background:#f0f0f0;color:#333;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-button:hover:not(:disabled){background:#e0e0e0}.cancel-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.step-card{flex-direction:column}.step-screenshot{width:100%;max-width:100%}.video-tabs{flex-direction:column}.video-tabs .tab{border-bottom:none;border-left:3px solid transparent}.video-tabs .tab.active{border-left-color:#4caf50;border-bottom-color:transparent}.howto-placeholder{padding:40px 20px}}
