/* Minimal Tailwind CSS Reset - Safe for coexistence */
*,::before,::after{box-sizing:border-box}
::before,::after{--tw-content:''}
/* Let professional CSS handle font and line-height for body */

/* Utilities */
.bg-black{background-color:#000}
.bg-white{background-color:#fff}
.bg-gray-100{background-color:#f3f4f6}
.bg-gray-700{background-color:#374151}
.bg-gray-800{background-color:#1f2937}
.bg-blue-900{background-color:#1e3a8a}
.bg-green-900{background-color:#14532d}
.bg-pink-900{background-color:#831843}
.bg-purple-600{background-color:#9333ea}
.bg-purple-700{background-color:#7c3aed}
.bg-purple-900{background-color:#581c87}
.bg-opacity-20{background-color:rgb(0 0 0 / 0.2)}

.text-white{color:#fff}
.text-black{color:#000}
.text-gray-300{color:#d1d5db}
.text-gray-400{color:#9ca3af}
.text-gray-800{color:#1f2937}
.text-blue-400{color:#60a5fa}
.text-blue-500{color:#3b82f6}
.text-pink-500{color:#ec4899}
.text-red-500{color:#ef4444}
.text-accent-blue{color:#3b82f6}
.text-accent-yellow{color:#fbbf24}
.text-accent-green{color:#10b981}
.text-accent-red{color:#ef4444}
.text-accent-purple{color:#8b5cf6}
.text-accent-pink{color:#ec4899}
.text-accent-orange{color:#f97316}
.text-sm{font-size:0.875rem;line-height:1.25rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-lg{font-size:1.125rem;line-height:1.75rem}

.font-bold{font-weight:700}
.font-semibold{font-weight:600}
.font-rock{font-family:"Rock Salt",cursive}

.p-4{padding:1rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.py-2{padding-top:0.5rem;padding-bottom:0.5rem}
.px-4{padding-left:1rem;padding-right:1rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.py-8{padding-top:2rem;padding-bottom:2rem}

/* High specificity margin utilities to override global reset */
.mb-4.mb-4{margin-bottom:1rem !important}
.mb-6.mb-6{margin-bottom:1.5rem !important}
.mb-8.mb-8{margin-bottom:2rem !important}
.mb-12.mb-12{margin-bottom:3rem !important}
.mb-16.mb-16{margin-bottom:4rem !important}
div.mb-12{margin-bottom:3rem !important}
div.mb-16{margin-bottom:4rem !important}
.m-4{margin:1rem !important}
.mr-2{margin-right:0.5rem !important}
.mr-4{margin-right:1rem !important}

.w-full{width:100%}
.max-w-4xl{max-width:56rem}
.max-w-6xl{max-width:72rem}
.max-w-7xl{max-width:80rem}

.h-full{height:100%}
.h-80{height:20rem}
.h-96{height:24rem}
.h-\[420px\]{height:420px}
.h-\[450px\]{height:450px}
.h-\[500px\]{height:500px}
.h-\[520px\]{height:520px}
.h-\[490px\]{height:490px}
.h-\[650px\]{height:650px}
.min-h-screen{min-height:100vh}

.flex{display:flex}
.grid{display:grid}
.hidden{display:none}

.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}

.flex-between{display:flex;align-items:center;justify-content:space-between}

.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}
.grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}
.grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}
.grid-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr))}
.grid-cols-5{grid-template-columns:repeat(5, minmax(0, 1fr))}

.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2rem}

.space-y-2 > * + *{margin-top:0.5rem}
.space-x-4 > * + *{margin-left:1rem}

.rounded{border-radius:0.25rem}
.rounded-lg{border-radius:0.5rem}
.rounded-xl{border-radius:0.75rem}

.border{border-width:1px}
.border-t{border-top-width:1px}
.border-white{border-color:#fff}
.border-gray-500{border-color:#6b7280}
.border-gray-600{border-color:#4b5563}
.border-gray-700{border-color:#374151}
.border-accent-blue\/30{border-color:rgb(59 130 246 / 0.3)}
.border-accent-pink\/30{border-color:rgb(236 72 153 / 0.3)}
.border-opacity-10{border-color:rgb(255 255 255 / 0.1)}

.shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)}
.shadow-xl{box-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)}

.backdrop-blur-sm{backdrop-filter:blur(4px)}

.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}

.bg-blue-400{background-color:#60a5fa}
.bg-blue-500{background-color:#3b82f6}
.bg-blue-600{background-color:#2563eb}
.bg-blue-700{background-color:#1d4ed8}
.bg-gray-500{background-color:#6b7280}
.bg-gray-600{background-color:#4b5563}
.bg-gray-800{background-color:#1f2937}
.bg-gray-900{background-color:#111827}
.bg-green-600{background-color:#16a34a}
.bg-purple-600{background-color:#9333ea}

.hover\:bg-blue-400:hover{background-color:#60a5fa}
.hover\:bg-blue-500:hover{background-color:#3b82f6}
.hover\:bg-blue-600:hover{background-color:#2563eb}
.hover\:bg-blue-700:hover{background-color:#1d4ed8}
.hover\:bg-gray-500:hover{background-color:#6b7280}
.hover\:bg-green-600:hover{background-color:#16a34a}
.hover\:bg-purple-600:hover{background-color:#9333ea}
.hover\:bg-purple-700:hover{background-color:#7c3aed}
.hover\:text-white:hover{color:#fff}
.hover\:text-blue-400:hover{color:#60a5fa}
.hover\:text-blue-500:hover{color:#3b82f6}
.hover\:text-pink-500:hover{color:#ec4899}
.hover\:text-blue-300:hover{color:#93c5fd}
.hover\:text-red-500:hover{color:#ef4444}

.mx-auto{margin-left:auto;margin-right:auto}

.py-12{padding-top:3rem;padding-bottom:3rem}
.px-4{padding-left:1rem;padding-right:1rem}
.pt-8{padding-top:2rem}
.mt-4{margin-top:1rem !important}
.mt-8{margin-top:2rem !important}
.mb-2{margin-bottom:0.5rem !important}
.mr-2{margin-right:0.5rem !important}
.mr-3{margin-right:0.75rem !important}
.mb-1{margin-bottom:0.25rem !important}
.mb-3{margin-bottom:0.75rem !important}
.mb-4{margin-bottom:1rem !important}
.mb-6{margin-bottom:1.5rem !important}
.mr-1{margin-right:0.25rem !important}

.p-5{padding:1.25rem}
.p-6{padding:1.5rem}
.px-3{padding-left:0.75rem;padding-right:0.75rem}
.py-2{padding-top:0.5rem;padding-bottom:0.5rem}
.py-16{padding-top:4rem;padding-bottom:4rem}

.gap-2{gap:0.5rem}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2rem}

.space-y-6 > :not([hidden]) ~ :not([hidden]){margin-top:1.5rem !important}

.text-sm{font-size:0.875rem;line-height:1.25rem}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-2xl{font-size:1.5rem;line-height:2rem}

.font-bold{font-weight:700}
.font-semibold{font-weight:600}
.font-medium{font-weight:500}

.text-white{color:#fff}
.text-gray-200{color:#e5e7eb}
.text-gray-300{color:#d1d5db}

.rounded{border-radius:0.25rem}
.rounded-lg{border-radius:0.5rem}

.border{border-width:1px}
.border-gray-500{border-color:#6b7280}
.border-gray-600{border-color:#4b5563}

.flex-wrap{flex-wrap:wrap}
.items-start{align-items:flex-start}
.items-center{align-items:center}
.justify-between{justify-content:space-between}
.inline-flex{display:inline-flex}

.text-left{text-align:left}

.relative{position:relative}
.z-10{z-index:10}
.overflow-hidden{overflow:hidden}

.max-w-7xl{max-width:80rem}
.col-span-1{grid-column:span 1 / span 1}
.col-span-2{grid-column:span 2 / span 2}

.flex-col{flex-direction:column}
.flex-row{flex-direction:row}

/* Container class removed to avoid conflict with professional CSS */
/* Professional CSS defines: .container { max-width: 1200px; margin: 0 auto; padding: var(--container-padding); } */

/* Responsive utilities */
@media (min-width: 640px){
  .sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}
}

@media (min-width: 768px){
  .md\:block{display:block}
  .md\:hidden{display:none}
  .md\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}
  .md\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}
  .md\:grid-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr))}
  .md\:col-span-2{grid-column:span 2 / span 2}
  .md\:flex-row{flex-direction:row}
  .md\:mt-0{margin-top:0}
  .md\:text-4xl{font-size:2.25rem;line-height:2.5rem}
}

@media (min-width: 1024px){
  .lg\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}
  .lg\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}
  .lg\:grid-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr))}
  .lg\:grid-cols-5{grid-template-columns:repeat(5, minmax(0, 1fr))}
  .lg\:col-span-2{grid-column:span 2 / span 2}
  .lg\:col-span-3{grid-column:span 3 / span 3}
  .lg\:px-8{padding-left:2rem;padding-right:2rem}
  .lg\:text-5xl{font-size:3rem;line-height:1}
}

/* Custom colors */
.text-dead-red{color:#C41E3A}
.text-dead-blue{color:#1E3A8A}
.text-dead-yellow{color:#FCD34D}
.text-dead-green{color:#10B981}
.text-dead-purple{color:#7C3AED}
.bg-dead-red{background-color:#C41E3A}
.bg-dead-blue{background-color:#1E3A8A}
.bg-dead-yellow{background-color:#FCD34D}
.bg-dead-green{background-color:#10B981}
.bg-dead-purple{background-color:#7C3AED}

/* Custom animations */
.animate-spin-slow{animation:spin 20s linear infinite}

/* Custom components */
.btn-primary{
  background-color:#9333ea;
  color:#fff;
  font-weight:700;
  padding:0.5rem 1rem;
  border-radius:0.25rem;
  transition-property:background-color;
  transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:150ms;
}
.btn-primary:hover{
  background-color:#7c3aed;
}

/* Gradient utilities for Info page */
.bg-gradient-to-r{background-image:linear-gradient(to right, var(--tw-gradient-stops))}
.from-blue-900/50{--tw-gradient-from:#1e3a8a80;--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to, rgb(30 58 138 / 0))}
.to-green-900/50{--tw-gradient-to:#14532d80}
.from-pink-900/50{--tw-gradient-from:#83184380;--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to, rgb(131 24 67 / 0))}
.to-purple-900/50{--tw-gradient-to:#581c8780}

.card-translucent{
  background-color:rgb(0 0 0 / 0.2);
  backdrop-filter:blur(4px);
  border-radius:0.5rem;
  border:1px solid rgb(255 255 255 / 0.1);
}