.floating-action-bar{position:fixed;bottom:16px;right:16px;z-index:1000;animation:slideUp .3s cubic-bezier(.4,0,.2,1)}@keyframes slideUp{0%{bottom:-60px;opacity:0}to{bottom:16px;opacity:1}}.fab-content{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fab-badge{display:flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;background:var(--accent-primary);color:#fff;border-radius:12px;font-size:12px;font-weight:700;cursor:default}.fab-actions{display:flex;gap:4px}.fab-btn{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;font-size:16px;border-radius:var(--radius-sm)}.fab-btn:hover{transform:scale(1.05)}@media(max-width:768px){.floating-action-bar{bottom:12px;right:12px}}.bulk-bar .fab-content{padding:12px 16px;gap:16px}.fab-left{display:flex;align-items:center;gap:8px}.selection-badge{min-width:unset;padding:4px 12px;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color)}.fab-divider{width:1px;height:24px;background:var(--border-color);margin:0 4px}.fab-action-btn{white-space:nowrap;padding:6px 12px;height:32px}.fab-dropdown-container{position:relative}.fab-dropdown-menu{position:absolute;bottom:100%;right:0;margin-bottom:8px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 12px #0006;min-width:180px;display:flex;flex-direction:column;overflow:hidden;padding:4px}.fab-dropdown-item{text-align:left;padding:8px 12px;background:none;border:none;color:var(--text-primary);cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;gap:8px;font-size:13px}.fab-dropdown-item:hover{background:var(--bg-hover)}.fab-dropdown-item .dot{width:8px;height:8px;border-radius:50%}.edit-panel{width:100%;box-sizing:border-box}.edit-panel.panel{background:var(--bg-tertiary);border-radius:8px;padding:16px;border:2px solid var(--accent-primary)}.edit-panel.compact{background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--accent-primary)}.edit-panel.compact.outdated-panel{border-color:#dc2626;border-style:dashed;background:#dc26260f}.edit-panel-header{display:flex;justify-content:space-between;align-items:center}.edit-panel.panel .edit-panel-header{margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.edit-panel.compact .edit-panel-header{gap:4px;padding:4px 6px 0}.edit-panel-footer{display:flex;justify-content:flex-end;gap:8px}.edit-panel.panel .edit-panel-footer{padding-top:12px;border-top:1px solid var(--border-color)}.edit-panel.compact .edit-panel-footer{gap:6px;padding:2px 6px 4px;border-top:1px solid var(--border-color)}.ep-cancel-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all .2s}.ep-cancel-btn:hover{background:var(--bg-hover);border-color:var(--text-secondary)}.edit-panel.panel .ep-cancel-btn{padding:8px 16px;border-radius:6px;font-size:13px}.edit-panel.compact .ep-cancel-btn{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;line-height:1.4;white-space:nowrap}.ep-save-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-muted);cursor:not-allowed;transition:all .2s}.ep-save-btn.has-changes{background:var(--success);border-color:var(--success);color:#fff;cursor:pointer}.ep-save-btn.has-changes:hover{filter:brightness(1.1)}.ep-save-btn:disabled{opacity:.6}.edit-panel.panel .ep-save-btn{padding:8px 16px;border-radius:6px;font-size:13px}.edit-panel.compact .ep-save-btn{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;line-height:1.4;white-space:nowrap}.ep-outdated-btn{margin-left:auto;background:var(--bg-secondary);border:1px solid #dc2626;color:#dc2626;cursor:pointer;transition:all .2s;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;line-height:1.4;white-space:nowrap}.ep-outdated-btn:hover{background:#dc2626;color:#fff}.ep-outdated-btn:disabled{opacity:.6;cursor:not-allowed}.ts-editor{margin-top:8px}.ts-editor.empty{color:var(--text-muted);font-style:italic}.ts-editor-title{font-weight:600;font-size:13px;color:var(--text-primary)}.ts-header-buttons{display:flex;gap:8px}.ts-auto-btn{background:var(--accent-primary);border:none;color:#fff;padding:4px 12px;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s}.ts-auto-btn:hover:not(:disabled){filter:brightness(1.1)}.ts-auto-btn:disabled{opacity:.6;cursor:not-allowed}.ts-clear-btn{background:transparent;border:1px solid var(--danger);color:var(--danger);padding:4px 10px;border-radius:4px;font-size:11px;cursor:pointer;transition:all .2s}.ts-clear-btn:hover{background:var(--danger);color:#fff}.ts-editor-content{font-size:14px;line-height:1.8;word-wrap:break-word;margin-bottom:12px}.ts-word{position:relative;display:inline;transition:background .8s ease-out,color .8s ease-out,text-shadow .8s ease-out;border-radius:3px;padding:1px 2px}.ts-word.clickable{cursor:pointer;transition:background .15s,color .15s}.ts-word.karaoke-active{background:var(--accent-light);color:var(--accent-primary);font-weight:700;border-radius:4px;padding:0 2px;margin:0;text-shadow:0 0 12px var(--accent-primary);transition:all .05s ease-in}.ts-word.clickable:hover{background:#22c55e40;color:#16a34a}.ts-play-btn{background:linear-gradient(135deg,#8b5cf6,#6366f1);border:none;color:#fff;padding:4px 12px;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s}.ts-play-btn:hover{filter:brightness(1.15);transform:scale(1.02)}.ts-play-btn.playing{background:linear-gradient(135deg,#f59e0b,#ef4444);animation:pulse-glow 1.5s infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 0 var(--accent-light)}50%{box-shadow:0 0 8px 4px var(--accent-light)}}.ts-timestamp-readonly{color:var(--text-muted);font-size:.9em;margin:0 1px;opacity:.6}.ts-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#16a34a;color:#fff;font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;white-space:nowrap;pointer-events:none;z-index:100;box-shadow:0 2px 8px #0003}.ts-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#16a34a}.ts-timestamp{display:inline;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary, #8b5cf6));color:#fff;padding:1px 6px;border-radius:10px;font-size:11px;font-weight:600;margin:0 2px;cursor:pointer;transition:all .2s}.ts-timestamp:hover{background:var(--danger)}.ts-no-alignment{margin-bottom:12px;padding:8px 12px;background:#f59e0b1a;border:1px solid var(--warning);border-radius:6px;color:var(--warning);font-size:12px}.vo-audio-player-simple{display:flex;align-items:center;gap:8px}.vo-audio-player-simple .vo-play-button{width:40px;height:40px;border-radius:50%;border:none;background:var(--accent-primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.vo-audio-player-simple .vo-play-button:hover{background:var(--accent-hover);transform:scale(1.05)}.vo-audio-player-simple .vo-play-button:active{transform:scale(.95)}.vo-download-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all .2s;text-decoration:none}.vo-download-btn:hover{background:var(--bg-hover);color:var(--accent-primary);transform:scale(1.05)}.vo-download-btn:active{transform:scale(.95)}.vo-no-audio-state{color:var(--text-secondary);font-size:14px;font-style:italic}.vo-status-dot{width:8px;height:8px;border-radius:50%;margin-left:8px}.vo-status-dot.synced{background:var(--success-color)}.vo-status-dot.outdated{background:var(--warning-color)}.vo-player-with-voice{display:flex;flex-direction:column;align-items:center;gap:4px}.vo-voice-icon{font-size:12px;opacity:.7;cursor:default}.vo-voice-icon.outdated{opacity:.4}.unreal-auth-page{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);padding:20px}.unreal-auth-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:40px;max-width:500px;width:100%;box-shadow:0 20px 60px #0000004d}.unreal-auth-header{text-align:center;margin-bottom:32px}.unreal-logo{font-size:48px;margin-bottom:16px}.unreal-auth-header h1{font-size:24px;font-weight:700;margin:0 0 8px;color:var(--text-primary)}.unreal-auth-header p{color:var(--text-secondary);margin:0}.unreal-auth-step{text-align:center;padding:24px;background:var(--bg-tertiary);border-radius:var(--radius-lg);margin-bottom:24px}.unreal-auth-step h2{font-size:18px;margin:0 0 12px;color:var(--text-primary)}.unreal-auth-step p{color:var(--text-secondary);margin:0 0 16px}.unreal-auth-step.success{background:#10b9811a;border:1px solid rgba(16,185,129,.2)}.unreal-auth-step.success h2{color:var(--success)}.unreal-auth-step.warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.2)}.unreal-auth-step.warning h2{color:#f59e0b}.unreal-auth-btn{padding:12px 24px;border-radius:var(--radius-md);font-size:14px;font-weight:600;cursor:pointer;border:none;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.unreal-auth-btn.primary{background:var(--accent-primary);color:#fff}.unreal-auth-btn.primary:hover{background:var(--accent-secondary);transform:translateY(-1px)}.unreal-auth-btn.secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.unreal-auth-btn.secondary:hover{background:var(--bg-tertiary)}.unreal-auth-path{display:block;background:var(--bg-primary);padding:12px 16px;border-radius:var(--radius-md);font-family:monospace;font-size:13px;color:var(--accent-primary);margin:16px 0;word-break:break-all}.unreal-auth-note{font-size:12px;color:var(--text-muted);margin-top:16px}.unreal-auth-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:var(--error);padding:12px 16px;border-radius:var(--radius-md);margin-bottom:24px;text-align:center}.unreal-auth-footer{text-align:center;padding-top:16px;border-top:1px solid var(--border-color)}.unreal-auth-link{color:var(--text-secondary);text-decoration:none;font-size:14px}.unreal-auth-link:hover{color:var(--accent-primary)}:root{--bg-primary: #0f0f0f;--bg-secondary: #1a1a1a;--bg-tertiary: #252525;--bg-hover: #2a2a2a;--bg-active: #333333;--text-primary: #ffffff;--text-secondary: #a0a0a0;--text-muted: #666666;--accent-primary: #6366f1;--accent-hover: #4f46e5;--accent-light: rgba(99, 102, 241, .15);--success: #22c55e;--success-light: rgba(34, 197, 94, .15);--warning: #f59e0b;--warning-light: rgba(245, 158, 11, .15);--danger: #ef4444;--danger-light: rgba(239, 68, 68, .15);--border-color: #2a2a2a;--border-light: #3a3a3a;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .5);--transition-fast: .15s ease;--transition-normal: .25s ease;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px}.light-theme{--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--bg-hover: #e5e7eb;--bg-active: #d1d5db;--text-primary: #111827;--text-secondary: #6b7280;--text-muted: #9ca3af;--accent-primary: #3b82f6;--accent-hover: #2563eb;--accent-light: rgba(59, 130, 246, .1);--border-color: #e5e7eb;--border-light: #d1d5db;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh}.app{display:flex;flex-direction:column;min-height:100vh}.staging-banner{background:var(--danger);color:#fff;text-align:center;font-weight:700;font-size:12px;letter-spacing:1.5px;padding:4px 0;position:sticky;top:0;z-index:10000}.main-content{flex:1;padding:16px 24px;max-width:1600px;margin:0 auto;width:100%}.header{background:linear-gradient(180deg,var(--bg-secondary) 0%,var(--bg-primary) 100%);border-bottom:1px solid var(--border-color);padding:12px 24px;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-content{display:flex;align-items:center;justify-content:space-between;max-width:1600px;margin:0 auto}.header-left{display:flex;align-items:center;gap:16px}.logo{display:flex;align-items:center;gap:12px}.logo-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--accent-primary) 0%,#8b5cf6 100%);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:20px}.logo-text{font-size:22px;font-weight:700;background:linear-gradient(135deg,var(--text-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-right{display:flex;align-items:center;gap:16px}.connection-status{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--success);animation:pulse 2s infinite}.status-dot.disconnected{background:var(--text-muted);animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-text{font-size:13px;color:var(--text-secondary)}.status-count{font-weight:600;color:var(--text-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.btn-primary{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-hover) 100%);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-light)}.btn-danger{background:var(--danger-light);color:var(--danger);border:1px solid var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.btn-success{background:linear-gradient(135deg,var(--success) 0%,#16a34a 100%);color:#fff}.btn-success:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-icon{padding:8px;width:36px;height:36px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-back{display:inline-flex;align-items:center;gap:10px;padding:10px 20px;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.btn-back:hover{background:#ffffff1f;border-color:#ffffff26;transform:translate(-2px)}.btn-back .back-arrow{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#4285f4;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:600;transition:all var(--transition-fast)}.btn-back:hover .back-arrow{background:#3367d6}.light-theme .btn-back{background:#f1f3f4;border-color:#e8eaed;color:#3c4043}.light-theme .btn-back:hover{background:#e8eaed;border-color:#dadce0}.panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary)}.panel-title{font-size:16px;font-weight:600}.panel-body{padding:20px}.translations-container{display:flex;flex-direction:column;gap:20px}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:8px;flex:1;max-width:400px}.search-input{flex:1;padding:10px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px;font-family:inherit;transition:border-color var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--accent-primary)}.search-input::placeholder{color:var(--text-muted)}.table-wrapper{overflow-x:visible;border-radius:var(--radius-lg);border:1px solid var(--border-color)}.translation-table{width:100%;border-collapse:collapse;background:var(--bg-secondary)}.translation-table th,.translation-table td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--border-color)}.translation-table th{background:var(--bg-tertiary);font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);position:sticky;top:65px;z-index:90;box-shadow:0 2px 4px #0000001a}.translation-table tr:hover{background:var(--bg-hover)}.translation-table tr:last-child td{border-bottom:none}.key-cell{font-family:Monaco,Menlo,monospace;font-size:13px;color:var(--accent-primary);font-weight:500;min-width:250px}.key-cell-content{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.translation-cell{min-width:200px}.translation-input{width:100%;padding:8px 12px;background:var(--bg-primary);border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;font-family:inherit;transition:all var(--transition-fast)}.translation-input:hover{border-color:var(--border-light)}.translation-input:focus{outline:none;border-color:var(--accent-primary);background:var(--bg-tertiary)}.translation-input.empty{border-style:dashed;border-color:var(--warning);background:var(--warning-light)}.translation-input.pending{border-color:#f59e0b;background:#f59e0b14;border-left:3px solid #f59e0b;padding-left:10px}.translation-input.pending:focus{border-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b26}.translation-input.outdated{border-style:dashed;border-color:#dc2626;background:#dc26260f}.translation-input.outdated:hover{border-color:#dc2626;background:#dc26261a}.translation-input.outdated:focus{border-color:#dc2626;box-shadow:0 0 0 2px #dc26261f}.translation-cell-wrapper{position:relative}.edit-panel.compact .translation-input{border-color:transparent}.edit-panel.compact .translation-input.outdated{border-color:transparent;background:transparent}.actions-cell{width:60px;text-align:center}.language-manager,.project-manager{margin-bottom:24px}.project-selector{display:flex;align-items:center;gap:12px;margin-bottom:16px}.project-dropdown{min-width:250px}.project-id-display{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-wrap:wrap}.project-id-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.project-id{font-family:Monaco,Menlo,monospace;font-size:12px;color:var(--accent-primary);background:var(--bg-primary);padding:4px 8px;border-radius:var(--radius-sm);-webkit-user-select:all;user-select:all}.btn-sm{padding:6px 12px;font-size:13px}.btn-xs{padding:4px 8px;font-size:12px}.project-form{margin-top:16px;padding:16px;background:var(--bg-tertiary);border:1px dashed var(--border-light);border-radius:var(--radius-md)}.project-form h3{font-size:14px;margin-bottom:12px;color:var(--text-secondary)}.project-form .form-group{margin-bottom:12px}.project-form .form-input{width:100%}.form-actions{display:flex;gap:8px;margin-top:12px}.language-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.language-tab{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.language-tab:hover{background:var(--bg-hover)}.language-tab .lang-code{font-weight:600;text-transform:uppercase}.language-tab .lang-name{color:var(--text-secondary);font-size:13px}.language-tab .delete-btn{margin-left:4px;padding:2px 6px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.language-tab .delete-btn:hover{background:var(--danger-light);color:var(--danger)}.add-language-form{display:flex;gap:12px;align-items:flex-end}.form-group{display:flex;flex-direction:column;gap:4px}.form-label{font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.form-input{padding:10px 14px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px;font-family:inherit;transition:border-color var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--accent-primary)}.form-input::placeholder{color:var(--text-muted)}.form-input.small{width:80px;text-transform:lowercase}.add-key-section{display:flex;gap:12px;padding:16px;background:var(--bg-tertiary);border-radius:var(--radius-lg);border:1px dashed var(--border-light)}.add-key-section .form-input{flex:1;text-transform:uppercase}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-state-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state-title{font-size:18px;font-weight:600;margin-bottom:8px}.empty-state-text{color:var(--text-secondary);max-width:400px}.key-menu-container{position:relative}.menu-cell{width:40px;text-align:center;padding:8px!important}.btn-key-menu{padding:4px;border-radius:var(--radius-sm);color:var(--text-muted);opacity:0;transition:all var(--transition-fast)}.key-row:hover .btn-key-menu,.btn-key-menu.active{opacity:1}.btn-key-menu:hover{background:var(--bg-tertiary);color:var(--text-primary)}.key-menu-dropdown{position:absolute;top:100%;right:0;width:160px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;padding:4px;margin-top:4px;animation:slideIn .2s ease}.key-menu-item{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:13px;color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.key-menu-item:hover{background:var(--bg-tertiary)}.key-menu-item.danger{color:var(--danger)}.key-menu-item.danger:hover{background:var(--danger-light)}.toast-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:8px;z-index:1000}.toast{display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);animation:slideIn .3s ease}.toast.success{border-color:var(--success);background:var(--success-light)}.toast.error{border-color:var(--danger);background:var(--danger-light)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:768px){.header{padding:12px 16px}.header-content{flex-direction:column;gap:12px}.main-content{padding:16px}.table-toolbar{flex-direction:column;align-items:stretch}.search-box{max-width:none}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-width:700px;width:100%;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:modalSlideIn .2s ease}@keyframes modalSlideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes modalSlideInPremium{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary)}.modal-title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:600}.modal-icon{font-size:20px}.modal-close{background:none;border:none;color:var(--text-secondary);font-size:24px;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.modal-close:hover{color:var(--text-primary);background:var(--bg-hover)}.modal-body{flex:1;overflow-y:auto;padding:20px}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid var(--border-color);background:var(--bg-tertiary)}.po-import-modal{max-width:800px}.po-import-summary{display:flex;gap:12px;margin-bottom:20px}.summary-badge{display:inline-flex;align-items:center;padding:8px 16px;border-radius:var(--radius-md);font-size:14px;font-weight:500}.summary-badge.new-keys{background:var(--success-light);color:var(--success);border:1px solid var(--success)}.summary-badge.updates{background:var(--accent-light);color:var(--accent-primary);border:1px solid var(--accent-primary)}.po-import-section{margin-bottom:24px}.po-import-section .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.po-import-section .section-header h3{font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.po-import-section .section-actions{display:flex;gap:8px}.po-import-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.po-import-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.po-import-item:hover{background:var(--bg-hover)}.po-import-item.selected{border-color:var(--accent-primary);background:var(--accent-light)}.po-import-item input[type=checkbox]{margin-top:3px;cursor:pointer;accent-color:var(--accent-primary)}.po-import-item .item-content{flex:1;min-width:0}.po-import-item .item-key{font-family:Monaco,Menlo,monospace;font-size:13px;color:var(--accent-primary);font-weight:500;margin-bottom:4px;word-break:break-all}.po-import-item .item-translation{font-size:13px;color:var(--text-secondary)}.po-import-item .item-diff{display:flex;flex-direction:column;gap:4px}.po-import-item .diff-old,.po-import-item .diff-new{font-size:13px;display:flex;gap:8px}.po-import-item .diff-label{font-weight:500;min-width:32px}.po-import-item .diff-old{color:var(--danger)}.po-import-item .diff-new{color:var(--success)}.language-header{display:flex;align-items:center;gap:8px}.btn-upload{background:transparent;border:1px solid var(--border-color);padding:4px 8px;font-size:14px;width:32px;height:28px}.btn-upload:hover{background:var(--bg-hover);border-color:var(--accent-primary)}.language-toggles{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.language-toggle{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.language-toggle:hover{background:var(--bg-hover)}.language-toggle.enabled{border-color:var(--success);background:var(--success-light)}.language-toggle.protected{cursor:default;opacity:.8}.language-toggle input[type=checkbox]{cursor:pointer;accent-color:var(--success)}.language-toggle .toggle-label{display:flex;align-items:center;gap:6px}.language-toggle .lang-code{font-weight:600;font-size:13px}.language-toggle .lang-name{color:var(--text-secondary);font-size:13px}.admin-settings-modal{max-width:600px}.admin-language-list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;max-height:250px;overflow-y:auto}.admin-language-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.admin-language-item .language-info{display:flex;align-items:center;gap:10px}.admin-language-item .lang-code{font-weight:600;font-size:14px;color:var(--accent-primary);min-width:40px}.admin-language-item .lang-name{color:var(--text-secondary)}.btn-danger-outline{background:transparent;border:1px solid var(--danger);color:var(--danger)}.btn-danger-outline:hover{background:var(--danger);color:#fff}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:500}.badge-primary{background:var(--accent-light);color:var(--accent-primary)}.badge-small{padding:2px 6px;font-size:10px}.form-row{display:flex;gap:12px;align-items:flex-start}.form-row .form-group{margin-bottom:0}.header-tabs{display:flex;gap:4px;margin-left:32px}.tab-btn{background:transparent;border:none;padding:8px 16px;font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.tab-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.tab-btn.active{background:var(--accent-primary);color:#fff}.project-language-row{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.project-language-row .project-manager{margin-bottom:0}.language-selector{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.language-flag-btn{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:32px;padding:0;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);opacity:.4;overflow:hidden}.language-flag-btn:hover:not(:disabled){border-color:var(--accent-primary);opacity:1;transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000004d}.language-flag-btn.enabled{border-color:var(--success);opacity:1}.language-flag-btn.protected{cursor:default}.language-flag-btn .flag-img{width:100%;height:100%;object-fit:cover}.language-flag-btn .flag-check{position:absolute;bottom:0;right:0;background:var(--success);color:#fff;font-size:10px;font-weight:700;width:14px;height:14px;display:flex;align-items:center;justify-content:center;border-top-left-radius:4px;box-shadow:-1px -1px 2px #0000004d}.language-flag-btn .flag-lock{position:absolute;bottom:0;right:0;background:var(--bg-tertiary);color:var(--text-secondary);font-size:10px;width:14px;height:14px;display:flex;align-items:center;justify-content:center;border-top-left-radius:4px;box-shadow:-1px -1px 2px #0000004d}.admin-page{max-width:800px}.admin-section{margin-bottom:24px}.admin-users-section{overflow:visible}.admin-users-panel-body{padding:0;overflow:visible}.admin-users-table-scroll{max-height:620px;overflow:auto;scrollbar-gutter:stable}.admin-users-table{width:100%;min-width:720px;table-layout:fixed}.admin-users-table th{top:0;z-index:2}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px}.stat-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px;text-align:center}.stat-value{font-size:32px;font-weight:700;color:var(--accent-primary)}.stat-label{font-size:13px;color:var(--text-secondary);margin-top:4px}.language-header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:140px}.language-header-info{display:flex;align-items:center;gap:8px}.header-flag{width:24px;height:18px;object-fit:cover;border-radius:2px;box-shadow:0 1px 2px #0003}.btn-upload{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;color:var(--text-secondary)!important;border:none;background:transparent;opacity:.6;transition:all var(--transition-fast);cursor:pointer}.btn-upload:hover{background:var(--bg-tertiary);opacity:1;color:var(--text-primary)!important}.btn-upload.locked{opacity:.28;color:var(--text-muted)!important;cursor:not-allowed;filter:grayscale(1)}.btn-upload.locked:hover{background:transparent;opacity:.28;color:var(--text-muted)!important}.project-dashboard{padding-bottom:40px}.dashboard-search-bar{margin-bottom:24px}.search-input-large{padding:12px 16px;font-size:16px;border-radius:var(--radius-md);box-shadow:0 4px 6px -1px #0000001a;border-color:transparent}.search-input-large:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f64d}.btn-lock{opacity:.4;transition:all var(--transition-fast);color:var(--text-secondary);background:transparent;border:none}.btn-lock:hover{opacity:1;background:var(--bg-tertiary);color:var(--text-primary)}.btn-lock.locked{opacity:1;color:var(--warning)}.translation-input.locked{background-color:var(--bg-tertiary);color:var(--text-muted);cursor:not-allowed;border-color:transparent!important;opacity:.7}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px}.project-card{background:linear-gradient(145deg,var(--bg-tertiary),var(--bg-secondary));border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);padding:16px;cursor:pointer;transition:all cubic-bezier(.4,0,.2,1) .3s;display:flex;flex-direction:column;justify-content:center;min-height:100px;position:relative;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.project-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0003,0 10px 10px -5px #0000001a;border-color:var(--accent-primary);background:linear-gradient(145deg,var(--bg-hover),var(--bg-tertiary))}.new-project-card{background:linear-gradient(135deg,var(--accent-primary),var(--accent-hover));border:none;align-items:center;justify-content:center;color:#fff;min-height:100px;box-shadow:0 4px 6px -1px #6366f14d}.new-project-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #6366f166,0 10px 10px -5px #6366f133;background:linear-gradient(135deg,var(--accent-hover),var(--accent-primary))}.new-project-icon{font-size:32px;font-weight:300;margin-bottom:8px;line-height:1}.new-project-label{font-size:18px;font-weight:600}.project-card-header{display:flex;justify-content:center;align-items:center;width:100%}.project-card-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0;line-height:1.3;word-break:break-word}.project-card-description{font-size:14px;color:var(--text-secondary);flex-grow:1;margin-bottom:16px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-card-meta{display:flex;justify-content:space-between;align-items:center}.project-id-badge{font-family:Monaco,Menlo,monospace;font-size:11px;background:var(--bg-primary);padding:4px 8px;border-radius:var(--radius-sm);color:var(--text-secondary)}.project-settings-btn{background:transparent;border:none;font-size:16px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast);opacity:.5}.project-settings-btn:hover{background:#ffffff1a;color:var(--text-primary);opacity:1}.project-card:hover .project-settings-btn{opacity:1}.project-view{animation:fadeIn var(--transition-normal)}.project-header-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;background:var(--bg-tertiary);padding:16px 24px;border-radius:var(--radius-lg);border:1px solid var(--border-color)}.project-header-info{display:flex;flex-direction:column;align-items:center}.project-title{font-size:20px;font-weight:700;margin:0 0 4px}.project-settings-modal{width:100%;max-width:500px}.settings-section{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px;margin-bottom:20px}.danger-zone{background:#ef44440d;border:1px solid var(--danger);border-radius:var(--radius-md);padding:16px}.warning-box{background:#eab3081a;border:1px solid rgba(234,179,8,.2);border-radius:6px;padding:12px;margin-bottom:16px;color:#b45309;font-size:13px;display:flex;gap:8px;align-items:flex-start}.card-actions{display:flex;gap:8px}.project-delete-btn{background:transparent;border:none;font-size:16px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast);opacity:.5}.project-delete-btn:hover{background:#ef44441a;color:var(--danger);opacity:1}.project-card:hover .project-delete-btn{opacity:1}.toast-container{position:fixed;bottom:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast{background:var(--bg-tertiary);color:var(--text-primary);padding:16px;border-radius:var(--radius-md);box-shadow:0 10px 15px -3px #0003,0 4px 6px -2px #0000001a;display:flex;align-items:center;gap:12px;min-width:300px;max-width:400px;border-left:4px solid transparent;pointer-events:auto;transition:all .3s cubic-bezier(.4,0,.2,1);opacity:0;transform:translate(100%)}.toast-enter{opacity:1;transform:translate(0)}.toast-exit{opacity:0;transform:translate(100%)}.toast-success{border-color:var(--success)}.toast-error{border-color:var(--danger)}.toast-warning{border-color:var(--warning)}.toast-info{border-color:var(--accent-primary)}.toast-icon{font-size:20px}.toast-message{flex-grow:1;font-size:14px}.toast-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:20px;padding:0;line-height:1}.toast-close:hover{color:var(--text-primary)}.confirm-dialog{max-width:400px!important;text-align:center}.confirm-body{font-size:16px;color:var(--text-secondary);margin-bottom:24px}.fade-in{animation:fadeIn .2s ease-out forwards}.fade-out{animation:fadeOut .2s ease-in forwards}.scale-in{animation:scaleIn .2s ease-out forwards}.scale-out{animation:scaleOut .2s ease-in forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes scaleOut{0%{transform:scale(1);opacity:1}to{transform:scale(.95);opacity:0}}.project-header-actions{display:flex;gap:8px;margin-left:16px}.project-action-btn{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);width:36px;height:36px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);font-size:16px}.project-action-btn:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--text-secondary)}.project-action-btn.btn-delete:hover{background:#ef44441a;color:var(--danger);border-color:var(--danger)}.translation-table td{vertical-align:top}.key-cell{white-space:pre-wrap;word-break:break-all;max-width:250px;min-width:150px;padding-top:10px;font-family:Monaco,Menlo,monospace;font-size:13px;line-height:1.5}.translation-cell{min-width:250px;padding:8px!important}.translation-input{width:100%;min-height:28px;padding:6px 10px;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-primary);font-family:inherit;font-size:14px;line-height:1.5;resize:none;display:block;overflow:hidden;transition:border-color .2s,background-color .2s}.translation-input:hover{background:var(--bg-tertiary)}.translation-input:focus{background:var(--bg-tertiary);border-color:var(--accent-primary);outline:none}.translation-input.empty{font-style:italic;opacity:.7}.theme-toggle{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);font-size:18px;margin-right:16px}.theme-toggle:hover{background:var(--bg-hover);transform:scale(1.05)}.tag-filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tag-chip-wrapper{position:relative;display:inline-flex}.tag-chip-wrapper:hover .tag-chip-delete{opacity:1}.tag-chip-delete{position:absolute;top:-6px;right:-6px;width:18px;height:18px;padding:0;background:var(--danger);color:#fff;border:2px solid var(--bg-primary);border-radius:50%;font-size:12px;line-height:1;cursor:pointer;opacity:0;transition:opacity var(--transition-fast);display:flex;align-items:center;justify-content:center}.tag-chip-delete:hover{background:#dc2626}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;background:color-mix(in srgb,var(--tag-color, #6b7280) 20%,transparent);border:1px solid var(--tag-color, #6b7280);border-radius:16px;font-size:12px;font-weight:500;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.tag-chip:hover{background:color-mix(in srgb,var(--tag-color, #6b7280) 30%,transparent)}.tag-chip.selected{background:var(--tag-color, #6b7280);color:#fff}.tag-chip.add-tag{background:var(--bg-tertiary);border-style:dashed;border-color:var(--border-light);color:var(--text-secondary)}.tag-chip.add-tag:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.tag-input-inline{display:flex;align-items:center;gap:4px}.tag-input-inline input{padding:4px 8px;font-size:12px;background:var(--bg-primary);border:1px solid var(--accent-primary);border-radius:var(--radius-sm);color:var(--text-primary);width:100px}.tag-input-inline input:focus{outline:none}.tag-input-inline .btn{padding:4px 8px;font-size:12px;min-width:unset}.key-cell-content{display:flex;flex-direction:column;gap:6px}.key-name{font-family:Monaco,Menlo,monospace;font-size:13px;color:var(--accent-primary);font-weight:500}.key-tags{display:flex;flex-wrap:wrap;gap:4px}.tag-badge{display:inline-block;padding:2px 8px;font-size:10px;font-weight:600;border-radius:10px;color:#fff;text-transform:uppercase;letter-spacing:.3px}.actions-wrapper{display:flex;align-items:center;gap:4px}.tag-edit-container{position:relative}.tag-dropdown{position:absolute;top:100%;right:0;margin-top:4px;min-width:180px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;overflow:hidden}.tag-dropdown-header{padding:8px 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.tag-dropdown-empty{padding:12px;font-size:12px;color:var(--text-muted);text-align:center}.tag-dropdown-list{padding:4px 0;max-height:200px;overflow-y:auto}.tag-dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background var(--transition-fast)}.tag-dropdown-item:hover{background:var(--bg-hover)}.tag-dropdown-item input[type=checkbox]{accent-color:var(--accent-primary)}.tag-dropdown-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.subcategory-manager{margin-bottom:16px}.subcategory-filter-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.subcategory-chip-wrapper{display:inline-flex;align-items:center;position:relative}.subcategory-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);color:var(--text-secondary)}.subcategory-chip:hover{background:var(--bg-hover);border-color:var(--border-light);color:var(--text-primary)}.subcategory-chip.selected{background:color-mix(in srgb,var(--subcat-color, var(--accent-primary)) 15%,transparent);border-color:var(--subcat-color, var(--accent-primary));color:var(--text-primary);font-weight:600}.subcat-color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.subcategory-chip.add-category{border-style:dashed;color:var(--text-muted)}.subcategory-chip.add-category:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.subcategory-chip-delete{position:absolute;top:-6px;right:-6px;width:18px;height:18px;padding:0;font-size:14px;line-height:16px;background:var(--danger);color:#fff;border:2px solid var(--bg-primary);border-radius:50%;cursor:pointer;opacity:0;transition:opacity var(--transition-fast)}.subcategory-chip-wrapper:hover .subcategory-chip-delete{opacity:1}.subcategory-chip-delete:hover{background:#dc2626}.subcategory-input-inline,.subcategory-edit-inline{display:inline-flex;align-items:center;gap:4px}.subcategory-name-input,.subcategory-edit-input{padding:6px 10px;font-size:13px;background:var(--bg-tertiary);border:1px solid var(--accent-primary);border-radius:var(--radius-sm);color:var(--text-primary);width:140px}.subcategory-name-input:focus,.subcategory-edit-input:focus{outline:none;box-shadow:0 0 0 2px var(--accent-light)}.key-cell-content{display:flex;flex-direction:column;gap:4px}.key-subcategory-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-muted);background:var(--bg-tertiary);padding:2px 8px;border-radius:var(--radius-sm);width:fit-content}.actions-wrapper{display:flex;gap:4px;align-items:center}.category-edit-container{position:relative}.category-dropdown{position:absolute;right:0;top:100%;z-index:100;min-width:180px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);margin-top:4px}.category-dropdown-header{padding:8px 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);border-radius:var(--radius-md) var(--radius-md) 0 0}.category-dropdown-list{padding:4px 0;max-height:200px;overflow-y:auto}.category-dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background var(--transition-fast);font-size:13px}.category-dropdown-item:hover{background:var(--bg-hover)}.category-dropdown-item.selected{background:var(--accent-light);color:var(--accent-primary);font-weight:500}.key-category-container{position:relative;display:inline-block}.key-subcategory-badge.clickable{cursor:pointer;border:1px solid transparent;transition:all var(--transition-fast)}.key-subcategory-badge.clickable:hover{background:color-mix(in srgb,var(--badge-color, #6b7280) 25%,transparent);border-color:var(--badge-color, #6b7280)}.key-subcategory-badge.clickable.active{background:color-mix(in srgb,var(--badge-color, #6b7280) 30%,transparent);border-color:var(--badge-color, #6b7280);box-shadow:0 0 0 2px color-mix(in srgb,var(--badge-color, #6b7280) 20%,transparent)}.category-dropdown.inline-dropdown{position:absolute;left:0;top:100%;margin-top:4px;right:auto}.category-dropdown-footer{padding:8px;border-top:1px solid var(--border-color);background:var(--bg-tertiary);border-radius:0 0 var(--radius-md) var(--radius-md)}.category-add-btn{width:100%;padding:8px 12px;background:transparent;border:1px dashed var(--border-light);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all var(--transition-fast);text-align:left}.category-add-btn:hover{background:var(--bg-hover);border-color:var(--accent-primary);color:var(--accent-primary)}.category-add-inline{display:flex;gap:4px;align-items:center}.category-add-input{flex:1;padding:6px 8px;font-size:12px;background:var(--bg-primary);border:1px solid var(--accent-primary);border-radius:var(--radius-sm);color:var(--text-primary);min-width:100px}.category-add-input:focus{outline:none;box-shadow:0 0 0 2px var(--accent-light)}.btn.btn-sm{padding:4px 8px;font-size:12px;min-width:unset}.dashboard-header{margin-bottom:24px}.dashboard-header h1{font-size:28px;font-weight:700;color:var(--text-primary);margin:0}.review-container{display:flex;flex-direction:column;height:100%}.review-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.review-item{display:flex;gap:12px;padding:12px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s}.review-item:hover{border-color:var(--accent-primary)}.review-item.selected{background:#3b82f60d;border-color:var(--accent-primary)}.review-checkbox{padding-top:4px}.review-content{flex:1;min-width:0}.review-key{font-family:Monaco,Menlo,monospace;font-size:13px;color:var(--accent-primary);margin-bottom:8px;word-break:break-all}.review-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.review-cell{background:transparent}.review-cell .label{font-size:11px;text-transform:uppercase;color:var(--text-secondary);margin-bottom:4px;font-weight:600}.review-cell .text{font-size:13px;line-height:1.4;word-break:break-word;white-space:pre-wrap;padding:8px;background:var(--bg-tertiary);border-radius:4px;min-height:32px}.review-cell.new .text{background:#22c55e1a;color:var(--success);border:1px solid rgba(34,197,94,.2)}.review-cell.old .text{color:var(--text-secondary)}.review-cell.source .text{border-left:2px solid var(--accent-primary)}.btn-magic-translate{background:transparent;border:none;cursor:pointer;font-size:18px;margin-right:4px;opacity:.8;transition:all .2s ease;padding:4px;border-radius:4px}.btn-magic-translate:hover{opacity:1;filter:grayscale(0%);background:#8b5cf61a;transform:scale(1.1)}.vo-studio{display:flex;flex-direction:column;height:100%;background:var(--bg-primary)}.vo-studio-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);gap:24px}.vo-header-left{display:flex;align-items:center;gap:12px}.vo-back-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.vo-back-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-secondary)}.vo-title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0}.vo-header-center{flex:1;display:flex;justify-content:center}.vo-header-right{display:flex;align-items:center}.vo-language-selector{position:relative}.vo-language-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.vo-language-btn:hover{background:var(--bg-hover);border-color:var(--accent-primary)}.vo-lang-flag{width:20px;height:14px;border-radius:2px;object-fit:cover}.vo-language-dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:8px;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;overflow:hidden}.vo-language-dropdown-floating{position:fixed;top:0;left:0;transform:none;margin-top:0;z-index:1000;max-height:calc(100vh - 16px);overflow-x:hidden;overflow-y:auto}.vo-language-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background:transparent;border:none;color:var(--text-primary);font-size:14px;cursor:pointer;transition:background var(--transition-fast);text-align:left}.vo-language-option:hover{background:var(--bg-hover)}.vo-language-option.selected{background:var(--accent-light);color:var(--accent-primary)}.vo-lang-badge{margin-left:auto;padding:2px 8px;background:var(--warning);color:#fff;font-size:11px;font-weight:600;border-radius:10px}.vo-lang-check{margin-left:auto;color:var(--success);font-weight:600}.vo-batch-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,var(--accent-primary),#6366f1);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 2px 8px #3b82f64d}.vo-batch-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.vo-batch-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.vo-header-right{display:flex;align-items:center;gap:8px}.vo-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;color:var(--text-secondary);padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary);transition:all var(--transition-fast)}.vo-toggle:hover{border-color:var(--accent-primary)}.vo-toggle input{cursor:pointer;accent-color:var(--accent-primary)}.vo-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary);cursor:pointer;transition:all var(--transition-fast);font-size:14px}.vo-icon-btn:hover{border-color:var(--danger);background:#ef44441a}.vo-header-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.vo-header-btn:hover:not(:disabled){border-color:var(--accent-primary);background:var(--bg-hover)}.vo-header-btn.primary{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.vo-header-btn.primary:hover:not(:disabled){background:var(--accent-primary);border-color:var(--accent-primary);filter:brightness(1.15)}.vo-header-btn.success{background:var(--success);border-color:var(--success);color:#fff}.vo-header-btn.success:hover:not(:disabled){background:var(--success);border-color:var(--success);filter:brightness(1.1)}.vo-header-btn:disabled{opacity:.5;cursor:not-allowed}.vo-studio-content{flex:1;overflow-y:auto;padding:24px}.vo-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center}.vo-empty-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:50%;margin-bottom:24px;color:var(--text-muted)}.vo-empty-icon svg{width:40px;height:40px}.vo-empty-state h3{font-size:18px;color:var(--text-primary);margin:0 0 8px}.vo-empty-state p{color:var(--text-secondary);max-width:400px}.vo-cards-container{display:flex;flex-direction:column;gap:12px}.vo-card{display:grid;grid-template-columns:200px 1fr 380px;gap:24px;padding:20px 24px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-fast);position:relative;box-shadow:0 2px 4px #0000000d,inset 4px 0 0 0 var(--category-glow-color, transparent),0 0 15px -5px var(--category-glow-color, transparent)}.vo-card:hover{border-color:var(--border-light);box-shadow:0 5px 15px #0000001a,inset 4px 0 0 0 var(--category-glow-color, transparent),0 0 20px -5px var(--category-glow-color, transparent);transform:translateY(-2px);z-index:1}.vo-card.outdated{border-left:3px solid var(--warning)}.vo-card.no-audio{border-left:3px solid var(--text-muted)}.vo-card-left{display:flex;flex-direction:column;gap:6px}.vo-voice-select{margin-top:4px;width:100%;padding:6px 28px 6px 10px;font-size:11px;font-family:inherit;font-weight:500;color:var(--text-primary);background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;outline:none;transition:all var(--transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%239CA3AF'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:14px}.vo-voice-select:hover{background-color:var(--bg-hover);border-color:var(--border-light)}.vo-voice-select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-light)}.vo-key-name{font-family:Monaco,Menlo,Consolas,monospace;font-size:13px;color:var(--accent-primary);font-weight:500;word-break:break-all}.vo-category-tag{display:inline-flex;align-items:center;padding:2px 8px;font-size:10px;font-weight:500;color:var(--tag-color);background:color-mix(in srgb,var(--tag-color) 15%,transparent);border-radius:var(--radius-sm);width:fit-content}.vo-card-center{display:flex;align-items:center;min-width:0;overflow:hidden}.vo-text-content{font-size:14px;line-height:1.5;color:var(--text-primary);margin:0}.vo-text-content.editable{cursor:pointer;padding:8px 12px;border-radius:var(--radius-sm);transition:background .2s}.vo-text-content.editable:hover{background:var(--bg-hover);border:1px dashed var(--border-light)}.vo-studio-body{display:flex;flex:1;overflow:hidden}.vo-studio-content-scrollable{flex:1;overflow-y:auto;padding:24px}.vo-sidebar{width:280px;background:var(--bg-secondary);border-left:1px solid var(--border-color);display:flex;flex-direction:column;padding:24px;overflow-y:auto}.vo-sidebar-header{margin-bottom:24px}.vo-sidebar-header h3{font-size:16px;font-weight:600;margin:0 0 8px;color:var(--text-primary)}.vo-selection-stats{font-size:13px;color:var(--text-secondary)}.vo-selection-stats .highlight{color:var(--accent-primary);font-weight:600}.vo-sidebar-actions{display:flex;flex-direction:column;gap:20px}.action-group{display:flex;flex-direction:column;gap:8px}.group-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-weight:600;margin-bottom:4px}.divider{height:1px;background:var(--border-color);margin:4px 0}.icon-btn.left-align{justify-content:flex-start;text-align:left}.icon-btn span{display:flex;align-items:center;gap:8px}.full-width{width:100%}.vo-card-wrapper{display:flex;align-items:stretch;gap:16px}.vo-selection-gutter{display:flex;align-items:center;justify-content:center;padding:0 8px}.vo-checkbox-large{width:20px;height:20px;cursor:pointer;accent-color:var(--accent-primary);border-radius:4px;transition:transform .1s}.vo-checkbox-large:hover{transform:scale(1.1)}.vo-text-content.editable:hover{background:var(--bg-hover)}.vo-card-right{display:flex;align-items:center;gap:16px}.vo-audio-player{display:flex;align-items:center;gap:12px;flex:1}.vo-play-button{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--accent-primary);border:none;border-radius:50%;color:#fff;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.vo-play-button:hover{transform:scale(1.08);box-shadow:0 2px 8px #3b82f666}.vo-play-button.playing{background:var(--success)}.vo-player-content{flex:1;display:flex;flex-direction:column;gap:4px}.vo-waveform{position:relative;height:24px;display:flex;align-items:center}.vo-waveform svg{color:var(--accent-primary)}.vo-progress-bar{position:absolute;top:50%;left:0;right:0;height:4px;background:var(--bg-tertiary);border-radius:2px;cursor:pointer;transform:translateY(-50%)}.vo-progress-fill{height:100%;background:var(--accent-primary);border-radius:2px;transition:width .1s linear}.vo-progress-handle{position:absolute;top:50%;width:10px;height:10px;background:#fff;border:2px solid var(--accent-primary);border-radius:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity var(--transition-fast)}.vo-progress-bar:hover .vo-progress-handle{opacity:1}.vo-time-display{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-muted);font-family:Monaco,Menlo,monospace}.vo-time-separator{opacity:.5}.vo-status-label{font-size:11px;font-weight:600;text-transform:uppercase;padding:4px 8px;border-radius:var(--radius-sm);letter-spacing:.5px}.vo-status-label.synced{background:#22c55e1a;color:var(--success)}.vo-status-label.outdated{background:#f59e0b1a;color:var(--warning)}.vo-generate-btn.disabled{opacity:.5;cursor:default;background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-muted)}.vo-generate-btn.disabled:hover{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-muted)}.vo-no-audio-state{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;padding:8px}.vo-waveform-placeholder{opacity:.2}.vo-no-audio-text{font-size:11px;color:var(--text-muted)}.vo-generate-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.vo-generate-btn:hover:not(:disabled){background:var(--success);border-color:var(--success);color:#fff}.vo-generate-btn.regenerate{color:var(--text-muted)}.vo-generate-btn.outdated{border-color:var(--warning);color:var(--warning)}.vo-generate-btn.outdated:hover:not(:disabled){background:var(--warning);color:#fff}.vo-generate-btn:disabled{opacity:.5;cursor:not-allowed}.vo-spinner{width:14px;height:14px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:vo-spin .8s linear infinite}@keyframes vo-spin{to{transform:rotate(360deg)}}.vo-studio-footer{padding:12px 24px;background:var(--bg-secondary);border-top:1px solid var(--border-color)}.vo-footer-stats{display:flex;align-items:center;justify-content:center;gap:12px;font-size:13px;color:var(--text-secondary)}.vo-stat-value{font-weight:600;color:var(--text-primary)}.vo-stat.warning .vo-stat-value{color:var(--warning)}.vo-stat-separator{color:var(--border-light)}@media(max-width:1200px){.vo-card{grid-template-columns:160px 1fr 320px}}@media(max-width:900px){.vo-card{grid-template-columns:1fr;gap:16px}.vo-card-right{justify-content:space-between}.vo-studio-header{flex-wrap:wrap;gap:12px}.vo-header-center{order:3;width:100%;justify-content:flex-start}}.export-modal .export-section{display:flex;flex-direction:column;gap:10px}.export-modal .section-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.export-format-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.export-format-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.export-format-card:hover{border-color:var(--accent-primary);background:var(--bg-hover)}.export-format-card.selected{border-color:var(--accent-primary);background:var(--accent-light)}.export-format-card input[type=radio]{display:none}.export-format-card .format-icon{font-size:24px}.export-format-card .format-info{display:flex;flex-direction:column;gap:2px}.export-format-card .format-name{font-weight:600;font-size:14px}.export-format-card .format-desc{font-size:11px;color:var(--text-secondary)}.export-language-grid{display:flex;flex-wrap:wrap;gap:8px}.export-lang-chip{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-size:13px}.export-lang-chip:hover{border-color:var(--accent-primary)}.export-lang-chip.selected{border-color:var(--accent-primary);background:var(--accent-light)}.export-lang-chip input[type=checkbox]{display:none}.export-summary{padding:12px 16px;background:var(--bg-tertiary);border-radius:var(--radius-md);font-size:14px;color:var(--text-secondary)}.export-summary strong{color:var(--text-primary)}.export-note{color:var(--text-muted);font-size:12px}.export-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text-secondary)}.export-toggle input[type=checkbox]{accent-color:var(--accent-primary);width:16px;height:16px;cursor:pointer}.project-tabs{display:flex;gap:4px;padding:4px;background:var(--bg-tertiary);border-radius:var(--radius-lg);margin-bottom:20px;width:fit-content}.project-tab{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);position:relative}.project-tab:hover{color:var(--text-primary);background:var(--bg-hover)}.project-tab.active{background:var(--bg-secondary);color:var(--text-primary);box-shadow:var(--shadow-sm)}.project-tab .tab-icon{font-size:16px}.project-tab.voiceover-tab{position:relative}.project-tab.voiceover-tab.active{background:linear-gradient(135deg,#a855f726,#ec48991a);border:1px solid rgba(168,85,247,.3)}.project-tab.voiceover-tab.active:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:calc(var(--radius-md) + 2px);background:linear-gradient(135deg,#a855f766,#ec48994d);opacity:.5;filter:blur(8px);z-index:-1}.project-tab .premium-badge{font-size:9px;padding:2px 6px;background:linear-gradient(135deg,#a855f7,#ec4899);color:#fff;border-radius:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.circular-progress-container{position:relative;width:48px;height:48px;display:flex;align-items:center;justify-content:center}.circular-progress{width:100%;height:100%;transform:rotate(-90deg)}.circular-progress .circle-bg{fill:none;stroke:var(--bg-tertiary);stroke-width:3}.circular-progress .circle-progress{fill:none;stroke:var(--accent-primary);stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .5s ease}.circular-progress-text{position:absolute;font-size:10px;font-weight:600;color:var(--text-primary)}.vo-row-outdated{background:#eab3080f!important}.vo-row-outdated:hover{background:#eab3081f!important}.vo-row-no-audio .key-cell,.vo-row-no-audio .vo-text-inline,.vo-row-no-audio .vo-no-audio-text{opacity:.82}.vo-row-selected{background:#3b82f614!important}.vo-row-selected:hover{background:#3b82f624!important}.vo-table .vo-audio-player-simple .vo-play-button{width:32px;height:32px}.vo-table .vo-audio-player-simple .vo-status-label{font-size:10px;white-space:nowrap}.vo-category-tag{display:inline-block;font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;margin-top:4px;background:color-mix(in srgb,var(--tag-color) 15%,transparent);color:var(--tag-color);border:1px solid color-mix(in srgb,var(--tag-color) 25%,transparent)}.vo-text-inline{font-size:13px;line-height:1.5;color:var(--text-primary);padding:4px 0;cursor:default}.vo-text-inline.editable{cursor:pointer;border-radius:4px;transition:background .15s}.vo-text-inline.editable:hover{background:#3b82f614}.vo-text-cell{min-width:200px}.vo-no-text{color:var(--text-muted);font-style:italic}.vo-action-btn{border:none;border-radius:6px;padding:4px}.vo-action-generate-icon{display:flex;align-items:center;justify-content:center}.vo-action-generate-icon svg{width:28px;height:28px;display:block;flex-shrink:0}.vo-action-btn:disabled{opacity:.4;cursor:not-allowed}.translations-container .table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-wrap:wrap}.translations-container .table-toolbar .search-box{flex:0 1 320px;min-width:200px}.vo-cell .vo-voice-icon{font-size:12px;opacity:.7}.vo-cell .vo-voice-icon.outdated{opacity:.4;text-decoration:line-through}.changelog-panel{padding:0 4px}.changelog-stats{display:flex;gap:8px;margin-bottom:12px}.changelog-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.changelog-stat-value{font-size:14px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-align:center}.changelog-stat-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.changelog-filters{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.changelog-filter-chips{display:flex;flex-wrap:wrap;gap:6px}.changelog-filter-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:500;border:1px solid var(--border-color);border-radius:16px;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.changelog-filter-chip:hover{border-color:var(--chip-color);color:var(--text-secondary)}.changelog-filter-chip.active{background:color-mix(in srgb,var(--chip-color) 15%,transparent);border-color:var(--chip-color);color:var(--text-primary)}.changelog-search-wrapper{position:relative}.changelog-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.changelog-search{width:100%;padding:6px 10px 6px 30px;font-size:13px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);outline:none;transition:border-color .15s ease}.changelog-search:focus{border-color:var(--accent-primary)}.changelog-search::placeholder{color:var(--text-muted)}.changelog-new-banner{display:block;width:100%;padding:8px;margin-bottom:12px;font-size:13px;font-weight:500;text-align:center;background:color-mix(in srgb,var(--accent-primary) 12%,transparent);border:1px solid var(--accent-primary);border-radius:var(--radius-md);color:var(--accent-primary);cursor:pointer;transition:background .15s ease}.changelog-new-banner:hover{background:color-mix(in srgb,var(--accent-primary) 20%,transparent)}.changelog-no-results{padding:32px 16px;text-align:center;color:var(--text-muted);font-size:14px}.changelog-timeline{display:flex;flex-direction:column;gap:4px}.changelog-date-group{margin-bottom:4px}.changelog-date-header{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:13px;font-weight:600;text-align:left;border-radius:var(--radius-sm);transition:background .15s ease}.changelog-date-header:hover{background:var(--bg-tertiary)}.changelog-chevron{transition:transform .15s ease;flex-shrink:0}.changelog-chevron.collapsed{transform:rotate(-90deg)}.changelog-date-label{flex:1}.changelog-date-count{font-size:11px;font-weight:600;padding:1px 7px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-muted)}.changelog-group-entries{display:flex;flex-direction:column;gap:2px;padding-left:8px;margin-top:2px}.changelog-entry{padding:10px 14px;background:var(--bg-secondary);border:1px solid var(--border-color);border-left:3px solid var(--entry-color, var(--border-color));border-radius:var(--radius-md);transition:background var(--transition-fast)}.changelog-entry:hover{background:var(--bg-tertiary)}.changelog-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.changelog-entry-type{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600}.changelog-time{font-size:11px;color:var(--text-muted);cursor:help}.changelog-entry-body{display:flex;align-items:center;gap:8px;margin-bottom:4px}.changelog-key{font-family:Monaco,Menlo,monospace;font-size:12px;color:var(--accent-primary);font-weight:500;word-break:break-all}.changelog-lang{font-size:10px;font-weight:600;padding:1px 5px;background:var(--accent-light);color:var(--accent-primary);border-radius:var(--radius-sm);letter-spacing:.5px;flex-shrink:0}.changelog-diff{display:flex;flex-direction:column;gap:1px;margin-top:6px;padding:6px 8px;background:var(--bg-primary);border-radius:var(--radius-sm);font-size:11px;font-family:Monaco,Menlo,monospace;overflow:hidden}.changelog-diff-line{display:flex;gap:6px;padding:1px 0}.changelog-diff-prefix{font-weight:700;flex-shrink:0;width:10px}.changelog-old{color:var(--danger);opacity:.85}.changelog-old span{text-decoration:line-through}.changelog-new{color:var(--success)}.changelog-user{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:11px;color:var(--text-muted)}.changelog-avatar{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:10px;font-weight:700;color:#fff;flex-shrink:0}.changelog-load-more{margin:16px auto;display:block}
