*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-darkest:#111;--bg-dark:#171717;--bg-medium:#212121;--bg-card:#2f2f2f;--bg-elevated:#303030;--bg-hover:#383838;--blue:#2563eb;--blue-dark:#1d4ed8;--blue-glow:#2563eb26;--green:#22c55e;--orange:#f59e0b;--red:#ef4444;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#475569;--border:#ffffff0f;--border-blue:#3b82f64d;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--font:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--sidebar-w:270px;--docs-w:300px}html,body,#root{height:100dvh;font-family:var(--font);background:var(--bg-darkest);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.6;overflow:hidden}body{zoom:var(--zoom-scale,1)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:10px}.app-layout{height:100dvh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--bg-dark);border-right:1px solid var(--border);flex-direction:column;display:flex;position:relative;overflow:hidden}.sidebar-header{padding:calc(18px + env(safe-area-inset-top,0px)) 16px 14px;border-bottom:1px solid var(--border);align-items:center;gap:10px;display:flex}.user-avatar{background:var(--bg-hover);width:34px;height:34px;color:var(--text-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:500;display:flex}.user-info{flex:1;min-width:0}.user-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.user-role{letter-spacing:.5px;color:var(--blue);background:var(--blue-glow);border-radius:20px;margin-top:1px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-block}.sidebar-btn-icon{background:var(--bg-hover);width:28px;height:28px;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;font-size:14px;transition:all .15s;display:flex}.sidebar-btn-icon:hover{background:var(--bg-elevated);color:var(--text-primary)}.sidebar-scroll{flex:1;padding:12px 8px;overflow-y:auto}.sidebar-section-label{letter-spacing:1px;color:var(--text-muted);text-transform:uppercase;padding:8px 8px 4px;font-size:10px;font-weight:700}.workspace-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);align-items:center;gap:10px;margin-bottom:2px;padding:8px 10px;font-size:13px;font-weight:400;transition:background .15s;display:flex}.workspace-item:hover{background:var(--bg-hover);color:var(--text-primary)}.workspace-item.active{background:var(--bg-hover);color:var(--text-primary);font-weight:500}.workspace-icon{font-size:16px}.workspace-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.add-workspace-btn{border-radius:var(--radius-md);cursor:pointer;color:var(--text-muted);border:1px dashed var(--border);align-items:center;gap:8px;margin-bottom:2px;padding:7px 10px;font-size:12px;transition:all .15s;display:flex}.add-workspace-btn:hover{color:var(--blue);border-color:var(--border-blue)}.sidebar-divider{background:var(--border);height:1px;margin:12px 8px}.chat-history-item{border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:1px;padding:7px 10px;font-size:12px;transition:all .15s;display:flex}.chat-history-item:hover,.chat-history-item.active{background:var(--bg-hover);color:var(--text-primary)}.chat-title{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.chat-date{color:var(--text-muted);flex-shrink:0;font-size:10px}.chat-delete-btn{opacity:0;width:18px;height:18px;color:var(--red);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:12px;display:flex}.chat-history-item:hover .chat-delete-btn{opacity:1}.main-area{background:var(--bg-medium);flex-direction:row;flex:1;display:flex;overflow:hidden}.info-panel{border-left:1px solid var(--border);background:var(--bg-dark);flex-direction:column;gap:12px;width:320px;min-width:320px;max-width:320px;padding:20px 14px;display:flex;overflow-y:auto}.chat-header{min-height:calc(54px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 20px 0;border-bottom:1px solid var(--border);background:var(--bg-dark);flex-shrink:0;align-items:center;gap:12px;display:flex}.chat-header-title{flex:1;font-size:15px;font-weight:600}.model-chip{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .15s;display:flex}.model-chip:hover{border-color:var(--border-blue);color:var(--text-primary)}.model-dot{background:var(--green);border-radius:50%;width:6px;height:6px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.header-btn{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;color:var(--text-secondary);justify-content:center;align-items:center;font-size:15px;transition:all .15s;display:flex}.header-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.messages-area{flex-direction:column;flex:1;gap:0;padding:24px 0;display:flex;overflow-y:auto}.messages-area.no-scroll{overflow:hidden!important}.message-group{gap:14px;width:100%;max-width:780px;margin:0 auto;padding:8px 24px;display:flex}.message-group.user{flex-direction:row-reverse;justify-content:flex-start}.message-group.assistant{align-self:flex-start;width:100%}.msg-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;margin-top:4px;font-size:14px;display:flex}.message-group.user .msg-avatar{background:linear-gradient(135deg, var(--blue), #6366f1);color:#fff;font-size:11px;font-weight:700}.message-group.assistant .msg-avatar{background:var(--bg-elevated);border:1px solid var(--border)}.msg-bubble{border-radius:var(--radius-lg);min-width:0;max-width:100%;padding:13px 18px;font-size:15px;line-height:1.75}.message-group.user .msg-bubble{background:linear-gradient(135deg, var(--blue), var(--blue-dark));color:#fff;border-bottom-right-radius:4px;max-width:600px}.message-group.assistant .msg-bubble{color:var(--text-primary);background:0 0;padding-left:0}.msg-bubble p{margin-bottom:8px}.msg-bubble p:last-child{margin-bottom:0}.msg-content{color:var(--text-primary);font-size:15px;line-height:1.8}.msg-content p{margin:0 0 10px}.msg-content p:last-child{margin-bottom:0}.msg-content h2,.msg-content h3,.msg-content h4{color:var(--text-primary)}.msg-content ul,.msg-content ol{margin:4px 0 10px}.msg-sources{border-top:1px solid var(--border);flex-direction:column;gap:4px;margin-top:10px;padding-top:10px;display:flex}.source-tag{color:var(--blue);background:var(--blue-glow);border-left:2px solid var(--blue);border-radius:4px;align-items:center;gap:5px;padding:2px 8px;font-size:11px;display:inline-flex}.msg-thinking{color:var(--text-muted);align-items:center;gap:6px;font-size:12px;font-style:italic;display:flex}.thinking-dots span{background:var(--text-muted);border-radius:50%;width:4px;height:4px;animation:1.4s infinite both bounce;display:inline-block}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}.empty-chat{color:var(--text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.empty-chat-icon{opacity:.3;font-size:48px}.empty-chat h3{color:var(--text-secondary);font-size:18px}.input-area{border-top:1px solid var(--border);background:var(--bg-dark);padding:16px 24px 20px}.input-bar-container{background:linear-gradient(transparent, var(--bg-medium) 20%);padding:0 0 32px}.input-bar{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-xl);max-width:780px;margin:0 auto;padding:12px 14px;box-shadow:0 4px 20px #0000001a}.input-top{align-items:flex-end;gap:8px;display:flex}.input-field{min-height:24px;max-height:200px;color:var(--text-primary);font-size:15px;font-family:var(--font);resize:none;background:0 0;border:none;outline:none;flex:1;padding:4px 0;line-height:1.5;overflow-y:auto}.input-field::placeholder{color:var(--text-secondary)}.input-actions{border-top:1px solid var(--border);align-items:center;gap:6px;padding:8px 12px;display:flex}.input-btn{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:13px;font-family:var(--font);background:0 0;border:none;align-items:center;gap:5px;padding:5px 10px;transition:all .15s;display:flex}.input-btn:hover{color:var(--text-primary)}.mic-btn{cursor:pointer;width:32px;height:32px;color:var(--text-secondary);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.mic-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.mic-btn.recording{color:var(--red);background:#ef444426;animation:1.5s infinite mic-pulse}@keyframes mic-pulse{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 8px #ef444400}}.send-btn{cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.send-btn:hover{transform:scale(1.05)}.send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.docs-panel{width:var(--docs-w);min-width:var(--docs-w);background:var(--bg-dark);border-left:1px solid var(--border);flex-direction:column;display:flex;overflow:hidden}.docs-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px;display:flex}.docs-title{font-size:13px;font-weight:700}.upload-btn{border-radius:var(--radius-sm);background:var(--blue);color:#fff;cursor:pointer;border:none;align-items:center;gap:5px;padding:5px 10px;font-size:11px;font-weight:600;transition:all .15s;display:flex}.upload-btn:hover{background:var(--blue-dark)}.docs-scroll{flex:1;padding:12px;overflow-y:auto}.docs-section-label{letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);padding:8px 4px 4px;font-size:10px;font-weight:700}.docs-section-label.temp{color:var(--orange)}.doc-item{border-radius:var(--radius-md);background:var(--bg-card);border:1px solid var(--border);align-items:center;gap:8px;margin-bottom:6px;padding:8px 10px;transition:all .15s;display:flex}.doc-item:hover{border-color:var(--border-blue)}.doc-icon{flex-shrink:0;font-size:18px}.doc-info{flex:1;min-width:0}.doc-name{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.doc-meta{color:var(--text-muted);font-size:10px}.doc-status{text-transform:uppercase;letter-spacing:.5px;border-radius:3px;padding:2px 5px;font-size:9px;font-weight:700}.doc-status.indexed{color:var(--green);background:#22c55e26}.doc-status.pending{color:var(--orange);background:#f59e0b26}.doc-ttl{color:var(--orange);align-items:center;gap:3px;font-size:10px;display:flex}.doc-delete-btn{color:var(--text-muted);cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:3px;padding:2px;font-size:13px;transition:all .15s}.doc-item:hover .doc-delete-btn{opacity:1}.doc-delete-btn:hover{color:var(--red)}.add-doc-btn{border-radius:var(--radius-md);border:1px dashed var(--border);width:100%;color:var(--text-muted);cursor:pointer;font-size:12px;font-family:var(--font);background:0 0;justify-content:center;align-items:center;gap:6px;padding:10px;transition:all .15s;display:flex}.add-doc-btn:hover{border-color:var(--border-blue);color:var(--blue)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:420px;max-height:calc(100vh - 40px);padding:24px;overflow-y:auto;box-shadow:0 25px 60px #00000080}.modal-title{margin-bottom:6px;font-size:16px;font-weight:700}.modal-subtitle{color:var(--text-secondary);margin-bottom:20px;font-size:13px}.modal-checkbox{background:var(--bg-elevated);border-radius:var(--radius-md);border:1px solid var(--border);cursor:pointer;align-items:center;gap:10px;margin-bottom:20px;padding:12px;font-size:13px;transition:all .15s;display:flex}.modal-checkbox:hover{border-color:var(--border-blue)}.modal-checkbox input{accent-color:var(--blue);width:16px;height:16px}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.btn{border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font);border:1px solid #0000;padding:8px 16px;transition:all .15s}.btn-secondary{background:var(--bg-elevated);color:var(--text-secondary);border-color:var(--border)}.btn-secondary:hover{color:var(--text-primary)}.btn-primary{background:linear-gradient(135deg, var(--blue), var(--blue-dark));color:#fff}.btn-primary:hover{opacity:.9}.btn-danger{color:var(--red);background:#ef444426;border-color:#ef44444d}.btn-danger:hover{background:var(--red);color:#fff}.login-page{background:var(--bg-darkest);justify-content:center;align-items:center;height:100vh;display:flex}.login-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);width:380px;padding:40px;box-shadow:0 30px 80px #00000080}.login-header{text-align:center;margin-bottom:32px}.login-header h1{font-size:24px;font-weight:700}.login-header p{color:var(--text-secondary);margin-top:6px;font-size:13px}.form-group{margin-bottom:16px}.form-label{color:var(--text-secondary);letter-spacing:.3px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.form-input{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-family:var(--font);outline:none;padding:10px 12px;font-size:14px;transition:border-color .2s}.form-input:focus{border-color:var(--border-blue)}.login-error{color:var(--red);text-align:center;margin-top:8px;font-size:12px}.login-btn{background:linear-gradient(135deg, var(--blue), var(--blue-dark));border-radius:var(--radius-md);color:#fff;cursor:pointer;width:100%;font-size:14px;font-weight:600;font-family:var(--font);border:none;margin-top:8px;padding:12px;transition:all .2s}.login-btn:hover{opacity:.9;transform:translateY(-1px)}.login-btn:active{transform:translateY(0)}.admin-modal{width:90%;max-width:800px}.admin-tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:20px;padding-bottom:0;display:flex}.admin-tab{cursor:pointer;color:var(--text-muted);font-size:13px;font-weight:500;font-family:var(--font);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px;transition:all .15s}.admin-tab.active{color:var(--blue);border-color:var(--blue)}.admin-tab:hover{color:var(--text-primary)}.admin-form-row{align-items:center;gap:12px;margin-bottom:14px;display:flex}.admin-form-row label{color:var(--text-secondary);flex-shrink:0;width:140px;font-size:12px}.admin-form-row input,.admin-form-row select,.admin-form-row textarea{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font);outline:none;flex:1;padding:8px 10px;font-size:13px}.admin-form-row textarea{resize:vertical;min-height:80px}.new-chat-btn{color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font);background:0 0;justify-content:space-between;align-items:center;gap:6px;margin:16px 16px 8px;padding:10px 12px;transition:all .15s;display:flex}.new-chat-btn:hover{background:var(--bg-hover)}@media (width<=900px){.docs-panel{display:none}}@media (width<=768px){html,body,#root{font-size:16px}.sidebar{z-index:100;box-shadow:none;width:300px;min-width:300px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:absolute;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:4px 0 24px #00000080}.mobile-menu-btn{display:flex;padding:8px!important}.mobile-menu-btn svg{width:28px;height:28px}.chat-header{padding:env(safe-area-inset-top,0px) 16px 8px}.chat-header-title{font-size:18px!important}.model-chip{padding:8px 14px!important;font-size:13px!important}.message-group{padding:12px 16px}.msg-bubble{line-height:1.6;padding:16px 20px!important;font-size:16px!important}.input-area{padding:16px}.input-field{padding:12px!important;font-size:16px!important}.input-btn{padding:10px 14px!important;font-size:16px!important}.mic-btn,.send-btn{width:44px!important;height:44px!important}.mic-btn svg,.send-btn svg{width:22px;height:22px}.main-area{flex-direction:column}.info-panel{border-left:none;border-top:1px solid var(--border);width:100%;min-width:100%;max-width:100%;max-height:50vh}}@media (width>=769px){.mobile-menu-btn{display:none}}@media print{body *{visibility:hidden}.print-only,.print-only *{visibility:visible}.print-only{width:100%;margin:0;padding:0;position:absolute;top:0;left:0;box-shadow:none!important}.print-only .no-print,.print-only .no-print *{display:none!important}}.mobile-tab-bar{z-index:999;height:64px;padding-bottom:env(safe-area-inset-bottom,0px);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0006;background:#171717!important;border-top:1px solid #2d2d2d!important}.mobile-tab-item{cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;height:100%;padding:4px 0;transition:all .2s;display:flex;color:#94a3b8!important;background:0 0!important;border:none!important}.mobile-tab-item:active{transform:scale(.95);color:#fff!important}.mobile-tab-item.active{color:#3b82f6!important;text-shadow:0 0 10px #3b82f666!important}.mobile-tab-icon{font-size:22px;line-height:1}.mobile-tab-label{letter-spacing:.2px;font-size:11px;font-weight:600}.touch-tile-hover{-webkit-user-select:none;user-select:none;transition:transform .15s,box-shadow .15s,filter .15s!important}.touch-tile-hover:active{filter:brightness(1.15)!important;transform:scale(.96)!important;box-shadow:0 2px 6px #0000004d!important}.tool-card-hover{-webkit-user-select:none;user-select:none;transition:transform .15s,background-color .15s!important}.tool-card-hover:active{background-color:var(--bg-hover)!important;transform:scale(.98)!important}@media (width<=768px){.main-area{padding-bottom:64px!important}}@media (width>=769px){.mobile-tab-bar{display:none!important}}.attachment-btn{cursor:pointer;align-items:center;gap:6px;height:34px;display:flex;color:var(--text-primary)!important;background:#ffffff0a!important;border:1px solid #ffffff14!important;border-radius:18px!important;padding:6px 14px!important;font-size:13px!important;font-weight:600!important;transition:all .2s!important}.attachment-btn:hover{background:#ffffff14!important;border-color:#fff3!important}.attachment-btn:active{transform:scale(.96)}.attachment-drawer{animation:.28s cubic-bezier(.16,1,.3,1) forwards slideUp}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.drawer-item-btn{cursor:pointer;align-items:center;gap:16px;width:100%;display:flex;color:var(--text-primary)!important;background:#ffffff08!important;border:1px solid #ffffff0f!important;border-radius:16px!important;padding:14px 18px!important;transition:all .2s!important}.drawer-item-btn:hover{background:#ffffff14!important;border-color:#3b82f666!important;box-shadow:0 4px 12px #3b82f614!important}.drawer-item-btn:active{background:#ffffff1f!important;transform:scale(.97)!important}.drawer-icon{font-size:24px;line-height:1}.drawer-title{color:var(--text-primary);margin-bottom:2px;font-size:14px;font-weight:700}.drawer-desc{color:var(--text-muted);font-size:11px}.voice-overlay-backdrop{-webkit-backdrop-filter:blur(25px);z-index:1200;padding-top:calc(env(safe-area-inset-top,0px) + 65px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 65px);flex-direction:column;justify-content:space-between;align-items:center;padding-left:24px;padding-right:24px;animation:.25s ease-out forwards fadeIn;display:flex;position:fixed;inset:0;background:#0a0a0af0!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.voice-status-indicator{flex-direction:column;align-items:center;gap:12px;display:flex}.voice-mic-glow{color:#ef4444;background:#ef444426;border:2px solid #ef4444;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;animation:1.8s ease-in-out infinite micPulse;display:flex;box-shadow:0 0 20px #ef44444d}@keyframes micPulse{0%{transform:scale(1);box-shadow:0 0 #ef444480}70%{transform:scale(1.08);box-shadow:0 0 0 16px #ef444400}to{transform:scale(1);box-shadow:0 0 #ef444400}}.voice-wave-container{justify-content:center;align-items:center;gap:6px;height:48px;margin:10px 0;display:flex}.voice-wave-bar{background:linear-gradient(#ec4899,#8b5cf6,#3b82f6);border-radius:2px;width:4px;height:8px;animation:1.2s ease-in-out infinite wavePulse}.voice-wave-bar:first-child{height:16px;animation-delay:.1s}.voice-wave-bar:nth-child(2){height:28px;animation-delay:.3s}.voice-wave-bar:nth-child(3){height:40px;animation-delay:.5s}.voice-wave-bar:nth-child(4){height:32px;animation-delay:.2s}.voice-wave-bar:nth-child(5){height:18px;animation-delay:.6s}.voice-wave-bar:nth-child(6){height:36px;animation-delay:.4s}.voice-wave-bar:nth-child(7){height:22px;animation-delay:.7s}.voice-wave-bar:nth-child(8){height:30px;animation-delay:.3s}.voice-wave-bar:nth-child(9){height:14px;animation-delay:.5s}@keyframes wavePulse{0%,to{opacity:.5;transform:scaleY(.3)}50%{opacity:1;filter:drop-shadow(0 0 8px #8b5cf699);transform:scaleY(1.8)}}.voice-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:100%;max-width:480px;display:flex}.voice-btn{cursor:pointer;justify-content:center;align-items:center;gap:8px;display:flex;letter-spacing:.3px!important;border:1px solid #0000!important;border-radius:28px!important;padding:13px 26px!important;font-size:14px!important;font-weight:600!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important}.voice-btn.cancel{color:#fca5a5!important;background:#ef444414!important;border:1px solid #ef444440!important}.voice-btn.cancel:hover{color:#fecdd3!important;background:#ef444429!important;border-color:#ef444473!important}.voice-btn.done{color:#ffffffe6!important;background:#ffffff0d!important;border:1px solid #ffffff26!important}.voice-btn.done:hover{color:#fff!important;background:#ffffff1f!important;border-color:#ffffff4d!important}.voice-btn.send{color:#fff!important;background:linear-gradient(135deg,#2563eb 0%,#7c3aed 100%)!important;border:none!important;box-shadow:0 4px 20px #7c3aed73!important}.voice-btn.send:hover{filter:brightness(1.15)!important;transform:translateY(-2px)!important;box-shadow:0 6px 24px #7c3aed99!important}.voice-btn:active{transform:translateY(0)scale(.96)!important}@media (width<=480px){.voice-btn{flex:1;min-width:90px;padding:12px 18px!important;font-size:13px!important}}.message-action-dropdown{-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);z-index:1000;background:#121212d9;border-radius:12px;flex-direction:column;gap:4px;min-width:210px;padding:6px;animation:.2s cubic-bezier(.16,1,.3,1) dropdownFadeIn;display:flex;position:absolute;bottom:42px;right:0;box-shadow:0 10px 30px #00000080}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(8px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.dropdown-item{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;box-sizing:border-box;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.dropdown-item:hover{color:var(--text-primary);background:#ffffff0d}.dropdown-item:active{transform:scale(.98)}.dropdown-item-icon{width:20px;height:20px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.dropdown-item:hover .dropdown-item-icon{color:var(--text-primary)}.speak-pill-btn{color:#2ecc71;background:#2ecc7126;border:1px solid #2ecc714d}.speak-pill-btn:hover{transform:scale(1.02);background:#2ecc7140!important}.speak-pill-btn.playing:hover{background:#ef444440!important}.speak-pill-btn:active{transform:scale(.96)!important}.spin-animation{animation:1s linear infinite spin}.mobile-start-dashboard{z-index:2;flex-direction:column;gap:20px;width:100%;max-width:500px;margin:auto;padding:24px 16px 90px;display:flex;position:relative;overflow:hidden}.ambient-glow-orb{filter:blur(100px);opacity:.12;pointer-events:none;z-index:0;border-radius:50%;width:250px;height:250px;animation:8s ease-in-out infinite alternate floatBreathing;position:absolute}.orb-blue{background:radial-gradient(circle,#3b82f6 0%,#6366f1 100%);top:10%;left:-20px}.orb-purple{background:radial-gradient(circle,#a855f7 0%,#8b5cf6 100%);animation-delay:-4s;bottom:20%;right:-20px}@keyframes floatBreathing{0%{opacity:.1;transform:scale(1)translateY(0)}to{opacity:.15;transform:scale(1.15)translateY(-20px)}}.dashboard-welcome-banner{text-align:center;z-index:2;margin-bottom:8px;position:relative}.dashboard-welcome-title{letter-spacing:-.5px;background:linear-gradient(135deg,#fff 40%,#a8a29e 100%);-webkit-text-fillColor:transparent;-webkit-background-clip:text;margin-bottom:6px;font-size:24px;font-weight:800}.dashboard-welcome-subtitle{color:var(--text-secondary);max-width:320px;margin:0 auto;font-size:13px;line-height:1.4}.dashboard-grid{z-index:2;grid-template-columns:1fr 1fr;gap:16px;display:grid;position:relative}.touch-tile-hover{cursor:pointer;text-align:center;-webkit-backdrop-filter:blur(25px)saturate(180%);-webkit-user-select:none;user-select:none;border-radius:20px;flex-direction:column;align-items:center;gap:12px;padding:24px 16px;display:flex;position:relative;box-shadow:0 4px 15px #00000040;background:#ffffff05!important;border:1px solid #ffffff0f!important;transition:all .25s cubic-bezier(.16,1,.3,1)!important}.tile-icon-wrapper{background:#ffffff08;border:1px solid #ffffff0a;border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:2px;transition:all .25s;display:flex}.tile-title{color:var(--text-primary);letter-spacing:-.2px;font-size:15px;font-weight:700}.tile-desc{color:var(--text-secondary);font-size:11px;line-height:1.3}.tile-svg-glow{transition:all .25s}.tile-blue:active,.tile-blue:hover{background:#2563eb14!important;border-color:#2563eb66!important;transform:translateY(-2px)scale(.97)!important;box-shadow:0 8px 30px #2563eb40,0 0 15px #2563eb1a!important}.tile-blue:active .tile-icon-wrapper,.tile-blue:hover .tile-icon-wrapper{background:#2563eb26;border-color:#2563eb33}.tile-blue:active .tile-svg-glow,.tile-blue:hover .tile-svg-glow{transform:scale(1.08);filter:drop-shadow(0 0 12px #2563ebcc)!important}.tile-green:active,.tile-green:hover{background:#10b98114!important;border-color:#10b98166!important;transform:translateY(-2px)scale(.97)!important;box-shadow:0 8px 30px #10b98140,0 0 15px #10b9811a!important}.tile-green:active .tile-icon-wrapper,.tile-green:hover .tile-icon-wrapper{background:#10b98126;border-color:#10b98133}.tile-green:active .tile-svg-glow,.tile-green:hover .tile-svg-glow{transform:scale(1.08);filter:drop-shadow(0 0 12px #10b981cc)!important}.tile-gold:active,.tile-gold:hover{background:#f59e0b14!important;border-color:#f59e0b66!important;transform:translateY(-2px)scale(.97)!important;box-shadow:0 8px 30px #f59e0b40,0 0 15px #f59e0b1a!important}.tile-gold:active .tile-icon-wrapper,.tile-gold:hover .tile-icon-wrapper{background:#f59e0b26;border-color:#f59e0b33}.tile-gold:active .tile-svg-glow,.tile-gold:hover .tile-svg-glow{transform:scale(1.08);filter:drop-shadow(0 0 12px #f59e0bcc)!important}.tile-purple:active,.tile-purple:hover{background:#a855f714!important;border-color:#a855f766!important;transform:translateY(-2px)scale(.97)!important;box-shadow:0 8px 30px #a855f740,0 0 15px #a855f71a!important}.tile-purple:active .tile-icon-wrapper,.tile-purple:hover .tile-icon-wrapper{background:#a855f726;border-color:#a855f733}.tile-purple:active .tile-svg-glow,.tile-purple:hover .tile-svg-glow{transform:scale(1.08);filter:drop-shadow(0 0 12px #a855f7cc)!important}.tile-teal:active,.tile-teal:hover{background:#14b8a614!important;border-color:#14b8a666!important;transform:translateY(-2px)scale(.97)!important;box-shadow:0 8px 30px #14b8a640,0 0 15px #14b8a61a!important}.tile-teal:active .tile-icon-wrapper,.tile-teal:hover .tile-icon-wrapper{background:#14b8a626;border-color:#14b8a633}.tile-teal:active .tile-svg-glow,.tile-teal:hover .tile-svg-glow{transform:scale(1.08);filter:drop-shadow(0 0 12px #14b8a6cc)!important}@media print{body *{visibility:hidden!important}.printable-only,.printable-only *{visibility:visible!important}.printable-only{color:#000!important;background:#fff!important;width:100%!important;display:block!important;position:absolute!important;top:0!important;left:0!important}.non-printable{display:none!important}}@keyframes br-pulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.01)}}@keyframes br-loading-bar{0%{left:-50%}to{left:100%}}@keyframes br-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.br-loading-card{animation:2s ease-in-out infinite br-pulse}.br-loading-bar-inner{animation:1.8s ease-in-out infinite br-loading-bar}.br-loading-icon{animation:3s linear infinite br-spin}
