.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--dark-bg);padding:var(--spacing-lg)}.auth-box{width:100%;max-width:420px;background:var(--dark-secondary);border-radius:var(--radius-xl);padding:3rem 2.5rem;box-shadow:0 8px 32px #0006}.auth-logo{display:flex;justify-content:center;margin-bottom:2rem}.auth-logo img{height:60px;object-fit:contain}.auth-title{font-size:1.75rem;font-weight:600;text-align:center;margin-bottom:2rem;color:var(--text-primary)}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:500;color:var(--text-primary)}.form-group input{padding:.875rem 1rem;background:var(--dark-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;transition:all .2s}.form-group input::placeholder{color:var(--text-secondary)}.form-group input:focus{border-color:var(--primary-orange);background:var(--dark-bg)}.form-group input:disabled{opacity:.6;cursor:not-allowed}.auth-error{padding:.75rem 1rem;background:#f443361a;border:1px solid rgba(244,67,54,.3);border-radius:var(--radius-md);color:#ff6b6b;font-size:.875rem;text-align:center}.auth-button{padding:1rem;background:var(--primary-orange);color:var(--text-primary);font-size:1rem;font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s;margin-top:.5rem}.auth-button:hover:not(:disabled){background:#ff7a3d;transform:translateY(-1px);box-shadow:0 4px 12px #ff91594d}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-footer{text-align:center;margin-top:1.5rem;color:var(--text-secondary);font-size:.9rem}.auth-link{color:var(--primary-orange);font-weight:600;transition:color .2s}.auth-link:hover{color:#ff7a3d;text-decoration:underline}@media (max-width: 480px){.auth-box{padding:2rem 1.5rem}.auth-title{font-size:1.5rem}}.editor-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background:var(--dark-secondary);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100}.header-left{flex-shrink:0}.header-logo{height:40px;object-fit:contain}.header-center{flex:1;display:flex;justify-content:center}.header-nav{display:flex;gap:var(--spacing-sm)}.nav-item{position:relative}.nav-button{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:transparent;color:var(--text-primary);font-size:.9rem;font-weight:500;border-radius:var(--radius-md);transition:all .2s}.nav-button:hover{background:var(--dark-tertiary);color:var(--primary-orange)}.dropdown-menu{position:absolute;top:100%;left:0;margin-top:.5rem;background:var(--dark-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000004d;min-width:160px;z-index:1000;animation:fadeIn .15s ease-out}.dropdown-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:transparent;color:var(--text-primary);font-size:.875rem;text-align:left;border-radius:0;transition:background .2s}.dropdown-item:first-child{border-radius:var(--radius-md) var(--radius-md) 0 0}.dropdown-item:last-child{border-radius:0 0 var(--radius-md) var(--radius-md)}.dropdown-item:hover{background:var(--dark-bg);color:var(--primary-orange)}.header-right{flex-shrink:0}.user-menu{position:relative}.user-button{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;background:transparent;color:var(--text-primary);border-radius:var(--radius-md);transition:background .2s}.user-button:hover{background:var(--dark-tertiary)}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--primary-orange);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.user-name{font-size:.9rem;font-weight:500}.user-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--dark-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000004d;min-width:160px;z-index:1000;animation:fadeIn .15s ease-out}@media (max-width: 1024px){.header-center,.user-name{display:none}}@media (max-width: 768px){.editor-header{padding:var(--spacing-sm) var(--spacing-md)}.header-logo{height:32px}}.upload-panel{background:var(--dark-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);height:fit-content;max-height:calc(100vh - 140px);overflow-y:auto}.panel-title{font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-lg);color:var(--text-primary)}.upload-section{margin-bottom:var(--spacing-lg)}.upload-section:last-child{margin-bottom:0}.section-title{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:var(--spacing-lg);background:var(--dark-bg);border:2px dashed var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .2s;min-height:100px}.dropzone:hover{border-color:var(--primary-orange);background:var(--dark-tertiary)}.dropzone.uploaded{border-color:#4caf50;background:#4caf501a}.dropzone span{font-size:.875rem;color:var(--text-secondary);text-align:center}.check-icon{color:#4caf50}.file-name{color:var(--text-primary)!important;font-weight:500;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.divider{text-align:center;color:var(--text-secondary);font-size:.875rem;margin:var(--spacing-md) 0;position:relative}.divider:before,.divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:var(--border-color)}.divider:before{left:0}.divider:after{right:0}.text-button{width:100%;padding:.75rem;background:var(--dark-tertiary);color:var(--text-primary);font-size:.875rem;font-weight:500;border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all .2s}.text-button:hover{background:var(--dark-bg);border-color:var(--primary-orange);color:var(--primary-orange)}.audio-toggle-btn.active-audio{background:var(--primary-orange);transform:scale(1.1)}.audio-label{color:var(--text-secondary);font-size:.85rem}.preview-panel{background:var(--dark-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.preview-container{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;border-radius:var(--radius-md);overflow:hidden;display:flex;align-items:center;justify-content:center}.preview-bg{position:absolute;width:100%;height:100%;object-fit:cover}.preview-verse{position:relative;z-index:10;padding:1rem 2rem;max-width:90%;white-space:pre-wrap;word-wrap:break-word}.preview-controls{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-md)}.control-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--dark-tertiary);border-radius:50%;color:var(--text-primary);transition:all .2s}.control-btn.small{width:32px;height:32px}.control-btn:hover{background:var(--primary-orange);transform:scale(1.05)}.color-picker-wrapper{position:relative}.color-input{position:absolute;top:100%;left:0;margin-top:.5rem;width:50px;height:50px;border:none;border-radius:var(--radius-sm);cursor:pointer}.time-display{margin-left:auto;font-size:.875rem;color:var(--text-secondary);font-variant-numeric:tabular-nums}.progress-bar{width:100%;height:6px;background:var(--dark-tertiary);border-radius:3px;margin-top:var(--spacing-md);cursor:pointer;overflow:hidden}.progress-fill{height:100%;background:var(--primary-orange);border-radius:3px;transition:width .1s linear}.lyrics-editor{background:var(--dark-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-top:var(--spacing-lg)}.lyrics-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.add-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:var(--primary-orange);color:var(--text-primary);font-weight:600;font-size:.875rem;border-radius:var(--radius-md);transition:all .2s}.add-btn:hover{background:#ff7a3d;transform:translateY(-1px)}.verses-list{display:flex;flex-direction:column;gap:var(--spacing-lg);max-height:500px;overflow-y:auto;padding-right:var(--spacing-sm)}.verse-block{background:var(--dark-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md)}.verse-number{font-size:.875rem;font-weight:600;color:var(--primary-orange);margin-bottom:var(--spacing-sm)}.verse-text{width:100%;min-height:80px;padding:var(--spacing-sm);background:var(--dark-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:.95rem;resize:vertical;margin-bottom:var(--spacing-md)}.verse-timing{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.time-input label{display:block;font-size:.8rem;color:var(--text-secondary);margin-bottom:.25rem}.time-input input{width:100%;padding:.5rem;background:var(--dark-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem}.verse-controls{display:flex;flex-wrap:wrap;gap:var(--spacing-md);align-items:center}.control-group{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.control-group label{color:var(--text-secondary);white-space:nowrap}.control-group input[type=range]{width:80px}.control-group input[type=color]{width:40px;height:30px;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer}.control-group select{padding:.375rem .5rem;background:var(--dark-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.875rem}.style-buttons,.align-buttons{display:flex;gap:.25rem}.style-buttons button,.align-buttons button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--dark-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);transition:all .2s}.style-buttons button:hover,.align-buttons button:hover{background:var(--dark-secondary);border-color:var(--primary-orange);color:var(--primary-orange)}.style-buttons button.active,.align-buttons button.active{background:var(--primary-orange);border-color:var(--primary-orange);color:var(--text-primary)}.delete-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:transparent;border:1px solid rgba(244,67,54,.5);border-radius:var(--radius-sm);color:#ff6b6b;font-size:.875rem;margin-left:auto;transition:all .2s}.delete-btn:hover{background:#f443361a;border-color:#f44336}.export-panel{background:var(--dark-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);height:fit-content}.export-section{margin-bottom:var(--spacing-lg)}.export-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.project-name-input{width:100%;padding:.75rem;background:var(--dark-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;transition:border-color .2s}.project-name-input:focus{border-color:var(--primary-orange)}.audio-options{display:flex;flex-direction:column;gap:var(--spacing-sm)}.radio-option{display:flex;align-items:center;gap:.5rem;padding:.625rem;background:var(--dark-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s}.radio-option:has(input:checked){border-color:var(--primary-orange);background:#ff91591a}.radio-option:has(input:disabled){opacity:.5;cursor:not-allowed}.radio-option input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-orange)}.radio-option span{font-size:.875rem;color:var(--text-primary)}.export-info{background:var(--dark-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.875rem;border-bottom:1px solid var(--border-color)}.info-row:last-child{border-bottom:none;padding-bottom:0}.info-row span:first-child{color:var(--text-secondary)}.status-ok{color:#4caf50;font-weight:600}.status-missing{color:#f44336;font-weight:600}.status-optional{color:var(--text-secondary)}.export-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.625rem;padding:1rem;background:var(--primary-orange);color:var(--text-primary);font-size:1rem;font-weight:600;border-radius:var(--radius-md);transition:all .2s}.export-button:hover:not(:disabled){background:#ff7a3d;transform:translateY(-1px);box-shadow:0 4px 12px #ff91594d}.export-button:disabled{opacity:.6;cursor:not-allowed}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s}.modal-content{background:var(--dark-secondary);border-radius:var(--radius-lg);width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080;animation:slideUp .3s}.modal-content.large{max-width:900px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-header h2{font-size:1.5rem;font-weight:600}.close-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--text-secondary);border-radius:50%;transition:all .2s}.close-btn:hover{background:var(--dark-tertiary);color:var(--text-primary)}.modal-body{padding:var(--spacing-lg);overflow-y:auto}.tutorial-steps{padding-left:1.5rem}.tutorial-steps li{margin-bottom:var(--spacing-lg);line-height:1.6}.tutorial-steps ul{margin-top:.5rem;padding-left:1.5rem;list-style:disc}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-secondary);gap:1rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}.project-card{background:var(--dark-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);transition:all .2s}.project-card:hover{border-color:var(--primary-orange);transform:translateY(-2px)}.project-info h3{font-size:1.1rem;font-weight:600;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-date{font-size:.875rem;color:var(--text-secondary)}.project-actions{display:flex;gap:var(--spacing-sm)}.btn-primary{flex:1;padding:.625rem 1rem;background:var(--primary-orange);color:var(--text-primary);font-weight:600;font-size:.875rem;border-radius:var(--radius-sm);transition:all .2s}.btn-primary:hover{background:#ff7a3d}.btn-danger{padding:.625rem;background:transparent;border:1px solid rgba(244,67,54,.5);border-radius:var(--radius-sm);color:#ff6b6b;transition:all .2s}.btn-danger:hover{background:#f443361a;border-color:#f44336}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.editor-container{min-height:100vh;display:flex;flex-direction:column;background-color:var(--dark-bg)}.editor-content{flex:1;display:grid;grid-template-columns:300px 1fr 320px;gap:var(--spacing-lg);padding:var(--spacing-lg);overflow:hidden}.editor-left,.editor-right{display:flex;flex-direction:column;gap:var(--spacing-md)}.editor-center{display:flex;flex-direction:column;gap:var(--spacing-lg);min-width:0}@media (max-width: 1400px){.editor-content{grid-template-columns:280px 1fr 300px}}@media (max-width: 1200px){.editor-content{grid-template-columns:1fr;gap:var(--spacing-md)}.editor-left,.editor-right{order:2}.editor-center{order:1}}@media (max-width: 768px){.editor-content{padding:var(--spacing-md)}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-orange: #FF9159;--dark-bg: #000000;--dark-secondary: #1a1a1a;--dark-tertiary: #2a2a2a;--text-primary: #ffffff;--text-secondary: #b0b0b0;--border-color: #333333;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px}body{margin:0;font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--dark-bg);color:var(--text-primary)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--dark-secondary)}::-webkit-scrollbar-thumb{background:var(--dark-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#3a3a3a}button{font-family:inherit;cursor:pointer;border:none;outline:none}input,textarea,select{font-family:inherit;outline:none}a{text-decoration:none;color:inherit}.container{max-width:1400px;margin:0 auto;padding:0 var(--spacing-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.text-center{text-align:center}.w-full{width:100%}.h-full{height:100%}
