:root{--primary:#667eea;--primary-dark:#5568d3;--primary-light:#f0f4ff;--secondary:#f59e0b;--accent:#10b981;--danger:#ef4444;--warm-cream:#fef6f1;--warm-orange:#f97316;--warm-rose:#ec4899;--warm-amber:#f59e0b;--dark:#1f2937;--gray-dark:#374151;--gray:#6b7280;--gray-light:#f3f4f6;--white:#fff;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;--font-serif:"Georgia",serif;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);--transition-fast:150ms ease-in-out;--transition:250ms ease-in-out;--transition-slow:350ms ease-in-out}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-family);color:var(--dark);background:var(--white);line-height:1.6;font-size:var(--text-base)}h1,h2,h3,h4,h5,h6{line-height:1.2;margin-bottom:var(--space-lg);font-weight:700}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}p{margin-bottom:var(--space-md);color:var(--gray-dark)}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark);text-decoration:underline}img{max-width:100%;height:auto;display:block}.btn,button{font-family:var(--font-family);font-size:var(--text-base);padding:var(--space-md) var(--space-lg);border:none;border-radius:6px;cursor:pointer;transition:all var(--transition-fast);font-weight:600;display:inline-block;text-decoration:none;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn:disabled,button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--white)}.btn-primary:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--gray-light);color:var(--dark);border:1px solid var(--gray)}.btn-secondary:hover:not(:disabled){background:var(--white);box-shadow:var(--shadow)}.btn-outline{background:transparent;color:var(--primary);border:2px solid var(--primary)}.btn-outline:hover:not(:disabled){background:var(--primary-light)}.btn-success{background:var(--accent);color:var(--white)}.btn-success:hover:not(:disabled){background:#059669;transform:translateY(-2px)}.btn-danger{background:var(--danger);color:var(--white)}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-sm{padding:var(--space-sm) var(--space-md);font-size:var(--text-sm)}.btn-lg{padding:var(--space-lg) var(--space-2xl);font-size:var(--text-lg)}input,select,textarea{font-family:var(--font-family);font-size:var(--text-base);padding:var(--space-md);border:1px solid var(--gray);border-radius:6px;width:100%;transition:all var(--transition-fast)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(102,126,234,.1)}input::placeholder{color:var(--gray)}label{display:block;margin-bottom:var(--space-sm);font-weight:600;color:var(--dark)}.form-group{margin-bottom:var(--space-lg)}.container{max-width:1200px}.container,.container-sm{margin:0 auto;padding:0 var(--space-lg)}.container-sm{max-width:640px}.card{background:var(--white);border-radius:8px;box-shadow:var(--shadow);overflow:hidden;transition:all var(--transition)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-body{padding:var(--space-xl)}.grid{display:grid;grid-gap:var(--space-lg);gap:var(--space-lg)}.grid-cols-1{grid-template-columns:1fr}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.flex{display:flex}.flex-between{justify-content:space-between}.flex-between,.flex-center{display:flex;align-items:center}.flex-center{justify-content:center}.flex-col{flex-direction:column}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.mb-2xl{margin-bottom:var(--space-2xl)}.mb-3xl{margin-bottom:var(--space-3xl)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mt-2xl{margin-top:var(--space-2xl)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}@media (max-width:1024px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}}@media (max-width:640px){:root{--space-lg:1rem;--space-xl:1.5rem}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}.btn-lg{padding:var(--space-md) var(--space-lg);font-size:var(--text-base)}}.text-center{text-align:center}.text-muted{color:var(--gray)}.text-danger{color:var(--danger)}.text-success{color:var(--accent)}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.rounded{border-radius:6px}.rounded-lg{border-radius:8px}.rounded-full{border-radius:9999px}.border{border:1px solid var(--gray)}.border-top{border-top:1px solid var(--gray)}.border-bottom{border-bottom:1px solid var(--gray)}.hidden{display:none}.max-w-full{max-width:100%}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spinner{display:inline-block;width:20px;height:20px;border:3px solid var(--gray-light);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite}