*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(135deg,#f0f9ff,#e0e7ff);color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.min-h-screen,body{min-height:100vh}.bg-gradient-to-br{background:linear-gradient(to bottom right,#dbeafe,#e0e7ff)}.container{margin:0 auto;max-width:80rem;padding:2rem 1rem}.grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.grid-cols-1{grid-template-columns:1fr}@media (min-width:1024px){.lg-grid-cols-3{grid-template-columns:repeat(3,1fr)}.lg-col-span-1{grid-column:span 1}}.bg-white{background-color:#fff}.bg-blue-600{background-color:#2563eb}.bg-gray-100{background-color:#f3f4f6}.bg-gray-50{background-color:#f9fafb}.bg-blue-50{background-color:#eff6ff}.bg-green-100{background-color:#dcfce7}.rounded-xl{border-radius:.75rem}.rounded-lg{border-radius:.5rem}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-xl{font-size:1.25rem}.text-lg,.text-xl{line-height:1.75rem}.text-lg{font-size:1.125rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.text-gray-800{color:#1f2937}.text-gray-600{color:#4b5563}.text-gray-500{color:#6b7280}.text-blue-600{color:#2563eb}.text-green-700{color:#15803d}.bg-red-500{background-color:#ef4444}.bg-red-600,.hover\:bg-red-600:hover{background-color:#dc2626}.text-white{color:#fff}.font-bold{font-weight:700}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-8{margin-top:2rem}.mx-auto{margin-left:auto;margin-right:auto}.text-center{text-align:center}.text-left{text-align:left}.flex{display:flex}.flex-col{flex-direction:column}.flex-1{flex:1 1}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-6{gap:1.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-dashed{border-style:dashed}.border-gray-200{border-color:#e5e7eb}.border-gray-300{border-color:#d1d5db}.border-green-400{border-color:#4ade80}.border-t{border-top-width:1px}.border-b{border-bottom-width:1px}.w-5{width:1.25rem}.w-12{width:3rem}.w-full{width:100%}.h-5{height:1.25rem}.h-12{height:3rem}.chat-container{height:600px}.max-w-xs{max-width:20rem}.max-w-md{max-width:28rem}.overflow-y-auto{overflow-y:auto}.space-y-2>*+*{margin-top:.5rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.cursor-pointer{cursor:pointer}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover-bg-blue-700:hover{background-color:#1d4ed8}.hover-border-blue-400:hover{border-color:#60a5fa}.hover-bg-blue-50:hover{background-color:#eff6ff}.hover-bg-gray-200:hover{background-color:#e5e7eb}.focus-outline-none:focus{outline:2px solid #0000;outline-offset:2px}.focus-ring-2:focus,.focus-ring-blue-500:focus{box-shadow:0 0 0 3px #3b82f680}.disabled-bg-gray-100:disabled{background-color:#f3f4f6}.disabled-opacity-50:disabled{opacity:.5}.hidden{display:none}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.upload-area{border:2px dashed #d1d5db;border-radius:.5rem;padding:2rem;text-align:center;transition:border-color .15s ease-in-out}.upload-area:hover{border-color:#60a5fa}.message-user{background-color:#2563eb;color:#fff;margin-left:auto;max-width:20rem}.message-ai,.message-user{border-radius:.5rem;padding:.5rem 1rem}.message-ai{background-color:#f3f4f6;color:#1f2937;max-width:28rem}.message-system{background-color:#dcfce7;border-radius:.5rem;color:#15803d;padding:.5rem 1rem}button{border:none;border-radius:.5rem;cursor:pointer;font-size:14px;transition:all .15s ease-in-out}button:disabled{cursor:not-allowed;opacity:.5}input[type=file],input[type=text]{border:1px solid #d1d5db;border-radius:.5rem;font-size:14px;padding:.5rem .75rem}input[type=text]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #3b82f61a;outline:none}.login-wrapper{background:linear-gradient(120deg,#f0f4ff,#dbeafe);display:flex;min-height:100vh;overflow:hidden}.login-left{align-items:center;display:flex;flex:1 1;justify-content:center;padding:3rem}.login-box{animation:floatCard 6s ease-in-out infinite;background:#fffffff2;border-radius:16px;box-shadow:0 12px 40px #0000001a;max-width:400px;padding:2.5rem;text-align:center;width:100%}.brand-title{color:#1e3a8a;font-size:2rem;font-weight:700;margin-bottom:.5rem}.brand-subtitle{color:#6b7280;margin-bottom:1.5rem}.login-form{display:flex;flex-direction:column;gap:1rem}.login-input{border:1px solid #d1d5db;border-radius:10px;font-size:1rem;padding:.75rem 1rem;transition:all .3s ease}.login-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb40;outline:none}.login-btn{background:linear-gradient(90deg,#2563eb,#1e40af);border-radius:10px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:.9rem;transition:transform .3s,background .3s}.login-btn:hover{background:linear-gradient(90deg,#1e40af,#1d4ed8);transform:translateY(-2px)}.login-error{background:#fee2e2;border-radius:8px;color:#b91c1c;font-size:.9rem;margin-bottom:1rem;padding:.6rem}.google-btn{align-items:center;background-color:#fff;border:1px solid #dadce0;border-radius:6px;box-shadow:0 1px 3px #0000001a;color:#3c4043;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:10px;justify-content:center;padding:.75rem 1rem;transition:all .25s ease;width:100%}.google-btn img{height:20px;width:20px}.google-btn:hover{background-color:#f8f9fa;box-shadow:0 2px 6px #00000026;transform:translateY(-1px)}.google-btn:active{background-color:#eee;transform:translateY(0)}.separator{align-items:center;color:#888;display:flex;font-size:14px;margin:1.2rem 0;text-align:center}.separator:after,.separator:before{border-bottom:1px solid #ddd;content:"";flex:1 1}.separator:not(:empty):before{margin-right:.75em}.separator:not(:empty):after{margin-left:.75em}.login-links{display:flex;justify-content:space-between;margin-top:1rem}.login-links a{color:#2563eb;font-size:.9rem;text-decoration:none;transition:color .3s}.login-links a:hover{color:#1e40af;text-decoration:underline}.login-right{background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:4rem 3rem}.info-title{font-size:2.2rem;font-weight:700;margin-bottom:1rem}.info-text{font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.info-list{list-style:none;margin-bottom:2rem;padding:0}.info-list li{font-size:1rem;margin-bottom:.8rem}.testimonial{background:#ffffff26;border-radius:12px;font-size:.95rem;font-style:italic;margin-bottom:2rem;padding:1rem}.testimonial span{font-weight:700}.info-btn{align-self:flex-start;background:#fff;border-radius:10px;color:#1e40af;display:inline-block;font-weight:600;padding:.9rem 2rem;text-decoration:none;transition:all .3s ease}.info-btn:hover{background:#f9fafb;transform:translateY(-2px)}@keyframes floatCard{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.animate-fadeIn{animation:fadeIn 1s ease forwards;opacity:0}.animate-slideUp{animation:slideUp 1s ease forwards;opacity:0}@keyframes fadeIn{to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.login-wrapper{flex-direction:column}.login-right{align-items:center;padding:2rem;text-align:center}.info-btn{align-self:center}}.success-msg{background:#dcfce7;border-radius:8px;color:#166534;font-size:.95rem;font-weight:500;margin-bottom:1rem;padding:.8rem;text-align:center}html{scroll-behavior:smooth}.landing-wrapper{background:#fff;color:#1f2937;font-family:Inter,sans-serif;line-height:1.6}.navbar{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem 8%;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nav-logo img{height:42px}.nav-links{display:flex;gap:2rem}.nav-links a{color:#1f2937;font-weight:500;text-decoration:none;transition:color .3s ease}.nav-links a:hover{color:#2563eb}.nav-actions{align-items:center;display:flex;gap:1rem}.nav-link{color:#374151;font-weight:500;text-decoration:none}.nav-link:hover{color:#2563eb}.hamburger{cursor:pointer;display:none;flex-direction:column;gap:5px}.hamburger span{background:#1f2937;border-radius:2px;height:3px;transition:all .3s ease;width:24px}.hamburger.active span:first-child{transform:rotate(45deg) translateY(8px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translateY(-8px)}@media (max-width:992px){.hamburger{display:flex}.nav-links{background:#fff;box-shadow:0 6px 16px #0000001a;display:none;flex-direction:column;gap:1rem;left:0;padding:1rem;position:absolute;right:0;top:70px}.nav-links.open{display:flex}.nav-actions{display:none}}.hero{align-items:center;background:linear-gradient(135deg,#f9fafb,#eef2ff);display:flex;flex-wrap:wrap;justify-content:space-between;padding:6rem 8%}.hero-content{flex:1 1;max-width:550px}.hero-content h1{font-size:3rem;font-weight:800;line-height:1.2;margin-bottom:1rem}.hero-content h1 span{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#2563eb,#9333ea);-webkit-background-clip:text}.hero-content p{color:#4b5563;font-size:1.1rem;margin-bottom:2rem}.hero-buttons{display:flex;flex-wrap:wrap;gap:1rem}.btn-primary{background:#2563eb;border-radius:10px;color:#fff;font-weight:600;padding:.9rem 1.6rem;text-decoration:none;transition:transform .2s ease,background .3s ease}.btn-primary:hover{background:#1d4ed8;transform:translateY(-3px)}.btn-secondary{border:2px solid #2563eb;border-radius:10px;color:#2563eb;font-weight:600;padding:.9rem 1.6rem;text-decoration:none;transition:all .3s ease}.btn-secondary:hover{background:#2563eb;color:#fff}.hero-image{display:flex;flex:1 1;justify-content:center}.hero-image img{border-radius:14px;box-shadow:0 12px 30px #00000026;max-width:520px;width:100%}section{padding:5rem 8%}section h2{font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center}.feature-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.feature-card{background:#fff;border-radius:14px;box-shadow:0 6px 20px #0000000f;padding:2rem;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{box-shadow:0 12px 28px #0000001f;transform:translateY(-6px)}.feature-card h3{color:#2563eb;font-size:1.2rem;margin-bottom:.8rem}.steps-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:2rem}.step-card{background:#fff;border-radius:14px;box-shadow:0 6px 18px #00000014;padding:2rem 1.5rem;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.step-card:hover{box-shadow:0 12px 28px #0000001f;transform:translateY(-6px)}.step-number{align-items:center;background:linear-gradient(135deg,#2563eb,#9333ea);border-radius:50%;color:#fff;display:flex;font-size:1.4rem;font-weight:700;height:42px;justify-content:center;margin:0 auto 1rem;width:42px}.step-card h3{color:#2563eb;font-size:1.2rem;margin-bottom:.6rem}.step-card p{color:#4b5563;font-size:.95rem}.logo-bar{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.logo-bar img{filter:grayscale(100%);height:40px;transition:filter .3s ease,transform .3s ease}.logo-bar img:hover{filter:grayscale(0);transform:scale(1.05)}.comparison-subtitle{color:#4b5563;font-size:1rem;margin-bottom:2.5rem;margin-top:-1rem}.comparison-table{border:1px solid #e5e7eb;border-radius:10px;margin:0 auto;max-width:950px;overflow:hidden}.comparison-table .row{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:grid;font-size:1rem;grid-template-columns:1fr 1fr 1fr}.comparison-table .row:last-child{border-bottom:none}.comparison-table .header{background:#2563eb;color:#fff;font-weight:700}.comparison-table .cell{padding:1rem;text-align:center}.comparison{text-align:center}.pricing-subtitle{color:#4b5563;font-size:1rem;margin-bottom:2.5rem;margin-top:-1rem;text-align:center}.pricing-grid{grid-gap:2rem;align-items:stretch;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.price-card{background:#fff;border-radius:16px;box-shadow:0 6px 18px #00000014;display:flex;flex-direction:column;height:100%;justify-content:flex-start;padding:2.5rem;transition:transform .3s ease,box-shadow .3s ease}.price-card:hover{box-shadow:0 12px 28px #0000001f;transform:translateY(-6px)}.price-card h3{color:#2563eb;font-size:1.4rem;margin-bottom:.5rem}.price-card .price{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#2563eb,#9333ea);-webkit-background-clip:text;font-size:2rem;font-weight:700;margin:1rem 0 1.5rem}.price-card .price span{-webkit-text-fill-color:#6b7280;color:#6b7280;font-size:1rem;font-weight:400}.price-card ul{color:#4b5563;flex-grow:1;list-style:none;margin:0 0 2rem;padding:0}.price-card ul li{margin:.5rem 0}.price-card.popular{background:#f9faff;border:2px solid #2563eb;position:relative;transform:scale(1.05)}.price-card .badge{background:#2563eb;border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 10px;position:absolute;right:20px;top:-12px}.testimonial-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.testimonial-card{background:#fff;box-shadow:0 6px 20px #00000014;font-style:italic;padding:2rem}.cta,.testimonial-card{border-radius:14px;text-align:center}.cta{background:linear-gradient(135deg,#1e40af,#2563eb);color:#fff;margin:4rem auto;padding:5rem 8%}.cta h2{font-size:2.2rem;margin-bottom:1rem}.cta p{margin-bottom:2rem}.footer{background:#111827;color:#d1d5db;font-size:.95rem;padding:3rem 8% 2rem}.footer-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:2rem}.footer-col h4{color:#f9fafb;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.footer-col a{color:#9ca3af;display:block;margin:.4rem 0;text-decoration:none;transition:color .3s ease}.footer-col a:hover{color:#fff}.footer .socials{display:flex;gap:1rem}.footer .socials img{filter:brightness(0) invert(.8);transition:filter .3s ease,transform .3s ease;width:22px}.footer .socials img:hover{filter:brightness(1) invert(1);transform:scale(1.1)}.footer-bottom{border-top:1px solid #1f2937;color:#9ca3af;font-size:.85rem;padding-top:1rem;text-align:center}.footer-bottom a{color:#facc15;text-decoration:none}.footer-bottom a:hover{text-decoration:underline}.reveal{opacity:0;transform:translateY(40px);transition:all .8s ease}.animate-show{opacity:1;transform:translateY(0)}@media (max-width:992px){.hero{flex-direction:column;text-align:center}.hero-content{max-width:100%}.hero-buttons{justify-content:center}.hero-image{margin-top:2rem}.nav-links{display:none}}@media (max-width:600px){.hero-content h1{font-size:2rem}.hero-content p{font-size:1rem}section{padding:3rem 5%}}.profile-container{margin:0 auto;max-width:700px;padding:1.5rem}.back-btn{color:#2563eb;font-size:.95rem;margin-bottom:1rem}.back-btn:hover{text-decoration:underline}.greeting{color:#111827;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem}.plan-info-card{background:#fff;border-radius:.75rem;box-shadow:0 4px 10px #0000000d;margin-bottom:2rem;padding:1.5rem}.progress-wrapper{margin-top:1rem}.progress-bar{background:#e5e7eb;width:100%}.progress-bar,.progress-fill{border-radius:9999px;height:.75rem}.progress-fill{transition:width .3s ease}.progress-fill.green{background:#16a34a}.progress-fill.yellow{background:#facc15}.progress-fill.red{background:#dc2626}.progress-text{color:#6b7280;font-size:.85rem;margin-top:.25rem}.btn-row{display:flex;gap:.75rem;margin-top:1rem}.refresh-btn{background:#f3f4f6;border-radius:.5rem;padding:.5rem 1rem}.refresh-btn:hover{background:#e5e7eb}.logout-btn{background:#fee2e2;border-radius:.5rem;color:#dc2626;padding:.5rem 1rem}.logout-btn:hover{background:#fecaca}.upgrade-section h2{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.upgrade-cards{display:flex;flex-direction:column;gap:1.5rem}.upgrade-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;box-shadow:0 4px 10px #0000000d;padding:1.5rem;position:relative}.upgrade-card:hover{box-shadow:0 8px 16px #0000001a;transform:translateY(-4px);transition:all .2s ease-in-out}.badge{background:#facc15;border-radius:9999px;color:#92400e;font-size:.75rem;font-weight:600;padding:.25rem .5rem;position:absolute;right:1rem;top:1rem}.plan-title{color:#111827;font-size:1.2rem;font-weight:600}.plan-price{color:#4b5563;font-size:1rem;margin-bottom:1rem}.plan-features{list-style:none;margin-bottom:1rem;padding:0}.plan-features li{align-items:center;color:#4b5563;display:flex;font-size:.95rem;margin-bottom:.5rem}.check-icon{color:#16a34a;height:1.2rem;margin-right:.5rem;width:1.2rem}.upgrade-btn{border-radius:.5rem;color:#fff;font-weight:600;padding:.75rem;transition:background .2s;width:100%}.upgrade-btn.blue{background:#2563eb}.upgrade-btn.blue:hover{background:#1e40af}.upgrade-btn.green{background:#16a34a}.upgrade-btn.green:hover{background:#166534}.upgrade-btn:disabled{cursor:not-allowed;opacity:.6}