@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--bg-primary:#0a0e1a;--bg-secondary:#111827;--bg-card:#111827b3;--bg-glass:#ffffff0a;--bg-glass-hover:#ffffff14;--accent-start:#6366f1;--accent-mid:#8b5cf6;--accent-end:#a78bfa;--accent-gradient:linear-gradient(135deg, var(--accent-start), var(--accent-mid), var(--accent-end));--accent-glow:0 0 40px #6366f140;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--text-accent:#a78bfa;--success:#22c55e;--success-bg:#22c55e1a;--warning:#f59e0b;--warning-bg:#f59e0b1a;--error:#ef4444;--error-bg:#ef44441a;--info:#3b82f6;--info-bg:#3b82f61a;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow:0 0 30px #6366f126;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(80% 50% at 50% -20%,#6366f11f,#0000),radial-gradient(60% 40% at 80% 100%,#8b5cf614,#0000);position:fixed;inset:0}#root{z-index:1;flex-direction:column;min-height:100vh;display:flex;position:relative}a{color:var(--text-accent);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-end)}.navbar{padding:var(--space-md) var(--space-2xl);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;background:#0a0e1ad9;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.navbar-brand{align-items:center;gap:var(--space-sm);background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.35rem;font-weight:700;display:flex}.navbar-icon{color:var(--accent-start);-webkit-text-fill-color:var(--accent-start);font-size:1.5rem}.navbar-actions{align-items:center;gap:var(--space-lg);display:flex}.nav-link{color:var(--text-secondary);transition:color var(--transition-fast);font-size:.9rem;font-weight:500}.nav-link:hover{color:var(--text-primary)}.btn-logout{align-items:center;gap:var(--space-xs);background:var(--bg-glass);color:var(--text-secondary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:1px solid #ffffff14;font-family:Inter,sans-serif;font-size:.85rem;display:flex}.btn-logout:hover{background:var(--error-bg);color:var(--error);border-color:#ef444433}.auth-container{min-height:100vh;padding:var(--space-xl);justify-content:center;align-items:center;display:flex}.auth-card{background:var(--bg-card);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-radius:var(--radius-lg);width:100%;max-width:440px;padding:var(--space-3xl);box-shadow:var(--shadow-lg), var(--shadow-glow);border:1px solid #ffffff0f;animation:.5s fadeSlideUp}.auth-header{text-align:center;margin-bottom:var(--space-2xl)}.auth-header h1{background:var(--accent-gradient);-webkit-text-fill-color:transparent;margin-bottom:var(--space-sm);-webkit-background-clip:text;background-clip:text;font-size:1.85rem;font-weight:800}.auth-header p{color:var(--text-secondary);font-size:.95rem}.form-group{margin-bottom:var(--space-lg)}.form-group label{color:var(--text-secondary);margin-bottom:var(--space-sm);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:500;display:block}.form-input{background:var(--bg-glass);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);transition:all var(--transition-fast);border:1px solid #ffffff14;outline:none;padding:.85rem 1rem;font-family:Inter,sans-serif;font-size:.95rem}.form-input:focus{border-color:var(--accent-start);box-shadow:0 0 0 3px #6366f126}.form-input::placeholder{color:var(--text-muted)}.btn-primary{background:var(--accent-gradient);border-radius:var(--radius-sm);color:#fff;cursor:pointer;width:100%;transition:all var(--transition-base);border:none;padding:.9rem;font-family:Inter,sans-serif;font-size:1rem;font-weight:600;position:relative;overflow:hidden}.btn-primary:before{content:"";opacity:0;transition:opacity var(--transition-fast);background:linear-gradient(135deg,#ffffff26,#0000);position:absolute;inset:0}.btn-primary:hover:before{opacity:1}.btn-primary:hover{box-shadow:var(--accent-glow);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-google{background:var(--bg-glass);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-sm);transition:all var(--transition-fast);border:1px solid #ffffff1f;padding:.85rem 1rem;font-family:Inter,sans-serif;font-size:.95rem;font-weight:500;display:flex}.btn-google:hover{background:#ffffff0f;border-color:#fff3;transform:translateY(-1px)}.btn-google:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-google .google-icon{flex-shrink:0}.btn-google .google-loading{color:var(--text-secondary)}.auth-divider{margin:var(--space-lg) 0;align-items:center;gap:var(--space-md);display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#ffffff14;flex:1;height:1px}.auth-divider span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;font-weight:500}.auth-footer{text-align:center;margin-top:var(--space-xl);color:var(--text-secondary);font-size:.9rem}.auth-footer a{font-weight:600}.error-message{background:var(--error-bg);color:var(--error);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-lg);text-align:center;border:1px solid #ef444433;font-size:.85rem;animation:.4s shake}.dashboard-container{max-width:1100px;padding:var(--space-2xl);margin:0 auto}.dashboard-header{margin-bottom:var(--space-2xl)}.dashboard-header h1{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800}.dashboard-header p{color:var(--text-secondary);margin-top:var(--space-sm)}.upload-section{margin-bottom:var(--space-2xl)}.upload-zone{border-radius:var(--radius-lg);padding:var(--space-3xl);text-align:center;cursor:pointer;transition:all var(--transition-base);background:var(--bg-glass);border:2px dashed #6366f14d}.upload-zone:hover,.upload-zone.active{border-color:var(--accent-start);box-shadow:var(--shadow-glow);background:#6366f10f}.upload-icon{color:var(--accent-mid);margin-bottom:var(--space-md);font-size:3rem}.upload-zone h3{color:var(--text-primary);margin-bottom:var(--space-sm);font-size:1.15rem;font-weight:600}.upload-zone p{color:var(--text-muted);font-size:.9rem}.upload-status{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);text-align:center;font-size:.85rem;animation:.3s fadeSlideUp}.upload-status.success{background:var(--success-bg);color:var(--success);border:1px solid #22c55e33}.upload-status.error{background:var(--error-bg);color:var(--error);border:1px solid #ef444433}.upload-status.loading{background:var(--info-bg);color:var(--info);border:1px solid #3b82f633}.resumes-section h2{color:var(--text-primary);margin-bottom:var(--space-lg);font-size:1.3rem;font-weight:700}.resume-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.resume-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:var(--radius-md);padding:var(--space-xl);transition:all var(--transition-base);border:1px solid #ffffff0f;animation:.4s fadeSlideUp}.resume-card:hover{box-shadow:var(--shadow-md), var(--shadow-glow);border-color:#6366f133;transform:translateY(-2px)}.resume-card-header{align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.resume-card-icon{border-radius:var(--radius-sm);background:var(--accent-gradient);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.3rem;display:flex}.resume-card-info h3{color:var(--text-primary);font-size:1rem;font-weight:600}.resume-card-info p{color:var(--text-muted);margin-top:2px;font-size:.8rem}.resume-card-actions{gap:var(--space-sm);display:flex}.btn-action{justify-content:center;align-items:center;gap:var(--space-xs);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;flex:1;padding:.65rem 1rem;font-family:Inter,sans-serif;font-size:.85rem;font-weight:500;display:flex}.btn-review{color:var(--accent-end);background:#6366f11f;border-color:#6366f133}.btn-review:hover{background:#6366f133;box-shadow:0 0 20px #6366f126}.btn-evaluate{color:var(--success);background:#22c55e1a;border-color:#22c55e33}.btn-evaluate:hover{background:#22c55e2e;box-shadow:0 0 20px #22c55e1f}.resume-analysis-preview{background:var(--bg-glass);border-radius:var(--radius-sm);padding:var(--space-md);margin-bottom:var(--space-lg);border:1px solid #ffffff0f}.analysis-top-row{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.analysis-score-badge{flex-shrink:0;align-items:baseline;gap:4px;display:flex}.analysis-score-value{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.8rem;font-weight:800;line-height:1}.analysis-score-label{color:var(--text-muted);font-size:.8rem;font-weight:500}.analysis-summary{gap:var(--space-sm) var(--space-md);flex-wrap:wrap;flex:1;display:flex}.analysis-stat{color:var(--text-secondary);align-items:center;gap:4px;font-size:.8rem;display:flex}.btn-expand{color:var(--text-accent);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #ffffff14;flex-shrink:0;align-items:center;gap:4px;padding:4px 10px;font-family:Inter,sans-serif;font-size:.78rem;display:flex}.btn-expand:hover{background:var(--bg-glass-hover);border-color:#a78bfa4d}.analysis-expanded{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid #ffffff0f;animation:.3s fadeSlideUp}.analysis-detail-section{margin-bottom:var(--space-md)}.analysis-detail-section:last-child{margin-bottom:0}.analysis-detail-section h4{color:var(--text-primary);margin-bottom:var(--space-sm);align-items:center;gap:var(--space-xs);font-size:.85rem;font-weight:600;display:flex}.results-container{max-width:900px;padding:var(--space-2xl);margin:0 auto}.results-header{text-align:center;margin-bottom:var(--space-2xl)}.results-header h1{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800}.results-header p{color:var(--text-secondary);margin-top:var(--space-sm)}.btn-back{align-items:center;gap:var(--space-xs);color:var(--text-secondary);margin-bottom:var(--space-xl);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;display:inline-flex}.btn-back:hover{color:var(--text-primary)}.score-section{margin-bottom:var(--space-2xl);justify-content:center;display:flex}.score-gauge{justify-content:center;align-items:center;width:180px;height:180px;display:flex;position:relative}.score-gauge svg{width:100%;height:100%;position:absolute;transform:rotate(-90deg)}.score-gauge .bg-circle{fill:none;stroke:#ffffff0f;stroke-width:8px}.score-gauge .progress-circle{fill:none;stroke:url(#scoreGradient);stroke-width:8px;stroke-linecap:round;stroke-dasharray:502;transition:stroke-dashoffset 1.5s}.score-value{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:800;line-height:1}.score-label{text-align:center;color:var(--text-muted);margin-top:-var(--space-sm);font-size:.85rem;font-weight:500}.result-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:var(--radius-md);padding:var(--space-xl);margin-bottom:var(--space-lg);border:1px solid #ffffff0f;animation:.4s fadeSlideUp}.result-card h2{margin-bottom:var(--space-lg);align-items:center;gap:var(--space-sm);font-size:1.15rem;font-weight:700;display:flex}.result-card h2 .card-icon{font-size:1.3rem}.result-list{list-style:none}.result-list li{padding:var(--space-sm) 0;padding-left:var(--space-lg);color:var(--text-secondary);font-size:.95rem;line-height:1.7;position:relative}.result-list li:before{content:"";border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.strengths-list li:before{background:var(--success);box-shadow:0 0 8px #22c55e66}.weaknesses-list li:before{background:var(--error);box-shadow:0 0 8px #ef444466}.suggestions-list li:before{background:var(--info);box-shadow:0 0 8px #3b82f666}.evaluate-form-section{margin-bottom:var(--space-2xl)}.job-textarea{background:var(--bg-glass);border-radius:var(--radius-md);width:100%;min-height:150px;color:var(--text-primary);resize:vertical;transition:all var(--transition-fast);border:1px solid #ffffff14;outline:none;padding:1rem;font-family:Inter,sans-serif;font-size:.95rem;line-height:1.6}.job-textarea:focus{border-color:var(--accent-start);box-shadow:0 0 0 3px #6366f126}.job-textarea::placeholder{color:var(--text-muted)}.form-actions{margin-top:var(--space-md);justify-content:flex-end;display:flex}.btn-submit{align-items:center;gap:var(--space-sm);background:var(--accent-gradient);border-radius:var(--radius-sm);color:#fff;cursor:pointer;transition:all var(--transition-base);border:none;padding:.8rem 2rem;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;display:inline-flex}.btn-submit:hover{box-shadow:var(--accent-glow);transform:translateY(-1px)}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.question-card{background:var(--bg-glass);border-radius:var(--radius-sm);padding:var(--space-lg);margin-bottom:var(--space-md);transition:border-color var(--transition-fast);border:1px solid #ffffff0f}.question-card:hover{border-color:#6366f126}.question-card h4{color:var(--text-primary);margin-bottom:var(--space-sm);font-size:.95rem;font-weight:600}.question-card .intention{color:var(--text-accent);margin-bottom:var(--space-sm);font-size:.82rem;font-style:italic}.question-card .answer{color:var(--text-secondary);font-size:.9rem;line-height:1.7}.skill-gaps-grid{gap:var(--space-sm);flex-wrap:wrap;display:flex}.skill-badge{align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-full);font-size:.82rem;font-weight:500;display:inline-flex}.skill-badge.high{background:var(--error-bg);color:var(--error);border:1px solid #ef444433}.skill-badge.medium{background:var(--warning-bg);color:var(--warning);border:1px solid #f59e0b33}.skill-badge.low{background:var(--success-bg);color:var(--success);border:1px solid #22c55e33}.prep-timeline{padding-left:var(--space-2xl);position:relative}.prep-timeline:before{content:"";background:linear-gradient(to bottom, var(--accent-start), var(--accent-end), transparent);width:2px;position:absolute;top:0;bottom:0;left:8px}.prep-day{margin-bottom:var(--space-xl);animation:.4s fadeSlideUp;position:relative}.prep-day:before{content:"";left:calc(-1 * var(--space-2xl) + 4px);background:var(--accent-gradient);border-radius:50%;width:10px;height:10px;position:absolute;top:4px;box-shadow:0 0 12px #6366f166}.prep-day h4{color:var(--text-accent);margin-bottom:4px;font-size:.95rem;font-weight:700}.prep-day .focus{color:var(--text-primary);margin-bottom:var(--space-sm);font-size:.9rem;font-weight:500}.prep-day ul{list-style:none}.prep-day ul li{color:var(--text-secondary);padding:3px 0;padding-left:var(--space-md);font-size:.85rem;position:relative}.prep-day ul li:before{content:"→";color:var(--text-muted);position:absolute;left:0}.loading-container{padding:var(--space-3xl);justify-content:center;align-items:center;gap:var(--space-lg);flex-direction:column;display:flex}.spinner{border:3px solid #6366f126;border-top-color:var(--accent-start);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}.loading-text{color:var(--text-secondary);font-size:.95rem;font-weight:500}.empty-state{text-align:center;padding:var(--space-3xl);color:var(--text-muted)}.empty-icon{margin-bottom:var(--space-md);opacity:.4;font-size:3rem}.empty-state h3{color:var(--text-secondary);margin-bottom:var(--space-sm);font-size:1.1rem;font-weight:600}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (width<=768px){.navbar{padding:var(--space-md) var(--space-md)}.dashboard-container,.results-container{padding:var(--space-lg)}.auth-card{padding:var(--space-xl)}.resume-grid{grid-template-columns:1fr}.resume-card-actions{flex-direction:column}.upload-zone{padding:var(--space-xl)}.score-gauge{width:140px;height:140px}.score-value{font-size:2.2rem}}.mobile-upload-notice{margin-top:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--warning-bg);border-radius:var(--radius-sm);color:var(--warning);text-align:center;border:1px solid #f59e0b40;font-size:.85rem;line-height:1.5;display:none}@media (width<=768px){.mobile-upload-notice{display:block}}.model-selector{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.model-toggle{border:1px solid var(--border,#ffffff14);border-radius:8px;display:flex;overflow:hidden}.model-btn{background:var(--surface,var(--bg-glass));color:var(--text-muted);cursor:pointer;border:none;padding:.4rem 1rem;font-family:Inter,sans-serif;font-size:.875rem;transition:background .2s,color .2s}.model-btn.active{background:var(--accent-start,#6366f1);color:#fff}.fallback-warning{color:#ca8a04;background:#eab3081a;border:1px solid #eab30866;border-radius:8px;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.9rem}.chat-container{flex-direction:column;max-width:900px;height:calc(100vh - 57px);margin:0 auto;padding:0;display:flex;position:relative}.chat-header{padding:var(--space-lg) var(--space-xl);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0e1a99;border-bottom:1px solid #ffffff0f;flex-shrink:0}.chat-header .btn-back{margin-bottom:var(--space-sm)}.chat-header-info h1{background:var(--accent-gradient);-webkit-text-fill-color:transparent;align-items:center;gap:var(--space-sm);-webkit-background-clip:text;background-clip:text;font-size:1.4rem;font-weight:800;display:flex}.chat-header-icon{color:var(--accent-start);-webkit-text-fill-color:var(--accent-start);font-size:1.5rem}.chat-header-info p{color:var(--text-muted);margin-top:2px;font-size:.85rem}.chat-messages{padding:var(--space-xl);gap:var(--space-md);scroll-behavior:smooth;flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:0 0}.chat-messages::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#ffffff2e}.chat-bubble-wrapper{align-items:flex-end;gap:var(--space-sm);animation:.35s chatFadeIn;display:flex}.chat-bubble-user{justify-content:flex-end}.chat-bubble-assistant{justify-content:flex-start}.chat-bubble-system{justify-content:center}.chat-avatar{text-transform:uppercase;letter-spacing:.05em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.65rem;font-weight:700;display:flex}.chat-avatar-ai{background:var(--accent-gradient);color:#fff;box-shadow:0 0 16px #6366f14d}.chat-avatar-user{color:var(--text-secondary);background:#ffffff1a;border:1px solid #ffffff1a}.chat-bubble{max-width:70%;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);font-size:.92rem;line-height:1.7;position:relative}.chat-bubble--assistant{background:var(--bg-card);color:var(--text-primary);border:1px solid #ffffff0f;border-bottom-left-radius:4px}.chat-bubble--user{color:var(--text-primary);background:linear-gradient(135deg,#6366f140,#8b5cf633);border:1px solid #6366f140;border-bottom-right-radius:4px}.chat-bubble--system{background:var(--warning-bg);color:var(--warning);border-radius:var(--radius-sm);border:1px solid #f59e0b33;max-width:85%;font-size:.85rem}.chat-bubble-content{white-space:pre-wrap;word-break:break-word}.chat-system-message{align-items:flex-start;gap:var(--space-sm);display:flex}.chat-system-icon{flex-shrink:0;margin-top:2px;font-size:1rem}.chat-fallback-warning{margin-top:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);color:#ca8a04;background:#eab30814;border:1px solid #eab30833;font-size:.78rem}.chat-model-badge{margin-top:var(--space-xs);color:var(--text-muted);text-align:right;font-size:.72rem}.chat-typing-indicator{align-items:center;gap:5px;padding:4px 0;display:flex}.chat-typing-dot{background:var(--accent-mid);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite chatTypingBounce}.chat-typing-dot:nth-child(2){animation-delay:.2s}.chat-typing-dot:nth-child(3){animation-delay:.4s}.chat-suggestions{gap:var(--space-sm);padding:0 var(--space-xl) var(--space-md);flex-wrap:wrap;flex-shrink:0;display:flex}.chat-chip{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-full);background:var(--bg-glass);color:var(--text-accent);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #6366f133;font-family:Inter,sans-serif;font-size:.82rem}.chat-chip:hover{background:#6366f11f;border-color:#6366f166;transform:translateY(-1px);box-shadow:0 0 16px #6366f11a}.chat-input-area{padding:var(--space-md) var(--space-xl) var(--space-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0e1a99;border-top:1px solid #ffffff0f;flex-shrink:0}.chat-model-toggle{margin-bottom:var(--space-sm);border:1px solid #ffffff14;border-radius:8px;width:fit-content;display:flex;overflow:hidden}.chat-input-row{align-items:flex-end;gap:var(--space-sm);display:flex}.chat-input{background:var(--bg-glass);border-radius:var(--radius-md);color:var(--text-primary);resize:none;transition:all var(--transition-fast);border:1px solid #ffffff14;outline:none;flex:1;min-height:44px;max-height:120px;padding:.75rem 1rem;font-family:Inter,sans-serif;font-size:.92rem;line-height:1.5;overflow-y:auto}.chat-input:focus{border-color:var(--accent-start);box-shadow:0 0 0 3px #6366f126}.chat-input::placeholder{color:var(--text-muted)}.chat-input:disabled{opacity:.5;cursor:not-allowed}.chat-send-btn{border-radius:var(--radius-md);background:var(--accent-gradient);color:#fff;cursor:pointer;width:44px;height:44px;transition:all var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex;position:relative;overflow:hidden}.chat-send-btn:before{content:"";opacity:0;transition:opacity var(--transition-fast);background:linear-gradient(135deg,#ffffff2e,#0000);position:absolute;inset:0}.chat-send-btn:hover:not(:disabled):before{opacity:1}.chat-send-btn:hover:not(:disabled){box-shadow:var(--accent-glow);transform:translateY(-1px)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-chat{color:var(--accent-end);background:#8b5cf61a;border-color:#8b5cf633}.btn-chat:hover{background:#8b5cf633;box-shadow:0 0 20px #8b5cf626}@keyframes chatFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes chatTypingBounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}@media (width<=768px){.chat-container{height:calc(100vh - 57px)}.chat-header{padding:var(--space-md)}.chat-header-info h1{font-size:1.15rem}.chat-messages{padding:var(--space-md)}.chat-bubble{max-width:85%}.chat-suggestions{padding:0 var(--space-md) var(--space-sm)}.chat-chip{padding:var(--space-xs) var(--space-sm);font-size:.78rem}.chat-input-area{padding:var(--space-sm) var(--space-md) var(--space-md)}}
