:root{--teal-50: #f0fdfa;--teal-100: #ccfbf1;--teal-500: #14b8a6;--teal-600: #0d9488;--teal-700: #0f766e;--blue-50: #eff6ff;--blue-100: #dbeafe;--blue-500: #3b82f6;--blue-600: #2563eb;--blue-700: #1d4ed8;--purple-50: #faf5ff;--purple-600: #9333ea;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--green-50: #f0fdf4;--green-100: #dcfce7;--green-500: #22c55e;--green-600: #16a34a;--green-700: #15803d;--red-50: #fef2f2;--red-600: #dc2626;--red-700: #b91c1c;--yellow-500: #eab308;--white: #ffffff;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px rgba(0,0,0,.06);--shadow-lg: 0 10px 15px rgba(0,0,0,.1), 0 4px 6px rgba(0,0,0,.05);--shadow-xl: 0 20px 25px rgba(0,0,0,.1), 0 8px 10px rgba(0,0,0,.04);--shadow-2xl: 0 25px 50px rgba(0,0,0,.15);--radius: .75rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-2xl: 1.5rem}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--gray-900);background:var(--white);line-height:1.6}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}button{cursor:pointer;font-family:inherit}ul,ol{list-style:none}.container{max-width:1280px;margin:0 auto;padding:0 1.5rem}.gradient-text{background:linear-gradient(135deg,var(--teal-600),var(--blue-600));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 2rem;border-radius:var(--radius);font-weight:600;font-size:1rem;border:none;transition:all .2s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(135deg,var(--teal-600),var(--blue-600));color:#fff;box-shadow:0 4px 14px #0d94884d}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #0d948866}.btn-outline{background:transparent;color:var(--teal-600);border:2px solid var(--teal-600)}.btn-outline:hover:not(:disabled){background:var(--teal-600);color:#fff}.btn-white{background:#fff;color:var(--teal-600);box-shadow:var(--shadow)}.btn-white:hover:not(:disabled){box-shadow:var(--shadow-xl)}.card{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);transition:box-shadow .3s ease,transform .3s ease}.card:hover{box-shadow:var(--shadow-xl)}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-weight:600;font-size:.875rem;color:var(--gray-700);margin-bottom:.5rem}.form-input,.form-textarea{width:100%;padding:.875rem 1rem;border:2px solid var(--gray-200);border-radius:var(--radius);font-size:1rem;font-family:inherit;color:var(--gray-900);background:var(--white);transition:border-color .2s ease,box-shadow .2s ease}.form-input::placeholder,.form-textarea::placeholder{color:var(--gray-500)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--teal-500);box-shadow:0 0 0 3px #14b8a626}.form-textarea{resize:vertical;min-height:120px}.alert{padding:1rem 1.25rem;border-radius:var(--radius);font-size:.875rem;font-weight:500;display:flex;align-items:flex-start;gap:.75rem;animation:slideIn .3s ease}.alert.alert-success{background:var(--green-50);color:var(--green-700);border-left:4px solid var(--green-500)}.alert.alert-error{background:var(--red-50);color:var(--red-700);border-left:4px solid var(--red-600)}.alert.alert-warning{background:#fffbeb;color:#92400e;border-left:4px solid var(--yellow-500)}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease forwards}.section{padding:5rem 0}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{font-size:2.5rem;font-weight:800;color:var(--gray-900);margin-bottom:1rem}.section-header p{font-size:1.125rem;color:var(--gray-600);max-width:640px;margin:0 auto}.spinner{width:40px;height:40px;border:4px solid var(--gray-200);border-top-color:var(--teal-600);border-radius:50%;animation:spin .8s linear infinite;margin:2rem auto}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.container{padding:0 1rem}.section{padding:3rem 0}.section-header h2{font-size:1.75rem}}
