*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #0a0a0a;--bg-secondary: #111111;--bg-tertiary: #1a1a1a;--bg-hover: #222222;--text-primary: #ffffff;--text-secondary: #a0a0a0;--text-muted: #666666;--accent-purple: #8b5cf6;--accent-pink: #d946ef;--accent-gradient: linear-gradient(135deg, #8b5cf6 0%, #d946ef 100%);--border-color: #2a2a2a;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff80}::-webkit-scrollbar-corner{background:transparent}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);height:100vh;overflow:hidden}#app{height:100vh}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}.login-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:40px;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:32px}.login-header .logo-icon{display:block;margin-bottom:12px}.login-header .logo-icon .versify-logo{width:48px;height:48px;color:var(--accent-color)}.login-header h1{font-size:28px;font-weight:700;margin-bottom:8px}.login-header p{color:var(--text-secondary);font-size:14px}.login-tabs{display:flex;gap:8px;margin-bottom:24px}.tab-btn{flex:1;padding:12px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.tab-btn:hover{border-color:var(--text-muted)}.tab-btn.active{background:var(--accent-gradient);border-color:transparent;color:#fff}.auth-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:13px;color:var(--text-secondary)}.form-group input{padding:12px 14px;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;transition:border-color .2s}.form-group input:focus{outline:none;border-color:var(--accent-purple)}.form-group input::placeholder{color:var(--text-muted)}.form-group input.input-error{border-color:#ef4444}.password-wrapper{position:relative;display:flex;align-items:center}.password-wrapper input{width:100%;padding-right:44px}.toggle-password{position:absolute;right:8px;background:transparent;border:none;padding:8px;cursor:pointer;color:var(--text-muted);transition:color .2s}.toggle-password:hover{color:var(--text-secondary)}.toggle-password svg{display:block}.toggle-password .hidden{display:none}.field-error{color:#ef4444;font-size:12px;min-height:16px;display:block;margin-top:4px}.confirm-password-group.hidden{display:none}.error-message{color:#ef4444;font-size:13px;min-height:20px}.success-message{color:#22c55e;font-size:13px;min-height:20px;background-color:#22c55e1a;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid rgba(34,197,94,.2)}.success-message.hidden{display:none}.submit-btn{padding:14px;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:opacity .2s}.submit-btn:hover:not(:disabled){opacity:.9}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.forgot-password-btn{background:transparent;border:none;color:var(--text-secondary);font-size:13px;cursor:pointer;padding:8px 0;text-align:center;transition:color .2s}.forgot-password-btn:hover:not(:disabled){color:var(--accent-purple)}.forgot-password-btn:disabled{opacity:.6;cursor:not-allowed}.forgot-password-btn.hidden{display:none}.divider{display:flex;align-items:center;gap:16px;margin:24px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background-color:var(--border-color)}.divider span{color:var(--text-muted);font-size:13px}.google-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px;background-color: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 .2s}.google-btn:hover:not(:disabled){background-color:var(--bg-hover);border-color:var(--text-muted)}.google-btn:disabled{opacity:.7;cursor:not-allowed}.google-btn .hidden{display:none}.spinner{width:18px;height:18px;border:2px solid var(--text-muted);border-top-color:var(--accent-purple);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-container{display:flex;height:100vh}.sidebar{width:260px;background-color:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:16px;overflow:hidden}.sidebar-header{margin-bottom:24px}.logo{display:flex;align-items:center;gap:10px;margin-bottom:16px}.logo-icon{display:flex;align-items:center}.logo-icon .versify-logo{width:24px;height:24px;color:var(--accent-color)}.logo-text{font-size:20px;font-weight:700;letter-spacing:-.5px}.new-chat-btn{width:100%;padding:12px 16px;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-weight:600;cursor:pointer;transition:opacity .2s}.new-chat-btn:hover{opacity:.9}.history-section{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.section-title{font-size:12px;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;letter-spacing:.5px}.history-list{list-style:none}.history-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:background-color .2s}.history-item:hover{background-color:var(--bg-hover)}.history-item.active{background-color:var(--bg-tertiary)}.history-icon{font-size:14px}.history-text{font-size:14px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-item.active .history-text{color:var(--text-primary)}.history-empty{font-size:13px;color:var(--text-muted);padding:10px 12px}.history-item.pending-title .history-title{display:flex;align-items:center}.title-loading{display:inline-block;width:80px;height:14px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-hover) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.item-menu-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:opacity .15s,background-color .15s,color .15s;flex-shrink:0;margin-left:auto}.item-menu-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.item-menu-btn svg{width:14px;height:14px}.history-item:hover .item-menu-btn,.history-item.menu-open .item-menu-btn,.lyrics-item:hover .item-menu-btn,.lyrics-item.menu-open .item-menu-btn{opacity:1}.history-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:max-width .15s}.history-menu{display:flex;align-items:center;flex-shrink:0}.lyrics-item-menu{display:flex;align-items:center;flex-shrink:0;margin-left:auto}.item-menu-dropdown{position:absolute;top:100%;right:0;z-index:100;min-width:120px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000004d;padding:4px;margin-top:4px}.history-item,.lyrics-item{position:relative}.item-menu-action{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:transparent;color:var(--text-secondary);font-size:13px;text-align:left;border-radius:var(--radius-sm);cursor:pointer;transition:background-color .15s,color .15s}.item-menu-action:hover{background-color:var(--bg-hover);color:var(--text-primary)}.item-menu-action.danger{color:#ef4444}.item-menu-action.danger:hover{background-color:#ef44441a;color:#f87171}.item-menu-action svg{width:14px;height:14px}@media(max-width:768px){.item-menu-btn{opacity:1}}.sidebar-footer{margin-top:auto;padding-top:16px;border-top:1px solid var(--border-color)}.sidebar-logout-btn{display:none;width:100%;padding:12px 16px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:14px;cursor:pointer;transition:all .2s;align-items:center;justify-content:center;gap:8px}.sidebar-logout-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.sidebar-logout-btn svg{width:14px;height:14px}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;margin-left:18px}.top-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;position:relative}.top-bar:after{content:"";position:absolute;bottom:0;left:1px;right:1px;height:1px;background-color:var(--border-color)}.page-title{font-size:18px;font-weight:600}.user-menu{display:flex;align-items:center;gap:12px}.user-avatar{width:32px;height:32px;background:var(--accent-gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.user-name{font-size:14px;color:var(--text-secondary)}.logout-btn{padding:8px 16px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all .2s}.logout-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.chat-container{flex:1;display:flex;flex-direction:column;overflow:hidden}.messages-area{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:20px}.message{display:flex;gap:12px;max-width:800px}.message.user{flex-direction:row-reverse;align-self:flex-end}.message-avatar{width:36px;height:36px;background:var(--accent-gradient);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.message-avatar .versify-logo{width:20px;height:20px;color:#fff}.message-content{background-color:var(--bg-tertiary);padding:14px 18px;border-radius:var(--radius-md);line-height:1.6}.message.user .message-content{background:var(--accent-gradient)}.message-content p{font-size:14px}.input-area{padding:20px 24px;position:relative}.input-area:before{content:"";position:absolute;top:0;left:1px;right:1px;height:1px;background-color:var(--border-color)}.input-wrapper{display:flex;gap:12px;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:12px 16px;align-items:center}.input-wrapper textarea{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:14px;resize:none;font-family:inherit;line-height:1.5;max-height:120px}.input-wrapper textarea::placeholder{color:var(--text-muted)}.send-btn{padding:10px 24px;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:opacity .2s}.send-btn:hover:not(:disabled){opacity:.9}.send-btn:disabled{opacity:.5;cursor:not-allowed}.input-wrapper textarea:disabled{opacity:.5}.typing-indicator{display:flex;gap:4px;padding:8px 0}.typing-indicator span{width:8px;height:8px;background-color:var(--text-muted);border-radius:50%;animation:typing-bounce 1.4s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.status-message{color:var(--accent-purple);font-style:italic}.message-content .error-message{color:#ef4444}.lyrics-title{font-size:20px;font-weight:700;margin-bottom:8px;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.lyrics-meta{font-size:13px;color:var(--text-secondary);margin-bottom:12px}.lyrics-divider{border:none;border-top:1px solid var(--border-color);margin:16px 0}.lyrics-section{font-size:12px;font-weight:600;color:var(--accent-purple);text-transform:uppercase;margin-top:16px;margin-bottom:8px}.lyrics-line{font-size:14px;line-height:1.8;margin:2px 0}.lyrics-rationale{font-size:13px;color:var(--text-secondary);margin-top:16px;padding:12px;background-color:var(--bg-tertiary);border-radius:var(--radius-sm);border-left:3px solid var(--accent-purple)}.app-container.three-panel{display:grid;grid-template-columns:240px 1fr 320px;height:100vh}.lyrics-panel{background-color:var(--bg-secondary);border-left:1px solid var(--border-color);display:flex;flex-direction:column;height:100vh;overflow:hidden}.lyrics-panel-header{padding:16px;border-bottom:1px solid var(--border-color)}.lyrics-panel-header .section-title{font-size:14px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin:0}.lyrics-list{flex:1;overflow-y:auto;padding:12px}.lyrics-empty{color:var(--text-muted);font-size:13px;text-align:center;padding:24px 16px}.lyrics-item{background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px;margin-bottom:10px;cursor:pointer;transition:all .2s}.lyrics-item:hover{border-color:var(--text-muted)}.lyrics-item.complete{border-color:var(--accent-purple)}.lyrics-item.complete:hover{background-color:var(--bg-hover)}.lyrics-item.failed{border-color:#ef4444;opacity:.8}.lyrics-item.in-progress{cursor:default}.lyrics-item-header{display:flex;align-items:center;gap:8px}.lyrics-item-icon{font-size:16px}.lyrics-item-title{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.lyrics-item-status{display:flex;align-items:center;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-color)}.lyrics-status-spinner{width:14px;height:14px;border:2px solid var(--border-color);border-top-color:var(--accent-purple);border-radius:50%;animation:spin 1s linear infinite}.lyrics-status-text{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.lyrics-status-text svg{width:14px;height:14px;--fa-primary-color: var(--accent-purple);--fa-secondary-color: var(--accent-pink);animation:icon-pulse 1.5s ease-in-out infinite}.lyrics-item-error{font-size:12px;color:#ef4444;margin-top:8px}.lyrics-detail{position:fixed;top:0;right:1px;width:400px;height:100vh;background-color:var(--bg-secondary);border-left:1px solid var(--border-color);transform:translate(100%);transition:transform .3s ease;z-index:100;display:flex;flex-direction:column;overflow:hidden}.lyrics-detail.visible{transform:translate(0)}.lyrics-detail-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color)}.lyrics-detail-title{font-size:18px;font-weight:700;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0}.lyrics-close-btn{background:transparent;border:none;color:var(--text-muted);font-size:24px;cursor:pointer;padding:4px 8px;transition:color .2s}.lyrics-close-btn:hover{color:var(--text-primary)}.lyrics-detail-style{padding:12px 20px;font-size:12px;color:var(--text-secondary);background-color:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.lyrics-detail-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px;word-wrap:break-word;overflow-wrap:break-word}.lyrics-detail-content .lyrics-section-tag{font-size:11px;font-weight:600;color:var(--accent-purple);text-transform:uppercase;margin-top:16px;margin-bottom:6px}.lyrics-detail-content .lyrics-line{font-size:14px;line-height:1.7;margin:2px 0}.lyrics-detail-actions{display:flex;gap:10px;padding:16px 20px;border-top:1px solid var(--border-color)}.copy-btn{flex:1;padding:10px 16px;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;gap:6px;color:var(--text-primary);font-size:13px;cursor:pointer;transition:all .2s}.copy-btn:hover{background-color:var(--bg-hover);border-color:var(--text-muted)}.copy-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(100px);background:var(--accent-gradient);color:#fff;padding:12px 24px;border-radius:var(--radius-md);font-size:14px;font-weight:500;z-index:1000;opacity:0;transition:all .3s ease}.copy-toast.visible{transform:translate(-50%) translateY(0);opacity:1}button svg,.btn svg{margin-right:6px}.new-chat-btn svg{width:14px;height:14px}.logout-btn svg{width:14px;height:14px}.history-icon svg{width:16px;height:16px;--fa-primary-color: var(--text-secondary);--fa-secondary-color: var(--accent-purple);--fa-secondary-opacity: .5}.history-item.active .history-icon svg{--fa-primary-color: var(--accent-purple);--fa-secondary-color: var(--accent-pink);--fa-secondary-opacity: .7}.lyrics-item-icon svg{width:18px;height:18px}.lyrics-item[data-status=pending] .lyrics-item-icon svg{--fa-primary-color: var(--text-muted);--fa-secondary-color: var(--text-muted)}.lyrics-item[data-status=researching] .lyrics-item-icon svg,.lyrics-item[data-status=concepting] .lyrics-item-icon svg,.lyrics-item[data-status=writing] .lyrics-item-icon svg,.lyrics-item[data-status=evaluating] .lyrics-item-icon svg{--fa-primary-color: var(--accent-purple);--fa-secondary-color: var(--accent-pink);animation:icon-pulse 1.5s ease-in-out infinite}.lyrics-item[data-status=complete] .lyrics-item-icon svg{--fa-primary-color: #f59e0b;--fa-secondary-color: #fbbf24}.lyrics-item[data-status=failed] .lyrics-item-icon svg{--fa-primary-color: #ef4444;--fa-secondary-color: #f87171}@keyframes icon-pulse{0%,to{opacity:1}50%{opacity:.5}}.copy-btn svg{width:14px;height:14px;flex-shrink:0}.lyrics-close-btn svg{width:16px;height:16px}.mobile-header,.lyrics-panel-close,.sidebar-close{display:none}.drawer-overlay{display:none;position:fixed;inset:0;background:#0009;z-index:998;opacity:0;transition:opacity .3s ease}.drawer-overlay.visible{display:block;opacity:1}@media(max-width:768px){.app-container,.app-container.three-panel{display:block;grid-template-columns:unset;overflow-x:hidden;width:100%;position:relative}.sidebar{position:fixed;left:0;top:0;bottom:0;width:280px;transform:translate(-100%);transition:transform .3s ease;z-index:1000;border-right:1px solid var(--border-color)}.sidebar.drawer-open{transform:translate(0)}.sidebar-header{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin-bottom:16px}.sidebar-header-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap}.sidebar-header .logo{margin-bottom:0}.sidebar-header .new-chat-btn{width:100%}.sidebar-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:6px;transition:background-color .2s,color .2s}.sidebar-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.sidebar-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:background-color .2s,color .2s;flex-shrink:0}.sidebar-close:hover{background-color:var(--bg-hover);color:var(--text-primary)}.sidebar-close svg{width:20px;height:20px}.sidebar .new-chat-btn{margin-bottom:16px}.sidebar-logout-btn{display:flex}.lyrics-panel{position:fixed;inset:0;width:100%;max-width:100%;transform:translate(100%);transition:transform .3s ease;z-index:1000;border-left:none;overflow-x:hidden}.lyrics-panel.drawer-open{transform:translate(0)}.lyrics-detail{width:100%;right:0}.main-content{width:100%;height:100vh;margin-left:0}.top-bar{display:none}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100}.mobile-header-left{display:flex;align-items:center;gap:12px}.mobile-menu-btn,.mobile-lyrics-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:background-color .2s,border-color .2s}.mobile-menu-btn:hover,.mobile-lyrics-btn:hover{background-color:var(--bg-hover);border-color:var(--text-muted)}.mobile-menu-btn svg,.mobile-lyrics-btn svg{width:20px;height:20px}.mobile-title{font-size:18px;font-weight:600;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mobile-lyrics-btn{position:relative}.mobile-lyrics-btn.has-active:after{content:"";position:absolute;top:6px;right:6px;width:8px;height:8px;background:var(--accent-pink);border-radius:50%}.chat-container{height:calc(100vh - 65px)}.messages-area,.input-area{padding:12px}.message{gap:8px;max-width:100%}.message-avatar{width:32px;height:32px;font-size:16px}.message-content{padding:12px 14px}.lyrics-panel-close{display:flex}.lyrics-panel-header{display:flex;align-items:center;justify-content:space-between}.lyrics-panel-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:background-color .2s,color .2s}.lyrics-panel-close:hover{background-color:var(--bg-hover);color:var(--text-primary)}.lyrics-panel-close svg{width:20px;height:20px}.message-content{max-width:100%}.user-menu{display:none}}@media(max-width:480px){.sidebar{width:100%}.lyrics-panel{max-width:100%}.mobile-header{padding:10px 12px}.mobile-menu-btn,.mobile-lyrics-btn{width:36px;height:36px}}.confirm-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;transition:opacity .15s ease}.confirm-modal-overlay.visible{opacity:1}.confirm-modal-overlay.closing{opacity:0}.confirm-modal{background:var(--card-bg);border-radius:12px;box-shadow:0 8px 32px #0000004d;width:90%;max-width:400px;transform:scale(.95) translateY(-10px);transition:transform .15s ease;overflow:hidden}.confirm-modal-overlay.visible .confirm-modal{transform:scale(1) translateY(0)}.confirm-modal-overlay.closing .confirm-modal{transform:scale(.95) translateY(-10px)}.confirm-modal-header{padding:20px 24px 0}.confirm-modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.confirm-modal-body{padding:12px 24px 20px}.confirm-modal-body p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.5}.confirm-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;background:#0000001a;border-top:1px solid var(--border-color)}.confirm-modal-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.confirm-modal-cancel{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.confirm-modal-cancel:hover{background:#ffffff0d;color:var(--text-primary)}.confirm-modal-confirm{background:var(--accent-color);color:#fff}.confirm-modal-confirm:hover{filter:brightness(1.1)}.confirm-modal-confirm.danger{background:#dc3545}.confirm-modal-confirm.danger:hover{background:#c82333}.confirm-modal-btn:focus{outline:none;box-shadow:0 0 0 2px #8b5cf64d}.confirm-modal-confirm.danger:focus{box-shadow:0 0 0 2px #dc35454d}:root,:host{--fa-font-solid: normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular: normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light: normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin: normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone: normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands: normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular: normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular: normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-whiteboard-semibold: normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light: normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid: normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid: normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid: normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-jelly-regular: normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular: normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular: normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular: normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold: normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold: normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold: normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:var(--fa-display, inline-block);height:1em;overflow:visible;vertical-align:-.125em;width:var(--fa-width, 1.25em)}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0em}.svg-inline--fa.fa-sm{vertical-align:-.0714285714em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left,.svg-inline--fa .fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin, .3em)}.svg-inline--fa.fa-pull-right,.svg-inline--fa .fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin, .3em)}.svg-inline--fa.fa-li{width:var(--fa-li-width, 2em);inset-inline-start:calc(-1 * var(--fa-li-width, 2em));inset-block-start:.25em}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:var(--fa-width, 1.25em)}.fa-layers .svg-inline--fa{inset:0;margin:auto;position:absolute;transform-origin:center center}.fa-layers-text{left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center}.fa-layers-counter{background-color:var(--fa-counter-background-color, #ff253a);border-radius:var(--fa-counter-border-radius, 1em);box-sizing:border-box;color:var(--fa-inverse, #fff);line-height:var(--fa-counter-line-height, 1);max-width:var(--fa-counter-max-width, 5em);min-width:var(--fa-counter-min-width, 1.5em);overflow:hidden;padding:var(--fa-counter-padding, .25em .5em);right:var(--fa-right, 0);text-overflow:ellipsis;top:var(--fa-top, 0);transform:scale(var(--fa-counter-scale, .25));transform-origin:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom, 0);right:var(--fa-right, 0);top:auto;transform:scale(var(--fa-layers-scale, .25));transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom, 0);left:var(--fa-left, 0);right:auto;top:auto;transform:scale(var(--fa-layers-scale, .25));transform-origin:bottom left}.fa-layers-top-right{top:var(--fa-top, 0);right:var(--fa-right, 0);transform:scale(var(--fa-layers-scale, .25));transform-origin:top right}.fa-layers-top-left{left:var(--fa-left, 0);right:auto;top:var(--fa-top, 0);transform:scale(var(--fa-layers-scale, .25));transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:calc((6 / 10 - .375) * 1em)}.fa-xs{font-size:.75em;line-height:calc(1 / 12 * 1em);vertical-align:.125em}.fa-sm{font-size:.875em;line-height:calc(1 / 14 * 1em);vertical-align:calc((6 / 14 - .375) * 1em)}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:calc((6 / 20 - .375) * 1em)}.fa-xl{font-size:1.5em;line-height:calc(1 / 24 * 1em);vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-width-auto{--fa-width: auto}.fa-fw,.fa-width-fixed{--fa-width: 1.25em}.fa-ul{list-style-type:none;margin-inline-start:var(--fa-li-margin, 2.5em);padding-inline-start:0}.fa-ul>li{position:relative}.fa-li{inset-inline-start:calc(-1 * var(--fa-li-width, 2em));position:absolute;text-align:center;width:var(--fa-li-width, 2em);line-height:inherit}.fa-border{border-color:var(--fa-border-color, #eee);border-radius:var(--fa-border-radius, .1em);border-style:var(--fa-border-style, solid);border-width:var(--fa-border-width, .0625em);box-sizing:var(--fa-border-box-sizing, content-box);padding:var(--fa-border-padding, .1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin, .3em)}.fa-pull-right,.fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin, .3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 2s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin-reverse{--fa-animation-direction: reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, steps(8))}@media(prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation:none!important;transition:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale, 1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x, 1.1),var(--fa-bounce-start-scale-y, .9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x, .9),var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x, 1.05),var(--fa-bounce-land-scale-y, .95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound, -.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity, .4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity, .4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale, 1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle, 0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color, currentColor);opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color, currentColor);opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse, #fff)}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-inverse{color:var(--fa-inverse, #fff)}.svg-inline--fa.fa-stack-1x{--fa-width: 1.25em;height:1em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width: 2.5em;height:2em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{inset:0;margin:auto;position:absolute;z-index:var(--fa-stack-z-index, auto)}
