*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}a{color:inherit;text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.min-h-screen{min-height:100vh}.bg-gradient-to-br{background:linear-gradient(to bottom right,#f0f9ff,#e0e7ff)}.text-center{text-align:center}.mb-12{margin-bottom:3rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.font-bold{font-weight:700}.text-gray-800{color:#1f2937}.mb-4{margin-bottom:1rem}.text-gray-600{color:#4b5563}.max-w-2xl{max-width:42rem}.mx-auto{margin-left:auto;margin-right:auto}.max-w-4xl{max-width:56rem}.bg-white{background-color:#fff}.rounded-2xl{border-radius:1rem}.shadow-xl{box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.p-8{padding:2rem}.mb-8{margin-bottom:2rem}.block{display:block}.font-medium{font-weight:500}.text-gray-700{color:#374151}.mb-2{margin-bottom:.5rem}.flex{display:flex}.gap-4{gap:1rem}.flex-1{flex:1 1}.px-4{padding-left:1rem;padding-right:1rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.border{border-width:1px}.border-gray-300{border-color:#d1d5db}.rounded-lg{border-radius:.5rem}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-color:#3b82f6}.focus\:border-transparent:focus{border-color:transparent}.px-8{padding-left:2rem;padding-right:2rem}.bg-blue-600{background-color:#2563eb}.text-white{color:#fff}.hover\:bg-blue-700:hover{background-color:#1d4ed8}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-3{@media (min-width:768px){grid-template-columns:repeat(3,minmax(0,1fr))}}.gap-6{gap:1.5rem}.w-full{width:100%}.px-3{padding-left:.75rem;padding-right:.75rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.border-t{border-top-width:1px}.pt-8{padding-top:2rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-semibold{font-weight:600}.text-green-600{color:#059669}.lg\:grid-cols-2{@media (min-width:1024px){grid-template-columns:repeat(2,minmax(0,1fr))}}.border-gray-50{border-color:#f9fafb}.bg-gray-50{background-color:#f9fafb}.max-w-full{max-width:100%}.h-auto{height:auto}.rounded{border-radius:.25rem}.hidden{display:none}.text-gray-500{color:#6b7280}.py-4{padding-top:1rem;padding-bottom:1rem}.mt-6{margin-top:1.5rem}.bg-blue-50{background-color:#eff6ff}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{@media (min-width:768px){grid-template-columns:repeat(4,minmax(0,1fr))}}.mt-4{margin-top:1rem}.inline-flex{display:inline-flex}.items-center{align-items:center}.justify-center{justify-content:center}.bg-green-600{background-color:#059669}.hover\:bg-green-700:hover{background-color:#047857}.bg-red-50{background-color:#fef2f2}.border-red-200{border-color:#fecaca}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-red-600{color:#dc2626}.text-red-700{color:#b91c1c}.text-2xl{font-size:1.5rem;line-height:2rem}.space-y-6>*+*{margin-top:1.5rem}.bg-gray-100{background-color:#f3f4f6}.p-4{padding:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.overflow-x-auto{overflow-x:auto}code{padding:.25rem .5rem;border-radius:.25rem}code,pre{font-family:Courier New,Courier,monospace;background-color:#f3f4f6;font-size:.875rem}pre{padding:1rem;border-radius:.5rem;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word}@media (min-width:768px){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.rounded-full{border-radius:9999px}.object-contain{object-fit:contain}