@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Noto+Sans+TC:wght@300;400;500;700&display=swap";:root{--primary: #00BFA5;--primary-hover: #00A693;--primary-light: #E0F2F1;--sidebar-bg: #F8FDFF;--main-bg: #FFFFFF;--text-main: #1A1A1A;--text-muted: #666666;--border: #E5E7EB;--accent: #26C6DA;--sidebar-width: 260px;--header-height: 80px;font-family:Outfit,Noto Sans TC,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color:var(--text-main);background-color:var(--main-bg)}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;overflow-x:hidden}#root{display:flex;min-height:100vh}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}button{cursor:pointer;border:none;background:none;font-family:inherit;transition:all .2s ease}input{font-family:inherit;outline:none}.sidebar{width:var(--sidebar-width);height:100vh;background:var(--sidebar-bg);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:24px 0;position:sticky;top:0}.sidebar-logo{padding:0 24px 32px;display:flex;align-items:center;gap:12px;color:var(--primary)}.logo-circle{width:40px;height:40px;background:var(--primary);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}.logo-info{display:flex;flex-direction:column;gap:2px}.logo-text{font-size:18px;font-weight:700;color:var(--primary);letter-spacing:-.5px}.user-email-tiny{font-size:10px;color:var(--text-muted);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav{flex:1}.sidebar ul{list-style:none}.sidebar li{padding:4px 16px}.sidebar-btn{width:100%;display:flex;align-items:center;gap:12px;padding:10px 16px;border-radius:12px;color:var(--text-muted);font-size:14px;font-weight:500;transition:all .2s;background:transparent;border:none;cursor:pointer;margin-bottom:2px}.sidebar-btn svg{flex-shrink:0}.sidebar-btn:hover{background:var(--primary-light);color:var(--primary)}.active .sidebar-btn{background:var(--primary);color:#fff}.active .sidebar-btn:hover{background:var(--primary-hover);color:#fff}.logout-btn:hover{background:#fee2e2;color:#ef4444}.sidebar-footer{padding-top:24px;border-top:1px solid var(--border);margin-top:auto}.sidebar-footer li{padding:2px 16px}.modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{background:#fff;border-radius:20px;padding:32px;width:90%;max-width:480px;box-shadow:0 20px 60px #00000026;position:relative;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:16px;right:16px;padding:8px;color:#94a3b8;border-radius:8px;transition:all .2s}.modal-close:hover{background:#f1f5f9;color:#475569}.modal-header{text-align:center;margin-bottom:28px}.modal-header h2{font-size:24px;font-weight:700;color:var(--primary);margin-bottom:8px}.modal-header p{font-size:15px;color:var(--text-muted)}.modal-body{margin-bottom:28px}.project-name-input{width:100%;padding:16px 20px;font-size:16px;border:2px solid #E2E8F0;border-radius:12px;transition:all .2s;background:#fafbfc}.project-name-input:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 4px var(--primary-light)}.project-name-input::placeholder{color:#94a3b8}.modal-footer{display:flex;gap:12px;justify-content:flex-end}.btn-cancel{padding:12px 24px;font-size:15px;font-weight:500;color:var(--text-muted);border:1px solid #E2E8F0;border-radius:10px;transition:all .2s}.btn-cancel:hover{background:#f8fafc;border-color:#cbd5e1}.btn-create{padding:12px 28px;font-size:15px;font-weight:600;color:#fff;background:var(--primary);border-radius:10px;transition:all .2s}.btn-create:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.btn-create:disabled{opacity:.5;cursor:not-allowed}.shared-input-container{width:100%}.shared-input-wrapper{position:relative;background:#fff;border:1.5px solid #E2E8F0;border-radius:16px;padding:8px 8px 8px 24px;margin-bottom:16px;transition:all .2s}.shared-input-wrapper form{display:flex;align-items:center;width:100%}.shared-input-wrapper:focus-within,.shared-input-wrapper.active{border-color:var(--primary)}.shared-input-wrapper.research-mode{border-color:#3b82f6}.shared-input-wrapper.copywriter-mode{border-color:#10b981}.shared-input-wrapper.image_gen-mode{border-color:#8b5cf6}.shared-input-wrapper input[type=text]{width:100%;border:none;outline:none;padding:12px 0;font-size:16px;color:#1e293b;background:transparent}.shared-input-wrapper input::placeholder{color:#94a3b8}.btn-icon-action.recording{color:#ef4444;border-color:#ef4444;background:#fee2e2}.shared-suggestions{display:flex;gap:12px;margin-top:8px}.suggestion-tag{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #E2E8F0;border-radius:20px;color:#64748b;font-size:14px;cursor:pointer;transition:all .2s;font-weight:500}.delete-modal{border-top:4px solid #EF4444}.warning-icon{color:#ef4444;background:#fee2e2;width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.delete-modal h2{color:#1a1a1a}.delete-modal p strong{color:#ef4444}.delete-input:focus{border-color:#ef4444;box-shadow:0 0 0 4px #fee2e2}.btn-delete-confirm{padding:12px 28px;font-size:15px;font-weight:600;color:#fff;background:#ef4444;border-radius:10px;transition:all .2s}.btn-delete-confirm:hover:not(:disabled){background:#dc2626;transform:translateY(-1px)}.btn-delete-confirm:disabled{opacity:.5;cursor:not-allowed;background:#fca5a5}.chat-view{flex:1;display:flex;flex-direction:column;height:100vh;background:linear-gradient(180deg,#f8fdff,#fff)}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:20px 40px;background:#fff;border-bottom:1px solid var(--border);box-shadow:0 2px 8px #0000000a}.header-left{display:flex;align-items:center;gap:24px}.btn-delete-project{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:#94a3b8;border-radius:10px;transition:all .2s}.btn-delete-project:hover{background:#fee2e2;color:#ef4444}.btn-back{display:flex;align-items:center;gap:8px;padding:10px 16px;color:var(--text-muted);border:1px solid var(--border);border-radius:10px;font-size:14px;font-weight:500;transition:all .2s}.btn-back:hover{background:#f8fafc;border-color:var(--primary);color:var(--primary)}.project-info{display:flex;align-items:center;gap:12px}.project-info h1{font-size:20px;font-weight:600;color:var(--text-main)}.project-badge{padding:4px 12px;font-size:12px;font-weight:500;color:var(--primary);background:var(--primary-light);border-radius:100px}.chat-messages{flex:1;overflow-y:auto;padding:40px;display:flex;flex-direction:column}.chat-welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 20px}.welcome-icon{width:100px;height:100px;background:linear-gradient(135deg,var(--primary-light) 0%,#B2DFDB 100%);border-radius:24px;display:flex;align-items:center;justify-content:center;color:var(--primary);margin-bottom:24px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.chat-welcome h2{font-size:28px;font-weight:700;color:var(--primary);margin-bottom:12px}.chat-welcome p{font-size:16px;color:var(--text-muted);max-width:400px}.messages-list{display:flex;flex-direction:column;gap:16px;max-width:800px;width:100%;margin:0 auto}.message{max-width:80%;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-user{align-self:flex-end}.message-user .message-content{background:var(--primary);color:#fff;border-radius:20px 20px 4px;padding:14px 20px;font-size:15px;line-height:1.5}.message-assistant{align-self:flex-start}.message-assistant .message-content{background:#fff;color:var(--text-main);border:1px solid var(--border);border-radius:20px 20px 20px 4px;padding:16px 24px;font-size:15px;line-height:1.6;box-shadow:0 2px 8px #0000000a}.message-assistant .message-content p{margin-bottom:12px}.message-assistant .message-content p:last-child{margin-bottom:0}.message-assistant .message-content ul,.message-assistant .message-content ol{margin-bottom:12px;padding-left:24px}.message-assistant .message-content li{margin-bottom:4px}.message-assistant .message-content strong{font-weight:600;color:#1e293b}.message-assistant .message-content h1,.message-assistant .message-content h2,.message-assistant .message-content h3{margin-top:16px;margin-bottom:8px;font-weight:700;font-size:1.1em;color:#0f172a}.message-assistant .message-content code{background:#f1f5f9;padding:2px 6px;border-radius:4px;font-family:monospace;font-size:.9em;color:var(--primary)}.message-assistant .message-content table{width:100%;border-collapse:collapse;margin:12px 0;font-size:.95em}.message-assistant .message-content th,.message-assistant .message-content td{padding:8px 12px;border:1px solid #E2E8F0;text-align:left}.message-assistant .message-content th{background-color:#f8fafc;font-weight:600}.message-assistant .message-content a{color:var(--primary);text-decoration:underline}.chat-input-section{padding:24px 40px 32px;background:#fff;border-top:1px solid var(--border)}.file-preview-bar{display:flex;align-items:center;justify-content:space-between;max-width:800px;margin:0 auto 12px;padding:10px 16px;background:#f8fafc;border:1px solid #E2E8F0;border-radius:12px;animation:slideIn .2s ease}.file-preview-info{display:flex;align-items:center;gap:12px;color:#64748b}.file-preview-image{width:40px;height:40px;border-radius:8px;object-fit:cover}.file-preview-name{font-size:14px;font-weight:500;color:var(--text-main);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-preview-size{font-size:12px;color:#94a3b8}.file-preview-remove{background:none;border:none;color:#94a3b8;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.file-preview-remove:hover{background:#fee2e2;color:#ef4444}.chat-input-container{max-width:800px;margin:0 auto;background:#fff;border:1px solid #E5E7EB;border-radius:24px;padding:24px;box-shadow:0 4px 20px #0000000d;transition:all .3s ease}.chat-input-container.research-mode,.chat-input-container.copywriter-mode,.chat-input-container.image-gen-mode{border-color:#22c55e}.research-mode .btn-send,.copywriter-mode .btn-send,.image-gen-mode .btn-send{background:#22c55e!important;color:#fff!important;box-shadow:0 0 12px #22c55e66}.research-mode .btn-send:hover,.copywriter-mode .btn-send:hover,.image-gen-mode .btn-send:hover{background:#16a34a!important;transform:scale(1.1)}.chat-input-wrapper{margin-bottom:16px}.chat-input-wrapper form{display:flex;align-items:center;background:#fff;border:1.5px solid #E2E8F0;border-radius:16px;padding:8px 8px 8px 24px;transition:border-color .2s}.chat-input-wrapper form:focus-within{border-color:var(--primary)}.chat-input-wrapper input{flex:1;border:none;font-size:16px;color:var(--text-main);background:transparent}.chat-input-wrapper input::placeholder{color:#94a3b8}.chat-input-actions{display:flex;gap:8px;align-items:center}.btn-send{background:transparent;border:none;color:var(--primary);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:all .2s}.btn-send:hover:not(:disabled){background:#f0fdf4;transform:scale(1.05)}.btn-send:disabled{color:#cbd5e1;cursor:not-allowed;background:transparent}.btn-icon-chat{color:#94a3b8;background:transparent;border:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0;cursor:pointer}.btn-icon-chat:hover{background:#f1f5f9;color:var(--primary)}.btn-icon-chat.recording{color:#ef4444!important;background:#fee2e2!important;animation:pulse-red 1.5s infinite}@keyframes pulse-red{0%{transform:scale(1);box-shadow:0 0 #ef444466}70%{transform:scale(1.1);box-shadow:0 0 0 6px #ef444400}to{transform:scale(1);box-shadow:0 0 #ef444400}}.chat-suggestions{display:flex;gap:12px;flex-wrap:wrap}.chat-suggestion-tag{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:100px;border:1px solid #E2E8F0;color:var(--text-muted);font-size:14px;font-weight:500;transition:all .2s}.chat-suggestion-tag:hover,.chat-suggestion-tag.active{border-color:#10b981;color:#10b981;background:#ecfdf5}.chat-suggestion-tag.active{box-shadow:0 2px 8px #10b98133;transform:translateY(-1px)}.typing-indicator{display:flex;gap:4px;margin-bottom:8px}.typing-indicator span{width:6px;height:6px;background-color:var(--primary);border-radius:50%;opacity:.4;animation:typing 1.4s infinite ease-in-out}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,to{transform:translateY(0);opacity:.4}50%{transform:translateY(-4px);opacity:1}}.message.loading .message-content{background:#00bfa50d;border-style:dashed;color:var(--text-muted)}.messages-list{display:flex;flex-direction:column;gap:36px;max-width:800px;width:100%;margin:0 auto}.message-content-wrapper{position:relative;display:flex;flex-direction:column}.message-actions{position:absolute;bottom:-40px;right:0;display:flex;gap:8px;opacity:0;transition:opacity .2s ease,transform .2s ease;transform:translateY(-5px);padding:4px;z-index:10}.message:hover .message-actions{opacity:1;transform:translateY(0)}.action-btn{background:none;border:none;color:#94a3b8;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;padding:0}.action-btn:hover{background:none;color:var(--primary);transform:translateY(-2px)}.message.editing{max-width:100%;width:100%}.edit-container{background:var(--primary);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px;animation:fadeIn .2s ease;box-shadow:0 4px 12px #00bfa54d}.edit-textarea{background:transparent;border:none;color:#fff;font-size:15px;font-family:inherit;width:100%;min-height:80px;resize:none;outline:none;line-height:1.5}.edit-textarea::selection{background:#ffffff4d}.edit-actions{display:flex;justify-content:flex-end;gap:10px}.btn-edit-cancel,.btn-edit-save{padding:8px 18px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-edit-cancel{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.btn-edit-cancel:hover{background:#ffffff4d}.btn-edit-save{background:#fff;color:var(--primary);border:none;font-weight:600;box-shadow:0 2px 8px #0000001a}.btn-edit-save:hover{background:#f8fafc;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.file-preview-bar{background:#f1f5f9e6;border:1px solid #E2E8F0;border-radius:12px;padding:12px;margin-bottom:12px}.file-preview-bar.multi-file{max-height:200px;overflow-y:auto}.file-preview-list{display:flex;flex-direction:column;gap:8px}.file-preview-item{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:8px 12px;border-radius:8px;border:1px solid #E2E8F0;gap:10px}.file-preview-number{width:24px;height:24px;min-width:24px;background:linear-gradient(135deg,var(--primary),#6366F1);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;box-shadow:0 2px 4px #6366f14d}.file-preview-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.file-preview-image{width:40px;height:40px;object-fit:cover;border-radius:6px;flex-shrink:0}.file-preview-name{font-size:13px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.file-preview-size{font-size:12px;color:var(--text-muted);flex-shrink:0}.file-preview-remove{width:24px;height:24px;border-radius:50%;border:none;background:#fee2e2;color:#ef4444;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0;margin-left:8px}.file-preview-remove:hover{background:#fecaca;transform:scale(1.1)}.file-preview-clear-all{margin-top:8px;padding:6px 12px;border:1px solid #E2E8F0;border-radius:20px;background:#fff;color:var(--text-muted);font-size:12px;cursor:pointer;transition:all .2s}.file-preview-clear-all:hover{background:#fee2e2;color:#ef4444;border-color:#fecaca}.main-content{flex:1;padding:60px 40px;display:flex;flex-direction:column;align-items:center;max-width:1200px;margin:0 auto}.hero{text-align:center;margin-bottom:48px}.hero h1{font-size:42px;font-weight:700;color:var(--primary);margin-bottom:16px}.hero p{font-size:18px;color:var(--text-muted)}.input-section{width:100%;max-width:800px;margin-bottom:80px}.input-container{background:#fff;border:1px solid #E5E7EB;border-radius:24px;padding:32px;box-shadow:0 4px 20px #0000000d}.input-wrapper{position:relative;display:flex;align-items:center;background:#fff;border:1.5px solid #E2E8F0;border-radius:16px;padding:8px 8px 8px 24px;margin-bottom:24px;transition:all .2s}.input-wrapper:focus-within,.input-wrapper.active{border-color:var(--primary)}.input-field-container{flex:1;display:flex}.input-wrapper input{flex:1;border:none;font-size:18px;color:var(--text-main)}.input-wrapper input::placeholder{color:#94a3b8}.input-actions{display:flex;gap:8px;align-items:center}.btn-icon-action{color:#94a3b8;background:transparent;border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.btn-icon-action:hover{background:#f1f5f9;color:var(--primary)}.btn-send-simple{background:transparent;border:none;color:var(--primary);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;margin-left:4px}.btn-send-simple:hover:not(:disabled){background:#f0fdf4;transform:scale(1.1)}.btn-send-simple:disabled{color:#cbd5e1;cursor:not-allowed}.suggestions{display:flex;gap:12px;flex-wrap:wrap}.suggestion-tag{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:100px;border:1px solid #E2E8F0;color:var(--text-muted);font-size:14px;font-weight:500}.suggestion-tag:hover,.suggestion-tag.active{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.suggestion-tag.active{box-shadow:0 2px 8px #00bfa533;transform:translateY(-1px)}.projects-section{width:100%;max-width:800px}.section-header h2{font-size:28px;font-weight:700;color:var(--primary);display:flex;align-items:center;gap:16px;margin-bottom:32px;padding-bottom:8px;position:relative}.section-header h2:after{content:"";position:absolute;bottom:0;left:0;width:80px;height:3px;background:var(--primary);border-radius:2px}.subtitle{font-size:14px;font-weight:400;color:var(--text-muted)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 0;color:var(--text-muted)}.empty-state p{margin-bottom:24px;font-size:16px}.btn-new-project{background:#718096;color:#fff;padding:14px 32px;border-radius:100px;display:flex;align-items:center;gap:10px;font-weight:600;font-size:17px;transition:transform .2s}.btn-new-project:hover{background:#4a5568;transform:translateY(-2px)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}.project-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.card-delete-btn{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#94a3b8;background:transparent;transition:all .2s ease;opacity:0}.project-card:hover .card-delete-btn{opacity:1}.card-delete-btn:hover{background:#fee2e2;color:#ef4444}.project-card:hover{border-color:var(--primary);box-shadow:0 8px 24px #00bfa51f;transform:translateY(-2px)}.project-card h3{font-size:16px;font-weight:600;color:var(--text-main);margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-date{font-size:13px;color:var(--text-muted)}.btn-add-project{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:2px dashed var(--border);border-radius:16px;padding:24px;color:var(--text-muted);font-size:14px;font-weight:500;transition:all .2s ease;min-height:100px}.btn-add-project:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.loading-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.auth-container{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#0f172a;overflow:hidden;font-family:Outfit,sans-serif}.auth-background{position:absolute;width:100%;height:100%;z-index:0}.blob{position:absolute;filter:blur(80px);opacity:.4;border-radius:50%;animation:move 20s infinite alternate}.blob-1{width:400px;height:400px;background:var(--primary);top:-100px;left:-100px}.blob-2{width:500px;height:500px;background:var(--accent);bottom:-150px;right:-100px;animation-delay:-5s}.blob-3{width:300px;height:300px;background:#8b5cf6;top:50%;left:50%;animation-delay:-10s}@keyframes move{0%{transform:translate(0) scale(1)}to{transform:translate(50px,50px) scale(1.1)}}.auth-card{position:relative;z-index:1;width:100%;max-width:440px;background:#ffffff08;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:32px;padding:48px;box-shadow:0 25px 50px -12px #00000080}.auth-header{text-align:center;margin-bottom:40px}.auth-logo{width:64px;height:64px;background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;box-shadow:0 10px 20px #00bfa54d}.logo-icon{color:#fff}.auth-header h1{color:#fff;font-size:28px;font-weight:700;margin-bottom:8px}.auth-header p{color:#94a3b8;font-size:15px}.auth-form{display:flex;flex-direction:column;gap:24px}.input-group{display:flex;flex-direction:column;gap:8px}.label-row{display:flex;justify-content:space-between;align-items:center}.input-group label{color:#cbd5e1;font-size:14px;font-weight:500;margin-left:4px}.btn-link-sm{background:none;border:none;color:var(--primary);font-size:12px;cursor:pointer;padding:0;opacity:.8;transition:opacity .2s}.btn-link-sm:hover{opacity:1;text-decoration:underline}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon svg{position:absolute;left:16px;color:#64748b;transition:color .2s}.input-with-icon input{width:100%;background:#ffffff0d;border:1.5px solid rgba(255,255,255,.1);border-radius:16px;padding:14px 16px 14px 48px;color:#fff;font-size:15px;transition:all .2s}.input-with-icon input:focus{background:#ffffff14;border-color:var(--primary);box-shadow:0 0 0 4px #00bfa51a}.input-with-icon input:focus+svg{color:var(--primary)}.auth-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#f87171;padding:12px 16px;border-radius:12px;font-size:14px;text-align:center}.auth-message{background:#00bfa51a;border:1px solid rgba(0,191,165,.2);color:var(--primary);padding:12px 16px;border-radius:12px;font-size:14px;text-align:center}.btn-auth-submit{background:var(--primary);color:#fff;padding:16px;border-radius:16px;font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:8px;transition:all .2s;box-shadow:0 10px 20px -5px #00bfa566}.btn-auth-submit:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 15px 30px -5px #00bfa580}.btn-auth-submit:disabled{opacity:.7;cursor:wait}.spinner{animation:rotate 1s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-footer{margin-top:32px;text-align:center}.btn-toggle-auth{color:#94a3b8;background:none;border:none;font-size:14px;cursor:pointer;transition:color .2s}.btn-toggle-auth:hover{color:var(--primary)}.app-layout{display:flex;width:100%;min-height:100vh;background-color:var(--bg-main, #f8fafc)}.loading-screen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#0f172a;z-index:9999}.loader{width:48px;height:48px;border:5px solid rgba(0,191,165,.1);border-bottom-color:var(--primary, #00BFA5);border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
