:root{--primary-50:#f0fdfa;--primary-100:#ccfbf1;--primary-200:#99f6e4;--primary-300:#5eead4;--primary-400:#2dd4bf;--primary:#14b8a6;--primary-600:#0d9488;--primary-700:#0f766e;--primary-800:#115e59;--secondary:#4f46e5;--secondary-light:#818cf8;--secondary-dark:#3730a3;--accent:#f59e0b;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--black:#020617;--white:#fff;--font-sans:"Inter", sans-serif;--font-display:"Outfit", sans-serif;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-2xl:2rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-family:var(--font-sans);color:var(--gray-800);background-color:var(--gray-50)}body{-webkit-font-smoothing:antialiased;line-height:1.6}a{color:var(--primary);text-decoration:none;transition:all .2s}a:hover{color:var(--primary-700)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--gray-900);margin-bottom:1rem;font-weight:700;line-height:1.2}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.btn{border-radius:var(--radius-full);cursor:pointer;border:none;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-weight:600;transition:all .3s;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--secondary));color:var(--white);box-shadow:var(--shadow-md)}.btn-primary:hover{box-shadow:var(--shadow-lg);color:var(--white);transform:translateY(-2px)}.navbar{z-index:100;padding:1.5rem 0;transition:all .3s;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm);background:#fffffff2;padding:1rem 0}.navbar .container{justify-content:space-between;align-items:center;display:flex}.navbar-brand{font-family:var(--font-display);color:var(--gray-900);letter-spacing:-.5px;font-size:1.5rem;font-weight:800}.navbar-nav{align-items:center;gap:2rem;display:flex}.navbar-nav a{color:var(--gray-600);font-weight:500}.navbar-nav a:hover{color:var(--primary)}.navbar-cta{background:var(--primary);border-radius:var(--radius-full);padding:.5rem 1.25rem;font-weight:600;transition:background .3s;color:var(--white)!important}.navbar-cta:hover{background:var(--primary-600)}.hero-generic{background:linear-gradient(180deg, var(--primary-50) 0%, var(--white) 100%);text-align:center;padding:10rem 0 6rem;position:relative;overflow:hidden}.hero-title{margin-bottom:1.5rem;font-size:3.5rem}.hero-gradient-text{background:linear-gradient(to right, var(--primary), var(--secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text}.hero-desc{color:var(--gray-600);max-width:600px;margin:0 auto 2.5rem;font-size:1.25rem}.hero-visual{border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);background:var(--white);border:1px solid var(--gray-200);margin-top:4rem;padding:2rem;position:relative}.mock-ui-card{background:var(--gray-50);border-radius:var(--radius-lg);text-align:left;border:1px solid var(--gray-200);padding:1.5rem}.mock-ui-row{justify-content:space-between;margin-bottom:1rem;display:flex}.mock-bar-chart{align-items:flex-end;gap:.5rem;height:100px;display:flex}.mock-bar{background:var(--primary-300);border-radius:4px 4px 0 0;flex:1;animation:1s ease-out forwards growUp}.section{padding:6rem 0}.section-header{text-align:center;max-width:700px;margin:0 auto 4rem}.section-header h2{font-size:2.5rem}.section-header p{color:var(--gray-600);font-size:1.125rem}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.feature-card-generic{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border-top:4px solid var(--primary);padding:2rem;transition:transform .3s,box-shadow .3s}.feature-card-generic:hover{box-shadow:var(--shadow-xl);transform:translateY(-5px)}.feature-icon-generic{background:var(--primary-100);width:60px;height:60px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.5rem;font-size:1.5rem;display:flex}.footer-generic{background:var(--gray-900);color:var(--gray-300);text-align:center;padding:4rem 0 2rem}.footer-generic a{color:var(--primary-300)}.footer-generic-bottom{border-top:1px solid var(--gray-800);margin-top:3rem;padding-top:2rem;font-size:.875rem}@keyframes growUp{0%{height:0}}.animate-fade-up{animation:.8s ease-out forwards fadeUp}.animate-fade-in{animation:.8s ease-out forwards fadeIn}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.auth-page-generic{background:var(--gray-50);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.auth-card-generic{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);text-align:center;width:100%;max-width:480px;padding:3rem 2.5rem}.auth-card-generic .brand{font-family:var(--font-display);color:var(--primary);margin-bottom:2rem;font-size:2rem;font-weight:800}.auth-card-generic h1{margin-bottom:.5rem;font-size:1.75rem}.auth-card-generic p{color:var(--gray-500);margin-bottom:2rem}.auth-field-generic{text-align:left;margin-bottom:1.5rem}.auth-field-generic input{border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;font-family:var(--font-sans);padding:.875rem 1rem;font-size:1rem;transition:all .2s}.auth-field-generic input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-100);outline:none}.auth-submit-generic{background:var(--primary);width:100%;color:var(--white);border-radius:var(--radius-md);cursor:pointer;border:none;padding:.875rem;font-size:1rem;font-weight:600;transition:background .2s}.auth-submit-generic:hover{background:var(--primary-700)}.mobile-toggle{cursor:pointer;background:0 0;border:none;display:none}.mobile-toggle span{background:var(--gray-900);width:25px;height:2px;margin:5px 0;display:block}@media (width<=768px){.mobile-toggle{display:block}.navbar-nav{display:none}.hero-title{font-size:2.5rem}}
