/* Product detail page styles - replaces Tailwind CDN */
*,::before,::after{box-sizing:border-box;border:0 solid #e2e8f0}
body{margin:0;font-family:ui-sans-serif,system-ui,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
input,button,textarea{font:inherit;color:inherit}
h1,h2,h3,p,dl,dd,dt{margin:0}
ul{list-style:none;margin:0;padding:0}

/* Utilities */
.min-h-screen{min-height:100vh}
.flex{display:flex}.flex-col{flex-direction:column}.flex-1{flex:1 1 0%}
.flex-wrap{flex-wrap:wrap}
.grid{display:grid}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.items-center{align-items:center}.items-start{align-items:start}
.justify-center{justify-content:center}.justify-between{justify-content:space-between}
.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}
.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}
.hidden{display:none}
.block{display:block}.inline-block{display:inline-block}
.inline-flex{display:inline-flex}
.shrink-0{flex-shrink:0}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.overflow-hidden{overflow:hidden}

/* Sizing */
.w-full{width:100%}.w-2\.5{width:.625rem}.w-4{width:1rem}.w-5{width:1.25rem}
.w-7{width:1.75rem}.w-8{width:2rem}.w-10{width:2.5rem}.w-28{width:7rem}
.h-2\.5{height:.625rem}.h-4{height:1rem}.h-5{height:1.25rem}
.h-7{height:1.75rem}.h-8{height:2rem}.h-10{height:2.5rem}.h-16{height:4rem}.h-28{height:7rem}
.max-w-7xl{max-width:80rem}
.aspect-square{aspect-ratio:1/1}

/* Spacing */
.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}
.p-6{padding:1.5rem}.p-8{padding:2rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}
.py-2{padding-top:.5rem;padding-bottom:.5rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-8{padding-top:2rem;padding-bottom:2rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.pt-6{padding-top:1.5rem}
.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}
.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-12{margin-top:3rem}
.mt-auto{margin-top:auto}
.ml-2{margin-left:.5rem}
.mx-auto{margin-left:auto;margin-right:auto}
.space-y-3>:not(:first-child){margin-top:.75rem}
.space-y-4>:not(:first-child){margin-top:1rem}

/* Typography */
.text-xs{font-size:.75rem;line-height:1rem}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-6xl{font-size:3.75rem;line-height:1}
.font-medium{font-weight:500}.font-semibold{font-weight:600}
.font-bold{font-weight:700}.font-black{font-weight:900}
.font-mono{font-family:ui-monospace,monospace}
.uppercase{text-transform:uppercase}
.tracking-tight{letter-spacing:-.025em}
.tracking-wide{letter-spacing:.025em}
.leading-relaxed{line-height:1.625}
.whitespace-nowrap{white-space:nowrap}
.text-center{text-align:center}
.text-right{text-align:right}
.resize-none{resize:none}

/* Colors */
.bg-slate-50{background-color:#f8fafc}
.bg-slate-900{background-color:#0f172a}
.bg-white{background-color:#fff}
.bg-orange-50{background-color:#fff7ed}
.bg-orange-500{background-color:#f97316}
.bg-green-50{background-color:#f0fdf4}
.bg-green-500{background-color:#22c55e}
.bg-blue-50{background-color:#eff6ff}
.text-slate-300{color:#cbd5e1}.text-slate-400{color:#94a5bd}
.text-slate-500{color:#64748b}.text-slate-600{color:#475569}
.text-slate-900{color:#0f172a}
.text-white{color:#fff}
.text-orange-500{color:#f97316}.text-orange-600{color:#ea580c}
.text-green-600{color:#16a34a}.text-green-700{color:#15803d}
.text-blue-600{color:#2563eb}
.text-red-600{color:#dc2626}

/* Borders & Rounded */
.border{border-width:1px}
.border-t{border-top-width:1px}
.border-b{border-bottom-width:1px}
.border-slate-100{border-color:#f1f5f9}
.border-slate-200{border-color:#e2e8f0}
.border-slate-700{border-color:#334155}
.border-slate-800{border-color:#1e293b}
.border-orange-100{border-color:#ffedd5}
.border-orange-300{border-color:#fdba74}
.rounded-md{border-radius:.375rem}
.rounded-lg{border-radius:.5rem}
.rounded-xl{border-radius:.75rem}
.rounded-2xl{border-radius:1rem}
.rounded-full{border-radius:9999px}

/* Effects */
.shadow-sm{box-shadow:0 1px 2px 0 rgb(0 0 0/.05)}
.shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0/.1)}
.transition-colors{transition-property:color,background-color,border-color;transition-duration:.15s}
.transition-all{transition-property:all;transition-duration:.2s}
.transition-transform{transition-property:transform;transition-duration:.15s}
.transition-opacity{transition-property:opacity;transition-duration:.15s}
.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}
@keyframes pulse{50%{opacity:.5}}
.opacity-0{opacity:0}
.group:hover .group-hover\:opacity-100{opacity:1}
.group:hover .group-hover\:text-orange-600{color:#ea580c}

/* Sticky & Z-index */
.sticky{position:sticky}.top-0{top:0}.z-50{z-index:50}

/* Focus */
.focus\:outline-none:focus{outline:none}
.focus\:border-orange-500:focus{border-color:#f97316}

/* Hover */
.hover\:text-white:hover{color:#fff}
.hover\:text-orange-400:hover{color:#fb923c}
.hover\:text-orange-600:hover{color:#ea580c}
.hover\:text-orange-700:hover{color:#c2410c}
.hover\:bg-orange-400:hover{background-color:#fb923c}
.hover\:bg-orange-600:hover{background-color:#ea580c}
.hover\:bg-slate-50:hover{background-color:#f8fafc}
.hover\:border-orange-300:hover{border-color:#fdba74}
.hover\:border-slate-500:hover{border-color:#64748b}
.hover\:shadow-md:hover{box-shadow:0 4px 6px -1px rgb(0 0 0/.1)}

/* Disabled */
button:disabled{opacity:.5;cursor:not-allowed}

/* Gradient */
.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}
.from-orange-50{--tw-gradient-from:#fff7ed;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,transparent)}
.to-amber-50{--tw-gradient-to:#fffbeb}

/* Responsive */
@media(min-width:640px){
  .sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}
  .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sm\:flex-row{flex-direction:row}
  .sm\:items-center{align-items:center}
  .sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}
  .sm\:w-auto{width:auto}
  .sm\:table-cell{display:table-cell}
}
@media(min-width:768px){
  .md\:flex{display:flex}
  .md\:hidden{display:none}
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .md\:table-cell{display:table-cell}
}
@media(min-width:1024px){
  .lg\:px-8{padding-left:2rem;padding-right:2rem}
  .lg\:col-span-2{grid-column:span 2/span 2}
  .lg\:col-span-3{grid-column:span 3/span 3}
  .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\:table-cell{display:table-cell}
  .lg\:inline{display:inline}
}
